First Time Using Scrum to Build Software? Do it “By the Book”
Scrum, one of the most effective contemporary software development processes, is designed to be flexible but new practitioners often try to adapt and change things too quickly. The urge to customize Scrum based on old habits or outdated thinking typically leads to unsuccessful software releases - or worse, nothing at all.
Yuri Takhteyev, CTO at Rangle, recently discussed how a “by the book” approach is necessary to first learn Scrum before changes can be made. Here’s a brief overview from Yuri’s Web Unleashed 2016 presentation on how to get started with Scrum and why adaptations should (and shouldn't) be implemented by experienced teams only.
What is By the Book Scrum?
At Rangle, by the book Scrum is when teams closely follow the Scrum process based on Scrum: The Art of Doing Twice the Work in Half the Time by Jeff Sutherland and J.J. Sutherland. As one of the leading resources on how to do Scrum effectively and efficiently, Sutherland’s book is mandatory reading for all new staff at Rangle.
As the book explains, a lot of Scrum tools and processes may seem strange at first, such as 15-minute morning standup meetings and weekly retrospectives, but they turn out to be very effective later on. Therefore, Scrum should be done by the book before teams determine whether or not it works for them.
What Does a Typical Scrum Team Look Like?
For Scrum to be successful in building useful and innovative software, the right team must be in place from day one of the project. Interestingly, there are only two clearly defined roles in a typical Scrum team - the scrum master and product owner.
The scrum master ensures the Scrum process is correctly followed and clears any blockers which may impede the team’s progress.
The product owner, typically from the client side, serves as the ultimate authority deciding what to build and when.
The rest of the Scrum team is comprised of undifferentiated team members. There are no roles, ranks or levels. Team members work together as peers to build things agreed upon during planning. As a result, the entire team is collectively engaged towards solving key business problems.
Many teams new to using Scrum quickly go off track by adding unnecessary roles-- stick to the book on this as well to create a high-performing Scrum team.
Three Things to Never Remove From Scrum
At the heart of all successful Scrum projects are three important concepts that even the most experienced teams never eliminate. The first is being able to effectively prioritize user stories (which are tasks in Scrum).
To do this, all possible user stories needed to build and release the software must be captured at the start of each project. Then to effectively prioritize, teams simply question what they would work on to deliver the best software if it was the last week of the project.
However, note that ongoing prioritization and reprioritization are needed throughout the project as some important user stories may have been missed or overlooked. For example, if payment integration is needed for a retail app, and this functionality was somehow not included in the initial list of user stories, it should likely be prioritized above everything else. Not doing so could result in a release with unusable software.
Continuous delivery of software is also critical to doing Scrum well and should never be omitted. Continuous delivery enables Scrum teams to produce software in short cycles, ensuring that the software can be reliably released at any time. Teams that use continuous delivery in Scrum are able to build, test, and release software much faster and more frequently.
By delivering working software to your users early, you can quickly capture actionable data and receive timely feedback for future iterations. Using continuous delivery also reduces any uncertainties and establishes trust by showing value early and often.
Finally, continuous integration, a development practice that requires developers to integrate code into a shared repository several times a day, is always necessary to ensure that your project remains on track with minimal delays.
Without continuous integration, teams may not be able to detect problems early and critical errors could severely impact and disrupt the project.
Partner with Scrum Experts to Quickly Get Up To Speed
It may take many months or even years for companies to properly test by the book Scrum and be able to use learnings to adapt and improve the process. However, partnering with an experienced Agile software development and design firm like Rangle could eliminate a lot of unnecessary work and frustrations while ensuring that your company builds amazing software in a significantly shorter amount of time.
For more advanced information on Rangle’s experiences in developing software using Scrum, including the role of good Git practices, how to approach testing in an Agile process and how to integrate UX design with Scrum, watch Yuri Takhteyev’s presentation Process Hacking With Rangle Flow below.