Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
231 views2 pages

Cleanroom Software Engineering

Cleanroom software development is a philosophy that aims to avoid defects through formal methods and rigorous inspections. It gets its name from semiconductor cleanrooms that manufacture without defects using an ultra-clean atmosphere. Key strategies include formal specification, incremental development with customer input, structured programming with limited constructs, static verification through inspections instead of testing, and statistical testing of integrated increments based on an operational profile. The Cleanroom process model shows how these strategies are integrated.

Uploaded by

Sameer Shahul
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
231 views2 pages

Cleanroom Software Engineering

Cleanroom software development is a philosophy that aims to avoid defects through formal methods and rigorous inspections. It gets its name from semiconductor cleanrooms that manufacture without defects using an ultra-clean atmosphere. Key strategies include formal specification, incremental development with customer input, structured programming with limited constructs, static verification through inspections instead of testing, and statistical testing of integrated increments based on an operational profile. The Cleanroom process model shows how these strategies are integrated.

Uploaded by

Sameer Shahul
Copyright
© Attribution Non-Commercial (BY-NC)
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 2

Cleanroom development

http://www.cs.st-andrews.ac.uk/~ifs/Books/SE9/Web/Cleanroom/

Cleanroom software engineering


Cleanroom software development (Mills, Dyer et al., 1987; Cobb and Mills, 1990; Linger, 1994; Prowell, Trammell et al., 1999) is a software development philosophy that is based on avoiding software defects by using formal methods of development and a rigorous inspection process. The name Cleanroom was derived by analogy with semiconductor fabrication units. In these units (cleanrooms) defects are avoided by manufacturing in an ultra-clean atmosphere. The objective of this approach to software development is zero-defect software. The Cleanroom approach to software development is based on five key strategies: Formal specification The software to be developed is formally specified. A state-transition model which shows system responses to stimuli is used to express the specification. Incremental development The software is partitioned into increments which are developed and validated separately using the Cleanroom process. These increments are specified, with customer input, at an early stage in the process. Structured programming Only a limited number of control and data abstraction constructs are used. The program development process is a process of stepwise refinement of the specification. A limited number of constructs are used and the aim is to apply correctnesspreserving transformations to the specification to create the program code. Static verification The developed software is statically verified using rigorous software inspections. There is no unit or module testing process for code components. Statistical testing of the system The integrated software increment is tested statistically (see Chapter XX), to determine its reliability. These statistical tests are based on an operational profile which is developed in parallel with the system specification. A model of the Cleanroom process, adapted from the description given by Linger (Linger, 1994), is shown below. This shows how these essential strategies are integrated.

Figure 1: The Cleanroom process Cleanroom teams discusses the team organisation for the Cleanroom process. Rigorous inspection explains the inspection approach used. Cleanroom experience discusses the experiences with the Cleanroom approach and its effectiveness. References Cobb, R. H. and Mills, H. D. (1990). Engineering Software under Statistical Quality Control. IEEE Software,7(6), 44-54.

1 of 2

11/24/2012 9:10 PM

Cleanroom development

http://www.cs.st-andrews.ac.uk/~ifs/Books/SE9/Web/Cleanroom/

Linger, R. C. (1994). Cleanroom Process Model. IEEE Software,11(2), 50-8. Mills, H. D., Dyer, M. and Linger, R. (1987). Cleanroom Software Engineering. IEEE Software,4(5), 19-25. Prowell, S. J., Trammell, C. J., Linger, R. C. and Poore, J. H. (1999). Cleanroom Software Engineering: Technology and Process. Reading, Mass.: Addison-Wesley.

(c) Ian Sommerville 2008

2 of 2

11/24/2012 9:10 PM

You might also like