“ 架構方面需要哪些關鍵能力呢?”
本文是重磅新書《加速》讀後感系列文章DevOps需要哪些關鍵能力?新書預覽《加速:精益軟件和DevOps的科學》以及DevOps關鍵能力之持續交付 - 新書預覽《加速:精益軟件和DevOps的科學》的續篇。在前文中,我們提到DevOps有24個關鍵能力以及持續交付的8個關鍵能力。
陳舊的軟件架構和不合時宜的組織架構可以是提升交付速度的一個絆腳石。高效能要求所有軟件系統以及構建和維護這些系統的團隊都是鬆耦合的。架構優化將幫助組織在規模增大的同時增強生產力!
關鍵能力
鬆耦合的系統架構
鬆耦合的系統可以被獨立地變更和驗證,而不依賴於其他系統、組件和團隊。爲此,團隊必須是跨職能的。鬆耦合的架構將提升交付能力、速度和穩定性,減少大範圍的災難性故障,降低部署的難度,而且更容易擴容。微服務架構就是鬆耦合架構的極致體現。
賦能團隊的組織架構
團隊需要被授權使用他們偏好的工具。同時,要建立針對架構和基礎設施配置的標準化,以便於團隊可以自由選擇合規的工具和配置。
比如在我們公司,針對不同的服務器類型,比如Linux服務器、Windows服務器等都有標準化的硬件、配置和版本。使得安裝、部署、維護、升級、補丁都相對容易。
根據康威定律(Conway's Law)——組織溝通方式決定系統設計。組織架構和系統架構是相互映射、相互影響的。
組織需要演進組織架構,從而支持團隊在不依賴於團隊間的大量溝通就能獨立完成從設計到部署的交付工作。鬆耦合架構的目標是團隊間通過大量溝通確定高層次的共同目標和如何達成目標的原則性意見,而在實施層面則可獨立進展,確保進度。
架構設計師應該和構建與維護系統的工程師緊密工作,以提供相應的工具和技術幫助交付團隊實現更好的產出。
那麼在產品和流程上,需要哪些關鍵能力呢?敬請留意後續文章。
部分內容翻譯自Ariana Brighenti@HSBC的撰文。
近期必讀:
DevOps需要哪些關鍵能力?新書預覽《加速:精益軟件和DevOps的科學》
DevOps關鍵能力之持續交付 - 新書預覽《加速:精益軟件和DevOps的科學》
複雜(Complex)問題與繁雜(Complicated)問題,你怎麼選
關於作者
劉華(Kenneth)
就職於世界500強銀行,負責基金服務業務軟件開發與交付
敏捷、精益、DevOps專家
精通極限編程、Scrum、看板方法、測試驅動開發、持續集成、行爲驅動開發、DevOps工具棧
曾在GDevOps、DevOpsDays Meetup、中國軟件技術大會、ArchSummit等論壇發表主題演講
著有《獵豹行動:硝煙中的敏捷轉型之旅》一書
小說體敏捷/DevOps轉型教科書
和實戰經驗分享
購書指南
—
紙質書、電子書在京東、噹噹、亞馬遜、微信讀書等渠道已全面上架,搜索關鍵字“獵豹 敏捷”即可找到。點擊閱讀原文可直接購書。
有聲書已登錄喜馬拉雅、微信讀書,適合路上聽書的你。
關注公衆號看其他原創作品
覺得好看,點個“在看”或轉發給朋友們,歡迎你留言。