軟件構建、測試和部署自動化

       不管是傳統瀑布式開發模式還是現如今互聯網行業流行的敏捷開發模式其整個過程必不可少存在軟件代碼編寫、代碼構建、軟件測試(代碼靜態分析、單元測試、模塊測試和系統集成測試等)、軟件部署等主要階段。傳統的做法往往是通過人工的投入方式一個階段一個階段的去執行實施,這好比傳統的家庭作坊式手工生產工業品時代或勞動密集的工廠加工時代。現如今工業品的生產已逐步走向自動化生產流水線而解放出來的人力更多地是投入到自動化生產線無法替代的產品設計上。那反觀軟件產品的生產過程,我們會發現它在國內仍也大部分處於家庭作坊或大規模勞動密集型生產過程中。而在國外特別是科技領先的美國已經普遍實現軟件研發生產過程的自動化,除了架構和代碼設計的人工參與外通過自動化平臺最大限度地實現構建、測試、部署的自動化,大大提高了軟件產品交付速度和成本。

    那爲什麼說這將是軟件研發下一步發展趨勢,首先,我們看看傳統軟件開發過程中的問題:

  •  軟件交付各階段依賴性大發布週期長依賴於個人或小團隊執行、更新狀態和解決問題;

  •  應對複雜的開發環境各種應用、開發流程、硬件環境和工具

  •  多手工的流程不可重複、易出錯、無可追溯性、不透明

  •  硬件資源利用率低長期空閒或資源爭奪

上述問題必然導致軟件交付時間長、質量差、成本高等問題,因此解決上述問題對於平臺的需求基本體現在以下幾點:

  •  軟件開發自動化流程建模

  •  分佈式編譯加速、並行測試加速、一鍵式部署

  •  軟件開發工具鏈集成實現工具自動執行、動態分析

  •  軟件開發相關係統集成實現全面軟件配置管理

  •  對現有硬件資源的統一管理和調度能力

  •  軟件開發過程動態監控基於同一平臺自動收集和管理過程數據

  •  提供持續集成、持續交付、敏捷開發和DevOps最佳實踐

此類自動化平臺在國外已有相當多的供應商如Electric Cloud、Teamcity、IBM等但我們比較推薦Electric Cloudwww.electric-cloud.com公司其專注於軟件開發自動化領域十幾年全球領先的500強公司大部分也採用了他家的解決方案。附件爲其解決方案。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章