Accelerate - The Science of Lean Software and DevOps - Building and Scaling High Performing Technology Organizations

By: Nicole Forsgren PhD, Jez Humble, and Gene Kim
Source:https://www.amazon.com/Accelerate-Software-Performing-Technology-Organizations/dp/1942788339

If I am a senior leader and my team doesn’t feel comfortable sharing risks, then I will never truly know reality.

And, if I’m not genuinely curious and only show up when there’s a failure, then I am failing

QUICK REFERENCE

MEASURES OF DELIVERY PERFORMANCE

CAPABILITIES TO DRIVE IMPROVEMENT

Figure A.1: Overall Research Program

CONTINUOUS DELIVERY CAPABILITIES

ARCHITECTURE CAPABILITIES

PRODUCT AND PROCESS CAPABILITIES

LEAN MANAGEMENT AND MONITORING CAPABILITIES

CULTURAL CAPABILITIES

CHAPTER 1 ACCELERATE

FOCUS ON CAPABILITIES, NOT MATURITY

The key to successful change is measuring and understanding the right things with a focus on capabilities—not on maturity.

Importance of focusing on capabilities is due to four factors.

First, maturity models focus on helping an organization “arrive” at a mature state and then declare themselves done with their journey, whereas technology transformations should follow a continuous improvement paradigm.

Second, maturity models are quite often a “lock-step” or linear formula, prescribing a similar set of technologies, tooling, or capabilities for every set of teams and organizations to progress through.

Third, capability models focus on key outcomes and how the capabilities, or levers, drive improvement in those outcomes—that is, they are outcome based.

Fourth, maturity models define a static level of technological, process, and organizational abilities to achieve.

EVIDENCE-BASED TRANSFORMATIONS FOCUS ON KEY CAPABILITIES

High performers understand that they don’t have to trade speed for stability or vice versa, because by building quality in they get both.

Yellow highlight | Location: 447

CHAPTER 2 MEASURING PERFORMANCE

THE FLAWS IN PREVIOUS ATTEMPTS TO MEASURE PERFORMANCE

First, they focus on outputs rather than outcomes.

Second, they focus on individual or local measures rather than team or global ones.

Queue theory in math tells us that as utilization approaches 100%, lead times approach infinity—in other words, once you get to very high levels of utilization, it takes teams exponentially longer to get anything done.

MEASURING SOFTWARE DELIVERY PERFORMANCE

A successful measure of performance should have two key characteristics.

First, it should focus on a global outcome to ensure teams aren’t pitted against each other.

Second, our measure should focus on outcomes not output:

LEAD TIME

Lead time is the time it takes to go from a customer making a request to the request being satisfied.

Design vs. Delivery

Product Design and Development

Product Delivery (Build, Testing, Deployment)

Shorter product delivery lead times are better since they enable faster feedback

Short lead times are also important when there is a defect or outage

measure product delivery lead time as the time it takes to go from code committed to code successfully running in production

DEPLOYMENT FREQUENCY

Batch size is hard to measure and communicate across contexts as there is no visible inventory.

Therefore, we settled on deployment frequency as a proxy

MEAN TIME TO RESTORE

How quickly can service be restored for the primary application or service they work on when a service incident (e.g., unplanned outage, service impairment) occurs, offering the same options as for lead time (above).

CHANGE FAIL RATE

Finally, a key metric when making changes to systems is what percentage of changes to production (including, for example, software releases and infrastructure configuration changes) fail.

Software Delivery Perofrmance for 2017

High Performers:

Medium Performers:

Low Performers:

Note: Lower performer were lower on average but had the same median as medium

Note: There is no tradeoff between improving performance and achieving higher levels of stability and quality.

THE IMPACT OF DELIVERY PERFORMANCE ON ORGANIZATIONAL PERFORMANCE

Survey respondents were asked to rate their organization’s relative performance across several dimensions: profitability, market share, and productivity.

The fact that software delivery performance matters provides a strong argument against outsourcing the development of software that is strategic to your business, and instead bringing this capability into the core of your organization.

In contrast, most software used by businesses (such as office productivity software and payroll systems) are not strategic and should in many cases be acquired using the software-as-a-service

CHAPTER 3 MEASURING AND CHANGING CULTURE

MODELING AND MEASURING CULTURE

Westrum's typology of organizational cultures

Three characteristics of good information:

Additional insight from Westrum was that this definition of organizational culture predicts performance outcomes.

Table 3.1 Westrums Typology of Organizational Culture.

--> (... Oriented) Pathological (Power) Bureaucratic (Rule) Generative (Performance)
Cooperation Low Modest High
Messengers "shot" neglected trained
Responsibilities shirked narrow shared
Bridging discouraged tolerated encouraged
Failure leads to scapegoating justice inquiry
Novelty crushed leads to problems implemented

MEASURING CULTURE

In order to measure the culture of organizations, we take advantage of the fact that these types form “points on a scale . . . a Westrum continuuam

Likert-Type Questions for Measuring Culture (1-7 scale from strongly disagree to strongly agree)

Calculate the mean across all questions and perform statistical analysis on the responses as a whole.

Culture enables information processing through three mechanisms.

Bureaucracy is not necessarily bad.

WHAT DOES WESTRUM ORGANIZATIONAL CULTURE PREDICT?

Westrum’s theory posits that organizations with better information flow function more effectively.

First, a good culture requires trust and cooperation between people across the organization, so it reflects the level of collaboration and trust inside the organization.

Second, better organizational culture can indicate higher quality decision-making. Not only is better information available for making decisions, but those decisions are more easily reversed if they turn out to be wrong

Finally, teams with these cultural norms are likely to do a better job with their people, since problems are more rapidly discovered and addressed.

CONSEQUENCES OF WESTRUM‘S THEORY FOR TECHNOLOGY ORGANIZATIONS

Google started a two-year research project to investigate what made teams effective,

In other words, it all comes down to team dynamics.

HOW DO WE CHANGE CULTURE?

Our research shows that Lean management, along with a set of other technical practices known collectively as continuous delivery (Humble and Farley 2010), do in fact impact culture,

CHAPTER 4 TECHNICAL PRACTICES

WHAT IS CONTINUOUS DELIVERY?

Five key principles of CD:

A key goal of continuous delivery is changing the economics of the software delivery process so the cost of pushing out individual changes is very low.

Computers perform repetitive tasks; people solve problems.

In order to implement continuous delivery, we must create the following foundations:

THE IMPACT OF CONTINUOUS DELIVERY

Teams that did well at continuous delivery achieved the following outcomes:

CHAPTER 5 ARCHITECTURE

High performance is possible with all kinds of systems, provided that systems—and the teams that build and maintain them—are loosely coupled.

FOCUS ON DEPLOYABILITY AND TESTABILITY

These characteristics of architectural decisions, which we refer to as testability and deployability, are important in creating high performance.

Whether teams can:

“organizations which design systems . . . are constrained to produce designs which are copies of the communication structures of these organizations” (Conway 1968).

Inverse Conway Maneuver which states that organizations should evolve their team and organizational structure to achieve the desired architecture.

Architectural approaches that enable this strategy include the use of bounded contexts and APIs and the use of test doubles and virtualization

A loosely coupled architecture enables scaling: As the number of developers increases, we found: Low performers deploy with decreasing frequency. Medium performers deploy at a constant frequency. High performers deploy at a significantly increasing frequency.

ALLOW TEAMS TO CHOOSE THEIR OWN TOOLS

ARCHITECTS SHOULD FOCUS ON ENGINEERS AND OUTCOMES, NOT TOOLS OR TECHNOLOGIES

Discussions around architecture often focus on tools and technologies. Research shows that these are wrong questions to focus on.

CHAPTER 6 INTEGRATING INFOSEC INTO THE DELIVERY LIFECYCLE

SHIFTING LEFT ON SECURITY

First, security reviews are conducted for all major features, and this review process is performed in such a way that it doesn’t slow down the development process.

Second aspect of this capability: information security should be integrated into the entire software delivery lifecycle from development through operations.

Finally, we want to make it easy for developers to do the right thing when it comes to infosec. This can be achieved by ensuring that there are easy-to-consume, preapproved libraries, packages, toolchains, and processes.

Shift from information security teams doing the security reviews themselves to giving the developers the means to build security in.

High performers were spending 50% less time remediating security issues than low performers.

THE RUGGED MOVEMENT

Rugged DevOps is the combination of DevOps with the Rugged Manifesto.

CHAPTER 7 MANAGEMENT PRACTICES FOR SOFTWARE

LEAN MANAGEMENT

WIP limits on their own do not strongly predict delivery performance. It’s only when they’re combined with the use of visual displays and have a feedback loop from production monitoring tools back to delivery teams or the business that we see a strong effect.

IMPLEMENT A LIGHTWEIGHT CHANGE MANAGEMENT PROCESS

Approval only for high-risk changes was not correlated with software delivery performance.

Teams that reported no approval process or used peer review achieved higher software delivery performance.

Finally, teams that required approval by an external body achieved lower performance.

Our recommendation based on these results is to use a lightweight change approval process based on peer review, such as pair programming or intrateam code review, combined with a deployment pipeline to detect and reject bad changes.

CHAPTER 8 PRODUCT DEVELOPMENT

LEAN PRODUCT DEVELOPMENT PRACTICES

Figure 8.1: Components of Lean Product Management

Work in Small Batches
Make Flow of Work Visible
Gather & Implement Customer Feedback
Team Experimentation

Team Autonomy: The ability of teams to try out new ideas and create and update specifications during the development process, without requiring the approval of people outside the team.

EFFECTIVE PRODUCT MANAGEMENT DRIVES PERFORMANCE

The virtuous cycle of increased delivery performance and Lean product management practices drives better outcomes for your organization

CHAPTER 9 MAKING WORK SUSTAINABLE

DEPLOYMENT PAIN

We found that where code deployments are most painful, you’ll find the poorest software delivery performance, organizational performance, and culture.

Fundamentally, most deployment problems are caused by a complex, brittle deployment process.

In order to reduce deployment pain, we should:

COMMON PROBLEMS THAT CAN LEAD TO BURNOUT

Six organizational risk factors that predict burnout (Leiter and Maslach 2008):

Most organizations try to fix the person and ignore the work environment, even though her research shows that fixing the environment has a higher likelihood of success.

CHAPTER 10 EMPLOYEE SATISFACTION, IDENTITY, AND ENGAGEMENT

EMPLOYEE LOYALTY

employees in high-performing organizations were 2.2 times more likely to recommend their organization as a great place to work,

MEASURING NPS

Single question: How likely is it that you would recommend our company/product/service to a friend or colleague?

In our study, we asked two questions to capture the employee Net Promoter Score: Would you recommend your ORGANIZATION as a place to work to a friend or colleague? Would you recommend your TEAM as a place to work to a friend or colleague?

Employee NPS was significantly correlated with the following constructs:

CHANGING ORGANIZATIONAL CULTURE AND IDENTITY

We asked people the extent to which they agreed with the following statements (adapted from Kankanhalli et al. 2005):

Used a Likert-type scale to measure agreement or disagreement with these statements.

What this tells us is a sense of identity can help reduce burnout by aligning personal and organizational values

In contrast to the way many companies still work: requirements are handed down to development teams who must then deliver large stacks of work in batches.

In this model, employees feel little control over the products they build and the customer outcomes they create, and little connection to the organizations

DIVERSITY IN TECH-WHAT OUR RESEARCH FOUND

Research shows that teams with more diversity with regard to gender or underrepresented minorities are smarter (Rock and Grant 2016), achieve better team performance (Deloitte 2013), and achieve better business outcomes (Hunt et al. 2015).

It is also important to note that diversity is not enough. Teams and organizations must also be inclusive. An inclusive organization is one where “all organizational members feel welcome and valued for who they are and what they ’bring to the table.’

WOMEN IN DEVOPS

research linking the presence of women in leadership positions to higher financial performance (McGregor 2014), stock market performance (Covert July 2014), and hedge fund returns (Covert January 2014).

Teams with more women tended to fall above average on the collective intelligence scale (Woolley and Malone 2011).

CHAPTER 11 LEADERS AND MANAGERS

A good leader affects a team’s ability to deliver code, architect good systems, and apply Lean principles to how the team manages its work and develops products.

(Rafferty and Griffin 2004). According to this model, the five characteristics of a transformational leader are:

Measured transformational leadership using survey questions adapted from Rafferty and Griffin (2004). My leader or manager:

Managers, in particular, play a critical role in connecting the strategic objectives of the business to the work their teams do.

TIPS TO IMPROVE CULTURE AND SUPPORT YOUR TEAMS

Enable cross-functional collaboration by:

Help create a climate of learning by:

Make effective use of tools:

CHAPTER 12-15 THE RESEARCH

Lots of good stuff here

CHAPTER 16 HIGH-PERFORMANCE LEADERSHIP AND MANAGEMENT

Case study of ING’s New Agile Organizational Model

APPENDIX A CAPABILITIES TO DRIVE IMPROVEMENT

CAPABILITIES TO DRIVE IMPROVEMENT

Five categories:

CONTINUOUS DELIVERY CAPABILITIES

ARCHITECTURE CAPABILITIES

PRODUCT AND PROCESS CAPABILITIES

LEAN MANAGEMENT AND MONITORING CAPABILITIES

CULTURAL CAPABILITIES