2025年軟件工程核心知識點精粹與備考指南_第1頁
2025年軟件工程核心知識點精粹與備考指南_第2頁
2025年軟件工程核心知識點精粹與備考指南_第3頁
2025年軟件工程核心知識點精粹與備考指南_第4頁
2025年軟件工程核心知識點精粹與備考指南_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

一、概論原因:顧客需求不明確、缺乏對的的理論指導(dǎo)、軟件規(guī)模越來越大、軟件復(fù)雜度越來越高●軟件是被開發(fā)或被設(shè)計的,沒有明顯的制造過程,一旦開發(fā)成功,只需復(fù)制即可,但其維●軟件的使用沒有那樣的機械磨損和老化問題。不過軟件會由于維護的過程中修改程序而導(dǎo)圖1.1硬件的故障曲線圖1.2軟件的故障曲線●軟件的開發(fā)常受到計算機的限制,對計算機硬件有著不●軟件的開發(fā)至今尚未完全實現(xiàn)自動化。●相稱多的軟件工作波及到社會原因。系統(tǒng)軟件支持軟件分時軟件交互式軟件批處理軟件項目軟件一次使用頻繁使用實現(xiàn)性語言(即程序設(shè)計語言)文檔語言軟件工程是為了經(jīng)濟地獲得可靠的和能在實際機器上高效運行的軟件而建立和使用的好的工程原則軟件工程是(1)將系統(tǒng)化的、規(guī)范的、可度量的措施應(yīng)用于軟件的開發(fā)、運行和維護的過程,即將工程化應(yīng)用于軟件中;(2)(1)中所述措施的研究軟件工程是應(yīng)用計算機科學(xué)、數(shù)學(xué)及管理科學(xué)等原理,以工程化的原則和措施制作軟件的工程●接受上一階段的活動的成果作為本階段活動的輸入。●根據(jù)上一階段的活動的成果實話本階段應(yīng)當(dāng)完畢的活動。●對本階段的活動進行評審?!駥⒈倦A段活動的成果作為輸出,傳遞給下一階段?!駨臉?gòu)造初始的原型出發(fā),逐漸將其演化成最終軟件產(chǎn)品的過程?!窈嫌糜趯浖枨笕狈_認識的狀況。●經(jīng)典的演化模型:增量模型、原型模型、螺旋模型●將軟件的開發(fā)過程公成若干個日程時間交錯的線性序列,每個線性序列產(chǎn)生軟件的一種可●融合了瀑布模型的基本成分(反復(fù)地應(yīng)用)和演化模型的迭代特性,強調(diào)每一次增量都公●合用于需求常常發(fā)生變化的軟件開發(fā)。c)演化型evolutionaryprototyping原型的目的是將原型作為目的系統(tǒng)的一部分,2.原型使用方略:a)廢棄方略b)追加方略原型可作為單獨的過程模型使用,也常被作為一種措施或?qū)崿F(xiàn)技術(shù)應(yīng)用于其他的過程模型●將原型實現(xiàn)的迭代特性與瀑布模型中控制的和系統(tǒng)化的方面結(jié)合起來,不僅體現(xiàn)了這兩種●螺旋模型沿著螺線自內(nèi)向外旋轉(zhuǎn)(四個任務(wù)區(qū)域:制定計劃,風(fēng)險分析,工程實行,客戶評估)1.抽象與逐漸求精a)抽象(特殊到一般的過程)b)逐漸求精(把問題的求解過程分解成若干環(huán)節(jié)或階段)2.模塊化——把軟件按照規(guī)定原則,劃分為一種個較小的,互相獨立的但又互相關(guān)聯(lián)的部件。3.信息隱藏模塊中所包括的信息(包括數(shù)據(jù)和過程)不容許其他不需要這些信息的模塊使用。4.模塊獨立——模塊完畢獨立的功能并且與其他模塊的接口簡樸,符合信息隱蔽,模塊間關(guān)功能內(nèi)聚次序內(nèi)聚通信內(nèi)聚過程內(nèi)聚時間內(nèi)聚邏輯內(nèi)聚巧合內(nèi)聚強←—————————————模塊獨立低-——————————————耦合性————————————→高非直接耦合數(shù)據(jù)耦合標(biāo)識耦合控制耦合外部耦合公共耦合內(nèi)容耦合強←—————————————模塊獨立性———————————→弱耦合是直接的主導(dǎo)原因,內(nèi)聚則是輔助耦合共同1.構(gòu)造化程序設(shè)計措施2.圖形表達法a)程序流程圖套3.鑒定表●有固定的關(guān)鍵字外語法,提供所有構(gòu)造化控制構(gòu)造、數(shù)聽闡明和部件特●有子程序定義與調(diào)用機制。1.數(shù)據(jù)流圖的圖形表達符號:ii.加工(process)——輸入數(shù)據(jù)流到輸出數(shù)據(jù)流的變換。i.星號(*)表達數(shù)據(jù)流之間存在“與”關(guān)系ii.加號(+)表達數(shù)據(jù)流之間存在“或”關(guān)系ii.異或(田)表達數(shù)據(jù)流之間存在“異或”(互斥)關(guān)系c)數(shù)據(jù)流圖的層次構(gòu)造i.層次構(gòu)造0層圖:將頂層圖中的加工通過度解后形成的圖底層圖:處在分層數(shù)據(jù)流圖最底層的圖中間層圖:分層數(shù)據(jù)流圖中的其他圖ii.圖和加工的編號(父圖,子圖)●頂層圖只有一種加工,不必編號●0層圖中的加工編號分別為1、2、3…●對于子圖號,若父圖中的加工號x分解成某一子圖,剛該子圖記為“圖x”●對于子圖中加工的編號,若父圖中的加工號為x的加工分解成某一子圖,則該子圖中的加2.分層數(shù)據(jù)流圖的畫法1.分層數(shù)據(jù)流圖的一致性和完整性a)一致性i.父圖與子圖的平衡ii.數(shù)據(jù)守恒b)完整性i.每個加工至少有一種輸入數(shù)據(jù)流和一種輸出數(shù)據(jù)流。ii.在整套分層數(shù)據(jù)流中,每個文獻應(yīng)至少有一種加工讀該文獻,有另一種加工寫該文獻。ii.分層數(shù)據(jù)流圖中的每個數(shù)據(jù)流和文獻都必須命名,并保持與數(shù)據(jù)字典一致。iv.分層DFD中的每個基本加工2.構(gòu)造分層DFD時需要注意的問題a)合適命名b)畫數(shù)據(jù)流而不是畫控制流c)防止一種加工有過多的數(shù)據(jù)流d)分解盡量均勻e)先考慮穩(wěn)定狀態(tài),忽視瑣碎的枝節(jié)f)隨時準(zhǔn)備重畫3.分解的程度b)分解應(yīng)當(dāng)自然,概念上合理清晰c)只要不影響DFD的易理解性,可合適增長子加工數(shù)量,以減少層數(shù)d)分解要均勻1.構(gòu)造圖a)基本成分——模塊、調(diào)用、數(shù)據(jù)b)輔助符號c)幾種概念i.深度——程序構(gòu)造圖中控制的層數(shù)ii.寬度——程序構(gòu)造圖中同一層次上模塊總數(shù)的最大值2.啟發(fā)式設(shè)計方略a)改造程序構(gòu)造圖,減少耦合度,提高內(nèi)聚度b)防止高扇出,并伴隨深度的增長,力爭高扇入c)模塊的影響范圍應(yīng)限制在該模塊的控制范圍內(nèi)d)減少模塊的復(fù)雜程度和冗余程度,提高一致性e)模塊的功能應(yīng)是可預(yù)測的,防止對模塊施加過多的限制f)盡量設(shè)計單入口和單出口的模塊3.構(gòu)造化設(shè)計的環(huán)節(jié)a)建立初始構(gòu)造圖b)對構(gòu)造圖的改善c)書寫設(shè)計文檔d)設(shè)計評審5.多態(tài)性polymorphism和動態(tài)綁定dynamicbinding1.模式名2.模式的環(huán)境和條件3.設(shè)計模式的特性4.應(yīng)用設(shè)計模式的成果consequences用況(usecase):文本形式的情節(jié)撕碎,用以闡明某參與者使情形。>用況建模用于描述一種系統(tǒng)應(yīng)當(dāng)做什么,用用況圖來描述(也許有多幅)VV子包含訂單支據(jù)建立信主管·泛化天系:同一業(yè)務(wù)日的的不一樣技木實現(xiàn)(多種可以將它們的共性抽象成為父用例,其他的用例泛化為子用例)核對身甘錄客戶口士付&·包括關(guān)系:提取公共交互,提高復(fù)用(將包括用例的事件流拖入到基礎(chǔ)用例的事件流中,·擴展關(guān)系:“凍結(jié)”基用例以保持穩(wěn)定(將擴展用例的事件流在一定的條件下按攝影應(yīng)對象名:類名操作2.靜態(tài)建模:UML中以類圖和對象圖來建立對象名:類名操作類名操作·類圖中類之間的關(guān)系關(guān)系符號的關(guān)系重要環(huán)節(jié):3.標(biāo)識責(zé)任(類的屬性和操作)(公共的)象都能看到該屬性#(受保護的)的對象都能看到該屬性(私有的)(包的)能看到該屬性狀態(tài)名iii.對象,活動的輸入或輸出;也可以表達一種對象受一特定動作的影響c)次序圖(sequencediagram)用來描述對象間的交互行為,它關(guān)注于消息的次序,即對象間i.構(gòu)成成分:對象,對象框,激活期,消息iv.組合片段的類型1.ref(引用)對另一交互的引用2.loop(循環(huán))當(dāng)循環(huán)的警戒條件為真時循環(huán)執(zhí)行子片段3.alt(選擇)兩個或多種子片段之間的選擇執(zhí)行4.opt(可選)選擇的帶單個子片段的特殊狀況,警戒條件為假時省略該子片段5.par(并發(fā))兩個或多種子片段的并發(fā)執(zhí)行d)通信圖展示了鏈接的對象之間怎樣發(fā)送消息,可用于描述系統(tǒng)中的操作執(zhí)行,用況執(zhí)行或ii.鏈?zhǔn)穷愱P(guān)聯(lián)的實例,是連接兩個對象的途徑,指明了對象間某種也許的導(dǎo)航和可見性。e)交互圖(次序圖和通信圖)總結(jié)類型優(yōu)勢劣勢順序圖(圖形布局方面)通信圖增加新對象(圖形布局方面)1.源程序文檔化a)標(biāo)識符的命名b)程序的注釋c)視覺組織2.數(shù)聽闡明a)數(shù)聽闡明次序規(guī)范化b)闡明語句中變量安排有序化c)使用注釋闡明復(fù)雜的數(shù)據(jù)構(gòu)造3.語句構(gòu)造a)一行內(nèi)只寫一條語句b)首先考慮清晰性c)直截了當(dāng)闡明程序員的用意d)其他常用規(guī)則i.讓編譯程序做簡樸的優(yōu)化ii.盡量使用庫函數(shù)iii.防止不必要的轉(zhuǎn)移iv.習(xí)題只采用三種基本的控制構(gòu)造來編寫程序4.輸入和輸出指軟件系統(tǒng)交付使用后來,為了改正錯誤或滿足新的需要而修改軟件的過程影響維護工作量的原因重要有如下6種:1.系統(tǒng)的規(guī)模2.程序設(shè)計語言3.系統(tǒng)年齡4.數(shù)據(jù)庫技術(shù)的應(yīng)用5.先進的軟件開發(fā)技術(shù)6.其他某些原因逆向工程(reverseengineering)是指在軟件生存周期中,將軟件的某種形式描述轉(zhuǎn)換成更重構(gòu)(restructuring)是指在同一抽象級別上轉(zhuǎn)換系統(tǒng)的描述形式。再工程(reengineering)是指在逆向工程所獲信息的基礎(chǔ)上修改或系統(tǒng)的一種新版本。甘特圖(Ganttchart),也稱時間表(timelinechart)→風(fēng)險管理就是識別評估風(fēng)險,建立、選擇、和處理風(fēng)險的可選方案和組織措施?!鍪录挠绊憽鲲L(fēng)險的原因●風(fēng)險可表到達不確定和后果的函數(shù):風(fēng)險=f(事件,不確定性,后果)●特定風(fēng)險可采用必要措施得到最大程度的防止,因此:風(fēng)險=f(事故,安全措施)■計劃編制、組織和管理

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論