How do you manage software quality in Scrum? In traditional waterfall projects, teams will try to detect bugs in the final software testing activities like integration and acceptance tests. With the short timeframe of Scrum sprints, this approach does not work for Agile projects. In his book Scrum Product Ownership, Robert Galen provides some guidance on how to build quality software with one fundamental tip: you don’t test quality!
Quotes on Scrum and Agile Project Management
We all know the “Definition of Done” used in Scrum for items that should be potentially shippable to the customer at the end of the sprint. In his book Essential Scrum, Kenneth Rubin discusses the “Definition of Ready” that applies to product backlog items that should be ready to be developed before the start of the sprint.
The creation of Agile approaches was also a reaction against huge and useless requirements documents, either textual or using modeling techniques like UML. All the values of the past should however not be discarded in the requirements activity. In his book “Agile Software Requirements”, Dean Leffingwell explains how user stories are different from use cases and software specifications.
The last Agile Manifesto principle states that “At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.” For Scrum teams, the sprint retrospective is therefore a key meeting for continuous improvement. The results are however not always satisfying. In his book “Essential Scrum“, Kenneth Rubin discusses the most common issues in sprint retrospectives that he has noticed in his Agile coaching experience.
If delivering business value should be the main goal of a software development project, not all the developers’ activities are contributing to this objective. In his book ” Scrum Shortcuts without Cutting Corners”, Ilan Goldstein discusses how you should deal with bugs and the technical aspects of your software project.
Even if Agile was initially considered as an anarchic approach due to practices like self-organization, the reality is that it requires a lot of discipline. Metrics is an important tool to assess the continuous improvement efforts of Scrum teams. However, setting a good metric program is not obvious. The book “The Agile Culture” contains interesting thoughts about what could make a metrics program fail.
Budget-based project management is an alternative to classic estimates that has some following in the Agile community. In their book “Fifty Quick Ideas to Improve your User Stories”, Gojko Adzic and David Evans, discusses how using a budget instead of estimates can help to deliver better projects.