The Agile Executive

Making Agile Work

Archive for the ‘Benefits of Agile’ Category

Scrum at Amazon – Guest Post by Alan Atlas

with 6 comments

Rally’s Alan Atlas shares with us his experience as the first full-time Agile trainer/coach with Amazon. His account is both enlightened and enlightening. He connects the “hows”, “whats” and “whys” of Scrum in the Amazon context, making sense for the reader of what took place and what did not at Amazon. You will find additional insights by Alan in The Scrum Mechanic.

Alan has been professionally involved in high tech for nearly thirty years. His career spans top technology companies such as Bell Labs and Amazon as well as various intriguing start-ups. He brought to market numerous products, including OSF Motif and Amazon’s S3. His passion for Scrum has recently led him to make a career switch into full-time Agile Coaching and Training with Rally Software.

Here is Alan on what he learned about Scrum transition at Amazon.com:

Agile practices were present at Amazon.com as early as 1999, but it wasn’t until the years 2004 – 2009 that widespread adoption of Scrum occurred throughout Amazon’s development organizations. Amazon.com’s unplanned, decentralized Scrum transformation is of interest because it is different from the current orthodoxy regarding enterprise Scrum transitions, and its strengths and weaknesses reveal some fundamental lessons that can be applied to other enterprise Scrum transitions.

Here are the major forces that played in the transition.

Permission

Teams (including local management, of course) at Amazon have historically been given wide latitude to solve their problems (coupled with responsibility to do so without waiting for outside help) and are usually not overburdened with detailed prescriptive practices promulgated by centralized corporate sources. The emphasis is on creating, delivering, and operating excellent software in as streamlined and process-light a way as possible. Teams at Amazon have permission to choose.

Teams

The corporate culture at Amazon.com has always been surprisingly consistent with and friendly towards Agile practices. The 2 Pizza Team concept has been written about many times over the years (click here), and a close look shows that a 2 Pizza Team is basically a Scrum team without the Scrum. Teams at Amazon, especially 2 Pizza Teams, are stable and long-lived. Usually a development team reports to a single direct manager.

Knowledge

All it took to light the fire was someone who was willing to spend a little time educating interested parties about Scrum. Teams who learned about Scrum were able to make local decisions to implement it. Results were demonstrated that kindled interest in other teams.

Impetus

Over time, an email-based Scrum community formed. Scrum Master training was provided on an occasional basis by someone who simply wanted to do so. Basic Scrum education continued on an ad hoc and voluntary basis. Eventually enough teams had adopted Scrum that a need was seen and a position of Scrum Trainer/Coach was created. Having a full-time Trainer and Coach available made adoption easier and improved the quality of scrum implementations. By mid-2008 the community was able to support an Open Space Scrum Gathering within the company.

What was (and one assumes is still) missing was higher level engagement at the organization and enterprise levels. No executive support for Scrum ever emerged, and the transition was therefore limited primarily to the team level, with many organizational impediments still in place.

The success of Scrum at Amazon validates one easy, frictionless way to begin a Scrum transition.

  1. Establish stable teams
  2. Make Agile and Scrum information widely and easily available
  3. Give permission to adopt Scrum

The advantage of this approach is that it requires a minimum of enterprise-wide planning and it allows teams to select Scrum, rather than mandating it. All of the rest of an enterprise Scrum transition can be accomplished by simply responding to impediments as raised by the teams and providing management support for change. Based on experience, the impediments raised will include demand (pull) for coaching, scaling, training, organizational change, a Transition Team, PMO changes, and all of the other aspects of an enterprise transition that many organizations labor so mightily to plan and control. Leadership for this kind of transition can only be Servant Leadership from the C-level, which is exactly the right kind for an Agile initiative, isn’t it?

The only impediment to Scrum adoption at Amazon was lack of knowledge. Teams were in place, and permission was part of the culture. When knowledge was provided, teams adopted Scrum. The strength of this process was based on the fact that only teams that were interested in trying Scrum actually tried it. There was no mandate or plan or schedule for this uptake.  Nobody was forced to use Scrum. Teams made an independent, informed decision to try to solve some of their problems. Lean and Agile thinkers will recognize that this as a pull-based incremental approach and not a plan-driven, command and control, push-based approach.

What about the things that didn’t happen at Amazon? The transition stalled at the team level due to failure to engage either middle or upper management in a meaningful way.  Both of those groups are required to bring a transition to its full potential. Training for middle managers, in particular, is crucial, but will usually reach them only with executive sponsorship.  A Transition Team is crucial when organizational and enterprise-wide impediments begin to be unearthed. Support from a source of advanced knowledge and experience (trainer/coach) is key.

Was Scrum good or bad overall for Amazon? There is only spotty, anecdotal data to report. Certainly there are many stories of teams that used Scrum very successfully. The Amazon S3 project, which not only delivered on time after about 15 months of work, but nearly achieved the unusual result of having the entire development team take a week’s vacation leading up to the launch day. It was not the crunch-time, last minute, panic-drenched effort that is common with projects of this scope and complexity. There was the team that “hasn’t been able to deliver any software for 8 months” that, sure enough, delivered some software a month later at the end of their first sprint. Another team reported that their internal customers came to them some time after the team had adopted Scrum, asking that they implement a whole list of random features. “We know these aren’t your responsibility, but you’re the only team that is able to respond to our requests.” Finally, there was the platform team that had literally dozens of internal customers. When that team adopted Scrum, they organized their customers into a customer council of sorts and let them simply decide each month what the team would work on, for the good of all, in order of value to Amazon overall. But even if none of these anecdotes were available to tell, the mere fact that teams opted on their own to adopt Scrum implies that something about Scrum helped them be more successful and more satisfied professionally. If that were not true, then they would not have stayed with it at all, right?

Written by israelgat

July 20, 2009 at 12:20 am

The “All In!” Approach to Agile Rollout – Austin and Atlanta

with one comment

The June 18 “Ask and Expert” session of Agile Austin poses a unique opportunity to to discuss the pros and cons of the “All In!” approach with Erik Huddleston– an Agile champion who has successfully implemented Scrum in this manner. Bringing Scum to Inovis in 2007, Erik opted for an “All In!” implementation instead of the more customary team-by-team rollout. The Inovis case study is one of the very few authoritative sources on this gutsy approach.

If you can’t attend the clinic in Austin on the 18th, you might want to watch out for his forthcoming Agile Success Tour panel session in Atlanta, GA on the 25th. Erik’s insights will be posted  here and here a few days after the event.

Written by israelgat

June 13, 2009 at 2:04 pm

“What is Our Recipe for Success?!”

with one comment

A pattern started to emerge for me as I was listening to various participants in the Rally Agile Success Tour in Santa Clara.  Agile champions these days often operate in the context of aging business designs. Opportunities the Agile champions highlight to utilize Agile for higher productivity, better quality and faster time-to market are often lost amidst a vicious cycle: sooner or later aging business design are accompanied by value outflow; the severity of the value outflow problem consumes most/all executive cycles; consequently, the message about the various ways in which Agile could help turn things around are not heard. It is a sad irony: at the time Agile is needed more than ever, openness and receptivity toward improving operations and attaining competitive advantage through new (software) methods tend to decline. 

Here is a simple question you could ask executives in your company if/when your Agile message does not seem to get heard:

What is our recipe for success?!

The point in posing this question is straightforward: start a dialog aimed at identifying the linkage(s) between the benefits of Agile and the strategy or grand strategy a company is implementing. No matter what business your company is in, chances are software plays a big part in whatever it does. Any business process in your company depends on software. Services your company offers require software in one way or another. Quite a few products your company brings to market are likely to contain embedded software. Compliance requirements your company needs to adhere to inevitably depend on software. These days we all witness pervasive software in the true sense of the term.

The possibility exists that the question “What is our recipe for success?!” might be be misinterpreted as flippant. If you are worried about such misinterpretation, ask your Agile consultant to bring up this question. It is an absolutely appropriate, indeed necessary, question for him/her to pose in the course of designing an effective Agile roll-out. The roll-out itself might (or might not) be focused on R&D. However, the plan for so doing must factor in business circumstances and imperatives. The recipe for success question is part of “deciphering” the business context to enable R&D to be truly aligned with the business.

Written by israelgat

June 8, 2009 at 7:38 am

Recommendations from Santa Clara

with 4 comments

So much was going on simultaneously in Rally’s Agile Success Tour event in Santa Clara! More than 140 participants, an eclectic panel, 6 breakout sessions, numerous 1-1’s and, of course, a ton of spontaneous interactions. This posts in many ways represents my own “thread” within this very gratifying event. My Rally colleagues will no doubt supplement this post by commenting on the various activities and interactions in which I was not able to engage.

The number one question I was asked in the course of the event was about the difficulties quite a few software development champions encounter in the course of attempting to coalesce successful Agile projects into comprehensive initiatives at the corporate level. Team successes with Agile sometimes remain isolated islands of excellence within corporate “oceans.” The proven  ability of a capable Agile champion to carry the day in specific project does not necessarily lead to adoption of Agile as part of an all-encompassing corporate doctrine. Just like the Geoffrey Moore entrepreneur who demonstrates success in the early days of his/her start-up but does not quite make it big time, the Agile champion often struggles to cross an adoption chasm and make his/her way to “main street.”

Colleagues Ryan Martens, Dave West and Tom Grant discussed how to apply Agile in combination with Lean to elevate Agile from the project level to the corporate level. There is no need to repeat their good work (click here for example) in this post. Instead, here are the tactical suggestions I gave in Santa Clara to various Agile champions who looked for recommendations how to elevate Agile:

  1. A statement of Agile benefits is not sufficient. It must go hand-in-hand with an assessment of the risks (plural!) associated with the Agile expansion. See A View from the Executive Suite for details of the recommended approach.
  2. Statements of Agile benefits and corresponding risk mitigation approaches are not sufficient. As Peter Drucker quipped, Companies make shoes! To be relevant at the strategic level, the Agile program must be tied into the top initiatives a corporation carries out.
  3. Statement of Agile benefits, risk mitigation and strategic relevance are not sufficient. These statements must be accompanied by a clearly articulated approach to managing the cultural aspects of extending and expanding Agile. If at all possible, opt for for building on the strength of the current culture. It is much more difficult to try to change a culture. Moreover, it take a long time to transform a culture. See my forthcoming presentation Four Principles, Four Cultures, One Mirror in Agile Roots for details.

I will allow myself to repeat my recent assessment from the NYC event as it applies so well to the Santa Clara event:

I came out of the Santa Clara event convinced that we as a movement have a great opportunity on our hands. What we -Agilists – do works quite well. The need clearly exists to elevate Agile to the enterprise level. We will be solving a real problem in so doing.

Written by israelgat

June 6, 2009 at 10:17 am

How Agile Projects Measure Up, and What This Means to You

with 10 comments

The Cutter Consortium Executive Report How Agile Projects Measure Up, and What This Means to You by Michael Mah and Mike Lunt is now available to anyone who is interested in software metrics.  This is a rigorous data-driven report. Click here and use the promotion code MEASUREUP in the registration forum.

Written by israelgat

May 9, 2009 at 11:01 am

Confluence

with 3 comments

The approach Eric Ries advocates for the Agile start-up has been covered in previous posts (click here and here). Basically, Ries sees the need to iterate on the customer problem alongside iterating on the solution to the problem. Furthermore, a process of discovery – finding the customer – accompanies iterations on the problem and on the solution.

In a note today entitled Three Designing Bears, Kent Beck brings up a great example for the approach Ries promotes:

[JUnit] Max is a bootstrapped product, so I need to find revenue as quickly as possible. I have no idea what people might actually pay for in a testing tool, so I need to try things as quickly as possible. Features only need to be finished enough to give me reliable feedback about their value. Will people pay for features like those? If so, I can afford to finish them later.

Various other threads are quite relevant to and consistent with the ideas of Ries and Beck. For example, commenting on Flickr in The Art of Agile Development, James Shore highlights their speedy {code –> test –> stage –> deploy} cycle:

When a user posts a bug to the forum, the team can often fix the problem and deploy the new code to the live site within minutes.

When coupled with “real time” user feedback, the confluence of speedy development with fast deployment reduces the risk of developing features that are never or seldom used. It applies to both start-ups and established enterprises. It opens the door for new software business designs that would have been considered infeasible just a few years ago. For example, one could enhance the Marauder Strategy (“seek out slow ships and take them out”) proposed by Jeff Sutherland by competing not “only” on velocity of development, but on accelerated deployment cycles and ultra-fast feedback loops.

Written by israelgat

May 6, 2009 at 10:26 pm

Timing and Duration of the Agile Roll-out

leave a comment »

A measure frequently considered by executives these days is the introduction of Agile as part of cost reduction initiatives. To succeed in attaining cost benefits through the higher productivity of Agile, the plan for introducing it needs to take into account the slippery slope that repeated cost cutting measures tend to lead to. In particular, the timing of rolling out Agile and the duration of the roll-out need to be carefully considered to avoid a possible cart-before-horse situations.

A cart-before-horse situation is likely to arise as a result of the following pattern:

  1. An executive’s budget is under pressure.
  2. Headcount reduction is carried out. Remaining employees are expected to somehow cope with the load.
  3. Agile, with its promise of higher productivity and possibly hyper-productivity, is introduced as a counter-measure to the reduced headcount.
  4. The remaining development resources are expected to acquire a new set of skills, to master the art of Agile.
  5. The need to acquire Agile skills flies at the teeth of remaining employees needing to regain expertise that was lost by reduction in headcount. In many cases, the remaining development resources are already stretched too thin.
  6. Staring at the choice between acquiring specific domain expertise in a critical area versus developing less concrete expertise in software methods, more often than not the remaining employees and the system around them will opt to concentrate on acquiring domain expertise. For example, if a product fails to satisfy a new security benchmark introduced by key customers, the need to respond to the security benchmark is likely to take precedence over studying estimation techniques for Agile.
  7. Goto #1 above.

To preempt such cart-before-horse situation, the following principles need to be adhered to:

  1. Don’t introduce Agile before “the system” adequately adjusted to a round of headcount reduction.
  2. Do not carry out layoffs during the assimilation phase of Agile. In addition to cart-before-horse situation as described above, headcount reduction could jeopardize two critical pillars of Agile: empowerment and collaboration.
  3. Establish a quantified baseline of productivity before starting an Agile roll-out. Measure Agile progress against the baseline.
  4. Do not bet the Agile roll-out on linear improvement in productivity. A good Agile implementation is likely to improve productivity, but it is quite tricky to predict the shape of the Agile learning curve.

In practical terms, your organization needs to take a strong “medicine” up-front to break the vicious cycle that repeated staff reductions amidst an Agile roll-out are likely to create. The medicine should be strong enough to last through the period of time required for a meaningful assimilation of Agile. A good way to assess how long the period might be is to consider Agile as apprenticeship – one learns by “Agiling” with the masters.

You need to ask yourself the question “Can We Afford the Software We are Developing?” if business circumstances do not allow for reasonable adherence to the principles cited above.

Punching Above Your Weight Class

leave a comment »

Authors Hagel, Brown and Davison use an interesting metaphor in a recent Harvard Business Review article on strategy in time of constant change:

Today’s new Digital infrastructure in fact gives relatively small actions and investments an impact disproportionate to their size. To use a boxing metaphor, companies can now punch above their weight class.

Compare the Digital infrastructure with traditional infrastructures such as water canals, railroads or highways. Unlike these classical means of communication and transportation, Software is unique in being integral part of the Digital infrastructure as well as being a major piece of what gets transported over the  infrastructure.  Best I know no other entity ever played such a dual role in as meaningful a manner.

The metaphorical punch Hagel, Brown and Davison use as an illustration for the leverage provided by the Digital infrastructure is particularly intriguing due to to the malleability of software. Delivery methods for products and services over the Digital infrastructure could evolve the way product feature and functions do. If the product continues to evolve after initial delivery, the opportunity presents itself to do Agile in the deep sense recently proposed in The Lean Startup: iterative customer development alongside Agile product development that includes iterating on the delivery method.

Written by israelgat

April 21, 2009 at 8:40 pm

Companies make shoes!

with 2 comments

Peter Drucker made an astute observation which is quite relevant to the current business situation during a September 1998 interview with Fortune:

Securities analysts believe that companies make money. Companies make shoes!

Readers of this blog might have said “software” instead of “shoes.” The point would have been similar to Drucker’s. Good financial management is no doubt  important for your company’s success. It is no substitute, however, to focusing on the business you are in, the technology(ies) that drives the business and the effectiveness of the underlying systems and processes.

The current macro-economic situation gives you an opportunity to soberly assess the viability of your business design (as distinct from doing a lot of financial engineering). With asset inflation corrected, measuring the effectiveness of your business model in terms of the ratio Market Value/Revenues is much more meaningful now then it used to be prior to September 2008. As pointed out by Slywotzky in Value Migration, a market value to revenues ratio lower than 0.8  indicates value outflow for your company and possibly for your industry.

For software companies, the impact of “good enough” Open Source Software should be assessed in conjunction with close examination of the market value to revenues ratio. Twitting from the recent OSBC conference in San Francisco, colleague Andrew Dailey of MGI Research reported “… ERP/CRM are viewed as least susceptible to open source disruption… due to high transaction volumes and high integration needs.” Conversely, Andrew considers office productivity software as ripe [for the picking by Open Source Software]. I am personally of the opinion numerous Application Life-cycle Management tools could be massacred by Open Source Software.

The confluence of the threads highlighted above poses a fairly unique opportunity for the Agilist to convey a major premise of Agile to his/her executives. Like a thriving Open Source Software community, a hyper-productive Agile team can pick a ripe market faster and cheaper than an old fashioned software company could. Moreover, if a company is in one of the markets that are susceptible to an Open Source Software onslaught, Agile can (up to a point) provide defense against such onslaught. Whether you choose to attack or defend, Agile software gives you the advantages of proprietary software at a fraction of the traditional cost.

What is Driving Your Interest in Agile?

leave a comment »

Participant responses to the feedback questionnaire from the recent Rally event in NYC and the companion event in LA have been posted in the Rally Agile Success blog. Interestingly enough, in both cities time-to-market and visibility/transparency were rated higher drivers of interest in Agile than cost cutting.

Click here and here for details on what drives interest in Agile as well as other intriguing questions and responses from the events.

Written by israelgat

April 7, 2009 at 9:48 am

Posted in Benefits of Agile, Events, The Agile Life

Tagged with