Clean room Software Engineering for Zero Defect Software

Clean Room Software Engineering For Zero Defect Software-Free PDF

  • Date:12 Oct 2020
  • Views:3
  • Downloads:0
  • Pages:12
  • Size:1,023.52 KB

Share Pdf : Clean Room Software Engineering For Zero Defect Software

Download and Preview : Clean Room Software Engineering For Zero Defect Software


Report CopyRight/DMCA Form For : Clean Room Software Engineering For Zero Defect Software


Transcription:

testing are returned to the development team for cor A traditional project experiencing say five. rection If quality is not acceptable the software is errors KLOC in function testing may have encount. removed from testing and returned to the develop ered 25 or more errors per KLOC when measured. ment team for rework and reverification from first execution in unit testing Quality compar. The process of Cleanroom development and cer isons between traditional and Cleanroom software. tification is carried out incrementally Integration is are meaningful when measured from first execution. continuous and system functionality grows with the Experience has shown that there is a qualitative. addition of successive increments When the final difference in the complexity of errors found in. increment is complete the system is complete Cleanroom and traditional code Errors left behind. Because at each stage the harmonious operation of by Cleanroom correctness verification if any tend to. future increments at the next level of refinement is be simple mistakes easily found and fixed by statis. predefmed by increments already in execution inter tical testing not decp design or interface errars. face and design errors are rare Cleanroom errors are not only infrequent but. The Cleanroom process is being successfully usually simple as well. applied in IBM and other organizations The tech Highhghts of Cleanroom projects reported in. nology requires some training and practice but Table 1 are described below. builds on existing skills and software engineering. practices It is readily applied to both new system IBM Flight Control A III I60 helicopter avionics. development and re engineering and extension of component was developed on schedule in three. existing systems The IBM Cleanroom Software increments comprising 33 KLOC of JOVIAL SI. Technology Center CSTC 4 provides technology A total of 79 corrections were required during statis. transfer support to Cleanroom teams through educa tical certification for an error rate of 2 3 errors per. tion and consultation KLOC for verified software with no prior execution. or debugging,Cleanroom quality results,IBM COBOL Structuring Facility COBOL SI. Table 1 summarizes quality results from COBOL SF IBM s first commercial Cleanroom. Cleanroom projects Earlier results are reported in product was developed by a six person team The. SI The projects report a certification testing product automatically transforms unstructured. failure rate for example the rate for the IBM Flight COBOL programs into functionally equivalent struc. Control project was 2 3 errors per KLOC and for tured form for improved understandability and main. the IBM COBOL Structuring Facility project 3 4 tenance It makes use of proprietary graph theoretic. errors per KLOC These numbers represent all algorithms and exhibits a level of complexity on the. errors found in all testing measured from first ever order of a COBOL compiler. execution through test completion That is the rates The current version of the 85 KLOC PL I. represent residual errors present in the software fol product required 52 KLOC of new code and 179. lowing correctness verification by development corrections during statistical certification of five. teams increments for a rate of 3 4 errors per KLOC 7. The projects in Table 1 produced over a half a Several major components completed certification. million lines of Cleanroom code with a range of 0 to with no errors found In an early support program. 5 1 errors per KLOC for an average of 3 3 errors per at a major aerospace corporation six months of. KLOC found in all testing a remarkable quality intensive use resulted in no functional equivalence. achievement indeed errors ever found SI Productivity including all. Traditionally developed software does not specification design verification certification user. undergo correctness verification It goes from devel publications and management averaged 740 LOC. opment to unit testing and debugging then more per person month Challenging schedules defined for. debugging in function and system testing At entry competitive reasons were all met A major benefit of. to unit testing traditional software typically exhibits Cleanroom products is dramatically reduced mainte. 30 50 errors KLOC Traditional projects often nance costs COBOL SF has required less than one. report errors beginning with function testing or person year per year for all maintenance and cus. later omitting errors found in private unit testing tomer support. I Table 1 Cleanroom Quality Results, 1987 Clemroom IBM Fll ht Control Helieopter Avionia System Component Certiflation testing failure nte 1 3 erron KLOC. Sortmn 33 KLOC Jmiai,Error fix rsduced Sx,Engineering. Clelnmom IBM COBOL Strudurlng Faality Pmdud for automatially IBM s flnt Clnnmom pmdud. restructuring COBOL programs CertifiaUon testing failure nk 3 4 errors KLOC. BS KLOC PL I,Pmdudivity 740 LOC PM, Deolmment failures 0 1 erron KLOC all simole flxes. NASA Satellite Control Project 1 Certification testing failure nk 4 5 ermrs KLOC. 40 KLOC FORTRAN 5 0 p m n t improvement In quality. Engineering,Pmdudivity 780 LOC PM, University of Tennessee Cleanmm tool Certifiatlon testing failure rate 3 0 errors KLOC.
I2 KLOC Ada,Sortware 1 1 KLOC FOXBASE, Certifiation testing failure nte 0 0 errors KLOC no. Engineering errors round, 1991 Cleanroom IBM System Software First compilation no errors found. W W k E First increment 0 6 KLOC C Certiflation W i n g failure nte 0 0 errors KLOC no. Engineering errors found, Partial C l e m m m IBM SWem Pmdud Tertini failure nte 1 6 errors KLOC. re Three ineremenIs total 107 KLOC mixed Ianguager Produdlvlty 486 LOC PM. Englneerlng, 1991 Cleanmom IBM Lanruare Product Testin failure rite 1 1 errors KLOC. I I sdhvlm I First in m t 11 9 KLOC PL X I,Englnacrlng I I.
9 9 1 I Partid Cleanmom, I IBM imam Comwnent I Fint compilation 5 syntax errors. Sortwan 3 5 KLOC c Certifiation testing failure rate 0 9 ermrs KLOC. Englneerlng, 1991 Cleanmom IBM Mnter Appliation Certiflation testing failure rite 5 1 ermn KLOC. sonware Fin Increment 6 7 KLOC Cl,Engineering, 1992 Puiial Cleanmom 1BM Knowledge Bued System Application Testins Failure Rate 3 5 errors KLOC. Sonware 17 8 KLOC TIRS,Englneerlng, 1991 Clemmm NASA Satellite Control Projear 18nd 3 Testing Failure Rate 4 2 errors KLOC. Sollwue 170 KLOC FORTRAN,Enuneering, 1993 Cleanman IBM Device Controller Certiflation testing Failure Rate 1 8 errors KLOC.
SOmnn Plrst inaemant 39 9 KLOC C,Engineering, 1993 Partial Cleanmom IBM Database Tnnsactlon Processor Testing FIilUn Rate 1 8 er KLOC. sort Fint increment 8 5 KLOC JOVIAL No d d p erron all simple fixes. Enuneering, 1993 Partial Cleanmom IBM LAN Software Testing Fdlure Rate 0 8 erron KLOC. soft Fint increment 4 8 KLOC C,Endneering, NASA Satellite Control Project 1 The Coarse Fine averages Some 60 of the programs compiled cor. Attitude Determination System CFADS of the rectly on the fust attempt. NASA Attitude Ground Support System AGSS, was the first Cleanroom project carried out by the Martin Marietta Automated Documentation System. Software Engineering Laboratory SEL of the A four person Cleanroom team developed the proto. NASA Goddard Space Flight Center SI The type of the Automated Production Control Doc. system comprised of 40 KLOC of FORTRAN umentation System a relational data base. exhibited a certification failure rate of 4 5 errors per application of 1820 lines programmed in FOXBASE. KLOC Productivity was 780 LOC per person No compilation errors were found and no failures. month an 80 improvement over previous SEL were encountered in statistical testing and quality. certification The software was certified at target. levels of reliability and confidence Team members IBM Knowledge Based System Application A five. attributed error free compilation and failure free person team developed a prototype knowledge based. testing to the rigor of the Cleanroom methodology system for the FAA Air Traffic Control System. lo The team reported a total of 63 errors for the 17 8. KLOC application for a rate of 3 5 errors KLOC, IBM System Software A four person Cleanroom The fact that Cleanroom errors tend to be simple.
team developed the first increment of a system soft mistakes was borne out by project experience only. ware product in C The increment of 0 6 KLOC two of the 63 errors were classified as severe and. compiled with no errors and underwent certification only five required design changes The team devel. through 130 statistical tests with no errors found oped a special design language for knowledge based. Subsequent use in another environment resulted in applications together with proof rules for correctness. one specification change verification, IBM System Product A Cleanroom organization of NASA Satellite Control Projects 2 and 3 A 20. 50 people developed a complex system software KLOC attitude determination subsystem of the. product The system written in PL I C REXX Solar Anomalous and Magnetospheric Particle. and TIRS was developed in three increments Explorer satellite flight dynamics system was the. totaling 107 KLOC with an average of 2 6 second Cleanroom project carried out by the Soft. errors KLOC found in testing 111 Causal analysis ware Engineering Laboratory of the NASA Goddard. of errors in the fust increment revealed that five of Space Flight Center The third project was a 150. its eight components experienced no errors whatso KLOC flight dynamics system for the ISTP. ever in testing The project reported development Wind Polar satellite These projects reported a com. team productivity of 486 LOC per person month bined error rate of 4 2 errors KLOC in testing 13. IBM Language Product A seven person Cleanroom IBM Device Controller A five person team devel. team developed an extension to a language product oped two increments of device controller design and. The first increment of 21 9 KLOC was up and microcode in 40 KLOC of C including 30 5 KLOC. cycling in less than half the time normally required of function deftnitions Box structure specification. and exhibited a certification error rate of 2 1 of chip set semantics revealed a number of hardware. errors KLOC in testing errors prior to any execution The multiple. processor bus architecture device processes multiple. IBM Image Product Component A 3 5 KLOC real time input and output data streams The. image product component was developed to com project reported a failure rate of 1 8 errors KLOC in. press and decompress data from a Joint Photo testing. graphic Expert Group JPEG data stream The, component exhibited three errors in testing all IBM Database Transaction Processor A five person. simple mistakes No additional errors have been team developed the first increment of a host based. found in subsequent use database transaction processor in 8 5 KLOC of. JOVIAL Rigorous use of correctness verification, IBM Printer Application An eleven member team resulted in a failure rate of 1 8 errors KLOC in. developed the first increment of a graphics layout testing with no design errors encountered The. editor in C under OS 2 Presentation Manager The team reported that correctness verification reviews. editor operates in a complex environment of vendor were far more effective in detecting errors than were. developed code that exports more than 1000 func traditional inspections. tions and uses many of the 800 functions of OS 2, PM The first increment of 6 7 KLOC exhibited a IBM LAN Software A four person team developed. rate of 5 1 errors KLOC in testing 12 All but 1 9 the first increment of a LAN based object server in. errors KLOC were attributed to the vendor code 4 8 KLOC of C resulting in a failure rate of 0 8. interface and PM and C misunderstandings errors KLOC in testing The team utilized a popular. case tool for recording specifications and designs. Cleanroom management by Incremental, development i n s t a l 1a t ion stubbed P M I l navigation.
Management planning and control in Cleanroom sign o f f. is based on developing and certifying a pipeline of. software increments that accumulate to the final, product The increments are developed and certified. pans1 primary functions,by small independent teams with teams of teams. f u n c t i on5,for large projects Determining the number and I. functional content of increments is an important task. driven by requirements schedule and resources,Functional content should be defined such that. increments accumulate to the h a l product for con. tinual integration execute in the system environment. for statistical usage testing and represent end to end. user function for quality certification Devel a p u n t l. An incremental development of a miniature inter Veriflcatlon. Pi pel ine, active application shown in Figure 1 together with.
corresponding development and certification pipe, lines Each increment is handed off from develop Stat i s t i cai. ment to certification pipelines in turn and results in Testing1. Certification, a new quality measurement in MTTF Early incre Pi Del i n e. ments that implement system architecture receive, more cumulative testing than later increments that. implement localized functions In this way major, architectural and design decisions are validated prior. to their elaboration at lower levels Figure 1 A Miniature Incremental Development. Clean room Software Engineering for Zero Defect Software Richard C Linger IBM Cleanroom Software Technology Center 100 Lakeforest Blvd Gaithersburg MD 20877 Abstract Cleanroom software engineering is a theory based team oriented process for developing very high quality software under statistical quality control Cleanroom

Related Books