Scrum 敏捷軟體開發 一日體驗營@新竹 - Part 1

講師: David Ko

Outline

  1. 敏捷觀念簡介
  2. Scrum 基礎觀念介紹
  3. 如何組織需求
  4. Scrum 會議
  5. Scrum 開發方法總結

Part 1 - 敏捷觀念簡介

0. Why post it

為什麼用便利貼
- 所有東西都可以看的到
- 資訊視覺化
- 彈性
- 說出更多東西
- grouping 大家來
- 共識
- voting

1. 敏捷歷史

年份

方法

1950

PDCA(Plan-Do-Check-Act): 針對品質工作按規劃、執行、查核與行動來進行活動,
以確保可靠度目標之達成,並進而促使品質持續改善

1970

瀑布式開發

1986

Spiral model(螺旋模型)

1995

Scrum 用管理角度看

1997

FDD(Feature Driven Development)

1999

Extreme Programming

2001

敏捷宣言

2003

Lean Software Development

2. 敏捷宣言

  • 個人與互動 重於 流程與工具
  • 可用的軟體 重於 詳盡的文件
  • 與客戶合作 重於 合約協商
  • 回應變化 重於 遵循計畫

兩邊都很重要,但左邊非常重要,敏捷是重計畫的方法

3. 敏捷宣言背後的原則

變是唯一不變的東西
敏捷不會比較快,要有因應 change 的能力
Team 的溝通很重要
持續交付東西給大家

4. 敏捷開發的思維

A. 敏捷所有一切方法都是關於回饋

方法

多久看一次

瀑布

最後看

Scrum 檢視會議

每週

Scrum 每日立會

每日

自動測試

每小時

程式碼一有變動就檢查

Pair programming

幾分鐘

Cargo cult: 貨物崇拜
不在乎後面的原理,就以為 Run CI 就是遵循敏捷
但敏捷的方法是關於”回饋”,就是一有變化就要有回饋
所以 Run CI 其實要看 如何讓 Run 的時間變快 (Build, test case, …etc)
一有 change 就要 run 看可不可以過
不會過就要趕快去改
最早的時間做因應的對策
及早治療的照妖鏡,在最早的時間去跟你說哪裡就應該要調整了,所以很多地方都要一起調整
所有都調整才能變快

B. 溝通的有效性

就是找答案
找答案的解法:用更有效率的方法找答案
http://agilemodeling.com/images/communicationModes.gif

C. 自我組織的團隊

Conway Law: 產品的架構與團隊的組織是有關係的是相互作用的

D. 持續改善: PDCA

E. Doing Agile vs Being Agile

Doing Agile

Being Agile

問題導向

價值導向

實施某些任務

持續交付

專案為主

自我組織

標準化流程

授權

效率

團隊高度承諾

指揮控制

守破離
遵守規則
break rule
什麼東西都可以做

  • 從 Doing Agile 到 Being Agile

Ref:
1. https://zh.wikipedia.org/wiki/PDCA
2. https://zh.wikipedia.org/wiki/螺旋模型
3. http://kojenchieh.pixnet.net/blog/post/355799513-feature-driven-development-簡介
4. http://agilemodeling.com/images/communicationModes.gif

comments powered by Disqus