⭙Ops I did it again

MLOps, DevOps, DataOps are some of the terms we see more and more frequently to refer to certain IT operations. Each of them refer to different areas and have specificities that make them unique, although sometimes the barrier between them is really fuzzy. Let’s take a brief look at some of them.

ITOps

By ITOps we mean Information Technology Operations.
The objective of ITOps is to enable the company to operate correctly using technology services. In other words, it is responsible for providing and maintaining all the services, applications and technologies necessary for the normal operation of the company. This includes network management, systems and software management, technical assistance, etc.
This type of operations has become outdated, among other reasons, due to the constant technological changes, the pace of business that requires agility in IT and the need for agility in innovation and adaptation.

CloudOps

It is similar to ITOps but with an exclusive focus on the cloud. We can say that ITOps is aimed at traditional data centers, while CloudOps is for cloud environments.
Although some tasks may be similar, we find other completely different tasks such as automation processes unique to each cloud service provider and automatic provisioning and scalability. And here we can find the first friction: What about hybrid environments?

DevOps
DevOps is the contraction of Development and Operations and is a combination of software application development, quality, ITOps and security, which is why we sometimes see it as DevSecOps.

Of all the Ops, this is the best known and serves as the basis for almost all the rest of them. The most beneficial effect that we can see is the shortening of the software development life cycle, bringing with it a better adaptation to the specific needs of the market by having a lower Time To Market. Similarly, by performing continuous testing, we ensure the quality of the delivered product avoiding rework and errors in production.
DevOps focuses on improving the time and quality of software delivery through build-test-deploy cycles using techniques such as continuous testing, integrated configuration management or continuous integration and delivery (also called CI/CD). Just to clarify, DevOps and Agile are not the same, but somehow complement each other. Most DevOps teams follow the Agile methodology for design/development cycles, starting to build slowly and incrementally, getting early feedback.

DevOps

NetOps

The increase of teams working on DevOps applications has brought with it an increase in requests and requirements to the network operations team, who also have the mission of preserving network availability, security and scalability. Meeting their mission while at the same time meeting the needs of DevOps teams and not hindering their agility is no easy task. The way networks are traditionally configured and upgraded is not agile enough for today’s environments, which is where NetOps comes in.
NetOps automates the provisioning and configuration of network structures necessary for the use of new applications and platforms.
Although NetOps has a technology part, it also has a mindset part that may require cultural changes in the company.
Like SecOps, NetOps is sometimes embedded in the DevOps concept itself.

PlatformOps

This is possibly the newest of all the terms we will explain in this post.
When a company has multiple DevOps teams, each with their own methodologies and their own monitoring, security and resiliency tools, it becomes very difficult to scale and get a complete platform from these scraps of applications. This is where the PlatformOps team comes in.
PlatformOps is responsible for providing a framework and services for DevOps processes, making DevOps teams able to access centralized resources and interoperate with each other more efficiently. The team should maintain an internal resource repository that functions as a self-service platform, including everything developers need to have an automated DevOps flow. This way, instead of worrying about tools and infrastructure, developers can focus on building software.
We must be careful that PlatformOps is not seen as a recentralization of IT processes and resources, but that its value lies in enabling the cooperation of DevOps teams, the reuse of elements between applications and the coordination of these. In this way, we will be able to offer solutions with a platform approach, which adapt to the needs of new composable companies while maintaining agility and security.

Platform Ops

BizDevOps

Traditionally, when we talk about DevOps, business is not usually taken into account; although it is also true that the most mature teams usually include people from this area. BizDevOps is the term used to emphasize that, in DevOps teams, business has an active participation incorporating people, so that the technology-business vision is covered; that is why it is sometimes called DevOps 2.0. This will make DevOps teams much more responsible for the deliveries to have a real business value.

NoOps

NoOps is the contraction of No IT Operations, and refers to an approach that can be highly beneficial (albeit risky) for companies with high technological maturity and can play an important role in the development and maintenance of newly developed software.
The idea behind NoOps is that developers (or DevOps people in general), do not have to worry about operations and can focus entirely on developing the functionality of the software.
With NoOps, all operations are automated, eliminating human-induced risk and speeding up the process. Everything that can be automated is automated, removing ITOps teams from the day-to-day equation.
The use of Infrastructure as Code (IaC) and serverless functions are two important tools that we often encounter in NoOps environments.
In addition to increasing the speed of day-to-day operations and eliminating human error, NoOps brings another advantage: the ITOps team can focus their efforts on working on technological advances and innovation instead of dealing with monotonous tasks such as maintenance or backups.
Not everything shines in NoOps. The indiscriminate use of IaC and serverless functions can lead to very high costs, putting budgets at high risk. Similarly, we lose control over certain aspects of the infrastructure such as scaling, which can be critical on many occasions. This is why NoOps is sometimes labeled as a risky practice.

DataOps

The idea behind DataOps is to provide a working environment similar to DevOps, but applied to the pipelines in charge of governing the flow of data from the sources to its analytical consumption; it is the way in which data engineers and DevOps work together. Beyond the challenges presented by DevOps, in the case of DataOps we have to face, in addition, the difficulty of extracting sufficiently representative data for testing, without violating the confidentiality/privacy of these. As consumers of this data we can find from traditional BI reports to advanced ML models, so the diversity of processes in the treatment of pipelines is assured.
By automating these pipelines, we will accelerate the data delivery cycle from its conceptualization to obtaining the product that delivers value to the business, while reducing time and improving quality by reducing the risk of human factors.

When we talk about quality in data analysis, we must ensure the quality of the databases, the analysis code, the extraction pipelines and of course the data flowing through those pipelines. Thanks to DataOps we can orchestrate the different data extraction and processing pipelines we have and control the quality of the data through all the stages, and all this in an automatic and reproducible way.

MLOps

It is the contraction of ML Operations and refers to the process of managing ML workflows (Machine Learning). Later on we will see ModelOps, which is another concept closely related to this one and which are sometimes interchanged and used interchangeably; but being precise, we can say that MLOps is a subset of ModelOps.
MLOps focuses on the practice of building, deploying and maintaining ML models using DevOps principles and techniques such as CI/CD pipelines. MLOps arose to leave it up to ML engineers to manage their workflows instead of relying on data and infrastructure teams that were slowing down deployments. Some of the activities performed in this area are automatic training and retraining, model deployment and integration with data pipelines and extraction workflows, model performance monitoring in production, data drift detection, integration of results with business processes and others.

MLOps

ModelOps

We can consider ModelOps as a superior entity that encompasses MLOps. ModelOps is aimed at the processes involved in operationalizing and managing AI (Artificial Intelligence) models in general for production systems. The difference between ModelOps and MLOps is that MLOps focuses only on machine learning (ML) models, while ModelOps encompasses the operations of all artificial intelligence (AI) models. Logically, being a more complex entity, it is easier for companies to start implementing only MLOps and then move to ModelOps.

AIOps

AIOps is the contraction of Artificial Intelligence for IT Operations and by this we mean the way IT organizations manage data and information in their environments using artificial intelligence. Its main objective is to improve IT operations by using multiple data sources and their analysis to automate tasks that would otherwise have to be performed by engineers, which can now be used for higher value tasks. This will prevent incidents, reduce resolution time and optimize the use of IT resources.
Instead of applying DevOps principles to a software domain (as we have seen in other cases), data from the IT environment (systems, logs, networks, events, metrics, etc.) are monitored and acted upon in relation to the analysis obtained. AIOps aggregates different IT operations data; handles the workloads of other Ops to obtain models that correlate events, determines causalities, detects anomalies; and automates the actions that arise from the results of the data analysis.
Within AIOPs we can find a wide variety of techniques such as pattern recognition or advanced data analytics.

XOps

We have seen that there are many Ops that complement each other on a day-to-day basis. This is where the term XOps comes in to refer to multiple of these operations.
The goal of XOps is to use DevOps best practices to enable reuse and repeatability by enabling the creation of an enterprise technology stack that enables automation and reduces technology and process duplication, including DataOps, MLOps, ModelOps, PlatformOps, etc.
XOps is an idea developed with an overarching purpose: the productization of AI to deliver business value.
Since XOps includes different departments and workflows under its umbrella, it favors collaboration between units. This helps to break down silos that may have been produced within a company either by the organization itself, culture or Ops teams, thus improving the efficiency of the organization.