We have seen, over the last two decades, transformation in IT, operations and the product lines of business. The location for hosting applications has moved from on-premise, to co-location, to hybrid, to public clouds. Additionally, application architecture is well on its way in transitioning to cloud native based microservices. This transformation is on the scale of what happened in the industrial revolution, but now with software and applications.
The worlds of tooling and platforms, automation and orchestration, developers and operations, people processes and technology have changed more than we could have imagined. At the same time, the long tail of that transformation means we are barely 50-70% complete in those many dimensions of what is changing.
DevOps is Enabling Business Digitization
There has been plenty of discussion over those years about DevOps and how that has changed the world and business of IT, development and operations, but what is Enterprise DevOps? I am not going to delve into an explanation of DevOps or the culture underlying it as there is a ton of great material out there on that. As most businesses are transforming digitally, this has had a great impact on what we use to deliver software in the enterprise.
I had a close friend and colleague mention to me that software is eating the physical world. This makes you look at DevOps as a key force that is increasing the velocity of the “digitization” of businesses. The PacMan of our legacy.
DevOps for the Enterprise – How Did We Get Here?
Leaving the DevOps cultural aspects for other discussions, when we look at the tooling (remember DevOps is more than tooling), we see that the industry has been trying to grok, incrementally that is, a DevOps Platform is. Over the years it has been known by many acronyms. Known by small pieces of the “platform” or by larger sections of the marketecture. An alphabet soup of classification.
- Agile
- Continuous Integration (CI)
- Continuous Deployment (CD)
- CI/CD
- Application Release Automation (ARA)
- Application Release Orchestration (ARO)
- Value Stream Delivery Platform (VSDP)
- Value Stream Management Platform (VSMP)
I will leave it up to the analyst firms to try to define the market and the capabilities. What is clear to me is that in real life, not every one or organization has taken, or plans to take the red pill of Matrix fame. The world is heterogeneous. We observe, in larger organizations, or organizations in a high growth mode, that portions of the team, application, architecture, process are in agile experimentation mode. Other parts of those same organizations are in a more traditional mode. Perhaps because those parts have special production needs, perhaps because the product/service has compliance or maintenance timeframe requirements.
As a manager or leader in those organizations, one will immediately discern that we live in a world of “AND”. We have on-prem AND cloud, monoliths AND hundreds of cloud native microservices, both mutable AND immutable architectures, waterfall AND agile, brownfield AND greenfield projects. Of course we are in transition, but that takes much longer than anyone ever plans for
Enterprise DevOps Definition
Large organizations, let us say over 20 DevOps people, live in a world of, by definition, heterogeneous DevOps needs. Multiple tools, pipelines, data sources, applications, you name it. In this Enterprise DevOps Platform world, DevOps admins, management, leadership want to manage it all from a single orchestration or management plane. Why is this important? We are still changing both the micro and macro technology sets, culture and processes. We want a platform that can support that reality; that we can use to model, operate and run a small pipeline. At the same time handle a complex multi-tool, and ever changing pipeline manifest across multiple projects.
There is the desire to aggregate visibility and observability with the pipeline orchestration so that as a small project/organization grows into a larger complex one, we have the ability to scale as well. In this day of intelligence insights, machine learning and machine intelligence, there are opportunities for the machine to help us evolve our DevOps execution. Think of Enterprise DevOps as the horizontal and scale out solution for running software delivery. Scaling release quality and feature velocity. All without replacing (immediately) what works. Building upon what is working, but eliminate inefficiencies, increase collaboration, track progress, deploy metrics and insights for continuous improvement.
One Ring to Rule them All
On my whiteboard in my home office it says “pipeline of pipelines”. Next to that I have a picture of the ring from Lord of the Rings. One ring to control and give visibility for business value to all the pipelines and stakeholders. Perhaps this is Value Stream Management, perhaps it’s not.
This blog is the first in a series of “Secrets Behind Enterprise DevOps Platforms”. Future topics will include the five things we don’t pay enough attention to such as:
- How real life work happens in the pipeline
- Testing, the middle child who gets little attention
- Pre-production, why did we cancel monitoring?
- Moving existing apps/teams alongside small startup like projects
- Managing tens/hundreds of pipelines with different toolchains
- Legacy and cloud, how to manage the transition
Stay tuned for those blogs, and if you want to see the ReleaseIQ Enterprise DevOps Platform in action, sign up for a demo here.