What to automate? Which parts of the delivery process are good candidates? Which applications will benefit from automation? At first, those sound like silly questions. Automate all your repetitive processes. If you think that you'll do the same thing manually more than once, automate it. Why would you waste your creative potential and knowledge by doing things that are much better done by scripts? Yet, an average company does not adhere to that logic. Why is that? ...
The drive for large enterprises to deploy DevOps practices is part of the push toward digital transformation as companies are tasked with adapting their business strategies to the evolving and digitally-centered business landscape. This means companies must rethink how they create and deliver new customer value, developing capabilities to satisfy the demands of the digital economy as the scope of this transformation is global and across all industries. According to IDC, by 2020 there will be over $18 trillion in added annual economic value for companies who invest in digital transformation strategies — that is a 25 percent increase in global GDP. This also shows that companies are relying even more on their IT teams and organizations to build capabilities that leverage new technologies such as cloud, AI, and mobile.
As the push for digital transformation continues to grow, DevOps practices and the teams that implement them will be the engine of change that builds these new capabilities. Scaling DevOps in large enterprises accelerates more than application delivery. It springboards business ideas by optimizing value streams and automating continuous delivery pipelines, which together deliver better business outcomes. But teams are often scattered across the globe, in traditional and hybrid IT environments, with demands for security, compliance, innovation, and availability. The key question is, how do you overcome this complexity to create seamless digital transformation?
Embracing DevOps at enterprise scale requires a seismic shift in the way an organization plans, builds, tests, releases, and manages applications. Here are four ways to ensure your enterprise DevOps transformation is a success.
1. Build on What Already Works
The speed of the digital economy will force you to innovate quickly by embracing new technologies and business models. While the wider software industry seems obsessed with "the new," and often pursues attainment of "the new" at any cost, large enterprises have already made big investments in providing a world-class infrastructure that manages and controls risk, compliance, and security.
Implementing DevOps practices is not about "ripping and replacing" current tools or infrastructure. DevOps practices must work for brownfield as well as greenfield environments. Organizations need to build new capabilities on what already works. This requires that your toolchains be open and integrated to support hybrid IT environments as you transition from waterfall to agile, or from the mainframe to the cloud. It is about going from point A to B to C to D, etc., continuously improving and transforming what you currently have. Business priorities, technologies, and the market constantly change so you need solutions that bridge the old with the new.
Overall, organizations that recognize new value from existing assets will not only reduce risk and cost, but will also have a decided "time to value" advantage. It's always faster to build on what already works.
2. Reduce Operational Friction
Customer expectations are high, and timelines are short. Delivering value to customers at the "speed of business" requires aligning business needs with the software delivery process. This includes removing constraints, automating manual work and increasing stakeholder visibility across all of the value streams in the enterprise.
To be successful in large enterprises, there needs to be another level of abstraction where system thinking is pitched above individual deployment pipelines. This level of understanding needs to extend upstream from product delivery all the way to the business request as building an agile and resilient enterprise requires understanding and anticipating how the whole system is designed to work versus how it is currently working. This means organizations need to emphasize T-shaped skills with teams, partners and even vendors to optimize transformational success.
Optimizing the entire value stream, accelerating value flow and providing real-time visibility enables organizations to make informed decisions and quickly course correct as business priorities and customer needs shift.
3. Increase Business Confidence
In the quest to move faster and adopt DevOps practices, larger enterprises must avoid increasing security, compliance and performance risks as speed and quality are not longer mutually exclusive. To remain competitive, organizations need both speed and quality as they must shift to a culture where quality and security are engineered into everything.
In many large enterprises, proprietary software underpins differentiated business processes, unique products, and valuable services. It's imperative that you provide an environment that gives your business confidence to be aggressive in the marketplace without the fear of undue risk. As new capabilities are developed to support the digital transformation of a business, companies must ensure that quality and security are embedded into the process from the very start. You need to prevent and remove potential bottlenecks before problems reach the customer.
4. Deliver the Right Outcomes
How can you tell that your IT organization is making an impact on the business? Most IT organizations work to create a defined output. But just because you have finished making a thing doesn't mean that thing is going to create economic value. With software, the relationship between what we have built and its effect on the customer is sometimes unclear. Measuring your DevOps journey just on productivity and outputs is not an effective strategy. DevOps is not about what you do, but what your outcomes are.
Outcomes are the benefits your customers receive from what you deliver. You must begin by truly understanding your customers' needs - their challenges, issues, constraints, and priorities. You must continuously access, and course correct as your customers' needs change. This can be achieved through implementation of a system that provides continuous feedback harnessing real-time data and KPIs across the DevOps toolchain. Without this feedback loop, your enterprise will not be able to deliver the products and services that the business requires.
Ultimately, scaling DevOps practices in large, highly-regulated enterprises presents unique challenges. These four principles will help IT organizations develop a better way to deliver business value at a much faster rate.