當前位置:文思屋>學習教育>畢業論文>

電子裝備軟體開發論文

文思屋 人氣:1.62W

電子裝備的研製程式,是以硬體的設計為主線而劃分階段的,現代電子裝備大量地嵌入了軟體開發,但文獻大多是把軟體和硬體研製按照獨立的兩個過程來描述的。本文根據現代電子裝備的研製實際,把包含硬體和軟體的過程以自然結合的方式加以描述,明確在電子裝備研製的各階段需要開展的軟體活動。

電子裝備軟體開發論文

0 引言

現代電子裝備的研製中,始終貫穿了兩個過程:即硬體研製和軟體的開發。這兩個過程其實是交織在一起,有些軟體的設計活動與硬體的設計還是迭代進行的。但又基於軟體設計與硬體設計各自不同的特性和規律,大多研製過程的程式檔案是把軟體和硬體研製按照獨立的兩個過程來描述或界定的。這樣就帶來一個問題,很多設計人員以及管理人員有時就不清楚在研製的各階段中應該開展哪些軟體的設計工作,或者某個軟體開發過程,對應於裝備研製過程的哪個階段,以至於在研製計劃的安排上,軟體與硬體的設計程序不能很好地同步,造成時間上的延誤。目前,還未見相關資料對此加以論述,所以,理清電子裝備在研製各階段的軟體開發工作還是十分必要的。

1 論證階段

論證階段的工作是進行戰術技術指標、總體技術方案的論證及研製經費、保障條件、研製週期的預測,主要進行技術、經濟可行性研究。嵌入式軟體是由於計算機技術的發展應運而生,軟體是硬體功能的更為便捷高效的實現,所以,在論證階段,只需要論證人員瞭解基於嵌入式CPU、DSP等處理晶片和軟體的發展水平,並無實際具體的軟體開發工作。

2 方案階段

方案階段的主要工作是進行系統方案設計、關鍵技術攻關和新部件、分系統的試製與試驗,根據裝備的特點和需要進行模型樣機或原理性樣機研製與試驗。在此階段,要按照軟體工程化的要求,開展系統需求分析和設計,主要工作是按照GJB 2786A的相關要求分析系統對軟體的需求,確定軟體的實現和執行環境,對研製的軟體專案進行定義,形成軟體研製任務書。其具體工作是:

①通過獲取軟體所從屬的系統(或產品)的有關資料,分析系統的要求及實現環境;分析硬體和軟體的關係,進行可行性研究。②確定硬體環境和軟體環境。分析硬體和軟體的關係,定義硬體和軟體之間的介面;③確定系統的功能和效能要求,明確標識關鍵性要求;④將系統的功能和效能要求分配到軟體和硬體;⑤評估和確定軟體專案的安全關鍵性等級;⑥確定對關鍵計算機資源和資源餘量的要求。例如:處理器、時間、儲存器、I/O通道等資源的約束。

若要進行原理樣機的研製,則還需針對原理樣機的需求,開展軟體需求分析、軟體設計和編碼。

3 工程研製階段

工程研製階段的主要工作是根據批准的《研製任務書》進行武器裝備的設計、試製、試驗工作。在這個階段軟體的開發工作依次是:

3.1 軟體需求分析 軟體需求分析階段的主要目的為每個計算機軟體配置項(CSCI)分配一組完整的功能、效能要求和一組完整的介面要求,並編制《軟體需求規格說明》和《介面需求規格說明》。主要工作內容有:

①根據《軟體研製任務書》定義的系統要求,建立軟體邏輯模型,自頂向下地把系統對軟體的需求逐層分解;②分配軟體的功能需求、效能需求、介面需求、操作需求、資源需求、確認測試需求、文件需求、可靠性需求、安全保密需求、質量需求等,確保所有軟體需求分配到CSCI;③進行軟體安全關鍵性分析,提出安全性關鍵CSCI清單;④進行故障模式分析,確定可靠性冗餘設計需求;⑤對資源的需求進行分析;⑥編制《軟體需求規格說明》和《介面需求規格說明》。

在軟體需求分析中,軟體的功能需求、效能需求、介面需求、操作需求等都對軟體的`執行環境和資源提出了需求,所以,軟體需求分析須在《軟體研製任務書》下達後即可進行,以便給硬體的設計提供依據。

3.2 軟體設計 《軟體需求規格說明》通過評審後,即可進入軟體設計。其主要的工作有:

①將需求分析階段建立的邏輯模型轉化為能實現軟體需求的實現模型;②進行CSCI體系結構設計。設計軟體的總體層次結構,採用自頂向下的方法,把《軟體需求規格說明》和《介面需求規格說明》的要求逐項分解到計算機軟體配置項的計算機軟體部件(CSC);③設計各CSC介面相關的資料結構(或資料庫)、資料流和控制流;④進行安全性設計,使關鍵、重要部件符合軟體安全性要求;⑤如果軟體研製合同/研製任務書中對交付軟體的程式語言有明確規定,則軟體專案組應遵循其要求。否則應按照軟體繼承性、通用化和標準化的要求選取程式語言;⑥軟體專案組應確定所遵循的軟體編碼標準;⑦針對資源的要求進行設計,包括運算能力、時間、儲存、I/O通道、資料庫等資源;⑧進行CSCI詳細設計。將構成軟體系統的各個軟體部件(CSC)逐步細化,形成若干軟體單元(CSU);⑨採用程式流程圖或其它表示方法對各個軟體單元進行過程描述,包括演算法和資料結構;⑩設計各軟體單元間的介面資訊。

3.3 編碼和單元測試 軟體設計(含介面和資料庫設計)說明通過了評審,即可進入編碼和單元測試階段。其主要的工作有:

①根據軟體設計說明對各軟體單元進行編碼,確保軟體程式碼正確實現了設計的邏輯並滿足相關的約束和要求;②軟體原始碼的編寫應遵循軟體編碼標準的要求;③對編碼完成的軟體單元進行編譯,採用合適的除錯技術查詢和糾正其中的錯誤;④採用靜態分析工具對軟體所有單元的原始碼進行靜態分析,找出其中的缺陷、錯誤、違背編碼標準之處,並加以分析和糾正;⑤按照GJB/Z 141《軍用軟體測試指南》的要求,對所有軟體單元進行動態測試;⑥使用單元測試工具,編制測試用例、開發單元測試輔助程式;⑦按照軟體文件編制與管理指南的格式要求編制《軟體單元測試計劃》、《軟體單元測試說明》文件;⑧執行單元測試用例和輔助程式,填寫單元測試記錄單;⑨確認和糾正單元測試中發現的問題,並進行單元迴歸測試。

3.4 軟體整合和部件測試階段 軟體單元測試達到測試要求,通過評審後,即可進入軟體整合和部件測試階段。其主要的工作有:

①採用增量式的整合方法,將軟體單元逐步整合為軟體部件、構件直至軟體配置項;②按照GJB/Z 141《軍用軟體測試指南》的要求,對所有軟體部件進行測試;③編制《軟體部件測試計劃》;④按測試計劃建立部件整合測試環境,編寫測試用例和測試輔助程式;⑤編制《軟體部件測試說明》;⑥確認和糾正軟體部件測試中發現的問題,對文件和程式碼進行必要的修改,並通過迴歸測試;⑦軟體部件測試需求覆蓋率和呼叫對覆蓋率均應達到100%,未達到測試覆蓋率指標的,應給出合理的說明。

3.5 軟體配置項(CSCI)測試 軟體部件測試報告通過了評審後即可進入軟體配置項(CSCI)測試。軟體配置項(CSCI)測試工作可以由研製單位軟體測試專門機構完成,也可以由使用者指定的第三方軟體測評機構完成。其主要內容有:

①根據軟體需求規格說明和軟體設計說明文件,識別軟體測試需求;②編寫《軟體配置項測試計劃》和《軟體配置項測試說明》;③建立軟體配置項的測試環境;④按照軟體研製任務書中規定的測試類別,對識別出來的每個測試項分別編制測試用例和測試輔助程式。

3.6 軟體系統測試 軟體配置項測試報告通過了評審後即可進入軟體系統測試。由使用者指定的第三方軟體測評機構完成。其主要內容有:

①根據《軟體研製任務書》、《軟體需求規格說明》和《軟體設計說明》文件,識別軟體測試需求;②建立系統測試環境;③編寫《系統測試計劃》和《系統測試說明》;④按照《軟體研製任務書》中規定的測試類別,對識別出來的每個測試項分別編制測試用例和測試輔助程式;⑤根據測試結果對設計文件和程式碼進行修改,並實施所有必需的迴歸測試。

軟體單元測試和軟體整合和部件測試,可在搭建的模擬環境中進行,但對效能方面的測試,最好在真實的目標環境中進行,這就要求,硬體的元件(模組)設計、組合或分系統設計在時間安排上與之相匹配。

軟體配置項(CSCI)測試和軟體系統測試,屬合格性測試,按照軟體工程的要求,嚴格地講,應該在正樣機鑑定之前進行。軟體配置項測試可在承製單位內部的軟體測試專門機構進行測試,如使用方有要求,需在由使用者指定的第三方軟體測評機構進行。軟體系統測試,一般在由使用者指定的第三方軟體測評機構進行。

在實際工作中,由於時間、經費等方面原因,經過使用方和承製方協商達成共識,也可在正樣機鑑定時不進行合格性測試,而在設計定型階段由定委指定軟體測評機構進行軟體測評即可。

4 設計定型階段

設計定型階段軟體工作主要是進行軟體測評。軟體測評,是通過軟體測試,來評價軟體是否滿足研製要求。軟體測評由定委指定的軟體測評機構完成。軟體測評和基地試驗、部隊試驗同步進行。

5 結束語

電子裝備的研製程式,是以傳統的硬體研製過程為主線進行的,而現代電子裝備,嵌入了軟體的研製過程,這是一個有別於硬體研製模式、又分屬於兩個團隊的研製過程,深入瞭解硬體研製和軟體研製過程各階段關聯性,對於科學合理安排研製計劃,有效管理研製程序,提高研製效率,都具有重要的作用。