DevOps – Enabler of Continuous Innovation
As Wikipedia explains DevOps is:
a clipped compound of “software DEVelopment” and “information technology OPeration S“) and is a term used to refer to a set of practices that emphasize the collaboration and communication of both software developers and information technology (IT) professionals while automating the process of software delivery and infrastructure changes. It aims at establishing a culture and environment, where building, testing, and releasing software can happen rapidly, frequently, and more reliably.
This goal of increasing software release frequency is the headline message and is why the approach typically goes in hand in hand with the adoption of Continuous Delivery best practices:
“an approach in which teams produce software in short cycles, ensuring that the software can be reliably released at any time. It aims at building, testing, and releasing software faster and more frequently. The approach helps reduce the cost, time, and risk of delivering changes by allowing for more incremental updates to applications in production. A straightforward and repeatable deployment process is important for continuous delivery.
Digital Innovation – Speeding Concept to Cash through Value Stream Mapping
So what’s the point of all this, what is the business benefit of DevOps?
In this blog Stackify make this great observation that helps illustrate the overall idea, that Agile and DevOps combine to holistically address the full lifecyle of translating business ideas into working code. Simply put improving the throughput of this capability is how organizations can increase innovation rates, how they can bring more new digital products to market faster.
Better synthesis of both software development and infrastructure operations speeds up the overall cycle of new feature deployment, but of course it’s only a success if the ‘Ka Ching’ part happens, a process described as the Concept to Cash lifecycle, the core mechanic of generating new ideas and turning them into revenue-generating business services.
Therefore it can be seen as a keystone foundation of enabling an overall enterprise culture of continuous innovation, where activities such as Value Stream Mapping can underpin the core skill sets required to implement this throughout the enterprise, as part of designing it in line with Lean principles. Organizations such as Philips define it as the framework essential to their enterprise-wide innovation program.
Not just about commercial product development. For example in this guide the NHS also describe how it is key to their organizational improvement.
Integrated DevOps Toolchains
As we consider the software development and deployment sequence of events, we can see that DevOps itself can be analyzed and optimized this way, emphasizing the importance of an integrated toolchain.
Tash Postolovski explores this scenario in her Medium blog.
As the name suggests the goal of a ‘toolchain‘ is to define a collection of different tools, used together to achieve some broader process activity, in this case is key to making possible this higher frequency of software releases by better connecting each step in the cycle.
Popular tools for this goal include Jenkins, a centrepiece foundation for Continuous Integration practices, and Ansible, which can be combined with other tools like Puppet and Chef to define a DevOps recipe, and in this era of Cloud-driven plenitude there is almost no end of possible permutations.
Other tool chain combinations highlight the different permutations possible:
- In their white paper Continuous Testing for Continuous Delivery CA defines the role of Testing within an overall Continuous Delivery pipeline.
- Extensions are available to target deployment to specific Cloud providers, such as deploying from Github to Azure.
- xMatters integration with Zendesk to link issues to support communications.
Identifying the best permutation of integrations would be achieved through a DevOps value flow mapping exercise, which would reveal the key hand off points and bottlenecks and therefore where integrations would realize a more optimized throughput.
Tasktop is a vendor specializing in achieving this integrated value stream, offering a solution for ‘Value stream management for software development’.
“in the world of Agile and DevOps, there is no one platform. Instead, we are witnessing a large-scale disaggregation of the tool chain towards the best-of-breed solutions. For large-scale Agile and DevOps transformations to succeed, we must shift our thinking from end-to-end platform to tool chain modularity.”
As they suggest in their blog one of the key bottlenecks constricting the throughput of DevOps teams is the lack of integration between the different tools used to complete the software development lifecycle. So they have suggested the need for a general solution category, a ‘DevOps Integration Hub‘ as a particular fit for this need.
They offer a DevOps Integration suite that can be used to build linked permutations such as:
- Exposes their Tasktop integration platform with a modern webhook, REST and JSON based integration layer that will allow any DevOps tool to be connected to the software lifecycle, such as Selenium-based test execution to Agile planning tools.
- Jenkins integration for flowing build information to user stories or requirements, as well as Github and Gerrit integration for automating change set traceability.
They describe how the 1,000 strong Bosch team have achieved a unified tool chain that funnels 2,500 feature requests a month from electric car innovation programs, into a single dash board for developers to prioritize and action.
Furthermore by tying together Jenkins with the automation to burn Flash ECUs they have empowered the team to work around a true end-to-end Continuous Deployment lifecycle.
It’s a very powerful metaphor when you consider how literally it enables sharing of best practices. High velocity team processes that have been developed by a real team, encoded into the application patterns they use to achieve them, is a big building block for enabling this.