clean room : Java Glossary


clean room
Clean room has three meanings:
  1. Integrated circuit chips are manufactured under super clean dust-free conditions in a "clean room" with special air pumps and filters to clean out the dust.
  2. By analogy, clean room refers to a way of writing software. When a company wants to make a clone of some existing product, they are concerned that they will be accused of reverse engineering. So they lock the programmers away and never even let them look at the product they are copying. A separate team studies the behaviour and specifications of the product to be copied. All conversations between the two teams are recorded. This way the company can prove in a court of law that it created the clone without reverse engineering. Companies that write JVM (Java Virtual Machine) interpreters in the clean room style would not owe Sun any royalties.
  3. Clean room also refers to a technique of writing reliable code. The specification team uses a formal specification language to define the system. The specification language should be mathematically provable or verifiable. The developers are expressly forbidden to compile and execute their code. Instead, the development team holds extensive walkthroughs and functional verification exercises: the goal is to address every known design possibility in the code. If this team has done its job, when they turn their code over to the certification team, it should compile cleanly and run perfectly the first time.

This page is posted
on the web at:

Optional Replicator mirror
on local hard disk J:

Please the feedback from other visitors, or your own feedback about the site.
Contact Roedy. Please feel free to link to this page without explicit permission.

Your face IP:[]
You are visitor number