by Jese Navaranjan, Power BI and Power Apps Consultant at Altius
My colleague from our Amsterdam office, Alex Ridden, recently wrote a blog explaining the virtues of an Agile approach to data science projects. I joined Altius in December 2018 as a Power BI and Power Apps Consultant, fresh from a role as an internal data analyst. I was accustomed to being set tasks and working individually until I got the job completed. Over the last nine months I’ve experienced a baptism of fire into the wonderful world of Agile and more specifically Scrum methodology. I wanted to delve a little deeper into Scrum to explain how it works, why it works and to share some of my experiences.
What’s the difference between Agile and Scrum?
Firstly I should start by explaining the relationship between Agile and Scrum. Think of Agile as the umbrella brand – the guiding principles for a project approach. Scrum is a specific set of rules that sits under this umbrella. There are plenty of other sets of rules, each with their own wonderful titles including Kanban, Lean Software Development and Extreme Programming (XP), to name but a few.
The question of who invented Scrum appears to be up for debate. Some people claim that Jeff Sutherland, John Scumniotales, and Jeff McKenna invented it in 1993, whilst others claim Hirotaka Takeuchi and Ikujiro Nonaka invented it back in 1986. I don’t know which is right, but I do believe that the name was taken from the game of rugby, where a scrum is a high performing, cross functional team that gets their heads down and is committed to a common goal – to gain possession of the ball.
We certainly juggle balls sometimes and have our heads down a lot. I’d suggest we could be likened to a team of meerkats playing rugby, because every so often we’ll all stop what we’re doing and poke our heads up to look around – and that’s the very nature of Scrum methodology.
As I mentioned at the start, I came to Altius with no previous experience of Scrum, but I very soon got the hang of it and quickly understood why Altius deploys it. It’s highly collaborative. It’s iterative. It provides incredible flexibility and agility. And yet it’s also extremely focused. And it gets the job done – quickly and with results.
My Scrum baptism involved learning on the job and also sitting down with different members of the team to understand their role and how it all fits together. I quickly learnt about Scrum Ceremonies, which are the essential touch points for a project team. To keep the rugby analogy going, it would the equivalent of the referee blowing his whistle so the team stops what they’re doing. There are five different types of Scrum Ceremony. These are:
- Sprint Planning – All Agile projects are completed in iterative cycles call Sprints. In my experience, these typically last around two weeks. Sprint Planning brings the team together to plan the work that’s going to be completed during the next sprint cycle. My team then uses Azure DevOps to plan and record our team’s tasks.
- Daily Scrum – This is a short daily meeting where we quickly review what was done yesterday; agree the key focus for the day and discuss any other business. It’s a great way to ensure the team is on the same page and identify any potential issues.
- Sprint Review – A Sprint Review is completed at the end of a Sprint Cycle and looks at what has been delivered. This is an opportunity to show the client what’s been done so they can provide input and influence the tasks set for the next Cycle.
- Sprint Retrospective – This is where the post-it notes come out and the team reviews lessons learned. We’ll ask ourselves what went well and what could have gone better?
- Backlog Refinement – There’s always a long list of tasks to be completed and this is where we review the ‘backlog’ with the client to allow everyone to have sight of what work is still available to be planned.
Introducing a Scrum Team
Like any successful team, a Scrum team has different roles, which are a mixture of people from Altius and the client’s project team.
- The Product Ownercomes from the client’s team and is the one who owns the product being built. This person is responsible for communication across teams.
- The Scrum Master is the member of the Altius team who is responsible for overseeing and setting up all the Scrum Ceremonies. They are also there from a managerial perspective to handle any issues that may arise.
- The Development Teamis the team doing the build, test and any other tasks required as part the software deployment. This team can often be cross-functional.
Why does Scrum work?
My old colleagues who aren’t familiar with Agile or Scrum have asked what I like about it and why it works. I think the six main principles of Scrum highlight exactly why the approach works. Here goes:
- Empirical Process Control – Scrum’s iterative process means decisions are made based on experimentation and observation. The client has a lot of visibility, which means we can be very adaptable throughout a project’s lifetime and change direction if necessary.
- Self-organisation – Scrum teams are responsible for organising themselves and taking ownership of their own tasks. On a personal level, I like the fact I’m not micro-managed and I’m accountable for my own time and delivery.
- Collaboration – Scrum relies on the fact that our technical experts will be working closely with our client’s product team. That’s a recipe for success as they are the project experts and we are working to make sure their needs are met.
- Value-based Prioritisation – We work hard to understand what tasks are going to deliver the most value, so that we can prioritise them. Our clients can always log in and view the tasks and provide input, which enables us to change direction or reorder priorities if necessary.
- Time-boxing – The fact that tasks and meetings have clearly defined time limits, provide focus and speed up delivery.
- Iterative Development – Because we’re constantly working on small chunks of the final product, we can make changes as we go, which is far easier than trying to retrofit adjustments to an almost finished product. It saves a lot of time and effort in the long run.
From a personal point of view, I love the accountability that Scrum affords me. Everyone across the team always knows exactly what’s going on and because we have constant deadlines it provides focus. I also love the fact that I can work to my strengths, but within a close-knit team, that I can also learn from. And I enjoy working closely with our clients to build something that they can see develop and that they can influence. Scrum just makes sense all around!