Guest post originally published on CloudOps blog by Sunil Mavadia, Director of Global Solutions Architecture at Cloudbees
We have all heard the term “digital transformation,” and we often ask ourselves why many companies struggle to define it?
What companies see, more often than not, is an agile transformation spurring a DevOps transformation (or some sort of technology transformation), which in turn spurs a digital transformation (DT). The DT becomes the all-encompassing term used by CIOs and C-level execs for any sort of technological evolution.
What quickly becomes apparent is that C-level execs, being so focused at the “C-level”, often have little to no idea of the complicated nature of the Agile and DevOps transformations happening right under their noses. While I am sure there are many executives that do have a decent idea of what’s going on and are well engaged in these transformations, many are unaware of the complexities within their technology stacks.
Improving a business’s operational excellence means improving its software management and delivery, whether built in-house or acquired. This is the CIO’s task at hand, and it is a difficult one, considering the numerous moving parts within the three different types of transformations, as shown in the figure below.
As it stands, each transformation has its own challenges, opportunities, and solutions. One challenge that stands out prominently is the automation of software delivery pipelines, which is becoming critical for enterprises to meet market demands with speed and agility.
There are a plethora of software delivery automation tools to choose from, and the number is growing day by day. The cloud native landscape is vast, chaotic, and full of competing and overlapping platforms and technologies. To navigate its complexities, CEOs and CIOs must work together to build technology stacks that use the right tools for the right jobs.
How can C-level execs learn more?
A recent Forrester report by John R. Rymer and Jeffrey S. Hammond called “Foster the Software Capabilities That Your Firm Needs” is a good start. I will highlight what that means from a Software Delivery Management (SDA) perspective. There are a few factors C-level execs should take into account when seeking to understand their organization’s software capabilities.
1. Software delivery success ultimately depends on decisions made by the CEO of an organization
It’s ultimately CEOs that make decisions to fund, buy, build, and customize software. CEOs allocate resources to optimize tools and processes, and they rely on CIOs to identify critical areas of improvement, destructive organizational silos that disrupt the delivery of software to production in the end, such as:
- Quality of code
- Collaboration of team members
- Evaluation of processes (and tools)
- Implementation of agile practices into software development lifecycles
How does Software Delivery Automation (SDA) help?
SDA allows organizations to enable software deployment processes to embed quality and audit capabilities into entire software delivery processes. Tools like Cloudbees CD support the automation of software delivery pipelines. By leveraging tools like SonarQube or HP Fortify, SDA can scan software for anomalies before pushing to follow up environments (Test or QA, for example). It can improve collaboration by enabling ChatOps with tools like Slack, making it part and parcel of the Software Release Cycle, providing “live” feedback to the Release Manager or the developer alike.
The ability to chain/integrate existing DevOps tools (of which I am sure there are numerous in any organization) is crucial to streamlining release processes. Release managers, for example, can access much-needed data and metrics before determining the state and quality of releases, without having to jump between tools. Closing the cycle of people, processes, and tools through the efficient orchestration of your existing DevOps tools is a ‘key enabler’ of the evolution of processes.
2. Software metrics don’t focus on business results
I don’t think we could count how many times a CEO has asked: “How many times have we released to production, and how many successful deployments did we have?
Granted, that is not their focus. But at the end of the day, the failures caused by errantly released software are.
Failures in production equate to lost ROI, in many cases, millions (if not billions, in very large organizations) of dollars. This is especially true for financial institutions, which urgently require real-time information. As trading applications rely on not seconds but milliseconds of latency, financial institutions can lose billions of dollars in a mere couple of seconds if an application lags. Software delivery automation can be critical for enterprises to stem the bleeding of money.
An efficient software delivery automation platform will manage the entire process of delivering software from end-to-end, from before development (requirements gathering) to post production deployment.
Cloudbees CD provides Reports and Dashboards that can be customized at any level of functional execution. This enables transparency and audibility, holding the organization accountable for failures that should have been caught way to the left of the SDLC (Software Development Lifecycle). Catching issues before code even goes to a post production environment can save a company from endless headaches (time and money), not to mention serious PR mistakes that stem from errors (especially security related mistakes) in software delivery life cycles that could have been caught way ahead of time.
3. Organizational silos slow down processes
Breaking down the silos between development and operations is not only difficult, but in many cases impossible, due to strictly-defined responsibilities of roles and function in large organizations. Large organizations do, to an extent, depend on silos for clear delineations of duty, enforced by audits. But these silos can reduce the velocity of release cycles.
SDA (Software Delivery Management) is at the center of digital transformation, and is essential for overcoming silos slowing down software release cycles. It brings together people, processes, and tools, as well as Digital Transformation, Agile Transformation and DevOps Transformation. By offering one cohesive platform, SDA:
- Standardizes the enterprise software delivery process
- Provides transparency across the organization
- Adds quality and security to the software delivery process
- Provides operational control by enabling operations teams to be more involved in the software development process
- Adds accountability, audit, and governance to the software delivery process without compromising on quality and security
Most importantly, SDA tools provide metrics and analytics through a Value Stream Management interface ( a unified reports and dash-boarding system). This is an important part of breaking down barriers that can disrupt digital transformation.
4. Operational excellence is key.
The efficiency of your operations is absolutely critical for the health of your production software, especially in today’s cloud native world where organizations must manage workloads across various multi- and hybrid-cloud platforms. This is especially true for organizations that see these common challenges such as:
- Resistance to change
- Ability to manage transformations while keeping the lights on
- Lacking expertise and talent to manage those platforms
- Attempting to lead with technology and not a business mindset.
As cloud business models have evolved, so too have cloud operational models. CloudOps is the practice of continuous delivery and operations of cloud computing infrastructure, 24x7x365 with non-stop service, competitive performance and usability, and the scalability and security required for modern online services.
Software delivery automation is absolutely essential for successful cloud operations. Such systems are quickly becoming the de-facto standard for enterprises seeking to revolutionize transformations and evolve from being reactive to becoming proactive in delivering software to customers in a timely, efficient, and secure manner.
Sunil Mavadia is Director of Global Solutions Architecture at Cloudbees. He has led a number of transformations and has been in the Release and Build Engineering industry for over 20 years. Throughout the past 10 years of his career, he has been a public speaker on DevOps and Digital Transformations, helping and guiding companies through their Digital Transformations.