軟件工程導論課件_第1頁
軟件工程導論課件_第2頁
軟件工程導論課件_第3頁
軟件工程導論課件_第4頁
軟件工程導論課件_第5頁
已閱讀5頁,還剩133頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

SoftwareEngineering

CCUTSE2013軟件工程導論第4篇軟件項目管理

SoftwareEngineering

CCUTSE1.估算軟件規(guī)模2.工作量估算3.進度計劃4.人員組織5.質(zhì)量保證6.能力成熟度模型7.軟件配置管理8.能力成熟度模型主要內(nèi)容1.估算軟件規(guī)模主要內(nèi)容導言俗話說“三分技術,七分管理”俗話說“吃不窮穿不窮算計不到就受窮”俗話說“巧婦難為無米之炊”導言俗話說“三分技術,七分管理”軟件工程包括技術和管理兩方面的內(nèi)容,是技術與管理緊密結合所形成的工程學科。導言軟件項目目標技術管理俗話說“三分技術,七分管理”軟件工程導言軟件項目目標技術管理俗話說“三分技術,七分管理”工程與項目工程:是類,是總稱,項目:是對象,是實例,是一個具體的工程。導言工程項目工程與項目導言工程項目軟件項目管理貫穿于軟件的整個生命周期導言軟件項目管理軟件項目管理貫穿于軟件的整個生命周期導言軟件項目管理什么是管理(management)?管理就是通過計劃、組織和控制等一系列活動,合理地配置和使用資源,達到既定目標的過程。導言計劃組織控制過程資源合理使用與配置效率質(zhì)量什么是管理(management)?導言計劃組織控制過程資源軟件項目管理的內(nèi)容導言時間管理人員管理配置管理質(zhì)量管理軟件項目管理的內(nèi)容導言時間管理人員管理配置管理質(zhì)量管理項目的時間管理導言估算工作量軟件需求KLOCFP估算規(guī)模人月估算進度GanttPert模型模型模型項目的時間管理導言估算軟件KLOC估算人月估算Gantt模型項目的人員管理導言民主制程序員組主程序員組現(xiàn)代程序員組項目的人員管理導言民主制程序員組主程序員組現(xiàn)代程序員組項目的質(zhì)量管理導言產(chǎn)品轉移產(chǎn)品運行產(chǎn)品修改SQA小組計劃監(jiān)督記錄分析報告活動措施基于非執(zhí)行的測試基于執(zhí)行的測試程序正確性證明項目的質(zhì)量管理導言產(chǎn)品轉移產(chǎn)品運行產(chǎn)品修改SQA小組計劃監(jiān)督軟件的配置管理導言數(shù)據(jù)程序文檔軟件配置項變化管理×標識變化版本控制變化控制報告配置審計軟件的配置管理導言數(shù)據(jù)程序文檔軟件配置項變化管理×標識變化版能力成熟度模型:評價軟件機構的軟件過程能力成熟度的模型。導言能力成熟度模型:評價軟件機構的軟件過程能力成熟度的模型。導言能力成熟度模型:評價軟件機構的軟件過程能力成熟度的模型。導言能力成熟度模型:評價軟件機構的軟件過程能力成熟度的模型。導言能力成熟度模型:評價軟件機構的軟件過程能力成熟度的模型。導言能力成熟度模型:評價軟件機構的軟件過程能力成熟度的模型。導言能力成熟度模型:評價軟件機構的軟件過程能力成熟度的模型。導言能力成熟度模型:評價軟件機構的軟件過程能力成熟度的模型。導言能力成熟度模型:評價軟件機構的軟件過程能力成熟度的模型。導言能力成熟度模型:評價軟件機構的軟件過程能力成熟度的模型。導言1.代碼行(KLOC/LOC)技術11.1估計軟件規(guī)模出發(fā)點:依據(jù)以往開發(fā)類似產(chǎn)品的經(jīng)驗和歷史數(shù)據(jù)。L=6a+4m+b---加權平均法:多名有經(jīng)驗的軟件工程師每人都估計程序的最小規(guī)模(a)、最大規(guī)模(b)和最可能的規(guī)模(m),分別計算出這3中規(guī)模的平均值a,b和m之后,計算L。---1.代碼行(KLOC/LOC)技術11.1估計軟件規(guī)模出發(fā)1.代碼行(KLOC/LOC)技術11.1估計軟件規(guī)模L=6a+4m+b---=611+4×14+12=13.171.代碼行(KLOC/LOC)技術11.1估計軟件規(guī)模L=1.代碼行(KLOC/LOC)技術11.1估計軟件規(guī)模優(yōu)點:代碼是所有軟件項目的產(chǎn)品,且代碼行易于計算。缺點:(1)代碼僅是軟件配置的成分之一,用代碼行表示軟件規(guī)模不盡合理;(2)用不同語言實現(xiàn)統(tǒng)一軟件,代碼行數(shù)并不相同。1.代碼行(KLOC/LOC)技術11.1估計軟件規(guī)模優(yōu)點2.功能點(FP)技術11.1估計軟件規(guī)??朔a行技術的缺點;依據(jù)軟件信息域特性和軟件復雜性的評測結果。用功能點(FP)為單位度量軟件規(guī)模。2.功能點(FP)技術11.1估計軟件規(guī)??朔a行技術的2.功能點(FP)技術11.1估計軟件規(guī)模(1)信息域特性輸入項數(shù)(Inp)輸出項數(shù)(Out)查詢數(shù)(Inq)主文件數(shù)(Maf)外部接口數(shù)(Maf)信息域2.功能點(FP)技術11.1估計軟件規(guī)模(1)信息域特性2.功能點(FP)技術11.1估計軟件規(guī)模(1)信息域特性輸入項數(shù)(Inp):用戶向軟件輸入的項數(shù),這些輸入給軟件提供面向應用的數(shù)據(jù),不包括查詢。輸出項數(shù)(Out):查詢數(shù)主文件數(shù)外部接口數(shù)2.功能點(FP)技術11.1估計軟件規(guī)模(1)信息域特性2.功能點(FP)技術11.1估計軟件規(guī)模(2)估算功能點的步驟計算未調(diào)整的功能點UFP計算技術復雜性因子TCF計算功能點數(shù)FP2.功能點(FP)技術11.1估計軟件規(guī)模(2)估算功能點2.功能點(FP)技術11.1估計軟件規(guī)模(2)估算功能點的步驟①計算未調(diào)整的功能點UFPUFP=a1×Inp+a2×Out+a3×Inq+a4×Maf+a5×Inf2.功能點(FP)技術11.1估計軟件規(guī)模(2)估算功能點2.功能點(FP)技術13.1估計軟件規(guī)模(2)估算功能點的步驟②計算技術復雜性因子TCF①確定技術因素對軟件規(guī)模的影響值F1~F14;0≤Fi≤

5②計算技術因素對軟件規(guī)模的綜合影響程度DI;DI=∑Fi③計算技術復雜性因子TCF。TCF=0.65+0.01×DIi=1142.功能點(FP)技術13.1估計軟件規(guī)模(2)估算功能點2.功能點(FP)技術11.1估計軟件規(guī)模(2)估算功能點的步驟技術因素②計算技術復雜性因子TCF2.功能點(FP)技術11.1估計軟件規(guī)模(2)估算功能點2.功能點(FP)技術11.1估計軟件規(guī)模(2)估算功能點的步驟③計算功能點數(shù)FPFP=UFP×TCF2.功能點(FP)技術11.1估計軟件規(guī)模(2)估算功能點2.功能點(FP)技術11.1估計軟件規(guī)模(3)FP技術的優(yōu)缺點優(yōu)點:與編程語言無關,比代碼行技術更加合理;缺點:在判斷信息與特性復雜級別和技術因素的影響度時,主觀性較大。2.功能點(FP)技術11.1估計軟件規(guī)模(3)FP技術的11.2工作量估計工作量單位:人月(pm)。工作量估算:是估算而不是計算,因為是事先而不是事后。工作量模型:是經(jīng)驗公式,是KLOC或FP的函數(shù)。模型類別:靜態(tài)模型

動態(tài)模型

構造模型11.2工作量估計工作量單位:人月(pm)。11.2工作量估計1.靜態(tài)單變量模型

E=A+B×(ev)C其中: E:工作量 A,B,C:經(jīng)驗常數(shù) ev:估算變量(KLOC或FP)總體結構形式11.2工作量估計1.靜態(tài)單變量模型E=A+B×(11.2工作量估計1.靜態(tài)單變量模型①Walston_Felix模型:E=5.2×(KLOC)0.91(1)面向KLOC的估算模型②Bailey_Basili模型:E=5.5+0.73×(KLOC)1.16③Boehm簡單模型:E=3.2×(KLOC)1.05④Doty模型(KLOC>9時):E=5.288×(KLOC)1.04711.2工作量估計1.靜態(tài)單變量模型①Walston_Fe11.2工作量估計1.靜態(tài)單變量模型①Albrecht&Gaffney模型:

E=-13.39+0.0545FP(2)面向FP的估算模型②Maston,Barnett和Mellichamp模型:E=5.587+15.12FP11.2工作量估計1.靜態(tài)單變量模型①Albrecht&G11.2工作量估計1.靜態(tài)單變量模型對于相同的KLOC或FP用不同的模型得到的結果不同,這是因為模型經(jīng)驗來自于有限領域和有限項目,進而適用范圍有限,因此實際應用時應適當調(diào)整模型(如,修改常數(shù))。(3)靜態(tài)單變量模型的評價11.2工作量估計1.靜態(tài)單變量模型對于相同的KL11.2工作量估計2.動態(tài)多變量模型E=(LOC×B0.333/P)3×(1/t)4其中E是工作量;t是項目持續(xù)時間;B是特殊技術因子,當KLOC=5~15時B=0.16,當KLOC>70時B=0.39;P是生產(chǎn)率參數(shù),P=2000(嵌入式軟件),P=10000(電信系統(tǒng)/系統(tǒng)軟件),P=28000(商業(yè)應用系統(tǒng))。(1)總體結構形式11.2工作量估計2.動態(tài)多變量模型E=(LO11.2工作量估計2.動態(tài)多變量模型①是軟件規(guī)模和開發(fā)時間的函數(shù);②開發(fā)統(tǒng)一軟件時,延長項目持續(xù)時間可降低完成項目所需的工作量。(2)模型評價11.2工作量估計2.動態(tài)多變量模型①是軟件規(guī)模和開發(fā)時間11.2工作量估計3.構造性成本模型:COCOMO2模型①應用系統(tǒng)組成模型:估算構建原型的工作量;②早期設計模型:適用于體系結構設計階段;③后體系結構模型:適用于體系結構設計之后的開發(fā)階段。(1)模型層次11.2工作量估計3.構造性成本模型:COCOMO2模型①11.2工作量估計3.構造性成本模型:COCOMO2模型(2)后體系結構模型其中:E是工作量a是模型系數(shù)b是模型指數(shù)fi是成本因素E=a×KLOCb×∏fii=11711.2工作量估計3.構造性成本模型:COCOMO2模型(11.3進度計劃1.估算開發(fā)時間2.Gantt圖3.工程網(wǎng)絡4.估算工程進度5.關鍵路徑6.機動時間11.3進度計劃1.估算開發(fā)時間12人員組織1.民主制程序員組2.主程序員組3.現(xiàn)代程序員組民主制程序員組主程序員組現(xiàn)代程序員組12人員組織1.民主制程序員組民主制程序員組主程序員組現(xiàn)代12人員組織1.民主制程序員組特點:地位平等,充分民主,協(xié)商決策。通信路徑:n(n-1)/2規(guī)模:較小,2-8人為宜優(yōu)點:積極面對程序錯誤,質(zhì)量較高;充分民主,凝聚力高,利于攻關;實用于成員經(jīng)驗均豐富時。缺點:成員經(jīng)驗均不豐富,缺乏協(xié)調(diào),導致失敗。12人員組織1.民主制程序員組特點:地位平等,充分民主,協(xié)商12人員組織2.主程序員組主程序員編程秘書后備程序員程序員程序員程序員12人員組織2.主程序員組主程序員編程秘書后備程序員程序員12人員組織2.主程序員組主程序員編程秘書后備程序員程序員程序員程序員產(chǎn)生背景:IBM公司20世紀70年代初期發(fā)明。(1)軟件開發(fā)人員多數(shù)比較缺乏經(jīng)驗;(2)程序設計過程中有許多事物性工作,如信息存儲和更新;(3)多渠道通信很費時間,將降低程序員的生產(chǎn)率。12人員組織2.主程序員組主程序員編程秘書后備程序員程序員12人員組織2.主程序員組主程序員編程秘書后備程序員程序員程序員程序員特性:(1)專業(yè)化:該組每名成員僅完成他們受過專業(yè)訓練的哪些工作。(2)層次化:主程序員指揮沒命組員工作,并對工作全面負責。12人員組織2.主程序員組主程序員編程秘書后備程序員程序員12人員組織2.主程序員組主程序員編程秘書后備程序員程序員程序員程序員分工:(1)主程序員:體系結構設計、關鍵部分詳細設計,技術指導。(2)后備程序員:協(xié)助主程序員,必要時接替主程序員。(3)編程秘書:負責事務性工作。12人員組織2.主程序員組主程序員編程秘書后備程序員程序員程12人員組織2.主程序員組主程序員編程秘書后備程序員程序員程序員程序員缺點:(1)主程序員:是高級程序員和優(yōu)秀管理者的結合體,難找。(2)后備程序員:期望與主程序員一樣優(yōu)秀,難找。(3)編程秘書:專業(yè)人員厭煩事務工作,難找。12人員組織2.主程序員組主程序員編程秘書后備程序員程序員12人員組織3.現(xiàn)代程序員組技術組長行政組長程序員程序員程序員(1)現(xiàn)代程序員組的結構技術管理非技術管理12人員組織3.現(xiàn)代程序員組技術組長行政組長程序員程序員程12人員組織3.現(xiàn)代程序員組程序員程序員程序員(2)大型項目的技術管理組織結構技術管理組長程序員程序員程序員程序員程序員組長組長項目經(jīng)理12人員組織3.現(xiàn)代程序員組程序員程序員程序員(2)大型項12人員組織3.現(xiàn)代程序員組程序員程序員程序員(3)包含分散決策的組織方式技術管理組長程序員程序員程序員程序員程序員組長組長項目經(jīng)理12人員組織3.現(xiàn)代程序員組程序員程序員程序員(3)包含分項目的質(zhì)量管理12質(zhì)量保證產(chǎn)品轉移產(chǎn)品運行產(chǎn)品修改SQA小組計劃監(jiān)督記錄分析報告活動措施基于非執(zhí)行的測試基于執(zhí)行的測試程序正確性證明項目的質(zhì)量管理12質(zhì)量保證產(chǎn)品轉移產(chǎn)品運行產(chǎn)品修改SQA小12質(zhì)量保證1.何謂軟件質(zhì)量?定義:軟件與明確地和隱含地定義的需求相一致的程度。明確地敘述的功能和性能需求、文檔中明確描述的開發(fā)標準。任何專業(yè)開發(fā)的軟件產(chǎn)品都應該具有的隱含特征。12質(zhì)量保證1.何謂軟件質(zhì)量?定義:軟件與明確地和隱含地定12質(zhì)量保證1.何謂軟件質(zhì)量?定義:軟件與明確地和隱含地定義的需求相一致的程度。要點:(1)與需求不一致就是質(zhì)量不高。(2)沒有遵守開發(fā)準則會導致質(zhì)量不高。(3)不滿足隱含的需求,質(zhì)量仍然是值得懷疑的。12質(zhì)量保證1.何謂軟件質(zhì)量?定義:軟件與明確地和隱含地定13質(zhì)量保證1.何謂軟件質(zhì)量?軟件質(zhì)量因素與產(chǎn)品活動的關系產(chǎn)品轉移產(chǎn)品運行產(chǎn)品修改正確性(它按我的需要工作嗎?)健壯性(對意外環(huán)境它能適當?shù)仨憫獑??)效率(完成預定功能時它需要的計算機資源多嗎?)完整性(它是安全的嗎?)可用性(我能使用它嗎?)風險(能按計劃完成它嗎?)可理解性(我能理解它嗎?)可維修性(我能修復它嗎?)靈活性(我能改變它嗎?)可測試性(我能測試它嗎?)可移植性(我能在另一臺機器上使用它嗎?)可再用性(我能再用它的某些部分嗎?)互運行性(我能把它和另一個系統(tǒng)結合嗎?)13質(zhì)量保證1.何謂軟件質(zhì)量?軟件質(zhì)量因素與產(chǎn)品活動的關系產(chǎn)13質(zhì)量保證2.軟件質(zhì)量保證措施產(chǎn)品轉移產(chǎn)品運行產(chǎn)品修改措施基于非執(zhí)行的測試(也稱為復審或評審):用來保證在編碼之前各階段產(chǎn)生的文檔的質(zhì)量。基于執(zhí)行的測試在程序編寫出來之后保證軟件質(zhì)量的最后一道防線。程序正確性證明使用數(shù)學方法嚴格驗證程序是否與它說明的完全一致。13質(zhì)量保證2.軟件質(zhì)量保證措施產(chǎn)品轉移產(chǎn)品運行產(chǎn)品修改措13質(zhì)量保證2.軟件質(zhì)量保證措施(人員)產(chǎn)品轉移產(chǎn)品運行產(chǎn)品修改軟件工程師采用先進的方法和度量,進行正式的技術復審以及完成計劃周密的軟件測試來保證軟件質(zhì)量。SQA小組通過計劃、監(jiān)督、記錄、分析和報告等活動,輔助軟件工程師,通過確保軟件過程的質(zhì)量來保證軟件產(chǎn)品的質(zhì)量。軟件工程師SQA小組13質(zhì)量保證2.軟件質(zhì)量保證措施(人員)產(chǎn)品轉移產(chǎn)品運行產(chǎn)13質(zhì)量保證2.軟件質(zhì)量保證措施(技術復審)(1)技術復審=走查(walkthrough)+審查(inspection)(2)技術復審的必要性能夠較早發(fā)現(xiàn)軟件錯誤,從而防止錯誤傳播到軟件過程的后續(xù)階段。40~30%其它錯誤60~70%規(guī)格說明或設計錯誤復審發(fā)現(xiàn)規(guī)格說明或設計錯誤的75%13質(zhì)量保證2.軟件質(zhì)量保證措施(技術復審)(1)技術復審=13質(zhì)量保證2.軟件質(zhì)量保證措施(技術復審)(3)走查小組:4~6人組成走查方式:①參與驅動法:參與者按照事先準備好的列表,提出他們不理解的術語和認為不正確的術語。文檔編寫組的代表必須回答每個質(zhì)疑,要么承認確實有錯誤,要么對質(zhì)疑作出解釋。②文檔驅動法。文檔編寫者向走查組成員仔細解釋文檔。走查組成員在此過程中針對問題進行質(zhì)疑。(這是更有效的方法)13質(zhì)量保證2.軟件質(zhì)量保證措施(技術復審)(3)走查13質(zhì)量保證2.軟件質(zhì)量保證措施(技術復審)(4)審查小組:4人組成綜述準備審查返工跟蹤文檔編寫者綜述文檔評審員仔細閱讀文檔評審組仔細走查文檔確保問題解決文檔作者解決問題13質(zhì)量保證2.軟件質(zhì)量保證措施(技術復審)(4)審查13質(zhì)量保證2.軟件質(zhì)量保證措施(技術復審)(5)程序正確性證明測試只能證明程序中有錯誤,不能證明程序中沒有錯誤。如果在程序中的若干點上,設計者可以提出關于程序變量及它們的關系的斷言,那么在每一點上的斷言都應該永遠是真的。13質(zhì)量保證2.軟件質(zhì)量保證措施(技術復審)(5)程序正確13質(zhì)量保證2.軟件質(zhì)量保證措施(技術復審)(5)程序正確性證明P1P2PiPnPi+1a1a2ai+1anai語句斷言輸出斷言輸入斷言aiai+1如果a1和an都是正確的且則PiPi+1是正確的從而所有語句是正確的13質(zhì)量保證2.軟件質(zhì)量保證措施(技術復審)(5)程序正確13軟件配置管理變化容易失控,一旦失控造成混亂或嚴重錯誤管理整個生命周期的變化在軟件開發(fā)的過程中,變化(或稱變動)既是必要的,又是不可避免的軟件配置管理軟件配置管理是在軟件的整個生命周期內(nèi)管理變化的一組活動。具體地說這組活動用來:(1)標識變化(2)控制變化(3)確保適當?shù)貙崿F(xiàn)了變化(4)想需要知道這類信息的人報告變化。13軟件配置管理變化容易失控,一旦失控造成混亂或嚴重錯誤管理軟件配置管理貫穿于軟件的整個生命周期13.6軟件配置管理軟件配置管理軟件配置管理貫穿于軟件的整個生命周期13.6軟件配置管理軟軟件配置管理的目標使變化更正確且更容易被適應,在必須變化時減少所需花費的工作量。13.6軟件配置管理軟件配置管理的目標13.6軟件配置管理軟件的配置項13.6軟件配置管理數(shù)據(jù)程序文檔軟件配置項計算機程序(源代碼和可執(zhí)行程序)描述計算機程序的文檔(供技術人員或用戶使用)數(shù)據(jù)(程序內(nèi)包含的或在程序外的)軟件的配置項13.6軟件配置管理數(shù)據(jù)程序文檔軟件配置項計算基線(Baseline)13.6軟件配置管理數(shù)據(jù)程序文檔軟件配置項數(shù)據(jù)程序文檔軟件配置項(基線)正式復審可以迅速而非正式修改必須用特定的、正式的過程來評估、實現(xiàn)和驗證每個變化基線(Baseline)13.6軟件配置管理數(shù)據(jù)程序文檔軟件配置管理過程13.6軟件配置管理標識變化版本控制變化控制報告配置審計單獨命名每個配置項,并用OO方法組織它們標識兩類對象:(1)基本對象:軟件工程師在軟件過程中創(chuàng)建的文本單元,如一個文檔片段、一個模塊清單、一組測試用例。(2)聚集對象:基本對象和其它聚集對象的集合。對象標識:名字、描述、資源表、實現(xiàn)。軟件配置管理過程13.6軟件配置管理標識變化版本控制變化控軟件配置管理過程13.6軟件配置管理標識變化版本控制變化控制報告配置審計單獨命名每個配置項,并用OO方法組織它們標識兩類對象:(1)基本對象:軟件工程師在軟件過程中創(chuàng)建的文本單元,如一個文檔片段、一個模塊清單、一組測試用例。(2)聚集對象:基本對象和其它聚集對象的集合。對象標識:名字、描述、資源表、實現(xiàn)。軟件配置管理過程13.6軟件配置管理標識變化版本控制變化控13.6軟件配置管理13.6軟件配置管理theENDtheEND

SoftwareEngineering

CCUTSE2013軟件工程導論第4篇軟件項目管理

SoftwareEngineering

CCUTSE1.估算軟件規(guī)模2.工作量估算3.進度計劃4.人員組織5.質(zhì)量保證6.能力成熟度模型7.軟件配置管理8.能力成熟度模型主要內(nèi)容1.估算軟件規(guī)模主要內(nèi)容導言俗話說“三分技術,七分管理”俗話說“吃不窮穿不窮算計不到就受窮”俗話說“巧婦難為無米之炊”導言俗話說“三分技術,七分管理”軟件工程包括技術和管理兩方面的內(nèi)容,是技術與管理緊密結合所形成的工程學科。導言軟件項目目標技術管理俗話說“三分技術,七分管理”軟件工程導言軟件項目目標技術管理俗話說“三分技術,七分管理”工程與項目工程:是類,是總稱,項目:是對象,是實例,是一個具體的工程。導言工程項目工程與項目導言工程項目軟件項目管理貫穿于軟件的整個生命周期導言軟件項目管理軟件項目管理貫穿于軟件的整個生命周期導言軟件項目管理什么是管理(management)?管理就是通過計劃、組織和控制等一系列活動,合理地配置和使用資源,達到既定目標的過程。導言計劃組織控制過程資源合理使用與配置效率質(zhì)量什么是管理(management)?導言計劃組織控制過程資源軟件項目管理的內(nèi)容導言時間管理人員管理配置管理質(zhì)量管理軟件項目管理的內(nèi)容導言時間管理人員管理配置管理質(zhì)量管理項目的時間管理導言估算工作量軟件需求KLOCFP估算規(guī)模人月估算進度GanttPert模型模型模型項目的時間管理導言估算軟件KLOC估算人月估算Gantt模型項目的人員管理導言民主制程序員組主程序員組現(xiàn)代程序員組項目的人員管理導言民主制程序員組主程序員組現(xiàn)代程序員組項目的質(zhì)量管理導言產(chǎn)品轉移產(chǎn)品運行產(chǎn)品修改SQA小組計劃監(jiān)督記錄分析報告活動措施基于非執(zhí)行的測試基于執(zhí)行的測試程序正確性證明項目的質(zhì)量管理導言產(chǎn)品轉移產(chǎn)品運行產(chǎn)品修改SQA小組計劃監(jiān)督軟件的配置管理導言數(shù)據(jù)程序文檔軟件配置項變化管理×標識變化版本控制變化控制報告配置審計軟件的配置管理導言數(shù)據(jù)程序文檔軟件配置項變化管理×標識變化版能力成熟度模型:評價軟件機構的軟件過程能力成熟度的模型。導言能力成熟度模型:評價軟件機構的軟件過程能力成熟度的模型。導言能力成熟度模型:評價軟件機構的軟件過程能力成熟度的模型。導言能力成熟度模型:評價軟件機構的軟件過程能力成熟度的模型。導言能力成熟度模型:評價軟件機構的軟件過程能力成熟度的模型。導言能力成熟度模型:評價軟件機構的軟件過程能力成熟度的模型。導言能力成熟度模型:評價軟件機構的軟件過程能力成熟度的模型。導言能力成熟度模型:評價軟件機構的軟件過程能力成熟度的模型。導言能力成熟度模型:評價軟件機構的軟件過程能力成熟度的模型。導言能力成熟度模型:評價軟件機構的軟件過程能力成熟度的模型。導言1.代碼行(KLOC/LOC)技術11.1估計軟件規(guī)模出發(fā)點:依據(jù)以往開發(fā)類似產(chǎn)品的經(jīng)驗和歷史數(shù)據(jù)。L=6a+4m+b---加權平均法:多名有經(jīng)驗的軟件工程師每人都估計程序的最小規(guī)模(a)、最大規(guī)模(b)和最可能的規(guī)模(m),分別計算出這3中規(guī)模的平均值a,b和m之后,計算L。---1.代碼行(KLOC/LOC)技術11.1估計軟件規(guī)模出發(fā)1.代碼行(KLOC/LOC)技術11.1估計軟件規(guī)模L=6a+4m+b---=611+4×14+12=13.171.代碼行(KLOC/LOC)技術11.1估計軟件規(guī)模L=1.代碼行(KLOC/LOC)技術11.1估計軟件規(guī)模優(yōu)點:代碼是所有軟件項目的產(chǎn)品,且代碼行易于計算。缺點:(1)代碼僅是軟件配置的成分之一,用代碼行表示軟件規(guī)模不盡合理;(2)用不同語言實現(xiàn)統(tǒng)一軟件,代碼行數(shù)并不相同。1.代碼行(KLOC/LOC)技術11.1估計軟件規(guī)模優(yōu)點2.功能點(FP)技術11.1估計軟件規(guī)??朔a行技術的缺點;依據(jù)軟件信息域特性和軟件復雜性的評測結果。用功能點(FP)為單位度量軟件規(guī)模。2.功能點(FP)技術11.1估計軟件規(guī)??朔a行技術的2.功能點(FP)技術11.1估計軟件規(guī)模(1)信息域特性輸入項數(shù)(Inp)輸出項數(shù)(Out)查詢數(shù)(Inq)主文件數(shù)(Maf)外部接口數(shù)(Maf)信息域2.功能點(FP)技術11.1估計軟件規(guī)模(1)信息域特性2.功能點(FP)技術11.1估計軟件規(guī)模(1)信息域特性輸入項數(shù)(Inp):用戶向軟件輸入的項數(shù),這些輸入給軟件提供面向應用的數(shù)據(jù),不包括查詢。輸出項數(shù)(Out):查詢數(shù)主文件數(shù)外部接口數(shù)2.功能點(FP)技術11.1估計軟件規(guī)模(1)信息域特性2.功能點(FP)技術11.1估計軟件規(guī)模(2)估算功能點的步驟計算未調(diào)整的功能點UFP計算技術復雜性因子TCF計算功能點數(shù)FP2.功能點(FP)技術11.1估計軟件規(guī)模(2)估算功能點2.功能點(FP)技術11.1估計軟件規(guī)模(2)估算功能點的步驟①計算未調(diào)整的功能點UFPUFP=a1×Inp+a2×Out+a3×Inq+a4×Maf+a5×Inf2.功能點(FP)技術11.1估計軟件規(guī)模(2)估算功能點2.功能點(FP)技術13.1估計軟件規(guī)模(2)估算功能點的步驟②計算技術復雜性因子TCF①確定技術因素對軟件規(guī)模的影響值F1~F14;0≤Fi≤

5②計算技術因素對軟件規(guī)模的綜合影響程度DI;DI=∑Fi③計算技術復雜性因子TCF。TCF=0.65+0.01×DIi=1142.功能點(FP)技術13.1估計軟件規(guī)模(2)估算功能點2.功能點(FP)技術11.1估計軟件規(guī)模(2)估算功能點的步驟技術因素②計算技術復雜性因子TCF2.功能點(FP)技術11.1估計軟件規(guī)模(2)估算功能點2.功能點(FP)技術11.1估計軟件規(guī)模(2)估算功能點的步驟③計算功能點數(shù)FPFP=UFP×TCF2.功能點(FP)技術11.1估計軟件規(guī)模(2)估算功能點2.功能點(FP)技術11.1估計軟件規(guī)模(3)FP技術的優(yōu)缺點優(yōu)點:與編程語言無關,比代碼行技術更加合理;缺點:在判斷信息與特性復雜級別和技術因素的影響度時,主觀性較大。2.功能點(FP)技術11.1估計軟件規(guī)模(3)FP技術的11.2工作量估計工作量單位:人月(pm)。工作量估算:是估算而不是計算,因為是事先而不是事后。工作量模型:是經(jīng)驗公式,是KLOC或FP的函數(shù)。模型類別:靜態(tài)模型

動態(tài)模型

構造模型11.2工作量估計工作量單位:人月(pm)。11.2工作量估計1.靜態(tài)單變量模型

E=A+B×(ev)C其中: E:工作量 A,B,C:經(jīng)驗常數(shù) ev:估算變量(KLOC或FP)總體結構形式11.2工作量估計1.靜態(tài)單變量模型E=A+B×(11.2工作量估計1.靜態(tài)單變量模型①Walston_Felix模型:E=5.2×(KLOC)0.91(1)面向KLOC的估算模型②Bailey_Basili模型:E=5.5+0.73×(KLOC)1.16③Boehm簡單模型:E=3.2×(KLOC)1.05④Doty模型(KLOC>9時):E=5.288×(KLOC)1.04711.2工作量估計1.靜態(tài)單變量模型①Walston_Fe11.2工作量估計1.靜態(tài)單變量模型①Albrecht&Gaffney模型:

E=-13.39+0.0545FP(2)面向FP的估算模型②Maston,Barnett和Mellichamp模型:E=5.587+15.12FP11.2工作量估計1.靜態(tài)單變量模型①Albrecht&G11.2工作量估計1.靜態(tài)單變量模型對于相同的KLOC或FP用不同的模型得到的結果不同,這是因為模型經(jīng)驗來自于有限領域和有限項目,進而適用范圍有限,因此實際應用時應適當調(diào)整模型(如,修改常數(shù))。(3)靜態(tài)單變量模型的評價11.2工作量估計1.靜態(tài)單變量模型對于相同的KL11.2工作量估計2.動態(tài)多變量模型E=(LOC×B0.333/P)3×(1/t)4其中E是工作量;t是項目持續(xù)時間;B是特殊技術因子,當KLOC=5~15時B=0.16,當KLOC>70時B=0.39;P是生產(chǎn)率參數(shù),P=2000(嵌入式軟件),P=10000(電信系統(tǒng)/系統(tǒng)軟件),P=28000(商業(yè)應用系統(tǒng))。(1)總體結構形式11.2工作量估計2.動態(tài)多變量模型E=(LO11.2工作量估計2.動態(tài)多變量模型①是軟件規(guī)模和開發(fā)時間的函數(shù);②開發(fā)統(tǒng)一軟件時,延長項目持續(xù)時間可降低完成項目所需的工作量。(2)模型評價11.2工作量估計2.動態(tài)多變量模型①是軟件規(guī)模和開發(fā)時間11.2工作量估計3.構造性成本模型:COCOMO2模型①應用系統(tǒng)組成模型:估算構建原型的工作量;②早期設計模型:適用于體系結構設計階段;③后體系結構模型:適用于體系結構設計之后的開發(fā)階段。(1)模型層次11.2工作量估計3.構造性成本模型:COCOMO2模型①11.2工作量估計3.構造性成本模型:COCOMO2模型(2)后體系結構模型其中:E是工作量a是模型系數(shù)b是模型指數(shù)fi是成本因素E=a×KLOCb×∏fii=11711.2工作量估計3.構造性成本模型:COCOMO2模型(11.3進度計劃1.估算開發(fā)時間2.Gantt圖3.工程網(wǎng)絡4.估算工程進度5.關鍵路徑6.機動時間11.3進度計劃1.估算開發(fā)時間12人員組織1.民主制程序員組2.主程序員組3.現(xiàn)代程序員組民主制程序員組主程序員組現(xiàn)代程序員組12人員組織1.民主制程序員組民主制程序員組主程序員組現(xiàn)代12人員組織1.民主制程序員組特點:地位平等,充分民主,協(xié)商決策。通信路徑:n(n-1)/2規(guī)模:較小,2-8人為宜優(yōu)點:積極面對程序錯誤,質(zhì)量較高;充分民主,凝聚力高,利于攻關;實用于成員經(jīng)驗均豐富時。缺點:成員經(jīng)驗均不豐富,缺乏協(xié)調(diào),導致失敗。12人員組織1.民主制程序員組特點:地位平等,充分民主,協(xié)商12人員組織2.主程序員組主程序員編程秘書后備程序員程序員程序員程序員12人員組織2.主程序員組主程序員編程秘書后備程序員程序員12人員組織2.主程序員組主程序員編程秘書后備程序員程序員程序員程序員產(chǎn)生背景:IBM公司20世紀70年代初期發(fā)明。(1)軟件開發(fā)人員多數(shù)比較缺乏經(jīng)驗;(2)程序設計過程中有許多事物性工作,如信息存儲和更新;(3)多渠道通信很費時間,將降低程序員的生產(chǎn)率。12人員組織2.主程序員組主程序員編程秘書后備程序員程序員12人員組織2.主程序員組主程序員編程秘書后備程序員程序員程序員程序員特性:(1)專業(yè)化:該組每名成員僅完成他們受過專業(yè)訓練的哪些工作。(2)層次化:主程序員指揮沒命組員工作,并對工作全面負責。12人員組織2.主程序員組主程序員編程秘書后備程序員程序員12人員組織2.主程序員組主程序員編程秘書后備程序員程序員程序員程序員分工:(1)主程序員:體系結構設計、關鍵部分詳細設計,技術指導。(2)后備程序員:協(xié)助主程序員,必要時接替主程序員。(3)編程秘書:負責事務性工作。12人員組織2.主程序員組主程序員編程秘書后備程序員程序員程12人員組織2.主程序員組主程序員編程秘書后備程序員程序員程序員程序員缺點:(1)主程序員:是高級程序員和優(yōu)秀管理者的結合體,難找。(2)后備程序員:期望與主程序員一樣優(yōu)秀,難找。(3)編程秘書:專業(yè)人員厭煩事務工作,難找。12人員組織2.主程序員組主程序員編程秘書后備程序員程序員12人員組織3.現(xiàn)代程序員組技術組長行政組長程序員程序員程序員(1)現(xiàn)代程序員組的結構技術管理非技術管理12人員組織3.現(xiàn)代程序員組技術組長行政組長程序員程序員程12人員組織3.現(xiàn)代程序員組程序員程序員程序員(2)大型項目的技術管理組織結構技術管理組長程序員程序員程序員程序員程序員組長組長項目經(jīng)理12人員組織3.現(xiàn)代程序員組程序員程序員程序員(2)大型項12人員組織3.現(xiàn)代程序員組程序員程序員程序員(3)包含分散決策的組織方式技術管理組長程序員程序員程序員程序員程序員組長組長項目經(jīng)理12人員組織3.現(xiàn)代程序員組程序員程序員程序員(3)包含分項目的質(zhì)量管理12質(zhì)量保證產(chǎn)品轉移產(chǎn)品運行產(chǎn)品修改SQA小組計劃監(jiān)督記錄分析報告活動措施基于非執(zhí)行的測試基于執(zhí)行的測試程序正確性證明項目的質(zhì)量管理12質(zhì)量保證產(chǎn)品轉移產(chǎn)品運行產(chǎn)品修改SQA小12質(zhì)量保證1.何謂軟件質(zhì)量?定義:軟件與明確地和隱含地定義的需求相一致的程度。明確地敘述的功能和性能需求、文檔中明確描述的開發(fā)標準。任何專業(yè)開發(fā)的軟件產(chǎn)品都應該具有的隱含特征。12質(zhì)量保證1.何謂軟件質(zhì)量?定義:軟件與明確地和隱含地定12質(zhì)量保證1.何謂軟件質(zhì)量?定義:軟件與明確地和隱含地定義的需求相一致的程度。要點:(1)與需求不一致就是質(zhì)量不高。(2)沒有遵守開發(fā)準則會導致質(zhì)量不高。(3)不滿足隱含的需求,質(zhì)量仍然是值得懷疑的。12質(zhì)量保證1.何謂軟件質(zhì)量?定義:軟件與明確地和隱含地定13質(zhì)量保證1.何謂軟件質(zhì)量?軟件質(zhì)量因素與產(chǎn)品活動的關系產(chǎn)品轉移產(chǎn)品運行產(chǎn)品修改正確性(它按我的需要工作嗎?)健壯性(對意外環(huán)境它能適當?shù)仨憫獑??)效率(完成預定功能時它需要的計算機資源多嗎?)完整性(它是安全的嗎?)可用性(我能使用它嗎?)風險(能按計劃完成它嗎?)可理解性(我能理解它嗎?)可維修性(我能修復它嗎?)靈活性(我能改變它嗎?)可測試性(我能測試它嗎?)可移植性(我能在另一臺機器上使用它嗎?)可再用性(我能再用它的某些部分嗎?)互運行性(我能把它和另一個系統(tǒng)結合嗎?)13質(zhì)量保證1.何謂軟件質(zhì)量?軟件質(zhì)量因素與產(chǎn)品活動的關系產(chǎn)13質(zhì)量保證2.軟件質(zhì)量保證措施產(chǎn)品轉移產(chǎn)品運行產(chǎn)品修改措施基于非執(zhí)行的測試(也稱為復審或評審):用來保證在編碼之前各階段產(chǎn)生的文檔的質(zhì)量?;趫?zhí)行的測試在程序編寫出來之后保證軟件質(zhì)量的最后一道防線。程序正確性證明使用數(shù)學方法嚴格驗證程序是否與它說明的完全一致。13質(zhì)量保證2.軟件質(zhì)量保證措施產(chǎn)品轉移產(chǎn)品運行產(chǎn)品修改措13質(zhì)量保證2.軟件質(zhì)量保證措施(人員)產(chǎn)品轉移產(chǎn)品運行產(chǎn)品修改軟件工程師采用先進的方法和度量,進行正式的技術復審以及完成計劃周密的軟件測試來保證軟件質(zhì)量。SQA小組通過計劃、監(jiān)督、記錄、分析和報告等活動,輔助軟件工程師,通過確保軟件過程的質(zhì)量來保證軟件產(chǎn)品的質(zhì)量。軟件工程師SQA小組13質(zhì)量保證2.軟件質(zhì)量保證措施(人員)產(chǎn)品轉移產(chǎn)品運行產(chǎn)13質(zhì)量保證2.軟件質(zhì)量保證措施(技術復審)(1)技術復審=走查(walkthrough)+審查(inspection)(2)技術復審的必要性能夠較早發(fā)現(xiàn)軟件錯誤,從而防止錯誤傳播到軟件過程的后續(xù)階段。40~30%其它錯誤60~70%規(guī)格說明或設計錯誤復審發(fā)現(xiàn)規(guī)格說明或設計錯誤的75%13質(zhì)量保證2.軟件質(zhì)量保證措施(技術復審)

溫馨提示

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

評論

0/150

提交評論