Today we are going to talk about DevOps. What is DevOps concretely? The definition of DevOps is rather clear, but what is important is to understand what it means concretely. And the CAMS model answers this question very clearly and precisely.
DevOps is mainly a culture, as highlighted by the CAMS model. The CAMS model was invented by Damon Edwards and John Willis, authors of the famous Podcast DevOps Cafe. CAMS stands for Culture, Automation, Measurement and Sharing.
Let’s start with the first part, Culture.
C for Culture
Culture is the most important part of the DevOps movement. But what are we talking about here? Culture will bring a whole set of practices:
- the use of Scrum,
- the presence of silos,
- the willness to limit the level of technical debt,
- the organization of retrospectives, …
However, be careful : don’t try to replicate practices of other organizations as they are, only for the reason that it works in these organizations. This is called the Cargo Culting effect. You must first examine the problems that these other organizations have tried to solve and see how they solve them. Only after you can determine what will work for your own organization.
A for Automation
Automation meets many needs and solves many problems of course. But beware, they only account for 25% of DevOps work!
So why automate? Above all to speed up the flow of information and avoid recruiting people.
Speeding up the flow of information, of course, brings the software to the client sooner, but it also helps to get results earlier. And so if a problem occurs earlier (such as the detection of a bug), it costs much less than if it is discovered later.
Avoid recruiting people, why? Of course for financial reasons, but also to avoid potential problems of communication between humans, to avoid the conflicts of people and to avoid mistakes made by humans. And yes, because the more humans there are, the more mistakes there are …
The investment is heavy. The return on investment will be on time.
When we talk about automation, we think about the notions of:
- “infrastructure as code” (for this we can use…