Recently, I attended a workshop discussing about an interesting framework of software development. It injects a rather new taste into traditional waterfall software development that I know of. It is called Scrum. Scrum is one of the many Agile methodology founded upon or built up from the Agile Manifesto. The manifesto concentrates on areas that my generation of IT professionals tried to move away from.
1. Individuals and interactions over processes and tools
2. Working software over comprehensive documentation
3. Customer collaboration over contract negotiation
4. Responding to change over following a plan
The catch is items listed on the right is important, Agile adopters 'value' more, the items on the left.
Interestingly enough, a very loosely defined Agile Manifesto now has several framework that is designed based on this manifesto. Some of the more famous ones are: Scrum, Extreme Programming (XP), Lean, Crystal, Feature Driven Development (FDD) and Dynamic Systems Development Method (DSDM).
Scrum in a nutshell is quick shot of software development, that attempts to produce working software within a period of about every 2 - 4 weeks. One period of 2 - 4 weeks is known as a sprint and every sprint produces a working product. Team works things out among themselves and they produce what Product Owner wants with the facilitation of a Scrum Master. The team is independent and the core of how this works is that, the team has to be protected and trusted to get the work done.
The traditional Gantt Chart that serves us so well with a lot of other tracking tools are thrown out if you decide to use Agile. In place of that, we have burndown chart and product/sprint backlog. Though a lot of tracking tools are thrown out, we have to follow a few Scrum rules closely, meaning, it should not be skipped to ensure success.
Of course there is a lot of debate on whether it works, it is not difficult to understand, but it may be difficult to implement and blended into our traditional environment. It may seem that a lot more issues will crop out as it is implemented, but then again, nothing good comes easy. Anyone who has implemented Scrum, do share your experience with me. I am all ready in reading your experience :)
~~ Show me the data.