fbpx

為什麼軟體開發團隊要採用敏捷

Contents

大部份敏捷的書都告訴你如何做, 但很少告訴你為什麼要這麼做。  這個影片是ThoughtWorks於2014年的演說,在這演說之際,已在敏捷耕耘超過十年,Martin Fowler 與 Neil Ford 反推敏捷開發的成功經驗,點出敏捷中成功的要素,把敏捷開發的精髓做了很不錯的歸納。

1. 專案管理從傳統的預測型(Predictive Approach)轉為調校型(Adaptive Approach)

傳統專案的做法是”Planning Your Work, Working Your Plan.”  專案如果能照計畫按時完成就是成功的專案,而這樣的成功取決於需求必須清清楚楚且穩定。 可是一般軟體專案的需求很難在初始階段就清楚確認,之後需求也常隨時間變動。 採用調校型的處理方式, 不斷地隨著變動演化,做對當下有幫助的事,切斷專案的成功一定要有穩定需求的依賴關係,採用迭代的方法一個循環一個循環持續改善,這樣的敏捷處理方式才有辦法應付軟體開發需求變動的問題。

2. 傳統的流程是先把流程圖畫出,再把需要的人填進去,人為運作的零件。敏捷則是先把一群合得來的人組成團隊,再由團隊來決定要採用什麼流程運作。

從傳統的流程觀點, 人是可替換的零件,但以敏捷的觀點來看人是主角 。事實上人本身就是無法預測的變數,投入不同的人,結果一定不同。 所以應該讓這群人一起去主導他們選用什麼流程來進行,才會比較有效率。

3. 建立快速且清楚的溝通管道

溝通 (Communication)  >  技術(Technology)

Peopleware所述,失敗的專案通常不是因為技術問題,而是人的問題。 當發現問題的時候或看見需要改善的地方,有沒有抓緊時效因應,結果將大不同。 所以建立快速且清楚的溝通管道對於最後的成敗有很大的關鍵效應。

4. 採用 經驗手法(Empirical Process) , 不用 明確手法 ( Defined Process)

process

舉做蛋糕和淋浴這兩件事來說,做蛋糕只要照食譜放入正確份量的原料,經過相同的程序, 就確定做出 一樣香噴噴的蛋糕。 這是 明確手法(Defined Process)。 淋浴的過程和做蛋糕全然不同,因為我們不太清楚要轉到哪裡熱水會剛剛好是自己喜歡的溫度。 所以我們要先轉到某個地方,測一下水溫,再做調節,用手感受一下水溫…如此在 OUTPUT 和 INPUT 間來回做 檢查(Inspect)調節(Adjust),這是經驗手法 (Empirical Process)。 在瀑布式(Waterfall)開發模式下,假設所有的軟體開發相關的一切都是明確的,團隊只要照計畫執行就能成功完成。 但事實上軟體開發牽涉到的技術變化與人的因素並不像瀑布式假設的那麼完美。敏捷讓你面對這個事實,採用經驗手法(Empirical Process) ,以迭代的方式,做”Inspect & Adjust”的持續改善。 

5. 公開透明的進度資訊

在ThoughtWorks的北京辦公室,他們有滿牆的狀態卡(Kanban),所有的人走過去都可以知道現在有哪些正在進行、在什麼狀況,不再像傳統只有專案經理知道整個狀況。 ThoughtWorks在紐約和印度的辦公室則是用虛擬的卡牆-Mingle ,以幫助兩地協作並讓所有參與人了解專案現狀 。 除了工作進度,軟體開發真正的成果是可運作的軟體。  運用工具秀出所有build版本狀態對於軟體開發團隊的效率有很大的幫助。 (相關工具您也可參考JetBrains Team Tools)

6. 結對程式設計

在演說中,Neil Ford舉了兩個他喜歡的花園當例子,一是很有組織,植物都在矩陣中,另 一個是幾乎像野生,任植物自行發展。 人的左右腦可以說就是這兩種的組合,左腦是很有組織,邏輯思考,右腦則自由發展羅曼蒂克。 寫軟體一方面要有創意一方面也要很有組織,很不幸的,通常在寫程式的時候,偏向左腦,所以,結對的另一位在旁觀看的程式設計師,可以扮演右腦的角色,看到正在寫程式的人所看不到的部分,有可能旁觀者會發現有更容易的方法來達到同樣的目的。 這方法曾引起很多爭議,不過ThoughtWorks認為他們從中獲得很多好處。

7. 反省反饋持續改善

團隊定時一起做反省:哪些做得好?遇到什麼困難?有讓人困惑的地方?哪些需要改進? 把整個開發流程也當成需要不斷反饋改進的標的,做持續的改善。  如果你用的是極限編程(Exterem Programming),現在的方式跟以前的做法還一模一樣的話,那你並沒有真的在實行敏捷。

本文特色圖片來自https://pixabay.com

支持 Soft & Share

❤️您應該有留意到,我們的網頁並不會出現干擾人的跳出煩人的廣告或是在內容中嵌入廣告,因為我們發現這樣對閱讀網頁的內容體驗真的是不好!

如果您覺得我們提供的內容服務還不錯,歡迎透過對以下產品/服務的購買投資來支持本站的營運走得更遠

如果暫時還不需要以下的付費服務,幫我們把這個網站分享給有需要的朋友,您的小小舉動會對 Soft & Share 有莫大的幫助!感謝您的支持!

🎈如果您點選優惠連結後,還是沒有看到優惠價格,請將瀏覽器的 cookie 清除 ( 清除 udemy 網站的就可以了 ),然後重新點選優惠連結並登入 Udemy 就可以了

覺得這篇有值得分享的觀念嗎? 歡迎分享 !

不受 FB 演算法影響,歡迎透過 e-mail 訂閱網站更新

Comments are closed.

Powered by WordPress.com.

Up ↑

%d 位部落客按了讚: