軟件重用是所有軟件開發組的關鍵策略。通過在遷移到下一代平臺時重用代碼,企業可以利用其現有的軟件投資并縮短上市時間。但是,許多公司正在努力在整個組織中完全實現代碼重用。為了實現高效和有條不紊的代碼重用,組織必須將這一目標整合到他們的文化中。
重用代碼如果系統地完成,而不是零星地和機會主義地完成,則為組織提供了最大的好處。但是,有許多問題可能會阻止系統的代碼重用,無論是技術性的還是非技術性的。
軟件重用 - 技術問題
在技術方面,操作系統之間存在許多差異,例如每個操作系統提供的任務優先級級別,這使得為不同平臺修改代碼變得乏味和繁瑣。這帶來了對 COTS 移植工具的需求,這些工具將自動考慮操作系統的差異,以使移植工作更快、更容易。
為了避免移植問題,組織認為需要一個抽象解決方案來保護他們的代碼免受未來平臺更改的影響。但是,使用本機操作系統 API 開發抽象接口不會提供嵌入式應用程序所需的可移植性和性能。相反,需要采用較低級別的方法來確保基本操作系統資源(如線程、信號量和互斥鎖)在跨平臺的行為相同,并且性能不會受到影響。此外,為多個操作系統構建和維護內部抽象需要大量的時間、金錢和資源。
開發人員必須詳細了解每個操作系統,并執行大量測試以驗證跨不同平臺的可移植性,這會導致高成本。這就是為什么許多公司正在轉向由第三方維護、測試和驗證的 COTS 抽象層,而不是將注意力從組織的核心競爭力上移開。跨平臺使用通用 API(由 COTS OS 抽象提供)還可以減少使用新操作系統進行開發時的任何潛在學習曲線,從而使代碼重用更易于采用。
正如在不同操作系統上重用代碼有其自身的挑戰一樣,在遷移到不同語言時重用代碼也存在困難。例如,由于缺乏程序員和對Ada的支持,許多公司現在正在從Ada轉向更現代的C語言。這些組織正在利用 COTS 語言轉換工具進行自動轉換,以避免重寫。
軟件重用 - 行業問題
在非技術方面,雖然高層管理人員和政府機構可能會看到代碼重用的好處,但與工程團隊和分包商缺乏目標一致性。很多時候,這些群體在重用代碼方面存在心理障礙。他們可能會錯誤地認為代碼重用將導致他們的才能不再需要。但是,通過使用 COTS 代碼重用解決方案快速有效地重用其舊代碼,他們能夠為新項目和產品開發貢獻自己的才能,而不是被令人厭煩的移植工作所困擾。
組織可能還需要更改生產力策略和基準,以有效地將代碼重用集成到其文化中。與其關注開發人員貢獻了多少新代碼行,他們可能需要獎勵較短的項目完成時間。這將激勵開發人員使用 COTS 移植工具,以便他們可以盡可能多地重用以滿足更早的截止日期。這將導致更多的項目完成,更多的新產品,并最終獲得更多的機會在組織的行業中獲得更大的市場份額。
由于技術和非技術問題,許多公司發現系統代碼重用難以實現,其中一些已經在這里提到過。然而,軟件重用仍然是公司減少產品開發時間和成本的關鍵策略。出于這個原因,組織正在轉向COTS代碼重用產品,例如MapuSoft Technologies(www.mapusoft.com)提供的產品,以減少軟件重用工作。
審核編輯:郭婷
-
嵌入式
+關注
關注
5082文章
19109瀏覽量
304837 -
操作系統
+關注
關注
37文章
6808瀏覽量
123287 -
API
+關注
關注
2文章
1499瀏覽量
61968
發布評論請先 登錄
相關推薦
評論