嚴艦
摘要:在當前的汽車生產制造行業中,汽車軟件開發制造屬于十分重要的一個環節,也是保證企業有效生產的重要基礎,也就需要合理進行汽車軟件開發。在目前的汽車軟件開發中,相關技術人員需要結合Aspice實行具體軟件開發,全面把握汽車軟件開發流程,在此基礎上才能夠使汽車軟件的開發取得比較理想的成果,進而制造出高質量的汽車軟件,滿足汽車的應用需求及制造要求,最終實現有效的汽車生產制造。
關鍵詞:Aspice;汽車軟件開發;開發流程
隨著當前汽車越來越普及,對于汽車結構中的各個方面也有著越來越高的要求,需要進行更加科學合理的汽車制造,而汽車制造中的汽車軟件開發屬于比較關鍵的一項內容,也是更好實現汽車制造的重要基礎與保證。為能夠更好實現汽車軟件開發,本文特針對基于Aspice的汽車軟件開發流程進行研究,以保證更好地在Aspice的基礎上實現有效的汽車軟件開發,使汽車軟件開發可以取得比較滿意的成果。
1 Aspice概述
所謂ASPICE所指的就是汽車軟件過程改進及能力評定,在當前的汽車行業中有著十分廣泛的應用,主要就是對軟件開發團隊所具備的研發能力水平進行評價的一種模型框架。這一評價模型及框架最早出現在2005年,是由歐洲的二十多家主要的汽車制造商共同制定并且發布的,其主要目的就是在汽車零部件廠進行軟件開發流程的過程中給予其適當指導,從而使汽車軟件研發質量可以得到有效改善,使汽車軟件開發可以得到滿意效果,并且這一模型框架在實際實踐中的應用也越來越廣泛。在Aspice體系中依據企業在管理上的細致程度及嚴謹程度上所存在的差異,對于企業軟件研發能力可以以六個不同級別實行劃分,分別為從零級到五級,級別越高也就表示在項目研發過程中有意外情況發生的可能性也就越低,對于相應的項目及產品,企業也就有著更強的掌控能力,也就更有能力生產高質量產品交付于客戶。零級所表示的就是企業在項目研發方面處于比較混亂的一種狀態;一級表示企業可以將有關的產品研發工作完成,然而缺乏合理的管理,成功率比較小,在項目研發過程中有很多的不確定性因素存在,對于項目研發缺乏應有的掌控能力,無法確保可以按時進行高質量產品交付;二級表示企業不但能夠將相關產品研發工作完成,還能夠提前制定科學嚴謹的完善工作計劃,且可以依據工作計劃實施項目監控及管理工作,使各個方面的項目都得以有序開展及落實;三級表示企業不但可以有效落實相關的項目管理,且能夠在過往項目中積累有關經驗教訓,使公司內部的知識資產及標準工作流程形成,為今后項目落實提供指導與參考,并且有利于企業管理的進一步改善;四級所表示的就是在項目研發過程中融合統計學知識及技術,對于項目中的各種數據實行統計分析,并且將其應用到今后的項目管理中,對于項目結果實行預測,且可以依據預測結果實時調整項目,以保證項目目標的更好完成;五級所表示的就是企業可以依據商業目標需求,對于項目研發過程主動進行調整,在改革管理方面具有較強管理能力,可以根據對于過程中的量化分析,確定明確改進目標,且對于改進結果可以實行有效地量化監控及分析。
綜合上文內容可以看出,在Aspice體系中級別越高則表示項目的研發也就越理想,可以使項目研發得到更滿意的效果,因而將Aspice體系應用到汽車電子軟件的研發中,可以企業軟件的企業的項目研發能力進行評定,然后依據具體的內容及需求實行適當的改進,從而使汽車軟件項目的研發可以得到比較滿意的成果,為客戶提供更高質量的汽車軟件產品。
2 基于Aspice的汽車軟件開發流程
依據上文中對Aspice體系的分析,可以以Aspice體系為基礎進行汽車軟件開發流程的設計,使汽車軟件的開發得以更合理進行,從而使汽車軟件開發可以獲得比較滿意的成果,其具體流程如下。
2.1汽車軟件開發需求的獲取及分析
在進行軟件開發設計之前,需要軟件開發企業及開發設計人員由客戶處得到客戶需求,并且要確定這些需求能夠被正確理解,對于這些經過定義的客戶需求,將其轉變成為系統需求,主要作用就是對系統設計進行指導。在這一過程中,需要注意的內容包括以下幾點:對于系統需求進行定義;對于系統需求實行分類分析,從而得到正確性及可驗證性;對于系統需求在運行環境方面產生的影響進行分析;對系統需求實現的優先級進行定義;對于系統需求應當依據實際需求實行不斷更新;在客戶需求及系統需求間構建一致性以及雙向可追溯性;對于客戶需求, 依據成本、進度及技術方面的影響給予適當評估;系統需求傳遞給會產生影響的各個方面,且各個方面形成統一一致意見。
2.2系統架構設計
構建合理的系統架構,確定將哪些需求向哪些系統要素進行分配,且依據定義標準對所設計的相關系統架構進行評估,具體需要從以下幾點入手。第一,提供全部系統設計。第二,對于不同系統元素之間所存在的相互關系實行描述。第三,對系統元素與軟件間所存在的相互關系進行描述。第四,對于每個必須系統元素設計進行詳細說明,應當注意對以下幾個方面的內容機械能充分考慮,分別為內存及容量需求;硬件接口需求;用戶接口需求;外部系統接口需求;性能需求;指令結構;完全及數據保護特性;系統參數設定;人工操作;可重用組建等內容。第五,系統元素和需求之間所存在的相關映射關系。第六,對系統組件的運行模式進行描述,主要就是啟動模式、停止模式以及睡眠模式與診斷模式。第七,對不同運行模式下不同系統組件間所存在的依賴關系進行描述。第八,對系統與系統組件間相關動態行為進行描述。通過這一過程,需要完成以下目標,對系統架構設計進行定義,且對系統元素進行標識;將系統需求分配給系統元素;對于系統元素中的每個接口實行定義;對系統動態行為目標進行定義;對系統需求與系統架構間構建一致性及雙向可追溯性;將系統架構設計向受影響的各個方面進行傳遞,并且形成一致。
2.3軟件需求分析
這一方面主要就是對于系統需求中的有關部分,將其轉變成為軟件需求,具體來說需要注意以下幾點。第一,指定軟件需求。通過系統需求及系統架構及兩者變化需求對所需軟件的相關功能及特性進行確定,在軟件需求規范中對功能性軟件需求及非功能性軟件需求進行指定。在實際的軟件開發過程中,對于系統需求及系統架構,才能夠將其設計到所給定的相關操作環境中,使系統需求及系統架構更好實現。第二,結構軟件需求。對于結構化可以依據項目有關集群分組或者依據邏輯規律實行排序,也可以依據有關標準實行分類,也可以為關系人需求設置適當的優先級。第三,分析軟件需求。對于所指的相關軟件需求進行分析,具體包括的內容就是彼此之間的依賴關系,保證正確性以及技術上的可行性,還有可驗證性及對于風險識別的支持性,還需要對成本影響、進度及技術影響進行分析。第四,對于操作環境方面所產生的影響進行分析。對于系統元素接口及操作環境在軟件需求方面所產生的影響進行分析。第五,驗證標準的開發。對于每個軟件需求,都開發相關驗證標準,在此基礎上保證對于每條需求驗證都可以實行定性及定量判斷。第六,雙向可追溯性的構建。對于系統需求與軟件需求之間,需要構建雙向可追溯性,并且需要在系統架構與軟件需求間構建雙向可追溯性。第七,保證一致性。對于系統需求和軟件需求,應當保證兩者之間的一致性,使系統結構與軟件需求之間保持一致性要求。第八,針對已確認的軟件需求進行溝通,與已經確認的軟件需求進行溝通,且為所有相關方進行這些軟件需求的更新。