Agile software development and operational excellence agility share a few core tenets: bringing value to the customer as quickly as possible, adjusting to market changes, and minimizing waste through improved speed of execution. We think differently about agility in software versus other industries because we prize innovation velocity over those other tenets. We choose innovation over consistency and efficiency.
Agile software development limits process wherever possible. A process is created to ensure consistency of work product and to standardize the best ways of working across all teams. This standardization essentially forces all teams onto a common cadence, and is based on the slowest part of the system. This rhythm is necessary on a factory line. On a manufacturing line, the work of one team is required by the next. In a software environment, however, each piece can be delivered to the customer independently.
Many software companies are giving their teams significant autonomy in reducing innovation bottlenecks so they can achieve their goals. Autonomy reduces the need for process and removes decision-making bottlenecks. To achieve autonomy, strict dependencies between teams must be eliminated. Software architectures like micro-services (and service-oriented architecture before it) as employed by companies like Amazon, Netflix and Spotify support this organizational model.
When employing autonomous teams, taking a data-driven approach is critical to ensure accountability and to give teams clear insights into their performance. Teams must know for which metrics they are uniquely responsible. They must have an immediate way to measure how their efforts affect those metrics.
Another critical element of agile software development is delivering quickly and iterating in the market with your customers. We do this much more efficiently than other industries who manufacture physical goods. In fact, iteration has become our industry’s defining element of improvement. We can deliver a feature-poor product that still brings the user some value and then improve it daily or weekly, using direct customer data to understand how to improve. You can’t do that as easily when your product is kombucha or shoes.
There are a few areas where we have learned from the Operational Excellence movement in manufacturing, most notably the Toyota Production System. From TPS, agile software development has integrated ideas around managing work in progress to achieve focus and building a culture of continuous improvement in our organizations.
At my company, Avvo, we have created programs to help us be more agile as a business. In my talk, I discussed three of these programs. Each of these could be their own article, but I will summarize them here.
The first is a data-driven decision-making framework. We created a framework both to make sure that we were using data instead of opinion to make our strategic decisions and to better document those decisions for the future. The framework is called DUHBs. DUHB is an anagram that stands for Data, Understandings, Hypotheses, and Bets. There is also a silent R at the end that stands for Results. The framework is based on the Toyota A3 problem-solving framework in that it is meant to be concise and reflect the evolving work in progress.
The second program was a way to coordinate and clarify company priorities for the organization. We based this structure on the Franklin-Covey Four Disciplines of Execution. The Senior Leadership team sets Wildly Important Goals (WIGs) for the company on a yearly cadence to align strategy at the enterprise level. We then have a strictly prioritized list of cross-functional tactical projects called subWIGs that we update bi-quarterly.
The final program I described was a new organizational structure for our product development teams. Previously, we organized work around small, narrowly cross-functional teams with little autonomy. These teams would often be re-tasked, creating waste. We moved to create larger, more broadly cross-functional teams. These groups are larger, more fully autonomous, and support the different customer journeys in our product and company.
While the programs I described are nascent and still evolving, we have already had very positive outcomes. We have significantly improved clarity into business priorities at every level of the organization. We have been able to make much faster progress on company goals thanks to this focus. The new team structure has allowed teams to move faster and improve performance on key KPIs relative to the previous structure as well.
In this unique presentation, Kevin will discuss his experience at Adobe, Microsoft, Spotify and now at a legal online marketplace, Avvo. In each organization, Kevin used his background in Operational Excellence to transform businesses. Kevin has created nimble innovation cultures at Adobe & Microsoft, and has used operational excellence tools to help innovation at Spotify. He will discuss how:
Kevin Goldsmith oversees the development and IT teams at Avvo. Prior to joining Avvo, Kevin was the VP of Engineering at Spotify, the popular digital music service, where he led a team of 175 engineers for the company’s mobile, desktop and web platforms. He also served as the Director of Engineering for Adobe Systems for nearly a decade. Kevin has been an industry forerunner in the areas of GPGPU for commercial applications, leading development teams for both Adobe and Microsoft’s Virtual Worlds (later social computing).