Upload
derick-gilbert
View
212
Download
0
Embed Size (px)
Citation preview
CLEANROOM SOFTWARE ENGINEERING By Alan Spangler
Presented By : Vamshi Krishna Merugu
OVERVIEWo IntroductionoCleanroom Development processoComparing TechnologiesoSoftware DevelopmentoExampleoReliability Certification oProject ManagementoSoftware Quality Achievement oAdvantagesoConclusion
INTRODUCTION
The term ‘Cleanroom’ was derived from the semi-conductor industries. In the semiconductor industry, contaminant free environments called as cleanrooms are used to manufacture the silicon chips.The main goal of the cleanroom software engineering is to develop zero-defect software which is similar to the cleanroom approach followed by the semi-conductor industries.
INTRODUCTION
The Cleanroom software engineering adopts an incremental development. Software is developed in small increments which reduces the complexity in system.Cleanroom software engineering has a mathematical based approach to pursue their specifications and development process.
CLEANROOM DEVELOPMENT PROCESS
Cleanroom software development involves four team functions.
1. Specification Team2. Development Team3. Certification Team4. Documentation Team
CLEANROOM DEVELOPMENT PROCESS
COMPARING METHODOLOGIES
Cleanroom Traditional
•Team operations•Incremental development•Defect prevention•Team correctness verification•Developer testing
•Individual operations•Waterfall development•Defect correction•Individual debugging•Independent test team
Software Development
Cleanroom software engineering uses ‘box structures’ approach to develop a software system. This approach is the frequently used mathematical model in developing the software system.In box structure, three different views are expressed.1.Black box view2.State box view3.Clear box view
EXAMPLE
RELIABILITY CERTIFICATION The primary form of testing in cleanroom is ‘usage testing’.A statistical model is applied to usage testing results to estimate the product’s reliability.The metric calculated is called “Mean Time To Failure”(MTTF) which is measured in terms of units.For a database product, MTTF could be measured in terms of number of transactions processed successfully.
PROJECT MANAGEMENTBoth managerial and intellectual is maintained by doing things on a small scale as well as through team work.The team concept is fundamental in Cleanroom.Developing and testing is conducted by teams that are restricted to a maximum of 8 in a team when feasible.The teams provide technical and leadership skills, cross training and reduce communications and bureaucratic overhead.
PROJECT MANAGEMENTAs said earlier, incremental development process is used in cleanroom which provides several benefits.Increments are cumulative, each increment includes all previous work plus some new work.
For each increment, schedule, budget, quality and productivity goals are set.
This way they have ample of time to make needed process changes for subsequent increments. This paradigm embodies the fundamental activities of quality control, measure, feedback, and correction action.
Software Quality Achievement through Cleanroom
Cleanroom looks like unattainable, however, many cleanroom teams have used it successfully.The teams have built a total of nearly 2 millions lines of extremely high quality software during the past decade, while maintaining high productivity rates.
Software Quality Achievement through Cleanroom
ADVANTAGES
High Quality: Statistical usage testing tends to find errors early in testing. As a result any errors in customer use tend to be low-rate, if found they can be easily fixed.
Reduced Maintenance Cost: Because of the quality of the product, the required maintenance activities also becomes less which indirectly reduces the maintenance costs.
CONCLUSION
Cleanroom software engineering not only produce the software with zero defects, but also to certify the reliability of software and to develop products with ultrahigh quality within the provided budget and schedule.
QUESTIONS?
THANK YOU