Monday, June 9, 2014

What is Scrum?

The Scrum trainer and coaches community is working on a revision of Core Scrum. It is a passionate group, and each member feels passionate about Scrum. Not surprisingly, there are (at least) as many different understandings of Scrum as there are members of the community. This discussion inspired me the think about what does Scrum mean for me?

My goal is that each project I work on should be the best project I ever worked on. Each project should achieve great results. Scrum helps me achieve both goals.

What follows is my view of Scrum. It is the vision I try to pass on in my courses and the vision I try to live in my own projects. I hope it is also the start of an interesting conversation!

Introduction - What is Scrum?

Scrum is a simple, team-based framework for solving complex problems. Scrum is a framework for transforming your working environment into a much better place. Scrum is a mindset.

The core of Scrum can be summarized in two words: Inspect and Adapt. The roles, activities, agreements and instruments defined in Scrum exist to enable inspection and adaptation at regular intervals on the basis of correct and honest information.

To adapt means to change for the better. So Scrum is not simply a framework for building great products, it is a framework for transforming your environment into something better. A willingness to change is essential for success with Scrum.

There are many issues that Scrum does not address. Scrum does not tell you how to develop software (or solve any other problem area). Scrum does not say anything about the structure of your organization beyond the Scrum Team. Scrum does not tell you who answers the phone when the customer calls.

What does Scrum help you do?

Scrum does help you recognize issues quickly. Resolving them is your job. How to solve those issues? Those pages are left blank, so you can develop, adapt or evolve great approaches to fit your context. And there are many practices, from Extreme Programming, Lean Thinking and Kanban, to Radical Management, Management 3.0 and Lean Startup, to name but a few, that can help you in your situation.

Through its simple framework, Scrum helps you eliminate the common sources of dysfunction in projects. In particular, excessive multitasking, too much work in progress, and unrealistic expectations can be hugely detrimental to your performance. Scrum enables you to create an environment that values focus, finished work, a sustainable pace and true collaboration.

Scrum is a reference implementation. A reference implementation can be a good place to start, because it is known to work effectively. It’s also a reference for evaluating your own approach and its effectiveness. Is pure Scrum “by the book” the only way to inspect and adapt effectively? Of course not! Is the best way? There is no single best way. But if your approach has you inspecting and adapting less often than Scrum, you are probably less effective than you could be.

So as you practice Scrum, sooner or later your approach will evolve away from Scrum by the book. That's OK, as long as your changes are genuine improvements, that is, they cause you to inspect and adapt more often.