SlideShare a Scribd company logo
1 of 21
Download to read offline
Cleanroom Software Engineering



               Mr. M. E. Patil
                                   1
          S.S.B.T COET, Bambhori
The Cleanroom Process Model
                       increment #1

                                 Box Structure       Formal          Correctness          Code
                                 Specification       Design          Verification                        Statistical   Cerfification
                                                                                       Inspection
              Requirements                                                                                  Use
               Gathering                                                                                  Testing
                                                           Test Planning


  System
Engineering                        increment #2

                                                 Box Structure       Formal         Correctness            Code
                                                 Specification       Design         Verification                        Statistical    Cerfification
                                                                                                        Inspection
                             Requirements                                                                                  Use
                              Gathering                                                                                  Testing
                                                                           Test Planning



                                              increment #n
                                                                 Box Structure      Formal          Correctness           Code
                                                                 Specification      Design          Verification                        Statistical    Cerfification
                                                                                                                       Inspection
                                            Requirements                                                                                   Use
                                             Gathering                                                                                   Testing
                                                                                           Test Planning




                                                              Mr. M. E. Patil
                                                                                                                                                                       2
                                                         S.S.B.T COET, Bambhori
The Cleanroom Strategy-I
Increment Planning—adopts the incremental strategy
Requirements Gathering—defines a description of customer level
requirements (for each increment)
Box Structure Specification—describes the functional specification
Formal Design—specifications (called “black boxes”) are iteratively refined
(with an increment) to become analogous to architectural and procedural
designs (called “state boxes” and “clear boxes,” respectively).
Correctness Verification—verification begins with the highest level box
structure (specification) and moves toward design detail and code using a
set of “correctness questions.” If these do not demonstrate that the
specification is correct, more formal (mathematical) methods for
verification are used.
Code Generation, Inspection and Verification—the box structure
specifications, represented in a specialized language, are transmitted into
the appropriate programming language.


                                Mr. M. E. Patil
                                                                              3
                           S.S.B.T COET, Bambhori
The Cleanroom Strategy-II
Statistical Test Planning—a suite of test cases that exercise of “probability
distribution” of usage are planned and designed
Statistical Usage Testing—execute a series of tests derived from a
statistical sample (the probability distribution noted above) of all possible
program executions by all users from a targeted population
Certification—once verification, inspection and usage testing have been
completed (and all errors are corrected) the increment is certified as ready
for integration.




                                 Mr. M. E. Patil
                                                                                4
                            S.S.B.T COET, Bambhori
Box Structure Specification
                                                    CB1.1.1.1


black box
                            BB1.1.1     SB1.1.1     CB1.1.1.2
                                                                clear box

              BB1.1        BB1.1.2
                                                    CB1.1.1.3


        BB1                 BB1.1.3
              BB1.2




                                        state box



              BB1.n




                           Mr. M. E. Patil
                                                                            5
                      S.S.B.T COET, Bambhori
Box Structures
                                               State
                                                          T

S   f:S*       R           R

                                     S                 black box, g   R
    black box
                                                 state box


                      State
                                 T


                                         g12

           S         g11       cg1                       R
                                         g13


                           clear box
                           Mr. M. E. Patil
                                                                          6
                      S.S.B.T COET, Bambhori
Design Refinement & Verification
 If a function f is expanded into a sequence g and h, the correctness
 condition for all input to f is:
 •   Does g followed by h do f?
 When a function f is refined into a conditional (if-then-else), the
 correctness condition for all input to f is:
 • Whenever condition <c> is true does g do f and whenever <c> is false,
 does h do f?
 When function f is refined as a loop, the correctness conditions for all
 input to f is:
 •   Is termination guaranteed?
 • Whenever <c> is true does g followed by f do f, and whenever <c> is
 false, does skipping the loop still do f?




                                 Mr. M. E. Patil
                                                                            7
                            S.S.B.T COET, Bambhori
Advantages of Design Verification
   It reduces verification to a finite process.
   It lets cleanroom teams verify every line
    of design and code.
   It results in a near zero defect level.
   It scales up.
   It produces better code than unit testing.



                      Mr. M. E. Patil
                                                   8
                 S.S.B.T COET, Bambhori
Cleanroom Testing
 statistical use testing
    tests the actual usage of the program
 determine a “usage probability distribution”
    analyze the specification to identify a set of
     stimuli
    stimuli cause software to change behavior
    create usage scenarios
    assign probability of use to each stimuli
    test cases are generated for each stimuli
     according to the usage probability distribution



    Mr. M. E. Patil         S.S.B.T COET, Bambhori     9
Certification
1. Usage scenarios must be created.
2. A usage profile is specified.
3. Test cases are generated from the profile.
4. Tests are executed and failure data are
   recorded and analyzed.
5. Reliability is computed and certified.




                   Mr. M. E. Patil
                                                10
              S.S.B.T COET, Bambhori
Certification Models
Sampling model. Software testing executes m random test
           model.
cases and is certified if no failures or a specified numbers of
failures occur. The value of m is derived mathematically to
ensure that required reliability is achieved.
Component model. A system composed of n components is
to be certified. The component model enables the analyst to
determine the probability that component i will fail prior to
completion.
Certification model. The overall reliability of the system is
projected and certified.




                          Mr. M. E. Patil
                                                                  11
                     S.S.B.T COET, Bambhori
Reengineering




         Mr. M. E. Patil
                             12
    S.S.B.T COET, Bambhori
Business Process

• A set of logically related tasks performed to
  archive a defined business outcome
• With in the business process people ,
  equipments material resources and business
  procedures are combined to produce the
  specific result


                        Mr. M. E. Patil
                                                  13
                   S.S.B.T COET, Bambhori
• BPR is iterative process
• Business process goals and the processes that
  achive them must ne adapted tp a changing
  business environment
• There is no start and end of the BPR its is an
  evolutionary process


                        Mr. M. E. Patil
                                               14
                   S.S.B.T COET, Bambhori
Business
                           definition




                           Refinement
                                &
                          Instantiation

Prototyping




                                             Process
                                           identification
    Process
  Specification
   and Design


                          Process
                         Evaluation




                       Mr. M. E. Patil
                                                            15
                  S.S.B.T COET, Bambhori
BPR Principles
•   Organize around outcomes, not tasks.
•   Have those who use the output of the process perform the
    process.
•   Incorporate information processing work into the real work that
    produces the raw information.
•   Treat geographically dispersed resources as though they were
    centralized.
•   Link parallel activities instead of integrated their results. When
    different
•   Put the decision point where the work is performed, and build
    control into the process.
•   Capture data once, at its source.



                             Mr. M. E. Patil
                                                                         16
                        S.S.B.T COET, Bambhori
Software Reengineering
      fo rw ard                               inventory
    eng ineering                               analysis



     data                                           document
restructuring                                     restructuring


                                                 reverse
            code                               engineering
       res truc tu ring

                          Mr. M. E. Patil
                                                                  17
                     S.S.B.T COET, Bambhori
Inventory Analysis
 build a table that contains all applications
 establish a list of criteria, e.g.,
      name of the application
      year it was originally created
      number of substantive changes made to it
      total effort applied to make these changes
      date of last substantive change
      effort applied to make the last change
      system(s) in which it resides
      applications to which it interfaces, ...
 analyze and prioritize to select candidates for
  reengineering



                         Mr. M. E. Patil
                                                    18
                    S.S.B.T COET, Bambhori
Restructuring
 Document Restructuring
    options range from doing nothing to regeneration of
     all documentation for critical system
 Reverse Engineering
    the intent here is to achieve design recovery
 Code Restructuring
    rebuild spaghetti bowl code
 Data Restructuring
    data architecture




                        Mr. M. E. Patil
                                                           19
                   S.S.B.T COET, Bambhori
Reverse Engineering
     dirty source code




        restructure
           code




    clean source code       processing



         extract
       abstractions         interface




    initial specification   database


           refine
             &
          simplify




    final specification




           Mr. M. E. Patil
                                         20
      S.S.B.T COET, Bambhori
Forward Engineering
1. The cost to maintain one line of source code may be 20 to 40
times the cost of initial development of that line.
2. Redesign of the software architecture (program and/or data
structure), using modern design concepts, can greatly facilitate future
maintenance.
3. Because a prototype of the software already exists, development
productivity should be much higher than average.
4. The user now has experience with the software. Therefore, new
requirements and the direction of change can be ascertained with
greater ease.
5. CASE tools for reengineering will automate some parts of the job.
6. A complete software configuration (documents, programs and
data) will exist upon completion of preventive maintenance.


                               Mr. M. E. Patil
                                                                          21
                          S.S.B.T COET, Bambhori

More Related Content

Recently uploaded

Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseAnaAcapella
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17Celine George
 
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Pooja Bhuva
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - Englishneillewis46
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxAreebaZafar22
 
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...Nguyen Thanh Tu Collection
 
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Pooja Bhuva
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17Celine George
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxVishalSingh1417
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and ModificationsMJDuyan
 
How to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptxHow to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptxCeline George
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...pradhanghanshyam7136
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.christianmathematics
 
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptxHMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptxmarlenawright1
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxEsquimalt MFRC
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfPoh-Sun Goh
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxDenish Jangid
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfAdmir Softic
 

Recently uploaded (20)

Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please Practise
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - English
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
 
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
 
How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17How to Create and Manage Wizard in Odoo 17
How to Create and Manage Wizard in Odoo 17
 
Unit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptxUnit-V; Pricing (Pharma Marketing Management).pptx
Unit-V; Pricing (Pharma Marketing Management).pptx
 
Understanding Accommodations and Modifications
Understanding  Accommodations and ModificationsUnderstanding  Accommodations and Modifications
Understanding Accommodations and Modifications
 
How to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptxHow to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptx
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptxHMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
 
Micro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdfMicro-Scholarship, What it is, How can it help me.pdf
Micro-Scholarship, What it is, How can it help me.pdf
 
Spatium Project Simulation student brief
Spatium Project Simulation student briefSpatium Project Simulation student brief
Spatium Project Simulation student brief
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 

Featured

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by HubspotMarius Sescu
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTExpeed Software
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsPixeldarts
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthThinkNow
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfmarketingartwork
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 

Featured (20)

2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot2024 State of Marketing Report – by Hubspot
2024 State of Marketing Report – by Hubspot
 
Everything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPTEverything You Need To Know About ChatGPT
Everything You Need To Know About ChatGPT
 
Product Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage EngineeringsProduct Design Trends in 2024 | Teenage Engineerings
Product Design Trends in 2024 | Teenage Engineerings
 
How Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental HealthHow Race, Age and Gender Shape Attitudes Towards Mental Health
How Race, Age and Gender Shape Attitudes Towards Mental Health
 
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdfAI Trends in Creative Operations 2024 by Artwork Flow.pdf
AI Trends in Creative Operations 2024 by Artwork Flow.pdf
 
Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 

Smqa unit v

  • 1. Cleanroom Software Engineering Mr. M. E. Patil 1 S.S.B.T COET, Bambhori
  • 2. The Cleanroom Process Model increment #1 Box Structure Formal Correctness Code Specification Design Verification Statistical Cerfification Inspection Requirements Use Gathering Testing Test Planning System Engineering increment #2 Box Structure Formal Correctness Code Specification Design Verification Statistical Cerfification Inspection Requirements Use Gathering Testing Test Planning increment #n Box Structure Formal Correctness Code Specification Design Verification Statistical Cerfification Inspection Requirements Use Gathering Testing Test Planning Mr. M. E. Patil 2 S.S.B.T COET, Bambhori
  • 3. The Cleanroom Strategy-I Increment Planning—adopts the incremental strategy Requirements Gathering—defines a description of customer level requirements (for each increment) Box Structure Specification—describes the functional specification Formal Design—specifications (called “black boxes”) are iteratively refined (with an increment) to become analogous to architectural and procedural designs (called “state boxes” and “clear boxes,” respectively). Correctness Verification—verification begins with the highest level box structure (specification) and moves toward design detail and code using a set of “correctness questions.” If these do not demonstrate that the specification is correct, more formal (mathematical) methods for verification are used. Code Generation, Inspection and Verification—the box structure specifications, represented in a specialized language, are transmitted into the appropriate programming language. Mr. M. E. Patil 3 S.S.B.T COET, Bambhori
  • 4. The Cleanroom Strategy-II Statistical Test Planning—a suite of test cases that exercise of “probability distribution” of usage are planned and designed Statistical Usage Testing—execute a series of tests derived from a statistical sample (the probability distribution noted above) of all possible program executions by all users from a targeted population Certification—once verification, inspection and usage testing have been completed (and all errors are corrected) the increment is certified as ready for integration. Mr. M. E. Patil 4 S.S.B.T COET, Bambhori
  • 5. Box Structure Specification CB1.1.1.1 black box BB1.1.1 SB1.1.1 CB1.1.1.2 clear box BB1.1 BB1.1.2 CB1.1.1.3 BB1 BB1.1.3 BB1.2 state box BB1.n Mr. M. E. Patil 5 S.S.B.T COET, Bambhori
  • 6. Box Structures State T S f:S* R R S black box, g R black box state box State T g12 S g11 cg1 R g13 clear box Mr. M. E. Patil 6 S.S.B.T COET, Bambhori
  • 7. Design Refinement & Verification If a function f is expanded into a sequence g and h, the correctness condition for all input to f is: • Does g followed by h do f? When a function f is refined into a conditional (if-then-else), the correctness condition for all input to f is: • Whenever condition <c> is true does g do f and whenever <c> is false, does h do f? When function f is refined as a loop, the correctness conditions for all input to f is: • Is termination guaranteed? • Whenever <c> is true does g followed by f do f, and whenever <c> is false, does skipping the loop still do f? Mr. M. E. Patil 7 S.S.B.T COET, Bambhori
  • 8. Advantages of Design Verification  It reduces verification to a finite process.  It lets cleanroom teams verify every line of design and code.  It results in a near zero defect level.  It scales up.  It produces better code than unit testing. Mr. M. E. Patil 8 S.S.B.T COET, Bambhori
  • 9. Cleanroom Testing  statistical use testing  tests the actual usage of the program  determine a “usage probability distribution”  analyze the specification to identify a set of stimuli  stimuli cause software to change behavior  create usage scenarios  assign probability of use to each stimuli  test cases are generated for each stimuli according to the usage probability distribution Mr. M. E. Patil S.S.B.T COET, Bambhori 9
  • 10. Certification 1. Usage scenarios must be created. 2. A usage profile is specified. 3. Test cases are generated from the profile. 4. Tests are executed and failure data are recorded and analyzed. 5. Reliability is computed and certified. Mr. M. E. Patil 10 S.S.B.T COET, Bambhori
  • 11. Certification Models Sampling model. Software testing executes m random test model. cases and is certified if no failures or a specified numbers of failures occur. The value of m is derived mathematically to ensure that required reliability is achieved. Component model. A system composed of n components is to be certified. The component model enables the analyst to determine the probability that component i will fail prior to completion. Certification model. The overall reliability of the system is projected and certified. Mr. M. E. Patil 11 S.S.B.T COET, Bambhori
  • 12. Reengineering Mr. M. E. Patil 12 S.S.B.T COET, Bambhori
  • 13. Business Process • A set of logically related tasks performed to archive a defined business outcome • With in the business process people , equipments material resources and business procedures are combined to produce the specific result Mr. M. E. Patil 13 S.S.B.T COET, Bambhori
  • 14. • BPR is iterative process • Business process goals and the processes that achive them must ne adapted tp a changing business environment • There is no start and end of the BPR its is an evolutionary process Mr. M. E. Patil 14 S.S.B.T COET, Bambhori
  • 15. Business definition Refinement & Instantiation Prototyping Process identification Process Specification and Design Process Evaluation Mr. M. E. Patil 15 S.S.B.T COET, Bambhori
  • 16. BPR Principles • Organize around outcomes, not tasks. • Have those who use the output of the process perform the process. • Incorporate information processing work into the real work that produces the raw information. • Treat geographically dispersed resources as though they were centralized. • Link parallel activities instead of integrated their results. When different • Put the decision point where the work is performed, and build control into the process. • Capture data once, at its source. Mr. M. E. Patil 16 S.S.B.T COET, Bambhori
  • 17. Software Reengineering fo rw ard inventory eng ineering analysis data document restructuring restructuring reverse code engineering res truc tu ring Mr. M. E. Patil 17 S.S.B.T COET, Bambhori
  • 18. Inventory Analysis  build a table that contains all applications  establish a list of criteria, e.g.,  name of the application  year it was originally created  number of substantive changes made to it  total effort applied to make these changes  date of last substantive change  effort applied to make the last change  system(s) in which it resides  applications to which it interfaces, ...  analyze and prioritize to select candidates for reengineering Mr. M. E. Patil 18 S.S.B.T COET, Bambhori
  • 19. Restructuring  Document Restructuring  options range from doing nothing to regeneration of all documentation for critical system  Reverse Engineering  the intent here is to achieve design recovery  Code Restructuring  rebuild spaghetti bowl code  Data Restructuring  data architecture Mr. M. E. Patil 19 S.S.B.T COET, Bambhori
  • 20. Reverse Engineering dirty source code restructure code clean source code processing extract abstractions interface initial specification database refine & simplify final specification Mr. M. E. Patil 20 S.S.B.T COET, Bambhori
  • 21. Forward Engineering 1. The cost to maintain one line of source code may be 20 to 40 times the cost of initial development of that line. 2. Redesign of the software architecture (program and/or data structure), using modern design concepts, can greatly facilitate future maintenance. 3. Because a prototype of the software already exists, development productivity should be much higher than average. 4. The user now has experience with the software. Therefore, new requirements and the direction of change can be ascertained with greater ease. 5. CASE tools for reengineering will automate some parts of the job. 6. A complete software configuration (documents, programs and data) will exist upon completion of preventive maintenance. Mr. M. E. Patil 21 S.S.B.T COET, Bambhori