agile methods : a comparative analysis

16
Agile methods: a comparative analysis Diane Strode-University of Wellington the 19 th Annual Conference of the National Advisory Committee on Computing Qualifications 資資 3B 985002055 資資資

Upload: eldon

Post on 23-Feb-2016

47 views

Category:

Documents


0 download

DESCRIPTION

Agile methods : a comparative analysis. Diane Strode - University of Wellington the 19 th Annual Conference of the National Advisory Committee on Computing Qualifications 資工 3B 985002055 毛品元. 1 Introduction 2 Systems development methodology 3 The agile methods - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Agile  methods : a comparative  analysis

Agile methods: a comparative

analysisDiane Strode-University of Wellington

the 19th Annual Conference of the National Advisory Committee on Computing Qualifications

資工 3B 985002055 毛品元

Page 2: Agile  methods : a comparative  analysis

• 1 Introduction• 2 Systems development methodology• 3 The agile methods• 4 The evolution of agile methods• 5 Research question• 6 Comparative analytical frameworks• 7 A framework for agile methods• 8 Reasons for selecting early agile

methods• 9 Results• 10 Conclusions

Page 3: Agile  methods : a comparative  analysis

1.Introduction• 1 回答核心問題” What is agile method?”

• 2 提供分析 framework

• 3 定義 development method 以及 agile 的發展歷史• 4 使用 framework 在 method 間的選擇與比較作為應用及其結果

Page 4: Agile  methods : a comparative  analysis

2.Systems development methodology• 1 定義 Systems development methodology:

Page 5: Agile  methods : a comparative  analysis

3.The agile methods• 1.Extreme programming (Beck, 1999, 2000),

• 2.Crystal Methods (Cockburn, 2002),

• 3.Adaptive Systems Development method (J. A.Highsmith, 2000),

• 4.Dynamic Systems Development Method(Stapleton, 1997),

• 5.Scrum (Schwaber & Beedle, 2002),

Page 6: Agile  methods : a comparative  analysis

4.The evolution of agile methods• 1.object-orientation,• 2.evolutionary development,• 3.internet technologies• 4.methodology engineering.

Page 7: Agile  methods : a comparative  analysis

5.Research question• 1. 認為” agile method” 並未從本質上定義

(Reifer)o 1.Learn o 2.Classifyo 3.Compare , Select

• 2. 五種早期提出的 agile methodo 1. 共同特性 , 差異o 2. 不適用於何種環境

Page 8: Agile  methods : a comparative  analysis

5.Research question• 3. what is an agile method?

Page 9: Agile  methods : a comparative  analysis

6.Comparative analytical frameworks• 1. 作者定義

o From: philosophy , property 方面o 分析 : 同異 , 優缺及特性間的關係用以判斷選擇合適的 method

• 2. 用 frameo 1. 用 frame 的原因o 2. 為避免” limited expressive power”

• 3. contribution of this study [Abrahamsson et al(2003)].o 是否為 agile method 缺點 :如何決定 ?

• 1.incremental• 2.cooperative• 3.straightforward• 4.adoptive

o Feature 缺點 : not coveredo method 的獨特性 缺點 : subjective

• 4. 改進 =>summary , objective

Page 10: Agile  methods : a comparative  analysis

7.A framework for agile methods• 1. 為何採用 Avison and Fitzgerald (1995a,

2003).o 1. 簡單 , 易理解o 2. 設計給 practitionerso 3. 加入了 Abrahamsson et al.(2002)

• 2. 本 framework 優點o 1. 大量採用先前使研究的 frameo 2.coverage 較高

• 3. 額外加入o Identifiero assumptionso values,o Perspectiveo metrics, and tailorability.

Page 11: Agile  methods : a comparative  analysis

7.A framework for agile methods

Page 12: Agile  methods : a comparative  analysis

8.Reasons for selecting

Page 13: Agile  methods : a comparative  analysis

9.Results• 1.What are the properties of individual agile

methods?o ANS: The analytical framework for agile methods

• 2.What are the properties common to all agile methods?o ANS:

Page 14: Agile  methods : a comparative  analysis

9.Results• 3.What are the differences between agile

methods?o ANS:

• 4.What properties are unique to agile methods within the set of agile methods?o ANS:

• In XP :” test-first development”” pair programming””the use of a system metaphor”

Page 15: Agile  methods : a comparative  analysis

9.Results• 5.What combinations of agile methods are

possible?o ANS:

• 6.What are the published problems with agile methods?o ANS:

Page 16: Agile  methods : a comparative  analysis

10.What is agile method:• 1. 一種開發技術用以支援管理在變動商業環境下的

incremental 及 iterative development• 2. 增強 team 與 customer 間的關係• 3. 用以更早產出程式 , 藉由 :

o Communicationo Feedbacko Learningo Frequent meeting in preference to than modeling and

documentation• 4. 適應已存在的軟體開發技巧已達成目標