What is Agile and Scrum? How to put it in practice?

Agile product development consists of an iterative approach to product/software delivery (time boxed) that builds software incrementally from the start of the project, instead of trying to deliver it all at once near the end.

Better to make mistakes soon in the process than wait until the end to realize that the product we are shipping has nothing to do the product our client was expecting”

Imagine that you were requested to build a super sports car. Instead of showing to client the final output 1 year after you get started you will start including the client in all the phases/cycles of your development. This will let you understand your customer goals when he can’t really conceive it’s own product, so you can keep adapting the project until you have a sports car. While the super car is not ready, at least your client will be able to play around with a non finished concept.

In agile environments, people refer to those time boxed processed as Sprints. Their length never exceeds 4 weeks and is never lower than 1 week.

On a typical agile workflow, people start building a backlog by grouping stories (things that we our product must accomplish). Those are then broken into smaller pieces, by the team, in what we call requirements/tasks.

To create a sprint we often bring our end users into the process by asking them to help us prioritising the backlog (yes, evolving the enduser in the process is one of the most important parts of having an agile mindset).

With our prioritisation completed we can start estimating the effort on each task and try to create a selection of tasks that we want to include in our development phase (sprint).

Once we start the sprint, our project manager will have instant access to the state of the project through the burn down chart. Basically, this chart shows how many tasks are left and how many days do we still have to get the job done and even the level of effort that the team will have to put to accomplish the deadline. Tasks that are not completed will transition automatically to the next sprint.

An example of burn down chart

 

 

Burn down – In this example you can see multiple sprints for a particular software module. You can also see an estimated number of sprints necessary to complete the module.

 

As you can see, burn down is specially useful to keep the project under control. Laying back and waiting for the cycle to be completed is not a great strategy for project managers. Sometimes you need to adapt things during project if you notice that the team is not handling the job.

In order to keep the team focused in the project, a 5 minute scrum meeting is organised each morning. In those meetings each team member contributes by saying what they did “yesterday”, what they will be doing today, and what they will do next day.

Next we will see scrum which is a framework that defined a series of rules to help you putting in practice agile techniques.

Leave a Reply

Close Menu