Se presentation


Published on

clean room software engineering

Published in: Technology, Business
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Se presentation

  1. 1. -Suhas Nayak
  2. 2. What is it? Formal design and requirements methods + Statistical Usage Testing ______________________________ Little or No Defects
  3. 3. Why Cleanroom? O Quality O Most suitable for critical applications O Increased Productivity O Reduces Costs
  4. 4. Cleanroom Methodology O Requirements Analysis O High-level Design O Detailed Design O Coding by increment O Pretest by increment O Statistical Testing by increment
  5. 5. Incremental Development Cycle O Early and continual quality assessment O Increased user feedback O Repair any process related problems O Allow requirements changes
  6. 6. Formal specification Develop s/w increment Establish rerquirements Deliver software Frozen specification Requirements change request
  7. 7. Cleanroom Principles - part 1 O Small teams O independent specification, development, and certification sub-teams O Incremental development under statistical quality control O performance assessed during each increment using measure like number of sequential error- free test cases O feedback is used for process improvement and the development plan is adjusted as needed
  8. 8. Cleanroom Process Teams O Specification team O develops and maintains the system specification O Development team O develops and verifies software O the software is not compiled or executes during verification O Certification team O develops set of statistical test to exercise software after development O reliability growth models used to assess reliability
  9. 9. Cleanroom Principles - part 2 O Software development based on mathematical principles O the box principle is used for specification and design O formal verification is used to confirm correctness of implementation of specification O program correctness is verified by team reviews using questionnaires O Testing based on statistical principles O operational usage profiles needed O test cases are randomly generated from the usage model O failure data is interpreted using statistical models
  10. 10. Functional Specification Modeling approach in cleanroom software engineering uses a method called box structure specification OBlack Box OState Box OClear Box
  11. 11. Fig: Box Structure Refinement BB1 BB 1.1 BB1.2 BB1.n BB.1.1.1 BB1.1.2 BB1.1.3 SB1.1.1 CB1.1.1.1 CB1.1.1.2 CB1.1.1.3
  12. 12. Cleanroom Strategy - part 1 O Increment planning. O The project plan is built around the incremental strategy. O Requirements gathering. O Customer requirements are elicited and refined for each increment using traditional methods. O Box structure specification. O Box structures isolate and separate the definition of behavior, data, and procedures at each level of refinement.
  13. 13. Cleanroom Strategy - part 2 O Formal design. O Specifications (black-boxes) are iteratively refined to become architectural designs (state-boxes) and component-level designs (clear boxes). O Correctness verification. O Correctness questions are asked and answered, formal mathematical verification is used as required.
  14. 14. Cleanroom Strategy - part 3 O Code generation, inspection, verification. O Box structures are translated into program language; inspections are used to ensure conformance of code and boxes, as well as syntactic correctness of code; followed by correctness verification of the code. O Statistical test planning. O A suite of test cases is created to match the probability distribution of the projected product usage pattern.
  15. 15. Cleanroom Strategy - part 4 O Statistical use testing. O A statistical sample of all possible test cases is used rather than exhaustive testing. O Certification. O Once verification, inspection, and usage testing are complete and all defects removed, the increment is certified as ready for integration.
  16. 16. Cleanroom Process Overview Construct structured program Define software increments Formally verify code Integrate increment Formally specify system Develop operational profile Design statistical tests Test integrated system Error rework
  17. 17. Conclusion O Key Characteristics of Cleanroom SE O Incremental Development Life Cycle O Defect Prevention: Quality Assessment thru Statistical Testing O Disciplined SE methods required to create correct, verifiable software
  18. 18. Resources O Software Engineering – Roger S Pressman O www.suhas-angelus/
  19. 19. Question Time!!