填表說明:Y—是,TBD—不确定,N—否,NA—不适用
<col>
編号
評 測 項
評測結果
Y/TBD/N/NA
清晰性
1
所有單元或過程的目的都已文檔化
2
包括了資料流、控制流和接口的單元設計是否已清晰的說明
完整性
3
是否已定義和初始化所有的變量、指針和常量
4
是否已描述單元的全部功能
5
是否已詳細說明用來實作該單元的關鍵算法(例如:用自然語言或PDL)
6
是否已列出該單元的調用
依從性
7
該文檔是否遵守了公司規定的文檔編寫标準
8
是否采用了所要求的方法和工具來進行單元設計
一緻性
9
資料元素的命名和使用在整個單元和單元接口之間是否一緻
10
所有接口的設計是否互相一緻并且和更進階别文檔一緻
正确性
11
是否處理所有條件(>0、=0、<0、switch/case),是否存在處理“case not found”的條件
12
是否正确的規定了分支(邏輯沒有颠倒)
資料使用
13
是否所有聲明的資料都被實際使用到
14
是否所有該單元的資料結構都被詳細說明
15
是否所有修改共享資料(或檔案)的程式都考慮到了其他程式對該共享資料(或檔案)的存取權限
16
是否所有邏輯單元、時間标志和同步标志都被定義和初始化
接口
17
接口參數在數量、類型和順序上是否比對
18
是否所有的輸入和輸出都被正确定義和檢查
19
是否傳遞參數序列都被清楚的描述
20
是否所有參數和控制标志由已描述的單元傳遞或傳回
21
是否詳細說明了參數的度量機關、取值範圍、正确度和精度
22
共享資料區域及其存取規定的映射是否一緻
可維護性
23
單元是否具有高内聚度和低耦合度(例如:對該單元的更改不會在該單元有任何無法預料的影響并對其他單元的影響很小
性能
24
是否該單元的所有限制(例如:過程時間和規模)都被詳細說明
可靠性
25
初始化是否使用到預設值,預設值是否正确
26
是否在記憶體通路的時候執行了邊界檢查(例如:數組、資料結構、指針等)來確定隻是改變了目标存儲位置
27
是否執行輸入、輸出、接口和結果的檢查
28
是否對所有錯誤情況都發出有意義的資訊
29
對特殊情況傳回的代碼是否和已規定的全局定義的傳回代碼相比對
30
是否考慮到意外事件
易測性
31
是否能夠對每個單元進行測試、示範、分析或檢查來說明它們是滿足需求的
32
該設計是否包含檢查點來幫助測試(例如:有條件的編譯代碼和資料聲明測試)
33
是否所有的邏輯都能被測試
34
是否已描述測試程式、測試資料集和測試結果
可追溯性
35
是否設計的每一部分都能追溯到其他項目文檔的要求,也能追溯到更進階别文檔的要求
36
是否所有的設計決定都能追溯到權衡考慮
37
單元需求是否都能上溯到更好級别的文檔,更改級别文檔的需求是否已經在單元中展現