NoOps: what it is and how it will change IT Operation in the next future
The NoOps model, not so much as an alternative to DevOps but as a possible evolution that can be adopted in some cases, was coined by Forresternel 2011, only two years after DevOps entered the scene.
If the latter has introduced Lean and Agile methodologies in software development, pushing towards a greater dialogue between the developer teams (Dev) and those of IT Operation (Ops), in NoOps the need for this interaction is less thanks to the automation and cloud computing. In fact, the IaaS (Infrastructure-as-a-Service) and PaaS (Platform-as-a-Service) technologies made available by the cloud allow developers to independently access the resources and tools needed to create applications. This does not mean, however, that those who were once called systems engineers will be out of work. Rather, their role changes within a philosophy, such as that of NoOps, which aims to further speed up, and improve from a qualitative point of view, the application deployment process.
Why NoOps has been growing during lockdown
The lockdown period we recently went through emphasized the importance of agility in the field of IT Operation. An agility required by a market whose demand for digital applications and services is not only continuous but, during the lockdown, has recorded a further increase in its expectations. The fact that teams also worked remotely encouraged the adoption of NoOps as a functional model for optimizing time and resources dedicated to Operations. In addition to the cloud, it is the use of artificial intelligence and machine learning that makes this paradigm shift possible today. Just think of the growth of AIOps (Artificial Intelligence for IT Operations) platforms which, according to Gartner’s definition, to whom we owe the invention of the term, serve to "partially improve and replace all the primary functions of IT Operation, including availability and performance monitoring, event correlation and analysis, IT service management and automation ”.
AIOps and NoOps: answers to all application needs?
It should be noted that AIOps platforms are tools for analyzing and monitoring volumes of data with an incomparable speed compared to a manual method, but they cannot replace IT personnel in their ability to identify problems. Similarly, NoOps is an approach in which systems-related issues, such as processing resources and server maintenance, are resolved from the outset. But it shouldn't be confused with a universal remedy for all business application needs. However, it should be remembered that NoOps implies the existence of IaaS or PaaS platforms accessible to developers without skills in IT Operation. Consequently, it does not lend itself to being used for example in the case of monolithic legacy architectures, whose modernization and code rewriting interventions would contradict the faster application implementation objectives for which NoOps was born. Which are the same ones who have made the fortune of DevOps so far.
The link between NoOps and DevOps is stronger than the differences
To understand the link, and not the fracture or "enmity", which exists between DevOps and NoOps, it should be noted that the former implements the principle of Continuous Delivery (CD), while the latter takes it to the extreme, transforming the acronym also in Continuous Deployment and making automatic the approval phase before putting into production. It should also be recalled that the Continuous Integration (CI) pipeline of DevOps, with which the testing activity is simplified above all, sees in NoOps the developers concentrate exclusively on their work, without concerns regarding the infrastructural aspects. This does not coincide with a disengagement of the operational teams. Which, in turn, are called upon to contribute to the innovation of the company business in a more strategic key, given that the automations benefiting the developers at the same time also relieve them of routine tasks with little added value. Therefore, it is not a question of opting for NoOps at the expense of DevOps, but rather of redesigning dynamic collaboration arrangements between multifunctional teams focused on the release of software that is increasingly business-friendly.