Lesson 4 - Other Agile Methodologies
Lesson 4 - Other Agile Methodologies
Learning Objectives
Several core Agile methodologies share the same philosophy expressed in the Agile Manifesto,
however, there are different implementations with their own practices, processes, and techniques.
Extreme Programming
Scrum Lean Kanban
(XP)
Dynamic Systems
Crystal Development Method Feature Driven
(DSDM Atern) Development (FDD)
The Crystal family of methodologies was propagated by Alistair Cockburn. The fundamental or core
practices are small teams, frequent delivery, and osmotic communication.
Different levels of governance and visibility were required based on the type of project.
Extreme Programming (XP) was developed by Kent Beck and Ward Cunningham in the 1990s to:
• Respond to the high cost of changing requirements; and
• Institute strong engineering practices to improve software quality.
Introduction to Extreme Programming
XP introduced many revolutionary concepts to software development that have now become
standard practices:
Test Driven
Iteration
Development
Dynamic Systems Development Method (DSDM) was developed in the 1990s to provide more
discipline to Rapid Application Development (RAD). The latest version is called Atern.
1990s
Atern, a revised version of
DSDM, was published.
Introduction to Dynamic Systems Development Method
DSDM uses a prioritization technique called MoSCoW (Must, Should, Could and Won’t) to
determine which requirements should be included in a release or iteration.
MoSCoW Prioritization
Introduction to Dynamic Systems Development Method
Project life-cycle
1. Feasibility phase
2. Foundation phase
Pre-project Post-project
3. Exploration phase
4. Engineering phase
5. Deployment phase
Overview of Feature Driven Development
Features are small pieces of client-valued functions expressed in the form "<action>
<result> <object>"
Through decomposition domain models are broken down into subject areas which are then
expressed as business activities.
Features should not take more than two weeks to complete, or they should be broken down
into smaller pieces.
Agile Unified Process
Agile Unified Process (AUP) is based on the Rational Unified Process (RUP), which is a method of
managing Object Oriented Software. It is developed, based on the following best practices:
Manage requirements
Control changes
Knowledge Check
Knowledge
Check
Which of the following is not one of the XP Practices ?
1
A. Courage
B. Fine-scale feedback
C. Shared understanding
D. Programmer welfare
Knowledge
Check
Which of the following is not one of the XP Practices ?
1
A. Courage
B. Fine-scale feedback
C. Shared understanding
D. Programmer welfare
A. Pair programming
D. Osmotic communication
Knowledge
Check
Which of the following is a core practice in Crystal Agile methodologies?
2
A. Pair programming
D. Osmotic communication
Alistair Cockburn propagated the Crystal family of methodologies. The 3 fundamental (core) practices are small
teams, frequent delivery, and osmotic communication.
Knowledge
Check
In the MoSCoW model of prioritization, what does M stand for?
3
A. Most
B. Minimum
C. Maximum
D. Must
Knowledge
Check
In the MoSCoW model of prioritization, what does M stand for?
3
A. Most
B. Minimum
C. Maximum
D. Must