盡管GJB438B中對軟件設計說明的編寫已經有了比較詳細的要求,但是,很多GJB5000成熟度較低的組織仍然不會編寫設計說明。
軟件設計說明的編寫有以下幾個難點——設計決策、執行方案和詳細設計,這裡給出一些示例(PS:以下示例為嵌入式軟件),希望對這些内容仍然存在疑惑的設計師有幫助。
GJB438B中已經明确了“CSCI級設計決策”這裡的設計決策是指忽略軟件内部單元的實現方法,直接描述如何實現軟件外部特性(如輸入/輸出,處理行為等)和非功能的關鍵需求(如安全性、保密性和可靠性等)的方法。
示例:
1)CSCI輸入/輸出的設計決策
這裡應描述軟件與外部接口的輸入/輸出方法。
軟件的輸入設計決策表見下圖:
軟件的輸出設計決策表見下圖:
2)CSCI對每個輸入的處理行為設計決策。
這裡應逐一描述CSCI對各輸入信息的處理方法。
CSCI處理行為設計決策表見下圖:
3)CSCI安全性設計決策。
軟件的安全性是指防止合法用戶使用該軟件時對系統或其中的信息造成不良影響,這裡應針對軟件需求規格說明中描述的安全性需求,逐一描述其采取的防護措施和方法。
軟件的安全性設計決策表見下圖;
4)CSCI保密性設計決策
軟件的保密性主要是防止非法用戶對軟件的攻擊。這裡應針對軟件需求規格說明中描述的保密性需求,逐一描述其采取的防護措施和方法。
軟件保密性設計決策表見下圖:
- 執行方案
執行方案是用來說明軟件單元間的動态關系,即軟件運行期間各單元間的相互作用情況,可以使用流程圖、數據流圖、狀态轉換圖、時序圖等來描述。
示例:
根據軟件的特點,将本軟件的執行方案按照以下幾個控制過程進行描述:10ms定時器中斷、100ms定時器中斷、CAN接收中斷和主程序。
軟件的控制過程見下圖:
軟件的數據流圖見下圖:
各控制過程具體如下:……
- 詳細設計
在詳細設計中應分小節對每個軟件單元進行設計決策(如使用的算法)、處理流程、内部數據和異常處理等的詳細說明。
示例:
1)設計決策
這裡描述軟件單元的實現方法,如數據的輸入/輸出方法,數據處理的方法,使用的算法等。
軟件單元的輸入設計決策表見下圖:
軟件單元的輸出設計決策表見下圖:
2)處理流程
這裡用流程圖和文字的形式描述軟件單元對每個輸入的處理流程。
電源控制器軟件CAN發送單元處理流程見下圖:
3)内部數據
這裡描述軟件單元内部暫存的數據,包括臨時數據、計算中間數據、接口緩存數據、數據庫數據等。表現形式是軟件單元内部數據表,内容應包括軟件單元名稱、軟件單元标識符、内部數據元素說明、數據元素名稱、标識符、數據類型、數據格式、值域範圍、暫存形式等。
4)異常與錯誤處理
這裡用流程圖和文字的形式描述軟件單元對每項異常與錯誤的處理流程。
電源控制器軟件CAN發送單元接收到的系統複位信息0 XCF11527,總線數據應滿足協議要求,0字節0~3位數據為0或1,超出範圍不做接收處理。
這正是:
設計說明不易寫,難點總是有幾個
他山之石可攻玉,給出示例去學習
本文來源于網絡,若有侵權,請聯系我們!
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!