Three Ways to Accelerate Digital Delivery in 2019
By Kent Corley
Digital transformation is quickly moving beyond IT, causing enterprise-wide shifts in the way people do business. As the pace of change increases, business and technology leaders must learn to work together— and work to understand each other. No more should there be developers saying, “I just want to code” or business leaders saying, “I don’t get all that tech stuff, just make it work.”
Communication through a shared context and understanding is the most important way to speed up your digital delivery. Below are three suggestions for tackling delivery obstacles to achieve true digital transformation.
1. Optimize how systems are understood through iteration
Teams across your organization will likely identify ideas to improve your customer experience. But ideas are not systems. To get a system, an idea must be converted into a set of running capabilities and services that can be accessed by an end user. This process can take a really long time depending on both the idea and the culture of an organization. Those organizations that have a low capacity for risk and experimentation can take much longer to agree on what customers really want. Iterative methodologies can help by allowing you to get to a point where the end user can say, “I know it when I see it” and the engineer can say, “Do you like what you see?”
There are a variety of iterative delivery methodologies— including Agile and Scrum— that have different strengths and weaknesses; yet it is really about having an informed conversation between the business and technology teams to develop a shared context that will ultimately speed up the delivery process.
2. Increase speed across your end-to-end delivery process
Even with iteration in place, problems can arise when requirements evolve due to changing business needs and market demands. To better understand where your delivery process slows down the most, it is helpful to take a step back and determine where your gates, bottlenecks, and checkpoints are in the end-to-end delivery process or pipeline.
By stepping back to assess, you can identify the bottlenecks that exist and try to create fewer friction points in an idea delivery flow. These bottlenecks can come from many disparate places. One example is compliance and legal review. For many of our clients, this can be a place where it takes an inordinate amount of time to get approval and buy-in. Also, you have to go back to this group on a periodic basis as the idea becomes more fleshed out and real requirements and designs are produced. Through a value stream analysis, where you look at the end-to-end, cross-functional customer value creation of the process, you can take a hard look at key dependencies and streamline your partnership with this group. For instance, a potential solution may be to get the compliance team engaged earlier and have a more informed and higher cadence of interactions between them and the delivery teams. When done right, they can become a facilitator and advocate rather than a blocker.
With this same approach, you can focus on the low hanging fruit and solve each problem one at a time, gaining more value as you go. This can help not only with the definition part of the pipeline but also other more technical areas. If changing your ERP (and its cumbersome release process) is your constraint, the technology team could implement a side system that is integrated with the same data you need (potentially more isolated), but which is built using a more flexible microservice architecture —meaning, a small set of loosely coupled components that are much easier to change than the core monolithic system.
3. Maximize automation and minimize manual intervention
To get a little more technical, I like to have a goal of no hands-on keyboards in production. If you ask Google or Netflix, they absolutely get this. The wonders of cloud and virtualization allow you to use code to automate the build of systems without any manual intervention. If the system gets unstable, build a new system on the side, route traffic to it, and delete the existing one. No one will be the wiser. This is called a blue-green deployment and can be also used to make major updates without any downtime. With these systems, the infrastructure is considered immutable (doesn’t change) and is fully rebuilt from scratch without any perceived customer impact. Although, I do make a joke with my wife when there is a small hiccup while watching Netflix. “A poor little server just died,” I say. “But the good news is a new one was just created and put in its place.” Getting these types of capabilities in place does require work, as you can’t do this without implementing infrastructure as code where software automatically creates and provisions the servers and environments, and humans don’t.
From a customer experience perspective, this is hugely powerful, as it allows you to do A+B testing with ease. You dynamically spin up one production environment that has one experience and another with a different experience, and route different customers to tested experiences. You can then use metrics, such as conversion rate, to see which experience performs better. Once you decide B may be better than A, you simply blow away the A system, and route everyone to B without missing a step. All business stakeholders should be aware of this potential capability and bring it into planning discussions, as many times they don’t know how incredibly powerful this is and may not allocate the incremental budget and direction to get there. As I’ve said, It does take hard work to roll this type of a capability out, but the results can clearly show a path to better customer experience.
All these approaches allow you to work across IT and business teams to optimize the pipeline from idea to production and understand how this end-to-end flow can directly translate to customer value and decreased time to market. The results are sure to inspire the next stage of your digital transformation.