A unique approach to build better software.
Help your development teams benefit from innovative concepts by embracing code quality throughout the software development life cycle, while focusing time and energy on new features.
The Water Leak Paradigm
The approach we recommend to code quality? Manage it as a water leak, fix the leak before you mop the floor!
Why? Otherwise you’re just wasting your time and energy. For code quality, the same logic applies; you should get the quality of new - changed and added - code under control before anything else. Once that leak is under control, code quality will start improving systematically.
Adoption and Empowerment
Code quality should be the concern of every developer, not just a few experts.
Once you switch to a Water Leak approach, i.e. an approach where new code is the only focus, the developers will become very interested in the subject because “code quality” means quality of their code. If you add the ability to be on a very short feedback loop, you get an inversion of control: developers will not only fix issues but take ownership of the code quality in their organizations… as it should be the case everywhere.
Unified Quality Gate
Unless you enforce a Quality Gate at release time, you do not have a code quality practice in place.
The Quality Gate is the list of criteria that are verified before going to production, to make sure that the application complies to quality requirements. In other words this is the GO/NO-GO for internal quality. Taking a Water Leak approach, allows you to enforce an identical Quality Gate for every applications because the focus shifts away from the legacy code in an application to only what is new or updated. That makes code quality an integral part of the development process.
Applications Portfolio Management
The leak paradigm creates a virtuous cycle to improve code quality, but does not deal with risks.
Managers should be able to make decisions on existing risks in their portfolios. For example, sensitive applications may need extra effort on security issues. That’s why, they need to have access to a representation of their portfolio of applications decorated with the associated health / risks factors.