-
08 March 2010, 15:32
The Nokia Test
First of all, what is the Nokia Test? It is a two-part test to determine if a team is using Scrum, an agile software development framework. A test like this can be useful to determine if a team is doing "cowboy coding" or actually following a process.
The first part of the test checks to see if the team is using iterative development.
- Iterations must be timeboxed to less than 4 weeks
- Software features must be tested and working at the end of each iteration
- The iteration must start before specification is complete
Iterations are integral to Scrum. Without them, you aren't even using an agile methodology.
The second part of the test actually tests for Scrum.
- You know who the product owner is
- There is a product backlog prioritized by business value
- The product backlog has estimates created by the team
- The team generates burndown charts and knows their velocity
- There are no project managers (or anyone else) disrupting the work of the team
Is this comprehensive? Not at all. It doesn't at all mention a principle of the Agile Manifesto—periodic reflections. But it is a great way to filter out the cowboy coders and the plan-driven teams that masquerade as agile teams. In summary, it hits the target, but it's not a bullseye.
How is this test useful? Simple. If you can't pass this test, then you cannot say that you tried Scrum. In fact, if you could pass this test for any appreciable amount of time, then I still won't let you get away with saying that you tried Scrum.
With everything that has any good use, it can also be dangerous when used improperly. A vital part of any process is continuous improvement. Striving to pass a test might limit you in improving your process. Maybe something in the test isn't appropriate to the problem domain that you are trying to solve. But if you're stuck to the test, you can't make a change that might be necessary.
So should the test be made more strict/detailed? No, I think it is just fine. Anything that is too long will not be read. If I wanted to be an expert in Scrum, in order to thoroughly analyze a team's process, then I will read the Agile Manifesto and a book or two on Scrum. For those that want a quick spot-check, this test is perfect. And for that, I think this test is perfect.