Use Scrum as Part of Balanced Diet
[Another blog post inspired by a Quora question. This time, “What are some reasons why Scrum might not be the best agile methodology to use on its own?“]
Never ever use Scrum alone. Always connect and combine it with other ideas and frameworks. Here’s why:
Scrum is intentionally incomplete. It ONLY provides a control framework for managing the decisions and realisation of chosen iterative and incremental outputs, to hopefully generate desired outcomes. It provides minimal structures for feedback loops to connect decisions to outcomes, and back to next decisions – both for the product being developed, and the process how that product is developed. And it gives three interrelated roles that “play the game of Scrum” and breath life into it.
It does NOT define how the product is actually created – there’s nothing about the tools, techniques, processes etc. It does not define right architectures, UI designs, code patterns, or testing and integration.
It does NOT provide any guidance how the Product Owner can determine what features the product should have, how to actually prioritise the various options, who the stakeholders are or should be, how to make money with the product, or how to plan product strategy, among many other things.
It does NOT provide any guidance as to how the organisation around the Scrum Team should be structured or organised, nor does it give advice about organisational finances, HR and IT policies, marketing, sales, management, etc.
It does NOT provide guidance to how to develop the skills and competencies of the people in the team, or what those skills should be, beyond saying that the cross-functional team should contain all the skills and capabilities to turn desired output from the backlog to a potentially shippable product increment within one Sprint.
It does NOT provide guidance to how the people in the Scrum Team should treat each other, beyond the five values mentioned in the Scrum Guide. How do we argue? How do we decide? How do we care for each other? How do we bring new people into the Scrum Team, or deal with the departure of team mates? Who are the right people, and how do we find them?
And there’s many other items it doesn’t contain. In fact, 99% (← surely a made-up number) of the things you need to run a successful Agile project or product team with Scrum. It may be a central control piece bringing all the various bits together, but that’s it. You can even replace it with Kanban (or some other Agile framework), and the other 99% would still be needed.
Unfortunately, a lot of people don’t understand this, and as a consequence, so many Scrum implementations are woefully ineffective or even harmful. 🙁 They repeat the motions, but lack the soul. Or they try to “do Scrum” in an environment that doesn’t in any way support it.