Breaking down the silos between the Development teams and the Operations teams is at the core of DevOps. The famous DevOps Infinity Loop shows very clearly the relationship between these two functions:
When the technical crowd talks about DevOps, it's easy to get sucked into the conversation and think it's all about tools. You can get lost in all the permutations of toolchains that an organization uses on their quest for DevOps nirvana. Don't get me wrong, I love technology and tools, but DevOps is a culture change enabled by tools, not just a set of tools to put in place. I like how Atlassian defines the culture shift:
It's a firm handshake between development and operations that emphasizes a shift in mindset, better collaboration, and tighter integration. It unites Agile, Git, continuous delivery, automation, and much more, to help development and operations teams be more efficient, innovate faster, and deliver higher value to businesses and customers.
What About the Users?
Looking at the traditional diagram, there is no concept of users or a feedback loop. If we are living in an Agile world and striving towards DevOps nirvana – Continuous Integration and Continuous Deployment (CI/CD) – where is the feedback loop? One could argue that the "Plan" piece is all about the users, but in today's fast moving Agile world, it is really shortsighted to think that really covers the users of your systems. Let's take a look at Atlassian's version of the infinity diagram (notice the Continuous Feedback):
The reality is that any organization that is writing and deploying software has a service desk out front for your users to interact with. And for most organizations, that service desk is not run by the Dev or Ops team, it's run by a Service Management team. So, if DevOps is a culture change about innovating faster and delivering higher value to the business and to customers, then the Service Management team HAS to be included in this culture change. I give you...
Okay, it doesn't roll off the tongue very easily, how about: DevOpsSeM? Let's start by rewriting Atlassian's definition of this culture change:
It's a firm handshake between development, operations, and service teams that emphasizes a shift in mindset, better collaboration, and tighter integration. It unites Agile, Git, continuous delivery, automation, continuous feedback and much more, to help development, operations, and service teams be more efficient, innovate faster, and deliver higher value to businesses and customers.
Software doesn't exist for software's sake! Software is written to help people and business in all aspects. If we don't create a feedback loop that is as effective and efficient as our software delivery process, then we are truly missing the point of writing impactful software.
Continuous Feedback Tools
I know I said it's not about the tools, but at some point you do need tools to fill the gap! I would challenge you to look at your own environment and see if there is a very clear feedback loop from the users to your DevOps peeps. Does it exist? If so, is it effective? As an Atlassian Solution Partner, we are quite partial to Jira Service Desk, as it exists on top of Jira, not outside of Jira. Imagine the power of having your development, operations, and service management teams all working in the same tools...now that's DevOpsSM nirvana!