Next / Previous / Shipman's Home Sweet Homepage / Site map

Overview of the Cleanroom software methodology

I use examples in Icon and Python to explain Cleanroom. For Icon tutorial and reference material, see my help pages for Icon; for Python, see

Here is a broad outline of how you develop each procedure in a Cleanroom design:

  1. Write an intended function for the procedure as a whole. For details, see `Writing Cleanroom intended functions'.
  2. Implement this intended function using only certain specific control structures, each of whose components are described by their own intended functions. These smaller components are called primary program refinements, or primes for short. See `Permissible Cleanroom control structures'.
  3. For each prime in the procedure, write the code that implements that prime's intended function. If that code calls another procedure, the interface with that procedure is defined by the called procedure's intended function.
  4. The design of each procedure should be verified by a group of peers trained in the methodology. See `Verifying a Cleanroom procedure'.

Next: Example programs written in Cleanroom style
See also: The Cleanroom software development methodology
Previous: Introduction to Cleanroom software development
Site map
John W. Shipman,
Last updated: 2002/09/28 23:27:06