- 精益軟件度量——實踐者的觀察與思考
- 張松
- 1087字
- 2019-01-01 23:46:41
5.1 交付流程模型
精益里面一個重要的流程模型是看板系統。一個看板系統的容量大小是被事先定義的,這個容量是用系統所正在處理的卡片總數代表,每個卡片個數跟一件待處理的工作單元相關,當一個工作單元完成了最后一道工序,這個單元相關的卡片就被釋放出來,這時系統才允許加入一個新的工作單元,一個系統的卡片數量其實也代表了這個系統所允許的半成品(WIP)的最大數量。
精益系統應該是個拉動(Pull)型的系統,卡片的作用其實是一個信號機制。只有出現了空余的卡片,才能夠在本系統中增加新的工作單元,所有的其他待處理工作都放在另一個隊列里,等待出現空余的卡片??窗逑到y希望達成的效果如下。
(1)通過數量有限的卡片,避免在整個生產系統中出現過載的情況,從而保障需求和團隊交付速率之間的平衡。
(2)通過可視化的方式,迅速發現任何環節出現瓶頸,以便及時干預。
如果系統運作順暢的話,客戶最需要的產品在整個系統中不間斷地從一個環節流向下一個環節,卡片在整個過程中盡可能一直處于增加價值的工作環節,也就處于被加工的狀態,盡量減少處于等待狀態的機會和時間。
這個過程中,每個人在同一個時間應該只工作在一個卡片上,如果一個人擁有2張以上的卡片,意味著在不同卡片之間的切換,這不僅增加了切換上下文(文檔、代碼、工具、開發、測試環境)工作量,還增加了隱藏的等待狀態,因為在任一時間里,2張卡中肯定至少有一個是沒有被任何人處理的。
我們看看圖5-1顯示的一個多團隊協作的場景。每個團隊都有一個自己的交付管道,而整個產品項目團隊就好像一個大管道。管道上有待分析、分析、待開發、開發、待測試、測試、完成,這么幾個狀態,其中分析、開發、測試是增加價值的工作環節,而待分析、待開發、待測試則相當于過程當中的緩沖隊列。團隊成員把自己的名字,用小貼條貼在一張自己正在工作的卡片上。項目管理人員則隨時關注處于待分析、待開發和待測試隊列里工作單元的數量,數量增加可能意味著緊鄰的工作環節出現了阻塞或是瓶頸。比如圖中team 2的待測試環節積累了4張卡片,顯得有些不同尋常,當然其原因可能多種多樣,但至少這提供了一個明確的線索。圖中另外還有一個值得注意的線索。整個產品的大管道上,在待測試環節的隊列里的卡片數量遠超過其他環節。這清晰地顯示出了整個系統中的瓶頸所在,管理人員應該深入分析,尋找對策。

圖5-1 多團隊協同看板
根據前面討論的目標,從度量的角度來講,我們要研究的就是這個精益系統的以下內容。
●交付價值。
●周轉速度——響應周期。
●運轉效率——交付速率。
●可靠性——質量。
●系統能力—個人和組織。
在研究這個系統如何達成我們的目標之前,我們先要定義澄清幾個重要的概念。