中國海洋大學 考研 期末軟件工程復(fù)習資料_第1頁
中國海洋大學 考研 期末軟件工程復(fù)習資料_第2頁
中國海洋大學 考研 期末軟件工程復(fù)習資料_第3頁
中國海洋大學 考研 期末軟件工程復(fù)習資料_第4頁
中國海洋大學 考研 期末軟件工程復(fù)習資料_第5頁
已閱讀5頁,還剩8頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、軟件工程復(fù)習提綱第一章1. 軟件危機包含兩方面的問題:1) 如何開發(fā)軟件,以滿足對軟件日益增長的需求2) 如何維護數(shù)量不斷膨脹的已有軟件。2. 軟件生命周期由軟件定義、軟件開發(fā) 和 運行維護 三個時期組成,每個時期又可進一步劃分成若干個階段。軟件定義劃分為:問題定義、可行性研究、需求分析軟件開發(fā)劃分為:總體設(shè)計、詳細設(shè)計、編碼和單元測試、綜合測試。運行維護:不再分;這8個階段每個階段的基本任務(wù)是什么?1、 問題定義:明確要解決的問題是什么。2、 可行性研究:這個階段的任務(wù)不是具體解決問題,而是研究問題的范圍,探索這個問題是否值得去解,是否有可行的解決辦法。3、 需求分析:準確的確定“為了解決這

2、個問題,目標系統(tǒng)必須做什么”,主要是確定目標系統(tǒng)必須具備哪些功能。這個階段的一項重要任務(wù),是用正式文檔準確記錄對目標系統(tǒng)的需求,這份文檔通常稱為規(guī)格說明書。4、 總體設(shè)計:必須回答的關(guān)鍵問題是“概括的說,應(yīng)該怎樣實現(xiàn)目標系統(tǒng)?”總體設(shè)計又稱為概要設(shè)計。首先,應(yīng)該設(shè)計出實現(xiàn)目標系統(tǒng)的幾種可能的方案。另一個就是設(shè)計程序的體系結(jié)構(gòu),也就是確定程序由哪些模塊組成以及模塊之間的關(guān)系。5、 詳細設(shè)計:關(guān)鍵問題是“應(yīng)該怎樣具體的實現(xiàn)這個系統(tǒng)呢?”這個階段將詳細的設(shè)計每個模塊,確定實現(xiàn)模塊功能所需要的算法和數(shù)據(jù)結(jié)構(gòu)。6、 編碼和單元測試:寫出正確的容易理解、容易維護的程序模塊。選擇一種高級語言,將詳細設(shè)計的結(jié)

3、果翻譯成用選定的語言書寫的程序,并且自習測試編寫出的每一個模塊。7、 綜合測試:通過各種類型的測試(及相應(yīng)的調(diào)試)使軟件達到預(yù)定的要求。最基本的測試:集成測試、驗收測試;8、 軟件維護:通過各種必要的維護活動是系統(tǒng)持久的滿足用戶的需要。通常有四類維護活動:改正性維護,適應(yīng)性維護,完善性維護,預(yù)防性維護。3. 軟件過程的各種模型:瀑布模型(文檔驅(qū)動模型),快速原型模型,增量模型,螺旋模型(風險驅(qū)動的模型),噴泉模型(適用于面向?qū)ο筌浖_發(fā)),Rational統(tǒng)一過程,敏捷過程和極限編程,微軟過程。各模型的基本特點(描述出過程的特點能識別出是哪種過程模型)4. 軟件工程的基本原理:1) 用分階段的

4、生命周期計劃嚴格管理2) 堅持進行階段評審3) 實行嚴格的產(chǎn)品控制4) 采用現(xiàn)代程序設(shè)計技術(shù)5) 結(jié)果應(yīng)能清楚地審查6) 開發(fā)小組的人員應(yīng)該少而精7) 承認不斷改進軟件工程實踐的必要性。第二章5. 可行性研究,應(yīng)該至少從三個方面研究每種解法的可行性:技術(shù)可行性、經(jīng)濟可行性、操作可行性。6. 可行性研究的目的是用最小的代價在盡可能短的時間內(nèi)確定問題是否能夠解決。7. 可行性研究的過程包括哪些主要步驟?1) 復(fù)查系統(tǒng)規(guī)模和目標2) 研究目前正在使用的系統(tǒng)3) 導(dǎo)出新系統(tǒng)的高層邏輯模型4) 進一步定義問題5) 導(dǎo)出和評價供選擇的解法6) 推薦行動方針7) 草擬開發(fā)計劃8) 書寫文檔提交審查8. 數(shù)據(jù)

5、流圖是描繪系統(tǒng)邏輯功能的圖形表示,掌握數(shù)據(jù)流圖的基本符號和附加符號,會用數(shù)據(jù)流圖描繪系統(tǒng)邏輯功能。9. 數(shù)據(jù)字典是關(guān)于數(shù)據(jù)的信息的集合,也就是對數(shù)據(jù)流圖中包含的所有元素的定義的集合。定義數(shù)據(jù)的方法。10. 數(shù)據(jù)流圖和數(shù)據(jù)字典共同構(gòu)成了系統(tǒng)的邏輯模型。11. 貨幣時間價值的公式:F=P(1+i)n第三章12. 與用戶溝通獲取需求的方法有哪些?訪談,面向數(shù)據(jù)流自頂向下求精,簡易的應(yīng)用規(guī)格說明技術(shù),快速建立軟件原型13. 軟件需求規(guī)格說明書是需求分析階段得出的最主要文檔。14. 會畫實體-聯(lián)系圖(E-R圖):實體、屬性、聯(lián)系15. 狀態(tài)轉(zhuǎn)換圖,會看,明白其含義16. 層次方框圖用樹形結(jié)構(gòu)的一系列多層

6、次的矩形框描繪數(shù)據(jù)的層次結(jié)構(gòu)。會畫層次方框圖。17. Warnier圖也用樹形結(jié)構(gòu)描繪信息,但是比層次方框圖提供更豐富的描繪手段,會看Warnier圖,明白其含義。18. IPO圖是輸入、處理、輸出圖的簡稱,它能夠方便的描繪輸入數(shù)據(jù)、對數(shù)據(jù)的處理和輸出數(shù)據(jù)之間的關(guān)系。改進的IPO圖。第五章19. 軟件設(shè)計過程中應(yīng)該遵循的基本原理:1) 模塊化:把程序劃分成獨立命名且可獨立訪問的模塊,每個模塊完成一個子功能,由這些模塊集成起來構(gòu)成一個整體,可完成指定的功能,滿足用戶的需求。2) 抽象:抽出事物的本質(zhì)特征而暫時不考慮它們的細節(jié)。3) 逐步求精:為了解決主要問題而推遲對問題細節(jié)的考慮,是一種把一個時

7、期內(nèi)要解決的問題按優(yōu)先級排序的技術(shù)。4) 信息隱藏和局部化:信息隱藏指的是一個模塊包含的信息對不需要這些信息的模塊來說是不能訪問的。局部化指把關(guān)系密切的軟件元素物理地放得彼此靠近。5) 模塊獨立:開發(fā)具有獨立功能而且和其他模塊之間沒有過多的相互作用的模塊,可做到模塊獨立??捎脙?nèi)聚和耦合來衡量模塊的獨立程度。20. 模塊獨立程度可以用內(nèi)聚和耦合兩個定性標準度量。耦合衡量不同模塊彼此間互相依賴的緊密程度;內(nèi)聚衡量一個模塊內(nèi)部各個元素彼此結(jié)合的緊密程度。21. 有哪些種類的耦合?各有什么特點?數(shù)據(jù)耦合,控制耦合,特征耦合,公共環(huán)境耦合,內(nèi)容耦合。有關(guān)使用耦合的設(shè)計原則:盡量使用數(shù)據(jù)耦合,少用控制耦合

8、和特征耦合,限制公共環(huán)境耦合的范圍,完全不用內(nèi)容耦合。22. 內(nèi)聚分為高內(nèi)聚、中內(nèi)聚、低內(nèi)聚。各有哪幾種?各有什么特點?偶然內(nèi)聚、邏輯內(nèi)聚、時間內(nèi)聚是低內(nèi)聚過程內(nèi)聚、通信內(nèi)聚是中內(nèi)聚順序內(nèi)聚、功能內(nèi)聚是高內(nèi)聚23. 總體設(shè)計中用于改進軟件設(shè)計提高軟件質(zhì)量的啟發(fā)性規(guī)則:1) 改進軟件結(jié)構(gòu)提高模塊獨立性2) 模塊規(guī)模應(yīng)該適中3) 深度、寬度、扇出和扇入都應(yīng)適當4) 模塊的作用域應(yīng)該在控制域之內(nèi)5) 力爭降低模塊接口的復(fù)雜程度6) 設(shè)計單入口單出口的模塊7) 模塊功能應(yīng)該可以預(yù)測24. 上題中深度、寬度、扇入、扇出的含義 深度:表示軟件結(jié)構(gòu)中控制的層數(shù),它往往能粗略地標志一個系統(tǒng)的大小和復(fù)雜程度。寬

9、度:軟件結(jié)構(gòu)內(nèi)同一個層次上的模塊總數(shù)的最大值;扇出:一個模塊直接控制(調(diào)用)的模塊數(shù)目,扇出過大意味著模塊過分復(fù)雜,需要控制和協(xié)調(diào)過多的下級模塊;扇入:一個模塊的扇入表明有多少個上級模塊直接調(diào)用它,扇入越大則共享該模塊的上級模塊數(shù)目越多,這是有好處的。25. 層次圖用來描繪軟件的層次結(jié)構(gòu),層次圖中一個矩形框代表一個模塊,方框間的連線表示調(diào)用關(guān)系。會畫層次圖。26. HIPO圖是“層次圖加輸入/處理/輸出圖”的英文縮寫,會畫HIPO圖。27. 結(jié)構(gòu)圖是描繪軟件結(jié)構(gòu)的圖形工具,圖中一個方框代表一個模塊,框內(nèi)注明模塊的名字或主要功能;方框之間的箭頭表示模塊的調(diào)用關(guān)系。會畫結(jié)構(gòu)圖。第六章結(jié)構(gòu)程序設(shè)計對

10、定義:如果一個程序的代碼塊僅僅通過順序、選擇、和循環(huán)這3種基本控制結(jié)構(gòu)進行連接,并且每個代碼塊只有一個入口,一個出口,則稱這個程序是結(jié)構(gòu)化的。28. 結(jié)構(gòu)化程序設(shè)計三種基本控制結(jié)構(gòu)是:順序、選擇、循環(huán)29. 掌握過程設(shè)計的幾種工具:程序流程圖、盒圖(N-S圖)、PAD圖、判定表、判定樹、過程設(shè)計語言(偽碼,這個要能看懂)。30. 會畫流圖,能夠用三種方法計算程序環(huán)形復(fù)雜度。1)流圖中的區(qū)域樹等于環(huán)形復(fù)雜度; 2)流圖G中的環(huán)形復(fù)雜度等于V(G)=EN+ 2;E是流圖中邊的條數(shù),N是節(jié)點數(shù)。3)流圖G中的環(huán)形復(fù)雜度等于V(G)=P+1;P是圖中判定結(jié)點的數(shù)目;第七章31. 選擇程序設(shè)計語言時應(yīng)該

11、盡量選用理想的高級語言,但是實際選取語言時不能僅僅使用理論上的標準,還必須同時考慮實用方面的各種限制。32. 軟件測試是為了發(fā)現(xiàn)程序中的錯誤而執(zhí)行程序的過程。G.Myers給出了一些關(guān)于測試的規(guī)則,也可以看做是測試的目標或定義:1)測試是為了發(fā)現(xiàn)程序中的錯誤而執(zhí)行程序的過程。2)好的測試方案是極可能發(fā)現(xiàn)迄今為止尚未發(fā)現(xiàn)的錯誤的測試方案。3)成功的測試是發(fā)現(xiàn)了至今為止尚未發(fā)現(xiàn)的錯誤的測試。33. 大型軟件系統(tǒng)的測試過程基本上由下述幾個步驟組成:模塊測試(單元測試),子系統(tǒng)測試、系統(tǒng)測試(系統(tǒng)測試與子系統(tǒng)測試一起稱為集成測試)、驗收測試、平行運行。各步驟的含義。1) 模塊測試:保證每個模塊作為一個

12、單元能正確運行,所以模塊測試通常成為單元測試;2) 子系統(tǒng)測試:把經(jīng)過單元測試的模塊放在一起形成子系統(tǒng)來測試。模塊間的協(xié)調(diào)和通信是這個測試過程中的主要問題,因此,這個步驟著重測試模塊的接口。3) 系統(tǒng)測試:把經(jīng)過測試的子系統(tǒng)裝配成一個完整的系統(tǒng)來測試。 不論是子系統(tǒng)測試還是系統(tǒng)測試,都兼有檢測和組裝兩重含義,通常稱為集成測試。4) 驗收測試:把軟件系統(tǒng)作為單一的實體進行測試,測試內(nèi)容與系統(tǒng)測試基本類似,但是它是在用戶積極參與下進行的,而且可能主要是用實際數(shù)據(jù)進行測試。驗收測試也稱為確認測試。5) 平行運行:即同時運行新開發(fā)出來的系統(tǒng)和將被它取代的舊系統(tǒng),以便比較新舊兩個系統(tǒng)的處理結(jié)果。34.

13、軟件測試準則:1) 所有測試都應(yīng)該追溯到用戶需求2) 應(yīng)該遠在測試開始之前就制定出測試計劃3) 把Pareto原理應(yīng)用到軟件測試中(80%的錯誤出現(xiàn)在20%的模塊中,因此應(yīng)該重點測試它們)。4) 應(yīng)該從小規(guī)模測試開始,并逐步進行大規(guī)模測試。5) 窮舉測試是不可能的,因此必須精心設(shè)計測試方案,才有可能充分覆蓋程序邏輯并使程序達到所要求的可靠性。6) 為了達到最佳的測試效果,應(yīng)該由獨立的第三方從事測試工作。35. 測試方法分為黑盒測試(又稱功能測試)和白盒測試(又稱結(jié)構(gòu)測試)兩種。黑盒測試法:不考慮程序的內(nèi)部結(jié)構(gòu)和處理過程,只是在程序接口進行的測試,只檢查程序功能是否能按照規(guī)格說明書的規(guī)定正常使用

14、,程序是否能適當?shù)慕邮蛰斎霐?shù)據(jù)產(chǎn)生正確的輸出信息,并且保持外部信息(如數(shù)據(jù)庫或文件) 的完整性。又稱為功能測試。白盒測試法:完全了解程序的內(nèi)部結(jié)構(gòu)和處理過程,按照程序內(nèi)部的邏輯測試程序,檢驗程序中的每條通路是否能按預(yù)定要求正確工作。又稱為結(jié)構(gòu)測試。36. 集成測試可以有非漸增式測試方法和漸增式測試方法,漸增式測試分為自頂向下和自底向上兩種集成策略。它們各表示什么含義。非漸增式測試:先分別測試每個模塊,再把所有模塊按設(shè)計要求放在一起結(jié)合成所要的程序。 漸增式測試:把下一個要測試的模塊同已經(jīng)測試好的那些模塊結(jié)合起來進行測試,測試完以后再把下一個應(yīng)該測試的模塊結(jié)合起來進行測試。37. 邏輯覆蓋是對一

15、系列測試過程的總稱,主要的覆蓋標準有:語句覆蓋、判定覆蓋、條件覆蓋、判定/條件覆蓋、條件組合覆蓋、點覆蓋、邊覆蓋、路徑覆蓋。每種覆蓋是什么含義。會用前5種覆蓋標準設(shè)計測試用例。38. 會用基本路徑測試技術(shù)設(shè)計測試用例39. 會寫條件測試中的條件約束集。40. 理解結(jié)構(gòu)化程序中的簡單循環(huán)、嵌套循環(huán)和串接循環(huán)應(yīng)該如何進行循環(huán)測試。41. 理解等價類劃分和邊界值分析兩種黑盒測試技術(shù)。7.7.1 等價劃分 等價劃分是用黑盒法設(shè)計測試方案的一種技術(shù)。其基本思想是:選取少量最有代表性的輸入數(shù)據(jù),以期用較小的代價暴露出較多的程序錯誤。 如果把所有可能的輸入數(shù)據(jù)(有效的和無效的)劃分成若干個等價類,則可以合理

16、地做出下述假定:每類中的一個典型值在測試中的作用與這一類中所有其它值的作用相同。因此,可以從每個等價類中只取一組數(shù)據(jù)作為測試數(shù)據(jù)。這樣選取的測試數(shù)據(jù)最有代表性,最可能發(fā)現(xiàn)程序中的錯誤。42. 理解調(diào)試的定義及過程。調(diào)試是在測試發(fā)現(xiàn)錯誤之后排除錯誤的過程。定義:調(diào)試是在測試發(fā)現(xiàn)錯誤之后排除錯誤的過程;調(diào)試過程(177頁)附加測試回歸測試糾正測試用例已識別的原因執(zhí)行測試用例>結(jié)果>調(diào)試>被懷疑的原因43. 理解估算程序中錯誤總數(shù)的兩種方法:植入錯誤法和分別測試法。(1)錯誤植入法 測試前由專人在程序中隨機植入一些錯誤,假設(shè)人為地植入的錯誤數(shù)為Ns,經(jīng)過一段時間的測試后發(fā)現(xiàn)ns個植

17、入的錯誤,此外還發(fā)現(xiàn)了n個原有的錯誤。如果可以認為測試方案發(fā)現(xiàn)植入錯誤和發(fā)現(xiàn)原有錯誤的能力相同,則能夠估計出程序中原有錯誤的總數(shù)為 這就是錯誤總數(shù)ET的估計值。 (2)分別測試法 如果有辦法隨機地把程序中一部分原有錯誤加上標記,然后根據(jù)測試過程中發(fā)現(xiàn)的有標記錯誤和無標記錯誤的比例,估算程序中的錯誤總數(shù),則得到的結(jié)果比用植入錯誤法得到的更可信。 為了隨機給一部分錯誤加標記,分別測試法使用兩個測試員(測試小組),彼此獨立測試同一個程序的兩個副本,把其中一個測試員發(fā)現(xiàn)的錯誤作為有標記的錯誤。 用t表示測試時間,假設(shè) t t= 0時錯誤總數(shù)為B0。 t t= tt1時測試員甲發(fā)現(xiàn)的錯誤數(shù)為B1。 t

18、t= tt1時測試員乙發(fā)現(xiàn)的錯誤數(shù)為B2。 t t= tt1時兩個測試員發(fā)現(xiàn)的相同錯誤數(shù)為bc。如果認為測試員甲發(fā)現(xiàn)的錯誤是有標記的,即程序中有標記的錯誤總數(shù)為B1,則測試員乙發(fā)現(xiàn)的B2個錯誤中有bc個是有標記的。假定測試員乙發(fā)現(xiàn)的有標記錯誤和發(fā)現(xiàn)無標記錯誤的概率相同,則可估算出測試前程序中的錯誤總數(shù)為:第八章44. 軟件維護主要包括改正性維護、適應(yīng)性維護、完善性維護、預(yù)防性維護定義:在軟件已經(jīng)交付使用之后,為了改正錯誤或滿足新的需要而修改軟件的過程。四種維護活動:改正性維護:診斷和改正錯誤的過程; 50%66%適應(yīng)性維護:為了和變化了的環(huán)境適當?shù)嘏浜隙M行的修改軟件的活動;17%21%完善性

19、維護:滿足用戶提出的增加新功能或是修改已有功能的要求; 18%25%預(yù)防性維護:為了改進未來的可維護性或可靠性,或為了給未來的改進奠定更好的基礎(chǔ)而修改軟件的活動; 4%45. 軟件維護過程包括哪些活動?1) 建立維護組織2) 確定報告和評價過程(維護報告)3) 明確維護的事件流(規(guī)定一個標準化的事件序列)4) 保存維護記錄5) 評價維護活動46. 決定軟件可維護性的因素:可理解性、可測試性、可修改性、可移植性、可重用性。47. 軟件系統(tǒng)的文檔分為用戶文檔和系統(tǒng)文檔兩類。用戶文檔主要描述系統(tǒng)功能和使用方法,并不關(guān)心這些功能是怎樣實現(xiàn)的;系統(tǒng)文檔描述系統(tǒng)設(shè)計、實現(xiàn)和測試等各方面的內(nèi)容。第九章48.

20、 面向?qū)ο蠓椒▽W的要點:對象、類、繼承、通過傳遞消息互相聯(lián)系。具體解釋如下:1) 認為客觀世界是由各種對象組成的,軟件中任何元素都是對象,復(fù)雜對象由簡單對象組合而成。2) 把所有對象都劃分成對象類(class),每個對象類都定義了一組數(shù)據(jù)和方法。3) 按照子類(或稱為派生類)與父類(或稱為基類)的關(guān)系,把若干個對象類組成一個層次結(jié)構(gòu)的系統(tǒng)。下層可繼承上層的特性。4) 對象彼此之間僅能通過傳遞消息互相聯(lián)系。對象有封裝性,私有信息不能被外界直接訪問。49. 面向?qū)ο蠓椒òǖ幕靖拍睿簩ο?、類、實例、消息、方法、屬性、封裝、繼承、多態(tài)性、重載。以及各概念的含義。50. 用面向?qū)ο蠓椒ㄩ_發(fā)軟件,通常

21、需要建立三種形式的模型:描述系統(tǒng)數(shù)據(jù)結(jié)構(gòu)的對象模型;描述系統(tǒng)控制結(jié)構(gòu)的動態(tài)模型和描述系統(tǒng)功能的功能模型。51. 類圖是建立對象模型的工具。類圖的基本符號,尤其是定義類圖的符號。類圖中表示關(guān)系的符號:關(guān)聯(lián)(包括限定關(guān)聯(lián))、聚集(包括共享聚集和組合聚集)、泛化(包括普通泛化和受限泛化,受限泛化的約束有多重、不相交、完全、不完全)、依賴、細化。能夠用類圖建立對象模型。52. 用例圖的作用和包含的模型元素:用例圖是進行需求分析和建立功能模型的強有力工具,用用例圖建立起來的系統(tǒng)模型稱為用例模型。使用用例模型代替?zhèn)鹘y(tǒng)的功能說明往往能夠更好的獲取用戶需求,它回答的問題是:“系統(tǒng)應(yīng)該為每個(或每類)用戶做什么

22、”。用例圖包含的模型元素有:系統(tǒng)、行為者、用例、用例之間的關(guān)系。第十三章53. 估算軟件規(guī)模的兩種常用的度量標準為:代碼行、功能點。代碼行:每個人都估計程序的最小規(guī)模(a)最大規(guī)模(b)和最可能的規(guī)模(m),分別算出這種規(guī)模的平均值a , b和m之后,再用下式計算程序規(guī)模的估計值代碼行技術(shù)的主要優(yōu)點是,代碼是所有軟件開發(fā)項目都有的“產(chǎn)品”,而且很容易計算代碼行數(shù)。代碼行技術(shù)的缺點是:源程序僅是軟件配置的一個成分,用它的規(guī)模代表整個軟件的規(guī)模似乎不太合理,用不同語言實現(xiàn)同一個軟件所需要的代碼行數(shù)并不相同;這種方法不適用于非過程語言。1.信息域特性 功能點技術(shù)定義了信息域的個特性,分別是輸入項數(shù)(

23、Inp)、輸出項數(shù)(Out)、查詢數(shù)(Inq)、主文件數(shù)(Maf)和外部接口數(shù)(Inf)。 UFP=a1×Inp+a2×Out+a3×Inq+a4×Maf+a5×Inf其中,ai (1<=i<=5)是信息域特性系數(shù),其值由相應(yīng)特性的復(fù)雜級別決定計算技術(shù)復(fù)雜性因子TCFDI=Fi技術(shù)復(fù)雜性因子 TCF由下式計算: TCF=0.65+0.01×DI 因為DI的值在0-70之間,所以TCF的值在0.65-1.35之間。(3)計算功能點數(shù)FP 用下式計算功能點數(shù)FP: FP=UFP×TCF 功能點數(shù)與所用的編程語言無關(guān),

24、看起來功能點技術(shù)比代碼行技術(shù)更合理一些。但是,在判斷信息域特性復(fù)雜級別和技術(shù)因素的影響程度時,存在著相當大的主觀因素。54. 制定進度計劃的工具有:Gantt圖、工程網(wǎng)絡(luò)。理解這兩種工具,能看懂,理解其中的一些關(guān)鍵概念,例如最早時刻、最遲時刻。工程網(wǎng)絡(luò): 事件的最早時刻是該事件可以發(fā)生的最早時間。通常工程網(wǎng)絡(luò)中第一個事件的最早時刻定義為零,其他事件的最早時刻在工程網(wǎng)絡(luò)上從左至右按事件發(fā)生順序計算。計算最早時刻EET使用下述3條簡單規(guī)則: (1)考慮進入該事件的所有作業(yè); (2)對于每個作業(yè)都計算它的持續(xù)時間與起始事件的EET之和; (3)選取上述和數(shù)中的最大值作為該事件的最早時刻EET。事件的

25、最遲時刻是在不影響工程竣工時間的前提下,該事件最晚可以發(fā)生的時刻。按慣例,最后一個事件(工程結(jié)束)的最遲時刻就是它的最早時刻。其他事件的最遲時刻在工程網(wǎng)絡(luò)上從右至左按逆作業(yè)流的方向計算。計算最遲時刻LET使用下述3條規(guī)則: (1)考慮離開該事件的所有作業(yè); (2)從每個作業(yè)的結(jié)束事件的最遲時刻中減去該作業(yè)的持續(xù)時間; (3)選取上述差數(shù)中的最小值作為該事件的最遲時刻LET。55. 關(guān)鍵路徑:工程網(wǎng)絡(luò)中最早時刻和最遲時刻相同的事件定義了關(guān)鍵路徑。關(guān)鍵路徑上的事件(關(guān)鍵事件)必須準時發(fā)生,組成關(guān)鍵路徑的作業(yè)(關(guān)鍵作業(yè))的實際持續(xù)時間不能超過估計的持續(xù)時間,否則工程就不能準時結(jié)束。56. 什么是機動

26、時間?機動時間=(LET)結(jié)束-(EET)開始-持續(xù)時間作業(yè)的機動時間=作業(yè)結(jié)束事件的最遲時間-作業(yè)開始事件的最早時間-作業(yè)持續(xù)時間。57. 民主制程序員組、主程序員組和現(xiàn)代程序員組的特點。13.4.1民主制程序員組 民主制程序員組的一個重要特點是,小組成員完全平等,享有充分民主,通過協(xié)商做出技術(shù)決策。因此,小組成員之間的通信是平行的,如果小組內(nèi)有n個成員,則可能的通信信道共有n(n-1)/2條。 程序設(shè)計小組的人數(shù)不能太多,否則組員間彼此通信的時間將多于程序設(shè)計時間。 一般來說,程序設(shè)計小組的規(guī)模應(yīng)該比較小,以2-8名成員為宜。民主制程序員組的主要優(yōu)點是,組員們對發(fā)現(xiàn)程序錯誤持積極的態(tài)度,這

27、種態(tài)度有助于更快速地發(fā)現(xiàn)錯誤,從而導(dǎo)致高質(zhì)量的代碼。 民主制程序員組的另一個優(yōu)點是,組員們享有充分民主,小組有高度凝聚力,組內(nèi)學術(shù)空氣濃厚,有利于攻克技術(shù)難關(guān)。 13.4.2 主程序員組 美國IBM公司在20世紀70年代初期開始采用主程序員組的組織方式。采用這種組織方式主要出于下述幾點考慮: (1)軟件開發(fā)人員多數(shù)比較缺乏經(jīng)驗; (2)程序設(shè)計過程中有許多事務(wù)性的工作,例如,大量信息的存儲和更新; (3)多渠道通信很費時間,將降低程序員的生產(chǎn)率。 主程序員組用經(jīng)驗多,技術(shù)好,能力強的程序員作為主程序員,同時,利用人和計算機在事務(wù)性工作方面給主程序員提供充分支持,而且所有通信都通過一兩個人進行。

28、 主程序員組的兩個重要特性: (1)專業(yè)化。該組每名成員僅完成他們受過專業(yè)訓練的那些工作。 (2)層次化。主程序員指揮每名組員工作,并對程序全部負責。 13.4.3 現(xiàn)代程序員組 一個技術(shù)負責人,負責小組的技術(shù)活動;一個行政負責人,負責所有非技術(shù)性事務(wù)的管理決策。這樣的組織結(jié)構(gòu)如圖13.6所示 由于程序員組成員人數(shù)不宜過多,當軟件項目規(guī)模較大時,應(yīng)該把程序員分成若干個小組,采用圖13.7所示的組織結(jié)構(gòu)。 58. 能力成熟度模型的5個等級為:初始級、可重復(fù)級、已定義級、已管理級、優(yōu)化級。各級的特點是什么?1.初始級 軟件過程的特征是無序的,有時甚至是混亂的。幾乎沒有什么過程是經(jīng)過定義的(即沒有一個定型的過程模型),項目能否成功完全取決于開發(fā)人員的個人能力。 處于1級成熟度的軟件機構(gòu),其過程能力是不可預(yù)測的,其軟件過程是不穩(wěn)定的,產(chǎn)品質(zhì)量只能根據(jù)相關(guān)人員的個人工作能力而不是軟件機構(gòu)的過程能力來預(yù)測。2.可重復(fù)級 軟件機構(gòu)建立了基本的項目管理過程(過程模型),可跟蹤成本、進度、功能和質(zhì)量。已經(jīng)建立起必要的過程規(guī)范,對新項目的策劃和管理過程是基于以前類似項目的實踐經(jīng)驗,使得有類似應(yīng)用經(jīng)驗的軟件項目能夠再次取得成功。達到2級的一個目標是使項目管理過程穩(wěn)定,從而使得軟件機構(gòu)能重復(fù)以前在成功項目中所進行過的軟件項目工程實踐。 處于2級成熟度的軟件機構(gòu)的過程能力可

溫馨提示

  • 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)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論