CLEANROOM SOFTWARE ENGINEERING By Alan Spangler Presented By : Vamshi Krishna Merugu.

Slides:



Advertisements
Similar presentations
ASYCUDA Overview … a summary of the objectives of ASYCUDA implementation projects and features of the software for the Customs computer system.
Advertisements

Cleanroom Software Engineering A unique approach to software development.
CLEANROOM SOFTWARE ENGINEERING
Stepan Potiyenko ISS Sr.SW Developer.
Lecture 12 Reengineering Computer-aided Software Engineering Cleanroom Software Engineering.
Waterfall/Cleanroom Cyrus Shealy 10/03/2007. Requirements Understanding clients expectations is crucial for any software development project –Waterfall:
Cleanroom Engineering and the B-Method: A Comparison Drew Connelly.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Project Estimation Describe project scope, alternatives, feasibility.
Requirements - Why What and How? Sriram Mohan. Outline Why ? What ? How ?
Software Testing and Quality Assurance
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Software Development Overview CPSC 315 – Programming Studio Spring 2009.
Cleanroom: A Superior Software Development Process Jim Stambaugh 11/29/2006.
Instructor: Tasneem Darwish1 University of Palestine Faculty of Applied Engineering and Urban Planning Software Engineering Department Software Systems.
Software Development Overview CPSC 315 – Programming Studio Spring 2008.
Special Software Development Paradigms Today: HW #5 Next Class: Pressman 17; Demos? Questions? / Team Status Reports / HW#4 Object-Oriented Paradigm Bio.
Quality Management Systems: ISO 9001 BY MATTHEW FELTEN.
Andy Moyer. Cleanroom Software Engineering  What is it?  Goals  Properties of Cleanroom  Cleanroom Technologies  Case Studies  Critiques.
By: David Golke.  Introduction  Architecture Specification ◦ Requirements Analysis ◦ Function Specification ◦ Usage Specification ◦ Increment Planning.
Fundamental of Software Project Management Team Assignment 1 – K15T2 – Team 07.
Casey Ehlers April 28 th, Outline of Presentation 1. Background and History of Cleanroom 2. Who Uses Cleanroom Software Development? 3. Basics of.
Cleanroom Software Engineering Crystal Donald. Origins Developed by Dr. Harlan Mills in 1987 Developed by Dr. Harlan Mills in 1987 Name derived from hardware.
Software Integration and Documenting
CS 4310: Software Engineering
Formal Methods 1. Software Engineering and Formal Methods  Every software engineering methodology is based on a recommended development process  proceeding.
Extreme Programming Software Development Written by Sanjay Kumar.
Quality Assurance ITEC Rick Price. Expectations This course is not purely a lecture course – Classroom participation is a large portion – Everyone.
Software Project Management
CLEANROOM SOFTWARE ENGINEERING.
Software Project Management Introduction to Project Management.
Unit 8 Syllabus Quality Management : Quality concepts, Software quality assurance, Software Reviews, Formal technical reviews, Statistical Software quality.
Based on D. Galin, and R. Patton.  According to D. Galin  Software quality assurance is:  A systematic, planned set of actions necessary to provide.
Software Estimation and Function Point Analysis Presented by Craig Myers MBA 731 November 12, 2007.
©Ian Sommerville 2000, Mejia-Alvarez 2009 Slide 1 Software Processes l Coherent sets of activities for specifying, designing, implementing and testing.
Chapter 6 : Software Metrics
Extreme/Agile Programming Prabhaker Mateti. ACK These slides are collected from many authors along with a few of mine. Many thanks to all these authors.
This chapter is extracted from Sommerville’s slides. Text book chapter
Rapid software development 1. Topics covered Agile methods Extreme programming Rapid application development Software prototyping 2.
Introduction to Systems Analysis and Design
Software Testing and Quality Assurance Software Quality Assurance 1.
Cleanroom Software Engineering Getting it right the first time.
Software Development Overview CPSC 315 – Programming Studio Spring 2013.
SOFTWARE ENGINEERING1 Introduction. SOFTWARE ENGINEERING2 Software Q : If you have to write a 10,000 line program in C to solve a problem, how long will.
Anton Krbaťa Ján Budáč  Verification: "Are we building the product right ?„  Validation: "Are we building the right product ?"
Cmpe 589 Spring 2006 Lecture 2. Software Engineering Definition –A strategy for producing high quality software.
1 Chapter 26 Cleanroom Software Engineering Cleanroom Developed in early 80’s by Harlan Mills Reported very good results –reliable, high-quality.
1 These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 5/e and are provided with permission by.
Formal Methods in SE Software Verification Using Formal Methods By: Qaisar Javaid, Assistant Professor Formal Methods1.
SOFTWARE ENGINEERING. Objectives Have a basic understanding of the origins of Software development, in particular the problems faced in the Software Crisis.
Stand Up Comedy Project/Product Management
CS223: Software Engineering Lecture 4: Software Development Models.
1 Lecture 12: Chapter 16 Software Quality Assurance Slide Set to accompany Software Engineering: A Practitioner’s Approach, 7/e by Roger S. Pressman Slides.
Teaching slides Chapter 2. Chapter 2 Software Engineering Methodologies Introduction Why a methodology? Agile methodologies Waterfall model Rational Unified.
Project Management Quality Management. Introduction Project planning Gantt chart and WBS Project planning Network analysis I Project planning Network.
1 Advanced Computer Programming Project Management: Basics Copyright © Texas Education Agency, 2013.
©Ian Sommerville 2000Software Engineering, 6th edition. Chapter 19Slide 1 Verification and Validation l Assuring that a software system meets a user's.
SOFTWARE DEVELOPMENT Presented By : Emporiumtech This presentation is brought you by
Software Metrics and Reliability
Introduction Edited by Enas Naffar using the following textbooks: - A concise introduction to Software Engineering - Software Engineering for students-
Software Verification and Validation
The Systems Engineering Context
Introduction SOFTWARE ENGINEERING.
د. حنان الداقيز خريف /28/2016 Software Quality Assurance ضمان جودة البرمجيات ITSE421 5 – The components of the SQA.
Introduction Edited by Enas Naffar using the following textbooks: - A concise introduction to Software Engineering - Software Engineering for students-
Six Sigma. Six Sigma What is Six Sigma? Philosophy: We should work smarter, not harder. Business strategy: We gain a competitive edges in Quality,
Software life cycle models
Introducing ISTQB Agile Foundation Extending the ISTQB Program’s Support Further Presented by Rex Black, CTAL Copyright © 2014 ASTQB 1.
Chapter 13 Quality Management
Software Development Overview
Presentation transcript:

CLEANROOM SOFTWARE ENGINEERING By Alan Spangler Presented By : Vamshi Krishna Merugu

OVERVIEW o Introduction o Cleanroom Development process o Comparing Technologies o Software Development o Example o Reliability Certification o Project Management o Software Quality Achievement o Advantages o Conclusion

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 Team 2. Development Team 3. Certification Team 4. Documentation Team

CLEANROOM DEVELOPMENT PROCESS

COMPARING METHODOLOGIES CleanroomTraditional 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 view 2.State box view 3.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 MANAGEMENT  Both 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 MANAGEMENT  As 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