許多開發(fā)嵌入式軟件的團隊都在努力按時、按預算并以滿足客戶期望的質量水平交付,成功的嵌入式軟件開發(fā)往往難以捉摸。然而,業(yè)內有很多嵌入式開發(fā)團隊即使在最惡劣的條件下也屢屢成功。在這篇文章中,我們來探討一下嵌入式軟件開發(fā)的三個要素以及它們如何影響開發(fā)。
嵌入式軟件開發(fā)
嵌入式軟件的三個要素:架構、流程和實施。要想取得成功,嵌入式軟件團隊不僅要掌握這些要素,還要平衡它們。過分關注一個領域會擾亂開發(fā)周期并導致延遲交付、超出預算,甚至導致錯誤、低質量的軟件。
1. 專注于架構和實施
專注于架構和實施的團隊更有可能交付質量較低的軟件并且延遲。在這種情況下,軟件團隊忽略了導致交付不一致的開發(fā)過程。不一致的原因是缺乏遵循可重復性的明確定義的流程。如果沒有這些流程,這些團隊也可能會遇到可能導致項目延遲并超出預算的質量問題。
2. 關注流程和實施
這些團隊傾向于理解流程的重要性,但他們忽略了軟件架構的重要性。這些團隊在沒有任何路線圖或藍圖的情況下即時設計他們的系統(tǒng)。雖然團隊的軟件質量和一致性可能很好,但他們通常仍會延遲交付,因為他們必須不斷地根據(jù)每個新功能和要求重新設計他們的系統(tǒng)。這些嵌入式開發(fā)團隊沒有顧全大局,他們編寫的軟件不能很好地擴展。
3. 關注架構和流程
團隊專注于他們的軟件架構和他們的流程,而很少考慮實施。這些團隊更多地關注嵌入式軟件開發(fā)的理論,而不是實際將產品推向市場。他們往往也是完美主義者的團隊。這些團隊永遠不會完成他們的軟件。他們要么缺乏實施技能,要么陷入如此多的流程,以至于在項目完成之前就用光了資金或客戶。
4. 平衡嵌入式三要素
成功的團隊和開發(fā)人員將平衡所有三個要素,他們將有一個軟件架構來指導他們的實施工作。
他們將擁有正確數(shù)量的流程,以確保軟件質量和一致性。他們將具備實施技能,使他們能夠實施架構并利用他們的流程來測試和驗證實施。
團隊可以通過多種方式平衡這些元素:
對每個區(qū)域進行季度和年度審查
培訓和指導他們的員工
開發(fā)正確的流程來管理嵌入式軟件開發(fā)
利用外部資源幫助改進開發(fā)
無論采用何種解決方案,未能平衡這些元素都會導致交付延遲,在嵌入式開發(fā)上的花費遠遠超過必要的,以及不一致的開發(fā)周期。