I’m a big fan of the show “Silicon Valley” on HBO. It’s well-written, funny and very likely the only show you’ll ever see where Agile development methodology and scrum management framework are used as comedic devices.
Yep, it’s geek humor. But the joke also points out (to both the technical and non-technical) how using Agile and Scrum turns a chaotic and disorganized development project into a streamlined, efficient and effective way to get things done. For that reason, I’m also a big fan of Agile development and Scrum.
So, what is Agile development and Scrum?
Perhaps the best way to describe them is to first say what they are not. In a traditional (what is a “waterfall”) project methodology, the flow of the project goes something like this:
Requirements analysis… then Design… then Code… then Integration… then Test… then Deploy.
In large projects, the waterfall method can be difficult as essentially you’re building the entire product/website, etc. in the hope that you have gathered every requirement and anticipated every pitfall beforehand. That’s not only difficult with some projects, it may be entirely impossible.
Agile and Scrum looks at the project differently. Rather than building the entire project before putting it out there for review, with Agile and Scrum, you develop the project collaboratively during intensive "sprints" of work. Each sprint is designed to release a finished version of the project. From there you analyze, review, adapt and plan for the next sprint for the next version project release. Keep in mind that the project can be a web application, a website, a mobile app, etc.
So, why use Agile and Scrum?
If this sounds familiar: “Yep, that’s how we thought it’s supposed to work, but now that I actually see it… we can’t do it that way.”
With traditional development methodologies, that fact might not be discovered until the very end of the overall project and will surely result in big changes, big additional costs and loss of time. With Agile and Scrum, those questions are touched on immediately during each development “sprint” and then adjusted to accordingly.
In the end, Agile and Scrum can save vast amounts of time, budget and reduce project risk, not to mention produce a far superior end product.
Who knew they could also be funny?