一、數(shù)據(jù)流圖是需求分析階段的成果
二、設(shè)計一個包含用戶、角色、權(quán)限和用戶組數(shù)據(jù)庫表結(jié)構(gòu),并畫出它們之間的關(guān)系圖
1 一個用戶只屬于一個用戶組
2 一個角色包含多個權(quán)限,
3 一個用戶自身(非繼承)可以有多個角色,也可以有多個權(quán)限
4 一個用戶組可以有多個角色,也可以有多個權(quán)限
5 一個權(quán)限也可以屬于多個角色。
6 一個用戶的角色和權(quán)限來自兩部分,一部分繼承于所有父用戶組的角色和權(quán)限,另一部分來自特別為其分配的角色和權(quán)限
7 一個用戶組可以排除(exclude)一個角色,而一旦在其子用戶組或者在某個用戶身上加入(include)這個角色,那這個用戶或者用戶組將重拾這個角色
8 一個用戶或用戶組可以拒絕(disallow)一個權(quán)限,一旦拒絕以后,不管在什么地方再允許(allow)這個權(quán)限都于事無補
9 管理員可以做任何事情,不受任何約束
三、unix,輸入/輸出設(shè)備看作普通文件
四、依賴
關(guān)聯(lián)
泛化
聚集
共享聚集:部分可以參加多個整體,菱形為空
組合聚集:整體不存在,那么部分也不存在,菱形為黑色實體
五、測試
黑盒測試也稱功能測試,它是通過測試來檢測每個功能是否都能正常使用。在測試中,把程序看作一個不能打開的黑盒子,在完全不考慮程序內(nèi)部結(jié)構(gòu)和內(nèi)部特性的情況下,在程序接口進(jìn)行測試,它只檢查程序功能是否按照需求規(guī)格說明書的規(guī)定正常使用,程序是否能適當(dāng)?shù)亟邮蛰斎霐?shù)據(jù)而產(chǎn)生正確的輸出信息。黑盒測試著眼于程序外部結(jié)構(gòu),不考慮內(nèi)部邏輯結(jié)構(gòu),主要針對軟件界面和軟件功能進(jìn)行測試。
白盒測試也稱結(jié)構(gòu)測試或邏輯驅(qū)動測試,它是按照程序內(nèi)部的結(jié)構(gòu)測試程序,通過測試來檢測產(chǎn)品內(nèi)部動作是否按照設(shè)計規(guī)格說明書的規(guī)定正常進(jìn)行,檢驗程序中的每條通路是否都能按預(yù)定要求正確工作。 這一方法是把測試對象看作一個打開的盒子,測試人員依據(jù)程序內(nèi)部邏輯結(jié)構(gòu)相關(guān)信息,設(shè)計或選擇測試用例,對程序所有邏輯路徑進(jìn)行測試,通過在不同點檢查程序的狀態(tài),確定實際的狀態(tài)是否與預(yù)期的狀態(tài)一致。
邏輯覆蓋:
1、語句覆蓋:設(shè)計若干個測試用例,運行被測程序,使得每一條可執(zhí)行語句至少執(zhí)行一次
2、判定覆蓋:設(shè)計若干個測試用例,運行被測程序,使得程序中每個判斷的取真分支和取假分支至少執(zhí)行經(jīng)歷一次
3、條件覆蓋:設(shè)計若干個測試用例,運行被測程序,使得程序中每個判斷的每個條件的可能取值至少執(zhí)行一次
4、判定-條件覆蓋:設(shè)計足夠的測試用例,使得判斷中每個條件的所有可能取值至少執(zhí)行一次,同時每個判斷本身的所有可能判斷結(jié)果至少執(zhí)行一次
5、條件組合覆蓋:設(shè)計足夠的測試用例,運行被測程序,使得每個判斷的所有可能的條件取值組合至少執(zhí)行一次
6、路徑覆蓋:設(shè)計足夠多的測試用例,覆蓋程序中所有可能的路徑
六、線程幾種狀態(tài)的轉(zhuǎn)換