Part 2 in a 3 part series
How many times have you seen situations when internal communications fail and everyone suspects that it’s directly impacting the quality and reliability of the software modules being developed? In fact, you may not even be building the right product or services.
- Without a well-maintained flow of communication, information is not properly propagated or tracked. This can result in incomplete design, missing required features, and need for significant changes during the development process.
- When applications are built in different environments by different teams (development, integration, test, etc.) environmental differences and version mismatches can result in different application behavior. This makes problems difficult or impossible to reproduce, substantially increases overhead for the involved teams, and can cause major delays in schedule.
- Installation instructions are used for deployment in different environments. Those instructions can often change and may not be 100% correct, resulting in errors when the application isn’t installed properly or acts differently.
- Manually moving and installing the application costs time. Instructions can be forgotten while moving or installing from environment to environment.
- Repetitive and manual tests slow the release progress if there is a battery of tests to run through every time there is a new package.
Catching errors late in the process causes everybody to rush to make deadlines. The deadlines are often missed anyway and haste late in the process frequently results in reduced quality—so the product is both late and buggy (and probably over budget).
Implementing a DevOps approach can prevent these problems—because DevOps is all about business agility and continuous delivery.
In the last blog post in this three-part series, we’ll look at how we could solve it and how to achieve results for companies and their customers.
By Fabio V.