There is an old engineering joke(1);
One day, a year after she(3) retires Lucy receives a call from her former boss. “Lucy, the X-43q isn’t working, I know it was your baby, um, could you come in take a look at it?” Grumbling she says “Yes, but I want 10K for the repair”; since the X-43q is key to everything they due and no-one knew what to do(2) they quickly agree. The next day she comes in, listens to the machine for 5 seconds and says “The timing belt is slack, replace the tensioner spring. Check please.”
In shock her former boss sputters, “You can’t expect 10K for 5 seconds of work!”
She replies, “The 10K isn’t for the 5 seconds of work, it is for the 10 years that where I learned what to do”(4)Attributed to just about every senior engineer….
So to explain the title: If a tree falls in the forest it still makes a sound; however if a process isn’t written down it does exist. So what how do you write up a process?
Objectives, actions, triggers, conditions and rationale
The most basic process document has three parts
- Objective(s): the outcome of following the process
- Positive: X shall occur
- Negative: X shall not occur
- Actions: what you do to achieve the objective
- Explicate: The following steps shall occur
- Engineering judgement: (5) The following types of things shall be done
- Rationale: why you are taking an action, condition, or modification. There can be multiple rationale for a single process. More complex processes will have more rationale
It is rare for a process document to have just the Objective and the Actions, the two other categories are
- Triggers: what starts the process in motion
- Periodic: tasks that are performed on a temporal basis
- Conditional Event: when X happens the the task starts
- Process Event: when a milestone in the project is reached
- Conditions: modifications to the process based on environmental factors
- Modifying: if Q happens then follow the “Q” path through the process
- Aborting: if R happens then halt the process and start process “Oh crud R happened”
- Gating: Before this process can start the following must happen.
The distinction between conditional and process events is simple; process events are expected, conditional events may happen(6).
A short example process
Process for making 3-bean soup (objective: have a tasty meal)
When the number of soups in the freezer falls under 3 (conditional trigger) then a soup shall be made. The type of soup shall be dependent on the last 2 types made (modifying condition) to prevent repetition of the soups (rationale)
- Verify you have 2 hours to monitor the soup (gating condition on the process)
- Verify you have the required ingredients (gating condition on the process)
- Chop, dice, mince and mix,
do the things for soup to fix.(7)
- O-going: Monitor for soup overheating
- Add water or reduce heat (
- Add water or reduce heat (
With step 4 I introduce the notation “on-going”. With in a process some steps are one-off and others are on-going or repeated. In context it should be obvious why something falls into a given category
- Like most, it isn’t funny, it is bitter. Engineering jokes are like Aesop’s fables, they attempt to impart wisdom but we are often left wondering “if the mice have metal working technology to make a bell, why don’t they make some arms and weapons”(2)
- At least that is what I wondered.
- I’ve updated the old joke
- Of course if they had given her time to write up what to do she could have stayed retired
- There will always be some engineering judgement in processes, the goal is to guide that judgement
- We can use a simple cooking analogy. When you are making dinner you expect the food to finish cooking, that is a process trigger, e.g. set the table. You do not expect the food to catch on fire in the oven, that is a conditional trigger.
- One day I will start a blog “MBC : Michael Burke Cooks” for now accept a short rhyming couplet for what goes into making a soup (or anything else)