Tips to select "Agile Delivery" methods
For every organization transformation or implementation of Agile journey is really daunting task . It's every organization dilemma, which Agile methodology to pick from list.
Each organization go through same pain and process like "Winnie the Pooh" in honey hunting.
In this article we cover few agile methodologies (SCRUM, Kanban, XP, FDD, DSDM, Crystal ). These methodologies work best at "development" or "implementation" area only . Refer " Portfolio, Program, Delivery" figure .
The article assumes you have already working on Agile and have good exposure in this area.
In any agile project, you would need commitment from every one (developers, business leaders, management and customers)
- To have close collaboration and face2face communication
- Making sure team is aligned to latest trends and technologies (to achieve bigger picture)
- Have mind-set to have frequent/incremental delivery and tight leash on the process.
The "Agile Umbrella" items as shown above fits into delivery layer of the the below "Portfolio, Program, Delivery" frame-work.
Walk through on various Agile is as follows
SCRUM:
Short Intro:
- Scrum is most used development part of the Agile (self explanatory) . It is framework of managing and controlling iterative work at the project level.
- SCRUM starts at "product backlog" ends with delivery (ie production).
Program and Portfolio level:
- It would need different framework (existing firm framework or some others) to manage at program, portfolio levels.
Use this when, you have following situation.:
For IT product shops for on-going development.
When, you are OK with little documentation
Where you have commitment from organization for this kind of approach
XP (Extreme Programming):
Short Intro:
- XP is most used where high level involvement between customer and development team
- Fast , aggressive deliver model, where team is close knit and dedicated team to who has very good knowledge in XP.
Program and Portfolio level:
- It would need different framework (existing firm framework or some others) to manage at program, portfolio levels.
- Less suited for this area, compared to SCRUM
Use this when, you have following situation.:
For small dev teams with very senior developer with excellent communication skills.
You are OK with little documentation.
Pair programming and code reviews, development practice
Needs more discipline than SCRUM , useful for small projects
FDD (Feature Driven development):
Short Intro:
- FDD used for very development-centric modelling feature
- Tight control on the process, lot of documentation
- High quality code design and used for very complex projects unlike scrum and XP
Use this when, you have following situation.:
For corporate, public sector, R and D, regulatory environments .
Needs more discipline than SCRUM and XP . Its development centric products with long-term vision.
Kanban:
Short Intro:
- Kanban comes from "Lean" methodology .it's useful "workflow" streamlining
- It helps in creating product without burdening development team. Can be used for "ticketing system" kind of usage
- Very light-weight,
- Kanban can identify bottlenecks, waste , reduce wait time and increased efficiency
Program and Portfolio level:
- It would need different framework (existing firm framework or some others) to manage at program, portfolio levels.
Use this when, you have following situation.:
Organization the need small, regular and incremental changes
Complex work systems that has long lead times
Less complex and lightweight the scrum.
DSDM(Dynamic Systems Development Method):
Short Intro:
- DSDM uses Rapid Application Development (RAD) method
- Useful for IT and Non IT projects, strong emphasis on project management.
- Plan evolves based on increments
Use this when, you have following situation.:
Highly dependable
Provide defined guidelines for business system
Highly structured
Crystal:
Short Intro:
- Crystal is most light weighted and adaptable approaches to software development.
- It has various flavors to support small with low critical to large with high critical
- Scaled according to team size, different colors denote the weight (clear, Yellow, Orange, Orange web, ...., Sapphire)
Program and Portfolio level:
- It would need different framework (existing firm framework or some others) to manage at program, portfolio levels.
Use this when, you have following situation.:
For business critical and priority systems
For close knit teams with "co-located team)
You need light weighted methodologies, no rigid process
Conclusion:
We have discussed on few Agile methods . Stay tuned for next article on other Agile methods.