By Bill Flury
Warning to all system Project Managers and Developers! Specification fleas can bite!
Specification fleas are those pesky things that bite you and cause you to say “Ooops!”, “Ouch” or “Oh ____” when you are trying to update or change a process or a program and suddenly discover you are doing the wrong thing. These fleas hide in the formal written or informal, unwritten specifications for what you should be doing. They go after you when what you are doing conflicts with those specifications. We call them specification fleas because they are related to each other in hierarchical ways, much like specifications, and interact very much like the fleas in the poem below.
In the 17th Century, a British mathematician, Augustus De Morgan, wrote a poem describing fleas and the relationships among them.
“Great fleas have little fleas
upon their backs to bite ’em,
and little fleas have lesser fleas
and so ad infinitum.”
The fleas in specifications are like those described by De Morgan. They come in all sizes, can exist at any level, and frequently bite each other.
About System Specifications
Formal, written specifications for systems or processes are typically prepared in the form of a hierarchy. At the top level they start with a concept. That becomes the specification for the architecture. The architecture presents an overall system or process design and provides specifications for the sub-systems and sub-processes that need to be developed to implement the design. The sub-system and sub-process designs provide specifications for components and how they are to work together. The hierarchy continues to the parts or detailed process level.
Many project teams work to unwritten or partially documented specifications. These cover all the same hierarchical levels of design and specification but are “documented” only in the minds of the participants or, occasionally, on a whiteboard in the team break room preserved with the words “Do Not Erase” written on the corner.
About Specifications Fleas
In formal specifications, fleas frequently hide under imprecise or ambiguous passages. They also lurk in incomplete corners and hide behind implicit assumptions. Others reside in sections that have not been updated since higher level designs or other circumstances have changed.
The fleas that inhabit informal specifications are, perhaps, the happiest fleas of all. They have innumerable places to live and thrive. A large colony can usually be found in the gaps of completeness. Others thrive in the areas of misunderstanding and missed communication. They can raise whole families in places where there is no consensus on the details of the specifications.
Fleas are sneaky. One must keep checking their hiding places to try to keep them away. But, no matter how hard you try, fleas happen!
So, when you find one you need to do three things:
# 1 – Flea Bite Recovery: Find out where the flea bit you and treat the bite.
If there is a formal specification, check to make sure that the specification is current and correct. If it is not, correct the specification. If the specification is correct, adjust what you are doing accordingly.
If there is no formal specification, you will have to gather all involved and get full agreement on what you should be doing. (That may turn up some more fleas in what others are doing in relation to what you are doing.) After you get agreement, proceed to kill the fleas.
# 2 – Flea Discovery: See if there are other fleas just like the one that bit you.
As in the poem, there are likely to be greater fleas and lesser fleas related to your fleas. You need to check to see if your flea was helping some other fleas to hide. You need to chase them all down and kill them.
# 3 – Flea Prevention: Go look for the places where the fleas are breeding and eliminate them.
Here you can apply systemic flea prevention treatment. Encourage formal specification documentation. Provide training in writing and reading specifications. Encourage frequent review and discussions of the design and specifications among all those involved … and take notes.
Work actively to clear up any misunderstandings. To accomplish this, some groups meet daily for design and specification discussions.
Ignore Fleas at Your Peril
“A blockhead, bit by fleas, put out the light,
And chuckling cried, “Now you can’t see to bite.”
Effective flea protection involves continuous aggressive flea prevention by all members of your team. Be alert!
Full Course: Tracking and Control (1 day)
Click here for our full list of available courses!