《持續交付》讀書心得

2022-02-23 04:29:08 字數 1527 閱讀 7240

目前市面上軟體開發類的書籍,大多聚焦於軟體開發過程,例如如何進行需求分析,如何利用軟體工程模型進行開發等,交付雖然也包含在軟體開發過程中,但大多數時候都不會成為關注的主題。然而,我們卻不止一次遇到過這樣的情況,當明天需要給客戶演示新功能的時候,我們突然發現,我們的軟體執行不起來了,這裡面有很多可能性,例如功能其實並沒有完成,但我們是否聽到很多次這樣的聲音,「在我本機上是沒有問題的啊,為什麼部署到伺服器上就不行呢。」,我們的交付能力如此脆弱,如此不穩定。

車仔麵《持續交付》針對交付環節,系統地介紹了什麼才是交付的最佳實踐,以及如何實現這樣的最佳實踐。《持續交付》圍繞著構建、測試和部署自動化的核心,提出了「部署流水線」這樣乙個模型。提供了從配置管理、源**控制、發布計畫、構建、測試、部署和發布等一整套解決方案,闡明了持續交付的意義、原則,以及如何在專案中使用這些實踐。

棉花糖持續交付的核心便是在構建、測試和部署自動化的基礎上,不斷的進行交付或者是交付預演,讓交付的流程得到多次的驗證,以保證在真正發布的時候,交付流程是被驗證過的,從而減小發布的風險。目前的部署發布都是手工進行,這樣會帶來三個方面的問題:第一,發布依賴於個人,如果是乙個比較複雜的部署發布流程,專案就會依賴於乙個部署專家,而這個部署的崗位需要調整的話,需要付出很大的學習成本。

如果軟體發布時,這個部署專家正在休假,這將會給軟體的部署和發布帶來很大的風險。第二,手工部署有可能引入很多人為的錯誤,例如,部署人員如果在部署發布的時候,誤寫了乙個環境配置,將導致部署發布的失敗,而這類失敗將很難追溯和發現,你有可能花了很多時間去查詢**上的問題,到頭來結果只是配置資訊誤寫了乙個數字。第三,手工部署不具有可重複性,這將導致部署時間不可估算,並且大部分情況下,雖然已經為部署發布做了計畫並且留出了部署時間,但實際部署的時候還是會大大超出計畫的時間。

基於以上的分析,要實現持續交付,關鍵在於使構建、測試和部署的流程自動化,讓這個流程依賴於既定的規則而不是某乙個人。這樣的規則可以是乙個自動化指令碼,也可以是強大的自動化管理工具。在這其中,構建、測試和部署三個不同的階段都有各自自動化的最佳實踐。

其中相對比較重點的是測試階段的自動化,測試的意義在於與保證交付質量,而測試自動化則是讓持續交付產生價值的關鍵環節,畢竟,就算我們的專案擁有持續部署的能力,而我們忽略測試的結果,讓專案一直處於構建或者整合失敗的狀態,這樣,持續交付的流程就沒有給我們的專案帶來任何意義,而通常乙個專案持續交付流程的搭建並不是乙個低廉的成本。同時測試的自動化也是乙個難點,這裡面包括了單元測試的自動化,驗收測試的自動化,以及後續一些自動化並不能帶來很好效果的測試,例如探索性測試,易用性測試等。這其中,要實踐乙個很好的驗收測試自動化將是一件艱鉅而複雜的任務。

糖不甩由此可見,雖然我們知道持續交付給軟體開發所帶來的價值,他能減小我們的交付風險,很大程度的提高交付質量,但它相對比較高的門檻和成本使得大部分專案對持續交付敬而遠之,但正如說中所說,這雖然是乙個痛苦的過程,也許我們並不能一次都做好所有的事情,但我們可以找出我們的瓶頸,一步一步以增量的方式來構建我們的持續交付,哪怕我們只寫了乙個構建指令碼,讓在這之後的**到二進位制檔案的轉化可以通過這個指令碼完成,那也是乙個不小的進步。到最後我們不停積累,也許有一天你會發現,也只是乙個交付方式的改變,卻讓我們的軟體開發過程有了乙個質的飛躍。

交付是一門藝術。

讀書心得體會讀書心得

格列佛遊記 這本書主要講的是格列佛以海上醫生的身份隨同一艘輪船出海航行,後來遭遇風暴孤身一人涉險了兩個神奇的國家,最後終於回到了自己國家的故事。2篇和多篇的筆記整合,下面是小編為大家收集整理的讀書心得1篇,歡迎大家閱讀。讀書心得1篇篇1 醜小鴨讀書筆記 今天,我們學習了安徒生的作品 醜小鴨 課文講述...

初中讀書心得

讀書是一種學習的過程,一本書就是乙個故事,乙個故事敘述了一段人生,俗話說 讀萬卷書,行萬里路 說的就是這個道理。書,是人類必不可少的精神支柱。在別人眼裡,它卻是比精神支柱還要寶貴的東西,就像高爾基先生,他曾經說過 書是人類進步的階梯 可見,書對他來說就是最寶貴的東西。書!是我們的朋友,也是我們的家人...

《乾法》讀書心得

這類痛苦來自責任心不足,當你對一件事不用心的時候,什麼樣的過程 結果都是擾人的,煩惱的。三者 團隊協作中常出現的情況之一,合作時並非是有百分百之力可以承受任務,但迫於情面勉強接受,最終未能達到對方要求的標準,結果未能幫到對方卻鬧得自己心情複雜 或是未認清自己的定位,對自己的工作職責認識有偏頗,無法接...