Purpose of this post is to compare different Agile methodologies and compare their respective strengths and weaknesses.
Scrum
Strengths
- Can be used together with an existing practice
- Accommodates feedback opportunities in teams that are self-motivated
- Supports customer involvement and direction
- Focuses on the business value of a project
- Contains a certification process
Weaknesses
- The only process supported is project management
- No technical practices are defined
- Time-consuming, especially when customizing priorities for requirements
DSDM
Strengths
- Demands a high level of testing – a minimum of one tester is required on every team
- Focus is on business value
- Clearly defines the importance of every requirement in an iteration
- Stakeholder expectations defined at the start of every project – specifies that every requirement may not be able to be fulfilled
Weaknesses
- Very heavyweight and demanding
- High level of user involvement required
- Requires a high level of documentation and specifies various work products for every project phase
- Reference material monitored by a consortium – fees are charged to access resources
XP
Strengths
- Requires rigid technical practices
- Estimates owned by develops
- Features owned by customers
- Supports regular feedback sessions
- Popular, especially in the US
Weaknesses
- Customers needed onsite
- Minimal record keeping - Verbal communication and code are used to document feedback and progress
- New users may find this method difficult to understand in terms of software architecture and design
Lean
Strength
- Can be used together with an existing practice
- Main objective is the project ROI.
- Keeps project waste to a minimum
- Supports cross-functional teams
Weaknesses
- No technical practices are defined
- Metrics collecting is constant
- Theory of Constraints can be difficult to understand and implement
AUP
Strengths
- Contains multiple artifacts and disciplines
- Can be adapted to large projects
- Supports a distributed team environment by using good documentation practices
- Bases priorities on levels of risk
Weaknesses
- Too many guidelines can slow project progress
- Team dynamics are neglected
- Documentation is very formal
FDD
Strengths
- Accommodates the need for multiple teams
- Monitors all project elements according to its features
- Contains design by feature and build by feature aspects that are simple to implement
- Can be adapted to suit large teams and projects
Weaknesses
- Does not support shared or team ownership of code; rather, individual code ownership is encouraged
- Iterations are poorly defined
- Model-centric aspects can impact systems if no models are in place
Crystal
Strengths
- Can be scaled according to project size and criticality
- Supports life critical projects
- Cross-functional teams created in proportion to the project size
- Considers the "human" element of the project support structure
- Demands a high level of testing – a minimum of one tester is required on every team
Weaknesses
- Each project has to be tailored individually, according to its size and structure in order to fulfil Crystals requirements for that particular type of project
- Does not support adaptations mid-project – not upward or downward compatible
No comments:
Post a Comment