by Bob Violino

Scaling agile and DevOps for digital transformation

Mar 16, 202011 mins
Agile DevelopmentDevopsDigital Transformation

Overhauling your product and services development and delivery process at the organizational level can help ensure digital success.

Many organizations see a move to agile software development and then to DevOps as key steps in their digital transformation journeys.

But in many cases, these transitions are tackled by smaller teams, thereby limiting the overall impact they can have. Rolling out these practices more broadly throughout the organization can pay significant dividends by revamping processes on a grander scale. But making that leap is challenging.

Agile, a development methodology that involves collaboration among self-organizing and cross-functional teams, as well as the end users of the software, is aimed at enhancing the quality and speed of software and services development.

DevOps, meanwhile, blends software development and IT operations to shorten the development lifecycle and provide continuous delivery of applications with high quality.

Together these approaches can accelerate digital transformation and have a major impact on how work gets done — particularly if they are scaled up to involve more users and projects. Here are some tips for succeeding with agile and DevOps at scale.

Culture is king

Companies seeking to scale agile and DevOps as part of their digital transformation must establish a culture that embraces the sharing of responsibility for and ownership of these approaches to software development.

“DevOps skills and DNA must be widely spread across the organization,” says Herve Coureil, chief digital officer at Schneider Electric, a provider of energy and automation products. “It has to become part of the company culture.”

To reach that goal, companies can’t limit responsibility for agile and DevOps to a subset of experts. “Providing releases compliant with DevOps best practices becomes the responsibility of the whole team and not one single individual who could become a single point of failure,” Coureil says.

At Schneider, “the agile and DevOps vision is to transform the overall operating model” of the company, Coureil says. “We are applying agile practices to have continuous and transparent communication flow across all functions of the organization, including portfolio management, finance management, product management, product engineering, architecture, professional services, and end consumers.”

Early in 2019, Schneider created an Agile Transformation Office to help teams deliver digital products faster, with better quality and with the least amount of waste. “We are adopting ‘Wave and Spike’ approach to scale the transformation” across the company, Coureil says. “Any product or set of products that are chosen in a wave applies all aspects of [the] new operating model leveraging agile Scrum and Kanban, DevOps CI/CD [continuous integration and continuous delivery], and continuous feedback and Lean practices of portfolio management.”

The company offered workshops for teams to gain Scrum practice experience, and provided coaches to help the teams improve on their use of agile. All of Schneider’s development projects now leverage agile framework methodologies.

Measure what you improve

It’s not enough to just expand the deployment of agile and DevOps across the organization. Companies need to measure the value these initiatives are delivering at every stage of the expansion.

“Define key performance measurements with a current state baseline and iteratively measure and progress,” Coureil says. “Start with an understanding of existing team roles and work practices to understand how they are working and where improvements are needed.”

Schneider had several teams using the waterfall model of development — which breaks down project activities into linear sequential phases in which each phase depends on the deliverables of the previous one — transition to the Scrum agile process framework.

“We had other teams practicing parts of Scrum, but not consistently,” Coureil says. “We created a team self-assessment template that helped teams understand agile best practices, their own practices, and what they needed to do to improve.”

IT service provider Insight Enterprises uses measurements such as technical progress, product pipeline trends, resource consumption,

product quality, performance, and business outcomes, says Jonathan Parnell, senior digital transformation architect. Specific factors to examine include process time, time to mitigate problems, costs to fix product defects, and others.

On the people/cultural side, management also looks at trends in team dynamics, process overhead, trustworthiness, morale, and motivation.

Resist the temptation to deploy too many tools

There’s no shortage of products to help enterprises exploit DevOps, and many of these can be useful. But it’s important to guard against tools inflation.

“Having too many referenced tools would result in different behaviors between teams and limit the shared culture,” Coureil says. “It would make the adoption of best practices and standards harder, increase our potential [cyber security attack] surface, and prevent scale savings.”

Schneider’s key DevOps architects are in charge of maintaining the tool stack, continuously enriching it to cover new use cases or technology contexts and making changes when required. “It requires a permanent technology watch,” Coureil says.

To enable productivity and guarantee security, Schneider maintains a mutualized DevOps tool stack that covers a range of technologies and scenarios, including cloud-based applications and sensors used for internet of things (IoT) applications. 

Secure and govern early and often

It’s important to consider security measures at the outset of agile and DevOps initiatives, so as not to cause issues that can plague the development lifecycle.

Prior to joining Insight, Parnell worked as a director of engineering at a media services and production company, and discovered that “no matter how fast our releases and deployments were, security was not only a bottleneck, but an inhibitor to speed and scalability,” Parnell says. “The level of trust and motivations were drastically misaligned. Not everyone across the value-stream felt the responsibility of security.”

At the media company, development had been focused on business end users, without the appropriate security contexts. “We had missed a crucial perspective technically of considering security as part of quality, and security violations as bugs and defects,” Parnell says. “We had to go all the way back to address this within continuous integration.”

The company put in place a number of security-based elements, including policy-driven development that took into account threat modeling and other security measures, a “security-by-design” approach, and recommended security practices.

“This took over a year to implement due to the amount of technical debt we had incurred not starting with security, and the amount of cognitive load it took to evangelize a ‘security culture,’” Parnell says.

Governance of agile and DevOps is also important. “Avoid the pitfall of agile being translated into ‘everybody gets to do what they want to do,’” says Steve Bagby, CTO at Mastercard, a payments technology company. “This will only result in chaos and kill your ability to operate and secure your systems, impeding your ability to ultimately delight your customer.”

Mastercard has been organizing its engineering teams around agile principles for several years. “Since nearly all of what we do is delivered as a service, building for operability [has] always been an integral part of that, out of necessity,” Bagby says.

There’s a clear benefit of integrating responsibilities for building, deploying, and running applications, “because everyone has something at stake and feels accountable to the team,” Bagby says.

Emphasize training

To deploy agile and DevOps broadly in an organization means having a lot of staffers who are well versed in these methods and prepared to make the necessary changes in development processes.

“Train early and often, including face-to-face classroom training with practice scenarios,” Coureil says. “We did dozens of hands-on classroom training sessions globally to establish a foundation. We then had our coaches do small training sessions to reinforce best practices.”

All the content for training was made available in an interactive learning portal for re-use across teams, Coureil says. “Everyone can add their own comment and content to enhance the learning,” he says.

For its agile and DevOps initiative, the media company Parnell previously worked at created a cross-functional team of 12 to 15 people, including developers, database administrators, and representatives from IT operations, networking, security, and lines of business.

“This team went through a series of initial workshops to get alignment and upskilling/enablement on the concepts, fundamentals, best practices, and nomenclature of agile and DevOps” and other related disciplines, Parnell says. “This is critical. Without basic alignment on these things flow is nearly impossible.”

The media company discovered with a cross-functional team representing various dimensions of the business that motivations varied and in some cases were diametrically opposed. “Especially developers who wanted speed and elasticity versus operations and security who required stability and safety,” Parnell says. “It became a balance of offense — exploiting opportunities — and defense — managing risks and uncertainty — by incorporating objective evidence from metrics.”

Share best practices

A number of the steps covered earlier involve the sharing of practices. But it’s worth mentioning separately how vital this is to scale agile and DevOps successfully throughout an organization, and that there needs to be a mechanism for doing this.

Insurance firm Liberty Mutual Insurance has created an Agile Enablement Office, which helps various development teams gain maturity in agile and DevOps over time.

“We also hired experienced talent, like Scrum masters, from outside of Liberty to bring best practices in and be embedded within teams,” says Mark Cressey, senior vice president and general manager of hosting services at the firm.

“In some cases, they took on the work, and in most instances, they coached the internal Scrum masters we were bringing on as part of our transformation,” Cressey says. “It was really important to not let every team go in their own direction. Supporting them through outside knowledge about agile, agile transformation, and DevOps was key to our success.”

Sharing experiences also means hearing back from teams about their progress or any issues that arise. “It hasn’t been a linear path from zero to 100 percent agile,” Cressey says. “But we’ve listened to the teams throughout the process, and when we needed to take a different direction based on that feedback we did. We paused or reset any given area or practice to get critical feedback about what’s working and what’s not working.”

Get buy-in from the top

Scaling agile and DevOps might come naturally to those organizations that are “native” to these methodologies. But for the many that are relatively new to the concepts, support from senior executives is a key to success.

“Everyone says they want to be or already are agile. But in order to truly live up to that claim, top-level executives must fully buy into the concept,” says Mark Mathewson, CTO, small business and international, at financial services firm Capital One.

“In my work, I’ve found that executives must support all aspects of budgeting, capacity planning, among other concerns,” Mathewson says.

Capital One is seven years into a massive technology transformation, through which it has comprehensively reinvented its talent and culture, how people work, and the technology infrastructure. “We moved to a 100 percent agile model for delivering software and built a scaled engineering organization,” Mathewson says.

The company spent three years moving to the cloud, scaling DevOps, adopting open source, and is beginning to take advantage of the flexibility created. Capital One is now turning its attention to standard and continuous delivery.

“It used to be that developers’ involvement with products mostly ended after delivery to operations,” Mathewson says. “Now that we’re practicing a DevOps approach, our developers feel even more ownership of these products, and are empowered to get proactive about uptime, supportability, and monitoring.”