Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ


Choose your language

InfoQ Homepage News Improving Quality and Delivery Speed with DevOps Teams

Improving Quality and Delivery Speed with DevOps Teams

You can increase the quality of products by constantly increasing the level of automation of the delivery process and working with DevOps teams who constantly deliver small features to get quick customer feedback.

Andreas Prins talked about the improvement of quality without testing experts at the Agile Testing Day Netherlands 2015 conference. He presented a case story from ING Lease, a department from a major bank which is headquartered in the Netherlands. In his talk he explained the problems that they had, shared his experiences from the first steps of their agile and DevOps journey and presented what they want to achieve in the future. He also showed how their approach has reduced the need for specialized test professionals.

Before they started with agile projects took months or even years to finish, and it took long to get feedback from the business and end customers. They lacked automation in the delivery process, the chances of human errors were high. Also there was limited test automation.

Their journey started when a new company strategy was announced, which included statements like "anticipating customer needs" and "constantly improving". The IT strategy gave direction to their journey by stating that agile should become the way to think and act, using Scrum as a framework for teams where development and operations should work together to change and maintain the software.

Having development and operations in DevOps teams with a constant flow of small features helped to bring down the number of incidents said Prins. With agile the quality of the software was improved by having small pieces of work. By frequently deploying the software the feedback loop has become much shorter and you get more feedback.

ING has been automating and standardizing the process. Teams look which tools are available and pick the ones that help them to automate their work. The code coverage of testing has increased. The goal is promote software from environment to environment (e.g. from development to build and to release) without manual labor said Prins.

By automating so many checks in their development process we have to questions if we need more specialized testers said Prins. You can automated a whole lot of testing in the early stages. For instance, when users provide their scenarios, developers can create the test scripts. Since the business delivers their acceptance tests up front which are automated the need for a specific acceptance test phase is under discussion.

We don’t need extended testing of new software since the software we deploy to production is very small. We try to deliver on a frequent basis so the delta is small. This has an direct impact on regression testing. That is the reason why automated tests are executed continuously said Prins. Before we deploy there is always a peer review of the code by an other engineer. And at the end of the sprint, when we move to production, the product owner and key stakeholders approve the stories during the review.

Continuous improvement must be embedded in the organization said Prins, everybody has to take small steps to improve in every sprint. DevOps teams use data from monitoring tools to learn about how systems are used and to get extra information about the usage of the systems for testing. They do pair programming for difficult features to improve quality.

Prins explained the approach that he takes as a manager to support his teams:

  • Let the team decide and take responsibility.
  • Do not manage teams but facilitate them and make time available to support the team.
  • Give room for teams to fail and learn.

He concluded his talk by stating that "Continuous improvement should be part of everyone’s DNA to really excel in what we do!".

Rate this Article