Guest contributor, Bola Rotibi from analyst firm Creative Intellect Consulting
Two pillars underpinning the foundations for Accelerated Delivery
At the start of 2013, I and the rest of the CIC analyst team carried out some research which involved talking to a mix of end user organizations from Europe and the US from across a number of industry verticals e.g. Government, finance, retail, manufacturing and healthcare. We spoke to senior practitioner roles to get an understanding of the existing operational and development processes, the focus on DevOps and their capacity for continuous or accelerated delivery.
Our research showed us that there are two words that are often overlooked when people talk about accelerating application delivery in the wider market.
In speaking to a number of end user organizations the two words that we commonly come across as key to both continuous and accelerated delivery are “Trust” and “Risk”.
In reality a lack of trust and the inability to appreciate the risks is often the root cause of many an issue within the software delivery process. One might even go as far to attribute it to the challenges facing IT organizations in general.
Exposing the trust and risk barriers
As I mention earlier, one of the major inhibitors within IT organizations has been the movement of software from development into production. Historically there were good reasons for this: slow delivery, poor quality management and the lack of trust between teams. Today quality has never been higher in software development but the lack of trust still exists. It is that lack of trust that is preventing IT operations team from increasing the cadence of deployment, well that and poor levels of automation, traceability and auditability. But it is also the lack of trust between the business and the IT organization. The other limiting factor is Risk. A lack of understanding and appreciation of the risk profile for the business and knowing the risk that a specific software application can have on the business are regular failings repeated again and again throughout IT and business teams. Yet risk appreciation and trust are both fundamental to determining the level of automation that can be applied or supported within a process and therefor the overall capacity for agility and frequency.
Resolving the trust and risk barriers lies in having the right processes and development and delivery support tools in place but also the right people and mind set. Trust that is verifiable is a phrase that software and IT teams need to embrace as a core principle and support it with solid process foundations. That said, validation through a degree of automation will help to deliver trusted processes.
Defining the backdrop for Accelerated Delivery
From our research, we believe accelerated delivery to be about improving the cadence for releasing stable working software or other changes into production without increasing the risk to the organization. Establishing an environment for accelerated delivery raises the opportunity for more frequent releases and the flexibility to meet rapidly changing needs and demands.
Accelerated Application delivery is based on foundations that support continuous delivery and continuous improvement. More importantly it presents a mandate for “DevOps” which is fundamentally about how one manages the process between IT development and operations teams to create a smother bridge and progression path to deployment. DevOps is ultimately about process integration with the right level of collaboration and communication occurring between IT development and operations. It does not require creating a third department or new DevOps roles. It is based on the existing teams.
As one organization we interviewed so succinctly put: DevOps is about remembering that everything developed has an impact in Ops and every change in Ops has an influence on development. So aligning the processes that will help both teams better understand the needs of the other is vital.