Nuke your backlog – the podcast & a webinar

In case you missed it, Tom Cagley has released the “SPaMCast” podcast we recorded a couple of weeks ago: Nuke your backlog!

Since recording that I saw Rob England describe similar thinking as “declaring backlog bankruptcy”. Certainly bankruptcy is a more business friendly than “nuke”. And in the weeks since I releases “Honey, I Shrink the backlog” I’ve had several people tell me about their experiences ditching their backlogs.

So, while the disposing of the backlog may be a somewhat radical idea it is not completely new.

If you like the podcast you might want to join a webinar with Adrian Reed next month where we will be discussing the problem with backlogs: Moving Away from Backlog Driven Development: A New Chapter in Agility? – free, registration required.

Nuke your backlog – the podcast & a webinar Read More »

Objective Driven Agile, BLDD & Reactive styles of development

Looking across the state of teams today I can clearly see three different styles of agile: Backlog Driven Development, Reactive and Objective Driven Agile. All have their place, all have their uses but the first two of these are a dead end. I’ve been speaking about the third, which I’m calling Objective Driven Agile, for years but in the last few months, since writing Succeeding with OKRs in Agile and speaking to many people about how OKRs and agile fit together, it has become clear to me that ODA allow us the industry, and teams, to address a number of problems that have arisen with agile in recent years.

1) Backlog Driven Development – BLDD. Teams are typically working in a Scrum fashion with a backlog and short sprints. Such teams are sometimes called “feature factories” because they are aiming to “do the backlog” – and the backlog is inevitably a lis of features.

While the Scrum these teams practice is a lot more agile than what came before they haven’t really moved very far from the big requirements documents of old. Backlogs are frequently bottomless pits, the team can never reach done. The loss of change review board might well be making things worse because Product Owners often lack the authority to say “No” or remove items from the backlog.

Still, not only are these teams agile but in many places this is success. The team are churning out stories, customers can see progress and are persuaded to part with cash. If the backlog can be tamed they might even declare done one day. But then, if the team is being operated by a consultancy or other outsourcer for a client the last thing they want to happen is for work to be done.

2) Reactive. Reactive teams gravitate towards Kanban but some are compelled to work in a Scrum fashion which doesn’t match their real work. Such teams may see backlogs are an anathema because they do “what is needed, right here, right now.” Team members here will say “true agility is listening to what customers want and getting it done as quickly as possible.” And in a way they are right.

Again, these teams are a success story, particularly if they are supporting a live system, running DevOps or if customers previously had to wait months for results.

The problem here is that these teams don’t have much capacity for doing the backlog or anything else and yet they are frequently still expect to “do the backlog”. If such a team have been tasked with immediate customer support then that isn’t a problem but frequently these teams face competing demands.

3) Objective Driven Agile, ODA: this is the approach I’m focused on at the moment. With Objective Driven Agile teams have a mission and a higher purpose, something more than “do the backlog” or “keep the system working.” Such teams might be considered “Empowered” and might practice “Dual track agile.” The key thing is, they are not beholden to a prepared list of things to do. The team are responsible for deciding what customers need, what will add value and what will meet team and organisational objectives, and then, delivering that thing.

These teams have “Product Owners” who are more than mere Backlog Administrators – I’ve started calling them “Product Specialists.” These people are tasked with understanding what will add value for customers, users and other stakeholders. Importantly they have the power to decide what gets done and to say “No”. With that power comes responsibility: responsibility to the team, to stakeholders and to other leaders in the organization. That means Product Specialists can explain – in a business case or in a star-chamber – how work on the product adds benefit and how the desired outcome – the objective – is moves things forward.

All three of these styles have their advantages and disadvantages but the real problems occur when the styles are not clearly stated.

Consider the team trying to deliver the backlog BLDD style but who have to “keep the lights on” and support a live system. It is mathematically impossible to make accurate forecasts about delivery when events can derail you. It is also nye on impossible to deny customer requests when they are waiving a large sum of money or escalating their ask through your organization. But again, this can blow up any plan or roadmap.

Nor is is possible to pursue objectives when teams are committed to supporting live or delivering a backlog. At best the objectives duplicate the role of the backlog and at worst increase work-in-progress and add stress to individuals on the team.

So my advice: decide which type of team you are and focus.

In the last few months I’ve been speaking a lot both about objectives and “just in time backlogs”. I’m fired up and want to pursue this idea, if you are interested please let me know and I’ll write more.


Subscribe to hear more from Allan Kelly and download Continuous Digital for free

Objective Driven Agile, BLDD & Reactive styles of development Read More »

Objective Driven Agile – 7 step lightweight method

Lets get back to lightweight methods, let me propose a 7 step process with the working name Objective Driven Agile – although I also want to call it Really Simple Agile or maybe Xanpan 2022 – and I’d rather forget the A-word altogether and get back to lightweight.

1) Start where you are, with the people on the team, with the code you have, with any existing documents, there is no pre-work, you start here with what you have. Any pre-work you think you should do, any blocks or impediments you are facing, any reason not to start now becomes a work item to be done.

2) Default to a 3 month “super-cycle” and 2 week iteration cycle (OK, we’ll call them sprints), you may change this later but put the dates in your calendar now and set them to reoccur.

3) Set a maximum of 4 objective(s) for this period.

I will assume you are using OKRs for this and limit them to a maximum of 4 key results for each objective. Key results are not small pieces of objective but bounding criteria which describe the objective, acceptance criteria.

If you team must “keep the lights on”, operate as a DevOps team, support a live system or other “business as usual” then this is objective zero and must be acknowledged as work to be done.

Objectives are outcomes, they make the world a better place. Objectives should support business purpose and strategy. The team should be able to explain how the objectives meet these criteria, better still it should be obvious.

One of the objectives should be nominated by the team themselves with the aim of making future work better, easier and more productive even if the outside world can’t see a difference.

4) Run sprints (iterations) inside your super-cycle: the first sprint starts as soon as the objectives are confirmed.

If any preparation work (e.g. interviewing customers) is needed this is part of the work to do. In the sprint planning meeting review your objectives, then decide which will be the focus of the sprint and ask “What do we need to do to advance our mission?” and write stories for this work.

For each story ask: “can this be completed within one week?” If it cannot then find a way to rewrite it as several stories each of which can be completed within one week.

When you have written the stories ask: “is this enough work for the sprint?” If the team thing they have capacity to do more work, or might do all of this work, then write some more stories – about the same objective or another. If the team feel this is too much work for this sprint prioritise the work then hold some back for the next sprint.

5) During the sprint aim to release each story as it is done, continuous delivery style. Review progress against OKRs regularly (but not every day). If the team can’t do release individual stories at the start then it is something to work towards, something for that team nominated objective.

Work items which arise under OKR #0 should be recorded as “yellow stories”, the team may refuse such work but once accepted it has priority over all other objectives unless otherwise decided.

6) At the end of the sprint release any finished work, demo to stakeholders, review, retrospect and replan. Count the stories – including yellow work – completed each sprint and maintain a graph during the super-cycle. The graph should show planned and yellow work.

7) At the end of the super cycle close out the sprint, review progress against OKRs, hold a retrospective for the whole period. Destroy any stories which still remain undone.

Return to step 3.

Two assumptions: you are setting objectives using OKRs, you are running Scrum like sprints. Both assumptions can be relaxed (i.e. you don’t need to use OKRs and could run Kanban style) but I would need more space to explain how that might work and I’ve deliberately kept this short.

I expect regular readers won’t be surprised by this, my recent work has been going in this direction – I’ve already explained the logic in here in Honey, I Shrunk the Backlog, Backlogs, #NoBacklog(s) and comfort blankets and last year’s Xanpan 2021 (Xanpan 2021 slides or Xanpan 2021 on YouTube).

Let me know if you would like me to expand on these ideas.


Subscribe to updates from Allan and download Continuous Digital for free

Objective Driven Agile – 7 step lightweight method Read More »

Lessons from Alice – free & online

In November I’m delivering the keynote at Oredev in Malmo: “Its always time for tea” – the conference has an Alice in Wonderland theme.

Before then, I’m doing a practice run at Agile Bath and Bristol entitled “Lessons from Alice” on 11 October. This is online so if you can’t make it to Malmo you can get to see an early version – and if you are going to Malmo you can get a sneak preview.

As the name(s) suggest I’m aiming to draw lessons for technologist from Alice – after all, I was told long ago that Alice is Wonderland is packed with mathematical observations.

Its free so sign-up now.

Lessons from Alice – free & online Read More »

Level 1 goals, purpose and meaning

Anyone who has been following my posts and reading my books will notice I regularly return to the topic of goals, and specifically “bigger goals”, or as I say in Continuous Digital higher purpose. I’m not alone in this. The idea occurs again and again in management literature. Post-covid the idea is even more prominent. There are two reasons why I keep returning to higher purpose.

First, there is good reason to believe that people are motivated and more productive when the work they do has meaning and purpose. When I say “good reason” what I actually mean is: a) it feels intuitively right and b) there is research that backs this up (See Alex Edmans excellent book Grow the pie. Perhaps more importantly people feel better – happier, more satisfied – when they have meaningful work.

I don’t deny that making money is what drives some people, but for most of us, while it is necessary it is not our driving force. When you get up in the morning do you think “Gee another day to make some money” ? Does paying the mortgage or rent drive you onward? The thought of anyone needing to do a job they dislike simply because they need to pay the rent makes me depressed.

Second, I have long advocated team autonomy and driving authority down to the lowest level – what most of the agile community summarise as self-organizing teams. In tandem I advocate a move away form “shopping list” projects where teams are expected to “do everything on the list” towards outcome/ goal, based working where success is not “doing everything which was asked for” but rather “achieving an outcome and delivering benefit.” In this model they teams need goals.

And, as I point out in Succeeding with OKRs, goals are embedded within goals, goals are Matryoshki.

See how all this fits together?

But there is a problem. Or perhaps two problems.

Language complicates things. I’m writing here about meaning and purpose, which, for the moment I’ll regard as synonymous. Broadly speaking this fits in with “Start with why” hypothesis the likes of Simon Sinek advocate – and surfaces again and again. So there you have three terms which may be the same, may be different: meaning, purpose, and why.

Some organizations call these missions and have mission statements. Jim Collins and Jerry Porras wrote about BHAGs – Big Hairy Audacious Goals – in Built to Last. Salim Ismail of Singularity University suggest companies should have a Massively Transformative Purpose, MTP (Exponential Organizations). The same idea reappears as True North (or is it North Star?) elsewhere and I’m sure there other names I’m not aware of.

Then we have Objectives (with and without key results) and Aims, possibly even Targets. Where do Jobs to be Done and Epics fit in? I’d mention visions and product visions except I’m reminded of the words of German Chancellor Helmut Schmidt: “People who have visions should go see their doctor.”

Let me suggest whatever term a speaker uses they are driving at the same thing: “Something meaningful, large and overarching, something beyond the details”. Which brings us to the second problem: magnitude, some of these Matryoshka dolls are in the outer layer that you open first, some of them are inside and significantly smaller. Within these BHAGs, MTPs and missions there are smaller goals, and those lesser goals – which might be quite large themselves – align to the same True North.

Lately I’ve been using the model here to explain OKRs: OKRs are nested within Missions, a team may have several missions although ideally it would have just one. Missions are long lasting and may apply to several teams or an entire division. Missions in turn are nested inside organizational Purpose, purpose is pretty fixed and is lifelong, it is shared across the entire entity.

I find this model useful and it serves to illustrate how context is important. Teams can only make decisions on the work if they know the objectives (and, maybe, key results) they are pursing, and these can only be set if the team have the context that comes from a mission and purpose. But this model fails the language test, and by referencing OKRs means anyone not using OKRs will discount the model.

To unify the ideas we need to accept them all as equal.

Let me suggest a unifying solution: Level 1 Goals – I want to number those Matryoshki, with the outer most one, biggest one, being Level 1. As you open the dolls increment the number. (I’m using the word goal in a very generic sense, you can substitute objective or another word if you prefer.)

Level 1 Goals: “Purpose”, a “True North”, possibly an “MTP”, the organizational purpose, probably singular, largely invariant, doesn’t change often, in fact, changes it can be problematic.

Level 2 Goals: “Mission”, maybe a product goal or “product vision”, slow to change, expect it to last years. Organizations may have multiple missions each has the potential to advance on the purpose. Teams too can have missions, actually, I think all teams should have a mission – something I’ll write more about, its best if a team has one mission at a time but it might have multiple.

I’m not sure whether BHAGs qualify as Level 1 or Level 2 goals. If a company has only one BHAG and everything is aimed towards that goal than it is a level 1 goal, if the company has more than one BHAG then they are level 2. Which highlights a key point about Level 1 Goals: there can be only one level 1 goal, no organization can have more than one level 1 goal.

Now there is a big gap here between Level 1 and 2 goals which seldom change and last a long time to…

Level 3 Goals: these could be OKRs or quarter plans, I’ve also heard them called or “season plans”. These reset on a regular schedule – typically every three or four months.

There may well be more nested levels. Sprint Goals as used by some Scrum teams might be level 4. An individual Epic story might be 5. The important thing is, at each level the goals should be shared and understood by all, everyone should know the goal(s) and, hopefully, be working towards them. As Steve Jobs is reported to have said: “It’s okay to spend a lot of time arguing about which route to take to San Francisco when everyone wants to end up there, but a lot of time gets wasted in such arguments if one person wants to go to San Francisco and another secretly wants to go to San Diego.”

The beauty of numbering the levels is that we can keep on going. Although I would suggest that at some point things will become so fine grained as to be trivial and unworthy of the goal moniker (Level 99 Goal anyone?)

Notice I haven’t said anything about Roadmaps or Plans, neither of which has a place in this taxonomy, something else I might right more about in future.

Nor have I used the word strategy: strategy is sometimes used to denote a goal however when used like that I suggest strategic intent (a term coined by Gary Hamel and C.K. Prahalad) is a better term to use. Strategic intent is the thing you aim for, it is a level 1 goal. Strategy (alone) describes how you will go about achieving your goals.

Finally, to step back to meaning and purpose. These are different, purpose is about “why”, purpose is the reason for doing something. Meaning is an understanding of explanation and, perhaps, significance. Purpose tells why something is being done, meaning explains why that why is important – although at some point the distinctions breaks down and the why might become the goal. But I think there is another difference.

A recent article (“Why we don’t talk about meaning at work“) points out: purpose is shared but meaning is personal. While some people obtain their own meaning from the stated purpose others may find personal meaning in what pursuing that meaning provides for them. While leadership can articulate a shared purpose – a shared goal – they cannot articulate a shared meaning because each individual creates their own meaning.


Subscribe to my blog newsletter and get Continuous Digital for free

Level 1 goals, purpose and meaning Read More »

Online: Honey, I shrunk the backlog

Last week I delivered a new presentation “Honey I shrunk the backlog” to Berlin Product People. The presentation is now online and can be downloaded from my presentations page.

The presentation builds on the ideas floated in my resent “Backlogs, #NoBacklog(s) and comfort blankets” post and which are finding their way into a lot of my writing.


Subscribe to my blog newsletter and get Continuous Digital for free

Online: Honey, I shrunk the backlog Read More »

Backlog questions and answers

My previous post on backlogs (Backlogs, #NoBacklog(s) and comfort blankets) generated a lot of attention, including a comment from Derek Jones – his is one of the blogs I read most often. I thought I’d post my reply as a fill post so here goes:

DJ: “Why is a backlog bad? Isn’t it better to have some idea of what work needs to be done, and at least it shows that work is waiting to be done.”

As I understand it Mary’s comment that backlogs are a problem is based on inventory thinking in Lean. I think she was speaking in generic terms and saying “Lean thinkers see backlogs as a problem so maybe having a backlog is not a good thing.”

In a software process backlog work requests are akin to supplies delivered and held in stock waiting for production. Although they don’t take up physical space (and therefore cost) software requests do increase the cognitive load because they take mental space – if only to worry about them.

Part of the logic of Lean’s Just-in-Time approach is to “lower the water level” and make problems more visible. The same is true with a software request backlog: all those backlog items hide problems, sometimes the items may contradict and sometimes, like I suggest in my post, they distract from the overall goal.

As for knowing the work that is coming I’m not sure that is a good thing: again this will increase cognitive load, and when the backlog is run away the content of the backlog is not a reliable indicator of what might happen in future. I’d also add that I’m not convinced software engineers do a better job by deliberately designing for the future, in may experience an awful lot of code which is built “for future change” end up being bloated by unused options for a future that never happened and which hinder the future that does happen.

Future plans can also distract from what is valuable and needed now. The more developed a plan for the future it is the harder it is to walk away from the plan when needs change. That is not an argument for no planning or no plans, it is simply to say that one has to balance both sides.

DJ: “Now, if the backlog just grows and grows, and random items are selected for implementation. That’s not good, but the problem is with how the backlog is being managed.”

Let me turn this around: I am not saying backlogs that are under control are a problem. If a team has a “tame backlog” which is not too large and only growing at a pace noticeably lower than “velocity” then everything is good. But, such backlogs seem to be few-and-far-between.

My conjecture is: many organizations have “run away” backlogs and in such environments a better solution would be to move to a just-in-time backlog generator and sideline the backlog. One could step further and say: even when the backlog is tame it can be better to use a just-in-time backlog generator rather than a (semi-static) backlog.

DJ: “How do we know whether items in the backlog are being consistently prioritised or selected at random?”

We don’t. In my experience large backlogs are seldom prioritised with anything more granular than Moscow rules (Must have, Should have, Could have, Would like to have – rather than the rules of spy tradecraft) – in which case 60% is rated high or Must. Within those priority #1s there may be second priority set at a more granular level. When this happens the majority of the “musts” will be rated low, in effect they are “nice to haves”. Of the few genuine high-priorities the actual priority is not stable. “decibel” management means that they are regularly leap-frogging one another to be Number 1.

DJ: “The waiting time is the key. An exponential waiting time suggests randomness, or FIFO, a power law with exponent -1 suggests item selection based on consistent priorities. For details, see https://shape-of-code.com/2022/08/28/task-backlog-waiting-times-are-power-laws/

Agreed, I would suggest the behaviours with create that distribution also undermine the reactivity (i.e. agility) of the organization. If a team really was reactive then we would expect uniform, short, lead time. Conversely, if a team really was adhering to a rational plan, roadmap, requirements document, then the lead time would be longer but would also be uniform because at some point X the stories had been captured, the work had been prioritised and was being delivered in regular fashion.

Which begs the question: is a power law distribution of work-to-do a natural phenomenon which will always reassert itself or an indicator of dysfunction?

A team following my Story Generator (aka Just-in-time Backlog) model would see average delivery times of less than half the super sprint duration because any undelivered items would be deleted at the end of the super sprint.


Subscribe to my blog newsletter and get Continuous Digital for free

Backlog questions and answers Read More »

Kazuo Inamori, inventor of Amoeba Management, has passed away

It was with sadness that I read this morning of the death of Kazuo Inamori . His is not a name that is widely known in communities I move in (namely the western agile community) but he deserves to be better know, his name deserves to be up there with Shigeo Shingo and other founders of the Toyota Production system. In Kyocera, Inamori founded a company as worth studying as Toyota.

I have to confess that although I read his Amoeba Management eight years ago, and although his ideas have a great influence on my own work – as anyone who has read Continuous Digital in particular will know, I had not made time to learn about Inamori himself.

Amoeba Management is such a good fit with agile I am constantly surprised it is not better know. As you might guess from the name companies are split into multiple Amoeba, self-contained business units with their own profit and loss account. Such Amoeba could be as small as a team and fit right in with the idea of devolved authority and engagement.

This morning’s obituary in the FT (paywall) goes some way to correcting that: he was a giant of management in Japan. In addition to Kyocera he founded KDDI and was instrumental in resurrecting Japan Airlines after bankruptcy.

Nor did I know that as well as Amoeba Management he wrote many other books although only a few of them have been translated to english. I intend to correct that omission immediately and read more of his work.

Kazuo Inamori, inventor of Amoeba Management, has passed away Read More »

Backlogs, #NoBacklog(s) and comfort blankets

At the first Agile on the Beach in 2011, I had dinner with Mary and Tom Poppendieck. As we talked about the conference, agile, lean and everything else I distinctly remember Mary saying “From a lean point of view backlogs are a problem. In a lean environment when you have a backlog you want to eliminate it.” (Postscript: Mary has spoken about her views publicly “Why You Should Just Burn Your Backlog“.)

Just then, I was then working with a client with a runaway backlog. I had calculated the backlog growth and found it was regularly greater than the work done “velocity.” It was like a mortgage were the monthly payments didn’t even cover the interest. If I remember correctly, backlog growth, interest, averaged 8.5% per month. I suggested to the client and their supplier that they throw the backlog away. They, not for the first time, thought I was mad. Since then I’ve voiced the same opinion with other clients and got the same response. But the opinion is gaining ground and I’ve even encountered a couple of places were they have moved away from the backlog.

To be fair, backlogs are useful – they can have a useful role to play but that role is akin to a child’s comfort blanket. There comes a time to say goodbye to childish things.

(By the way, I’m really discussing what Scrum calls “the product backlog” rather than the ever changing “sprint backlog.” So I mean: the stuff we might work on in future and not: the stuff we are working on this week, and next.)

I’m not, yet, ready to join Vasco Duarte in declaring #NoBacklogs but my “nuke the backlog” comment in a podcast with Jenny Herald said pretty much the same thing. That comment has attracted a lot of attention and seeded good discussions. I like those discussions and thats why I resist about #NoBacklog. When we started using #NoProjects it was good for conversation, but then a few people drowned out the discussions with calls of “You are mad”, they never considered our arguments and closed down discussion for others.

So what is the backlog problem?

First, as the graph above shows: backlogs don’t “burn down” they tend to grow, and often grow faster than work is done. That becomes a problem because many people expect the backlog to reduce to zero over time and organizations consider success (“Mission accomplished”) to be a completed backlog. The cost of adding something to the backlog is near zero, but the cost, to the product owner and/or team, of refusing a backlog item can be high – all the time spent explaining why something won’t be included.

The desire to “do the backlog” leads to the second problem: an emphasis on doing backlog over delivering value. It becomes more important to do backlog items (output quantity) then deliver benefits (outcomes.)

That, combined with the ever increasing number of items, leads to problem three: a loss of strategy and sense of purpose. This is classic “can’t see the wood for the trees.” There are simply so many backlog items to do it is hard to see what should be done. (The whole “twice the work in half the time” idea that surrounds Scrum makes this worse still. Raising the outcome over output question will also get you called mad.)

Along the way a lot of stakeholder problems get created because people believe that an item in the backlog is in some way promised when it isn’t. Product Owners and Teams accept items into the backlog for an easy life even when they know it is unlikely to ever get done. This stores up future problems because stakeholders start complaining when they fail to get their items. That damages trust in the team and a vicious circle ensues.

It gets more and more difficult to prioritise anything: more items to consider, more stakeholders to placate, more promises to (pretend to) keep. This makes it increasingly difficult to follow the benefit and change course and act on product feedback.

One of the reasons I came to like OKRs, despite my initial scepticism, was that they provided a means to think about the backlog and eventually move away from it. Another reason why I am avoiding #NoBacklog is because I want to be able to offer an alternative rather than just rubbish the backlog. At the moment I think OKRs are that alternative but I’m a little bit reluctant to force OKR Kool-Aid on people.

I tell a story in Succeeding with OKRs in Agile about a little experiment I conducted with another agile coach. The question was “Are OKRs written based on the backlog you intend to do in the next quarter? Or, are OKRs set in respect of business strategy and product priorities and backlog items selected, or even created, to meet the OKR?”. The experiment showed us that OKRs should come first and the backlog was secondary.

Perhaps backlogs are, as I think Vasco thinks, a hang over from the project days. A similar point is hiding inside Project Myopia: in the project model success is doing all the backlog, but if you prioritise by business value, if you are responsive to customers, if you are practicing dual-track agile and product discovery then you may well find that not everything in the backlog is valuable or even wanted by customers.

Increasingly I view Product Backlogs as comfort blankets – what psychologists call transitional objects. Like children’s toys they help us move from one view of the world to another. When starting with an agile style of working backlogs provide comfort by mapping work to the traditional (project) model, but in time, as you become better at listening to customers and responding they are a hinderance.

I’ll be talking more about backlogs and comfort blankets in an online presentation next week to Berlin Product People, join me there to hear more. (5 September 2022).


Subscribe to my blog newsletter and get Continuous Digital for free

Backlogs, #NoBacklog(s) and comfort blankets Read More »

The OKR cycle goes wide-narrow-wide

Since writing Succeeding with OKRs in Agile I’ve had the chance to work with a few companies on OKRs and deliver a some training. Structure my thoughts to explain to ideas and concepts to other people is a great way of increasing your own understanding. So much so that I’m contemplating a second edition of Succeeding with OKRs – I’ll decide once I get Books to be Written out of the way.

The OKR cycle

Hence, I increasingly find myself talking about the OKR cycle – I mention the term in Succeeding but have come to realise how important it is. The “OKR cycle” is depicted in the diagram about, it is setting the team OKRs, executing against the OKRs, then as the end of the period is in sight thinking about what comes next. As the cycle ends there you need to close out the OKRs, review what you did, retrospect (what can we do better next time?) and go firm on the OKRs for the next quarter.

Typically the OKR cycle is 13 weeks long which immediate begs the question of how it fits with 2-week sprints? I was already moving towards saying “aim for 12 or 14 weeks” but after listening to a number of podcasts and talking to others I increasingly think 13 weeks is not the best period.

I can see a good case for running 4 month, 16 week, OKR cycles. This would decouple the OKR process from all those other quarterly processes businesses have: financial reporting, sales quarters, performance reviews and so on.

I can also see a case in going in the other direction: a 10 week cycle would also decouple OKRs from the same things. But there is a catch here: OKRs fill the mid-range planning horizon and help glue strategy to implementation. If we shrink the cycle too far it will become a long-sprint. Hence I tend towards lengthening the cycle but until I get a chance to try it I’m not coming down firmly one way or the other.

The other reason to shrink the cycle is to learn faster: particularly when starting OKRs. Just like running one week sprints when a team is new to agile. When a team is new to OKRs I now recommend running two back-to-back 6 or 8 week cycles. This would give the team twice the experience of setting OKRs, using OKRs to drive iteration planning, closing out OKRs at the end and repeating. After the second cycle I would drop back to 12 (or 16) weeks.

Which brings me to the second point on OKRs – something else I hint at in Succeeding but now go further. When working with OKRs you want to follow and Wide-Narrow-Wide model.

Wide-Narrow-WIde for setting, executing and evaluating

Stage 1 goes wide when setting OKRs: during this phase you want to go wide and think broadly. Consider what you might do, what is valuable, how what you are proposing will deliver (or protect) value. Ask difficult questions, throw stones at ideas and see if they hold up. Everyone should have a say because everyone needs to feel enrolled in the objectives.

Stage 2 goes narrow: your sole focus is on delivering the OKRs, you should aim to push everything else aside. OK, caveat #1 if your house catches fire unexpectedly PUT OUT THE FIRE even if you loose you OKRs – don’t be stupid but neither should you rush to extinguish every flame prematurely. And caveat #2: if fighting fires, aka dealing with live issues (think SecDevOps) is part of your responsibilities then make sure your OKRs reflect that is part of your work – maybe use OKR #0 as I discuss in the book.

Stage 2 is the longest stage, most of the typical 13 weeks, so my egg-timer model image isn’t completely accurate but you get the idea.

Finally, in stage 3 you go wide to evaluate what happened. This is where you ask not just “Did we meet or miss the OKRs?” but more importantly: “did we do good? did our work benefit people? add value? did we further our mission and the purpose of the organization?”

Ultimately I don’t care if you miss every OKR if you can answer “yes, we added value, we furthered our mission.” OKRs are, after all, a hypothesis of what will create benefit in the next few weeks.

And no sooner are you finished thinking broad in stage 3 then you are back to the wide thinking of stage 1 and you repeat.


Subscribe to my blog newsletter and download Continuous Digital for free

The OKR cycle goes wide-narrow-wide Read More »

Verified by MonsterInsights