Feature Crews: kanban systems for software engineering in the large
http://leansoftwareengineering.com/2009/04/07/feature-crews/

 

在 Feature crew中, 有一個難題是程式碼共享的問題. 當很多feature crew要同時修改同一份程式碼時, 要如何維持其正確性, 並且也要兼顧效率. Corey Ladas在他的文章中分享他們如何處理這樣的事情.

 

Microsoft的作法, 是採用branch source code. 也就是每個feature crew若是要實作一個feature時, 要從main stream中branch出來, 等到寫完後, 在merge回去.

 

可是這樣做會遇到一些問題:
a) 如何保持main stream能盡可能盡早和branch整合在一起
b) 如何確保main stream的強固性

 

Microsoft的解法如下:

 

branch_by_feature  

 

1) Feature 不是沒做完, 要不就是做完. 也就是只有0% 和100%兩種. 何謂做完, 就是要通過quality gate的檢查. 目前微軟大約有15種. 唯有通過後, 才能merge到main stream

 

 image_8  

 

2) 當你branch後, 還沒merge之前, 中間若是有人已經merge進入 main stream, 這時候換你要merge時, 發現之前merge進去的程式碼, 會導致你的程式有問題, 那整合到可以動便是你的責任. 若是你已經通過quality gate, merge好其他人的code, check-in進main stream, 之後若是有人要在check-in進來, 這時候要merge你的code到都可以run, 便是他的責任.


 

    全站熱搜

    kojenchieh 發表在 痞客邦 留言(0) 人氣()