黃 犖 丁立冬
(上海飛機設計研究院,上海 201210)
基于LDRA Testbed的民用機載軟件結構覆蓋率分析流程研究
黃 犖 丁立冬
(上海飛機設計研究院,上海 201210)
根據RTCA DO-178B中對于民用飛機機載軟件結構覆蓋率的要求,從實踐出發,給出了使用DLRA Testbed工具進行民用飛機機載軟件結構覆蓋率分析的主要流程。
機載軟件; 結構覆蓋率;分析流程
結構覆蓋率分析(Structural Coverage Analysis, SCA),可以揭示在基于需求的測試過程中未被執行的代碼結構。由于基于需求的測試,可能無法覆蓋所有的代碼結構,所以應完成結構覆蓋率分析,并進行附加驗證,以達到軟件級別所要求的結構覆蓋率。
基于LDRA Testbed的結構覆蓋率分析,是使用LDRA Testbed對源代碼進行插樁,然后在真實環境中執行插樁后的代碼和選定的基于需求的測試程序,使用LDRA Testbed對通過串口傳送到宿主機上的歷史記錄文件進行分析,進而產生結構覆蓋率分析的報告。
本文以DO-178B《機載系統和設備合格審定中的軟件考慮》標準為依據,描述使用LDRA Testbed,對民用飛機機載軟件進行結構覆蓋率分析的活動流程。
DO-178B標準中定義軟件驗證過程通過評審、分析活動來驗證需求、軟件構架和代碼的準確性、完全性和可測性;通過開發測試用例和測試程序來驗證需求內部的一致性和完整性;通過運行測試程序來驗證代碼滿足需求的要求。
1.1 結構覆蓋率分析的必要性
進行結構覆蓋率分析,是為了確定哪些代碼結構未被測試程序執行。測試程序可能不會完全覆蓋代碼結構,所以執行結構覆蓋率分析,并進行附加驗證,以彌補結構覆蓋的不足。……