|
英文原文:8 Principles of Continuous Delivery
- The process for releasing/deploying software MUST be repeatable and reliable.
軟件的發布或部署過程必須是可重復且可靠的。這就引出了下一條… - Automate everything!
所有操作的自動化!我很難相信“手工操作是可重復且可靠的”這種說法。所以一定要將所有重復性的操作變成自動化的,從而變得可靠。 - If somethings difficult or painful, do it more often.
如果某件事情做起來很困難或者讓你覺得很痛苦,那么就盡早且盡可能頻繁地去做。乍一看上去,這么做太蠢了,因為人的直覺反應是:應該推遲這件事。然而,實際上,這句話是說:如果做某件事很痛苦,一旦要求自己更頻繁地做,你就會有動力想出各種辦法,來解決這個痛苦,很可能把它變成了自動化的,最終會把它變成一件簡單容易的事情。就拿更新數據庫結構來說吧。一般來說,沒人想頻繁地修改它,所以就會盡可能推遲或少做,比如一個月做一次更新,或者更長。然而,你真正需要做的卻是改進數據庫結構調整的流程,讓它變成更容易,更頻繁。甚至如果必要的話,可以一天做一次。 - Keep everything in source control
對所有內容進行版本控制。當今軟件行業還在強調這種要求,你可能會覺得奇怪,誰現在還沒有用版本控制呢?但是,我指的不僅僅是源代碼喲,還包括環境、配置、數據等等。 - Done means “released”.
完成意味著“已發布”。也就是說,項目的“完成”是指把它交到用戶手中,并且可以正常工作。而不是“我已經提交了,后面的我不管了”,或者“我已經提測啦”,或者“我測試完了,沒有問題。” - Build quality in!
內建質量。在質量度量方面花一點兒精力。從長期維護的角度來講,具有良好質量度量目標的項目(如單元測試覆蓋、代碼風格、復雜度等等) 要比沒有這些度量的項目更容易一些。 - Everybody has responsibility for the release process.
每個人都要對交付過程負責。在開發人員機器上運行的程序不會為公司帶來收益。沒有部署的項目也一樣。開發人員也應該時刻想著如何部署手中的軟件。項目經理也應該關注什么時間部署。測試人員也應該進行部署測試。 - Improve continuously.
持續改進。軟件開發如“逆水行舟”,不進則退。持續改進意味著,你的系統需要一直改進,這樣當需要時,才能很容易修改。
譯/喬梁
it知識庫:持續交付的八條原則,你能做到幾條?,轉載需保留來源!
鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。