版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第五章
軟件實現(xiàn)(編碼測試)5.1編碼1。跨越人機鴻溝①精干設(shè)計者+精干組織者+好方法,才能突破領(lǐng)域鴻溝取得正確設(shè)計。②正確的設(shè)計+精干程序員+好的編程語言才能突破人機鴻溝編寫出好的計算機程序。2。任務(wù)①選好程序員與程序語言,程序員應(yīng)具備評審設(shè)計、熟悉編程與調(diào)試的能力;程序語言易于實現(xiàn)設(shè)計。②軟件藍圖符合程序結(jié)構(gòu)定理,V(G)小,算法簡單。③程序質(zhì)量標準:正確實現(xiàn)設(shè)計,可讀,高效,可靠,方便。3。編碼風格①文體、手段、表達方式:易于理解;代碼、數(shù)據(jù)結(jié)構(gòu)化;語句表達簡明直接結(jié)構(gòu)好。②程序效率高,健壯可靠。③人機IO界面友好。④易于復(fù)用。第五章軟件實現(xiàn)(編碼測試)5.1編碼1??缭饺藱C鴻溝3。編14。編碼風格簡例①給矩陣賦值的簡明直接表達方式比較Ⅰ不簡明直接的表達Ⅱ簡明直接的表達for(i=1;i=n;i++)for(i=1;i=n;i++)for(j=1;j=n;j++)for(j=1;j=n;j++){P[i][1]=1;{P[i][j]=0;P[i][j]=(i/j)*(j/i);P[i][1]=1;}P[i][i]=1;//運行速度慢}//運行速度快4。編碼風格簡例2②比較數(shù)值的可讀性與效率表達//Ⅰ直接挑選//Ⅱ提示簡化挑選#include“stdio.h”#include“stdio.h”main()main(){scanf(“﹪d,﹪d,﹪d”,&a,&b,&c);{inta,b,c,min;if(a<b&&a<c)printf(“smallestprintf(“inputintegera,b,c\n”);﹪d”,a)scanf(“﹪d,﹪d,﹪d”,&a,&b,&c);elseif(b<a&&b<c)printf(“smallif(a<b)min=aestis﹪d”,b)elsemin=b;elseprintf(“smallest﹪d”,c);if(min>c)min=c;}printf(“smallest﹪d”,min);}//Ⅲ復(fù)用挑選main()
#include“stdio.h”{inta,b,c,min;intsmallest(inti,intj);scanf(“﹪d,﹪d,﹪d”,&a,&b,&c);{if(i<j)return(i)min=smallest(smallest(a,b),c);elsereturn(j);}printf(“﹪d”,min);}②比較數(shù)值的可讀性與效率表達//Ⅲ復(fù)用挑選35。程序結(jié)構(gòu)定理①結(jié)構(gòu)化程序結(jié)構(gòu)化是工程化對軟件結(jié)構(gòu)的推動,要求程序由順序、分支、循環(huán)成分構(gòu)成,可理解、可測試、可修改、可維護;要求數(shù)據(jù)結(jié)構(gòu)化規(guī)范化。②程序結(jié)構(gòu)定理檢驗軟件設(shè)計無病性,然后優(yōu)化算法(算法簡單);保證好形(一個輸入多個出口)、適形(一個輸入一個出口)、避免病型(無出口)。③病形偽碼舉例Start//病形PCstart//無病
L1:whilePdoA;whilePdoL2:B;A;ifQgotoL1;BuntilQ;elsegotoL2P+-;Q+-;enddo;enddo;stopstop6.無距離跨越設(shè)計者編碼者集于一身,但必經(jīng)過程控制、設(shè)計文檔檢驗、程序檢驗,方能通過測試與驗收。5。程序結(jié)構(gòu)定理③病形偽碼舉例6.無距離跨越設(shè)計者編碼45.2軟件測試
1.軟件測試與程序測試的區(qū)別:找錯的范圍不同
程序測試:找程序執(zhí)行、語法、數(shù)據(jù)的錯誤,僅是編碼的問題
軟件測試:不僅要找程序的錯誤,還要找文檔、數(shù)據(jù)的錯誤,是全周期的。S系統(tǒng)分析R需求分析D設(shè)計C編碼自頂向下U單元測試I集成測試V確認測試ST系統(tǒng)測試自底向上SRDCUIVST5.2軟件測試S系統(tǒng)分析U單元測試S52.軟件測試的目的:
用最小的成本把軟件做對,找出錯誤。3.軟件測試的內(nèi)容:1)靜態(tài)測試:人工走查,專家評審(占70%的錯誤)2)動態(tài)測試:編寫測試用例,執(zhí)行被測軟件3)可靠性測試:穩(wěn)定性檢查,長期性測試4)正確性測試:邏輯判斷5)測試的核心內(nèi)容:設(shè)計編寫測試用例,執(zhí)行被測軟件2.軟件測試的目的:64。軟件測試原則
①認定軟件有錯,測試標準:軟件需求規(guī)格說明書,作為客戶的最終標準。②80%的新錯誤都是由20%的舊錯誤引起的,先改舊錯后改新錯。③在設(shè)計測試用例的時候,有效無效要兼顧。④軟件測試的相對性:根據(jù)實際的人力物力盡量找到錯誤。⑤預(yù)期結(jié)果:輸入和輸出的對應(yīng)關(guān)系是一一對應(yīng)的關(guān)系。⑥測試用例的設(shè)計原則:找出高效的測試數(shù)據(jù),或者說用最少的測試數(shù)據(jù)要找出盡可能多的軟件錯誤。⑦目的:保證低成本、高質(zhì)量。⑧上下結(jié)合的增式組裝集成測試、單元組裝結(jié)合。4。軟件測試原則75。測試方法與測試用例設(shè)計
從動態(tài)的觀點有兩類方法,白盒法與黑盒法1)白盒法
——邏輯的方法,分析的方法,從詳細設(shè)計開始。
①點覆蓋(語句):設(shè)計測試用例,執(zhí)行被測程序,使得被測程序的語句都被測試一次。②邊覆蓋(判定/分支):設(shè)計測試用例,執(zhí)行被測程序,使得被測程序的分支真假都被執(zhí)行一次。
③條件覆蓋:設(shè)計測試用例,執(zhí)行被測程序,使得被測程序分支當中的子條件的真和假各都被執(zhí)行一遍。④條件組合:設(shè)計測試用例,執(zhí)行被測程序,使得分支中的子條件的真假組合盡量多的被覆蓋。
⑤判定和條件組合覆蓋:使分支中的真假和條件中的真假同時被覆蓋,考慮到分支邏輯符最簡子集。5。測試方法與測試用例設(shè)計8⑥路徑覆蓋:設(shè)計測試用例,執(zhí)行被測程序,使得被測程序從開始到結(jié)束的路徑的環(huán)域復(fù)雜度V(G)個不同的獨立路徑的基本路徑都被覆蓋一次。2)黑盒法—功能測試的方法,非分析的方法,從需求分析之后做①等價類劃分:找出有效/無效的輸入輸出子集作為測試用例②邊界值分析:找出易出錯的邊界值(有效/無效)為測試用例③因果圖法:組合輸入/輸出的等價類劃分(I為因O為果)④錯誤推測法:經(jīng)驗方法3)確認測試(即驗收測試)①確認與驗證的區(qū)別:Validation(確認),用戶用黑盒法驗收是否構(gòu)造了正確的需求,測試在開發(fā)環(huán)境下進行,測試在使用環(huán)境下進行。Verification(驗證),用戶驗收是否正確實現(xiàn)了需求。②軟件配置復(fù)查,用戶指南等軟件配置要正確、齊全、一致。⑥路徑覆蓋:設(shè)計測試用例,執(zhí)行被測程序,使得被測程序從開始到94)例題startstopX>1&X<3TFX>3&X<4TFX>4&X<5TFY=X+1Y=X+2Y=X+3Y=X+4c1c2P4c3c4c5c6IIIIIIP1P2P3三個分支語句IIIIII四個賦值語句基本路徑P1P2P3P46個條件C1C2C3C4C5C6①編寫覆蓋如下PAD圖條件的測試用例4)例題startstopX>1&X<3TFX>3&X<4T10②設(shè)計要點:ⅰ準確確定被測軟件的功能或邏輯ⅱ明確測試的目標要求ⅲ遵從測試原則,尤其是符合測試用例編寫原則ⅳ采用表格方式編寫XYC1C2C3C4C5C6P1P2P3P4IIIIII15FTFTFT---TFFF59TFTFTF---TFFF②設(shè)計要點:XYC1C2C3C4C5C6P1P211①編寫覆蓋此PFC圖的條件的測試用例。②注意:取BRO最小集。TstartstopInputA,B,XX=X/AX=X+1(A>1)&(B=0)(A=2)OR(X>1)printA,B,XFTF5)課堂小測試①編寫覆蓋此PFC圖的條件的測試用例。TstartstopI12第六章軟件項目管理6.1軟件計劃特點:無形的、無標準的、一次性的、軟件產(chǎn)品開發(fā)項目分類:零起點新項目、進化型項目、構(gòu)件集成項目2.項目規(guī)劃可重復(fù)的日常作業(yè)作業(yè)operations不可重復(fù)一次性的項目projects可重復(fù)性任務(wù)特點名稱①項目與運作區(qū)別②軟件項目特點分類1.軟件項目①成本估計(代碼行估計、功能點估計、工作量估計、比例劃分法)②可行性分析(經(jīng)濟、技術(shù)、操作、風險、法律)③進度安排(比例劃分、圖PERT、GANTT、TSN、數(shù)值CPM)第六章軟件項目管理6.1軟件計劃特點:無形的、無標準的、一次13①問題確定日期(工期)最佳進度安排不確定日期(工期)最佳(小)工期最佳安排②粗略的方法(比例劃分法)R·S·Pressman
計劃40%開發(fā)20%維護40%細化R·S·Pressman可行性5%編碼20%維護40%需求分析10%設(shè)計25%IBM比例可行性0.1編碼1單元測試1需求0.1組裝測試2設(shè)計0.5維護20系統(tǒng)分析員(項目經(jīng)理)指定最佳比例3。進度具體安排①問題確定日期(工期)最佳進度安排3。進度具體安排14③精確方法舉例確定工期PERT圖/工程網(wǎng)絡(luò)圖法13562400224477111124C(9)A(10)B(3)E(8)G(1)F(2)D(7)4222334{4,11}{5,7}始終{2,0,7}③精確方法舉例確定工期PERT圖/工程網(wǎng)絡(luò)圖法135624015關(guān)鍵路徑:經(jīng)歷時間最長的路徑?jīng)Q定工期,t1≡t2,1245612作業(yè)名(人數(shù))時間箭尾箭頭并行123n串行123n實作業(yè):消耗資源的活動虛作業(yè):不消耗資源的活動PERT圖步驟:a、由可行性分析定義作業(yè),根據(jù)客觀安排串并行b、畫出PERT圖c、求每個結(jié)點最早開工(完工)t1,最遲開工(完工)t2頭交叉取最大,尾交叉取最小d、求關(guān)鍵路徑CP,時間就是工期Te、優(yōu)化關(guān)鍵路徑:經(jīng)歷時間最長的路徑?jīng)Q定工期,t1≡t2,12416100
C(9)A(10)B(3)E(8)G(1)F(2)D(7)4222334{4,11}{5,7}始61111
577
222
444
324
終求t1t2CPTPERT圖練習,結(jié)點改變畫法C(9)A(10)B(3)E(8)G(1)F(2)D(7)4171234567891011t0312456A(10)2D(7)2F(2)3G(1)4C(9)4E(8)3B(3)2優(yōu)化有兩種:T確定優(yōu)化,T不確定最小優(yōu)化④TSN時標網(wǎng)絡(luò)圖法任務(wù)人員(10)畫法:CP在中間,非CP在兩邊,優(yōu)化移動1234567891011t0312456A(10)D(7)18100
255
12312
51818
41722
62626
A5E11D7B10C8F6/58HG5I4例:求t1t2cpT⑤T最小(F作業(yè)時間縮短為5),PERT圖法MNA5E11D7B10C8F6/58HG5I4例:求t1⑤T191025312517421625
17251712505101520250任務(wù)時間A5C8B10D7E11F5G5I4H8TSN(TimeScsaleNetwork)時標網(wǎng)絡(luò)圖1025312517421625172517120⑥CPM(CriticalPathMethod)關(guān)鍵路徑法
PERT圖優(yōu)點:空間好,缺點:時間不好,CPM克服其缺點步驟:以下圖為例13562400224477111124C(9)A(1)B(3)E(8)G(1)F(2)D(7)4222334{4,11}{5,7}始終⑥CPM(CriticalPathMethod)關(guān)鍵路徑21ⅰ定義變量與作業(yè)ⅱ箭桿時間t(i,j)估算,賦值,賦初值ⅲtE(i)i=1..6Early,t1正向累加,頭交叉取最大,tL(i)i=1..6Last,t2逆向累加,尾交叉取最?、で髸r差,CP上結(jié)點tE(i)≡tL(i),S(i)=tL(i)-tE(i)≡0ⅴ求T=?ⅵ優(yōu)化,非CP路徑變動CPM法的步驟:ⅰ定義變量與作業(yè)CPM法的步驟:22ⅰ定義ⅱt(1,6)=4t(1,3)=2t(1,2)=2t(2,4)=2t(3,5)=3t(4,5)=3t(5,6)=4ⅲtE(1)=0tE(2)=tE(1)+t(1,2)=0+2=2tE(3)=tE(1)+t(1,3)=0+2=2tE(4)=tE(2)+t(2,4)=2+2=4tE(5)=max{tE(3)+t(3,5)=2+3=5,tE(4)+t(4,5)=4+3=7}=7tE(6)=max{tE(1)+t(1,6)=0+4=4,tE(5)+t(5,6)=7+4=11}=11ⅳtL(6)=tE(6)=11tL(5)=tL(6)-t(5,6)=7tL(4)=tL(5)-t(4,5)=7-3=4tL(3)=tL(5)-t(3,5)=7-3=4tL(2)=tL(4)-t(2,4)=4-2=2tL(1)=min{tL(6)-t(1,6)=7,tL(3)-t(1,3)=2,tL(2)-t(1,2)=0}=0ⅴ時差S(i)=tL(1)-tE(1)=0–0=0ⅵ工期T=tL(6)-tL(1)=11-0=11當T的一個作業(yè)時間有變動,T發(fā)生變化,進度重排。CPM法實例ⅰ定義CPM法實例23⑦規(guī)模估計法abmL物價1800265024002340計劃410074005005250財務(wù)2000245621002142銷售2950360034003458總計13190L=a+4m+b6L代碼行長b最大估計長度a最小估計長度m一般估計長度⑦規(guī)模估計法abmL物價1800265024002340計劃24⑧生存周期階段的比例分配法可行性分析0.18設(shè)計0.30編碼0.26測試0.26合計1.0物價0.40.70.60.62.3人/月計劃0.91.61.41.45.3人/月財務(wù)0.50.60.50.52.1人/月銷售0.61.10.90.93.5人/月總計2.44.03.43.413.2人/月元/月2100180015001800成本504072005100612023280⑧生存周期階段的比例分配法可行性分析0.18設(shè)計0.30編碼254??尚行苑治鰡栴}定義→高層邏輯→成本估計→經(jīng)濟可行性分析成本估計:技術(shù)可行性分析操作可行性分析E=L/Pl(千行/人月)風險可行性分析E=aLb法律可行性分析E=/T4L=a+4m+b64??尚行苑治鯨=a+4m+b626①計算公式Fi=Pi(1+r)iFi效益(將來值)Pi現(xiàn)值(當前值)r利率i年S=∑I=n1PiS總效益Pi現(xiàn)值(當前值)i年V=S-QT回收期T=i+(Q-Si)/Pi+1
V純收入S總效益Q投入量,成本估計5。經(jīng)濟效益分析①計算公式S=∑I=n1PiV=S-Q27②分析實例i
Fi(1+r)i
Pi
Si123456000.6000.6000.6000.6000.1.04961.07531.10171.12871.02455856.525856.525716.4611572.985579.8317152.325446.1322598.455315.8527914.3L=4000行20.0元/行500行/人月E=8人月CPU8000元打印機3000元聯(lián)網(wǎng)1000元節(jié)省6000元利率2.45﹪求T、V?五年的r?Q=20000.,F=6000.,Pi=Fi/(1+r)i,Si=∑i-1iPiT=i+(Q-Si)/Pi+1=3+(20000-7152.32)/5446.13=3.520000=6000/(1+r)+6000/(1+r)2+…+6000/(1+r)5r=14.9﹪,V=27914.3-20000=7914.3元解:②分析實例iFi(1+r)iPiSi1234560286.2人員組織CMM1.任務(wù)劃分(按階段、按結(jié)構(gòu))2.F.Brooks定律①人員分配不能平均,不同層次、不同階段參與不同;分組應(yīng)使通訊路徑為n(n-1)/2盡量小.②規(guī)模大于30人年,E=/T4,=L3/C3,L=CE1/3T4/3③成本超支,壓縮工期反而更超支,應(yīng)適當延期。④工程拖期,增人反而更拖期,應(yīng)適當減員。問題1:54人不分組,與分6組,哪個分組好?問題2:原有m個人,增加n個人,工期有何危險變化?問題3:T1=3.0年,P1=10.0人,為常數(shù),T2=1.5年E2
?P2?6.2人員組織CMM1.任務(wù)劃分(按階段、按結(jié)構(gòu))2.F.29問題1解:(分析具體原因解決)問題2解:問題3解:設(shè)二人通訊量為,組長可通訊,E1為不分組,E2為分組,根據(jù)Brook定律E1=C254=54(54-1)/2=1431E2=C29C26=9(9-1)6(6-1)/4=540E2<E1,所以分組好。Em=C2m=m(m-1)/2,Em+n=C2m+n=(m+n)(m+n-1)/2=((m+n)2-m-n)/2,T=E/P=(Em+n-Em)/(m+n-m)=(2m+n-1)/2(年)E=/T4,E1/E2=T24/T14,E2=(T1/T2)4E1E2=(3.0/1.5)430.0=480(人年)P2=E2/T2=480/1.5=320.0人工期縮短引起工作量劇增。問題1解:(分析具體原因解決)問題2解:問題3解:設(shè)二人通訊303.人員組織①原則
尊重人才能力優(yōu)選技管分開打破平均責權(quán)均衡鼓勵達標減少接口矩陣組織②組織民主小組層次小組矩陣小組(最佳)1.11.2……1.n2.12.2…….2.n…………n.1n.2…….n.n項目1項目2項目n階段1階段2……階段n總經(jīng)理1.1~1.n階段經(jīng)理,領(lǐng)導(dǎo)各項目階段小組成員1.1~n.1項目經(jīng)理,領(lǐng)導(dǎo)各階段項目小組成員行列交叉點小組成員受項目與階段經(jīng)理雙重領(lǐng)導(dǎo)總經(jīng)理統(tǒng)領(lǐng)行列經(jīng)理構(gòu)成陣列層次組織矩陣小組的優(yōu)點減少人員通訊,發(fā)揮項目領(lǐng)域、工程階段雙向人才優(yōu)勢3.人員組織①原則②組織1.11.2……1.n2.12.2314.CMM(CapabilityMaturityModel)、P-CMM(Personnel-CMM)CMMInitialRepeatableDefinedManagedOptimizing內(nèi)容過程無序管理無章產(chǎn)品無效過程追蹤標準管理有制度產(chǎn)品基線標準加文檔化標準化及培訓(xùn)過程定量管理定量產(chǎn)品定量過程最佳化管理最佳化產(chǎn)品最佳化關(guān)鍵域無策劃需求監(jiān)督合同質(zhì)量保證配置管理過程焦點定義培訓(xùn)大綱集成軟件組間協(xié)調(diào)產(chǎn)品工程評審定量過程質(zhì)量管理過程技術(shù)變更管理產(chǎn)品缺陷預(yù)防工作無甲乙銅鼎需求計劃選承包基線控制質(zhì)量可視性CMM改進責任遺產(chǎn)培養(yǎng)個技優(yōu)化集成法定合作一致評查性能度量定量目標度量過程產(chǎn)品改進過程防止缺陷識別引入新技術(shù)改變環(huán)境創(chuàng)新軟件組織管理能力成熟度CMM,人員能力成熟度P-CMM由美SEI制定各有五級,CMM是機構(gòu)能力管理框架,P-CMM是個人能力管理框架,我國遵造執(zhí)行相關(guān)等級評定。4.CMM(CapabilityMaturityMode326.3過程控制P-CMMI初始級R可重復(fù)級D已定義級M已管理級O優(yōu)化級內(nèi)容非正式人員管理補償培訓(xùn)績效管理人員配備溝通工作環(huán)境分享文化基于能力實踐職業(yè)能力開發(fā)人力規(guī)劃知識能力分析定位機構(gòu)生產(chǎn)力能力管理團隊實踐指導(dǎo)持續(xù)的人力改革培訓(xùn)與個人能力開發(fā)過渡進化灌輸人力基本要求找主要能力關(guān)聯(lián)人力活動量化管理人能力提高建立能力團隊改善開發(fā)機構(gòu)與個人能力的方法不斷改善成本估計進度安排人員組織CMMP-CMM規(guī)劃風險管理質(zhì)量管理配置管理軟件進化監(jiān)控過程改善遺留系統(tǒng)軟件變更軟件再工程風險識別風險分析風險規(guī)劃風險控制質(zhì)量標準質(zhì)量保證質(zhì)量規(guī)劃質(zhì)量控制值兩測度識別規(guī)劃變更管理版本發(fā)布系統(tǒng)構(gòu)件6.3過程控制P-CMMI初始級R可重復(fù)級D已定義級M已管理33演講完畢,謝謝觀看!演講完畢,謝謝觀看!34第五章
軟件實現(xiàn)(編碼測試)5.1編碼1。跨越人機鴻溝①精干設(shè)計者+精干組織者+好方法,才能突破領(lǐng)域鴻溝取得正確設(shè)計。②正確的設(shè)計+精干程序員+好的編程語言才能突破人機鴻溝編寫出好的計算機程序。2。任務(wù)①選好程序員與程序語言,程序員應(yīng)具備評審設(shè)計、熟悉編程與調(diào)試的能力;程序語言易于實現(xiàn)設(shè)計。②軟件藍圖符合程序結(jié)構(gòu)定理,V(G)小,算法簡單。③程序質(zhì)量標準:正確實現(xiàn)設(shè)計,可讀,高效,可靠,方便。3。編碼風格①文體、手段、表達方式:易于理解;代碼、數(shù)據(jù)結(jié)構(gòu)化;語句表達簡明直接結(jié)構(gòu)好。②程序效率高,健壯可靠。③人機IO界面友好。④易于復(fù)用。第五章軟件實現(xiàn)(編碼測試)5.1編碼1??缭饺藱C鴻溝3。編354。編碼風格簡例①給矩陣賦值的簡明直接表達方式比較Ⅰ不簡明直接的表達Ⅱ簡明直接的表達for(i=1;i=n;i++)for(i=1;i=n;i++)for(j=1;j=n;j++)for(j=1;j=n;j++){P[i][1]=1;{P[i][j]=0;P[i][j]=(i/j)*(j/i);P[i][1]=1;}P[i][i]=1;//運行速度慢}//運行速度快4。編碼風格簡例36②比較數(shù)值的可讀性與效率表達//Ⅰ直接挑選//Ⅱ提示簡化挑選#include“stdio.h”#include“stdio.h”main()main(){scanf(“﹪d,﹪d,﹪d”,&a,&b,&c);{inta,b,c,min;if(a<b&&a<c)printf(“smallestprintf(“inputintegera,b,c\n”);﹪d”,a)scanf(“﹪d,﹪d,﹪d”,&a,&b,&c);elseif(b<a&&b<c)printf(“smallif(a<b)min=aestis﹪d”,b)elsemin=b;elseprintf(“smallest﹪d”,c);if(min>c)min=c;}printf(“smallest﹪d”,min);}//Ⅲ復(fù)用挑選main()
#include“stdio.h”{inta,b,c,min;intsmallest(inti,intj);scanf(“﹪d,﹪d,﹪d”,&a,&b,&c);{if(i<j)return(i)min=smallest(smallest(a,b),c);elsereturn(j);}printf(“﹪d”,min);}②比較數(shù)值的可讀性與效率表達//Ⅲ復(fù)用挑選375。程序結(jié)構(gòu)定理①結(jié)構(gòu)化程序結(jié)構(gòu)化是工程化對軟件結(jié)構(gòu)的推動,要求程序由順序、分支、循環(huán)成分構(gòu)成,可理解、可測試、可修改、可維護;要求數(shù)據(jù)結(jié)構(gòu)化規(guī)范化。②程序結(jié)構(gòu)定理檢驗軟件設(shè)計無病性,然后優(yōu)化算法(算法簡單);保證好形(一個輸入多個出口)、適形(一個輸入一個出口)、避免病型(無出口)。③病形偽碼舉例Start//病形PCstart//無病
L1:whilePdoA;whilePdoL2:B;A;ifQgotoL1;BuntilQ;elsegotoL2P+-;Q+-;enddo;enddo;stopstop6.無距離跨越設(shè)計者編碼者集于一身,但必經(jīng)過程控制、設(shè)計文檔檢驗、程序檢驗,方能通過測試與驗收。5。程序結(jié)構(gòu)定理③病形偽碼舉例6.無距離跨越設(shè)計者編碼385.2軟件測試
1.軟件測試與程序測試的區(qū)別:找錯的范圍不同
程序測試:找程序執(zhí)行、語法、數(shù)據(jù)的錯誤,僅是編碼的問題
軟件測試:不僅要找程序的錯誤,還要找文檔、數(shù)據(jù)的錯誤,是全周期的。S系統(tǒng)分析R需求分析D設(shè)計C編碼自頂向下U單元測試I集成測試V確認測試ST系統(tǒng)測試自底向上SRDCUIVST5.2軟件測試S系統(tǒng)分析U單元測試S392.軟件測試的目的:
用最小的成本把軟件做對,找出錯誤。3.軟件測試的內(nèi)容:1)靜態(tài)測試:人工走查,專家評審(占70%的錯誤)2)動態(tài)測試:編寫測試用例,執(zhí)行被測軟件3)可靠性測試:穩(wěn)定性檢查,長期性測試4)正確性測試:邏輯判斷5)測試的核心內(nèi)容:設(shè)計編寫測試用例,執(zhí)行被測軟件2.軟件測試的目的:404。軟件測試原則
①認定軟件有錯,測試標準:軟件需求規(guī)格說明書,作為客戶的最終標準。②80%的新錯誤都是由20%的舊錯誤引起的,先改舊錯后改新錯。③在設(shè)計測試用例的時候,有效無效要兼顧。④軟件測試的相對性:根據(jù)實際的人力物力盡量找到錯誤。⑤預(yù)期結(jié)果:輸入和輸出的對應(yīng)關(guān)系是一一對應(yīng)的關(guān)系。⑥測試用例的設(shè)計原則:找出高效的測試數(shù)據(jù),或者說用最少的測試數(shù)據(jù)要找出盡可能多的軟件錯誤。⑦目的:保證低成本、高質(zhì)量。⑧上下結(jié)合的增式組裝集成測試、單元組裝結(jié)合。4。軟件測試原則415。測試方法與測試用例設(shè)計
從動態(tài)的觀點有兩類方法,白盒法與黑盒法1)白盒法
——邏輯的方法,分析的方法,從詳細設(shè)計開始。
①點覆蓋(語句):設(shè)計測試用例,執(zhí)行被測程序,使得被測程序的語句都被測試一次。②邊覆蓋(判定/分支):設(shè)計測試用例,執(zhí)行被測程序,使得被測程序的分支真假都被執(zhí)行一次。
③條件覆蓋:設(shè)計測試用例,執(zhí)行被測程序,使得被測程序分支當中的子條件的真和假各都被執(zhí)行一遍。④條件組合:設(shè)計測試用例,執(zhí)行被測程序,使得分支中的子條件的真假組合盡量多的被覆蓋。
⑤判定和條件組合覆蓋:使分支中的真假和條件中的真假同時被覆蓋,考慮到分支邏輯符最簡子集。5。測試方法與測試用例設(shè)計42⑥路徑覆蓋:設(shè)計測試用例,執(zhí)行被測程序,使得被測程序從開始到結(jié)束的路徑的環(huán)域復(fù)雜度V(G)個不同的獨立路徑的基本路徑都被覆蓋一次。2)黑盒法—功能測試的方法,非分析的方法,從需求分析之后做①等價類劃分:找出有效/無效的輸入輸出子集作為測試用例②邊界值分析:找出易出錯的邊界值(有效/無效)為測試用例③因果圖法:組合輸入/輸出的等價類劃分(I為因O為果)④錯誤推測法:經(jīng)驗方法3)確認測試(即驗收測試)①確認與驗證的區(qū)別:Validation(確認),用戶用黑盒法驗收是否構(gòu)造了正確的需求,測試在開發(fā)環(huán)境下進行,測試在使用環(huán)境下進行。Verification(驗證),用戶驗收是否正確實現(xiàn)了需求。②軟件配置復(fù)查,用戶指南等軟件配置要正確、齊全、一致。⑥路徑覆蓋:設(shè)計測試用例,執(zhí)行被測程序,使得被測程序從開始到434)例題startstopX>1&X<3TFX>3&X<4TFX>4&X<5TFY=X+1Y=X+2Y=X+3Y=X+4c1c2P4c3c4c5c6IIIIIIP1P2P3三個分支語句IIIIII四個賦值語句基本路徑P1P2P3P46個條件C1C2C3C4C5C6①編寫覆蓋如下PAD圖條件的測試用例4)例題startstopX>1&X<3TFX>3&X<4T44②設(shè)計要點:ⅰ準確確定被測軟件的功能或邏輯ⅱ明確測試的目標要求ⅲ遵從測試原則,尤其是符合測試用例編寫原則ⅳ采用表格方式編寫XYC1C2C3C4C5C6P1P2P3P4IIIIII15FTFTFT---TFFF59TFTFTF---TFFF②設(shè)計要點:XYC1C2C3C4C5C6P1P245①編寫覆蓋此PFC圖的條件的測試用例。②注意:取BRO最小集。TstartstopInputA,B,XX=X/AX=X+1(A>1)&(B=0)(A=2)OR(X>1)printA,B,XFTF5)課堂小測試①編寫覆蓋此PFC圖的條件的測試用例。TstartstopI46第六章軟件項目管理6.1軟件計劃特點:無形的、無標準的、一次性的、軟件產(chǎn)品開發(fā)項目分類:零起點新項目、進化型項目、構(gòu)件集成項目2.項目規(guī)劃可重復(fù)的日常作業(yè)作業(yè)operations不可重復(fù)一次性的項目projects可重復(fù)性任務(wù)特點名稱①項目與運作區(qū)別②軟件項目特點分類1.軟件項目①成本估計(代碼行估計、功能點估計、工作量估計、比例劃分法)②可行性分析(經(jīng)濟、技術(shù)、操作、風險、法律)③進度安排(比例劃分、圖PERT、GANTT、TSN、數(shù)值CPM)第六章軟件項目管理6.1軟件計劃特點:無形的、無標準的、一次47①問題確定日期(工期)最佳進度安排不確定日期(工期)最佳(小)工期最佳安排②粗略的方法(比例劃分法)R·S·Pressman
計劃40%開發(fā)20%維護40%細化R·S·Pressman可行性5%編碼20%維護40%需求分析10%設(shè)計25%IBM比例可行性0.1編碼1單元測試1需求0.1組裝測試2設(shè)計0.5維護20系統(tǒng)分析員(項目經(jīng)理)指定最佳比例3。進度具體安排①問題確定日期(工期)最佳進度安排3。進度具體安排48③精確方法舉例確定工期PERT圖/工程網(wǎng)絡(luò)圖法13562400224477111124C(9)A(10)B(3)E(8)G(1)F(2)D(7)4222334{4,11}{5,7}始終{2,0,7}③精確方法舉例確定工期PERT圖/工程網(wǎng)絡(luò)圖法135624049關(guān)鍵路徑:經(jīng)歷時間最長的路徑?jīng)Q定工期,t1≡t2,1245612作業(yè)名(人數(shù))時間箭尾箭頭并行123n串行123n實作業(yè):消耗資源的活動虛作業(yè):不消耗資源的活動PERT圖步驟:a、由可行性分析定義作業(yè),根據(jù)客觀安排串并行b、畫出PERT圖c、求每個結(jié)點最早開工(完工)t1,最遲開工(完工)t2頭交叉取最大,尾交叉取最小d、求關(guān)鍵路徑CP,時間就是工期Te、優(yōu)化關(guān)鍵路徑:經(jīng)歷時間最長的路徑?jīng)Q定工期,t1≡t2,12450100
C(9)A(10)B(3)E(8)G(1)F(2)D(7)4222334{4,11}{5,7}始61111
577
222
444
324
終求t1t2CPTPERT圖練習,結(jié)點改變畫法C(9)A(10)B(3)E(8)G(1)F(2)D(7)4511234567891011t0312456A(10)2D(7)2F(2)3G(1)4C(9)4E(8)3B(3)2優(yōu)化有兩種:T確定優(yōu)化,T不確定最小優(yōu)化④TSN時標網(wǎng)絡(luò)圖法任務(wù)人員(10)畫法:CP在中間,非CP在兩邊,優(yōu)化移動1234567891011t0312456A(10)D(7)52100
255
12312
51818
41722
62626
A5E11D7B10C8F6/58HG5I4例:求t1t2cpT⑤T最小(F作業(yè)時間縮短為5),PERT圖法MNA5E11D7B10C8F6/58HG5I4例:求t1⑤T531025312517421625
17251712505101520250任務(wù)時間A5C8B10D7E11F5G5I4H8TSN(TimeScsaleNetwork)時標網(wǎng)絡(luò)圖1025312517421625172517154⑥CPM(CriticalPathMethod)關(guān)鍵路徑法
PERT圖優(yōu)點:空間好,缺點:時間不好,CPM克服其缺點步驟:以下圖為例13562400224477111124C(9)A(1)B(3)E(8)G(1)F(2)D(7)4222334{4,11}{5,7}始終⑥CPM(CriticalPathMethod)關(guān)鍵路徑55ⅰ定義變量與作業(yè)ⅱ箭桿時間t(i,j)估算,賦值,賦初值ⅲtE(i)i=1..6Early,t1正向累加,頭交叉取最大,tL(i)i=1..6Last,t2逆向累加,尾交叉取最?、で髸r差,CP上結(jié)點tE(i)≡tL(i),S(i)=tL(i)-tE(i)≡0ⅴ求T=?ⅵ優(yōu)化,非CP路徑變動CPM法的步驟:ⅰ定義變量與作業(yè)CPM法的步驟:56ⅰ定義ⅱt(1,6)=4t(1,3)=2t(1,2)=2t(2,4)=2t(3,5)=3t(4,5)=3t(5,6)=4ⅲtE(1)=0tE(2)=tE(1)+t(1,2)=0+2=2tE(3)=tE(1)+t(1,3)=0+2=2tE(4)=tE(2)+t(2,4)=2+2=4tE(5)=max{tE(3)+t(3,5)=2+3=5,tE(4)+t(4,5)=4+3=7}=7tE(6)=max{tE(1)+t(1,6)=0+4=4,tE(5)+t(5,6)=7+4=11}=11ⅳtL(6)=tE(6)=11tL(5)=tL(6)-t(5,6)=7tL(4)=tL(5)-t(4,5)=7-3=4tL(3)=tL(5)-t(3,5)=7-3=4tL(2)=tL(4)-t(2,4)=4-2=2tL(1)=min{tL(6)-t(1,6)=7,tL(3)-t(1,3)=2,tL(2)-t(1,2)=0}=0ⅴ時差S(i)=tL(1)-tE(1)=0–0=0ⅵ工期T=tL(6)-tL(1)=11-0=11當T的一個作業(yè)時間有變動,T發(fā)生變化,進度重排。CPM法實例ⅰ定義CPM法實例57⑦規(guī)模估計法abmL物價1800265024002340計劃410074005005250財務(wù)2000245621002142銷售2950360034003458總計13190L=a+4m+b6L代碼行長b最大估計長度a最小估計長度m一般估計長度⑦規(guī)模估計法abmL物價1800265024002340計劃58⑧生存周期階段的比例分配法可行性分析0.18設(shè)計0.30編碼0.26測試0.26合計1.0物價0.40.70.60.62.3人/月計劃0.91.61.41.45.3人/月財務(wù)0.50.60.50.52.1人/月銷售0.61.10.90.93.5人/月總計2.44.03.43.413.2人/月元/月2100180015001800成本504072005100612023280⑧生存周期階段的比例分配法可行性分析0.18設(shè)計0.30編碼594??尚行苑治鰡栴}定義→高層邏輯→成本估計→經(jīng)濟可行性分析成本估計:技術(shù)可行性分析操作可行性分析E=L/Pl(千行/人月)風險可行性分析E=aLb法律可行性分析E=/T4L=a+4m+b64??尚行苑治鯨=a+4m+b660①計算公式Fi=Pi(1+r)iFi效益(將來值)Pi現(xiàn)值(當前值)r利率i年S=∑I=n1PiS總效益Pi現(xiàn)值(當前值)i年V=S-QT回收期T=i+(Q-Si)/Pi+1
V純收入S總效益Q投入量,成本估計5。經(jīng)濟效益分析①計算公式S=∑I=n1PiV=S-Q61②分析實例i
Fi(1+r)i
Pi
Si123456000.6000.6000.6000.6000.1.04961.07531.10171.12871.02455856.525856.525716.4611572.985579.8317152.325446.1322598.455315.8527914.3L=4000行20.0元/行500行/人月E=8人月CPU8000元打印機3000元聯(lián)網(wǎng)1000元節(jié)省6000元利率2.45﹪求T、V?五年的r?Q=20000.,F=6000.,Pi=Fi/(1+r)i,Si=∑i-1i
溫馨提示
- 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. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 灌渠施工方案
- 2024年專項安全管理制度
- 2024年中國生物柴油行業(yè)概覽(精簡版) -頭豹
- 畢業(yè)答辯報告-心臟疾病研究模板
- 2025年電動車銷售與租賃服務(wù)合同范本2篇
- 2025年個人貨運車輛運輸合同環(huán)保要求及執(zhí)行標準4篇
- 計算機及應(yīng)用課程設(shè)計
- 談數(shù)學課程設(shè)計
- 鉆銑夾具課程設(shè)計
- 2024年學校安全的工作匯報
- 寒潮雨雪應(yīng)急預(yù)案范文(2篇)
- 垃圾車駕駛員聘用合同
- 變壓器搬遷施工方案
- 單位轉(zhuǎn)賬個人合同模板
- 八年級語文下冊 成語故事 第十五課 諱疾忌醫(yī) 第六課時 口語交際教案 新教版(漢語)
- EPC項目采購階段質(zhì)量保證措施
- T-NAHIEM 101-2023 急診科建設(shè)與設(shè)備配置標準
- 四川2024年專業(yè)技術(shù)人員公需科目“數(shù)字經(jīng)濟與驅(qū)動發(fā)展”參考答案(通用版)
- 煤炭裝卸服務(wù)合同
- 廣東省佛山市順德區(qū)2023學年中考一模物理試題(含答案解析)
- 高考英語真題100個長難句(語法填空)
評論
0/150
提交評論