Tuesday, March 12, 2013

Personal Kanban Week 3


Off the Rails…


It was all going so very well. By the start of the 3rd week I was beginning to get the hang of the process. I wasn’t a shining model of productivity, but I was certainly making improvements.  I was learning a lot about how I worked and what I needed to do to become more productive. I had started making notes about all the experiments I wanted to run in the coming weeks.  I was keeping my PK Journal up to date. The only issue was that I hadn’t tried it with real work yet because I was also still on staycation. (I travel a lot for work, so when it comes to vacation, I’m totally happy to just spend the time at home becoming fully present with what a bad decision it was for someone who is horribly allergic to cats to adopt three of them.) Being at home for the first part of this experiment had allowed me to establish the physical habits of personal kanban and my hope was that this would keep me rooted in the practice once I was on the road again.

So naturally, the obvious next step was to completely screw that all up.

I had planned to be away on a retreat for a few days during the 3rd week. While I was there I picked up a slight cold that immediately turned me into a walker for about 8 days. Both of these events meant that for a period of almost 2 weeks, I was completely unable to do work on anything on my board.



Failure Bow


So… time for a Failure Bow


(If you aren't familiar with the Failure Bow, I'd like to recommend watching the Matt Smith TED talk below.)


While it would be easy to rip myself up for losing step, I knew that was going to happen at some point. What I was more interested in was what it would take for me to recover when it did happen.

Since I’d been keeping detailed notes on what was and was not working I turned to those to try and see what issues were causing the biggest trouble.


“Hi, My name is Dave… and I’m a Things-aholic.” 

I was still using Things every day. I was recording tasks on my board and working them, but there were additional items in Things that I worked on and they never made it to the Kanban board. Most of them were personal items, but it did seem kinda of pointless to me to be working with two tools at once. It just divided my focus and make getting anything done that much more complicated.

I decided that I was going to start capturing everything I do on the board. I took everything listed in Things and created a post it for each item. I sorted and grouped the whole thing on my Kanban board. My plan was to try and go one week without using Things. During that time I would rely 100% on the Kanban board.

I made some modifications to the layout of my board as well. I added blocked boxes for some of the swimlanes and also made adjustments to my WIP limits.

I decided that I would start each day with (re)prioritization

I had learned that travel can have a very negative impact on working this way. I had a number of jobs coming up that would require travel. So, I decided to start researching electronic tools so I could test one out during my next trip.

One of the things I have found to be invaluable in this whole process is having the physical board to return to when things break down. There have been a number of events and situations that resulted in me needing to reset my approach.  I’ll be posting about them in the coming weeks. For anyone who is going to try personal kanban, my first advice would be to start out with a physical board and develop good habits with your practice. These will be an important touchstone for you as you work through the changes this approach will have on your work.

 
The final thing that came out of my retrospective for iterations 3 and 4, was a new question… what should I do about recurring tasks? Was it really going to be worth creating post-its for recurring each item so that there was a card for each one on each day of the week? That seemed ridiculous. I had no answer, but sometimes, just having the question is a good start.  

Tuesday, March 05, 2013

Girl Scout Kanban



I’ve been writing for a few weeks now about my Personal Kanban Experiment, but actually, it isn’t just MY experiment. My whole family began using Kanban last December and at the start of the new year my wife and I spent a day teaching the basics of Kanban to a small group of Girl Scouts.

One of the main things I do for a living is teaching Agile. I’ve also been teaching people how to manage technology projects using more traditional methods for about 15 years. While I will (hopefully) never say I am expert at it, I do believe I have a fairly good handle on the types of things that make it difficult for people to learn this stuff. I come to each class hopeful, but also ready for the struggles that sometimes come with helping people learn a different way of working. That being said, there has been absolutely nothing I have seen in 15 years of teaching that could have prepared me for that Saturday in January that my wife and I spent at the local Girl Scout HQ.

Among her many other accomplishments, my wife is a Girl Scout Leader and a teacher. She’s never taught Agile before, but she has taught Project Management and she’s been working on a Kanban experiment of her own.  When my wife first asked me about doing the class together I was very excited about it. For one, my she is my favorite person to work with but also, I saw this as a chance to start teaching Agile to a group of young women who were already training to be leaders in whatever they go on to do in life. More importantly, this was a chance to teach them Agile BEFORE they learned waterfall. I was/am giddy at the possibilities this presents for them when they enter the workforce.  My wife was already pretty familiar with all of the kids who attended our class. I was only familiar with one of them – my daughter.  And, as the day drew closer, the terror over teaching kids instead of adults took hold. I was worried that my stories wouldn’t resonate, I knew most of my jokes wouldn’t work and I was pretty sure that at some point I’d slip up and my language would include phrasing that was perhaps a bit to colorful, or just plain weird for the room.

Still, with the possible exception of properly loading the dishwasher, I completely trust my wife and she’s had a lot of experience at trying to keep me from being an idiot, so my plan was to try and do my best to adapt the things I normally teach so that they’d make sense for the Girl Scouts.  We started the day by explaining the basics of Kanban to them. We talked about what a Kanban was, where it came from, how we wanted to have a board with three columns in it. We talked about WIP limits and agreed on some basic numbers we would test out. Then we talked about populating and prioritizing the backlog. AND THAT IS WHERE IT GOT WEIRD!

When I teach CSM classes we spend a good bit of time talking about and around the Product Backlog before we actually build one. We discuss a variety of prioritization techniques and the various merits of different ways of sizing work.  Even though it is something we ease our way into, for many, it is still a struggle.  However, take a small  group of 12-15 year old Girl Scouts, and tell them this:

We need a list of all the stuff we want to get done in this session today. We need to list each thing on a separate post-it and put it up here in the column we’ve labeled Product Backlog. Then, we need to figure out which stuff is most important and organize the stuff in the backlog from most important to least important. We can change our minds about the order later, but we need to know what to start with now. 

After you utter these four sentences, you may have to be prepared to spend a few minutes brainstorming with them to generate the list. You may also have to establish working agreements (should we list bathroom break, or not?). But, within about 5-7 minutes, you’ve got a full backlog that has been prioritized based on the collective agreement of a group of kids who have all eagerly, and actively participated in the process.

I thought my head was going to explode.

And then, it got even weirder as the Agile-ish behavior took hold…

As they began pulling items from the Ready column into the Doing column, the girls self organized into small groups. (Apparently young Girl Scouts know how to do this instinctively… there may be a badge.)

Then, as they were working, one of the girls was hungry… well, ok.. she wasn’t hungry… she was ABSOLUTELY STARVING TO DEATH! She expressed her need It was acknowledged by the other teams. They examined the board and realized that the only way to pull Lunch into the doing column was to complete one of the tasks that was being worked on. That fact established, they swarmed on the task that was closest to done so that they could move it over and pull Lunch into doing in order to save the life of their team member. With respect to swarming, I’m accustomed to seeing adults have a rational adult discussion about whether or not to swarm, and if so, what to swarm on. I’m completely not familiar with the insane idea that humans could just look at a board of Kanbans, identify the item without discussion and swarm on it without having to talk/debate about it first.

The rest of the day was filled with similar types of experiences. Because we wanted to give them a way to measure their progress towards completing the items in their backlog, we taught them to use a burndown chart… which they updated vigilantly every 30 minutes. Each time a group finished an item on the board, they ALL walked up to move it over together because they were part of a team and wanted to celebrate in the accomplishment.

I was at a loss. Where was the frustration, the anger, and the arguments? The blind panic at the idea that items that need to be addressed were not going to be the responsibility of one person (who we could hurl under bus if/when necessary). My wife and I were discussing the freak-ish behavior we were seeing… wondering when, why and how it is that this open-ness gets removed from the equation, and more importantly, how we could stop that from ever happening.  It was a truly amazing day.

I often say that I learn more from the students than they learn from me. Never was this more true than the day my wife and I spent teaching Girl Scouts about Kanban. Not only did I get a lightbulb upside the head with the understanding that this open, collaborative way of working was something that wasn’t born into them, but I came away with the understanding that, left to their own devices, the Agile-ness is already there.  IMHO, what we have to do is find a way to help kids sharpen their Agile nature it and find a way to protect it from the waterfall.

My wife and I are now preparing for a longer project to help provide more agile training and coaching for some of these young ladies as they begin working towards their Gold Award. (The Gold Award is the highest achievement a Girl Scout can attain. It is the Girl Scout’s equivalent of the Boy Scout’s Eagle Scout.) For each of them this will involve managing complex projects that span several months and involve multiple teams on a variety of efforts.  I the Kanban training is any kind of indicator, this is going to be an amazing learning experience for all of us. 

Monday, February 25, 2013

Personal Kanban Week 2

Up Jumped the Devil


Robert Johnson
I been studyin' the rain and
I'm 'on drive my blues away

  Robert Johnson "Preachin Blues (Up Jumped the Devil)"

In the second week of this experiment I added a separate post it to the board with specific goals I had for the week. These are things that in some cases included other work elements on the board, but in some cases not. To me, this was bigger picture stuff I wanted to accomplish. Being as I was on vacation, these were 50% work related and 50% personal. I didn’t accomplish all the goals initially, but this was my first step towards that. (And hopefully someday soon I will finish learning to play that Robert Johnson song.)

One of the “benefits” of Agile is not that it makes things go faster, but that it makes things you might otherwise overlook much more obvious that you can’t avoid making a choice about them one way or another. For me, this whole process has involved learning a lot about how I (personally) get things done, what motivates me, and as I’ve already mentioned, some of the dysfunction I have built into my work routines.

I should also mention that, for better or worse, I don’t keep a very strict distinction between work life and personal life. I love what I do, so none of what I do is WORK in the sense that it’s stuff I don’t want to do, but there are things that provide me with greater personal satisfaction than others. And at the same time, there is also a kind of negative weight that gloms on to the work items are inherently pleasure-neutral, but become negative because they sit around too long. (This is something I’ll be coming back to in a few weeks when I start digging more into value.)
So, my top observations I have noted for week 2…

  1. Prioritize the Personal - On the days when I did the things that provided personal satisfaction first, I was much happier. This is something I learned in mid-20s living in NYC. If I got up early enough to practice my guitar and hit the gym before going into work, I was pretty much okay with wherever the day took me. I’d seen to my personal stuff and that was not sitting around competing with work, waiting to be done. Understanding that this is important and actually doing it are very different things. I have found that I have to actually force myself to do (some of ) the personal stuff first. My tendency is to just dive right into the work because I perceive that need as being more important… which is not always the case.
  2. Naps are good – In the grand scheme of things I’m definitely in the “I’ll sleep when I’m dead” camp. Generally I average about 4-5 hours a night. It is not a healthy way to live… but it is a choice I make happily each day. I don’t stay up because I have to, I stay up because there is just too much I want to do. There are, however, many negative side effects to living like this and if you make a choice to live functionally sleep deprived, you have to learn how to deal with it. For me, the mid afternoon has always been a dead zone… unless I find a way to sneak in a 20-minute nap in there somewhere. It’s like hitting CTRL-ALT-DELETE on your ability to focus.

    Also, on the sleep topic, I am finding that meditating for 20-30 minutes before going to sleep at night is having a massive impact on the quality of my sleep. The only hitch is I have to do this before I am too tired to meditate without drifting off to sleep.
  3. Down Days – In tracking how I am working, I’m becoming more aware of something I have suspected for quite awhile… I have some days of very high productivity, but they are often followed by days of very low productivity. I’ve not tried to measure this, but I’m noticing, on average, I have about 1 day during the work-week where I am far less productive than the others. Typically, this happens after one of those days where I work into the wee hours and am amazed at my productivity. Since I’m not tracking it, I can’t say for certain, but it does seem like an ebb and flow kind of thing. I’m okay with that for now.

So the most important things I learned in the second week have nothing much to do with Kanban. As far as my practice of using the board, I’m getting better at not obsessing about the cards, but I am maintaining discipline with moving them. I’ve abandoned my attempts to keep them all color coordinated because it doesn’t seem to matter right now – a card is a card.

One issue I do have is that I’m still depending on Things and I’m still working items I enter into Things that I don’t have on my board. This should not be necessary, but I see three main reasons for it:
  1. My Kanban board is not always with me, my iPhone (with Things) is.
  2. Over the past few years, Things has become a deeply ingrained part of how I work. I’m habitually and emotionally invested in it – as much as Evernote.
  3. I’m still afraid things will slip through the cracks. Things is part of how I mitigate that risk.

I’d like to break myself of the Things habit and just do Kanban, but I’m going to have to find a way to do it that is as simple as my use of Things.

I am reprioritizing my board every morning and every afternoon. This is probably overkill, but I am still becoming familiar with the work.

I have accomplished some major work items that were not on the board or in my goals. I would like to become better at making sure everything is on the board.

There is one other major change I have noticed since I began using the board. I added a post it last week to remind myself to spend time playing Dungeons and Dragons with my daughter each day. At first, that seemed horrible to me – what kind of crap father must I be if I have to make a task card to play with my kid. But you know what… since I’ve put that card up there. She and I have played every day for 1-2 hours. And it’s awesome. We spend time together, having creative fun, I’m not working and she’d not lost in some video game. So, while my original goal of taking Personal Kanban on was to get better at managing the things I have to do at work, what I’m finding is that it is helping me get better at managing the things I have to do that are not work. This is resulting in me enjoying my life more, making more time for the things I need to do keep sane and making time for my family. My expectation is that this will also have a much greater positive impact on my life as a knowledge worker than I would get from just having a better way to juggle too much at once.

Tuesday, February 19, 2013

Individual Capacity Calculator

(This is an update to my 10/28/12 post on How to Avoid Overcommitment During Sprint Planning. )

For awhile now I have been using an excel spreadsheet I put together to work out the calculations I detailed in the post on avoiding overcommitment. I have also been sharing it with the students in my CSM classes. I recently updated it so that the times allocated for the different Scrum meetings is in sync with the current version of the Scrum Guide and I thought it would be a good idea to post here just in case it can be of help to anyone.

In case you missed the earlier post, the intention of this calculator is to help individual team members on a Scrum Team gain a better (more true) understanding of the amount of time the can realistically commit/forecast to be able to contribute to the work the team will do during a Sprint. I have found this to be very helpful for teams who are struggling with understanding their capacity.

An example of how this could be used in s Sprint Planning is...

1. Once a Scrum Team has forecasted the amount of Story Points it can expect to get through during a given Sprint based on average historical velocity.

2. And defined tasks for all the stories.

3. And estimated the ideal engineering hours required to complete each individual task.

4. And totalled up the collective ideal engineering hours required to complete all the work they are forecasting to complete in the Sprint.

5. Each team member can use this calculator to determine how much time he/she can expect to be able to contribute in the Sprint.

6. Once each team member has come up with his/her number, you would total those up to get the total amount of ideal engineering hours the Team expects to be able to working during the Sprint.

7. If the value resulting from Step 4 is greater than the value from Step 6, then you may need to reconsider the amount of work your team is forecasting to complete in the Sprint, or modify the scope (and tasks) for one of the stories.

8. If the value resulting from Step 4 is significantly less than the value resulting from Step 6, you may need to consider adding some additional stories/work into what is being forecasted for the Sprint.

* Some teams I have worked with have taken the additional step of applying this technique by work type within a Sprint, i.e. Development, QA, UX, etc.

Here is the file
(Link updated July 2019)



.


Tuesday, February 12, 2013

Personal Kanban - Week 1

This Dysfunction Goes to Eleven

When this experiment started one of my goals for the first time box/iteration was just to see if I could actually give up my Things task list and follow the practice with a board. I had tried a number of other productivity frameworks and found that only pieces of them stuck. (Someday someone will write on a book on how to finish David Allen’s “Getting Things Done” book and I’ll actually get all the way through it.) And while I know that limiting work in progress is a cornerstone of this type of approach, and I did set WIP limits, I decided to be a little loose with the limits since I was just guessing at what they should be.

Because my larger plan is to test out different approaches to Personal Kanban, I wanted to start as simply as I could manage. I created a task board and began to fill it with post-its. The first lesson I learned was that I had far too much in my to do list to fit on my Kanban board. I decided to limit it to the things that seemed to be the most important at the time.

The Architect of my Own Demise

The most basic way to set up my board would have been to create three columns: On Deck, Doing and Done. I know this. However, when I sat down to work on it, I began struggling with how I would be able to visually understand the different types of things I had to do. My plan was to use this not just for work, but for my whole life. So, I made a decision to start with multiple swim-lanes. This is a choice I can’t say I was entirely comfortable with. It seems to violate (my current understanding of) one of the basic premises under which this system is designed to work.  But… (I bargain with myself) baby steps. I decided that this would be an okay thing to try while I am working on coming up with a better solution.

I started off by dividing my Backlog up into 5 swim-lanes, each feeding into it’s own On Deck and Doing columns (instead of having just one of each). I was able to limit myself to one column for Done though. The reason for this is that there were/are so many things I felt compelled to work on that I was afraid if I put them all in one box, without some kind of designation, I’d lose sight of something critical. (Yes, I realize this is a broken way to look at it.) There was also a part of me that was curious about how I would work through the prioritized items once they hit the On Deck boxes. The swim-lanes I set up were:

  • Work-ish: Obviously for things somewhat related to work
  • Reading (later changed to Reading and Research): self explanatory
  • SA/IT2: for work/volunteering I do for the Scrum Alliance and IT2
  • Personal Daily: These are things I do every day that I track
  • Personal: Personal projects and tasks I need to take care of

So here is my basic organizational system:




Even with the swim lanes I was still concerned about understanding the tasks on the board. Not so much from a priority standpoint, because I can handle that pretty easily with the On Deck backlogs. The desire for clarity is more about having a visual way to quickly understand that a given task is related to (work, personal, reading, etc.) This should have been easily handled by the swim-lanes, but there were sub groups I felt I needed to identify even within the lanes. So, I began with a variety of different sized and colored post-its, each one loosely designated to belong to some kind of additional detail on a task.

One of my challenges was (and continues to be) defining “value”. I believe the multi-colored, multi-sized post-its are part of trying to define that. There are tasks that obviously provide direct value to customers, like send Client X a demo license. There are items which provide indirect value to my ability to do my job: Read the new book by Diana Larsen book, “Liftoff: Launching Agile Teams and Projects”. There is work I do volunteering for organizations which provides value for others: Review submissions for Scrum Gathering. But there are other things I do which appear to be valuable only from the perspective of their impact on my body, brain or mood. How to capture this value in relationship to other items in the list continues to be a struggle and is one of the reasons for the multiple swim-lanes in my board. (How for example do I quantify and prioritize based on value if what I am comparing is the value of sending a client a demo license, compared to the mental health boost I get from meditating each day, or maybe just sitting back to read a comic book for fun.

It would be easy to argue that the non-work items do not provide value to a client and do not need to go on the board. But that seems to me to be a pretty thin definition of value. My goal was to try to put everything on the board. The problem was, it didn’t all fit. . One of the most important things I learned that week was that if I don’t put it on the board, it isn’t going to happen. So, I needed a kind of backlog nursery, where I could dump ideas and then periodically replenish the backlog on the board from that nursery.

http://blogs.laweekly.com/westcoastsound/tapeleven.jpg
I decided to hold a little personal retrospective at the end of each week to evaluate how things are going. The first week was really difficult for me, not because following the process was hard – that was actually pretty easy. The hard part was that Nigel Tufnel stopped by to crank the volume on my “obsessive tendencies” up to 11. Here are the important (and painful) things I learned about myself during week 1.

http://blogs.laweekly.com/westcoastsound/tapeleven.jpg
  • While some of the PK books will tell you to plan to do the unpleasant work first and then work your way towards the stuff you want to do, I found that if I don’t force myself to do the things I want to do, that I cram every possible minute full of the not-fun work and never get around to the enjoyable, recharge-oriented items on my list. (Remember, this is my vacation too.) I actually had to block out time to stop being productive and just sit around and read a book or play my guitar for fun.
  • I was so focused on getting the items across my board as efficiently and quickly as possible that I actually spent a few nights tossing and turning in a restless series of dreams about the board, the tasks and how to move them. (The last time I had dreams like this was during my brief, but disturbing addiction to playing Doom and Quake. Unfortunately, this time I didn’t get to wake up and grab the BFG to kill off some monsters.)
  • In my crowning moment of idiocy that week, I climbed off the treadmill halfway through a long workout because I realized I had not moved the card into the doing column. I was unable to continue the workout until I had the car in the right column. (Yes, I have issues.)
  • Throughout the week I found I was still using Things. As eager as I was to embrace the new system, I was still afraid to let go of the method I had developed in order to keep things from slipping through the cracks.


At the end of the first week, I know I have a long way to go. I’m nowhere near ready to deal with WIP, the waste I am creating or finding a better way of doing this. But, it’s a start. And, by the end of the week I was able to start talking myself down off the ledge of obsessing about moving the cards....

But, they say admitting you have a problem is the first step to recovery.



Here is a snapshot of my board as I got ready to start on the 2nd week.


Saturday, January 26, 2013

The Drunken PM meets Personal Kanban

For the past 18 years I have been developing my skills at helping people manage the work they have to do into a state of ninja-like perfection-ish. As I have progressed in my career I have had the good fortune to work on projects of varying size, duration and cost. Some have been successful, but more have not – and that is okay because those are the ones where I’ve learned the most. To demonstrate my proficiency in my chosen profession I have obtained multiple certifications to prove I know how to manage work in both a traditional approach and an Agile approach. I’ve even spent years teaching others how to get those same certifications. Along the way I also got an MBA to demonstrate… whatever it is an MBA is actually supposed to demonstrate beyond that I am willing to be in debt until I go to my grave.   And I’ve given up thousands of hours of personal time leading volunteer organizations that focus in managing work and teaching people how to get better at it.

After all that, I feel it is fair to say I am fairly well versed in how to manage projects and I’m pretty good at it.  My experiences have taught me many things… most of them the hard way. And with this, I have found only one single truth that spans all of it:
Being skilled at helping others manage their work is no guarantee you will demonstrate any level of skill at managing your own.
In fact, I think it is fair to say I pretty much suck at managing my own work. I’m not saying I am not good at getting things done. I get stuff done all day long, and usually, it is the most important stuff. But I’m not good at managing it.

When I started working in project management, this was not a problem. It was 1995. I did not have a cell phone. I had one email account and I could log into AOL from home or work via my 14.4 modem. There was literally only so much information I could access in a day. Compared to now, the information overhead I faced on a daily basis was pretty light. My weekly to do list usually looked something like this:

This is a sheet of notebook paper folded in half 3 times, so that each side contains 8 boxes just like the one above. When the section of the paper got too crowded, I’d copy the open items to a new section and start again. A single sheet of paper torn from a notebook could usually take care of my list of to-dos for 2-3 weeks. (This was how we did things back in the olden days before the Palm III.)

And now, as I am writing this, blog posting about having too much to do, Things has 170 items in it waiting for me to get to. Granted, they aren’t all due today but it is so many that even trying to manage what I am not going to do has become pretty much impossible. I’ve tried many different approaches and finally reached a point where I thought I had it sorted. At that point, my goal, with any single piece of information, was to get it out of my head and into something more responsible as fast as possible. For me, this means put it in Things if it is an action I have to take care of, in Evernote if it does not go in Things and on those occasions where I am not able to access electronics, I have my overpriced Field Notes notebook and one of those weird sticks that ink comes out of. With this I have gotten very good at making sure I capture everything worth capturing. But dealing with it after… that is where things get wonky.

This past December I found myself in the bizarre position of having to take a whole month off from work. It was that or lose the vacation time. While I’d expect this would sound like a truly wonderful opportunity to most people, it scared the crap out of me. The problem was, I had so many things I wanted to do during my vacation that I was pretty sure I’d end up just curling up in a ball on the couch and watching all 10 seasons of MI-5 again just to avoid having to pick which thing I was going to take on first.


As much as I love MI-5, I didn’t think I’d be able to cope with losing Tom, Zoey and Danny again, so I decided to do something about it. And, since one of the main things I do for a living is teaching Agile, I decided to practice what I preach and started getting set up to give Personal Kanban a try.

I’m writing this after 5 weeks of my own attempt at Personal Kanban. I've been holding a retrospective once a week and keeping a journal on how it is going.  My current plan is to keep working with it and experimenting with different practices to see what works for me and what doesn’t. I’ll be posting back to this blog about once every two weeks with updates on what I’ve learned and what I’m going to try next.

A friend of mine once told me that when he met with new clients about Agile Transformation, he tried to focus on making sure they understood that Agile was not going to make them faster, but it would make the broken ugly things so obvious that they’d have no choice but to deal with them. I’ve seen that happen over and over in my own work. I am happy (and totally annoyed) to report that the exact same thing happens when you apply the practices at a personal level. 

If you are interested in learning more about how to apply Kanban to managing your personal work, you might try Personal Kanban by Jim Benson and Tonianne DeMaria Barry.




Sunday, October 28, 2012

How to Avoid Overcommitment During Sprint Planning

Awhile back I was working on an Agile coaching gig with Tom Smallwood. We were working with a team that moving to Scrum and was having a particularly difficult time meeting their commitments.  Stories were being estimated in Story Points using the Fibonacci sequence and they were breaking stories down into tasks that were then estimated in ideal engineering hours. Stories were (mostly) small enough to go from card on wall to potentially shippable in about 2 days. Tasks were kept to between 4 and 12 hours. Unfortunately, despite following the basic guidelines we were giving them, they were still WAY over committing each Sprint.

Tom was the first one to notice that even though they were all confident in their ability to get the work done at the end of a Sprint Planning meeting, what they were confident about was in fact, completely impossible. What was happening was that each person was assumed to have a capacity of 8 ideal engineering hours per day. Since we were working in two-week iterations, this meant each person was on the hook for 80 hours of productive working time in a Sprint. 

The way we addressed this initially was to ask them to plan for no more than 6 productive working hours per person each day. This helped, but it still wasn't cutting it. The problem was that each person had more that they were responsible for than just the project we were working on. (Yes, this is not ideal, but it was reality at the time.)

The solution we came up with was very simple and it is one I have used on every team I worked with since. It adds an extra step to the Sprint Planning ceremony, but it has been invaluable in helping teams understand their capacity and preventing over commitment. 

(Disclaimer - this involves using relative Story Point Estimation for Stories and Ideal Engineering Hours for Tasks. There are many who do things differently and have great success - which is awesome... what follows is just what I have found to work well for me and the teams I've worked with.)

What we added was a step in the 2nd half of Sprint Planning. After the team has taken the User Stories (estimated in Story Points) and broken them down into Tasks (estimated in Ideal Engineering Hours), we would go around the circle and ask each team member to estimate how many ideal engineering hours he/she could commit to being responsible for in the upcoming Sprint. One of the most critical parts of this is the idea that the commitment being made is not to the PO, but to the other members of the development/engineering team. So, if I tell my team I'm good for 35 hours, then my team can count on me to be responsible for 35 hours of task work. If I commit to that and do not contribute that amount of time, my team members will have to cover for the work I've not done. While this should go without saying, I have found it to be helpful to mention when starting this part of Sprint Planning. 

So, going around the circle, each team member has to be aware of how much time they can commit to contributing. This means they need to account for a lot of the things that get in their way.  

Here is how I normally coach people to think through this:

In a two-week iteration, you begin with 10 working days. However, I normally block out 1 day for Sprint Planning, 1 day for the Sprint Review and Sprint Retrospective, 1/4 day for the 8 remaining days during which the team will hold a 15 minute daily standup and 1/4 day for an Estimation/Story Meeting. While blocking out 1 whole day for Sprint Planning and 1 whole day for the Sprint Review and Sprint Retrospective meetings is more than the Scrum Guide calls for, I have found that it is more realistic to working under the assumption that the team will get little else done on those days. 

If the Sprint is 2 weeks long, we start with 10 working days. Once we block out the time mentioned above, we end up at 7.5 working days.

If we assume each person can be productive for a maximum of 6 hours per day, then:
 6 hours/day * 7.5 days = 45 
So, the absolute Maximum Possible Productive Hours (MPPH) for any individual in a two- week Sprint is 45 hours. 

We then ask each person to total up the amount of time they expect to lose during the upcoming Sprint to the following events that are not part of the Scrum Framework:

  • Standing Meetings  - recurring meetings held each week that will keep them from working on the project
  • Holiday/PTO - expected
  • Vacation/Sick time - expected or averaged
  • Medical/Dental/Other Personal Appointments - expected or averaged
  • Emergency Fixes* - average time lost per Sprint to emergencies which require them to temporarily abandon their work on the project
  • Misc. Additional Time - Any additional time they feel they should block out to address other issues, work or personal, which will inhibit their ability to contribute to the project during the Sprint
* Getting pulled away from a project to deal with emergencies that are not related to the project is a dysfunction that will impair the team's ability to realize the full benefits of Scrum. However, in several organizations I have worked with, it is a constant reality. When things break, and the money stops flowing, it's all hands on deck.

The total of the above is the Interruption Time (IT) that each team member must subtract from his or her   MPPH. The amount of time left is the Revised Maximum Possible Productive Hours (RMPH).

If the individual is only working on a single project, then the RMPH is the amount of time that individual should feel comfortable sharing with their team members as their Committable Productive Time (CPT). 

If the individual is split on multiple projects, then they should multiply the percentage of their time that is allocated to the project by the RMPH. They should then subtract an additional 10% from the result (for context switching) to get their Committable Productive Time (CPT).

Here is an example of the above...

Interruption Time:
  • 4 hours standing meetings
  • 8 hours PTO
  • 3 hours for dentist appointment
  • 5 hours average time lost to Emergency Fixes
  • 5 hours subtracted because I will just be returning from overseas and I expect the jet lag to have a negative impact on my productivity for a few days
Interruption Time (IT) = 25 hours

45 (MPPH)
- 25 (IT)
20 (RMPH) 

If I am split across 2 projects at 50% each...

20 (RMPH)
*50% allocation
10 hours
-10% (context switching)
9 hours of Committable Productive Time

In talking through this, it is very common to see jaws drop. However, if each person on the team is doing this, then the team will have a realistic understanding of its' work capacity in a given Sprint. While the idea of having to tell someone responsible for your performance review that in a two-week period that you can only be counted on for 9 hours of time may be scary, it is honest. If we are practicing Scrum and sticking with transparency (one of the 3 legs of Scrum), and we are being responsible to our fellow team members, this is the most responsible, transparent thing we can do. 

Once each team member has shared their CPT, they are totaled up and this is the Team's Committable Productive Time (TCPT). As long as the total number of estimated ideal task hours does not exceed the TCPT, then the team should feel comfortable making a commitment to the Product Owner for the Stories they will complete during the Sprint. If the number of estimated ideal task hours does exceed the TCPT, then the team may have to negotiate with the Product Owner to reduce the work being planned for the Sprint before they make a commitment. 

I have also seen teams break things down even further into number of hours for development, testing, etc., but what is above is typically as deep as I go with it.

It adds an extra step, but it helps the team members inspect and adapt their own workload and capacity. This will also better enable them to meet their commitment in a Sprint; IMHO, the benefits of this far exceed the few extra minutes it will take for a team to make sure they are not overcommitting. 





Catching up... Podcastapalooza

I'm ludicrously behind in keeping the blog up to date... working on that... here is a list of all the podcasts I've done for Projects At Work since The last posting about Mitch Lacey. There is a lot of great Agile stuff here...

Howard Sublett from BigVisible
Part 1 of 1

Martin Rosenqvist on Agile Transformation
Part 1 of 2
Part 2 of 2

Tom Kealey on Getting Agile transformation to Stick
Part 1 of 2
Part 2 of 2

Kenny Rubin on his new book Essential Scrum
Part 1 of 2
Part 2 of 2

Dan Greening on Enterprise Scrum
Part 1 of 3
Part 2 of 3
Part 3 of 3