Software for Good Logo
Insights / June 26, 2013

An Agile Example

By Dev Team

I recently attended “Foundations of Agile Development,” a course hosted by 3back Scrum Training with Agile Development Trainer Liz Weatherhead. The course was perfect for getting Agile concepts and vocabulary straight and understanding the differences between SCRUM, Agile Development, Test Drive Development, Retrospectives, and Kanban.

whiteboard

The class started with two visual exercises to explain the differences between waterfall and Agile approaches to project management.

Exercise 1: Build a Widget using a Waterfall Approach.

Rules: The team was spread across 4 stations and not allowed to speak with the other stations. The 2-3 people at each station were given a specific role and task and there was a project manager who pressured us and pushed us to perform, and we were to be timed.

I was at station one. Our task was to explain (without drawing) this figure.

waterfall

It was hidden beneath a white bed sheet so the other stations could not see what it was. The second station had to draw out what we wrote. Third station had to assemble it based upon the drawing. When the drawing got to the next table the project manager advised table one (my table) that there was a change order. We cheated and walked to the next table and told them…but you’ll see later that the message never really got through to them in the end. Fourth station was testing and quality assurance.

Here was the end result…

agile

This took our group around 25 min and we all felt rushed at each station. We all agreed that if we had more time we could have done much better. Most importantly, the end product looks nothing like what the client wanted.

Exercise 2: Build a Widget using an Agile Approach.

Rules: Very few. We had to self-organize and work together to duplicate a figure that was already built.

Liz set up one large table for us to work around. Since there were no roles, people were just going to have to figure out what they could do after the clients requests were given. She assembled the figure before we started, just like before, but this time we could all see the end result before the building began.

Some people naturally took on leadership roles and others just assembled each corner individually and then put it together with the other corners. About 2 minutes in she gave us a change order, and without getting flustered we fixed it in about 30 seconds. We all worked together, without confusion or wasted time, and we completed the task in 7 minutes. A perfect product was created and everyone was happy.

Wrap-up

I understand that this exercise is exaggerated and far from real life, but it effectively illustrated the differences between waterfall and Agile. Waterfall has process that is intended to guide the work, but it seems to just get in the way. It feels crazy why people would choose anything other method than an Agile workflow. Agile is fast, effective, and clean. Everyone knows what everyone is doing at all times, and you remain accountable for tasks you choose to do. You work together and communicate constantly, fail fast and refactor frequently.

There were a few other exercises that we did but they all boiled down to the same few lessons, agile is more adaptive, more visible, and more effective. Who would have thought the true simplicity of Agile project management can make such a large impact on productivity?