Software Delivery Management Changing the Game for CI CD and DevOps
|Freeman Lightner in DevOps Thursday, November 12, 2020|
We truly live in exciting times: Software has transformed every part of our existence and the pace of innovation around us driven by software is sort of like the expansion principles of the universe – its scale and velocity are exponential. Clearly, it's not slowing down anytime soon, either.
Whenever a new and incredible software-driven innovation is released, it’s always slightly amazing to think that the teams behind it somehow managed to deliver that big innovation, despite how difficult it can actually be to do so. The bigger the development organization gets, the more teams you have working on different parts of a software application. Teams may be working on completely different products and features across those products, in completely different states of maturity and value delivery. They're grappling with complex architectures that span on-premise and cloud infrastructures, or dealing with the daredevil nature of going completely cloud native. Some teams are developing, some will be testing, while others are deploying and operating the software.
Continuous integration, continuous delivery (CI/CD) and DevOps have helped make it possible for all of these different teams to work in conjunction, keep iterating and keep making software that only gets better and better. But siloes between teams can still cause friction and confusion, so the question now is: How do you get a complete picture of CI/CD and DevOps processes and see what all of those individual teams are working on and how they contribute to the larger whole?
(And, by the way, let’s not forget all those other teams supporting the software, the people who ensure you’re building things that actually matter and successfully bringing them to market – from product managers, doc writers, designers and marketers, to the people upstairs with C's in their titles. How do you see where they fit into this larger picture?)
The answer lies in visibility, in shared information. In being able to see everything across every team and use data to connect the dots. But doing so hasn’t been easy.
Bring On Software Delivery Management
Up until now, to try and help teams be more efficient, many an engineering manager has come into the office early, just trying to collect enough info to get a complete end-to-end view of product and feature development activity across the software development life cycle. This process typically involves manually collecting data from development toolchains that only seem to exponentially grow and get more complex: Picture more than 40-50 tools across various teams, and of course, none of them are sharing anything – everything is siloed and disconnected. If you self-identify here, you’ll surely agree what a pain it can be. And honestly, even with all that effort, most of the time you still can't identify the bottlenecks and inefficiencies that impact delivery of value.
Or maybe you identify with the developer who comes to work each morning just trying to wrap their head around what they should focus on first? Digging around for clues and information in Jira, GitHub, Jenkins, etc., just to get started. Or just trying to understand where and why critical features are stuck across the software delivery value stream. Or, when you’re about to start building something new, just being able to quickly understand any previous work that has been done, any potential UI mocks, documentation outlines or POC architecture docs. Or how about just wanting to know where your feature fits into the universe of value, who is using it and how? You just want to get feedback early and often on the features you're developing.
CI/CD and DevOps can certainly help answer some of these questions and reduce friction throughout the software delivery process. Now, though, we need to extend and evolve CI/CD – increase visibility and information flow across every process and every team in the business, to make them more collaborative, efficient and effective.
Fortunately, there’s a new category of software within DevOps called “Software Delivery Management” that can help. The sole purpose of this category of software is to unlock the true potential of software value delivery, extending the continuous feedback loop established with CI/CD and DevOps to fully include all stakeholders and work. The concepts and pillars of Software Delivery Management were first introduced by CloudBees at DevOps World in San Francisco months ago. The brainchild of industry luminaries like Sacha Labourey, Shawn Ahmed, Francois Dechery and Ben Williams, the CloudBees development organization has developed four primary pillars that define Software Delivery Management. Those pillars are:
COMMON DATA — All information within and around software delivery activity would need to be captured and stored with a consistent domain model to enable and facilitate connected processes, shared insights and collaboration.
UNIVERSAL INSIGHTS — Visibility and insights would need to enable a common understanding and continuous learning from data across, up, down, and throughout all functions in the organization.
COMMON CONNECTED PROCESSES — Processes would need to orchestrate the entirety of the software delivery value stream and connect functions together to efficiently bring ideas to market with maximum value and adoption.
ALL FUNCTIONS COLLABORATING — And finally, all functions and teams within and around the software delivery organization would consequently work together to amplify value creation efforts.
Okay, so Software Delivery Management is the new category? Great. Now, do we actually have any software in this category? Anything built that's even remotely close to the guiding pillars? Any running code that can actually solve those pains and reach the Promised Land that presumably comes when you use software that supports Software Delivery Management?
Short answer: YES!! :-) CloudBees has been busy developing a Software Delivery Management solution that helps teams across your organization work together more closely and collaboratively, fueled by visibility and shared information. CloudBees makes Software Delivery Management possible through its new software solution called CloudBees Software Delivery Management, which fully encompasses the four pillars and changes the game for processes across your business, including CI/CD, DevOps, and the work that every team does to bring software to life.
To learn more about CloudBees – and why they’re the unconditional leader in enterprise DevOps – check out their website. We can’t wait to see what great things come with the power of Software Delivery Management.