Category Archives: Learning

Semantic vs Syntactic Scrum

When I first started doing what I believed to be “Scrum” there were very few rules.

At it’s heart, in the beginning1, scrum was really just about working inside of a self organising cross functional team (of any size) where everything happened at once, instead of in sequential phases. Simple, but also radical. It also wasn’t limited to (or indeed for) software. As time went by thou, things got added to Scrum, although if I’m being totally honest I didn’t really notice that until much later.

The first and perhaps majority of these newly added things were summed up in Ken Schwaber’s seminal book “Agile Software Development with Scrum” (aka The Black Book) – and so that quickly became The Bible. The things that had been added since I first tried it, were, on reflection, largely to do with how you did Scrum than they were about changing what Scrum was. But then something interesting happened. “Agile Software Development with Scrum” began to define Scrum. The How started to become the What.

And almost overnight Scrum became a set of practices.2

 

Much like a phone stopped being a thing in its own right and became just another app on our Smartphones. The Self Organising Cross Functional Team stopped being the definition of Scrum, and simply became another one of the practices. And not only! All of a sudden those teams were restricted to covens of 7 +/- 2 members. The rules had arrived.3

In the early days of the the 21st Century, Scrum was rather uncontrolled & ungoverned. Whilst The Black Book certainly added new rules, roles and restrictions to what was previously a very open framework, it still focussed a lot on what Scrum was, and why we needed it.

Talk to a few older Agilists and you might find that it’s one of their favourite books, even if they now regard it as a bit dated. It covers many esoteric topics. There is a section entitled “The Kuhnian View on Scrum” which is closely followed by a treatise on “Knowledge Management”, and it was, for a great many people, their first taste of complexity and the works of Ralph Stacey. It was rich with well documented references. It was in some ways more of a proof of Scrum than it was anything else. A way to convince you that this seemingly crazy idea might just work.

The CSM appeared a few years later, around 2003 and at the time it was a prerequisite that you must have read The Black Book before attending. All 158 pages of it. And that was pretty much the only “control” placed on Scrum.

With the students having read the book, and attempted to practice Scrum, in those early days, the the CSM® was much less about the practices and more about the spirit of Scrum. The Philosophy. I have fond memories of Ken teaching a CSM in much the same way a philosophy professor might teach at a University, presenting conundrums to the class which on the Surface appeared to have nothing at all to do with Scrum, but in truth offered transformative learnings to all those ready to listen. Some readers might find a smile appearing on their lips at the mention of “Squirrel Burger”. It was not all roses of course, I remember fines for being late to both your Daily Scrum and being back to class, something that seems outright harsh and clumsy today, but generally it felt like we were focussing on the right things.

Since then, the CSM® has changed, and so has Scrum.

Looking at what passes for Scrum in some places these days, you do have to wonder what happened. I’m tired of reading blog posts about how awful Scrum is and then reading about a process that doesn’t sound remotely like any Scrum I’ve Ever practiced. And there is no point saying that, because you’ll just get the reply “That’s what Scrum is now, I’ve never seen anything different. It’s not a conversation worth having.

And this is happening in a world, where Scrum is now defined and controlled. We have the Scrum Guide! Ownership has been declared! We even have two Separate Certification bodies based off of it.

There is a missing set of years thou, a wilderness, a time after The Black Book but before The Scrum Guide, where existing practices were quietly altered and new practices were semi-officially or defacto added to Scrum. And all the while the community would declare “Scrum has not changed” — even thou Sprints went from “Strictly 30 days or it’s not Scrum”4 to almost universally two weeks long, and the meteoric rise in the number of “Agile Coaches”, started to deeply infringe on the territory of the ScrumMaster — a role so new that it was only barely beginning to find its feet.

But apparently Scrum had not changed.

A Tale of Two Scrums

It’s taken me a while to get this all straight in my head. My first point of call, was of course, like every other coach and trainer “You’re Doing it Wrong” — “Yeah, I know it says X, but it means Y not X”. Some people accepted it, some did not. It worked better back in the days when people got help from the get go. It works less well now when people struggle with Agile for months before getting assistance, long after everything has gotten its own local and binding definition.5

I then started to feel more compassion for my clients — especially since I noticed that so many of them were getting it “wrong” all in the same way. I then took a hard look at the wording of Scrum as it was then defined and realised that it was very ambiguous.6. I started talking about what I called “Misunderstandability7 with friends and at Conferences — and after some encouragement eventually wrote about it.

As it turns out, people don’t like to think that they’ve misunderstood something anymore than they like to be told that they’re wrong, after all those are very similar things, on the surface it seems to indicate that the person themselves is at fault here.8 (Even thou my original intent was to ascribe blame to the object of the misunderstanding and not the person — which I think is still a useful concept)

Additionally, some people seemed to like this New Scrum.9. And with the Scrum Guide in hand they were now able to defend it.

Sure it wasn’t a Scrum that I recognised, but it was spreading. Fast. Depending on when you encountered “agile” in your career, it may well be the only Scrum you’ve ever seen. Even if you’re an “Agile Coach”.

So what shall we call this New Scrum?

The problem with the term “New Scrum” is that it sounds better. So that’s out. As is the term “Modern Scrum”. And “Scrum In Name Only or SINO”, sounds kind of narky. As does Scrum Coloured Paint. Additionally with these last two we’ve ventured into the territory of not doing Scrum at all, but calling what we’re doing Scrum, and that’s not at all what I mean. By New Scrum, I mean people who are certain they are doing Scrum, and can, to some degree prove it (with maybe an audit).

So perhaps the answer lays in letting this “New Scrum” steal the term from us and relable the old — but that didn’t work very well either.

“Real Scrum” is obviously inflammatory and implies, once again, that you are Doing It Wrong™. “Original Scrum” and “Scrum Classic” have exactly the same problem as “New Scrum”, but in reverse.10

It’s a veritable mine mind field. There is change, but no progress. How do we label it?

A Parting of the Ways

And then it hit me, if we didn’t have an evolution or a progression (which we most certainly didn’t) and we didn’t have a devolution either (jury’s still out on that one) — then perhaps what we had was a separation.

A separation of mechanics from meaning.11

A separation of Syntax from Semantics.

And maybe that was OK.

It was time to separate the Syntax from the Semantics of Scrum.

Syntactic Scrum

Syntax is the rules. It’s the processes. The ordering.

Syntax is not only easy to write down, it is what’s written down.

Syntax is the instructions.

Here is an example:

The Daily Scrum is a 15-minute time-boxed event for the Development Team. The Daily Scrum is held every day of the Sprint. At it, the Development Team plans work for the next 24 hours. The Daily Scrum is held at the same time and place each day to reduce complexity. The agenda of the Daily Scrum is as follows:

What did I do yesterday that helped the Development Team meet the Sprint Goal?

What will I do today to help the Development Team meet the Sprint Goal?

Do I see any impediment that prevents me or the Development Team from meeting the Sprint Goal?

You now know:
1. Who should attend the Daily Scrum (assuming that you know the Definition of “Development Team”)
2. How long the daily Scrum should be (15 minutes)
3. The fact that it should be held at the same time every day

The Syntax of Scrum is the easy part. Hell, you can learn it all in two days!

Once we start talking about Syntax thou, there are of course additionally details which people might want to know such as:12

  1. What should we do if the timebox is exceeded?
  2. What time of the day exactly should we hold the meeting?
  3. What is the definition of an impediment?
  4. Does every day also include weekends?
  5. What should we do if one or more teams members is not present? Late? On Holiday? Sick?
  6. What is the definition of a Sprint Goal?
  7. What if we don’t have a Sprint Goal? (Because we’ve not implemented that part of the Syntax yet)
  8. If the Daily Scrum is held at 0900 one day, but not until 1015 the following day, how do we know what to do in the hour and fifteen minutes of unplanned time!!! (given that the team only plans out the next 24 hours)
  9. Who ensures that people do what they say they will do?
  10. What kinds of punishments are appropriate for violations
  11. Is Gary an impediment?

Syntax tends to lead to a hunger for more syntax. It’s the nature of the beast. You don’t (have to) think, instead you (just have to) apply, which means when you encounter a case which is not covered by your existing rules13 you either wait for external input or go off piste.

Syntax scales

Syntax also has another property that makes it very appealing to the average enterprise – it scales. Syntax is way of creating standards (in action if not output) — it’s no wonder that SAFe is popular in some circles as it’s a massive amount of Syntax, it provides a huge degree of comfort to a certain kind of person. “Well I don’t know whether or not Gary is an impediment, but I’m sure the SAFe Guidance will tell us” — you don’t have to read it, but you do have to know it’s there for this to work. It is also of course easy to measure and manage. I have literally seen consultants from a well known, but will remain nameless consultancy running around timing how long each team’s stand-up (Sorry Daily Scrum) took — and then creating a lovely Control Chart in PowerPoint.

Syntax is absolutely vital, but it also (obviously) has it limitations. Which is why we need Semantics

Semantic Scrum

Semantic Scrum is different. It’s hard to explain exactly how in writing, because that’s the nature of it.

Semantics are the part that’s not Syntax, semantics are the meaning.

If Syntax flawlessly communicated the Semantics then we would have no need of the two words.

Semantics are built out of context, knowledge and experience. And that’s where the problem begins — we’ve all got different knowledge, contexts and experiences.

Not all semantics are hard to explain. Some contexts and experiences are sufficiently shared that it’s fairly easy to explain general if not precise meanings. If you had never, for example experienced “mustard” before, I could quickly convey its meaning to you by saying “It’s a condiment, like tomato ketchup” — and this analogy (because analogy and metaphor are both very useful tools for conveying semantics) would help you understand some very useful things such as:

  1. This is added to food, but is not food (unless you are four)
  2. It generally makes the food taste better
  3. It is savoury, not sweet

But the semantics of Scrum are actually hard to explain — and that’s the central issue. Scrum represents and has always represented a paradigm shift from the default way in which the majority of organisations operate14. This is where the conflict comes in, why “you’re doing it wrong” was the catch cry of the mid 2000’s and also why it was so poorly received. People just kept thinking “but this way makes more sense to me”.

Engaging only with the syntax of Scrum allows us all to avoid that discomfort. By focussing on the syntax and simply assuming you already know what the semantics are meant to be made Scrum seem easy, more palatable. It made it popular.15

But it also changed it.

When we defined Scrum purely by the syntax. The rituals, the artefacts, the roles. The shell became static, fixed. But the underlying meaning was allowed to alter, change and vanish. And suddenly it wasn’t there anymore. And there was also no useful way to talk about it. It was like watching an actor for a character change on a beloved TV show. You knew it wasn’t the same, you could feel it, but everybody was insisting it was the same person and that nothing at all had changed.

Original Semantics

So the pitfall here, is, once again, to tell people they’re doing it wrong. It’s a trap that’s so easy to fall into. It’s sitting right there in front of us, begging us to say “Ah, but the real meaning is this”. Now we’re double dumb. Not only are we wrong, we were tricked! That sucks. Hulk Smash.

And whilst they’re the original semantics to me, they are probably are not to you.16

And nobody really cares what the author thinks after they leave the room.

Alternate Semantics

Instead, I think it’s more useful for us to embrace the concept of alternate semantics. What is original for you is almost certainly not what is original for me, and even authors find later and alternate meanings in their own works.17

Alternate Semantics allow us to get rid of the tyranny of “is” and “should” — it allows all parties to accept that the meaning they have ascribed to the Scrum Practices may not be the same as those of the practitioners that came before them, will come after them, or in any way match the original author’s intent. But at the same time, this does not mean that they are right or wrong. At least in some absolute sense of the words. They are at best, logically coherent and justifiable.

I have noted on many occasions of late, that most of the organisations that are, for want of a better phrase “Doing Scrum Wrong” — would never, ever have attempted it, if they had grokked the original semantics. A particularly enlightened example can be found here.

Useful Results

The concept of Alternate Semantics needs a friend thou. Whilst I’m prepared to accept that multiple interpretations can have value, albeit different kinds of value. I’m not at all prepared to accept that all interpretations are useful. For this to work, we need some level of congruence. That our actions, driven by our interpretations, somehow link up to our goals, and if they don’t, then we have a mandate to explore whether or not it’s our interpretations that might need some revision. Moving away from the rather binary right and wrong, into the world of better.

Room for both

I like this separation. To me, it allows Scrum to be free. It allows both the Semantics of Scrum that I knew (and still believe to contain value) to co-exist peacefully with the Defined by the Syntax Scrum  that in 2019, people love to hate.

I also think it adds something important to the conversation, that context is everything, that simply following the steps is not necessarily going to give you the same results as every other Scrum “Success Story” — it also might give you pause to stop and think critically about what people might actually mean when they say “We are doing Scrum” — sure, they might be following the rules, but what is the meaning behind those rules. What are their goals? Do they line up?

Whilst I’m a known vocal critic of “Waterfall with Stand Up’s” style Agile, that has more to do with me than anything else. It also comes from my assumption that the people who are doing it “wrong”, want to be doing it “right”. And that’s really not a reasonable assumption to make anymore.

All I ever really wanted is for the Original Semantics of Scrum to not disappear. Not fade away. To be remembered for what it was. To always remain as an option for those wanting it to try it. To have a handle onto which to hang the concept. And now I’ve found it.

So now you can practice your Scrum and I’ll practice mine and there is no need at all to have a war about it.

Syntax Diverges Syntax Improves

Whilst it’s never possible to create a perfect string of syntax that will universally and unambiguously conveys the semantics you intend it to.

It is of course possible to improve on your syntax, especially as the context you’re working in changes, matures and is understood better.

Not the least of which is what semantics have people ascribed to your syntax?

I’d like to think that that’s what’s happening with the Scrum Guide. Whilst it’s still far from perfect (primarily because it never can be) it’s lightyears ahead of where it was back in 2008 when I first laid eyes on it. The yearly update cycle, even thou it can get very bogged down in pedantic minutea sometimes, seems to be overall a good thing for it. Perhaps there is hope.

For myself, I’ve continued to evolve how I present my own message, as the audience for it, and the context they come from changes. In many ways this is a dance with the aforementioned misunderstood syntax — as it gathers semantic mould of it’s own, I’m required to refresh the message in ways that are unpolluted and pure. As least as well as I am able to make them.

Mainly, I’m trying to get people to think about the things they often take for granted. To start with the end in mind, to ask what am I trying to achieve, how am I trying to achieve it? What beliefs underly that approach? Is this in line with my organisation’s goals and beliefs?

How about the other people I work with? Are we sufficiently in alignment? (If the immediate answer that comes to mind is “yes”, then I’d recommend counting to 30 and asking again)

Whilst this sounds like it might be hard work, at least compared to following a set of rules and accepting whatever semantics your context and experience automatically ascribe to them. It’s ultimately a far more meaningful, far more effective and dare I say it friendly and relaxing way to approach the world.

Viva la difference.


  1. A decade or more before the Agile Manifesto. 
  2. If you for example read “The New New Product Development Game” you will find little to nothing on the how of Scrum. But rather a treatise on the underlying philosophy along with a few real world project examples (none of them software and all devoid of implementation details). It is so devoid of “how to do Scrum” that if you took the word Scrum out of it (which doesn’t actually feature prominently) many readers would fail to associate what is being described as Scrum at all. 
  3. Yes, this particular rule changed a few years back to 3-9. Just in case you didn’t think I was paying attention. 
  4. Which is why I’m amused that the the Scrum Alliance, at least for a period declared that no Sprint may be longer than 28 days, which is of course 2 days short of the “original” 30. Syntax is tricky. 
  5. Not to mention it’s now possible to hire a an “Agile Coach” or “Trainer” who will provide you with any definition of Agile or Scrum that you want! 
  6. Sure it was less ambiguous if you followed all the rules, which was close to impossible if you misinterpreted them, but by that stage people had adopted a “linear scrum” approach whereby you could just follow the rules or practices, one by by one in isolation. That approach is ripe for problems. Which is probably why there is such a large Agile Industry out there right now. 
  7. Misunderstanabilability is the natural pre-disposition that an idea has towards being misunderstood. It is not the same as ambiguity, where you are uncertain of a meaning, but rather where something clearly appears to mean something, when it, in fact does not. (And often the opposite) 
  8. Or worse, the boss has misunderstood and no correspondence will be entered into with you, the designated implementer. 
  9. Don’t get me wrong thou lots more people hated it. Mostly those to whom were made to comply without any say in the matter. 
  10. My favourite terms of all was “Honest to God 20th Century Schwaberian Scrum” — which represented the Scrum as described in “The Black Book”. I used it for a number of years, and it took off mildly with a small audience for a short period of time. 
  11. I first covered this topic in my Agile 2011 Workshop “Scrum as a Thinking Toolkit” where (amongst other things) the participants learned to interpret the Scrum Practices from the point of view of various stakeholder persona’s. We even threw Cynefin into the mix. It was a fun day. 
  12. I’ve had all these questions asked of me. I’m sure there are more. 
  13. Either because the author didn’t think of it, or because putting in every single case would be tedious and unwieldy. 
  14. That HBR article is called “The New New Product Development Game” not the “Same Old Project Management Game” 
  15. Which to be fair is how most adults get through the day. Encountering fundamental context or paradigm shifts is the exception, not the rule. 
  16. If you ever bother to lose a week researching all the early writings on Scrum as I did a year or so back, you will quickly discover that around the turn of the century there were already semantic and syntactic disagreements between Schwaber and Sutherland. I can only imagine that the Scrum Guide when it came out (endorsed by the both of them and declaring themselves as the “co-creators of Scrum”) was some kind of peace treaty, designed to create a single merged syntax at the bare minimum. Whether or not their personal semantic views have now aligned I could not however say. I guess my point here is that, if Ken and Jeff could not entirely agree on the meaning of the Scrum practices, back when they were creating them, we should not feel too bad about our own personal interpretations clashing with others. Even Ken and/or Jeff. Lastly, each practice may have many potential meanings and benefits, and what we’re often seeing is not disagreement, but rather emphasis and awareness. 
  17. If you don’t believe me that this is true for Scrum, you need only look to the early writings, where the ScrumMaster was described explicitly as a manager, and had authority over the team. Ten Years later and this manager has become a servant leader, who has no direct authority over anybody. The weirdest part about Scrum is that nobody talks about these quite extreme changes in official position. 

Harder, Better, Faster, Stronger

Ask the average person today why they’re currently doing or planning on moving to Agile and they’ll probably say “it’s faster”.

It’s a very popular answer.

But faster at what exactly?

If pushed, they might elaborate “faster delivery“. And then give you a funny look as if to say “What other kind of faster is there?”

So whilst on the surface of it, this sounds like a purely good thing — there is, or at least there can be, a dark side.

This focus on faster delivery in my experience has often led to implementations of Agile which are nothing more than a relabelling of Waterfall, with stand-ups, “stories” and JIRA® added like props1.

The “agile” or “Scrum” part is applied only to the bits of the endeavour deemed to be “the delivery”, which in its most extreme form2 means “The part where the code is written“ 3.

This is what I believe most people mean when they say “Agile Delivery” — a practice which I would prefer to refer to as “Incremental Delivery” — but more on that in a separate post.

But what if that’s not all there is? What if there was more? What if there was better.? (Even if it was harder)

On the Origins of Faster

As ubiquitous as this “Agile is Faster” belief is today, it’s hard to pinpoint exactly when people started equating Agile with speed. After all, the term is “Agile” not “Speedy” and it’s the “Agile Manifesto”, not the “Go Faster Manifesto” so the origin doesn’t entirely lie with the name. eXtreme Programming also offers no real hints, the scrum is probably the point in a rugby match with the least amount of forward movement and Crystals, well they just sort of sit there4. So it’s not immediately intuitive. It’s certainly not misleading.

At a guess, I would conjecture a few things might be casual here:

There are two Agile Manifesto Principles5 which mildly allude to speed:

  1. ”Our highest priority is to satisfy the customer through early and continuous delivery of valuable software” and;
  2. “Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.”

Which both sound at least a little bit urgent. Although they seem (at least to me) to emphasise regularity more than they do raw speed. At least the term “deliver” is there.

And then there is Velocity

Whilst a Rugby scrum may be relatively static wrt to delivery, one of Scrum’s6 most (in)famous contributions to the Agile canon along with The Sacred Lemming Mantra is velocity.7

If was a betting man, I’d put my money on velocity and it’s cheerleaders being the culprit here. Whilst the Agile Manifesto principles somewhat allude to speed – they don’t outright say it. Whereas the concept of Velocity absolutely does.

How fast is your Waterfall?

OK, so that’s where it might have come from, but so what? Velocity is great!

What could possibly be the Problem with Velocity?

Well, depending on your perspective, maybe nothing. Or maybe everything.

My personal problem with Velocity is that it’s just a raw measure of output. Even its biggest proponent Jeff Sutherland, talks about how he “rates his Product Owners on a dollars per point metric” — which signals very clearly that the Velocity metric itself, is completely devoid of any value or benefit component.

On an Agile Project, that’s kind of a problem. Especially if you’re not tracking anything else except velocity. It’s no good being early and continuous if you’re not being valuable.

But on a Waterfall project, that’s not a problem. Velocity and lots of it, is all you need. By the time we get to the delivery part in Waterfall, value is assumed. Value was pre-determined and fixed really quite early on in the project, sometime around the point when we got our requirements right and estimates acceptable and it was all signed off.

In this situation, Faster Delivery is absolutely a good thing. We know what we want, you just need to get it done.

Faster in this context also often defined as “Faster than your original estimates” — which is why claims of “move to Scrum get hyper-productivity” are so seductive.

It’s less of a state of being and more like a request “Can’t you get it done any faster?”8

Harder

But what if that wasn’t true? What if the requirements were not in fact right?

What if, <gasp> the estimates were wrong?

And what if, that sort of thing happened on a regular basis?

I mean, that’s absolutely ridiculous of course, and would never happen where you work I’m sure. But let’s just imagine it’s true, just for a moment, and explore what that might mean.

If this was the case, then when would you want to know that a mistake had been made? (Assuming you have rational and not political goals and additionally don’t have a job lined up at a competitor)

As soon as possible right? Would that be valuable to you?

Damn right that would be valuable. The more time that passes between having made a mistake, and finding it and correcting it, the more damage we do. We humans have a tendency to compound our errors — and this is doubly true with Software.

Therefore, in a world where we only have imperfect information and mistakes are made, then early detection and correction of those mistakes is something we’ll definitely want.

Work it harder

So how do we discover that something is not as we’d like it to be?

Perhaps we should just rely on our people to tell us.

Because people just love to show you that they’re wrong don’t they? I mean, if a developer suddenly knew that a requirement was wrong (and they’d know surely?). Then they’d ask somebody.

And if and when they asked, they’d also be taken super seriously too, I mean there is no chance at all that they’d be branded as a whinger and told to get back to work and mind their own business? (Which is of course delivery)

And further, even if the problem detected was nominally in their realm of responsibility, say the implementation approach or the estimated time to complete. Then there is no chance that said developer would be branded as incompetent having revealed this information?

It’s a good thing we have professionalism, because if any of those things were true people might be tempted to hide problems rather than face the possibility of criticism and ridicule.9

Not to mention the fact that a great many people just don’t like feeling incompetent. So they tend to hide the truth not just from others, but also from themselves. Oh right, professionalism totally fixes this too, I forgot.

So considering all of this, there would therefore be absolutely no need whatsoever to say, stop development every two weeks, on the regular, so that we could give feedback on what had been done to date, and then immediately act on that information? And there would also be no need to share a common definition of what it means to be done with something; because there is absolutely no chance that something might work on a developers laptop, and not at all once integrated with all the other changes and put into production. And that we showed you it now, because, well you were here, and we assumed that there would be no problems. Because we are, of course, professionals.

None of this is required obviously, because we don’t ever get angry with each other, not even passively and as a result people never want to hide their mistakes (because we’d also never decide to just stay back and fix them quietly) and because none of this ever happens, none of this is necessary.

The Horror of Harder

Because if you did do that, if you did stop to fix the issues when you found them, then that would impact your delivery schedule.

And that would be terrible. I mean, fixing mistakes slows down your delivery. (As does quality and testing, but that’s a story for another day)

Much better to simply raise a ticket. So when a stakeholder says “You better raise a ticket on that” you can professionally reply “I already have”. And then you will get a serious nod, so that you know that you have been sufficiently professional.

After all, a ticket is as good as a fix. Ask any user!

Raising a ticket allows the Developers to Continue On With Delivery and let some business proxy representative Showcase just how on schedule we are to anybody who doesn’t have anything better to do that afternoon.

Better

Unless of course we interpret the “early” in “early and continuous” to meaning gathering feedback early and continuously?

And not “early” as in “earlier than your pessimistic original estimates you lazy bastards”

Even the delivery focussed “with a preference to the shorter timeframe” principle could also be interpreted to being about getting real world feedback on what we’ve built ASAP as much as it’s about Capital D Delivery.

“Delivery” has such a ring of finality to it. A ring of correctness. Which is the way we like it in Waterfall. A land where everything is perfect and there are no mistakes. Just disappointments and failures.

And ironically if you focus on delivery, you’re more likely to be predisposed to ignore feedback you’re getting from your production users (assuming it’s going to the delivery team at all and not to some BAU or maintenance function)

So putting stuff into actual production quickly and regularly is really just another way of gathering feedback, really really meaningful feedback, as to whether what we’re doing is working or not.

The concept of Early from this viewpoint means “in time for it to be easily and cheaply corrected“.

Time to make it Better.

Defining Working

One of the key characteristics of “Agile Delivery” is that it runs off The Engine of Acceptance Criteria. When I first tried XP as a practitioner, a User Story was a sharpie scrawl on an index card. Most of the User Stories I see today would probably need to be printed out on a roll of toilet paper there are so many details and acceptance criteria. Which is why I guess, these days, User Stories rarely dare to venture outside of their JIRA® branded fortress.  Where they are very safe indeed.

In this case, “working” can and usually is, defined as “meets all the acceptance criteria” (or in some case “provisionally meets” as there will of course be a giant test phase at the end of the Project after the “Agile Delivery” is over). Once said “stories” have met these pre-contracted and comprehensively documented criteria, then and only then is it considered safe to “demo” them, as we are now sure there will be no surprises. And surprises are of course awful. 10

But what if there was another way to define working? One that actually required people directly affected by the software to use to the software before they could make the determination? I dunno, in some kind of regularly schedule review?

If we did that, we could save a bit of time on all these acceptance criteria, sure we might still need a few, but instead we’d be tracking towards whether or not we’d done something useful, instead of merely what we had been told (or could justify having done).

But that sounds like it would slow down delivery! I can hear at least some of you cry.

Faster

The good news here is that there is a different kind of faster available to us, not of delivery, but of faster problem solving.

This is what it means to me, that Agile is faster.

It does however mean that we have to start measuring from a different point. Faster Delivery by definition only starts at the point that you’re declaring that you’re ready for “delivery”.

At best, Agile Delivery looks something like this:

We are timing how long it takes from the point we’ve defined and designed our solution to when it makes it into production. You might be overlapping some of those “phases” and I hope you are, but we’re still tracking the same two endpoints.

Sometimes thou, Agile Delivery does not include deployment. In some places, that belongs now not to Agile (apparently) but to some newer, younger, cooler thing called “Dev Ops”11 — and thus Agile Delivery has in these places been redefined to this:

Or God Help us, this:

Faster Problem Solving on the other hand is measured from two different end points. Two points that are not even on the above diagrams — because they sit directly before and somewhat after Define and Deploy in our above Waterfall Hybrid Agile examples. Something you might hear referred to in Lean Circles as Concept to Cash.

To navigate down this little stream will require a degree of iteration. The linear left to right arrow is, I apologise somewhat misleading, and merely represents the passage of time, and not linear, even progress.

But problem identification and value realisation are not typically seen as IT issues, that is the domain of The Business! If you define the project like that, then we’d end up with Business People and Developers working together daily, and what would that lead to!

A prominent head of contract negotiation at a major bank once declared it to me as total madness. And pointed out that collaborating with the enemy IT Department is considered in many organisations to be treason. Punishable by lack of career progression.

Stronger

Solving problems creates value. There is nothing more valuable to a person, or an organisation, than solving a problem for them.

Everybody likes to talk a big game about “value” and as a result the term has become a little abused and ill defined. I’ve seen BA’s argue until they’re blue in the face that the requirements document that they just spent two years writing is VALUE. (Even thou 30% of the original users have now retired). Perhaps this is a legacy of the term “Value Add” (as in Value Added Reseller or VAR) — a world where simply doing extra things, was regarded as “increasing value”.

But my guess is that the problem with the term “value” is that it people take it personally. Deep down most people want their work to have value, so that they themselves feel valuable. If you’re a BA in the 21st century workplace, maybe you feel that you have to “declare value” at the point of writing your requirements, because the chances of you seeing them make it into production are terrifyingly slim12.

Which is why, for reasons of clarity and equanimity, I’m talking about Problem Solving. But if you’re a traditionalist, you can think of it as Value Creation if you like.

Either way, it’s a far bigger deal than just quicker delivery.

Makes us stronger

To me, the Working Software alluded to in the Manifesto has never meant software that merely compiles and runs. Software that can stay up for the 5 minutes required to “demo” it.

Frankly I’m not sure why anybody see it that way, but they do. I guess it’s easy. (See Harder)

To me, Software is only Working when it’s solving the problem that we originally hoped it would, or other problems that we didn’t even know we had, but are glad to have removed from our lives.

Software that is working for us.

Software like that does not live in isolation, but is part of a bigger thing. Part of a solution that makes us all individually stronger, capable now of achieving things we could never have done before without it13

Now you might end up with a result like that if you just focus on faster delivery.

But is that a risk you really want to take?


  1. This is of course only a problem if this was not what you intended to do. 
  2. Actually this is not the most extreme form, the most extreme form is “just some of the Software Developers on the days where it suits us” 
  3. By which I mean the coders, or programmers, or whatever else you want to call them. The whole concept of “developers” meaning everybody never really took off in any meaningful way and is at best confusing, so I think ideally we should give up on that one. 
  4. Regardless of colour. 
  5. Interestingly enough there is nothing that could even remotely be construed as providing or requiring speed in the Four Agile Values. 
  6. Although XP also had the concept of Velocity, it is, and always seems to have been, more closely associated with Scrum. Scrum thought leaders have certainly been the most active in promoting it. 
  7. And it’s slighter more attractive half sister from Florida — hyper productivity. 
  8. Said the Project Manager to the Pregnant Woman. 
  9. Unless being professional means never making mistakes in which case… 
  10. Unless of course you’re interested in gathering information cheaply and effectively, in which case they’re awesome. See my talk “Adventures in Advanced Product Ownership” for more details, or take an Information Theory course at a nearby University. There are probably other options, but those are the best two I can think of at short notice. 
  11. Now some readers might be under the impression that Dev Ops has something to do with Developers getting involved in deployments and operations! But according to some very Senior and very sure that they are correct Managers I have met, a “Dev Op” is a new kind of person in a new kind of team and the developers better damn well keep their nose out of it. 
  12. There are at least two factors at work here in my personal experience. I spent a few years consulting to one organisation which cancelled projects with an alarming regularity. Usually after they had been running for several years. Additionally if you work in a place where almost all projects are large, then depending on the industry it’s not unlikely that the lifespan of the project far exceeds the tenure of the majority of the people working on it. 
  13. Even if the only thing it does for us is give us back extra hours in our days, which might be the most valuable gift of all. 

A time box is both a limit and a commitment

Time Boxing is an interesting technique that’s found at all sorts of sizes in all sorts of places. My favourite time boxes probably belong to the Pomodoro Technique.

The Pomodoro Technique is not only a great practice in itself, it’s also a great way to understand what a time box is, and explain it to others.

If you’re not familiar with the Pomodoro Technique, the basics of it are insanely simple:1

  1. Pick a thing to do
  2. Do that thing and only that thing for the next 25 minutes
  3. Stop and take a five minute break
  4. Decide whether to continue to work on your original thing for another 25 minutes, or switch to a new thing and do THAT for 25 minutes2
  5. Repeat

You get the idea.

This also beautifully illustrates the dual nature of the time box.

On the one hand a time box is a commitment to:

  1. Focus exclusively on just one thing
  2. To maintain that focus for a full 25 minutes3

It’s the perfect antidote to today’s attention scattered world. You’re not committing to finishing something, you’re just committing to working on it and only it for the next 25 minutes. And if you’re not willing to commit to spending 25 minutes, then perhaps it’s not that important.

On the other hand a time box is also a limit

So whilst you have to work on your thing for at least 25 minutes, you can also only work on your thing for a maximum of 25 minutes.4

In my experience, this actually makes picking what to work on a lot easier. Knowing that the maximum investment is going to be limited to 25 minutes, you can worry less about ensuring that you’re working on the absolutely positively highest value thing. The time box caps the amount of time you can “waste”5 before you realise you should be doing something else.6

What’s brilliant about this system, is that it exploits the fact that humans best understand the following three things not by thinking about them, but by doing them:

  1. How important something is
  2. What’s important about it
  3. How long it’s really likely to take

So through this process, we not only Get Stuff Done, but also learn to make better, more informed decisions (in shorter amounts of time).

The commitment aspect helps us to get more done.7

The limiting aspect helps us to get the right things done, the right way at the right time. Thus maximising the return we get on our overall investment in time.


  1. Although like so many things of this nature, it’s very easy to make it more comprehensive if that works for you. 
  2. Now that I’ve written it out, it looks a lot like Lean Coffee, which in 2019 more people may be familiar with. The Pomodoro Technique, pre-dates Lean Coffee by a good ten years (at least) — and whilst it was originally designed as a personally productivity tool I have memories of running meetings using it. I remember running a planning day in 2007 using the Pomodoro technique which was both productive and exhausting. 
  3. Actually, you can focus for any length of time, 25 minutes is just the most popular, possibly because you can fit both the work and the break into a half hour, which makes them easy to schedule and plan with. It’s also just a good length of time for most personal tasks. 
  4. This can for some people actually be the harder thing to do. 
  5. I personally don’t think time is wasted if you discover what your real priorities are. I defy most people to do this well through 25 minutes of inaction. 
  6. Whilst at the same time allowing you to progress something that was important enough for you to start
  7. It’s a WIP limiting technique if you think about it, except it’s not using stickies, it’s using time. 

Why Best Practice lives in a Shu Box

Shu-Ha-Ri is a popular metaphor in Agile Circles. 

It’s borrowed from Martial Arts (where it works well) and one way to explain it might be:

  1. Shu – Follow the rules
  2. Ha – Break the rules (adapting them to your context)
  3. Ri – Become the rules

It is most often used as a justification for why beginners should not question their ScrumMaster™ (or process) and simply follow the rules laid down for them by the methodology. 

Much like jazz, any given student1 is only permitted to rise to the next level of the process once they’ve conquered the preceding steps.  i.e. you don’t earn the right to break the rules until you’ve proved that you can follow the rules.2

What’s this got to do with Best Practice?

The term “Best Practice” tends to mean “Industry Best Practice” – people want to adopt Best Practice because it’s considered as something that has been proven to work elsewhere.  i.e. it’s a way to short-cut learning.3

If we say for the moment that we’re talking about authentic Best Practice here, then any deviation from the rules therefore means some kind of sub-optimal performance on the part of the implementers (and should obviously be avoided).

It’s a Good Idea, it’s how Humananity has managed to continue to make technological and societal progress that extends well beyond the confines of the average human lifespan.

The Democratisation of Excellence

There is only one problem. For something to be widely regarded as Best Practice, then it has to be somewhat democratised.  By which I mean it needs to be able to be widely implemented.

If something is widely implementable however, it means that it does not, by definition, take advantage of any organisational or personal strengths.

Thus if we return to the martial arts roots of Shu-Ha-Ri – your Kyū level training will teach you how to punch effectively and without breaking your wrists, but it won’t help you take full advantage of the fact that you’ve got shoulders that would put Schwarzenegger to shame.

By Definition, Ha means Abandoning Best Practice

“Ha” means to break the rules.4  This “right” accrues to the martial arts student upon the event that they are able to prove that they can follow the rules without deviation.

(Thus, we can safely assume that the rules are not being broken due to an insufficiency in ability)5

Once so gifted, students will then begin to break (some of) the rules in order to better adapt the techniques to their individual contexts – always in an endevour to produce superior results.6

For these students, Best Practice ceased to be enabling and had become limiting.

Best Practice is a step along the journey, it’s not the destination

There is actually a lot to discuss around Shu-Ha-Ri7, and I know that some people (Adam Yuret comes to mind)  dislike the concept simply because it creates an apparent hierachy, encouraging people to self identify as “Ha” or even “Ri” simply because that’s a higher grade.

But the simple point I want to make here – is the surprising position that Best Practice finds itself in.

It’s nothing more than the lid of the Shu-Box.


  1. Side thought – wouldn’t it be nice if we all regarded ourselves as students of Agile rather than practitioners, masters or gurus? I doubt you could find many Black Belts in Karate who actually regarded themselves as no longer being a student of the art. 
  2. Skipping this step in music is all that separates jazz from punk. 
  3. Afterall, who wants to be learning when they could be doing 
  4. Yes, the ones you just spent at least 5 years learning. 
  5. There is also the presumption that at least some level of understanding has occured. At the very least, once the student is able to revert to “best practice” at any time, they can now judge for themselves as to whether their adaptations are providing superior outcomes or not.  Also from my personal experience, truly studying a martial art instils a strong degree of humility. (Contrary to what much of Hollywood might portray) 
  6. As opposed simply for the purposes of saying “Hey look I invented my own Martial Art!  It has a different name, an extra few belts and I’m the GrandMaster!” 
  7. I think I have enough Blog Drafts on the topic to fill a book. 

The parable of the water

I was out for a walk the other day with some friends and their family. About halfway through the walk one of the boys declared that he was thirsty. No problem says Dad, here is $2, there are some shops, go buy yourself a bottle of water. The boy runs off. I think no more of it.

A few minutes later, the boy comes running back to his father, not with a bottle of water, but rather with the same $2 coin. He gives the coin back to his father and simply said “Mum says no”.

Curious I think. Why would a mother deny their child a drink of water?

Later, I discover why.

“I denied him the water, so that he’d learn to plan better next time, so that he’d learn to learn from his mistakes (however small they may be), and to eventually come to the understanding that almost all his decisions have consequences of some kind.”

At the time I thought “Wow, that’s a really great mother”

And this morning I thought “Wow, that’s a woman who really understands Scrum”[1]

These rules are here to help

I think something that has perhaps been a bit forgotten is that the Scrum rules, much like our mothers, are here to help. We may not always want to do what they’re suggesting, but oftentimes it’s exactly when we want to the least that we need to the most.

The most obvious parallel to my water bottle story is one of the most hated[2] rules in Scrum – being:

    The Product Owner may not change their mind during the Sprint

This is often quoted as the reason that Scrum is “not Agile”[3] but there are several good reasons for it.

The one I want to highlight today is simply “So that our Product Owners can learn to plan better

Imagine speaking to the ScrumMaster after they had denied the Product Owner a mid Sprint change if they explained:

“I denied him the change, so that he’d learn to plan better next time, so that he’d learn to learns from his mistakes, however small, and come to an understanding that all his backlog prioritisation decisions have real world consequences of some kind”[4]

Doesn’t sound so bad now, does it?


  1. Not the letter, but the principles. It’s quite possible that she’s never heard of or has any interest at all in Scrum. And I’m certainly not suggesting that she’s using Scrum to raise her children.  ↩

  2. And by association, one of the least followed.  ↩

  3. Often by people who define Agile as flailing around building random things based on whim.  ↩

  4. I can imagine that I’ve actually outraged some readers at this point by suggeting to them that their Product Owners don’t consider the consequences of their actions before acting. Well, I have two responses to that:

    1. I’m pretty sure not all of them do, so count yourself lucky if this is not the case for you

    2. Even some of the best PO’s may be new to the concept that their Backlog prioritisation decisions have immediate effects on both the finances and morale of the organisation. This seemingly annoying minor Scrum rule is designed to help them remember that.  ↩

Have you Mastered the Basics?

So I’ve noticed a trend in recent years. Whereby a lot of people are hungry for “advanced” Agile and Lean techniques (whether it be at a conference, in the classroom or in a coaching engagement)

So far so good, both Agile and Lean have been around for decades – and so it should not be a surprise that people are passed the basics and ready for some more advanced stuff.

But a conundrum often arises in these situations whereby the organisations and people most eager to learn the more advanced techniques are the very same ones that are yet come to grips with (let alone having mastered) the basics of Agile or Lean.1 (This is obviously a generalisation and not true in every case, but it’s sufficiently widespread for me to consider it a trend)

As I tweeted back in January:

And talking to other established consultants, trainers and practitioners it seems that I’m not alone in this observation.

So what’s going on?

There seem to be two fundamentally different views on what “the basics” are actually comprised of.2

And these two views may be an attribute that is unique to (or at the very least exacerbated by) the very nature of Lean, Agile & Systems Thinking.

(So again making a gross generalisation here)

Many people tend to class the basics as things that you do.3

Whereas “we in community” tend to class the basics as concepts you understand.

And thus many feel that they have mastered the basics when they can go through the motions – they write things on post-it’s or enter them into a tool – perhaps they set WIP limits, and they almost certainly know which three magic questions lead to hyperproductivity

But because they’ve not mastered the basics by the community’s definition – they often fail to yield any benefits from these changes (sometimes they do however, but that’s a topic for another time) – and thus they feel the hunger for something more advanced. Something more to do.

So this explains the phenomena – at least to my satisfaction – but it does not necessarily provide an answer 😉

Except perhaps that we should more carefully consider how we use our language and how we label things; because Basic Practices != Fundamental Concepts.4


  1. This does however put me in mind of an episode of House (“House vs God”) – where Wilson convinces a child who believes that he is a saint and thus does not need surgery to have surgery through the argument that an actual saint would have the humility to believe that they were in fact just sick and not in fact special. 
  2. This being an entirely different question to “what the basics actually are” – I’m arguing ontology here. 
  3. As soon as you do that, it’s also easy to apply models like Dreyfus 
  4. Ease of measurement and evaluation plays a big part here too. It’s much quicker and easier to determine whether or not somebody is having a 15 minute Daily Scrum than it is to determine whether or not everybody has internalised the value of (say) slack.