Java Glossary : clean room

CMP home Java glossary home Menu no menu Last updated 2004-06-28 by Roedy Green ©1996-2004 Canadian Mind Products

Java definitions: 0-9 A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

You are here : home : Java Glossary : C words : clean room.

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 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.


CMP logo
CMP_home
home
Canadian Mind Products CSS
HTML Checked!
ICRA ratings logo
mindprod.com IP:[24.87.56.253]
Your IP:[80.134.30.163]
You are visitor number 1168.
Please send errors, omissions and suggestions
to improve this page to Roedy Green.
You can get a fresh copy of this page from: or possibly from your local J: drive mirror:
http://mindprod.com/jgloss/cleanroom.html J:\mindprod\jgloss\cleanroom.html