SlideShare ist ein Scribd-Unternehmen logo
1 von 32
Question
• Is it possible to build software without any
bug in it?
. Answer: Maybe, By using Cleanroom software development.
Causes for Bugs in Programs
• The main reasons for bugs in programs:
* Design flaws.
* Coding error.
* Other (including human related error).
human oriented (as he said dr.celal)
Cleanroom Software Engineering CSE: History
- 1983: Original idea of Cleanroom came from one of Dr. Harlan Mills’
published papers.
- 1987: Proposed by Dr. Mills as a SE methodology. The name
“Cleanroom” was borrowed from the electronics industry
- 1988: Defense Advanced Research Projects Agency (DARPA)
Software Technology for Adaptable Reliable Systems
(STARS) focus on Cleanroom.
- 1991-1992: Prototyping of Cleanroom Process Guide
- 1992: A book of CSE published, foundation of CSE
- 1992-1993: Army and Air Force Demonstration of Cleanroom
Technology.
- 1993-1994: Prototyping of Cleanroom tools
- 1995: Commercialization of a Cleanroom Certification Tool
-1995: Cleanroom and CMM (Capability Maturity Model) Consistency Review
Cleanroom Software Engineering
Cleanroom software engineering (CSE) is an
engineering process for the development of high
quality software with certified reliability with the
emphasis on design with no defects and test based
on software reliability engineering concepts.
• CSE focuses on defect prevention instead of defect
correction, and certification of reliability for the
intended environment of use.
Cleanroom Software Engineering
• CSE yields software that is correct by mathematically
sound design, and software that is certified by
statistically valid testing.
• CSE represents a paradigm shift from traditional,
craft-based SE practices to rigorous, engineering-
based practices.
CSE: Characteristics
Objective: Achieve zero defects with certified
reliability.
Focus: Defect prevention rather than defect
correction.
Process: Incremental (short) development
cycles; long product life.
Quality.
Most suitable for critical applications.
Increased Productivity.
Reduces Costs.
Comparison:
Craft-Based SE Cleanroom SE
Sequential or chaos development Incremental development
Informal design Disciplined engineering specification and
design
Unknown reliability Measured reliability
Individual development Peer reviewed engineering
Individual unit testing Team correctness verification
Informal load or coverage testing Statistical usage testing
CSE: Processes
• 1. Management process.
• 2. Specification process.
• 3. Development process.
• 4. Certification process.
CSE: Management Process
• Project Planning
Cleanroom engineering guide
Software development plan (incremental)
• Project Management
Project record
• Performance Improvement
Performance improvement plan
• Engineering Change
Engineering change log
CSE: Specification Process /1
• Requirements Analysis
• Elicitation(deriving) and analysis of requirements
• Define requirements for the software product
• Obtain agreement with the customer on the
requirements.
• Function Specification
• Base on the result of Requirements Analysis
Specify the complete functional behavior of the
software in all possible modes of use.
CSE: Specification Process /2
• Usage Specification
• Identify and classify software users, usage scenarios, and
environments of use (operational modes).
• Establish and analyze the probability distribution for
software usage models.
• Architecture Specification
• Define the conceptual model, the structural organization,
and the execution characteristics of the software.
• Architecture definition is a multi-level activity that spans
the life cycle.
CSE: Specification Process /3
• Increment Planning
• Allocate customer requirements defined in the
Function Specification to a series of software
increments that satisfy the Software
Architecture,
• Define schedule and resource allocations for
increment development and certification
• Obtain agreement with the customer on the
increment plan
CSE: Development Process
CSE: Certification Process
• Usage modeling and test planning
• A usage model represents a possible usage scenario of
the software
• Usage model is based on usage specification and is
used for testing
• Statistical Testing and Certification
• Testing is conducted in a formal statistical design under
experimental control.
• Management decisions on continuation of testing and
certification of the software are based on statistical
estimates of software quality.
Cleanroom Strategy /1
• Requirement gathering (RG)
• A detailed description of customer level requirements for
each increment.
• Box structure specification (BSS)
• Functional specification using box structure to separate
behavior, data and procedures.
• Formal design (FD)
Specifications (black boxes) are refined to become
analogous to architectural (state boxes) and procedural
(clear boxes) design.
Cleanroom Strategy /2
• Correctness verification (CV)
• A set of correctness verification activities on the design and
moves later to code. First level verification is via application of a set
of “correctness questions”.
• Code generation, inspection & verification (CG &CI)
The box structure transformed to a programming language.
Walkthrough and code inspection techniques are used to ensure
semantic conformance with the box structure.
Cleanroom Strategy /3
• Statistical test planning (TP)
• Planning the test based on operational modes, operational
profiles and reliability.
• Statistical use testing (SUT)
• Creating test case, execute them and collecting error data.
• Certification (C)
• Conducting certification test rather than reliability growth
to accept/reject developed software components (using
reliability demonstration chart, etc).
Box Structure /1
Box structures are used to move from an abstract specification to
a detailed design providing implementation details.
Box Structure /2
Black box
Specifies the behavior of a system or a part of a system.
The system responds to specific stimuli (events) by applying a set
of transition rules that map the stimuli to response.
(specifications ).
State box
Encapsulates state data and services (operations). Input to the
state box and outputs are represented. (architectural designs).
Clear box
Transition function that are implied by the state box. It contains
the procedural design of the state box. (component designs).
Example
• Automated Teller Machine (ATM)
• Requirements:
• The customer has a PIN number and access-card to use the ATM.
• The customer can deposit, withdraw money from the account.
• Transaction involves no bank employee.
Example: Usage Model
Example: Black Boxes
• Black boxes
• Card Processor
• In: ValidCard(cardNum)
• Out: showMessage(message)
Boolean
• Cash Dispenser
• In: enoughCashInMachine(amount)
dispenseCash(amount)
• Out: showMessage(message)
dispense(amount)
Boolean
• Transaction Manager
• In: ValidCustomer(cardNum, pin)
AmountLimit(amount)
EnoughCashInAccount(amount)
• Out: showMessage(message)
Boolean
Example: State Box
Example: Clear Box Spec
CSE: Team
• Specification team:
• Responsible for developing and maintaining the
system specification.
• Development team:
• Responsible for developing and verifying the
software.
• The software is not executed during this process.
• Certification team:
• Responsible for developing a set of statistical tests to
exercise the software after development.
• Use reliability growth models to assess reliability.
CSE: Evaluation
• Basic features of Cleanroom development that
distinguishes it from other SE methodologies
are:
• Formal specification (Box structure).
• Correctness verification.
• Statistical certification test.
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.
Conclusion:
• Cleanroom approach is a rigorous approach to
software engineering that has emphasis on:
• Formal specification.
• Mathematical verification of correctness of design.
• Certification of software reliability.
• Cleanroom approach is yet to become a common
practice in software development industry because
of emphasis on the above three points.
Resources
• Linger, R. and Trammel, C. (1996). Cleanroom.
• Software Engineering Reference Model Version 1.0.
• http://www.sei.cmu.edu/pub/documents/96.reports/pdf/tr022.
• 96.pdf
• Wolack, C. (2001). Taking The Art Out of Software
• Development – An In-Depth Review of Cleanroom.
• Software Engineering.
• http://www.scisstudyguides.addr.com/papers/cwdiss725paper
• 1.htm
• Pressmen and Associates (2000). Cleanroom.
• Engineering Resources.
• far@ucalgary.ca 83
• http://www.rspa.com/spi/cleanroom.html
Resources
• http://www.uta.edu/cse/levine/fall99/cse5324/cr/clean/page
1.html UTA.
• http://www.dacs.dtic.mil/databases/url/key.php?keycode=64
DACS.
• http://www.criticaljunction.com/werbicki/SENG623/Group/SE
NG623W03_Cleanroom.pdf
Any Question ?
Thank you
for your
listening and viewing.

Weitere ähnliche Inhalte

Was ist angesagt?

Software cost estimation techniques presentation
Software cost estimation techniques presentationSoftware cost estimation techniques presentation
Software cost estimation techniques presentationKudzai Rerayi
 
Chapter 6 software metrics
Chapter 6 software metricsChapter 6 software metrics
Chapter 6 software metricsdespicable me
 
Software process and project metrics
Software process and project metricsSoftware process and project metrics
Software process and project metricsIndu Sharma Bhardwaj
 
Software Testing Introduction
Software Testing IntroductionSoftware Testing Introduction
Software Testing IntroductionArunKumar5524
 
Internet Of Things (Question Paper) [October – 2018 | Choice Based Syllabus]
Internet Of Things (Question Paper) [October – 2018 | Choice Based Syllabus]Internet Of Things (Question Paper) [October – 2018 | Choice Based Syllabus]
Internet Of Things (Question Paper) [October – 2018 | Choice Based Syllabus]Mumbai B.Sc.IT Study
 
verification and validation
verification and validationverification and validation
verification and validationDinesh Pasi
 
Software testing methods, levels and types
Software testing methods, levels and typesSoftware testing methods, levels and types
Software testing methods, levels and typesConfiz
 
Software Quality Management
Software Quality ManagementSoftware Quality Management
Software Quality ManagementKrishna Sujeer
 
Software engineering critical systems
Software engineering   critical systemsSoftware engineering   critical systems
Software engineering critical systemsDr. Loganathan R
 
OO Metrics
OO MetricsOO Metrics
OO Metricsskmetz
 
Software Metrics - Software Engineering
Software Metrics - Software EngineeringSoftware Metrics - Software Engineering
Software Metrics - Software EngineeringDrishti Bhalla
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process ModelsAtul Karmyal
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality AssuranceSachithra Gayan
 
Ch 6 development plan and quality plan
Ch 6 development plan and quality planCh 6 development plan and quality plan
Ch 6 development plan and quality planKittitouch Suteeca
 
extreme Programming
extreme Programmingextreme Programming
extreme ProgrammingBilal Shah
 
Black box testing or behavioral testing
Black box testing or behavioral testingBlack box testing or behavioral testing
Black box testing or behavioral testingSlideshare
 
System testing ppt
System testing pptSystem testing ppt
System testing pptL ESHWAR
 
Lect2 conventional software management
Lect2 conventional software managementLect2 conventional software management
Lect2 conventional software managementmeena466141
 
Software design principles
Software design principlesSoftware design principles
Software design principlesRitesh Singh
 

Was ist angesagt? (20)

Software cost estimation techniques presentation
Software cost estimation techniques presentationSoftware cost estimation techniques presentation
Software cost estimation techniques presentation
 
Chapter 6 software metrics
Chapter 6 software metricsChapter 6 software metrics
Chapter 6 software metrics
 
Software process and project metrics
Software process and project metricsSoftware process and project metrics
Software process and project metrics
 
Software Testing Introduction
Software Testing IntroductionSoftware Testing Introduction
Software Testing Introduction
 
Internet Of Things (Question Paper) [October – 2018 | Choice Based Syllabus]
Internet Of Things (Question Paper) [October – 2018 | Choice Based Syllabus]Internet Of Things (Question Paper) [October – 2018 | Choice Based Syllabus]
Internet Of Things (Question Paper) [October – 2018 | Choice Based Syllabus]
 
verification and validation
verification and validationverification and validation
verification and validation
 
Software testing methods, levels and types
Software testing methods, levels and typesSoftware testing methods, levels and types
Software testing methods, levels and types
 
Software Quality Management
Software Quality ManagementSoftware Quality Management
Software Quality Management
 
Software engineering critical systems
Software engineering   critical systemsSoftware engineering   critical systems
Software engineering critical systems
 
OO Metrics
OO MetricsOO Metrics
OO Metrics
 
Software Metrics - Software Engineering
Software Metrics - Software EngineeringSoftware Metrics - Software Engineering
Software Metrics - Software Engineering
 
Software Process Models
Software Process ModelsSoftware Process Models
Software Process Models
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
 
Software testing
Software testing Software testing
Software testing
 
Ch 6 development plan and quality plan
Ch 6 development plan and quality planCh 6 development plan and quality plan
Ch 6 development plan and quality plan
 
extreme Programming
extreme Programmingextreme Programming
extreme Programming
 
Black box testing or behavioral testing
Black box testing or behavioral testingBlack box testing or behavioral testing
Black box testing or behavioral testing
 
System testing ppt
System testing pptSystem testing ppt
System testing ppt
 
Lect2 conventional software management
Lect2 conventional software managementLect2 conventional software management
Lect2 conventional software management
 
Software design principles
Software design principlesSoftware design principles
Software design principles
 

Andere mochten auch

Cleanroom clothing - Why, what and how?
Cleanroom clothing - Why, what and how?Cleanroom clothing - Why, what and how?
Cleanroom clothing - Why, what and how?Heidi Tuomi
 
Cost Comparison of Cleanroom Designs
Cost Comparison of Cleanroom DesignsCost Comparison of Cleanroom Designs
Cost Comparison of Cleanroom DesignsBrittany Berryman
 
Clean Room Opportunities
Clean Room OpportunitiesClean Room Opportunities
Clean Room OpportunitiesDIv CHAS
 
Cleanroom PODs with LifeAire Systems
Cleanroom PODs with LifeAire SystemsCleanroom PODs with LifeAire Systems
Cleanroom PODs with LifeAire SystemsBrittany Berryman
 
Trends of Modular Mobile Cleanroom Facilities
Trends of Modular Mobile Cleanroom FacilitiesTrends of Modular Mobile Cleanroom Facilities
Trends of Modular Mobile Cleanroom FacilitiesBrittany Berryman
 
Mold town presentation
Mold town presentationMold town presentation
Mold town presentationMark Chan
 
What is insert molding?
What is insert molding?What is insert molding?
What is insert molding?Dixien, LLC
 
Filters: The 4 Elements of Cleanroom Construction Part 1
Filters: The 4 Elements of Cleanroom Construction Part 1Filters: The 4 Elements of Cleanroom Construction Part 1
Filters: The 4 Elements of Cleanroom Construction Part 1AM Technical Solutions, Inc
 
Micro molding milling
Micro molding millingMicro molding milling
Micro molding millingMohit Ostwal
 
Classifications: The 4 Elements of Cleanroom Construction Part 3
Classifications: The 4 Elements of Cleanroom Construction Part 3Classifications: The 4 Elements of Cleanroom Construction Part 3
Classifications: The 4 Elements of Cleanroom Construction Part 3AM Technical Solutions, Inc
 
Challenges & Emerging Solutions through Micro Molding
Challenges & Emerging Solutions through Micro MoldingChallenges & Emerging Solutions through Micro Molding
Challenges & Emerging Solutions through Micro MoldingDesign World
 
pharmaceutical clean room
pharmaceutical clean room pharmaceutical clean room
pharmaceutical clean room Kiran Thakur
 
Cleanroom, Classification, Design and
Cleanroom, Classification, Design and Cleanroom, Classification, Design and
Cleanroom, Classification, Design and Ahmadreza Barazesh
 

Andere mochten auch (14)

Cleanroom clothing - Why, what and how?
Cleanroom clothing - Why, what and how?Cleanroom clothing - Why, what and how?
Cleanroom clothing - Why, what and how?
 
Cost Comparison of Cleanroom Designs
Cost Comparison of Cleanroom DesignsCost Comparison of Cleanroom Designs
Cost Comparison of Cleanroom Designs
 
Clean Room Opportunities
Clean Room OpportunitiesClean Room Opportunities
Clean Room Opportunities
 
Cleanroom PODs with LifeAire Systems
Cleanroom PODs with LifeAire SystemsCleanroom PODs with LifeAire Systems
Cleanroom PODs with LifeAire Systems
 
Trends of Modular Mobile Cleanroom Facilities
Trends of Modular Mobile Cleanroom FacilitiesTrends of Modular Mobile Cleanroom Facilities
Trends of Modular Mobile Cleanroom Facilities
 
Mold town presentation
Mold town presentationMold town presentation
Mold town presentation
 
What is insert molding?
What is insert molding?What is insert molding?
What is insert molding?
 
Filters: The 4 Elements of Cleanroom Construction Part 1
Filters: The 4 Elements of Cleanroom Construction Part 1Filters: The 4 Elements of Cleanroom Construction Part 1
Filters: The 4 Elements of Cleanroom Construction Part 1
 
Micro molding milling
Micro molding millingMicro molding milling
Micro molding milling
 
Classifications: The 4 Elements of Cleanroom Construction Part 3
Classifications: The 4 Elements of Cleanroom Construction Part 3Classifications: The 4 Elements of Cleanroom Construction Part 3
Classifications: The 4 Elements of Cleanroom Construction Part 3
 
Challenges & Emerging Solutions through Micro Molding
Challenges & Emerging Solutions through Micro MoldingChallenges & Emerging Solutions through Micro Molding
Challenges & Emerging Solutions through Micro Molding
 
Basic Cleanroom Protocol
Basic Cleanroom ProtocolBasic Cleanroom Protocol
Basic Cleanroom Protocol
 
pharmaceutical clean room
pharmaceutical clean room pharmaceutical clean room
pharmaceutical clean room
 
Cleanroom, Classification, Design and
Cleanroom, Classification, Design and Cleanroom, Classification, Design and
Cleanroom, Classification, Design and
 

Ähnlich wie Cleanroom montaser hamza iraq2016

Statistical test based model in software engineering
Statistical test based model in software engineeringStatistical test based model in software engineering
Statistical test based model in software engineeringyashpurohit2020
 
Software engineering jwfiles 3
Software engineering jwfiles 3Software engineering jwfiles 3
Software engineering jwfiles 3Azhar Shaik
 
Software development PROCESS
Software development PROCESSSoftware development PROCESS
Software development PROCESSIvano Malavolta
 
Software testing and introduction to quality
Software testing and introduction to qualitySoftware testing and introduction to quality
Software testing and introduction to qualityDhanashriAmbre
 
Software Development Life Cycle (SDLC )
Software Development Life Cycle (SDLC )Software Development Life Cycle (SDLC )
Software Development Life Cycle (SDLC )eshtiyak
 
System models of sdlc- v model
System models of sdlc- v modelSystem models of sdlc- v model
System models of sdlc- v modelMinal Kashyap
 
Software Engineering Lec 1-introduction
Software Engineering Lec 1-introductionSoftware Engineering Lec 1-introduction
Software Engineering Lec 1-introductionTaymoor Nazmy
 
Questions for successful test automation projects
Questions for successful test automation projectsQuestions for successful test automation projects
Questions for successful test automation projectsDaniel Ionita
 
Software engineering lecture notes
Software engineering lecture notesSoftware engineering lecture notes
Software engineering lecture notesSiva Ayyakutti
 
Testing documents
Testing documentsTesting documents
Testing documentssuhasreddy1
 
Software Testing Future and Challenges
Software Testing Future and ChallengesSoftware Testing Future and Challenges
Software Testing Future and ChallengesBakr Salim
 
Generic Software Process Models
Generic Software Process ModelsGeneric Software Process Models
Generic Software Process ModelsEducation Front
 

Ähnlich wie Cleanroom montaser hamza iraq2016 (20)

Statistical test based model in software engineering
Statistical test based model in software engineeringStatistical test based model in software engineering
Statistical test based model in software engineering
 
Software engineering jwfiles 3
Software engineering jwfiles 3Software engineering jwfiles 3
Software engineering jwfiles 3
 
Software development PROCESS
Software development PROCESSSoftware development PROCESS
Software development PROCESS
 
Software testing and introduction to quality
Software testing and introduction to qualitySoftware testing and introduction to quality
Software testing and introduction to quality
 
Software Development
Software DevelopmentSoftware Development
Software Development
 
Software Development Life Cycle (SDLC )
Software Development Life Cycle (SDLC )Software Development Life Cycle (SDLC )
Software Development Life Cycle (SDLC )
 
Software_Testing.pptx
Software_Testing.pptxSoftware_Testing.pptx
Software_Testing.pptx
 
System models of sdlc- v model
System models of sdlc- v modelSystem models of sdlc- v model
System models of sdlc- v model
 
Software Engineering Lec 1-introduction
Software Engineering Lec 1-introductionSoftware Engineering Lec 1-introduction
Software Engineering Lec 1-introduction
 
Unit 1.pdf
Unit 1.pdfUnit 1.pdf
Unit 1.pdf
 
Seminar on Project Management by Rj
Seminar on Project Management by RjSeminar on Project Management by Rj
Seminar on Project Management by Rj
 
Cost estamition
Cost estamitionCost estamition
Cost estamition
 
Requirements engineering
Requirements engineeringRequirements engineering
Requirements engineering
 
Questions for successful test automation projects
Questions for successful test automation projectsQuestions for successful test automation projects
Questions for successful test automation projects
 
Software engineering lecture notes
Software engineering lecture notesSoftware engineering lecture notes
Software engineering lecture notes
 
Testing documents
Testing documentsTesting documents
Testing documents
 
Gcs day1
Gcs day1Gcs day1
Gcs day1
 
Management (IP)
Management (IP)Management (IP)
Management (IP)
 
Software Testing Future and Challenges
Software Testing Future and ChallengesSoftware Testing Future and Challenges
Software Testing Future and Challenges
 
Generic Software Process Models
Generic Software Process ModelsGeneric Software Process Models
Generic Software Process Models
 

Kürzlich hochgeladen

(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...ranjana rawat
 
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Christo Ananth
 
result management system report for college project
result management system report for college projectresult management system report for college project
result management system report for college projectTonystark477637
 
KubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlyKubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlysanyuktamishra911
 
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...Call Girls in Nagpur High Profile
 
UNIT-III FMM. DIMENSIONAL ANALYSIS
UNIT-III FMM.        DIMENSIONAL ANALYSISUNIT-III FMM.        DIMENSIONAL ANALYSIS
UNIT-III FMM. DIMENSIONAL ANALYSISrknatarajan
 
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdfONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdfKamal Acharya
 
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Christo Ananth
 
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls in Nagpur High Profile
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...Call Girls in Nagpur High Profile
 
Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)simmis5
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escortsranjana rawat
 
Processing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxProcessing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxpranjaldaimarysona
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxupamatechverse
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls in Nagpur High Profile
 
Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations120cr0395
 
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Bookingdharasingh5698
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordAsst.prof M.Gokilavani
 

Kürzlich hochgeladen (20)

DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINEDJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
DJARUM4D - SLOT GACOR ONLINE | SLOT DEMO ONLINE
 
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
(PRIYA) Rajgurunagar Call Girls Just Call 7001035870 [ Cash on Delivery ] Pun...
 
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
Call for Papers - African Journal of Biological Sciences, E-ISSN: 2663-2187, ...
 
result management system report for college project
result management system report for college projectresult management system report for college project
result management system report for college project
 
KubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghlyKubeKraft presentation @CloudNativeHooghly
KubeKraft presentation @CloudNativeHooghly
 
(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7
(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7
(INDIRA) Call Girl Aurangabad Call Now 8617697112 Aurangabad Escorts 24x7
 
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...Booking open Available Pune Call Girls Pargaon  6297143586 Call Hot Indian Gi...
Booking open Available Pune Call Girls Pargaon 6297143586 Call Hot Indian Gi...
 
UNIT-III FMM. DIMENSIONAL ANALYSIS
UNIT-III FMM.        DIMENSIONAL ANALYSISUNIT-III FMM.        DIMENSIONAL ANALYSIS
UNIT-III FMM. DIMENSIONAL ANALYSIS
 
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdfONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
ONLINE FOOD ORDER SYSTEM PROJECT REPORT.pdf
 
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
Call for Papers - Educational Administration: Theory and Practice, E-ISSN: 21...
 
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service NashikCall Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
Call Girls Service Nashik Vaishnavi 7001305949 Independent Escort Service Nashik
 
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...Booking open Available Pune Call Girls Koregaon Park  6297143586 Call Hot Ind...
Booking open Available Pune Call Girls Koregaon Park 6297143586 Call Hot Ind...
 
Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)Java Programming :Event Handling(Types of Events)
Java Programming :Event Handling(Types of Events)
 
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur EscortsHigh Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
High Profile Call Girls Nagpur Isha Call 7001035870 Meet With Nagpur Escorts
 
Processing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptxProcessing & Properties of Floor and Wall Tiles.pptx
Processing & Properties of Floor and Wall Tiles.pptx
 
Introduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptxIntroduction and different types of Ethernet.pptx
Introduction and different types of Ethernet.pptx
 
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur EscortsCall Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
Call Girls Service Nagpur Tanvi Call 7001035870 Meet With Nagpur Escorts
 
Extrusion Processes and Their Limitations
Extrusion Processes and Their LimitationsExtrusion Processes and Their Limitations
Extrusion Processes and Their Limitations
 
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 BookingVIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
VIP Call Girls Ankleshwar 7001035870 Whatsapp Number, 24/07 Booking
 
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete RecordCCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
CCS335 _ Neural Networks and Deep Learning Laboratory_Lab Complete Record
 

Cleanroom montaser hamza iraq2016

  • 1.
  • 2. Question • Is it possible to build software without any bug in it? . Answer: Maybe, By using Cleanroom software development.
  • 3. Causes for Bugs in Programs • The main reasons for bugs in programs: * Design flaws. * Coding error. * Other (including human related error). human oriented (as he said dr.celal)
  • 4. Cleanroom Software Engineering CSE: History - 1983: Original idea of Cleanroom came from one of Dr. Harlan Mills’ published papers. - 1987: Proposed by Dr. Mills as a SE methodology. The name “Cleanroom” was borrowed from the electronics industry - 1988: Defense Advanced Research Projects Agency (DARPA) Software Technology for Adaptable Reliable Systems (STARS) focus on Cleanroom. - 1991-1992: Prototyping of Cleanroom Process Guide - 1992: A book of CSE published, foundation of CSE - 1992-1993: Army and Air Force Demonstration of Cleanroom Technology. - 1993-1994: Prototyping of Cleanroom tools - 1995: Commercialization of a Cleanroom Certification Tool -1995: Cleanroom and CMM (Capability Maturity Model) Consistency Review
  • 5. Cleanroom Software Engineering Cleanroom software engineering (CSE) is an engineering process for the development of high quality software with certified reliability with the emphasis on design with no defects and test based on software reliability engineering concepts. • CSE focuses on defect prevention instead of defect correction, and certification of reliability for the intended environment of use.
  • 6. Cleanroom Software Engineering • CSE yields software that is correct by mathematically sound design, and software that is certified by statistically valid testing. • CSE represents a paradigm shift from traditional, craft-based SE practices to rigorous, engineering- based practices.
  • 7. CSE: Characteristics Objective: Achieve zero defects with certified reliability. Focus: Defect prevention rather than defect correction. Process: Incremental (short) development cycles; long product life. Quality. Most suitable for critical applications. Increased Productivity. Reduces Costs.
  • 8. Comparison: Craft-Based SE Cleanroom SE Sequential or chaos development Incremental development Informal design Disciplined engineering specification and design Unknown reliability Measured reliability Individual development Peer reviewed engineering Individual unit testing Team correctness verification Informal load or coverage testing Statistical usage testing
  • 9. CSE: Processes • 1. Management process. • 2. Specification process. • 3. Development process. • 4. Certification process.
  • 10. CSE: Management Process • Project Planning Cleanroom engineering guide Software development plan (incremental) • Project Management Project record • Performance Improvement Performance improvement plan • Engineering Change Engineering change log
  • 11. CSE: Specification Process /1 • Requirements Analysis • Elicitation(deriving) and analysis of requirements • Define requirements for the software product • Obtain agreement with the customer on the requirements. • Function Specification • Base on the result of Requirements Analysis Specify the complete functional behavior of the software in all possible modes of use.
  • 12. CSE: Specification Process /2 • Usage Specification • Identify and classify software users, usage scenarios, and environments of use (operational modes). • Establish and analyze the probability distribution for software usage models. • Architecture Specification • Define the conceptual model, the structural organization, and the execution characteristics of the software. • Architecture definition is a multi-level activity that spans the life cycle.
  • 13. CSE: Specification Process /3 • Increment Planning • Allocate customer requirements defined in the Function Specification to a series of software increments that satisfy the Software Architecture, • Define schedule and resource allocations for increment development and certification • Obtain agreement with the customer on the increment plan
  • 15. CSE: Certification Process • Usage modeling and test planning • A usage model represents a possible usage scenario of the software • Usage model is based on usage specification and is used for testing • Statistical Testing and Certification • Testing is conducted in a formal statistical design under experimental control. • Management decisions on continuation of testing and certification of the software are based on statistical estimates of software quality.
  • 16. Cleanroom Strategy /1 • Requirement gathering (RG) • A detailed description of customer level requirements for each increment. • Box structure specification (BSS) • Functional specification using box structure to separate behavior, data and procedures. • Formal design (FD) Specifications (black boxes) are refined to become analogous to architectural (state boxes) and procedural (clear boxes) design.
  • 17. Cleanroom Strategy /2 • Correctness verification (CV) • A set of correctness verification activities on the design and moves later to code. First level verification is via application of a set of “correctness questions”. • Code generation, inspection & verification (CG &CI) The box structure transformed to a programming language. Walkthrough and code inspection techniques are used to ensure semantic conformance with the box structure.
  • 18. Cleanroom Strategy /3 • Statistical test planning (TP) • Planning the test based on operational modes, operational profiles and reliability. • Statistical use testing (SUT) • Creating test case, execute them and collecting error data. • Certification (C) • Conducting certification test rather than reliability growth to accept/reject developed software components (using reliability demonstration chart, etc).
  • 19. Box Structure /1 Box structures are used to move from an abstract specification to a detailed design providing implementation details.
  • 20. Box Structure /2 Black box Specifies the behavior of a system or a part of a system. The system responds to specific stimuli (events) by applying a set of transition rules that map the stimuli to response. (specifications ). State box Encapsulates state data and services (operations). Input to the state box and outputs are represented. (architectural designs). Clear box Transition function that are implied by the state box. It contains the procedural design of the state box. (component designs).
  • 21. Example • Automated Teller Machine (ATM) • Requirements: • The customer has a PIN number and access-card to use the ATM. • The customer can deposit, withdraw money from the account. • Transaction involves no bank employee.
  • 23. Example: Black Boxes • Black boxes • Card Processor • In: ValidCard(cardNum) • Out: showMessage(message) Boolean • Cash Dispenser • In: enoughCashInMachine(amount) dispenseCash(amount) • Out: showMessage(message) dispense(amount) Boolean • Transaction Manager • In: ValidCustomer(cardNum, pin) AmountLimit(amount) EnoughCashInAccount(amount) • Out: showMessage(message) Boolean
  • 26. CSE: Team • Specification team: • Responsible for developing and maintaining the system specification. • Development team: • Responsible for developing and verifying the software. • The software is not executed during this process. • Certification team: • Responsible for developing a set of statistical tests to exercise the software after development. • Use reliability growth models to assess reliability.
  • 27. CSE: Evaluation • Basic features of Cleanroom development that distinguishes it from other SE methodologies are: • Formal specification (Box structure). • Correctness verification. • Statistical certification test.
  • 28. 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.
  • 29. Conclusion: • Cleanroom approach is a rigorous approach to software engineering that has emphasis on: • Formal specification. • Mathematical verification of correctness of design. • Certification of software reliability. • Cleanroom approach is yet to become a common practice in software development industry because of emphasis on the above three points.
  • 30. Resources • Linger, R. and Trammel, C. (1996). Cleanroom. • Software Engineering Reference Model Version 1.0. • http://www.sei.cmu.edu/pub/documents/96.reports/pdf/tr022. • 96.pdf • Wolack, C. (2001). Taking The Art Out of Software • Development – An In-Depth Review of Cleanroom. • Software Engineering. • http://www.scisstudyguides.addr.com/papers/cwdiss725paper • 1.htm • Pressmen and Associates (2000). Cleanroom. • Engineering Resources. • far@ucalgary.ca 83 • http://www.rspa.com/spi/cleanroom.html
  • 31. Resources • http://www.uta.edu/cse/levine/fall99/cse5324/cr/clean/page 1.html UTA. • http://www.dacs.dtic.mil/databases/url/key.php?keycode=64 DACS. • http://www.criticaljunction.com/werbicki/SENG623/Group/SE NG623W03_Cleanroom.pdf
  • 32. Any Question ? Thank you for your listening and viewing.