限制理論 (Theory Of Constraints)在DevOps方面的應用
一、定義
限制理論 (Theory Of Constraints),簡寫為TOC。任何系統至少存在著一個限制,否則它就可能有***的產出。因此要提高一個系統(任何企業或組織均可視為一個系統)的產出,必須要打破系統的限制。任何系統可以想象成由一連串的環所構成,環與環相扣,這個系統的強度就取決于其最弱的一環,而不是其***的一環。相同的道理,我們也可以將我們的企業或機構視為一條鏈條,每一個部門是這個鏈條其中的一環。如果我們想達成預期的目標,我們必須要從最弱的一環;也就是從瓶頸(或限制)的一環下手,才可得到顯著的改善。換句話說,如果這個限制決定一個企業或組織達成目標的速率,我們必須從克服限制著手,才可以更快速的步伐在短時間內顯著地提升系統的產出。
二、簡介
限制理論(TOC)是美籍以色列人高德拉特(Eli Goldratt)博士從物理學領域引進到管理學領域形成的,它是Theory Of Constraints的簡稱,最初它作為一個物理學原理使用,一個簡單的原理存在,它是指物理系統的最薄弱環節決定整個系統的產出或者效率,它在物理設計中經常使用到。1984年,高德拉特博士出版了他的***本小說《目標》,書中運用約束的相關理論幫助一個工廠廠長在較短的時間內實現了扭虧為盈,不僅很好的處理了企業的發展問題并且很好的解決了家庭中的矛盾。在高德拉特的不斷努力下,該書很快暢銷美國,并得到了相關管理專家的好評,從此,TOC開始非常流行。高德拉特博士在以后的實踐中,將該理論從生產領域逐漸擴展到銷售領域,以及企業的其它管理領域。繼目標以后,高德拉特又出版了《決不是靠運氣》和《關鍵鏈》等書籍,將該理論形成了一個完整的體系,并發展成為一種思維模式。約束理論在美國應用很廣,美國生產和庫存管理協會非常關注約束理論的發展,稱其為“約束管理”,并成立專門的約束理論研究小組。該小組認為:TOC是管理理論和管理工具的結合,它把企業在實現目標的過程中現存的或者潛伏的制約因素叫做“約束”,通過逐個識別約束和消除這些因素,使得企業的改進策略和改進方向更加明確化,從而幫助企業實現其目標。
三、應用在DevOps方面
DevOps的實施是面向復雜系統的,尋找瓶頸和限制約束的領域有下面四個。
上圖源于:http://www.jedi.be/blog/2012/05/12/codifying-devops-area-practices/
1. 每個領域的評價因素
對每個領域里面可能的瓶頸分層次的考察和剖析
2. 瓶頸的分析方法
以上是Dev到Ops的方向里,關于“交付到生產環境”領域的評測案例;里面分析的點是:使用相同的代碼來為應用搭建開發、測試和生產環境。
- Tools Layer : Deploys/Day
- Process Layer : Number of Change Requests/Day
- People Layer : People Involved per deploy
評估以上場景的時候,需要找出能夠在TPP三個層面可以度量的數據。當然可以加入DevOps流程中的其它相關指標。
3. DevOps積分卡
從每個領域的若干評估點上,既可以看到整體的成熟度矩陣。這也是DevOps落地點選擇的一種選取方式。問題越大的領域,應該是最應該改善,***改善的方面,由于它能立刻看到效果;但是也要考慮到業務產出,也要考慮它的投入風險;綜合看:應該選取有對業務價值產出有明顯幫助,且風險合理的領域。
4. 內外循環
- 內循環:Automate - Measure 這2個領域組成了DevOps優化改進的內循環,組織中的技術債務主要存在于這個循環中。
- 外循環:Culture - Share 這2個領域組成了DevOps優化改進的外循環,組織中的社交債務主要存在于這個循環中。
四、總結
DevOps是一種狀態,任何組織的任何產品都是一個復雜系統,任一時刻都至少存在一個約束。DevOps是讓我們始終處于持續識別瓶頸和優化系統的狀態中。
【本文為51CTO專欄作者“劉征”的原創稿件,轉載請通過作者微信公眾號“DevOps教練”(MyDevOps)獲取授權】