My Personal Agile: Work Breakdown

(This column is posted at www.StevenSavage.com and Steve’s Tumblr)

And back again with my attempt to describe my “Personal Agile” productivity methods.

One of the challenges of getting things done is to figure out how to get it done. What do you have to do? What order? How do things work together?

To figure this out part of most any Agile practice is breaking down work to find out what to do, how to do it – and maybe if it even needs to be done (by finding the value as mentioned earlier).

So here’s how I break down work – this is the last stop before we get on to the real hands-on work.

Please note, these are my own definitions, tweaked for personal productivity. They may not fit various other Agile methods or ideas.

Projects

At the top of this all are Projects.  Projects are major, often large, initiatives. These are usally the big things you want to do like cleaning the garage, launching a new website, or writing a book. It may even be a thing you do regularly like cooking twice a week.

How do you define a Project? Here’s a quick guide to what a Project is in my book:

  • Distinct. Projects stand on their own and have their own identity that is (mostly) not dependent on anything else.
  • Has one of two lifespans:
    • It is distinct and will complete and be done, such as finishing a book or a program. Note that something like a software program may then spawn new projects like “maintenance.”
    • It is a distinct effort that is continuing, like a software maintenance program or an exercise routine. I call these Regular or BAU (Business As Usual) Projects. The effort is distinct enough that you could decide to end this Project in the future as a discreet act
  • Usually large. Most Projects will be of some size. However I argue that the Distinction and the Lifespan together define a Project more than size. And since this is my method, I’ sticking with it.

Project Value:
How do you determine if a Project is worth doing – in short, it’s value? There’s formal methods used in business, but on Personal Agile I find that there’s two ways to express – and measure – it’s value.

  • The binary. “I want X so y.” It could be as simple as taking a vacation so you relax or getting a certification as it’s standard career progression.  This is a lot like a User Story (below) just jacked up a level.
  • The measure. This is when you can tie the value to a measure and thus by measuring, determine if something was done and worth it. If you got a certification to try and get a raise then you can measure if that goal was reached – and it can fail as you may get the certification but not the raise. If you want to make X amount of profit with a book in a year, you can evaluate it – after a year.

Because Project success can be defined in many ways, I always look for “congruence,” that gut-level feel that the Project and any measures connect to my life goals. If that gut-level feel isn’t there, you might be wasting your time – or doing this under duress.

By the way if neither work, you can try describing it like a Story.  In fact, those are next.

Stories

Projects consist of Stories. Stories are where we get down to real work and hands-on value. Stories are also where a lot of work and breakdown and arguing goes on. So get ready for some opinionated stuff that might get me into a fight with other Agile practitioners.

A Story is the smallest unit of work you can do in a Project that still delivers value and helps complete the Project. It may be of limited value. It may be to a limited audience. It may not be that helpful without other Stories. But it has value that wouldn’t exist if you took it apart any further.

Ideally a Story should, when completed, be valuable if all other work stopped. It might not be much, but it’s something. Note this is an ideal but it doesn’t always happen.

The best way to get to breaking down Stories is to try it.  So let’s try . .  .

EXERCISE: Look at a Project you want to do.  Now write down everything you’d need to do for it to get done.  Don’t get over-detailed, just give yourself about five minutes.  We’ll talk how to make good Stories in a moment, but I want you thinking breakdown.

Interesting isn’t it?  Determining stories is definitely an art.  I also bet that the Story breakdown you have just brainstorming isn’t quite clear or satisfying.

So if you’re thinking “These Stories seem both really defined and kind of fuzzy” you’re right. Agile is both knowing what to do but not overdoing and overanalyzing. Fortunately there’s a tool to clear them up – and it’s a core part of Agile and one of it’s big contributions to management thought period.

Story Value
Stories in Agile are sometimes called User Stories (the terms get thrown around interchangeably). This is because they are, bluntly, focused on delivering something (value) to someone (a user) – and that forms a Story. The formula is a key to quickly determining what a Story is and what it delivers is to title the Story thus:

As (person) I want (thing) because (reason)

Sound simple, right? But this tells you three things – why you’re doing something for whom. If you can’t figure out any of these three parts, you either need to break it down more, do research – or realize it has no value.

When you define your Stories this way, you get:

  • The Person- Tells you who you do it for, who to ask for questions, and who approves of the result. Vital for good feedback, communications. Though in Personal Agile this is probably you a lot.
  • The Thing – Tells you what to do. The better defined it is the better idea you have what to do but don’t overdo it.
  • The Reason – Tells you why. Why is a great guidance for evaluating what you do, determining if you’re delivering, and motivating you. Reason is also one of the major places where you discover “hey, this is kinda worthless.”

If you’ve ever done something and wondered “why am I doing this?” imagine how knowing these three things would have helped.

As you can see, the Story method is pretty powerful. Sure you might need more details, you may have to find them, but this is a great way to know enough to get doing things. It also helps prevent over-designing things.

By the way, if you need more details, let me refer you to the classic Kipling poem’s opening line:

“I KEEP six honest serving-men
(They taught me all I knew);
Their names are What and Why and When
And How and Where and Who.”

You got Who, What, Why. If you need more details see if any of their friends should go in: When, How, and Where.

By the way, when in doubt, yu can use this formula everywhere. To evaluate an action, to quantify a Project. So be it the biggest Project or the simplest task, when confused, ask “why an I doing this thing and for who?”

A few notes:

  • In Personal Agile you may not need to do formally described stories, but it does help. When in doubt, use them – they’re wonderfully clarifying, even if later you go back to more simple terms. If you’re new to this, definitely use them.
  • Some Projects are so big that they have “big stories” or “bundles” of stories called Features, Epics, Legends, etc. These let you organize stories into groups.  I don’t use them in my Personal Agile.

Tasks

Tasks are the final part of good Agile planning and breaking down work. This is when you figure out what you do hands on.

Remember how you broke down Projects into Stories, the smallest bits of value?  Tasks are when you break down a Story to figure what you have to do to get that value.  Every Story has at least one Task, and each Task contributes to completion of that Story.

Figuring out Tasks is also a bit of an art, but is usually more hard-nosed than, say, Stories. You can pretty much look at a Story and figure out what has to be done.  Remember you may find more Tasks are needed, but you can usually get a good start.

There’s no real way to describe Tasks, but I’d describe them as clearly as possible for the sake of clarity.  The value of them is also pretty apparent as they’re directed to a goal.

EXERCISE: Look at one Story for the above exercise.  Describe the Tasks necessary to do it, and try to make them of reasonable size.

Interesting exercise isn’t it?  You can define Tasks but how do you get your hands around how much work they take?  That’s what’s next.

Tasks and size
Tasks are also where sizing takes place. Sure, sometimes people size Stories and even Projects in various ways (I don’t always in my Personal Agile so I won’t cover it). However, no matter what, how you size a task affects real work – so we need to discuss that.

There is a lot of discussion in Agile about how to do this. In turn thereare a lot of great ideas. In turn, a lot of people actually ignore these half the time. The other half they argue.

Me, I use hours of work. If I were planning a larger Project with more people I might use other methods, but in this case I have a pretty good grip on how fast I work.  This also lets me figure out how long I can spend on things and may let me track odd things that just require a block of time (if, say, I want to spend X hours studying)

However I do have an additional rule I call Fibonacci Hours.

I size tasks in how long I think they’ll take. But I have a few rules:

  • Tasks should be sized so in theory I can do them all in one go – even if it may take setting some time aside (usually 5 hours or less).
  • Tasks are sized in hours – minimum one hour.
  • Tasks hour-sizing must fall in the Fibonacci sequence – 1,2,3,5,8,13, etc. Basically each number is the sum of the ones before it. If something is “between” the two I have to make the call if it’s more likely the lesser or the greater.

In using these Fibonacci hours I’ve been amazed how accurate they are – usually more accurate than my attempts to figure the “exact” time. This is because in our ability to estimate, we’re not always good making fine distinctions, especially with larger numbers. This just enforces a pattern that, as a story gets larger, you have to think in a wider range between sizes.

By the way, I try to break things down to never be more than 3 hours, 5 at the most, unless it’s for something odd (like setting aside time to write).

By the way if you use Agile, you’ve seen this used for “points” and other methods of work. I just found they worked for hours.

A Few Tips On Tasks

  • In an ideal situation each Story would have only one task because you were able to break down value so specifically.  This can happen a lot in Personal Agile, but not as much on larger Projects.  It’s something to aim for, but remember it may not be achievable for certain efforts.
  • It’s best to describe tasks well, but in Personal Agile usually you’re the one doing them so don’t waste time.  Just make sure you can remember what you described.
  • A few times above I noted sometimes a task is just spend-so-much-hours on something.  Don’t be afraid to do that – in Personal Agile it really helps.

Onward To Action

OK you know to think about value. You have an idea of how to break down work. Now we’re gonna get started.

By the way, even if you never use any of my other Personal Agile methods, thinking about work like this will help you.

– Steve

 

My Personal Agile: Value

(This column is posted at www.StevenSavage.com and Steve’s Tumblr)

I’ve been talking to a few people about my personal use of Agile (specifically Scrum) to be productive.  So let’s get to the next step: thinking about work.

It may seem strange to say your first step is thinking different – it sounds kinda fuzzy doesn’t it? But it’s it’s a core part of Agile methods, and a core part of doing better. How you think about work affects how you do it – or if you do it. Agile is not just some techniques or some airy philosophy – it’s a mindset.

First up is learning to think about value.

Value

Value is something talked about in Agile a lot. The first Agile Principle is:

Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.

Substitute software for, well, anything. Substitute customer for whoever your target audience is – including yourself. Your goal in doing anything is to do something of value for someone.

If there’s no value, well the eight Agile Principle states

Simplicity–the art of maximizing the amount of work not done–is essential.

So if something isn’t worth it why do it? Exactly – don’t.

If there’s no one to do it for, don’t do it.

But, that means you have to learn to think about the value of work you do.  I’ll cover more of that in the next section when we look at breaking down work.

EXERCISE: List the top five things you want to get done in ife. Write down in order which is the most important to the least – and no item can be of equal importance to any other (this is force-ranking). What do you learn doing this?

EXERCISE 2: What was the last thing in life that you did that really didn’t need to be done. Why did you do it? How much time would you have saved not doing it?

Value And My Personal Agile

So why is value so . . . valuable? I mean you can guess, but let’s peek behind the curtain.

  • Thinking about value tells you why something should be done – and you can figure out if it’s worth doing.
  • Thinking about value tells you how important something is – and how you should prioritize it. Good productivity – and Agile especially – requires you to know what’s important to do. That helps you organize.
  • Thinking about value tells you who wants it – and that’s the person you want to talk to for guidance and feedback.

The first part of work is knowing why you’re doing it – or why you shouldn’t.

I hope that helps you think about work better. Because next step we’re going to talk about how you break work down – and find its value.

– Steve

 

My Personal Agile: Introduction

(This column is posted at www.StevenSavage.com and Steve’s Tumblr)

All right people, money where my mouth is time.  I’ve been talking to several friends and my girlfriend about my use of Agile methods (Scrum specifically) at home.  They’re curious, but they noted it’d be easier if I wrote this up.  Realizing I’m a writer I felt kind of dumb because, you know . . . I should have thought of it.

So guess what you’re going to see for the next few weeks?  That’s right – a detailed (but light) guide to my own Personal Agile system readable by normal humans.

Now let’s talk Agile, but first . . .

If You’ve Used Agile:

Don’t worry this isn’t fanatic or preachy stuff.  I come from an engineering and science background, bits and bytes and blood and guts.  I’m interested in results.

However I am big on learning and making good productivity part of everyday behavior.  That might get annoying.

You can probably skip the next section.

If You Haven’t Used Agile:

So what’s this Agile stuff?  Let’s go to a basic outline that is hopelessly minimizing everything but still useful.

  1. Formally or informally a lot of management and productivity has been top-town – orders, schedules, hierarchy, etc.  You get the idea – build a plan and follow it.  These days this is often called “Waterfall” but the basic idea’s been around for most of human history, and “Waterfall” as a concept is a comparatively recent invention.
  2. For a few decades at least (and informally throughout human history) people also have known this whole plan-it-then-try-it method doesn’t work.  Methods of alternate management and workflow have been developed.  Many are older than people realize, but were in specialized markets.  Look up the history of Kanban sometime.
  3. Software really seems to have blown the lid off of a need to find new ways to organize.  Software jacks all the problems of doing any task up to 11: it’s fast, it’s variable, it’s evolving.  A lot of methods to make software management and productivity work better evolved, and people started calling these collectively “Agile.”
  4. In 2001 a whole bunch of Agile people met at a resort to discuss this and produced the Agile Manifesto and the 12 principles, which are seriously worth reading.  This really consolidated and kicked off Agile practices – Agile had a Philosophy, and there was feedback between Philosophy and Methods.
  5. Since this time, people have been adapting various forms of Agile all over.

So that’s it.  People knew traditional management didn’t always work, software really revealed that and drove people to fix it, and from that emerged a more coherent philosophy that sent things into overdrive.

EXERCISE: Go to the Agile Manifesto and read it.  How do you apply (even if accidentally) the four core elements of it?

EXERCISE 2: Read the 12 Agile Principles.  Which make sense to you and which don’t.  Why?

Why Is Agile Different From Other Methods?

(Hey those of you who have used Agile?  You can keep reading now).

Here’s how I see Agile differing from other methods of getting organized that aren’t, well, Agile?

  1. Agile focuses near-obsessively on value and why you’re doing something.  As you may guess, Agile also helps you realize when something is stupid.
  2. Agile focuses on adaptability and responding to – even embracing – change.  This helps you get the most out of change, even when unwelcome.
  3. Agile is heavy on feedback and adjustment and review.  Improvement is baked in.
  4. Agile is about everyone involved practicing it.  This is why I think the Agile Manifesto is so important, it was a basis for people not just doing Agile but becoming Agile.

Cool, So What’s This Scrum Thing?

Scrum is one of the Agile Methodologies or Practices (I see people use the terms interchangeably).  It was my first encounter with Agile, and frankly I consider it and the older practice of Kanban (which I use parts of) to be the best stuff I’ve seen.  Yes, I’m biased.

At a high level, Scrum works like this:

  1. You keep a list of things you want to do in priority order.  That’s the Backlog.
  2. You set aside a block of time to do work, called a sprint.  This is often two weeks in software, but I use a month for myself since my life has a monthly cadence.
  3. Every sprint you look at your Backlog and take all the things you can do from the top down.  You do not skip an item unless it turns out something is more important.  Basically you take the most important things that you can do in that timeframe – that becomes your Sprint Backlog.
  4. You do the work and adjust and adapt.  Sometimes you find that there are issues, sometimes you find old work.  Sometimes you even find you have more time and grab more to do – off the top of the backlog.
  5. At the end of the sprint you figure out how you did, look over the backlog, and do it all again.

Scrum hits a sweet spot of “free-form” and “organized” for many.  You can predict work done more or less.  You know priorities.  If anything goes wrong you review every sprint and can navigate.  You also know what’s expected of you (or from yourself) in a timeframe.

You can probably see how this helps out.  When I implemented my own Personal Agile, which is mostly Scrum, I actually got everything done within the first 3/4 of the month.  I had a gain of 25% productivity – and I was already pretty productive using the Agile-sih “Getting Things Done” method (which is well worth reading up on).

EXERCISE: If you were more efficient – without overloading yourself – how much more do you think you’d get done?  Can you put a percent of gain you think you’d experience.

So What’s Coming Up?

Fine, you got the backstory.  Let’s get to the methods – next up we talk why things matter.

– Steve