- The design
- The implementation
- The testing
- The deployment
- The documentation
Where Agile Fails

If you're a software developer looking to work in a modern IT organization, it would behoove you to get at least familiarized with Agile development.
More and more companies and organizations are embracing the agile development methodology, and like it or not, it is here to stay for the duration. Not to say something else won't replace it, or that Agile will evolve into something new (I'm betting it will), but it is certainly gaining key importance in many IT organizations (including my own).
A brief definition of Agile.
It's a movement that came into being as a soft of "revolution" against waterfall development.
To understand Agile, it's necessary to understand what Agile was trying to change.
Waterfall development, at its core, is basically breaking up an entire software project into distinct "phases". Each phase is sequential and the next phase can only being once the previous phase has been completed.
The major phases include the following:


