Agile Adoption


On the road to Agile adoption, I often get asked, “how do you get teams spun up on Agile fast?”  The short answer is to just do it. The long answer is that I believe there are 3 options. 1) Rally and other Agile coaching organizations offer programs that place a coach in your team to help with preparation, planning, estimating, setting norms, committing, tracking, daily stand-up, demonstrations and retrospectives. 2) You can take the DIY approach,  but watch out for the unintended consequences.  3) Finally, I think there is the intensive practice approach.  Let me give you some examples:

A Sprint Per Day for the First Week

While speaking and attending Agile Vancouver in 2008, Linda Rising facilitated a fishbowl exercise with a custom development firm in Vancouver.  Given they were starting and stopping projects and reforming teams all the time, they had developed an approach to speed the team through the formation process and inculcate new team members (employees and customers) to the process.  The would run a scrum sprint every day for the first week.  This intensive process would allow them to work through tons of issues in a very intensive week.  I would call a form of this preparation over planning.

A Sprint Every 90 minutes for a Weekend

If that is not fast enough for you, how about a sprint every 90 minutes?  That is what the folks at SnapImpact did last weekend in Boulder at their SnapCamp (based on the notion of Startup Weekend).

I heard about this from one of the organizers and fellow Sprint Triathlete Dave Angulo.  Dave is co-founder of the non-profit SnapImpact, a guerrilla non-profit that has a mission to “Make Doing Good Easy.”  They developed an iPhone application and Wordpress plugin to simplify how people learn about volunteer opportunities near them.  It takes feeds from HandsOn Network and soon All for Good. It is cool, I’ve been playing with it for a year.  Anyway, ran into Dave at a CTO lunch in the TechStar’s bunker today and he told me about the wild success they had with 90 minute sprint process through the last weekend.

To give some background, SnapCamp was the kickoff effort for developing v2.0 of All for Good, the platform which powers http://serve.gov and a number of other sites. It’s the largest single repository of volunteer opportunities in the world. Version 1.x was pushed into production quickly and, while it is up and running, there have been a number of technical limitations which have frustrated All for Good’s partners and limited the platform’s usefulness. SnapImpact offered to develop v2.0 of All for Good because of the close alignment of the two organizations’ missions and their desire to have a more comprehensive list of opportunities for their iPhone app.

Ryan – Tell me how the 90 minute sprint process worked at SnapCamp?

Dave - We started the weekend with dinner on Friday night to allow time for everyone to meet each other, learn about each other’s backgrounds, and have a shared group experience. We had people from all over the country as well as a great local contingent. Some were die-hard SnapImpact volunteers, others had only heard about us recently. The dinner allowed for folks to get to know one another in a casual setting without having to do it in between trying to get work done.

Saturday morning, we laid out the business problem, context, and goals for the weekend, then I announced we would do 90 minute sprints. The business teams (we had marketing, UI, and product teams as well), would adhere to the same schedule. The beginning of the first sprint for dev was spent laying out four areas of technical problems and having the team self select into what tickled their fancy. Everyone then got to work. I moved between the teams to discuss possible technologies for them to consider and dive deeper on the problems they needed to solve. The volunteers then took over and by the end of the first sprint everyone had a handle on their problem areas. Most even had a initial plan of attack.

Everyone has heard of Forming, Storming, Norming, and Performing. With 2 days to get work done, we had to get them to performing as quickly as possible. The dev teams were all about 3 people in size with differing skill levels and familiarity with the technology stack we were using. The 90 minute sprints forced a tempo which required the teams to get to performing quickly – no one wants to report out nothing was accomplished. Yes, some of the progress initially was small, but these were hard problems to tackle in a weekend. I had one team who’s requirements were being developed by the business team through the weekend, some sprints the deliverable was “received requirements from business and developed a response.”

By the end of Saturday, all of the development teams had produced something which was merged into mainline for the other teams to pick up. That was huge and everyone could see the bar moving.

Sunday started with a review and then everyone picked up where they had left off. The development teams reformed and started working before we even had the morning review. The pace on Sunday kept accelerating, merges occurring after every sprint, until late afternoon, when we started winding down.

I have run many volunteer projects. The SnapImpact team had actually completed one earlier in the week involving several hundred people with BDNT, and it’s absolutely critical volunteers feel like they are moving the bar. Given the scope of this project, it was going to be very easy to have volunteers lose sight of the progress they are making and give up. The 90 minute chunks with progress review and planning helped ensure the volunteers didn’t lose sight of the progress we were making that weekend. As project owners, we had goals of our own on what was going to be delivered at the end of the project. The sprints allowed us to keep moving in the direction we needed to go as well as identify trouble areas.

Ryan – What did not work so well or would do different next time?

Dave – Training – One decision I made was to use a relatively new technology stack, Scala/Lift, for the framework. Instead of holding a formal training session for those unfamiliar with it, I made sure there were experienced people in each group and let training happen “on the job.” I think next time it would be better to do a short training session, as given the pace, sometimes that training disrupted forward progress. Just the basics, so when a concept was discussed it wouldn’t be completely foreign.

Deliverables – We got sloppy during the reviews and didn’t nail down specific deliverables for teams. At times, it caused teams to lose focus during the sprint. The reviews were every 90 minutes, so the lack of focus was caught sooner rather than later.

Insert more fun – Because the tempo was so high, I’m not sure folks had as much fun as they could have during the event. I’m a big believer in fun being central to any successful project and I think teams could have bonded a little more and we may not have been as exhausted by Sunday afternoon. There was some fun, we just needed more.

Ryan – Tell me about the emergent end deliverable?  Can people see it on the web?

Dave – Our goal was a beta of existing functionality by the end of the weekend. We’re very close to that now, but some decisions made during the weekend prevented accomplishing that goal. The SnapImpact team is continuing development and once the existing functionality is in place we’ll start working on a host of new feature requests from the business team. We’re entering all of that information into Rally now and beginning the planning process. Folks will see v2.0 at http://allforgood.org in June.

Ryan – What did you do to prepare or plan for this process?

Dave - Preparation started weeks in advance. My role in this project is CTO and VP of Engineering. So, the 3 critical things I needed to accomplish before the weekend started was making sure I stacked the deck in my favor with some talented people, had a toolbox ready with possible solutions to the technical challenges we would face, and had stakeholders present to make decisions.

Given the new technology stack, I needed to recruit folks with some very specific skills. To enable that effort we recruited the leader and founder of the Lift project, David Pollak. He helped us motivate a few people with experience using the technology. We also had the SnapImpact team actively recruit their friends. The result was a very high quality team capable of getting the job done.

When the teams started work, they would spend too much time investigating everything unless I gave them a starting point. By bringing some ideas (not solutions) to the table to solve their problems, it helped define their playing field and allow them to make a decision quickly. Implicit in this was understanding the known business problems that needed to be solved.

We knew we would hit roadblocks during development waiting for business input on implementation details. So, we made sure to have some present the entire weekend. One of the stakeholders even brought a developer who was using the existing system. We embedded the dev in one of our teams working on implementing some external interfaces. Yes, that really accelerated the implementation decisions. Also, the stakeholders were really disappointed with certain aspects of the existing system. We had ideas to resolve those issues, but needed to ensure they met the stakeholders needs.

Thanks Dave for the great details on this event and example of agility at work!

Ryan Martens is a goat cheese maker,  founding board member of the Entrepreneurs Foundation of Colorado, and Founder and CTO at Rally Software Development.

Once upon a time, Frederick Winslow Taylor and W. Edwards Deming lined up across a ping-pong table and went at it.

Taylor Vs. Deming

“There is only one correct way to do any job!” said Taylor, smashing one of those real curvy, tricky serves at Deming.

“Let people contribute in the best way that they can envision,” retorted Deming as he calmly returned the serve from 8 feet behind the table.

“Employees are evil and lazy!” screamed Taylor as he sliced a murderous shot high into the air, the backspin causing a local singularity in the spacetime continuum.

“The success of the company is good for all, and people want to succeed,” offered Deming, backhanding a low shot with sideways spin just over the net.

“Managers are the ones that know the answers!” shouted Taylor, cutting his forehand all the way across the table.

“Hmmmmm,” said Deming, who could be a very thoughtful guy given the right circumstances, “the people closest to the problem are more likely to come up with a correct answer.”

“Supervision!”

“Empowerment.”

“Punishment!”

“Trust.”

And on and on. They never did finish the game.

Here’s the interesting thing: we’re still playing this ping-pong game.

Here’s another interesting thing: many people don’t seem to know it.

Many people make the mistake of viewing Scrum and Agile and Lean as sets of practices. “If I do kanban, I’m Lean.” “If I do sprints, I’m scrummy.” “If I do BDUF and most of my projects are late, then I’m waterfall.” (Oops, well, the last one is actually true, but the first two aren’t.)

The thing is, you’re not Lean unless your company commits to the two pillars of Lean: continuous improvement and developing people. You’re not Agile unless you create and foster self-organizing teams. You might be doing a lot of Agile practices, and you might even get better results than you used to, but you won’t be Agile. If you accept this limitation and you are doing Scrum, then you will be doing ScrumBut.

So I smile to myself (I think it’s to myself) when I hear management say things like We’ll never be totally Agile in this company. There will always be waterfall projects.” I smile because what that really means is that they’ll never be Agile at all. Lean and Agile fit into the framework of Deming’s System of Profound Knowledge. Plan-driven, hierarchical command & control methods descend from Taylor. You can’t follow both at the same time.

Really? Yes. Would those managers supervise and micromanage some employees while supporting and developing others? Would they dictate commitments and solutions to some while allowing others to determine their own fate? Would they trust the people on the Agile projects and punish the ones on the waterfall projects? Would they hold individuals accountable on waterfall projects while holding teams accountable on Agile projects?

Of course not.

What they will do is treat everybody the way they always have. They will beam with pride when teams gather in their little circles every day, and then they will dictate to them that the manager is actually still responsible for delivery and ask for lists of who will be assigned to which task in the next sprint. They will refuse to make priority decisions and instead direct people to work on multiple projects at a time, and they might even decide just how many design documents each team should have. They will do this because that’s how un-Agile projects do it and for some reason this makes management require it of all teams. (What has always seemed odd to me is that they won’t demand that waterfall teams release an increment of working software each month because the Agile teams do it. So I guess it only works one way.)

And they’ll wonder why this Agile thing gets so much hype, since it really doesn’t seem all that different from what they’ve always done. And really, the results aren’t that great.

You can’t be both Agile and not Agile. You can’t be both Lean and fat…er…not Lean. Not at the same time.

If your company is not fully committed to agility then you won’t achieve it, and your results will be a self-fulfilling prophecy of unrealized potential.

About the Author: Alan Atlas is a Soul Musician, Certified Scrum Trainer, and Agile Coach at Rally Software Development. Subscribe today to get free updates by email or RSS.

I smile because what that really means is that they’ll never be Agile at all. Lean and Agile fit into the framework of Deming’s System of Profound Knowledge. Plan-driven, hierarchical command & control methods descend from Taylor. You can’t follow both at the same time.

Last summer, Rally started a video series called “Chalk Talks“.

I was fortunate enough to have filmed several “Chalk Talk” videos about some of the basics of Agile software development (The Agile Manifesto, Scrum Basics, Iteration Demo and Review Meeting, and other topics).

Since then, Rally’s expert team of Agile Coaches have joined the party and recorded additional Chalk Talks, again on some great basic Agile topics: Ronica Roth on User Stories, John Martin on Story Points, and Rachel Weston on Release Planning in Agile just to name a few.

We also tapped into the wisdom of some of our other Agile Coaches: Julie Chickering, Mark Kilby, and Ken Clyne.

Our Rally Chalk Talks are informal videos, typically 3 – 5 minutes long, intended to provide quick, easy introductions to Agile topics.

Filmed in a short, tutorial format, these videos are great to share with your team as they are getting up to speed on Agile.

To get a feel for our latest work, here’s Rally Agile Coach Ronica Roth in her great Chalk Talk on User Stories. ( during which you can find out why a dog would want his own laptop :D )


Be sure to check out our entire catalog of Chalk Talks and subscribe to our YouTube channel if you’d like to be notified when we publish new videos. We already have two more Chalk Talks queued up: “Kanban and Scrum” and “Agile and Lean”.

As you look through our current catalog of talks, be sure to let us know what other topics you’d like us to cover in future talks.

About the Author: Jean Tabaka is a wine enthusiast, author and Agile Fellow at Rally Software Development. Subscribe today to get free updates by email or RSS.

This is #2 in a Series on the Culture of Innovation with guest blogger Lee Devin.

Failure and success are handy terms when we want to characterize closure in an industrial making process: We call a thing that works a “success,” and a thing that doesn’t work a “failure.” In an iterative collaboration that leads to an emergent result, they’re not so clear cut, not so handy. We come to closure on an iteration. When we test it, we find it doesn’t do some of what we need.

Thinking industrially, we say “This sucker won’t work. It’s a failure.”

But we need nuance here. It makes sense to observe that the thing failed the test. It makes non-sense to say that the thing’s a failure. As part of an iterative collaboration the current thing is a necessary part of a journey toward an innovation. Chances are pretty good that this iteration contains the seeds of the one that finally does the job.

We think of starting to build a new culture by reconceiving a couple of words because we believe that language is the key to our work; use of language is, after all, the fundamentally human action. Those old Greeks had this idea: they thought of language as a distinguishing feature of a human being. They knew creatures in the world who did not speak Greek, who made unintelligible sounds like “Bar, bar, bar, bar.” They called such creatures “barbarians.

We won’t go that far, but we will suggest that language is our best tool for thinking and making choices, for knowledge work.

Blog Post by Tim Walker at Hoovers

In this Blog Post by Tim Walker at Hoovers - Tim asks, How do you cope with Failure?

Before we make suggestions about how to address this difficulty, let’s revisit an important feature of any culture of innovation. The dominant way to make innovations is to run collaborative iterations. Get an idea of what you’d like to have; make one; test it and discuss it among the team and, if possible, with the end user; on the basis of this discussion, reconceive what you’d like to have and make new one; use everything you can from the previous iteration; chase new ideas to their end without predicting results; test and discuss; reconceive; make a new one; and so on until the project reaches closure. You recognize closure when anything you can think of to do makes the thing worse, not better.

Most of us are okay with the idea that the end product of an innovative process emerges from that process and is, finally, unpredictable. What we have not confronted is the idea that the words we use to think about processes and products may interfere with that and may need reconceiving.

Redefining ‘failure’ and ‘success’

If you can plan for and schedule a process, how new will the outcome be? Not very. But, how can you start on a project without identifying a goal, making a plan to reach that goal, and without confidence in your plan? We all know these keys to success, and unsuccessful equals failure. Right?

  • Failure! “I’m no good. Better go out in the back yard and eat worms.”
  • Failure! “Thank God, let’s drop this sucker and move on. Now that we’ve failed, and learned from our failure, the next idea will be a good one.”

Well, maybe not. Maybe instead of failing, you’ve taken an essential step along the way.

Maybe you haven’t reached an end point and suffered a defeat. Maybe you’ve moved toward an unpredictable closure. Some innovators, Tom Kelley of IDEO among them, believe that to succeed you must fail often. Works for him.

We think there’s a better way.

We can begin by noticing that our models for “failure” and “success” limit our work. This means that we need to make a cultural change, from industrial (plan, design, execute) ideas of making toward artful, innovative ones (prepare, iterate, test, iterate again). Think of a staircase. We don’t regard the first step as a “failure,” as “unsuccessful” because it doesn’t get to the second floor. It’s a step. One of many. Just so, we need to decide to put our attention on our process, conceiving it as a journey.

The change of mind here is: we can’t say, exactly, when we’ll complete the journey, or when we’ll arrive. In fact, sometimes (out of which times come the really good stuff) we’re not even sure where we’re going.  But what we can say is what we just learned and what we recommend that we do next.

At Rally and in many Agile teams, we use a notion from eXtreme Programing called spikes.  In a spike, the engineer sets out to learn what she does not know by conceiving of a simple test to prove or disprove a theory.  These spikes are used to help narrow an estimate, gather data on a continuum of choices or narrow a field of options.  By calling it a spike, the XP creators helped us RECONCEIVE the ideas of success and failure for a story and thus helped themselves and the rest of the team.

Suppose we decide to go further beyond just a small task like a spike and conceive of each iteration toward an emergent innovation as an essential step along the way. Suppose we decide to conceive success as a measure of progress, not closure. In our culture of innovation, this means we conceive product as a result, not a goal. We’ll know it when we get to it.

Here’s an idea that can help. “Nothing is lost, and wonders never cease.

Artists live by this mantra: when the work reaches closure it contains everything done on the way. (You’ll see actors who don’t seem real. That’s because all they’ve done is learn their lines and blocking and a way to say the lines so that they’ll sound good. You’ll see actors who seem as if they are the character; you can’t believe they’re not personally like that. That’s because all they’ve done is spend hours and hours of thought and research into creating the given circumstances, a complete history, of that character.)

Instead of discarding work that didn’t reach a goal, reconceive the idea of “goal” into “result” and decide to use what you just made as material for the next iteration toward a result that you’ll recognize when you see it. The more of the current iteration you can find to use, the better. The harder you have to work to include everything, the better. In combination with the new ideas you (the team) get from discussion, and from the imaginative effort you spend, something unpredicted, something new, will appear in the next pass. This will happen.

The cultural principle here is: Collaborative iteration equals Innovation.

In this model, we can measure the progress of effort as it converges on the product.  What were the tests results with which stakeholders? What paths will we not follow any further? What potential design sets still need to be tested?

The failure of tests down a path is actually progress and a sign of innovation. Progress is a narrowing of options toward an optimal solution and failures are critical to narrowing.

By adopting the iterative process of Agile we increase the opportunity for innovations, but ultimately we need to prepare for improvisation by changing our idea about language. We need to use language; to decide what words mean. To use language, in other words, as a tool we control, not as a reality that traps us. And that’s a cultural change, not a tip we can quickly use.

We do have a tip, a simple (but not easy) way to begin this complex change. Never say no. Hang that on your wall next to the “No Sniveling” sign. “NEVER SAY NO.” This simple (but not easy) change cannot fail to increase the creative range of individuals, teams, and the organization. It’s not a final answer, but it’s a step along the way.

Next up in our series – Planning and Preparation

About the Authors: Ryan Martens is a goat cheese maker,  founding board member of the Entrepreneurs Foundation of Colorado, and Founder and CTO at Rally Software Development.

Lee Devin is a dramaturg at the People’s Light and Theatre, a Senior Research Scholar at Swarthmore College and a senior consultant with the Cutter Consortium. These activities often interfere with his fishing, and cause him to neglect his grandchildren.

Subscribe today to get free updates by email or RSS.


This is 1st post in a series we’re working on with guest blogger Lee Devin:

How to Foster A Culture of Innovation

“It took me more than 53 years to understand that culture isn’t just important, it is everything.” -Lou Gerstner

In the coming decade, software and product teams must provide the critically needed innovative approaches to organizations throughout the world. The visual metaphors and practical, hands-on ideas in these posts will give executives, managers, and engineers ways to speed up this evolution. Starting on Monday.

To make and maintain a culture of innovation requires a team to consider that task as a part of their work, complementary to, and as important as, the commercial task. Work on the culture must go forward during the workday. We’ll suggest, for example, that you include a warm up as part of the daily stand up. The team leader will lead this at first, but when it has become part of the routine, leadership will rotate among the group. Team members who learn a new exercise somewhere else will bring that to the stand up. You won’t tack this on to the day as something extra: it’s central.

As well, on analogy with the public schools, an executive or team leader might propose in-service learning requirements. Normally schools don’t require that teachers take specific courses. They demand instead a required number of course hours per year or other interval. Such courses include learning new techniques applicable to the work at hand; but, more important, they can be general—education rather than training.

Google is only the most well known of modern corporations to suggest that workers spend up to 20% of their work time on personal projects. Google encourages personal projects that have no readily discernible connection to current work, and imposes no requirement that such projects result in marketable outcomes. Now and then, of course, they do. And they’re a main reason why the competition has such a problem keeping up with Google. Not even Google knows what the next thing will be. More important, they serve as practice in innovation: people discover and refine their skills in a no-stress situation. They are free to be wildly creative.

In colleges and universities a similar situation obtains, though with considerable pressure attached at certain times in a professor’s career. We mean the custom called “Publish or Perish!” To achieve tenure or to be eligible for promotion, a teacher must make a contribution to the field. Mostly this means publishing the results of research.

Some places, Harvard Business School among them, grant tenure only to men and women who have achieved an international reputation within one or more fields. While this requirement weighs heavily on young faculty, the purpose is clear: research offers faculty an opportunity to practice the skills they teach.

More important, though less observable, accumulation of knowledge beyond what’s needed for tomorrow’s class supports a career after the initial thrill of teaching wears off and interest wanes. Of course these are ongoing programs; they have their true effect over the long term, as they become embedded in the company tradition and in an individual’s sense of work.

But, you say, “How do we have time to do this?”

Turns out that a reasonable amount of time spent in these pursuits increases productivity. When Frederick Taylor began his time and motion studies of workers shoveling coal at the steel mill, they balked at his requirement that they take breaks on a schedule he devised. They were paid for piece work, and feared that Taylor’s breaks were a management device to reduce their paychecks. Taylor insisted, and the workers discovered to their amazement, that their pay went up noticeably.

This notion of pay for story points has not caught on in the software field.

Many folks in the Agile community would argue that Agile is all about culture change. As you know, we do not see Enterprise Agile adoption as solely about anything. For most teams it starts out as a process change, runs headlong into weak testing technology and then confronts some major cultural elements as the scaling or replicating come into play.

Our Flow-Pull-Innovate approach can be mapped into a state transition diagram that blends changes on all these fronts.  It is our experience that teams neither have nor take time to appreciate these cultural items until they have shown some improvement. At this point, it becomes easier and paramount to reinvest some of these gains into continuing the journey. This can be in the form of slack time, schedule time for innovation, or new infrastructure in building, testing, or planning.

Now once teams get to the benefits of pull at a program level, the focus of adoption needs to move towards organizational culture.  I believe the transition from traditional to Agile, involves quite a shift in infrastructure, methods and guiding ideas.  The awareness for the changes in Guiding Ideas seems to come primarily from bottom-up adoption or occasionally from a new senior level executive who was brought into drive change.

Making changes of the magnitude we’ll suggest won’t be fast and easy. If you want to move fast, you’ll want to get help. This can be tricky. Consultants are typically a quick-fix; this won’t do in the long-term, but they can help with a push. However, a culture lasts, and work to create and maintain it should last as well. The consultant’s techniques stop lasting all too soon. We suggest that you find ways to learn about companies and teams that can become role models. This can be difficult. You’ll need to take time to build ongoing relationships of trust and reciprocity.

You can also consult people who routinely work in a culture of innovation. These include (but aren’t limited to) three groups.

(1) Actors make a new thing each night they perform the play, and their rehearsal processes are a compendium of good ideas for innovative agile teams.

(2) Theatre directors are a great source of method and lore for team leaders in an innovative culture. They every day address the difficulty of supervising men and women who have skills that they do not. They can’t bark out orders, but must find ways to encourage constant innovation.

(3) Painters (not house painters) in their work interact with an emerging form, the key element of collaboration, as they create a new and unique thing each time they make a picture. They can be especially persuasive and helpful on the question of replication: since they can’t do it (Every painting they make is new and unique, even if they try to copy themselves.), they have developed views and attitudes that software development teams and their leaders can use to advantage.

We remember a teacher who told his classes, “The way to improve your writing is to apply the seat of your pants to the seat of your chair.” The way to get started is to get started. Make the commitment. This can be a top down or bottom up movement, but support from above is key to a good beginning and to ongoing success. The budget for subsequent projects should include time and funds for preparation and team building of the kind we’ve described. Team leaders and managers should commit to constant reinforcement of the aim, and to vigorous support of performance by individuals and particular teams.

Keep an eye out for upcoming posts on this theme, where we will cover many of these concepts in greater detail.  But, as always, your feedback in the form of comments would be tremendously valuable in shaping our ultimate path and conclusion.

An Introduction to Lee

Jean and I, along with other Rally coaches write on the concepts of Agile Enterprise Adoption and our recommended approach called Flow-Pull-Innovate; however, most of that copy has been dedicated to the first two states of Flow and Pull.

Personally, I have struggled to write about Innovate because our language seems to be all-wrong. So we recruited a friend to help, his name is Lee Devin. With Lee’s help we are going explore the state of Innovate with words and stories that will help us understand this advanced state of Agile adoption. There are a number of topics that we have discussed in this collaboration and we plan to share all of them through this first quarter of 2010 (see How to Foster a Culture of Innovation)

Lee Fresh Water Fishing in Colorado

Lee fishing in Colorado's 11mile Canyon

I met Lee Devin through my next door neighbor Gordon Wickstrom.  Lee was a colleague of Gordon’s in theater and a fellow fly-fisherman. Gordon is an old school theater professor, he believed in structuring the performance to give the actors a place to create. He like Lee has a passion for his craft and feels absolutely fortunate to have been able to work in the theater profession his entire life. Gordon and I have shared many a lively conversation about theater and software and it was one of those conversations that led me to Lee.

According to Gordon, Lee has a more creative approach to theater development; one that is more emergent than Gordon’s. After numerous professional interactions and three fishing trips, Lee and his family are good friends. And his son, Sean has got to be one of the best anglers on the planet; fishing with him is like fishing with Yoda.

Now into Lee’s book with Rob Austin, Artful Making.  This book blends Rob’s research into innovation and agile product development with Lee’s mastery of theater; it is a real joy to read. It conjures up some of my best memories of creating beauty and greatness in software. Their contribution to our profession is to help us break our mental models or metaphors around the work of software development. You can let go of your mechanical metaphors and let Lee give you a complete vision of software as a creative and messy design process for conjuring up real beauty and innovation.  After a fishing outing last summer in Boulder, Jean and I had breakfast with Lee and decided to collaborate with him on work around the topic of innovation. You can read Jean’s words about Lee and Rob, in her post  “What do Actors and Programmers have in common?”

Next up In our seriesReconceiving the Notions of Success and Failure

About the Authors: Ryan Martens is a goat cheese maker,  founding board member of the Entrepreneurs Foundation of Colorado, and Founder and CTO at Rally Software Development.

Lee Devin is a dramaturg at the People’s Light and Theatre, a Senior Research Scholar at Swarthmore College and a senior consultant with the Cutter Consortium. These activities often interfere with his fishing, and cause him to neglect his grandchildren.

Jean Tabaka is a wine enthusiast, author and Agile Fellow at Rally Software Development. Subscribe today to get free updates by email or RSS.

I have been back in the Fifth Discipline Fieldbook this week thinking about strategies for creating a shared vision to 2020 at Rally.

With our newest round of funding, we will be growing rapidly in multiple locations and beyond the max tribe size of 150-170 people. (Dunbar’s Number)  Over that last year, we grew the business well but without advancing our total headcount numbers.  Now with headcount growth slated in the field and in two development centers, we need a stronger foundation to steer our growth.  Doing this work, hit me with a BFO (Brilliant Flash of the Obvious) that is impacting many of largest Agile adoptions that I am working with.

Many leaders are seeing the benefits of Agile and “Telling” or “Selling” their organizations to go there.  But, the “Telling” and “Selling” strategies run counter to many of the guiding ideas behind Agile itself.  I have seen this rub  limit or slow the positive impact of an Agile adoption.  This rub almost guarantees you will only get incremental benefits from Agile and will most likely fall back to your old ways.

As Bryan Smith and Peter Senge remind us “Telling” is just the first developmental step in creating a shared vision to adopt.   This strategy has many flaws including that fact that most people only remember 25% of what they are told.  However, it might be the right strategy given a dire current reality.

In extreme contrast to Telling, is the Co-Creating strategy that has the whole organization working together to create the vision and implement it.  This requires a leadership group that can truly let go and an employee base that has enough personal mastery to understand their own personal vision.   Those are big pre-requisites to this strategy, but it should be obvious that if you can run this strategy, the self-motivating benefits will be highly supportive to getting the most benefit out of Agile.

The complete model, from the Shared Vision section of the Fieldbook includes five strategies that can be grown into over time:Peter Senge Strategy Model for Co-Creating

  1. Telling
  2. Selling
  3. Testing
  4. Consulting
  5. Co-Creating

We have discussed our Flow-Pull-Innovate approach for adopting Agile in larger organizations, but I have talked very little about strategies for leading this adoption process.  I think it is because most Agile adoptions get started in a grassroots approach and are led by the teams that testing it out.  The success of these teams then caused people to take notice and start talking about how to replicate this success.  In essence, I have been assuming, and the market has been executing a Testing level strategy.

I believe to put an organization on the path to continuous improvement, you must at least be executing a Testing level strategy to scale your adoption.  Over time, I believe your ultimate ability to move to the Innovate level of Flow-Pull-Innovate will be tied to your ability to adopt a Consulting or Co-Creating strategies.  As Agile is a journey to greatness, this journey depends upon your organization maturing in all including strategy execution.

What are your experiences with these strategies in your Agile adoption?

At Rally in 2010, our planning team is running a two pronged approach using a Testing strategy with the organization in Q1 for our 2010 plans and a three quarter long co-creating strategy for our 2020 vision.

About the Author: Ryan Martens is a lego building father,  founding board member of the Entrepreneurs Foundation of Colorado, and Founder and CTO at Rally Software Development. Subscribe today to get free updates by email or RSS.

For 2010, lets find ways to focus on teaching our craft and growing the world of skilled software development professionals instead of trying to figure out who is “right.”

I believe much of the “Escalation” that Jean is seeing was correctly titled by Regina Mullen as a battle to be “right.” (see and read Escalation is Killing Agile – Can We Please Stop It? and Escalation is Killing our Healthy Conflict in Agile). That behavior focuses on carving up the pie instead of growing the pie.   There has been so much added to the field of software development methods, tools and techniques from the guiding ideas of Agile.  Now is not the time to stop and eat.

For me, 2010 is about continuing to grow the Agile software development pie’s reach and innovations.The Agile Pie

I believe one of the key fixes to the problem of escalation can be found through increased professionalism and certification in Agile. By raising the bar through “difficult and skills-based certification,” as Brian Marick and the board at the Agile Alliance described, we can advance the Agile discourse through :

  • a defined a bar that is deep in skill, knowledge and practice
  • a significant enough bar to engage College and University study and examination
  • research and curriculum that explore the tough questions in a scientific method
  • development of more flexible or “T” shaped individuals that can see and work beyond silo roles.

With this back-drop, I am motivated by the notion of creating a  A Community of Thinkers,:

I am a member of a community of thinkers and I believe that communities exist as homes for professionals to learn, teach, and reflect on their work.

A Community of Thinkers creates more leadership in our profession. I see the expanding certification efforts in 2010 as great steps in these directions:

I encourage everyone in our community to figure out how to put energy toward one or more of these efforts.  The benefit of actively learning, teaching and reflecting on our work should lead us all to expanding civil dialogue that works to understand all points of view and keep expanding our thinking.  Thus broader education and difficult certification helps create a “Community of Thinkers.”  And, a Community of Thinkers will create a virtuous cycle of win/win and thus a larger pie for all.

That is my hope for 2010 in our profession.

About the Author: Ryan Martens is a happy father,  founding board member of the Entrepreneurs Foundation of Colorado, and Founder and CTO at Rally Software Development. Subscribe today to get free updates by email or RSS.

Clippy

Clippy - the ultimate bearer of redundant information

Remember this guy? He used to pop-up when you least expected him and offered up information about something you already knew.

I’m sometimes reminded of Clippy when I hear the rhetoric from some in our Agile community.

We’re at an inflection point right now. The pragmatists and the conservatives are realizing the fallacy of large upfront planning.

As teams from these later adopters are striving to become leaner and more Agile, they struggle with the inertia that is inherent in large organizations.

  • They know that co-located teams are more successful but they prefer an environment that extends the benefits of working from home.
  • They know that it is much more efficient to work on one task at a time but someone way above their pay grade won’t let them have such a single minded focus. This is not a battle they can win right now.
  • They know that value can be delivered faster if testing can be pulled forward yet they don’t have budget to buy the tools they need.

For such decisions Clippy always knows the right answers for everybody.  But Clippy doesn’t have to walk in their shoes and it won’t be Clippy who gets fired for taking a risk.

Maybe Clippy needs to listen to Norm Kerth (from his book Project Retrospectives):

“Regardless of what we discover, we understand and truly believe that everyone did the best job he or she could, given what was known at the time, his or her skills and abilities, the resources available, and the situation at hand.”

or as my colleague Julie Chickering says:

“I think we need to acknowledge that there are parts of organizations that will be less agile than others while moving from traditional to agile projects. That the big ole ship can’t turn on a dime. To me this is part of being a trusted partner.”

As you strive to become leaner and more agile, you don’t need Paper Clip Consulting, you need a trusted partner.  You need someone that will begin with the end in mind yet not seek to get there immediately.  A trusted partner will take the time to understand your environment, accept that there are always constraints and help you establish a cadence of continuous improvement.

About the Author: Ken Clyne is a kayaker, Certified ScrumMaster and Agile Coach at Rally Software Development. Subscribe today to get free updates by email or RSS.


Remember this guy. He used to pop-up when you least expected him and offered up information about something you already knew.














I’m sometimes reminded of Clippy when I hear the rhetoric from some in our agile community.

We’re at an inflection point right now. The pragmatists and the conservatives are realizing the fallacy of large upfront planning.

As teams from these later adopters are striving to become leaner and more agile they struggle with the inertia that is inherent in large organizations.

  • They know that co-located teams are more successful but they prefer an environment that extends the benefits of working from home.
  • They know that it is much more efficient to work on one task at a time but someone way above their pay grade won’t let them have such a single minded focus. This is not a battle they can win right now.
  • They know that value can be delivered faster if testing can be pulled forward yet they don’t have budget to buy the tools they need. They understand very well the return on investment and to Clippy it’s a no-brainer but Clippy doesn’t have to walk in their shoes. Maybe Clippy needs to talk to the CFO.

Maybe Clippy needs to listen to Norm Kerth (from his book Project Retrospectives)

“Regardless of what we discover, we understand and truly believe that everyone did the best job he or she could, given what was known at the time, his or her skills and abilities, the resources available, and the situation at hand.”

or as my colleague Julie Chickering says:

“I think we need to acknowledge that there are parts of organizations that will be less agile than others while moving from traditional to agile projects. That the big ole ship cant turn on a dime. To me this is part of being the trusted partner.”


Crying Woman

Don't let this be your user!

Recently, my Rally colleagues Ben Carey and Ryan Martens delivered a great webinar about testing and quality.  What particularly struck me about the session was how Ben set up why we should, at a very personal level, care about testing and quality.

Enter Amy and her daughter Morgan.

As Ben told the story, Amy was a back office admin in a physician’s office. It was her responsibility to get billing out to insurance companies for the practice, and on one particular day, things were not going well.

She kept getting cryptic error messages. The batch just wouldn’t go through. Stress mounted. To add to Amy’s distress, it was nearing time for her to pick up her daughter Morgan at school. Morgan had just started school. Only 4 weeks in, Morgan was suffering some separation anxiety. Amy felt the urgency to be there for Morgan as soon as school let out. And yet, she was stuck at her desk dealing with these insurance issues.

Why should Ben be talking about Amy and Morgan in a webinar about testing and quality? Because Amy was Ben’s customer. Ben was on-site to see how his software was supporting the practice. And so, he personally felt Amy’s mounting stress in using the software HIS team had delivered and HER doctor’s office had paid for. When Amy started to cry, it was all over for Ben. He had to do something.

What does Amy and Morgan’s story tell all of us?

1. Users deserve better than this.

2. On an Agile team, quality is everyone’s job!

We often think of testing as an issue for the tester role alone.  But this stance sets a number of bad dynamics in motion:

  • When we don’t fix defects, we declare doneness by “hiding” defects in a defect backlog
  • Hidden defects accumulate into hidden technical debt
  • Technical debt slows down our ability to deliver subsequent releases
  • An ever-increasing defect backlog can be demoralizing for the entire team
  • Engineering resents the business when being forced to deliver features when the engineers know defects exist
  • Business resents engineering for not being better and faster at building features
  • Testers resent testing left until the end because it puts business, engineering, and testing in a tight spot

So here is a thought: quality is not just an engineering issue; it is a systemic issue. That is, it is driven from the top down in a business not from within one part of the organization. A business policy about quality impacts our users by directly impacting their quality of life. Amy’s stress about picking up Morgan from school could be traced back to a testing and quality policy in engineering that was driven by a policy in the business: get features out.

As you adopt Agile, work vigorously to create rigor in your testing and quality goals. Why? Because your policy can hit hard in ways you don’t currently track. Pay attention to more than just the internal cost of technical debt. Let’s pay attention to the quality of life of our users.

The next time you are logging a defect versus fixing it, don’t forget about your Amy and Morgan.

About the Author: Jean Tabaka is a wine enthusiast, author and Agile Fellow at Rally Software Development. Subscribe today to get free updates by email or RSS.

At Rally, we are always working on both maturing and growing our use of Agile. We started with a single development team and over the past 6 years have been through the process of splitting, growing, partnering, and acquiring.

We did this while continuing to inspect and adapt our development and our strategy execution processes.  We have teams in various stages of maturity using Scrum and Kanban to run all parts of our company.   As the CTO, I have my focus on our strategic planning and execution process.

In 2008, I started to focus on maturing our annual and quarterly planning.  To do that, I used Pascal Dennis’ book titled “Getting the Right Things Done” to structure those efforts.   (See related post about Learning from A3’s a story of 2009 Quarterly Planning at Rally.)

As part of that effort, we worked to change our quarterly and annual planning process to specifically follow a Plan-Do-Check-Adjust model. (Note that I like Pascal’s use of Adjust, not Act which is typically quoted in the Toyota models.)

Prior to 2009, we were simply using an inspect and adapt process to determine annual and quarterly priorities, aka quarterly rocks, based on feedback from last quarter’s results and the corporate roadmap.

This process worked well, but we had some issues including:

  • A moving definition of done based on different standards of work (research, implementation, campaigns..)
  • A delay in the feedback loop on strategic efforts made it hard to check and close well
  • Too many efforts in a quarter lead to poor quality (We found 5 rocks to be too many for us during a quarter)

None of these are different than what most teams experience with going Agile.  So we (1) adjusted and moved to limit our WIP to three rocks, (2) focused on inspecting the definition of done in the meeting, (3) used company wide survey’s to keep from developing group think and (4) chose to do company celebration based on quarterly metrics and not the completion of quarterly rocks.

These all helped make the current process work, but the process was still frustratingly unpredictable, semi-random and always left something to be desired.  Many of the reasons for this are explained in Alan Shalloway’s and Don Reinertsen’s posts on PDCA and types of process The Difference Between “Inspect and Adapt” and Plan-Do-Check-Act (PDCA). Unlike Alan, I do not see or perceive a big issue with Scrum.  Based on my previous post around the roots of agile; Dean Leffingwell and I are in the same camp; Scrum is Lean.

As a result of moving to PDCA approach, we created a single “True-North” goal for the year and drove our quarterly rocks  towards that goal.

Slide10Now in Q4 of the year, we had some new changes to our process. By following the PDCA cycle for the year, we put a fine point on CHECK in this final quarter; Subsequently, we have a  Q4 quarterly rock focused solely on checking our Q3 and annual work to fine tune it based on real output.  This is an example of where PDCA cycle is more intentional than basic inspect and adapt at forcing the discipline of checking.

We focused a quarterly rock on checking  to make sure that we are done-done-done with our True North goal for the year.  We also have another Q4, cross-functional rock team focused on preparing for Q1 and 2010 annual planning.  This PDCA-driven rock is a major milestone for me personally.  It moves annual planning solely from my shoulders to a team effort; this pushes ownership of strategy down to the extended management team.  As a result, I am very happy with the move to PDCA for our 2009 strategy execution process. In Don Rienertsen’s terms,  our PDCA-driven process is more defined, while still with un-predictable output and governed with lots of feedback.   This was simply an increase in process maturity that was mandated by our continuing growth.

To do this, we create a team, called the Mountain team, to help the company transition our strategy execution process.   This team steered the transition and proposed our quarterly rocks based on the PDCA process.  And thanks to the ego-less and steady hand of our CEO, we have a very collaborative culture that quickly converge on these changes and quickly put them into action.

I hope this was helpful for you to learn about our experiences with continuous process improvement and our step-function transition processes.  Please note that we are not a perfect comparison to larger organizations trying to transition to large scale agility.  In addition to doing lots of growing, we have another difference that started when we began back in 2003.  We built Agile and Lean principles into our core values.  You can see the difference this might make in my comments to Israel Gat’s post More on Agile Social Contracts.

Specifically our core values are:

  • Create your own reality
  • Make and meet commitments
  • Theory-driven decision making
  • Treat people with respect
  • Support our community and give back
  • Maintain a healthy work/life balance

This is the social contract that we keep with employees. During transitions like this you need culture or a social contract to reinforce your moves toward Agile and Lean behaviors.

About the Author: Ryan Martens is a telemark skier,  founding board member of the Entrepreneurs Foundation of Colorado, and Founder and CTO at Rally Software Development. Subscribe today to get free updates by email or RSS.

Next Page »