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.

Question: How to order Stories in the PB

Question from a former Class Attendee:

Another question, this time about ranking user stories.
In the recent Scrum Master course, you indicated we should rank stories in the PB (Product Backlog) by Business Value and then do them from the top down. In the Product Owner course back in 2011, you had us calculate R = BVP / SP to arrive at the cost / benefit value and then rank by R. This would have the effect of doing longer items ahead of shorter items that have somewhat less business value.
What do you recommend now? What are your current thoughts?

Reply:

I explain this at a decent length in my small book on Agile Release Planning.

I am still a fan of the R factor.  AKA cost benefit analysis.

And a fan of making stories small.  To me, all epics eventually must be broken down so that we can get 8 items (stories) in a sprint.  So, if we have a velocity of 20 for a 2 week sprint, then items average about 2.5 story points in the sprint.

So, as stories rise to the top and get broken down, we have to re-point (both BVP and SP). And thus the R and the ordering will change.

Not quite sure what your concern is, but I think that resolves it.

The order can never be ‘purely’ business value.  We have other things to consider (which we might also call business value, but to me it gets too complex to put it that way….).  Things like Risks, Dependencies, Learning, MMFS (minimum marketable feature set), and Other factors.

So, I like to use R factor. Rank by that. And then have the Team discuss changes to that ordering.

Remember that to me the most important thing is that the Team together see the same elephant.

In the long term (or short term??) the PO wants to maximize the business value delivered out of the Team.  I think.  As a contrasting example, the PO is not optimizing the ‘efficiency’ of the Team (that each hour is used ‘productivity’).

Help?

The Organzation of our Scrum course

First, is a Scrum Team organized?

Well, a good Scrum is more adaptive, probably, than it is ‘organized’.  Of course, we can debate the meaning of these words, but during a day or during a sprint, or during a release, I usually would rather that the Team be adaptive, than that they follow an organized plan. As one example.

This is one small reason that our Scrum course is not organized in a strictly logical way.

Second, why do Scrum Teams fail?

Well, there are many reasons. One key reason that is not true: They were not intellectually able to fight through the complexity of the explicit knowledge around the bare framework of Scrum.

In fact, the bare framework of Scrum is very very simple. (On purpose.)  And understanding the explicit knowledge around that is quite easy.

Hence, we are not worried that we need to organize the course so that the attendees build in their minds ‘complexities upon complexities’ about Scrum.  If Scrum were complex, for example, like the Calculus, then we would have to organize the course a different way.

Again, Scrum is ‘holistic’ or interdependent.  One cannot understand one part of Scrum without understanding how it works with or plays with another part of Scrum.  ‘No man is an island’ as John Donne famously said.  So, we like to continually weave from one thing to another, so that this weaving starts to be embedded in the ‘back’ minds of the attendees.

So, one of the key problems is tacit knowledge. Getting the tacit knowledge and all that that means into their heads.  But, honestly, not just into their heads, but their hearts, their souls, their guts, their bodies.

And one of the big problems is that the attendees, or many of them, resist intellectually.  So, as in Zen, we have to confuse the intellectual mind in order to enable real learning to happen faster.  Or, as the Army says, we have to break them down in order to build them back up again.

We have to ‘go around’ or ‘get behind’ the intellectual resistance that is common to just about all of us. So, one technique is to do exercises. But not following a highly logical flow to the course is another technique. Surprising the attendees (in small ways) is another technique. Humor is another technique.  Improvisational exercises is another technique. Food is another technqiue.  Addressing them, and getting to know them, as a person is another technique.

For some, our techniques (and there are actually many) are…umm, disconcerting. If one is the organized, intellectually rigorous, ‘it is all about thinking and logic’ type of person, it can feel a bit uncomfortable.  But if one has at least an intellectual understanding or some real experience that says that people and real life do not always follow our pre-conceived intelectual notions, then it is not so uncomfortable.

So, I admit that the course to a new person, or at least a few, can feel uncomfortable. (Actually, my impression is that most people enjoy it. About 95%.  But not all.)

If, in the course you tell me you have that feeling, then I will offer some advice. First, that we will address the topics, or most of them, that are on the one-page (two-sides) outline of ‘Scrum’ we hand out (it is really more than just Scrum).  And we will follow, mostly, the outline on the website. (Except not in that order.)  And that we will follow the slides, pretty much sequentially.  Except that we will cover additional things that are not shown on slides.

We have a strong confidence that most real learning is not logical. It happens in the sub-conscious mind, where a whole bunch of experiences are ‘put together’ by the brain into a ‘logical’ way of looking at the world.  Assembled into a pattern or set of patterns. And we are forcing your brain to break down old patterns, and rebuild all that ‘stuff’ into new patterns. And we have a strong confidence that all of out attendees can do that.

And we also know, sadly, that many are so much ‘controlled’ by what we call ‘waterfall ideas’ that they will not be able, after only 2 or 3 days, to really replace the waterfall patterns with agile/scrum patterns.  So, we are sad when we do not succeed in this way.  It does happen.

Would we succeed better if we presented things in a more organized, more logical way?  Well, in a very small sense with a very few people, they might at least say ‘it was a good logical presentation’.  And they, that small group, would feel better.  But we are completely convinced that, if you look at the overall results, we would be much much lower.

Remember that our goal is not teaching. Nor learning. Nor even action by the attendees. Our goal is to achieve real results with Scrum. For the person, for that person’s team, and for that person’s customers. One never will achieve real results with merely a ‘logical understanding’ of our work.

We are not after explicit knowledge. We are after ‘a sense of urgency’ and the tacit knowledge that leads to successful results.

I wish you every success in having fun in achieving real results.

ROI for Scrum Training

Does Scrum Training give a good ROI?

Well, of course, that depends. Mainly, how whether the Team (the full Team) takes an aggressive attitude toward improvement.

But let’s look at the following calculation.

We start with the a Team that, fully loaded, costs about $1 million per year.

Their current Business Value delivered after 1 year’s work….taking the NPV (net present value) of all future cash flows, is currently $3 million.  Now, maybe you can follow most of the rest below.

Financial Benefits Estimate
Cost of Team $1,000,000
Business Value Delivered by Team $3,000,000
Note: This is NPV from work delivered in one year
Improvement Factor 2
Note: Reasonable improvement factor in 12 months.
Note: Jeff Sutherland is looking for a factor of 5x-10x.
Note: This is usually measured as an improvement in velocity.
BV Run rate after improvement $6,000,000 per year’s work
Gross BV Improvement $3,000,000 per year’s work
Note: Per year!
Note: Thus, this is a LOW (conservative) estimate
Investment required to obtain improvement $750,000
Note: This includes many things, mainly accumulated cost of impediment removals
Note: This is a HIGH (conservative) estimate
Note: At some point, a lower investment could correlate with a lower improvement factor.
Net Net BV Improvement $2,250,000
Return on Investment 300%

Let’s talk about the investment of $750,000

So, this includes the cost of training.
This includes the cost of travel to the training.
This includes the time lost while training.
This includes the cost of removing impediments for the Team (this is by far the biggest cost).
Removing impediments may require servers, software, training on automated testing, etc, etc, etc.

To be honest, we think $750,000 is a gross over-estimate of the cost of getting a 100% improvement in velocity.  It will cost MUCH less. Maybe $100,000 or $200,000 or $300,000 — depending on your situation.  If the cost is ‘only’ $300,000, then the ROI after one year becomes 900%.  Or 9x.  That is huge.

Where would I invest first?

1. Train the whole Team.
2. Get an Agile Coach (I won’t debate here how much time the coach should be dedicated to the Team. But a coach for one Team.)
3. Improve the Product Owner
4. Improve the continuous builds
5. Improve automated testing
6. Improve integration and regression testing, so that they are much more robust

Almost always, these are the top areas.

Each Team also has its own specific things, things unique to that Team.

Some Teams are fundamentally dysfunctional.  Some Teams need people skills.  Or facilitation on decision-making. Or training in specific skill sets.  Lots of other possibilities.

The key thing is that you see that we think starting Scrum is the key to releasing all these benefits. And that it will not be Scrum alone that releases the benefits.  Getting all the benefits will require hard work and further investment.  But it starts with Scrum.

And Scrum, if played professionally, has a huge ROI.  Huge.

Note: Here is a link to a spreadsheet, so that you can do your own calculations.  Use different assumptions, and see what you get as an ROI.

Public Impediment List: “We don’t want to see the bad news.”

The Scrum Guide does not mention it, by I strongly advocate a public impediment list.

The simple idea is: visual management, and single piece flow off the ‘top’ of the list.

What’s the problem?  There are several, and let’s discuss two today.

1. Some impediments are personal and should not be put on the list.

To be this is easy. An example that is fun to talk about is that Sarah and Sunil are having an affair.  And some or all of the team knows about it, and it is ‘disrupting’ the team in some way.

The issue: listing this specific personal impediment on a public forum will not help. Fair enough.

And the easy solution is that those ‘personal’ impediments should not listed, at least in the wrong way, on the public impediment list.

2. ‘We don’t want to see the bad news.’

This is actually a very common and a very hard problem.

Often members of your organization — while they may never say it this way — will not want to see the problems in the organization.

Sometimes this will manifest as a denial of some of the impediments. And, to be fair, there should be a healthy discussion about whether all things mentioned are really impediments. But certainly we see people ‘defending’ things that are really impediments.

A related factor, though, is the wish to feel good about ourselves. And the impediment list makes us, often, see that we are….more imperfect than we sometimes want to admit.  This is hard on the organizational ego.

So, building in some humor, and showing the value of always striving to be better… these are very important things to discuss.

 

Intermediate CSPO Course

Scrum is, in a way, simple.

But we think that, for many reasons, doing Scrum well requires continuous study.

For one thing, we need to do the practices in harmony with the values and principles behind lean-agile-scrum.  And we are always forgetting the values and principles.

But there is more to it than that.

You may have taken our CSM course. If you have done Scrum for a while, you should seriously consider taking the intermediate CSPO (Product Owner) course + Workshop. If you are a PO, the reason should be obvious; you need to take your skills to the next level.  This will greatly benefit the Team.

If you are a SM, you need to understand the PO role much better, so you can coach your PO to become better.

The course is also good for manager’s, business stakeholders, and business analysts.

Our next Intermediate CSPO Course + Workshop is in Charlotte on May 21-23. I hope you can join us. See here!

But my main point here is not this specific course. My main point is the need for continuous education, so that you, your team and your customers realize the full value of scrum.  This course in May or the CSPO course more generally is only examples of that continuous learning.

Special Offers: Today thru Sunday

Today thru Sunday, for that limited time, we have a special promotion on this course.
Intermediate CSPO + Workshop in Charlotte, May 21-23.
10% off to members of the local Agile or PMI groups. (Or those who join today.)

Details are here or here.

Today thru Tuesday, for that limited time, we have a special promotion on this course.
CSM + Workshop in Toronto, May 29-31.
10% off to members of the local Agile or PMI groups. (Or those who join today.)

Details are here or here.

Empirical Process Control

Ken Schwaber and others talk of Empirical Process Control ideas as being key to understanding Scrum.  I think this makes some sense.

Mr. Schwaber got these ideas from Babtunde Ogunnaike and W. Harmon Ray, who wrote the process bible: Process Dynamics, Modeling and Control.  Big ole book, mainly about chemical processes.

We are talking about how to build new products.  How to get business results, in the form of new products.  Innovation.  Some of you don’t even want to call it a ‘process’.

But to process geeks, if you build something in a half-way regular way, then that way that you build things, even if fairly irregular, is a process. Of a sort.

Ken Schwaber uses this (to the Scrum world) famous quote from Ogunnaike and Ray’s book:

It is typical to adopt the defined (theoretical)
modeling approach when the underlying
mechanisms by which a process operates are
reasonably well understood. When the process
is too complicated for the defined approach, the
empirical approach is the appropriate choice.”

In very simple terms, we Agile folks take ‘defined’ to mean ‘waterfall’, roughly as defined by the famous waterfall article by Dr. Winston Royce.

Two things must be said about ‘waterfall’.  First, Dr. Royce defines and shows lots of feedback loops, and most people, when they speak of waterfall, do not mean that.  Or they mean that those feedback loops are very weak and work poorly, very poorly.

Two, Dr. Royce calls for builders to ‘build it once, throw it away, and build it again (correctly).’  This is virtually never done in real life, and is typically not meant when people say ‘waterfall.’

And by ‘empirical’, we take that to mean, very simply, Scrum, as defined too quickly in the Scrum Guide by Jeff Sutherland and Ken Schwaber.

So, how do we connect the dots?  A later question is: have we connected them fairly, usefully, and with as much rigor as possible.  And a final question: is there any more light that ‘process control’ ideas can give us, to enable us to do our innovation/new product development work better?

***
Here are what I think of as the basics of process control, as applicable and useful to understanding Scrum better.  And the two basic methods or approaches (defined vs empirical).

This is what I think I have been told over the years.  By several different people. In fact, I may be adding and subtracting what others have said to me.

It is a very simple theory or set of ideas.  Even though it is simple, it is still (IMO) useful.

There is also a lot it does not ‘explain.’  Although perhaps one could start to use these basics concepts to discuss these other things or issues.

In the simplest model, process control consists of a flow across three ‘elements’.
1. Inputs
2. The black box (‘the process’)
3. Output

If 1 and 2 are both ‘in control’ and highly reliable, then 3 is likely to be reliable.  Ceteris paribus.  These are the conditions for a defined (waterfall) approach.

At the other ‘end’, if both 1 and 2 are ‘out of control’ or unreliable, then 3 is, by the definition of this model, unreliable. (Unless there is some other element that magically makes it reliable.)  These are the conditions for an empirical approach.

What does empirical approach mean?
a. We inspect 3 often (this is only common sense — when 3 is unreliable one naturally wants to inspect it more often; one needs to), with the ‘best possible’ eyes, expecting it often, even usually, not to be what we want.
b. When 3 is not what we want, if we can, we pull it back to the beginning, and run it through again.  And try to ‘adapt’ either 1 or 2, to make them temporarily more reliable.  And pray that 3 is or becomes — after we run it through again — actually what we want.

We are assuming for now 3 (the widget) can be run through again, usefully. Of course, this may not always be the case.  For software, this is true.  For some physical products, this may be a bad option.

Now, the empirical approach is terrible, obviously. If one (the ‘God’ of the process) had any sense at all, one would change things so that 1 and 2 were both highly reliable.  And then 3 would become reliable.  That is, one would change things so that one could use the defined approach.

But, what we are saying with new product innovation with human beings, is that we never have 1 or 2 in a reliable state.
We are not God, and there is too much stuff hitting the fan.  From every direction.
So, while we might control the inputs and the black box for 3 minutes, after about 3 minutes things are unreliable again.  Sadly.  So we are always stuck using an empirical process.

But at least we understand the process we do have.

***
Personally, I consider human beings highly unreliable inputs to any process. We humans often compare ourselves to machines, but in fact we are highly unreliable.  Now, innovation and creativity are ‘the unexpected’.  So, in innovation ‘unreliability’ is actually a good thing.  So, humans aren’t that bad after all.

This very simple theory or paradigm seems very real and accurate to me. It makes sense, to me, of the mess that we are in. The tar pit, as Fred Brooks calls it.

I think this is basically what Tunde Ogunnaike and Harmon Ray meant.  At least for us.  When they compared ‘defined’ and ‘empirical’.  But, I will ask them.

***
Now, some questions that this very simple theory does not answer.
1. What if only 1 or 2 is ‘unreliable’?  (And the other one is reliable.)
2. How unreliable do 1 or 2 need to be before one uses an empirical approach (as you call it)?  One imagines that, at very low levels of ‘variation’ in 1 and 2, …that the ‘defined’ approach would still work or be better.
(As a practical matter for software development, I find that 1 and 2 are so ‘out of control’ that this question becomes moot.)
3. How do you know there is not another ‘element’?
4. What if you can’t adapt ‘enough’ (on 1 or 2)?
(Logically, in the simple case, one stops working or trying to produce anything, since 3 is highly likely to be wrong.  Unless one can live with totally random success.)

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.

Scrum 201: Team

We want all Scrum teams to become hyper-productive.

Why?

Well, so they can enjoy life and be satisfied.  And feel like they accomplished something.  So, in part, this requires that they reach hyperproductivity without working any extra hours.

Second, we assume that hyperproductivity also means much greater business value delivered.  This of course will not always be the case. But it should be.

What level is considered hyperproductive?  5x-10x greater than average waterfall productivity.  But we will settle for 5x-10x the teams initial baseline.  Which is usually about what they are doing the 3rd sprint.

So all teams do this? No.

Can all teams do this? No.  Although we expect all teams to try, and to make serious progress.  Meaning: We expect each team to change its firms substantially.

***

Where do we start?

I think the first thing is: Is this Scrum team a real Team?

Far too often the answer is no.

They don’t think of themselves as a Team. They don’t work as a Team. And they don’t measure Team productivity.

So, we often have to start by convincing them they are a Team.

***

Lots of the work is talk. Repeating basic ideas about Teams. Sometimes we must remove non-team players. We must add Team metrics. We must ask managers and customers to view them as a Team.  And we must show them the small successes of good teamwork. And build on that.

It is not what they say, it is how they feel and act.  First, how they feel.

Each team has its own team chemistry.  This must be built.

Once they feel like a Team, then it is easier to coach the specific actions that a Team takes to support each and be successful as a Team.

Often, many people in the Scrum team have never been on a good sports team.  Or on a good team at work. So, often, you don’t have much tacit understanding to work with.  Makes it harder.

And lots of the talk and work is on people outside the Team, who are inadvertently destroying the team, through all kinds of words and actions. You, as maybe the ScrumMaster, must change the immediate ‘culture’ to foster the Team.

Not easy. But a good place to start.

I suppose you can play Scrum without really being a Team, a real Team. But Scrum is meant to be played as a strong Team sport.  This is when you will see the real productivity, the real value.