Download Prospectus

What is the Scrum Methodology?

You might remember from our article on Agile software development that we mentioned there were several Agile features. These are things like what aspects of Agile will we use or not use and what way will we implement Agile into our business in a way that works for us.  One of the ways in which Agile is implemented in many IT companies is through the Scrum methodology.

Scrum Methodology

This is one of the implementations of agile methodology in which incremental builds are delivered to customers in iterative cycles of 2 to 4 weeks.  Once an organisation has decided on their preferred sprint duration this is generally not changed.

Scrum teams are self-organising and cross functional teams of between 7 and 10 members.  There are three roles in a scrum team: product owner, scrum master and development team member.

An image of the processes within the scrum methodoology

Scrum artifacts

We have a term in Scrum called ‘artifacts’, which basically means features.  Various artifacts of scrum are:

  1. Product backlog
  2. Sprint backlog

These artifacts contain a list of Epics (a user story that can’t be delivered in one sprint – a sprint is period of time where development and testing is carried out) and User Stories (a natural language description of a feature of the system), ordered by their priorities.

The product backlog contains a list of all the stories that are available and need to be developed.  The sprint backlog contains the list of stories that the team plans to work on in a particular sprint.

Scrum events

The sprint starts with sprint planning, in which the top priority stories from the product backlog that are available to be worked on by the team in the current sprint are added to the print backlog.

Every day a small activity called daily stand-up is done to track the amount of work left.  A stand-up is a short, 15-minute meeting, where each team member confirms what they completed yesterday, what they are planning on working on that day, and any issues they are facing.  At the end of the sprint, there is a sprint review for the product owner to ensure that the delivery is as expected.

After that, there is another activity named a sprint retrospective, where the sprint is reviewed and opportunities for further improvements are discussed.

Implementation of Scrum in a Agile methodology

Let’s look at an example of a tech company.  This company is in the restaurant listing business where a user can open an app and look for nearby restaurants.  Imagine these features are in line for the next release:

  • Rate/review a restaurant.
  • Filters for search
  • Online ordering

This team follows the scrum framework.  All the features above are Epics and described below:

  • As a user, I should be able to rate the restaurant so that I can share my experience with other users planning to visit the same restaurant.
  • As a user, I should be able to apply certain filter in the search so that it is easier to find restaurants based on my choice.
  • As a user, I should be able to order food online so that I can enjoy the food from my favourite restaurant without going there physically.

These Epics can be further split into small, independent, negotiable, valuable, estimable, and testable user stories which can be developed and delivered across multiple iterations.

As an example, let’s take the first Epic – rate and review restaurants

Reviews and ratings help the app gain trust among the users by adding a social validation. It tells users about various aspects of the restaurant like food quality, service, hygiene and so on.  Imagine we want to have the following functionalities in this feature:

  • Rating on a scale of 1 to 5
  • Review description
  • Ability to add photos to the reviews.
  • Ability to share reviews on social media platforms.

Building this feature with all the functionalities listed in one development cycle will be difficult.  So, we need to think about prioritising and delivering the functionalities in parts, incrementally across multiple releases and this is where Agile comes in.

In the first iteration, we could build the two most essential parts of the functionality, such as the rating on a scale of 1 to 5 and writing a description review with a limit of 100 characters.  In the second iteration the team got feedback from customers that only 100 characters is not enough.  They will enhance that feature by increasing the limit to 200 characters, and in addition the team feels that giving users the option to add photos to the reviews will help in increasing the genuineness of the review.  They include building this functionality in this sprint also.

In the next iteration, to increase user engagement on social media sites, the functionality to share reviews on Facebook can be delivered.  Other platforms like Twitter and Instagram can be added later in subsequent iterations/releases.  Also, the rating can be split into multiple sections like quality of food, expense, ambience etc. each on a scale of 1 to 5.

So, from looking at the above examples, you can see that neither iterative nor incremental would do the job perfectly alone.  We can’t build anything without iterating to some degree, and we can’t release anything without incrementing to some degree.  So, we develop software iteratively and incrementally in various sizes over time – which is what Agile is all about.  You can find out more about Agile, and software development in general, through our courses in Computer Science.

Our Courses

Interested in computer engineering? Find out more about all the computer engineering courses we have available by clicking here.

Diploma in Computer Engineering

Diploma in Computer Science

Diploma in Artificial Intelligence

Alternatively, you can view all our online engineering courses here.

Recent Posts

Understanding the mechanisms involved in a voltage amplifier

Understanding the mechanisms involved in a voltage amplifier In our previous articles, we discussed analogue signals and their characteristics.  We’re going to dive a little deeper into analogue signals and see how a voltage amplifier works. What is an operational amplifier? Operational amplifiers, or op-amps, are one of the basic building blocks of analogue electrical […]

Characteristics of analogue electronics

Characteristics of analogue electronics In our previous articles, we’ve discussed subjects such as the different types of semiconductors and how they work.  We’re now going to focus on analogue electronics—what it is and its characteristics. What is an analogue signal? An analogue signal is continuous; in other words, it can have an infinite number of […]

The structure and mechanism of a Bipolar transistor

The structure and mechanism of a Bipolar transistor In our previous article, we discussed the operation of metal oxide transistors, and now we’re going to have a look at bipolar transistors.  We’ll look at their mechanism and how they work. What is a bipolar transistor? A bipolar junction transistor is a semiconductor device which can […]