When it comes to software development, Scrum is the go-to methodology for many leading organisations today. At its very core, scrum is in stark contrast to the traditional sequential “waterfall” approach which is a pre-planned sequence of steps for developing the end product, an “ideal” software application. Scrum, on the other hand, is iterative and agile — it essentially works on the principle that the complexity of software development makes it very hard to fix the scope of a project at the outset as needs and the definition of what’s ideal evolve over time. As the needs evolve, so must the strategies.
What is Scrum and why that name?
Scrum is an agile software development methodology that focuses on how complex projects are executed in the form of small tasks or time-boxed iterations called sprints, and reviews of those tasks in short meetings called daily scrums. Sprint reviews and retrospectives play a key part in assessing progress and relaunching necessary activities. Scrum methodology favours the means rather than the end, and lays emphasis on innovation, collaboration, analysis and flexibility according to evolving product needs. A majority of the time is spent not on planning, but on execution and delivery.
But why that odd name, one may ask.
Well, scrum is a term in the game of rugby when the play is restarted by forwarding players packing their heads down together to get possession of the ball back. This analogy was used in a 1986 Harvard Business Review article by Hirotaka Takeuchi and Ikujiro Nonaka who contrasted sequential models with a new approach to software development that was showing promising results. This new approach was based on high performing, cross-functional teams.
When Jeff Southerland developed the scrum process in 1993, he borrowed the name from the article for two main reasons. Firstly, scrum teams are all about interlocked, collaborative developers, each equally responsible. Secondly, just as in the game, a scrum team’s progress depends on everyone moving together for the common goal.
Chris Sims and Hillary Louise Johnson describe it best:
“It is a mindset change from doing my job to doing the job.”
The roles in a Scrum team can be broken down into three parts: the Product Owner, the Scrum Master and the Scrum team.
The Product Owner is one who envisions the product and what it will achieve, closely cooperates with the client and steers the agile team by managing and prioritizing items in the Product Backlog. Story points must be clearly validated during estimating stories from the Product Backlog, to enable the Scrum Team to meet targets.
The Scrum Master is responsible for how the work gets done, and one of his/her primary responsibilities is to remove any roadblocks and distractions that may hinder the achievement of goals. The importance of this role gets heightened in the case of startups which are typically vulnerable to many impediments. Scrum Masters are completely different from the conventional team leader, their role is more of a facilitator or servant-leader type.
The Scrum Team comprises members, ideally 5-8 in number, who collaborate, self-organise and often work across functions to complete a sprint. A typical Scrum team could have testers, business analysts and domain experts who negotiate commitments with the product owner, while autonomously choosing the tools and approaches for each of those commitments.
At the beginning of each project, the roles of Product Owner, Scrum Master and Scrum team must be clearly specified and responsibilities are made clear to give each member a sense and direction of their role.
Scrum for Startups
Because scrum is an inherently flexible methodology, it can be adapted to suit the needs of startups. However, it is important to inculcate the necessary organisational attitude, obey the principles and adopt the mantras of this methodology. A proven practice is to isolate the Scrum Team, especially in the first few weeks to experience the grace of Scrum.
Rithushaan is a tech enthusiast and a Senior Business Analyst at RailsFactory. Managing large scale SDLC projects and building strong relationships across teams is his forte which draws from his versatile experience in the IT industry.