In the seventh installment of my blog series on “20 Controversial Topics of Debate in Agile“, the topic of debate is: which “flavor” of Agile is best? There are many flavors of Agile, but the best one for your organization depends on your unique needs and situation.
Many of these Agile approaches can be combined in various ways to create hybrid versions, but those are out of scope for this blog.
NOTE: I will not be covering scaled Agile approaches – that is a whole other topic I don’t want to touch with a 10-foot pole.
Comparison of Agile “flavors”
The chart below shows a short comparison of the different Agile flavors, with a focus on value and process:
Values | Process / Properties | |
Scrum | Commitment Courage Focus Openness Respect | Sprint planning Sprint Sprint Review Sprint Retrospective Daily Scrum |
Kanban | Focus Decrease Waste Customer needs come first | Ideation Replenishment Development Acceptance Production |
FDD | Deliver what the client values | Develop overall model Build a feature list Plan by feature Design by feature Build by feature |
Lean | Eliminate waste Amplify learning Decide as late as possible Empower the team Build integrity in See the whole | Process mapping Set-based design MVP delivery Rinse & repeat |
XP | Communication Simplicity Feedback Courage Respect | Release planning Iteration plan Acceptance test Standup meeting Pair negotiation Unit test Pair programming Code |
DSDM | Focus on the business need Deliver on time by timeboxing work Emphasize collaboration with: – end-users – team members – business representatives – other stakeholders | Pre-project Feasibility Foundations Exploration Engineering Incremental Deployment Post-project |
Crystal | People Interaction Community Communication Skills Talents | Easy access to expert users Personal safety Focus Technical environment Frequent delivery Reflective improvement Osmotic communication |
So, which one is best?
I’m going to fall back on my usual consultant answer: “It depends”. While Scrum is by far the most popular, that doesn’t mean the other methods out there aren’t worth considering. It depends on what project you are tackling, the type of project it is, if you have access to a fully cross-functional team, the complexity of the work, dependencies, etc.
How about hybrids?
Personally, I don’t think there is anything wrong with borrowing from any of the other Agile flavors. If there is a specific principle that speaks to you and you want to experiment with it on your team – go for it! See what works, what doesn’t, and continue to adapt and improve.
What about Agile at Scale?
I already said I wouldn’t touch that topic with a 10-foot pole, and I won’t. All I will say on the subject is that if you can avoid having to scale – avoid it. If it’s unavoidable for whatever reason, stick with the lightest-weight option you can find, and integrate as few teams as possible. My vote on this (if I had one), would most likely be Scrum.org’s own scaling offering: Nexus.
Now, it’s your turn: what do you think?
I’m curious to hear your opinion, so please share it with me in the comments below. My guess is that the vast majority of folks are using Scrum or some hybrid version of Scrum combined with principles borrowed from some of the other Agile frameworks. Let me know if my guess is right!
Next up in my blog series:
- Can you use a Sprint 0 in Agile?
- Do you need Documentation in Agile?
- Is there a “right” way to write User Stories?
- What’s the best way to write Acceptance Criteria?
- How long should your Agile sprints be?
- Should all your Agile teams be run the “same” way?
- Which “flavor” of Agile is best?
- Can Agile co-exist with Waterfall?
- Story Size – What’s an Epic, Theme, Feature…?
- Can the Scrum Master be a team member, too?
- Can distributed Agile teams work?
- How should you estimate in Scrum & Agile?
- Is it OK to add items to the current Sprint?
- How should you manage your Agile backlog?
- Can an Agile team have more than one Product?
- What is the optimal size for Agile teams?
- Should Agile teams stay together?
- How should you handle defects in Agile?
- Can a hybrid of Waterfall and Agile succeed?
- What are the official roles on an Agile Team?