What is Scrum
Let’s unpack this concept together
Have you ever heard of the term Scrum? I bet you’re thinking of a rugby field with men huddled together, scrambling for a ball, right? Well, SCRUM is also an agile, effective and efficient way of developing and sustaining complex software products which App Inlet has adopted.
The old school way of development is called the Waterfall Model, which is used to organise and deliver software in consecutive phases as follows:
Analysis Phase: An analyst gathers the project requirements.
Design Phase / Wireframe Stage: This is when code and other artefacts are planned and modelled.
Implementation Phase: The designs are used to build the product.
Testing Phase: Testers ensure that the product meets a high degree of quality.
Product Release Phase: The product is delivered to the public and ongoing support and maintenance are done in a live environment.
SCRUM consists of self-managing, cross-functional teams, which means that the teams consist of a group of people, who each have different areas of expertise, and work together for the same outcome.
SCRUM also allows clients to give their input during the course of production rather than having a backlog of adjustments to amend at the end of the process, right when we think we’re done, which the Waterfall Model fails to provide. Let’s dive a little deeper into the SCRUM process theory. In order for this model to be effective, it relies on 3 key principles, namely: Transparency, Inspection and Adaption.
Transparency: The SCRUM team all agree to be honest in all that they do on a project. This means that a project is not completed until it meets the entire team’s definition of done. There is no “almost done” in SCRUM, only done or not done.
Inspection: This is the principle of ensuring that the team consistently checks up on the level of progress and makes improvements and changes based on what they have seen.
Adaptation: This relates to the continuous improvement of practices whilst sticking to values and nurturing effective communication.
By following the 3 principles of SCRUM, we are able to design and build complex solutions for our clients as a trustworthy and flexible team. With these principles as the foundation, we can begin planning out SCRUM sprints.
Sprints are not just things that happen when you move your legs really fast… they are also what happens when SCRUM teams move their fingers really fast. App Inlet’s SCRUM team work in sprints of 2 weeks to complete a set amount of work. In order for sprints to be effective, team members must understand and make use of the terminology that defines it:
Sprint Planning: What must be delivered in the next sprint, how it will be achieved and who it will be assigned to.
Sprint Backlog: All the upcoming projects which need to be planned out and completed in future sprints by the team.
Sprint Reviews: The client is shown the achieved work of the entire team.
Sprint Retrospective: The SCRUM team meet to reflect on the work done in the sprint so they can improve and make changes before they begin the next sprint.
Thereafter, the whole process starts again for the next sprint. This system ensures that developers are consistently adapting to and communicating the different areas needing improvement before, during and after the release of the product. Making sure that the client is always aware of what is going on and is happy with their product.
Now that we have defined SCRUM, its principles and the concept of sprints, we can look at the team members needed to implement this model. SCRUM outlines 3 roles: Product Owner, Scrum Master and the Development Team. These roles describe the key responsibilities for those on the SCRUM team. This allows teams to take responsibility for how they organise themselves and allows for collaboration and constant improvement.