They still want us to deliver too much in too little time!

In a class, we had a large group of people from one company.  And the company is doing or getting close to doing mostly Scrum.

But the managers and the Board have not been to a Scrum class.

In any case, ‘management’ is still asking the Teams to try to deliver too much in too little time. And say both the scope and the date are inflexible. Or at least, that is how it is heard.

What is the solution?

This is one of the hard problems of our work.  There is no easy answer.

I think it boils down to this.

1. Customers want things quickly. And time itself has a value.  For example, we must get to market with our new product before the competition.

2. On the other hand, as they said in Latin some 2,000 years ago, to predict is difficult, particularly of the future.

So, we (the Scrum Team) must make predictions, and try to make them real.  AND, we must get everyone to understand all the changes that will happen. And all the variability in our ‘predictions’.  When we think the next release will be done and how much will be in it.

These are not easy conversations. Usually. People mis-understand each other.  Nonetheless, you must have the conversation.

Sometimes we say: we have a fixed time, a fixed scope and a fixed budget.

But always this is never completely true (in my experience).  There is always some proposed small features or featurettes in the work that do not have to be done in the current release.  This gives us an incentive to break down the features smaller, so we can identify small things to move to ‘later’.

Always there is a value to delivering fast. Usually, even before the current ‘date’ would be real good. Often very very good. (Which gives us yet more reason to reduce the number of small features in the release.)

And usually cost is NOT the main driver. There is (or should be) a huge ration between benefit and cost, so that being stingy about cost is silly. Especially when time is so important.

Lastly, in this too brief discussion, we must mention impediments. In Scrum, we want the Team to identify their biggest impediments.  Things that, if we fixed them, we could double (again) our velocity. Not by magic, not by working harder, but by fixing impediments. In the wetware, in the random carbon units, in the automated testing, in the management culture, whatever.  And often fixing impediments costs serious money.  So, we need good judgment to spend wisely.

Finally, we need to use Agile Release Planning to start to identify a reasonable scope and date, initially.  And, as things change (and everything will change at least some), we can revise and revise and revise it, and do the best we can to innovate in the time boxes we ultimately decide to give ourselves.

***

Managers must learn that if they pressure the Team (to deliver more in a given time), the Team usually hears two things: (a) cut quality, and (b) work high overtime.  So, the Team and managers (or customers) must talk about this.

Almost always the managers do not want reduce quality or overtime (bad quality of life). What they want is ‘creativity’.  Someone to cleverly see a simpler way to do things. How to remove an impediment. How to do fewer features. Something. Something unexpected that we might not have imagined without a challenge.

So, talk about this. Start to understand each other better. You need each other.

Scrum 201: Desire

Any sports coach knows that the Team must have desire.

In my classes I talk to the people about how much improvement they expect to make in 1 year. With 1 team.  Often it is in the 20% range.

And I use Henry Ford’s famous quote: “Whether you think you can, or you can’t, you’re right.”  So, I usually think that 100% improvement in 1 year is realistic for a specific team.

As a coach or a SM, if they are going to achieve hyperproductivity, the Team must want it.  And, to some degree, they must believe it is possible.

So, the question becomes, how do you get them to have the desire?

This is not an easy thing. In fact, you cannot make them have desire.  But, if there is something inside them, you can draw on that.  You can blow on that ember of desire, and make it blaze.

Sometimes you can give them a challenge. To be the best team in your company, or your state.  For example. Or to be much better than they are today, and prove that with metrics.

In Lean, we have the idea, expressed in a Lexus ad, of the ‘continuous pursuit of perfection.’  So, we establish a vision of perfection. (Usually we know this vision is not perfect, or later we see it is not really perfect.  But it motivates us; it gives us something concrete that seems within our grasp.)  So, we use the vision of perfection to build the desire.

Little’s Second Law: People are remarkably good at doing what they want to do.

So, if you can help them build their desire, in a concrete way, then they can start to make the changes that can drive tremendous improvement.

Making Change Happen

We must make people change, and we hope we know the direction. And we hope we know the specific changes.

In Scrum, we believe in big changes, in kaikaku.  This happens when we first implement Scrum.

And we do smaller changes, also. Kaizen.  We do them as impediment removal, for example.

Changes is easy in a way.  They must change, it is clear to you.  And your ideas are good.

But change is usually hard also. You feel like you have no power. They want to stay the same. They want to change a different way than you propose.

So, the first pattern is that you become an Evangelist.  You want to get people to change. You start with ‘Ask for Help’. Get others involved.

You want to get some traction. Use ‘Just Do It’.  And get started in a small way with your change.  You want to explain the change to more people. Use ‘Personal Touch’ to make it the change specific to those you are working with.

See more patterns and ideas in Fearless Change.  Or read here.

We cannot emphasize too much the importance of adding change upon change. Incremental change. Compounded change.  This is the way to 5x-10x improvement.

 

Blue pill and Red pill

In a class in Romania, a participant asked me: “don’t you think you are setting false expectations? Scrum may help but it will not help that much. This sets false expectations and disappoints people.”

Good comments. Good concerns. But I don’t agree that we are setting false expectations, although I think these issues must be addressed.

As background, I said that we want each team to increase their productivity by 5 to 10 times. And we want that by working normal, sustainable pace. And with everyone (as far as possible) having more fun. And we want to double productivity in 6-12 months.

Now, this assumes that we get aggressive about removing impediments. Creative in identifying them. That we make a good business case for many of them. That we act rigorously and professionally. And that the managers and the firm permit us to fix things, if we make a reasonable business case.

I admit these the managers often don’t let us fix enough impediments.  Sometimes almost none.  But usually the biggest problems are elsewhere.

So, if someone has managers who won’t let us fix impediments readily (and yes this situation exists in the real world some), I still expect them to try to fix things. Yes, it will be harder, and maybe it will be hard to double productivity.

And I think a lot of ‘bad’ managers are just decent people and they just need someone smart like you to help them see the light.

As another partial answer to his question…

It helps to tell the truth even when it is hard. And I think adults should not lose heart even when things aren’t good and the path forward is unclear. In other words, adults should not get discouraged.

Scrum does not believe in taking the Blue pill.

For those who have not seen the Matrix movie in a while, let me remind you. The Red pill means that you can see the truth, and it is painful and hard, but you have a chance at freedom.  And a chance to fix things.  The Blue pill gives you ‘happiness’ as the Matrix would like you to see it, with a blue filter.  But it is false and it is not the truth you are seeing. And freedom is not possible. You give up freedom for a false ‘happiness.’

So, people can and do complain that Scrum makes them see bad things. And, so far, Scrum compared to waterfall, does do that.  You do see more ‘bad’ things using Scrum.  Because Scrum makes them visible (not because Scrum causes them to exist).

Except that seeing the truth makes it easier to fix things.

The next thing to say is that Scrum, after everything, is still more fun than waterfall.  Well, if they play real Scrum.

Radical Management

Steve Denning has written a great agile book for managers, called The Leader’s Guide to Radical Management.

Here are the five principles:

  • A shift in goal from making money for shareholders to delighting customers through continuous innovation.
  • A shift in the role of managers from controlling individuals to enabling self-organizing teams.
  • A shift in the way work is coordinated from bureaucracy to dynamic linking.
  • A shift in values from a preoccupation with efficiency to a broader set of values that will foster continuous innovation.
  • A shift in communications from top-down commands to horizontal communications.

I recommend the book.

2012 Agile Dev Survey

Once again, agile and scrum are making more progress in the real world.

Is the world all rosy now?   Well, that depends.  Compared to yesterday, at least in terms of Agile, I think we are better.  Compared to where we could be, we have such a long way to go.

People still too much like central planning.

People do not understand well-enough the power of a Team.

Many managers have no clue about self-organization.

And yet, despite all, and despite some backwards moves, we still make progress.

Look and see here

It is a survey, it is not science exactly, but it does say and mean something.

 

Early Warning System

I was giving a course today, and we were talking about whether to do agile release planning at the beginning of the effort.

(I guess I must add that release planning always means release plan refactoring every sprint. To whatever degree it is needed.)

My advice is that most teams that I see need agile release planning. For a day or two before they start sprinting.

So, one question is: why do agile release planning?  And there are many reasons.

One additional reason: Early Warning System.

The agile release plan gets reflected in a release burndown chart. And the release burndown chart can show the team if or when it starts to get into ‘trouble’ versus the stories they expected to delivery in this release.

And then, knowing that, the team can make adjustments.  But, they cannot know they are in trouble without an early warning system.

The ScrumButt Test

Bas Voode originated a test.  7 or 8 items.  Jeff Sutherland and others liked it.  Eventually it became known as the ScrumButt Test. 

They developed the test to check whether a team is really using Scrum or reverting back to waterfall.  Or, possibly, reverting to what I call Cowboy Agile (see wikipedia on cowboy coding). Or doing Agilefall (talking Agile terms, but really doing mostly waterfall).

The ScrumButt Test is in two parts.

First, are you doing Iterative Development?

  • Sprints must be timeboxed to less than 4 weeks
  • Software features must be tested and working at the end of each iteration
  • Sprints start with an agile specification

The experience is that if you ask a lot of “Scrum” teams if they can pass this part of the test, they can’t. If you are at a conference, often not a single team in the room can pass.

The next part of the test checks whether you are doing Scrum:

  • You know who the product owner is
  • There is a product backlog prioritized (mainly) by business value
  • The product backlog has estimates created by the team
  • The team generates burndown charts and knows their velocity
  • There are no project managers (or anyone else) disrupting the work of the team

My reaction:

I think this is an excellent way to deal with Cowboy Agile or Agilefall.

Let me say this loud and clear: a firm can’t in good faith say “we tried Scrum” if they can’t pass this ScrumButt test. And pass for a reasonable period of time. Of course they could say “we tried Scrum”, but they did not. (I will not define right now what ‘pass’ would require.)

The ScrumButt Test is demanding. That is clear. But a test of this nature is a necessary (if not sufficient) condition to doing professional agile software development. (Or did we expect to get out of Fred Brooks’ tar pit by doing unprofessional software development?)

There are some forces in a firm that want to do Cowboy Agile or Agilefall or want Agile to fail (“it’s moving my cheese”). This is true in every firm that I have worked in, I believe. So, if you use the ScrumButt Test, expect to get some resistance.

The  Test is arguably too minimal. There are many other important parts of Agile or Scrum that it does not cover. Are the things in the test the most important parts? My thought is that this collection of principles and practices provides a good core of Agile/Scrum that will defend you from the most common dysfunctions. Not all. 

Is there a better test? Probably we could define one, but let’s pass the ScrumButt Test now.

Should the test be significantly more detailed? I think not. First, to work with any test, we need the test to be simple enough to be comprehended easily by most of the people involved. In this way, it becomes self-policing. Second, Agile/Scrum needs to be adaptive, so defining too many rules would, at some point, be counter to self-organization. 

What are your thoughts? Are you aware of similar tests? How does your firm limit Cowboy Agile?

Kanban ideas

We have been talking about Kanban a bit lately in other venues.

Let’s talk about some key Kanban ideas in Scrum. Here.

1. Do the most important thing first.

In Scrum, we want the Product Owner to order the work (the PBIs or User Stories) mainly by Business Value.  (Yes, we talk about ‘ordered’ now, but this is mainly Business Value, looked at from the ‘right’ time dimension, not ‘let’s do the low BV things first.’)

2. Pull

In Scrum, we only work on things that the PO has ‘pulled.’  We don’t do what we want, and hope it will sell.  We don’t create ‘excess’ inventory.

Is this perfect?  Well, no. The ideal is that the PO has received an order from ‘the customer.’  But this varies by business and by product.

But at least the PO, on behalf of the customer, says he wants it. Now.

3. Flow

Scrum has flow for each story. Anytime flow is stopped, as shown by the Scrum Board, then that impediment should be fixed.

It is true that flow stops for the 15 minute stand-up each day.  This is not really a problem.

How does Toyota do it?  Toyota (Taiichi Ohno) says that the Team must be in sync. As in crew, they must row in sync. That’s his metaphor.  Scrum has the same concept, in part as shown in the Daily Scrum.  Toyota does not have ‘every single minute’ flow. In fact, Toyota is very famous for ‘stop the line’, where flow is purposefully stopped in a major way. To fix a defect.

So, Toyota and Lean are very mindful about when to have flow, and when to sacrifice flow for other values.

Using a Team that is in sync also enables greater flow. Example: If one person is stuck in any way, the other teammates are there for immediate help. And have every incentive to help, since they want the team to ‘win’ or be successful.  So, the team concept increases the flow.  Yes, there is a small ‘price’ perhaps in the Daily Scrum, but it is small compared to the benefit.

4. Minimize WIP

It is good for everything and everyone to minimize Work In Process (WIP). I won’t try to explain here why that is so.

Scrum does this first by saying, one product backlog to one Team. And an ordered Product Backlog. And then, that the Team should choose for the Sprint the top items from the Product Backlog, but only so many as it can confidently do in a Sprint (whatever the Sprint length might be).

Some of the reasons for using a Sprint Planning Meeting for this are…
(a) to minimize disruptions during the Sprint,
(b) the inter-connectedness of pieces of work, so that the Team can choose stuff that is reasonably inter-connected, in such a way as to maximize the feedback at the end of the Sprint in the Sprint Review (demo) (we always get feedback…many reasons), and
(c) to allow ‘chaos’ in at the end of the Sprint. And a possible significant change of direction.

This last one also allows and encourages a serious re-think about the whole direction of the product. We _want_ significant mid-course corrections.  In part, based upon the feedback at the Sprint Review.

In addition, Scrum uses the Scrum Board to minimize WIP. Only the top story (PBI) or two should be in progress at any one time. If a story gets stuck, we can put it down, and pick up the next most valuable story.  But in any case, we minimize WIP.

***
I am quite impressed, as I think about it now, with all these Kanban ideas already in Scrum.  I will try to explain them more later.

And also explain how we might change the Scrum Board to be a slightly different Kanban board.