In order to meet customer needs, the DevOps culture is developing within businesses. However, this entails a paradigm shift that should be carefully prepared and implemented. This is precisely the role of the CALMS DevOps model.
Understanding the DevOps environment
In this era of digitalization, the roles of developers and IT infrastructure administrators are more crucial than ever within businesses. Over the past few years, both of these professional domains have continually evolved, aiming to meet customer expectations and enhance organizational agility.
Today, these two entities must work in harmony to enhance the stability and functionality of their IT systems. This is precisely why the DevOps movement is gaining momentum.
Its core objective is to foster communication and collaboration between development and operations experts, gradually dismantling the silos that separate them. To achieve this, several changes are required, such as the automation of software delivery processes and infrastructure management.
C.a.l.m.s DevOps, a model for change
C.A.L.M.S. is a concept developed by Jez Humble, the co-author of the “DevOps Handbook.” It serves as a framework with the purpose of assessing the success of a DevOps transformation project.
In practical terms, C.A.L.M.S. stands for:
- Culture
- Automation
- Lean
- Measurement
- Share
Let’s delve into these various concepts further.
Culture
Aligning development and operations teams doesn’t merely involve changing work methods. It’s about reshaping the company culture with collaboration at its core.
Enhancing collaboration primarily relies on human actions rather than implementing new tools. Therefore, adopting a new DevOps culture involves changing behaviors.
In this context, the CALMS DevOps approach is seen as an extension of the Agile methodology. The goal here is to meet customer needs with software that meets their requirements in terms of features and delivery speed.
To achieve this, software developers and IT operations professionals must shift their mindset. The focus should not be solely on the product itself but rather on its functionalities. The idea is to ensure that the product indeed fulfills the functionalities required by the end customer.
To fully integrate the DevOps culture, it’s essential to share a common goal and define a clear and precise plan.
Automatisation
To enhance efficiency across all areas of activity, automation is the key. It involves reducing repetitive, manual, and time-consuming tasks to establish reproducible processes in their place.
This concept applies seamlessly to software development, testing, and deployment. Fortunately, there are numerous tools available to automate some of these tasks (such as Ansible, Puppet, Chef, Terraform, ARM templates, etc).
As a result, low-value-added tasks are performed by machines, allowing DevOps professionals to focus on actions that provide maximum value.
In addition to boosting team productivity, automation also mitigates the risk of human error.
Lean
To succeed in their digital and organizational transformation according to the CALMS DevOps model, organizations must demonstrate agility, specifically by applying Lean concepts. This includes the elimination of low-value-added tasks, continuous improvement, and the recognition of failure.
The idea is to enhance the quality of work in the shortest possible time. To achieve this, teams need to implement new processes. For example:
1. Regular meetings: These are used to assess what’s working and what needs improvement.
2. A/B testing: This allows the integration of new products/features to be tested by users.
In this context, it’s crucial to acknowledge that failure is part of the process. It’s what enables continuous improvement to deliver a product that will satisfy customers over the years.
Mesure
The CALMS DevOps model is primarily a framework aimed at assessing a company’s ability to embrace cultural transformation. In this regard, organizations should employ tools to measure their performance, such as generated sales, customer feedback, execution time, critical alerts (frequency and quantity), usage duration, and more.
Companies must use the most relevant indicators to promptly rectify any potential shortcomings and continuously improve the product.
Share
The final step of the CALMS DevOps model is sharing (internally). In other words, web developers and administrators share their knowledge, best practices, and responsibility, both in terms of failure and success.
This fosters increased trust among collaborators, enhances reliability, encourages constructive feedback, and facilitates faster and more efficient delivery.
For all these steps, a change in mindset and processes is essential to embark on a DevOps transformation.