Skip to main content
knowledge readings / competitive engineering

Competitive Engineering

Tom Gilb · Elsevier, 2005

published v1.0.0knowledge reading · systems · 2 min read

What I took from it
  • A requirement you can't measure is a wish, not a requirement.
  • Every quality gets a scale, a way to measure it, and target levels.
  • Deliver in small steps, measure each one, and let the numbers steer.

The idea​

Gilb's claim is simple and hard to live with: most of what we call requirements are adjectives. "Fast", "secure", "easy to use". Nobody can tell when they're met, so nobody can tell when they're not. His answer is Planguage, a specification language that forces every quality into a number on a defined scale.

How it looks​

A Planguage requirement names the quality, says what's being counted, says how it will be measured, and sets levels: where we are, where we must not fall below, and where we're aiming.

Verifiability:
Scale: % of production images whose digest
was verified before the job ran
Meter: pipeline logs, sampled weekly
Past: 0% [before signing]
Fail: 90% [below this, stop and fix]
Goal: 100% [by end of quarter]

My example, not the book's: a Planguage requirement for the image-signing experiment.

How I use it​

I use it in two places. At work, it's how I turn "make the supply chain more secure" into something a pipeline can report against. Outside work, it sits under my life plan: each goal has a scale and a meter, and the plan changes when the numbers say it should.

Where it connects​

References​

  1. T. Gilb, Competitive Engineering: A Handbook for Systems Engineering, Requirements Engineering, and Software Engineering Using Planguage. Oxford, U.K.: Elsevier Butterworth-Heinemann, 2005.

Ire o (Blessings (good fortune to you), Yoruba),
Olarotimi

Revisions

v1.0.0stable3 revisions · last revised

Major versions are rewrites, minor versions add or clarify, patches fix.

  • 1.0.0Build step 3f: artistry, travel; strict link checking
  • 1.0.0Build step 3d: readings, reading layout and books
  • 1.0.0Build step 2: content system (publish by adding a Markdown file)

Every change is recorded on the site log.