1 / 18

Cleanroom Software Engineering

Cleanroom Software Engineering. Crystal Donald. Origins. Developed by Dr. Harlan Mills in 1987 Name derived from hardware cleanrooms Goal is zero defect rate. What is it?. Formal design and requirements methods + Statistical Usage Testing ______________________________

rue
Télécharger la présentation

Cleanroom Software Engineering

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Cleanroom Software Engineering Crystal Donald

  2. Origins • Developed by Dr. Harlan Mills in 1987 • Name derived from hardware cleanrooms • Goal is zero defect rate

  3. What is it? Formal design and requirements methods + Statistical Usage Testing ______________________________ Little or No Defects

  4. Why Cleanroom? • Quality • Most suitable for critical applications • Increased Productivity • Reduces Costs

  5. Cleanroom Method Steps • Requirements Analysis • High-level Design • Detailed Design • Coding by increment • Pretest by increment • Statistical Testing by increment

  6. Incremental Development Cycle • Early and continual quality assessment • Increased user feedback • Repair any process related problems • Allow requirements changes

  7. Mathematically Based Design • Referential Transparency (Linger, 1996) • Mapping inputs/outputs of design = actual • Similar to function mappings • Box Structures

  8. Box Structures • Map system inputs to system outputs • Black Box ((current stimulus, stimulus history)  response) • State Box ((c. stimulus, c. state)  (response, new state)) • Clear Box State transition procedures are defined explicitly

  9. Correctness Verification • Replaces unit testing and debugging • No constraints on how code is written • Code vs. Specification • Function theoretic static code analysis • Review done mentally and verbally • Written proofs not required • No compiling of code

  10. Statistical Usage Testing • Description of how system will be used • Defined for all possible code scenarios w/ probability of occurrence • Hierarchical usage breakdown and probability distribution • Concentrates on finding defects that are statistically most significant

  11. Formal Methods Overlap • Based on mathematical principles • Focused on 100% quality • F.M. – Complete view of req’ts in advance • F.M. – Model entire system at once for quality • C.R. – Model system incrementally • F.M. – Logic as basis, C.R. – Function mapping • FM and CR can be integrated for higher quality

  12. Comparison

  13. Capability Maturity Model (CMM) Overlap • CR covers a larger number of (Key Process Areas) KPAs • CMM has 5 Levels • Cleanrooms has high correspondence with Levels 2-5 of CMM (No Ad-hoc processes)

  14. Usage Considerations • Small teams w/ peer review of work • Time spent on design will be greater • But will reduce testing • Training requirements

  15. Outside Software • Must go through correctness verification • Possible introduction of “contaminant” • Likely re-engineering in Cleanroom format

  16. Debate • Advance process of software development • Theoretical foundation for SW development vs. • Cleanroom is too radical for SW dev. • Still too new and relatively unproven claims

  17. Conclusion • Key Characteristics of Cleanroom SE • Incremental Development Life Cycle • Defect Prevention: Quality Assessment thru Statistical Testing • Disciplined SE methods required to create correct, verifiable software

  18. Resources • http://www.uta.edu/cse/levine/fall99/cse5324/cr/clean/page1.html UTA • http://www.dacs.dtic.mil/databases/url/key.php?keycode=64 DACS • http://www.criticaljunction.com/werbicki/SENG623/Group/SENG623W03_Cleanroom.pdf Paper

More Related