什么是软件开发中的 green field 和 brown field 模式 - 绿地开发和棕地开发
今天我在閱讀一篇文章時,看到了一個詞匯:greenfield approach,這個詞匯和 migration 相對應。
這是兩種不同的軟件開發模式。
隨著軟件成為最快、最具活力的行業之一,它要求開發人員使用適當的軟件開發工具和方法來開發滿足現代企業不斷增長的需求的產品。綠地和棕地軟件開發是開發尖端軟件的兩種方法。
What is Greenfield Software Development?
綠地軟件開發是指為全新環境開發系統,需要從頭開始開發——沒有遺留代碼。這是一種在您重新開始并且沒有限制或依賴關系時使用的方法。
如今,純綠地項目非常罕見,您經常最終會交互或更新一些現有代碼或啟用集成。 Greenfield 軟件開發的一些示例包括:從頭開始構建網站或應用程序、建立新的數據中心,甚至實施新的規則引擎。
綠地軟件開發的優勢
- 提供從頭開始實施最先進技術解決方案的機會
- 為軟件開發提供一個全新的平臺
- 無需在現有系統或基礎設施的限制下工作
- 與現有軟件、先入為主的概念或現有業務流程沒有任何依賴性或聯系
綠地軟件開發的缺點
- 沒有明確的方向,風險程度相對較高
- 由于需要定義新系統的所有方面,因此可能非常耗時
- 有這么多可能的開發選項,可能沒有清楚地了解要采取的方法
- 在合適的時間范圍內讓每個人都參與做出關鍵決策可能很困難
What is Brownfield Software Development?
Brownfield 軟件開發是指在現有或遺留軟件系統存在的情況下開發和部署新的軟件系統。 棕地開發通常發生在您想要開發或改進現有應用程序時,并迫使您使用以前創建的代碼。
因此,任何新的軟件架構都必須考慮并與現有系統共存——以增強現有的功能或能力。 Brownfield 軟件開發的示例包括:向現有企業系統添加新模塊、將新功能集成到早期開發的軟件中或升級代碼以增強應用程序的功能。
Brownfield 軟件開發的優勢
- 提供一個從預定方向開始的地方
- 提供對現有技術解決方案進行改進的機會
- 支持使用定義的業務流程和技術解決方案
- 允許重用現有代碼以添加新功能
Brownfield 軟件開發的缺點
- 需要對需要在其上構建新系統的現有系統、服務和數據有透徹的了解
- 可能需要重新設計現有復雜環境的很大一部分,以便它們對新的業務需求具有操作意義
- 需要詳細準確地了解現有業務和IT的約束條件,這樣新項目才不會失敗
- 處理遺留代碼不僅會減慢開發過程,還會增加整體開發成本
Comparison Overview of Greenfield and Brownfield Software Development
哪個更適合您:綠地或棕地軟件開發?
軟件是每個產品或服務的核心。因此,選擇正確的開發方法對于軟件的成功至關重要。由于綠地軟件開發具有更高的風險,因此敏捷實踐通常被認為是最好的方法;通過小迭代開發軟件并將其交到客戶手中以獲得快速反饋,它們有助于有效處理風險。
另一方面,Brownfield 項目通常建立在更穩定的基礎架構上,并具有已確認的業務流程;因此,他們不太可能面臨風險。然而,開發工作的很大一部分用于理解和整合現有的業務環境,而不是交付價值。對于棕地開發,確保成功的最佳方法是使用迭代方法來改進現有的邏輯和物理架構并加速開發、提高產品質量并最大限度地減少缺陷。
盡管沒有一種方法比另一種方法更好,但取決于您是想從頭開發新產品還是改進現有產品的功能,您需要選擇正確的方法以獲得最佳結果。
更多Jerry的原創文章,盡在:“汪子熙”:
總結
以上是生活随笔為你收集整理的什么是软件开发中的 green field 和 brown field 模式 - 绿地开发和棕地开发的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 将您的基于 Accelerator 的
- 下一篇: samba文件共享服务器,全网最详细的s