如何在敏捷中交付可靠的架構?
如何在敏捷世界中交付可靠的架構?這是一種建立適應不斷變化的架構的方法。
有很多關於敏捷架構的文章,但我認為我們還沒有一個公認的實踐。
好的架構必須考慮許多不同的觀點(技術和人的),並不斷地權衡一個與另一個。
MVP 論點
有一種觀點認為不需要架構,開發人員可以構建最小可行產品(MVP)。
對於簡單的解決方案,這可能是一個有價值的練習。如果做得正確,MVP 可以提供許多幫助定義客戶需求的經驗。從這個意義上說,它是原型設計的一種形式。
但是,MVP 的任何增長都需要某種形式的架構。
備註:如果您有客戶為解決方案付費,並且您建議向客戶提供最低可行產品,這聽起來像是“我們將根據的資金提供最低限度的產品”。但是,如果您說您將首先構建一個 MVP 以加速需求收集過程,然後最終會交給他們的一個強大解決方案,那是一個非常不同的提議。
作為交付 MVP 的專案的架構師,您需要幫助正確確定其範圍。確保 MVP 是一次性的,或者更常見的是,當 MVP 回答問題時有一個明確的點,並且有一個結構化的演變成一個完整的產品。
未來交付的架構意圖願景
當今世界沒有大前端設計 (BUFD) 的空間,這是一件好事。BUFD 在沒有明確價值的情況下花費了數百萬美元,而且通常,當(或如果)完成時,設計就已經過時了。
解決方案是開發架構意圖Architecture Intent。
架構意圖是全域性的東西。
鑑於您的專案、客戶、解決方案或企業的需求,處理所有“功能”的最終架構是什麼?哪些可能的產品可以幫助實現目標?
從表面上看,這可能聽起來像 BUFD,但你所做的是制定長期的架構願景。並非所有細節都已充實。確定可能需要更多充實的架構上重要方面將取決於您的具體解決方案。
它只是為將來大的架構來設定方向。
除了少數(現在很少見的)政府 IT 專案外,沒有人能夠從一開始就實施完整的架構。
架構意圖為整個架構設定了方向。然而,架構意圖可以並且將會改變。
與所有敏捷或增量交付一樣,需求也會發生變化。需求變化可以改變架構意圖設定的方向。
此外,轉型計劃可能需要數年時間。當您交付架構意圖的某些方面時,可能會使用與您開始時不同的技術。
即時當下的架構
已經確定了架構意圖,那如何首先滿足當下即時需求?
此外,鑑於開發團隊目前的技術能力,需要縮減多少意圖以避免交付風險?
再一次,架構就是權衡。這些是具有業務意義的權衡,而不是架構師孤立地做出的事情。
與架構意圖不同,即時架構是具體的。針對需要發生的事情制定了精確的規範或政策。
即時架構到架構意圖
毫不奇怪,從即時架構到架構意圖的步驟構成了您的路線圖並定義了產品或釋出增量。
根據專案的敏捷程度,只有路線圖中的後續步驟可能會得到很好的定義。目標是不要做太多的BUFD;當需求改變時浪費精力。
是不是在一開始時就沒有基本架構的解決方案嗎?
不是。作為架構師,您仍然需要確保所有必需的“功能”都在即時架構中。但是,可能會與客戶就初始增量進行一些協商。
您可能還會發現最初的資料量和使用者數量很少,因此可以採用分階段的方法來支援可擴充套件性和併發性。
相關文章
- 交付架構師工作指引架構
- 敏捷交付中的自動化測試 | IDCF敏捷
- 敏捷思維-架構設計中的方法學 (轉)敏捷架構
- 軟體架構與敏捷架構敏捷
- 書籍:精益架構(敏捷架構 瘦架構 Lean Architecture)架構敏捷
- 可靠、高吞吐架構基礎改造架構
- 實用的解決方案架構交付成果 - Chiu架構
- 理解 TCP(五):可靠性交付的實現TCP
- 架構思考:不靠譜的元件與可靠的系統架構元件
- 聊聊我對敏捷專案交付的理解敏捷
- 持續交付與傳統敏捷的矛盾敏捷
- 分散式架構-可靠通訊-服務安全分散式架構
- 如何在SSR架構中實現離線可用?(一)架構
- 《規範敏捷交付:企業級敏捷軟體交付的方法與實踐》——1.6 混合型過程框架敏捷框架
- 從 Etsy 團隊看敏捷架構的設計敏捷架構
- 敏捷開發,如何編寫架構文件敏捷架構
- 如何做好一個系統架構師:抓住敏捷架構中幾個關鍵決策點架構敏捷
- 敏捷開發的目的不是為了快速交付!敏捷
- [譯文]持續交付與傳統敏捷的矛盾敏捷
- 軟體架構生態化-多角色交付的探索實踐架構
- CI Weekly #5 | 微服務架構下的持續部署與交付微服務架構
- 好書短評之《敏捷武士:看敏捷高手交付卓越軟體》敏捷
- 架構中的“大象”架構
- Android 中構建快速可靠的 UI 測試AndroidUI
- 如何在微服務分散式架構中刪除資料? - bennorthrop微服務分散式架構
- 敏捷實踐經驗分享,企業如何在敏捷開發中實施DoD敏捷
- 架構中的分離架構
- 億級流量系統架構之如何在上萬併發場景下設計可擴充套件架構(中)?【石杉的架構筆記】架構套件筆記
- “阿里架構師”kafka 資料可靠性深度解讀阿里架構Kafka
- 如何在MySQL資料庫中進行網際網路常用架構的搭建?MySql資料庫架構
- 單體架構&微服務架構&中臺服務架構架構微服務
- DevOps下微服務架構連續交付部署CI/CD流程dev微服務架構
- 實踐分享 | 資料中心敏捷交付的五大挑戰敏捷
- 多團隊敏捷開發的組織架構和協作模式敏捷架構模式
- EdgeBoard中CNN架構的剖析CNN架構
- Xilem:Rust中的UI架構RustUI架構
- 統一PaaS架構支撐IT應用開發敏捷化架構敏捷
- 採用 TOGAF標準的企業架構和企業敏捷性架構敏捷