設計約束分析:
給出一些約束,來評價軟件在這些約束下運行的能力。比如:物理時間約束和響應時間對軟件性能的檢查。
復雜性度量:
高度復雜的數據結構難以徹底測試,可以采用McCabe或Halstead等這樣一些復雜性評估技術來標示出需要進一步改進的區域。等等。
5. 軟件編碼安全性分析——完成安全相關軟件的編碼活動
軟件編碼完成軟件詳細設計的實現。所以,代碼應該體現軟件詳細設計所提出的設計要求,實現設計過程中開發的安全性設計特征和方法,遵循設計過程中提出的各種約束以及編碼標準。
我們一般采用代碼走查或采用靜態檢查工具來檢查源代碼,依照軟件編碼安全性分析對代碼的要求,應該主要從以下幾個方面入手:
a) 分析軟件代碼是否能追溯到需求;
b) 分析軟件代碼是否符合支持工具和編程語言分析;
c) 分析軟件代碼是否滿足模塊化、可驗證、易安全修改的要求;
d) 分析軟件編碼中所使用技術的安全性和方法的合理性。
下面列出一些可用于提高代碼安全性的相關技術。
代碼邏輯分析:
如有不可達代碼,或代碼結構過于復雜,維護性降低。通過實施邏輯重構、方程式重構和存儲器解碼來進行。
代碼數據分析:
關注如何定義和組織數據項。變量忘記賦初值,或變量聲明了卻沒有使用,或出現了冗余代碼。
復雜性度量:
復雜軟件不穩定,也經不起不可預測的行為。所以,我們努力使軟件的復雜度變小。如果有條件采用某種自動化工具,可以通過工具對軟件設計或/和代碼進行控制,用圖形化的方法反映出軟件結構中的控制流和數據流,通過連結數/調用數、節點數、嵌套深度等這樣一些結構關系的檢查,獲得復雜度的度量,將會獲得很好的效果。
文章來源于領測軟件測試網 http://www.kjueaiud.com/