目錄
1.大綱
2.數據流圖
3.程序流圖
4.流圖
5.ER圖
6.層次圖
7.結構圖
8.盒圖
9.狀態轉換圖
10.類圖
11.用例圖
12.活動圖
13.判定表和判定樹
14.基本路徑測試過程(白盒測試)
15.等價類劃分(黑盒測試)
1.大綱
(1).數據流圖
(2).程序流圖??
(3).流圖
(4).ER圖
(5).層次圖(H圖)
(6).結構圖
(7).盒圖
(8).狀態轉換圖
(9).類圖
(10).用例圖
(11).活動圖
(12).判定表和判定樹
(13).基本路徑測試過程(白盒測試)
(14).等價類劃分法(黑盒測試)
2.數據流圖
基礎知識:
練習題1:
某證券交易所為了方便提供證券交易服務,欲開發一證券交易平臺,該平臺的主要功能如下:
1) 開戶。根據客戶服務助理提交的開戶信息,進行開戶,并將客戶信息存入客戶記錄中,賬戶信息(余額等)存入賬戶記錄中。
2) 存款。客戶可以向其賬戶中存款,根據存款金額修改賬戶余額。
3) 取款。客戶可以從其賬戶中取款,根據取款金額修改賬戶余額。
4) 證券交易。客戶和經紀人均可以進行證券交易(客戶通過在線方式,經紀人通過電話),將交易信息存入交易記錄中。
5) 檢查交易。平臺從交易記錄中讀取交易信息,將交易明細返回給客戶。
步驟:
1) 先確定系統的源點和終點,構建頂層DFD。 ? ? ? ?
2) 對頂層DFD圖一級細化 ? ? ? ?
?3) 根據需要,逐層細化
(1).頂層圖
(2).一級細化圖
練習題2:
銀行計算機儲蓄系統的工作過程大致如下:儲戶填寫的存款單或取款單由業務員輸入系統,如果是存款則系統記錄存款人姓名、住址(或電話)、身份證號碼、存款類型、存款日期、到期日期、利率及密碼等信息,并打印出存單給儲戶;如果是取款而且存款時留有密碼,則系統首先核對儲戶密碼,若密碼正確或存款時未留密碼,則系統計算利息并打印出利息清單給儲戶。請用數據流圖描繪本系統的功能。
(1).頂層圖
(2).一級細化圖
(3).二級細化圖
3.程序流圖
基礎知識:
練習題1:
repeat:if x>0 then x1else x2 end if;s1if y>0 then y1if z>0 then z1else z2 end ifelse y2end ifuntil
程序流圖:
練習題2:
START
IF p THENWHILE q DO fEND DOELSEBLOCKgnEND BLOCK
END IF
STOP
程序流圖:
4.流圖
一般都是根據程序流圖繪制流圖。
程序流圖可能是題目提供,也有可能是需要自已手繪的。
步驟是:
1.把程序流圖轉換成圈
2.合并單進單出的
3.合并
環形復雜度:判斷點數+1
5.ER圖
基礎知識:
例題1:
管理員有四個屬性,id,管理員名稱,管理員賬號,管理員密碼;角色有兩個屬性,角色id,角色名稱;權限有三個屬性,權限id,權限名稱,URL
ER圖:
6.層次圖
基礎知識:
層次圖的設計理念是:系統-子系統-模塊-功能
例題:
我們研究所計劃建設一個航天實驗教學管理系統,這個系統下設實驗儀器管理、實驗記錄管理、實驗報告管理。實驗儀器管理下面有增刪改查儀器,實驗記錄管理下面有增刪改查記錄,實驗報告管理下面有增刪改查報告。
層次圖:
7.結構圖
基礎知識:
結構圖的設計理想:系統-子系統-模塊-功能-具體功能
其實就是在層次上把功能細化
另外多了一個數據傳輸
例題:
我們研究所計劃建設一個航天實驗教學管理系統,這個系統下設實驗儀器管理、實驗記錄管理、實驗報告管理。實驗儀器管理下面有增刪改查儀器,實驗記錄管理下面有增刪改查記錄,實驗報告管理下面有增刪改查報告。
結構圖:
8.盒圖
基礎知識:
例題1:
START
IF p THENWHILE q DO fEND DOELSEBLOCKgnEND BLOCK
END IF
STOP
盒圖
例題2:
repeat:if x>0 then x1else x2 end if;s1if y>0 then y1if z>0 then z1else z2 end ifelse y2end ifuntil
盒圖:
9.狀態轉換圖
基礎知識點:
原理:
1.從實心起點出發
2.畫出各個狀態
3.狀態轉移方式
例題1:
復印機的工作過程大致如下:未接到復印命令時處于閑置狀態,一旦接到復印命令則進入復印狀態,完成一個復印命令規定的工作后又回到閑置狀態,等待下一個復印命令;如果執行復印命令時發現沒紙,則進入缺紙狀態,發出警告,等待裝紙,裝滿紙后進入閑置狀態,準備接收復印命令;如果復印時發生卡紙故障,則進入卡紙狀態,發出警告,等待維修人員來排除故障,故障排除后回到閑置狀態。試用狀態轉換圖描繪復印機的行為。
狀態轉換圖:
10.類圖
基礎知識:
例題1:
?一個年級有5-10個班級,一個班級有20-40名同學,每個班級有一名班主任,每個班級可能有一名副班主任。
類圖:
例題2:
汽車和自行車都是交通工具,一輛自行車只能歸一個人擁有,但一輛汽車可以歸一個人或者兩個人擁有。一個人可能沒有自行車或汽車,也可能擁有多輛自行車或汽車。每個人都具有年齡和名字。每輛汽車都有自己的顏色和商標。 要求:提取這個問題涉及的類,定義各個類之間的關系,并畫出類圖。
類圖:
11.用例圖
基礎知識點:
思路:
1.確定參與者
2.找到與參與者有關的名詞和動詞組合
例題1:
系統的借閱者為學生和教師,系統為借閱者提供查詢圖書、借閱圖書、歸還圖書的服務。學生最多可借閱5本,教師最多可借閱20本。在借閱和歸還圖書時,要先“驗證借閱者的身份”。歸還圖書時,如果超期,要進行罰款。如果教師想借閱的書已被借空,教師還可以通過預約圖書的服務預約該書,預約后可優先借閱該書。 ? ? 畫出用例圖。
用例圖:
注意:拓展是從被拓展的指向主體
例題2:
1、在每個學期選課開始之前,系統管理員需要對系統中的教師信息、課程信息和學生信息進行維護;學期結束后,將本學期成績歸檔到學籍檔案系統。
2、學生登錄系統后會得到一份本學期將要開設的課程目錄。每門課包含的信息有開課系別、教師、上課時間、教室、容納的學生數量和學生選擇課程的先決條件。
3、當學生選擇了一門課程后,系統需要訪問學籍檔案系統,查詢是否符合選課的先決條件,如果不符合,系統給出提示信息。
4、每個學期有一段時間讓學生可以改變計劃,學生可以在這段時間內訪問聯機系統以增選課程或退選課程。
5、教師可以訪問在線系統,查看自己將要講授哪些課程和每門課程有哪些學生報名,課程考試結束后可以提交成績,系統可以生成帶有成績分析統計結果的成績單供教師打印輸出。
用例圖:
12.活動圖
基礎知識點:
例題1:
下訂單的活動圖
13.判定表和判定樹
基礎知識點:
例題1:
超市中如果某產品的銷量好并且庫存低,則繼續銷售并增加該產品的進貨;如果該產品銷量好,但庫存量不低,則繼續銷售,若該產品銷量不好,但庫存量低,則該產品下架。若該產品銷售不好,且庫存量不低,如果有空貨架則繼續銷售,如果沒有空貨架,則該產品下架。
1.判定表
2.合并后的判定表
3.判定樹
14.基本路徑測試過程(白盒測試)
基礎知識點:
什么是白盒測試:白盒測試頁叫結構測試,是從程序的邏輯結構出發,進行路徑判斷,和覆蓋判斷。
白盒測試技術:語句覆蓋、條件覆蓋、判斷覆蓋
語句覆蓋:走完所有的語句就可以(環型復雜度為幾寫幾)
條件覆蓋:語句覆蓋+走完所有條件
判斷覆蓋:語句覆蓋+走完所有判斷
其他的也是一樣的就是語句覆蓋+完成對應的東西
例題1:
設計下列偽碼程序的語句覆蓋測試用例。
START
INPUT(A,B,C)
IF A>5THEN X=10ELSE X=1
END IF
IF B>10THEN Y=20ELSE Y=2
END IF
IF C>15THEN Z=30ELSE Z=3
END IF
PRINT(X,,Y.2)
STOP
結果:
15.等價類劃分(黑盒測試)
基礎知識點:
例題1:
某城市的電話號碼由三部分組成,這三部分的名稱與內容分別是: ? ? ?
? 地區碼:空白或三位數字 ? ? ?
? 前 ? ?綴:非0或1開頭的三位數字 ? ?
? 后 ? ?綴:四位數字 ? ? ?
假設被測程序能接受一切符合上述規定的電話號碼,拒絕所有不符合規定的號碼。請用等價類劃分法對其進行測試。