A concept of improvement originating from Japan, known as kaizen, has been broadly taken up across the world. Through such kaizen, the Agile development methodology has progressed globally for over 20 years, and product teams optimized for Agile product development have become commonplace. In the process of this development, the idea of DevOps arose. This process of kaizen has continued on to this day, with Agile development and DevOps initiatives underpinning the continuous growth of companies.
But in Japan, where kaizen first arose, DevOps is yet to spread. Let us take a look at the main reasons why DevOps has failed to spread in Japan, beyond issues of organizational structure.
Some of the main reasons why DevOps has failed to spread in Japan, beyond issues of organizational structure, are: 1) the misunderstanding that Agile development requires abbreviating processes, 2) a lack of understanding around the need to complete exacting tests before commits and merge, and 3) insufficient application of development approaches that perform daily builds and tests.
Such misapprehensions have led to a widespread inability to ensure general software quality, due to a focus on delivery speed in underprepared environments. The separation between development and operations further runs the risk of preventing the lessons learned from problems in production leading to improvements in architecture or improvements to customer value, and thus, by extension, of developing into quality issues.
So, how can companies ensure high quality? To begin with, companies need to analyze their current situations and gain a proper understanding of Agile development and the DevOps approach. They can then build the right organizational structure systems for themselves, and ensure product quality as a result of practicing continuous improvement through product organizations. Quality does not mean making a plan, carrying it out and finishing things there. Quality is a living thing that is developed while optimizing systems in accordance with the growth stages of teams, organizations and companies as a whole. Let us take a look at a few specific approaches to ensuring quality. These would be policies including establishing clear quality standards, continuously improving metrics, enhancing testing quality, loosely coupled architectures and customer feedback loops.
Product teams perform product development through the dual efforts of Agile development and DevOps, and optimize their culture while continuously improving their systems. As a result, organizations achieve business goals in a stable and developmental manner, by putting high quality into practice as a matter of course, thus managing to transform themselves into organizations that generate innovation.