Becoming agile without permission

Archive for March, 2013

Everything I do, I do it with POO

Everything we do in life has POO. Everything we do at work. Everything we do at home. Everything we do when we are alone or with somebody or in a group or in a crowd. Everything we do has POO. Everything we use has POO. Everything we create has POO.

What is POO?

POO is the Purpose, why we do something; the Objectives, what we are trying to get out of something; and the Outcomes, what we expect at the end. POO helps us better define what we are doing and why we are doing it. POO also helps us put boundaries on things. It helps us determine whether or not something contributes or not. It helps define when we are done. It lets us know if something is appropriate for what we need to accomplish.

Purpose: Why bother?

The Purpose tells us why we are doing something. The Purpose provides context. It gives us the reason and motivation for doing or changing something. It helps us prioritize what we need to do or change.

The Purpose is usually just a single sentence. For example:

The purpose of this article is to convince others that POO is a good framework for defining changes to things and other activities.

Objectives: What do we want?

The Objectives describe what we want out of something. It focuses our thoughts and actions on specific, defined goals. This helps us choose thing and activities that contribute to the objectives so we do not waste time or resources that do not help us achieve the objectives.

There can be one or more Objectives for something. It helps if the objectives are listed in order of priority. For example:

The objectives of this article are:

  1. To raise awareness in others that everything has POO
  2. To show the usefulness of identifying the POO
  3. To solidify my thinking and understanding about POO
  4. To foster discussions on POO

Outcomes: What do we get?

The Outcomes identify what we expect to get out of something. They are the state of the universe after doing or making something. The Outcomes help us focus on what we really need to deliver, on what we expect to change.

Like Objectives, there can be one or more outcomes. For example:

The outcomes of this article are:

  • People use POO when defining activities or changes
  • People use POO when doing and making choices
  • I am happy with my understanding of POO
  • I am happy with my POO
  • People talk to me about POO

So? Why is POO important?

POO is important because:

  • It helps us focus on what we really need to do or make.
  • It helps to align expectations.
  • It helps use understand the bigger picture in which we do specific things.
  • It provides a framework for discussing and making decisions about activities and changes.
  • It helps us know when we are done.
  • It is a tool for defining activities, tasks, deliverables, conditions, projects, changes, and… well, everything.

 

(You may say that all of this is a load of BS. I say it is POO.)

 


100% QualityBeing agile means delivering value; value in everything we do. A major part of delivering value is delivering quality. You can deliver something of poor quality and there still might be value, but not near as much value if it had high quality. This means that there needs to be high quality in everything you do, quality code, quality tests, quality user stories, quality designs, quality e-mails, quality discussions, quality requests, quality learning, quality thinking, quality doing. It is not just the end product that needs quality. Everything needs quality.


There was a lot of talk and activity this week around defining new activities and roles. I am also working on defining what my role is here at my new company. Several times I brought the conversation around to the purpose of this new thing. The purpose specifies why we do or need something. It specifies the reason for something’s existence. Identifying the purpose goes a long way towards defining the activities and outcomes. Identifying the purpose also helps to put boundaries around something. The boundaries then help keep things more pure. They keep us from adding more stuff to something just because we can.

When I was a software designer and architect, I would always define the purpose of a component, the reason for its existance. This purpose would then guide us as to where to add functionality. If the new functionality did not support the purpose of the component, we usually did not add it to the component. We found the component where the functionally fit the purpose. Sometimes we had to create a new component with a new purpose. Rarely, we had to redefine the purpose of a component to include the new function.

So, this week I started on identifying my purpose in my new role. I drafted my professional mission statement. The mission statement identified the reasons why I am here. What I am to do. What I am to change. What I am to be.

What is your professional purpose? What is your personal purpose? Why are you here?

What is my purpose?