Five DevOps Metaphor

Five DevOps Metaphor

This blog was originally published on March 08, 2016 on the CloudBees blog. here.

This is the third blog in the Field Notes from a DevOps Cultural Anthropologistseries. This blog describes five metaphors for talking and thinking about DevOps. Though each metaphor is completely different, they each share a core commonality, which I think of as the DNA of DevOps. I have been in the continuous delivery and DevOps industry for nine years and have made a number of observations during that time. I have seen strategies succeed – and fail. My goal is to try to help you be one of the successes! I’d love to hear your comments and experiences with continuous delivery and DevOps.

My version of CAMS (Culture, Automation, Monitoring and Sharing) is ACAMS+ (Agile, Culture, Automation, Monitoring, Sharing, PLUS whatever is important to the client, i.e., Compliance or Innovation). I find CAMS and ACAMS+ to be great frameworks for discussing DevOps. They are the core values of DevOps, but not its DNA. Cracking the DNA of DevOps requires a singular focus on teamwork and team mission. With that said, CAMS and ACAMS+ map extraordinarily well to the 10 teamwork processes.[1] They are:

  • Mission analysis

  • Goal specification

  • Strategy formulation

  • Monitoring progress toward goals

  • Systems thinking

  • Team monitoring and backup behavior

  • Coordination

  • Conflict management

  • Motivation and confidence building

  • Affect management

What is DevOps’ DNA? It is more than just a rhetorical question. We as practitioners need to crack this code and understand and communicate DevOps at its most fundamental level, so that we can speak about it to our colleagues and superiors.

As I said in my first blog, DevOps is primarily an exercise in teamwork. A DevOps team is comprised of individual specialists, for example Dev, Ops, QA, UX and Security, all working together towards a common goal. Individuals are working on their own roles and responsibilities, but are coordinated and working together towards a common cause. This coordination is managed by a team leader and he/she ensures that the team moves forward together. This team leader is typically a servant leader, who both leads the team and serves them, unblocking problems and coordinating efforts.

Empathy amongst a DevOps team is an often cited necessity. Basically prima donnas will not be tolerated in a highly team-oriented environment. You have to be nice to work in DevOps, and get along well with others. In order to work well together, teams need to treat each other with respect and individuals need to act as good teammates. As I mentioned in my first blog, an excellent example of this is championship rowing teams, which are built on trust, dedication, selflessness, determination, honesty and commitment.

The DNA of DevOps is as follows:

  • Team of coordinated specialists

  • Oriented to a common goal

  • Servant leader providing coordination and communication

  • Empathetic in dealings with others

  • Trust in the rest of the team

  • Dedication to the common goal

  • Selflessness, adherence to the greater good

  • Determination and resiliency in the face of difficulty

  • Honesty with the leader and the rest of the team

  • Commitment to the mission

Cracking DevOps’ DNA is hard, but communicating it to lay people or others can be almost impossible. Thus the need for conceptual metaphors, which allow the understanding of one idea or conceptual domain, in terms of another. The five metaphors I have identified that closely match DevOps’ DNA are:

  • American football

  • Rowing or crew

  • A barn raising

  • A surgical team

  • An orchestra

I have created a matrix in Trello outlining each of these metaphors and how the success necessary for each closely parallels the DNA of DevOps. Read the metaphors.

Five DevOps Metaphors - Trello Board

Thomas McGonagle
Senior DevOps Consultant, Global Services CloudBees