Myth: Agile is predicated on lies. The opposite of Agile is not waterfall. Waterfall is not a software development methodology.
There’s always a big discussion on the best software development methodologies used in the IT industry, but the most popular by far are Agile and Waterfall.
Waterfall is a technology delivery process that managers have traditionally used since the 1950’s to organise the analysis, design, development and deployment of software. In 1985, the United States Department of Defense captured this approach in DOD-STD-2167A, their standards for working with software development contractors, which stated that “the contractor shall implement a software development cycle that includes the following six phases: Preliminary Design, Detailed Design, Coding and Unit Testing, Integration, and Testing”.
Waterfall is a very effective method for suppliers to make money from fixed scope, fixed time, fixed cost projects because it forces clients to provide a large amount of time and money for the large number of changes that are inevitable in software projects.
However, Waterfall is a very bad method for developing software because it forces clients and software developers to focus on comprehensive documentation, contract negotiation, plans, processes and tools instead of the delivery of valuable working software. Many companies and procurement departments still insist on using waterfall methods to this day.
Agile is the opposite of this as you can see in the Agile Manifesto.
At IE, we are uncovering better ways of developing software by working this way and helping others work the same. Through this we have come to value:
- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Customer collaboration over contract negotiation
- Responding to change over following a plan