CIS 375 Bruce R. Maxim UM-Dearborn

Slides:



Advertisements
Similar presentations
1.Quality-“a characteristic or attribute of something.” As an attribute of an item, quality refers to measurable characteristics— things we are able to.
Advertisements

Formal Process of QA and quality related certifications Formal Process of QA and quality related certifications MIM 3 rd year – Sem V Abhishek Mishra –
Damian Gordon.  Static Testing is the testing of a component or system at a specification or implementation level without execution of the software.
More CMM Part Two : Details.
Software Project Management Lecture # 11. Outline Quality Management ( chapter 26 - Pressman )  Software reviews  Formal Inspections & Technical Reviews.
Formal Technical Reviews
These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 6/e (McGraw-Hill 2005). Slides copyright 2005 by Roger Pressman.1.
Software Quality Assurance
Overview Lesson 10,11 - Software Quality Assurance
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.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
SE 555 Software Requirements & Specification Requirements Validation.
Software Quality Assurance Instructor: Dr. Jerry Gao.
Software Quality Assurance
1 Software Inspections and Walkthroughs Author: A. Frank Ackerman Presented by Cynthia Johnson EEL6883.
OHT 4.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 Software Quality assurance (SQA) SWE 333 Dr Khalid Alnafjan
Overview Software Quality Software Quality and Quality Assurance
Software Quality Chapter Software Quality  How can you tell if software has high quality?  How can we measure the quality of software?  How.
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.
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 Inspections. Defect Removal Efficiency The number of defects found prior to releasing a product divided by The number of defects found prior.
Software Inspection A basic tool for defect removal A basic tool for defect removal Urgent need for QA and removal can be supported by inspection Urgent.
Software Quality Assurance
Unit 8 Syllabus Quality Management : Quality concepts, Software quality assurance, Software Reviews, Formal technical reviews, Statistical Software quality.
Chapter 8 Software Quality Assurance
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.
CS3100 Software Project Management Week 26 - Quality Dr Tracy Hall.
S Q A.
Software Project Management Lecture # 10. Outline Quality Management (chapter 26)  What is quality?  Meaning of Quality in Various Context  Some quality.
Software Project Management Lecture # 11. Outline Quality Management (chapter 26 - Pressman)  What is quality?  Meaning of Quality in Various Context.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill 2009). Slides copyright 2009 by Roger Pressman.1.
1 Software Quality Assurance. 2 Quality Concepts - 1 Variation control is the heart of quality control Software engineers strive to control the – process.
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.
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.
© Michael Crosby and Charles Sacker, 2001 Systematic Software Reviews Software reviews are a “quality improvement process for written material”.
Software Quality assurance SQA – SWE 333
Software Engineering Lecture 8: Quality Assurance.
1 Software Engineering: A Practitioner’s Approach, 6/e Chapter 26 Quality Management Software Engineering: A Practitioner’s Approach, 6/e Chapter 26 Quality.
CS223: Software Engineering Lecture 36: Software Quality.
1 Definition Introduction and key stages Steps and standards used Plan Team Characteristics Implementation documentation Reviews & Audit Software Quality.
1 Definition Quality costs Plan Team Characteristics Implementation documentation Reviews & Audit Software Quality Assurance.
These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill, 2009). Slides copyright 2009 by Roger Pressman.
Software Project Management Lecture # 12. Outline Quality Management ( chapter 26 - Pressman )  SQA  Who does it?  SQA Activities  Software reviews.
Software Reviews Ashima Wadhwa.
Software Configuration Management
Software Project Configuration Management
Software Quality Control and Quality Assurance: Introduction
Software Quality Assurance
Software Engineering (CSI 321)
CS223: Software Engineering
Formal Inspection Scenes
Software Configuration Management (SCM)
Software Quality Assurance
Software Quality Assurance
Chapter 21 Software Quality Assurance
Quality Quality is “a characteristic or attribute of something.”
Software Quality Assurance
Chapter 21 Software Quality Assurance
Lecture 12: Chapter 15 Review Techniques
Chapter 26 Quality Management
Quality Measurable characteristic Cyclomatic complexity Cohesion
Software Quality Assurance
Chapter 26 Quality Management
QA Reviews Lecture # 6.
Chapter # 1 Overview of Software Quality Assurance
Software Engineering: A Practitioner’s Approach, 6/e Chapter 26 Quality Management copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc. For.
Quality Management By Prakash G Asnani
Software Reviews.
3. Software Quality Management
Presentation transcript:

CIS 375 Bruce R. Maxim UM-Dearborn Software Reviews CIS 375 Bruce R. Maxim UM-Dearborn

Quality Concepts Variation control is the heart of quality control Software engineers strive to control the process applied resources expended end product quality attributes Quality of design refers to characteristics designers specify for the end product to be constructed

Quality Costs Prevention costs Appraisal costs Failure costs quality planning, formal technical reviews, test equipment, training Appraisal costs in-process and inter-process inspection, equipment calibration and maintenance, testing Failure costs rework, repair, failure mode analysis External failure costs complaint resolution, product return and replacement, help line support, warranty work

Software Quality Assurance Conformance to software requirements is the foundation from which software quality is measured. Specified standards are used to define the development criteria that are used to guide the manner in which software is engineered. Software must conform to implicit requirements (ease of use, maintainability, reliability, etc.) as well as its explicit requirements.

Software Reviews Purpose is to find defects (errors) before they are passed on to another software engineering activity or released to the customer. Software engineers (and others) conduct formal technical reviews (FTR) for software engineers. Using formal technical reviews (walkthroughs or inspections) is an effective means for improving software quality.

Review Roles Presenter (designer/producer). Coordinator (not person who hires/fires). Recorder records events of meeting builds paper trail Reviewers maintenance oracle standards bearer user representative others

Formal Technical Reviews - 1 Involves 3 to 5 people (including reviewers) Advance preparation (no more than 2 hours per person) required Duration of review meeting should be less than 2 hours Focus of review is on a discrete work product Review leader organizes the review meeting at the producer's request.

Formal Technical Reviews - 2 Reviewers ask questions that enable the producer to discover his or her own error (the product is under review not the producer) Producer of the work product walks the reviewers through the product Recorder writes down any significant issues raised during the review Reviewers decide to accept or reject the work product and whether to require additional reviews of product or not.

Why do peer reviews? To improve quality. Catches 80% of all errors if done properly. Catches both coding errors and design errors. Enforce the spirit of any organization standards. Training and insurance.

Formality and Timing Formal review presentations resemble conference presentations. Informal presentations less detailed, but equally correct. Early tend to be informal may not have enough information) Later tend to be more formal Feedback may come too late to avoid rework

Formality and Timing Analysis is complete. Design is complete. After first compilation. After first test run. After all test runs. Any time you complete an activity that produce a complete work product. Pair programming (driver and partner) can provide continuous review and integration during coding

Review Guidelines Keep it short (< 30 minutes). Don’t schedule two in a row. Don’t review product fragments. Use standards to avoid style disagreements. Let the coordinator run the meeting and maintain order.

What is an Inspection? Explicit Entry and Exit Criteria Individual preparation by inspectors Defined roles of Moderator, Reader, Producer and Recorder. Training for Moderators Use of Checklist Limitation of discussion to identification and classification of defects A requirement that successful completion of rework is necessary to complete inspection. Formal data collection, reporting and analysis (audit)

Software Safety SQA activity that focuses on identifying potential hazards that may cause a software system to fail. Early identification of software hazards allows developers to specify design features to can eliminate or at least control the impact of potential hazards. Software reliability involves determining the likelihood that a failure will occur without regard to consequences of failures.

Safety Reviews Intended system functions correct? Is structure maintainable and understandable? Verify algorithm and data structure design against specification Check code consistency with algorithm and data structure design Review adequacy of system testing

This course material was developed with NSF – TUES award # 1245036 Peer Reviews SRS Review Checklist This course material was developed with NSF – TUES award # 1245036

Review Exercise Work with a partner. You have 30 minutes to use the check list to review the SoftRight Hospital Management System SRS Write Y or N in checklist column three Add any notes in column four to help you understand your selection.

Review Debrief Did you have enough time? Would advance prepapration have helped? What problems did you find in the SRS? How would you fix them?