In recent years, the software industry has seen a major transformation in the way that software development is carried out. The relationship between the software development team and the customer has been changed forever by Agile development practices, organised around regular, short release cycles (typically two to three weeks).
Most crucially, the Agile method recognises that very often the customer does not even know what he wants the software to do, and requirements can change over time. In an Agile environment, the customer is presented with an (incomplete) software release after every sprint, and comments, feedback and even specification changes are encouraged.
There are many case studies demonstrating where the Agile method delivered better software to the customer, at lower cost and faster than traditional Waterfall methods would produce.
Agile development typically focuses on the relationship between development and testing, and this drove the adoption of similar practices into other parts of the business.
A DevOps workflow takes the transformational changes that the Development and Testing teams have experienced through Agile and brings these to other parts of the business. The name DevOps is a contraction of the words Development and Operations, in recognition of its broad scope.
DevOps transforms the company culture, so that everyone takes ownership of the delivery to production. Barriers between teams are removed.