Agile Orthodoxy: Taking a “processes and tools over individuals and interactions” Approach to Agile

There are editorialists in the Agile community who are eager to dismiss practices and frameworks they believe do not align with some orthodox interpretation of the Agile Manifesto. I can appreciate where many of these editorials are coming from because it is no secret that agile transformations fail and fail frequently [1]. The argument is the adoption of fake Agile practices and frameworks that are blatantly unaligned with the Agile Manifesto contributed to the failure. I have to disagree. Poor planning, lack of appreciation for the economic importance of how people work together, and the misuse of practices and frameworks contribute to the failure, and not the practice or framework itself. 

It is an ironic paradox these kinds of tribal conversations are even taking place, considering the first value of the agile manifesto is “individual and interactions over processes and tools.” Declaring practices as agile or not is taking a “processes and tools over individuals and interactions” approach to agility. It highlights a belief there is such a thing as an “agile practice” or framework.  Let’s be clear: there is no such thing as an “agile” practice or framework. There are recommended ways of working and collaborating that are known to help teams and enterprises start on their agile journey, but you cannot identify a practice or framework as agile or not. If that were the case, then every cargo cult team would be an exemplary agile team.

Let’s be very clear about what agility is: it is the ability to sense and respond faster than the rate of change. In business, it is a time-based strategy for gaining a competitive advantage for economic success. Kent Beck captured the essence of Agile in the title of his XP book “Embrace Change.”  A little research quickly reveals agility has long been known as a competitive strategy that existed well before the term was appropriated for the Agility Manifesto [2,3,4,5]. Even 1950s coal miners applied what we would instantly recognize as an agile mindset to dramatically improve output[6]. Our beloved frameworks, Scrum, XP, LeSS, Scrum @ Scale, and SAFe, are proven means for starting a team on their agile journey. But they are not the goal or the only way an enterprise can start on its agile journey.

Case in point: back in 2001, I was collaborating on a book with Alistair Cockburn when, one afternoon, he suddenly phoned me and excitedly told me all about the Snowbird meeting. I just shrugged my shoulders because  I have had the good fortune that many of the companies I had worked at had an agile mindset. Our 1980s and 90s software development practices would not be recognizable as Scrum or XP. However, our organizational culture gave us a major competitive advantage and enabled us to operate at a faster tempo than our competitors. In some cases, our fast tempo not only enabled us to respond faster than our competitors to market changes but also enabled us to drive the market changes that frustrated our competitors.

The Agile Manifesto made agility accessible to software developers and inspired many to think about better alternatives to software development than the so-called “Big-M” methodologies that dominated the enterprise landscape. While the Agile Manifesto appropriated the term Agile, it highlighted values that enabled fast sense and respond capabilities for a software team.  It was a breath of fresh air.

The problem with using the Manifesto as some scripture to bless a practice or framework as agile or demonize it as not, is that it stifles innovation and improvement. Change is the very essence of agile. A “processes and tools” approach to agile makes the goal of agile to be compliance with a specific set of practices rather than fast learning cycles for improving outcomes. As an agile coach, my job is to help my client exploit agility as a strategy for economic success. My job is not to create a textbook example of Scrum, SAFe, DA, or any other framework. Just because a team can write textbook-quality user stories does not make them agile. What I really want to know is, can they predictably get something demonstrable and valuable accomplished within a timebox? What did they learn about both the product and the process? What would it take to shorten the lead time for that learning? Can they quickly learn if they are building the right thing? Can they improve outcomes by experimenting with and changing practices? Now that is Agile as individuals and interactions.  I’ve seen too many processes and tools cargo cult organizations where teams go through the framework motions without any real understanding or choice about the practices they pretend to follow.

Agile is about learning and using that learning to improve both our product and process. Principled conversations, questioning, and challenging beliefs and practices are good because that is how we learn and advance our profession. After all, a few individuals questioned if our traditional big-M methodologies were the best future for software development and encouraged the emergence of the agile community. However, the puritanical dismissal of practices and frameworks that do not align with an editorialist’s orthodox interpretation of the Agile Manifesto diminishes the Agile community to a collection of competing tribes protecting their territory. Curiosity, learning, and advancement are stifled. Worse, these strong puritanical views are not just pedantic academic arguments. They have led to serious economic consequences for enterprises. 

Scrum, LeSS, DA, SAFe, Scrum @ Scale, etc. – We all want the same thing: to help clients deliver value to customers, make improvements along the way, and, of course, make some money by helping them. After all, I have a mortgage to pay and a kid to send to school. I am not a charity. We just have different ways of doing it, but the end goal is the same regardless of the practices or framework chosen. Thus, we have common ground. The reality is our frameworks are sets of integrated practices that start an enterprise on its lean and agile journey. They are not an end to themselves. Dictating which practices “are agile” and which are not takes our attention away from managing outcomes and puts our attention on demanding compliance with a set of blessed practices. And that is not agile. 

[1] Davenport, T. H., & Westerman, G. (2018). Why so many high-profile digital transformations fail. Harvard Business Review9(4), 15.

[2] Stalk Jr, G., & Hout, T. M. (1990). Competing against time. Research-Technology Management33(2), 19-24

[3] Richards, C. (2004). Certain to win: The strategy of John Boyd applied to business. Xlibris Corporation

[4] Freeman, C. (1969). T. Burns and GM Stalker. The Management of Innovation.

[5] Lawrence, P., & Lorsch, J. W. (1967). Organization and Environment: Managing Differentiation and Integration. Boston: Harvard University.

[6] Trist, E. L. (1963). Organizational choice; capabilities of groups at the coal face under changing technologies: the loss, rediscovery and transformation of a work tradition. London: Tavistock

Where the < bleep > is my car? An Overlooked Lesson from Toyota

We in the SAFe community love to tell the story of Toyota and how its development and implementation of Lean concepts manifested by the Toyota Production System gave Toyota a massive manufacturing advantage. We love presenting the House of Lean and wowing our clients with words like Kanban, Kaizen, Muda, and Gemba. We love coaching organizing around the value stream and delivering a flow of value. We love this because we see the real benefit Lean and Agile thinking brings to an enterprise. However, there is another valuable but lesser known Toyota story we should tell and and that is the harsh economic consequences of a “broken” value stream

A value stream represents the series of steps for how we go from some trigger event to the delivery of value, or as we often like to say, “concept to cash”. Value stream thinking encourages us to take a systems view and optimize for delivery of outcomes rather than taking a more siloed view and optimizing for perceived local “efficiency”.  

A simplified example of a value stream

Mapping the value stream helped Toyota engineers learn where there were wasteful delays resulting and remove them. Taiichi Ohno’s dream was to minimize the time from when a customer ordered a car until when it was delivered.

A broken value stream is when the flow of value is interrupted and delayed because organizational silos or practices artificially segment the value stream. Up until the mid 1980s Toyota was hampered by a broken value stream. In a situation we often find ourselves in, the cause of their value stream breakage was their artificial distinction between “business” and “technology”.

In their book “Competing Against Time” and also in an HBR article [Time- The Next Source of Competitive Advantage, HBR July 1988], George Stalk and Thomas Hout tell the story of Toyota’s “broken value stream” and how it effectively squandered their manufacturing gains. Until the 1980s Toyota was organized as the Toyota Motor Manufacturing Company which built cars and the Toyota Motor Sales Company which sold and distributed cars – technology and business. In the late 1970s the Toyota Motor Manufacturing company could manufacture a car is less than two days. However, the Toyota Motor Sales company’s entrenched bureaucratic organization squandered this gain taking nearly a month to process a sales order and deliver a vehicle. According to Stalk and Hout:

“Twenty to thirty percent of the cost of the car – more than it cost to actually manufacture the car – and more than 90% of the time the customer had to wait was consumed by the sales and distribution function” [Stalk and Hout, Competing against Time, pg. 68]. 

We can imagine the frustration this created for Taiichi Ohno where the whole point of the Toyota Product Systems was to “…reduce the time line from when the customer gives us an order to the point we can collect the cash”.

In 1982 the frustration boiled over and two companies were merged. The executives and directors of Toyota Motor Sales were replaced by executives and directors who trained in Lean thinking. New processes and management information systems supporting those processes were developed. By 1987 the sales cycle was reduced from a month to 6 days from order to delivery of the vehicle. The benefit of this time compression was far more than just a cost saving exercise. The ability to compress time in this manner gave Toyota a massive competitive advantage because they were able to go from “selling whatever was on the lot”, to “selling what the customer wanted”. The benefit of this is huge because the short cycle times meant Toyota was able to exploit fast learning cycles and discover what cars customers wanted. By reducing their timelines and embracing change they not only were able to turn over units more quickly, they could also command higher margins on their sales.

What is the lesson we should take from this lesser known Toyota story? Far too many digital transformations follow the pattern of Toyota’s broken value stream with the same results. While our clients obtain some economic gain from the ability of their technology teams to predictably create economic value we may not have really made a significant difference in our client’s ability to deliver value to their customer. Technology is only one part of the value stream just like Toyota Motor Manufacturing was only one part of Toyota’s vehicle delivery value stream. To deliver customer value Toyota had to receive an order for a car, manufacturing the car, and then deliver the car. Just manufacturing a car creates little value.

A common example of a “broken value stream” in software development is the hybrid agile implementation , often referred to as “agi-fall”, or waterscrumming used by many organizations. Even in organizations adopting SAFe to inform their way of working we see this pattern. The technology teams eagerly organize around the flow of value, but only within their silo.

Broken Value Stream resulting from a hybrid agile implementation

While in this model we may be able to predictably create software in a very short period of time what have we gained if it takes a year or more to ideate, review, analyse, and fund a project before it is even seen by the technology organization? What have we gained if it takes several months to release software after its done?

In the Age of Software and Digital, just like Toyota, we risk squandering the gains of Lean-Agile adoption when our focus is only the technology side of the value stream or just a short segment of our value stream. To compete in the Agile of Software and Digital we need to learn Toyota’s lesson and not squander our technology gains. We need to remember Lean and Agile are not just IT or engineering science experiments.  Rather as Toyota learned they are strategies for successfully competing in the time compressed era of the digital business. 

It’s not ALL about costs. It’s about ALL costs.

Good cost discipline is a core capability of any successful enterprise and every manager knows the consequences of runaway costs. If not outright risking the viability of the business, broken careers, and loss of trust are often result of blown budgets. Software development gets a lot of attention because it is frequently one of the biggest – if the not the biggest – costs for many organizations. It is therefore not unreasonable for organizations to seek ways to reduce their software development costs. 

Agile methodologies and practices are often offered as an approach for not only reigning in but also reducing development costs. I have been at many clients where the primary motivation for adopting agile or going through a “digital transformation” was to reduce IT costs by some significant percentage, often 30 to 40% within two years. This is mis-guided. First, this turns the agile coaches into the hatchet people because everyone knows staff are the biggest component of software development costs. A 30 to 40% cost reduction means reducing head count by 30 to 40%. This is not going to inspire a lot of trust, cooperation and enthusiasm for adopting agile practices.

Second, focusing almost exclusively on development costs reduction risks increasing costs in terms of delays, inventory, over-processing and movement – the wastes of lean. While development costs is accounted for and visible, these wastes of lean are invisible and unaccounted for. Yet their impact can be more devastating than the development costs that appear as line items on the corporate ledger.

To illustrate this, let’s examine a past client to demonstrate how a sharp focus on development costs creates waste. At this client management was judged on their development cost performance and there were six teams working on a variety of different projects. Well the term team may be a bit of an aggrandization, because these were not dedicated agile teams. Rather these were project specific work groups with a Scrum Master and Product Owner.  Each “team” had responsibility for one project. People were frequently allocated to multiple “teams” to ensure their skills were efficiently utilized.

This multi-tasking across multiple projects increased the organizations work-in-progress, a source of waste. Most developers were on at least 2 teams and often had other operational responsibilities. The result was at any one time there were a large number of incomplete projects with incomplete features in progress. There was a lot of activity taking place but very little value delivered.  This is a classic example of the lean waste of inventory. Where is the line item for inventory? At least in manufacturing they do account for work in progress and manage their inventory levels. Why don’t we do this in software? The cost this inflicts is very real, yet we ignore it.

Worse, it is well known that such multi-tasking introduces a context swap tax – the time it takes an individual to switch from one task and get into the flow on another. Some studies place this tax at approximately 20%, while others suggest this may even be higher – up to 40% (Psychological Review, 104, 749-791, Multi-tasking: Switching Costs.   Retrieved July 17, 2012, from http://www.apa.org/research/action/multitask.aspx]). The implication of this is that to “efficiently utilize our staff” by keeping them close to 100% busy, we are effectively reducing their effective work week by at least one day, and perhaps even 2. In lean terms this is the waste of unnecessary motion, moving the machine or staff more than necessary. Where is the line item for this in our cost accounting?

Another cost saving was supposedly achieved by outsourcing testing to an overseas company some 12 time zones way. I’m assuming part of the pitch for outsourcing testing was not only were the overseas testers a quarter the cost of the domestic staff, but development work could take place around the clock. While it may be enticing to believe in a 24 hour development cycle story, it is certainly hard to achieve. Outsourcing of testing introduced the classic lean waste of transport where work is regularly shipped from one organizational  silo to another.  This created significant coordination delays between developers and testers. Clarifications, explanations, and rework cycles were significantly slowed by the time zone delay and this was exacerbated by the lack of a shared clear understanding of the system between development and test. These coordination delays along with other bottlenecks in the testing pipeline meant that test often ran two, and even sometimes three sprints behind the development teams, further increasing the work in progress. Of course there was no line item for capturing cost incurred for “transportation”

In an attempt to reduce these coordination delays, the organization unbeknownst to themselves, added in the waste of over-processing – doing more work than necessary to create value – to their invisible waste ledger. The business analyst wrote highly precise specifications that approached pseudo-code in their formality and it was not unusual to see 6 page user stories. The assumption was of course writing precise user stories would compensate for the lack of a shared clear understanding between development and test and therefore reduce coordination delays. This approach completely defeats the intention of a user story. User stories are not requirements that are thrown over the fence to an unsuspecting team. Rather, user stories facilitate development speed because they encourage a conversation between the team and the stake holders. These conversations quickly align the team and stake holders and reduce the coordination delays. Ironically writing detailed user stories didn’t have the intended effect because they just tended to confuse the test team even more. Where is the line item for the cost of over-processing?

So how could we start making these costs – the wastes of lean – visible? There are several tools we can use. First the use of a Kanban board can make “inventory” or work in progress immediately visible. Second, a cumulative flow diagram can show the relationship between work-in-progress and cycle time and help us answer questions like, how long does it take for us to get something done and what this the relationship between WIP and cycle time (getting something done).

Finally, show the true cost in dollar terms of all that “unfinished product” – that is value we cannot realize because the work is not done. Al Shalloway suggests “any waste in the system will show up as a delay” and this gives us a powerful tool to put a dollar figure to cost of this waste. All the wastes I described above, motion, inventory, transportation and over-processing will manifest themselves as delays in delivering value.  Let’s see if we can express in dollar terms the cost of these wastes by calculating the delay these wastes imposed on the initiative.

The goal of the initiative was to reduce call center costs and increase customer satisfaction by creating a self service portal for customers. We had a team of 11 people, and our “aggressive” plan forecast it would take at least 12 months to deliver the system. From my point of view, this just did not seem like a 132 staff month effort. It was mostly get some data from the data base, update it, put it back – bread and butter IT work. I asked the team, what would happen if we appropriated the conference room we were in, set up our workstations around the table and focused exclusively on this one system? The consensus was about 2 months, 3 months at the outside. So, call it 33 staff months.

It was estimated the self service portal would save about $45,000 per month for the organization. That means every month the self service portal was not in service, the organization gave up $45,000 of benefit. The invisible waste resulting from the near exclusive focus on development costs meant the company was delaying the release of the portal by 9 months and giving up $405,000 of benefit. Where is the line item for that? Of course the problem is this line item does not show up on the IT ledger, it is not IT giving up $405,000. Rather, it is some other siloed department in the organization. It’s not IT’s problem.

Not only were these costs another department’s problem, these delays were silently built into the project plan. Developers are asked for timeline estimates and gave those estimates based on their existing development practices, and then project management developed schedules, resource plans and business cases for these initiatives based on those estimates and resource allocations.  Now multiply that waste across multiple initiatives and you have a loss of value situation that should have impolite words coming out of the c-suite.

As a solution we proposed a simple backlog of initiatives, with true teams – not work groups with an Scrum Master and Product Owner – “pulling initiatives” when they were ready to swarm on it. In essence we proposed a simple form of lean portfolio management. When we proposed this alternative to our patron it was declined because it would mean risking the mandate to reduce per team cost. Our patron’s mandate was to get the cost of a “scrum team” down to 50K per month and he was now looking at completely outsourcing coding and testing. That was the line item on his IT ledger and not the loss of value the wastes created. His mandate was not maximizing throughput and delivered value.

Further, there were the political realities of the organization. Few project sponsors would accept their project being delayed so development teams could focus exclusively on getting another sponsor’s project done before starting theirs. Despite the fact they would get their project sooner, the thought of a “rival” manager getting their system earlier was so distasteful that they preferred to incur massive waste for the organization as a whole. Everyone acknowledged the cost of this waste, but there was no benefit to them for reducing that waste and in fact, there was a greater likelihood they would be sanctioned for not meeting their cost reduction targets if they tried.

While in my opinion this was not a successful agile organization, they were of the opinion their new operating approach was better than their previous classical waterfall approach. Their delivery was more predictable than what they had experienced in past. I suppose we can call that a success despite knowing how amazingly better the organization could be. The dark horse on the horizon is of course a competitor who does see how amazingly better they could be. A competitor who realizes it not all about costs, it is about all costs.

(c) 2020 Steve Adolph

Is “Business Agility” the Future of Agile? – Thoughts from XP2019

The Future of Agile Panel at XP2019

I just got back from a week inMontreal where I had the opportunity to actively participate in XP2019, the Agile Alliance’s 20th International Conference on Agile Software Development (http://www.xp2019.org), co-chairing the experience report track with Rebecca Wirfs-Brock and filling in as the Leadership symposium chair. XP2019 describes itself as a forum where Agile researchers, practitioners, thought leaders, coaches, and trainers get together to present and discuss their most recent innovations, research results, experiences, concerns, and challenges, and debate the latest trends. It’s a small and intimate conference where both practitioners and researchers are able to look beyond “the edge”. In keeping with this billing, and with it being nearly 20 years since the fabled Snowbird meeting, the theme for this conference was “Agile – The Next 20 years”.

With the growing awareness of “business agility”, one question raised was “is business agility the future of the agile movement?” There is no shortage of pundits now pitching “business agility” and, in this age of disruption, only the agile will survive – so clearly it’s time for agility to move beyond the data center to across the enterprise. I was able to “officially” contribute my point of view as a panelist on the Business Agility panel. From my perspective, the thought that somehow the agile software community is leading business to a bright “business agility” future is somewhat strange because, in my humble opinion, agility was a well known business competition strategy long before the famed skiing vacation at Snowbird.

We in the agile software development community can be a little myopic, only seeing the world through the lens of the Agile Manifesto. Agility as a business strategy is an old concept – perhaps a century old, perhaps even older. One only has to do a little research to find many writers and business thought leaders, such as Stalk and Thomas – Competing Against Time , Verne Harnish’s Rockefeller Habits, Chet Richard’s Certain to Win, and of course Jim Collin’s Good to Great all describing agility as a business success strategy in the mid 80s and even earlier. My favourite definition of agility comes from Colonel John Boyd who, in the 1950s, developed the so called Observe-Orient-Decide-Act (OODA) model [https://en.wikipedia.org/wiki/OODA_loop]. To paraphrase Colonel Boyd, agility is “learning faster than your competitors and/or the rate of change”. Lovely, simple, succinct. It does not take a manifesto of software development, or much imagination, to know what happens if you are learning slower than your competitors or slower than the rate of change. This definition moves agility from an inward software-centric focus of “…better ways of developing software…” to a focus on business outcomes – business success. The corporate landscape is littered with marquee companies who learned more slowly than the rate of change or their competitors. I am willing to wager some of those failed companies even had agile software teams – anyone remember Nokia? In the age of digital disruption it would seem that business agility is certainly a concept whose time has come.

However, I am ambivalent about the term “business agility”. For better or worse, we in the software community appropriated the term “agile” without fully acknowledging agile history. There is much we can learn from others and from history. Optimistically, I hope the term “business agility” will be the solvent that finally dissolves the artificial barrier between “the business” and “IT” because, the last time I looked, IT is part of the business and not some bag on the side. This artificial barrier not only delays the ability for the business to bring new products and services to market – think a bank wanting to offer a new kind of bank account or loan service – but also delays validating the business hypothesis of that product or service. We only learn if the product or service is valuable when it finally goes into service. This artificial barrier slows the build-measure-learn cycle. I am excited by the possibility of large enterprises becoming more nimble and able to respond faster to their customers needs and changing market dynamics. Business agility could create powerful teams that can exploit all of an organisation’s capabilities to quickly learn and validate a new business hypothesis. IT is no longer a cost center, but rather a strategic part of the business.

My greatest concern is that “business agility” will become a sales mantra to bring a myopic manifesto to the business. “Business agility” will be used to sell certification courses beyond the software teams, such as Scrum for HR, Product Owner training for marketing, “agile” accounting for CAs and CPAs. People will be able to add additional two and three letter designations to their e-mail signatures. Retiring project managers will have a second career as certified agile business coaches. Organizations will prefix their operations with “agile” and someone will claim to have a magic recipe that turns a company into a fast moving agile business. We’ve seen this movie before and it does not end well.

Two underlying themes emerged at XP2019… Has agile been commodified and gone off the rails? Is there a future for agile as we currently know it? These are juicy topics for future posts. For now, we need to focus on taking a pragmatic approach and recognizing that “agile” has a rich history and encompasses a wide range of ideas, and is continuing to evolve. There is no “one size fits all” solution. We need to help companies identify what they need to learn and understand in order to grow into more profitable and sustainable enterprises. Our pursuit of “business agility” is just beginning and there is a lot for us learn.