變更控制的好與壞

2021-04-13 07:43:46 字數 1707 閱讀 3224

變更控制的好與壞

陳能技2007-8-25

原文: the highs and lows of change control – james bach

關於變更控制,我常常會產生自相矛盾的想法,一方面,我希望為改進和更好的創意開啟「水閘」;但是另一方面,我又想通過限制更改保護現有的產品質量。

變更控制

變更控制非常重要。但是實現變更控制所需的努力同樣讓人討厭。我們之所以害怕變更是因為**中的一丁點混亂也會產生產品的大的失敗。但是,它也可以修正bug或者增加完美的新特性。我們擔心變更是因為乙個「無賴」的開發人員就足以毀掉乙個專案;但是很多優秀的想法也同樣**於這些「無賴」,乙個繁複的變更控制流程會極大地妨礙他們的創造性工作。

我關於這個問題的矛盾心理**於變更控制流程容易被誤用這一事實。變更控制意味著風險分析,沒有什麼容易的或特定的方式。外加我們人類的把複雜問題過分簡化的能力,變更控制可能成為盲目的拒絕變更,自動地拒絕風險而不考慮潛在的回報。

或者,很容易的,變更控制會退化成一種空洞的儀式:允許任何變更。

問題與過程

定義過程的目的是解決問題。那麼我們存在什麼問題呢?

在 **artpatents公司,我們的變更控制的需要主要**於:我們希望把在試圖改進產品的時候引入重大問題的機會最小化,尤其是在專案後期。我們希望最小化回歸測試的代價和時間消耗。我們也需要確保關注到每一位專案成員,確保他們不會因為某些特定的更改而影響太大。而且,我們的流程需要足夠靈活,讓我們在開發的後期能夠靈活地增加產品的功能,因為市場驅動型的軟體公司就是這樣競爭的。

**artpatents公司有3個變更流程的方面:

1、 我們把所有源**儲存在源**控制系統。

2、 我們通過乙個在指定機器上的正式的構建流程來編譯產品。

3、 我們在開發的後幾個星期把**凍結。

**凍結不意味著**停止更改了。意味著我們遵循乙個正式的**變更協議。最初,是由高階測試員

gordon來評審每個更改的。協議是通過乙個**來管理的。任何人想要請求變更都需要填入一條請求記錄到**中。

gordon周期性地審核這個**並決定哪些版本需要重新測試,哪些版本需要丟棄。但是,如果某些人因為某些原因沒有填寫**就做出了一些更改,

gordon是永遠也不知道的。

很多變更是沒有記錄的,所以這個流程效果不大好。我不是說人們做得很差或有意推翻這個流程。而是說這個流程不適合技術型的人的工作習慣。大家會心煩意亂、忘記細節、隨時改變注意。

降低風險

為了降低危險的變更帶來的風險,我們需要乙個更加可見、可靠的流程。所以我們讓**「退休」,安裝了乙個bug跟蹤系統來管理變更請求。在

**artpatents公司bug報告可以是變更請求、問題報告或其他可能包括**變更的任務安排。在**凍結階段的每乙個**變更,我們要求開發員把**簽入的注釋寫在bug資料庫中,用變更請求id來標識。在每個build之前,qa工程師會檢查簽入注釋並驗證**更改。

這個流程是乙個**變更跟蹤系統,能跟蹤回變更請求和審批。開發人員還是會忘記遵循流程,但是,編譯前的注釋檢查會發現這個問題,編譯會暫停直到每個變更都被驗證並記錄。這個流程允許人們犯錯誤。

為了使這個流程不至於流於形式,我們如何決定同意哪些變更呢?我們主要通過會議,每天評審bug,從而決定是否允許變更或在下乙個release版本再改。

自從2023年12月,這個流程就成為進入**凍結階段後我們正式的變更控制流程

輸液的好與壞

掛吊瓶 打點滴可以說是我們平常在醫院裡司空見慣的事情了。作為一種創傷極小的醫療操作,靜脈注射現在多數已經不再由醫生負責,而成為 的主要工作內容之一。近來,有關我國人均靜脈輸液量遠大於國外的新聞報道又在社會上引發關注,那麼輸液是不是像網路上說的那樣危害巨大呢?它的好處和不足有哪些?你對輸液有著怎樣的觀...

小白的CFD之旅 22 好網格與壞網格

網格疏密 網格形狀 其他的一些問題 小白的總結 鄭重申明 網格的作用如此重要,以至於小白糾結了很久。小白知道網格劃分過程很大程度上受制於計算資源的限制,但小白還是不太明白,如果計算資源非常充足,不用顧忌資源限制的情況下,如何判斷生成的網格好壞?如何確定自己生成的網格是否合乎要求?如何利用軟體來判斷網...

漫談分布式檔案儲存系統的好與壞

今天跟同事討論分布式檔案儲存系統,說到如何評價乙個系統的好與壞,一時還真覺得不太好評判。當然了系統本身的伸縮性 可用性肯定要好,否則無法長期投入穩定運營的,畢竟業務,特別是網際網路業務經常會有快速增長或者快速萎縮的現象以及7 24小時不間斷服務的需求。那麼除了這兩個以外,如何評判好與壞呢?實際上很多...