持續交付未來10年會是什麼樣子?

Dave FarleyJez HumbleJez Humble在DeliveryConf上討論了他們對未來10年持續交付(Continous Delivery,CD)的期望。CD要取得成功,IT行業需要關注三個方面的表現:技術、組織和文化——所有的這些都是相互關聯的。DORA的報告顯示,技術實踐可以帶來變化,但僅憑技術實踐是不夠的。

在Farley和Humble的《持續交付》出版十年之後,出現了很多的實踐,比如分佈式跟蹤、混沌工程以及流量轉移。他們的書重點關注了軟件部署管道。他們看到很多組織已經有了針對每個環境的管道,但這是CD的一個反模式。他們的本意是要形成這樣的一種機制,讓變更從其中的一端進入,而可發佈的軟件從另一端輸出。換句話說,持續交付的理念就是根據用戶的快速反饋來校驗輸出。正如Farley所言:“團隊需要有一個關於這些技術實踐的偉大故事,從而實現優異的技術表現,這是CD的必要驅動力。”

除此之外,團隊需要有一個更好的結構,這樣的結構能夠幫助他們更好地協作並給他們帶來足夠的自治性,從而能夠實現持續交付,這就是Farley所定義的組織化方面的表現,對於任意規模的CD來說,要想取得成功,這都是至關重要的。此外,按照Farley的說法,在文化方面有良好的表現能夠有助於關注團隊的行爲、多樣化思考以及技術嚴謹性等方面。

所有的這些方面的表現,即技術、組織和文化,都是相互關聯的。Farley說道:“沒有其他方面的輔助,組織不可能在其中的某一個方面實現成功的CD。”爲了強調這些方面的重要性,Farley引用了《哈佛商業評論》的一篇文章,在這篇文章中,作者討論了擁抱敏捷的幾個障礙:“最大的障礙並不是需要更好的方法論、顯著效益的確切性證據或者敏捷能夠在IT領域外可行的證明,而是主管們的行爲”。

考慮軟件交付問題的一種方式就是使用Stephen Bungay的《The Art of Action》一書中的模型。組織如果試圖達到一個結果,那麼他們需要一個計劃,然後執行這個計劃以達到預期的結果。儘管如此,在這個模型中仍然存在一些鴻溝,如知識水平、人員一致性和結果的影響。Farley說:“你不能消除這些鴻溝,但可以通過做一些事情來減弱它們”,比如限制工作的批次大小。

按照Farley的說法,軟件開發是由學習和管理複雜性驅動的,組織需要根據這些驅動力來進行優化。例如,爲了優化學習,組織可以藉助反饋、漸進式工作和運行實驗來學習。爲了管理複雜性,組織可以實現架構化的屬性,如模塊化、關注點分離、內聚或鬆耦合。換句話說,Farley這樣總結到,“這是與工程息息相關的,應用理性的科學思維來解決經濟約束下的現實問題。”

另外,Humble強調了在CD中迅速獲取反饋的重要性,因爲“當組織在進行創新的時候,大多數的想法可能都是糟糕的想法”。在這種情況下,就判斷這些想法是否正確來說,反饋就顯得至關重要了,因爲這些想法可能是可變和不確定的。除此之外,這種反饋有助於推動實驗。在Humble、Nicole Forsgren和Gene Kim合著的《Accelerate》一書中,他們談論了產品交付以及反饋的重要性:“產品交付會建立一個能迅速給我們質量反饋的引擎,該引擎能夠讓從開發到生產的關鍵性流程成爲可能,這是產品創意所產生的引擎。”

最後,Humble對CD的一個期望是“人們以 CI(Continuous Integration,持續集成)所定義的方式來開展CI”。這意味着,開發人員每天至少要有一次提交至master分支或將特性分支集成至主分支。如果構建失敗的話,通常需要在十分鐘之內修復。並且,要有可靠的自動化測試,因爲CI要依賴它們校驗每次應用代碼的變更。

在演講的最後,有一個開放的空間來繼續討論未來十年CD將會變成什麼樣子。聽衆討論了CD面臨的挑戰、業已取得的成功以及他們希望看到的變化。

DeliveryConf:有什麼策略可以改變主管們的行爲以適應CD呢?

聽衆:做一個成本分析(ROI),在裏面放一些數字。這有助於在與主管交談的時候提供一個憑據,這樣他們能夠看到CD的業務價值。

Farley:改變談話的技巧很重要。在組織中,通過談論技術策略和部署管道,我們並不能贏得組織中高級管理人員的青睞。我們需要討論業務影響或發展能力。

聽衆:總體而言,你必須要產生一種改變業務的情感響應。我看到過很多次ROI的方式。雖然這樣做可能是有價值的,但是這對於改變文化來講還是不夠的,就像通常我們所說的“文化把戰略當飯吃掉了”。

DeliveryConf:在這方面,你們取得了哪些成功呢?

聽衆:在我們的組織中,我們曾經有一個巨大的腳本,每當我們在一個共享的地方構建時候,該腳本就開始執行交付。所以,我自願花業餘時間來改善這個管道。

聽衆:榜樣的力量是很強大的,因爲它會讓更多的人蔘與進來。

DeliveryConf:在未來的2到5年內,你們希望看到什麼變化?

聽衆:我建議重點培訓公司內的員工,在這個方面進行投資。

聽衆:CEO們要讓我們對財務結果負責,當我們證明更好的CD實踐的收益時他們要接受這一點,並持續往前推進,而不是說“我們以前不是這樣做的”。

你覺得未來的幾年內,CD會是什麼樣子呢?

原文鏈接:

What Will the Next 10 Years of Continuous Delivery Look Like?

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