CSSE 433-341 Software Engineering Process and Practice Lecture 5 Q UALITY A SSURANCE.

Slides:



Advertisements
Similar presentations
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 27 Slide 1 Quality Management.
Advertisements

1.Quality-“a characteristic or attribute of something.” As an attribute of an item, quality refers to measurable characteristics— things we are able to.
Software Engineering 1. Software development – the grand view 2. Requirements engineering.
Stepan Potiyenko ISS Sr.SW Developer.
1 Software Testing and Quality Assurance Lecture 33 – Software Quality Assurance.
Overview Lesson 10,11 - Software Quality Assurance
Soft. Eng. II, Spr. 02Dr Driss Kettani, from I. Sommerville1 CSC-3325: Chapter 6 Title : The Software Quality Reading: I. Sommerville, Chap: 24.
Software Requirements
SE 555 Software Requirements & Specification Requirements Validation.
Chapter 24 - Quality Management 1Chapter 24 Quality management.
Chapter#7.  Part 1: Quality Management ◦ ƒ Understand the definition of quality and the different methodologies to provide quality ◦ ƒ Know quality management.
 QUALITY ASSURANCE:  QA is defined as a procedure or set of procedures intended to ensure that a product or service under development (before work is.
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 27 Slide 1 Quality Management 1.
Software Process and Product Metrics
Software Quality Assurance For Software Engineering && Architecture and Design.
Verification and Validation
Chapter 24 - Quality Management
CS 4310: Software Engineering
Software Quality SEII-Lecture 15
Software Project Management Fifth Edition
Introduction to Software Quality Assurance (SQA)
Managing Software Quality
COURSE TITLE: 1 Software Quality Assurance. Course Aims Introduction to software quality assurance. Software testing terminology. Role and responsibility.
S OFTWARE Q UALITY QA: Quality Assurance By: MSMZ.
 The software systems must do what they are supposed to do. “do the right things”  They must perform these specific tasks correctly or satisfactorily.
Quality Assurance ITEC Rick Price. Expectations This course is not purely a lecture course – Classroom participation is a large portion – Everyone.
CPIS 357 Software Quality & Testing I.Rehab Bahaaddin Ashary Faculty of Computing and Information Technology Information Systems Department Fall 2010.
Software Quality Assurance Activities
Software Quality Assurance Lecture 4. Lecture Outline ISO ISO 9000 Series of Standards ISO 9001: 2000 Overview ISO 9001: 2008 ISO 9003: 2004 Overview.
Sept - Dec w1d11 Beyond Accuracy: What Data Quality Means to Data Consumers CMPT 455/826 - Week 1, Day 1 (based on R.Y. Wang & D.M. Strong)
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.
Unit 8 Syllabus Quality Management : Quality concepts, Software quality assurance, Software Reviews, Formal technical reviews, Statistical Software quality.
Copyright © Jerzy R. Nawrocki ISO 9126 and Non-functional Requirements Requirements.
1 Software Testing and Quality Assurance Lecture 33 – Software Quality Assurance.
Software Quality Assurance SE Software Quality Assurance What is “quality”?
What is a Business Analyst? A Business Analyst is someone who works as a liaison among stakeholders in order to elicit, analyze, communicate and validate.
Software Quality : The Elusive Target
Creator: ACSession No: 15 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringFebruary 2006 Software Quality Assurance & Software Quality Control.
University of Palestine software engineering department Testing of Software Systems Testing throughout the software life cycle instructor: Tasneem.
Software Testing and Quality Assurance Software Quality Assurance 1.
About Quality Pre paired By: Muhammad Azhar. Scope What is Quality Quality Attributes Conclusion on software Quality Quality Concepts Quality Costs.
Chapter 12: Software Inspection Omar Meqdadi SE 3860 Lecture 12 Department of Computer Science and Software Engineering University of Wisconsin-Platteville.
Chapter 13: Software Quality Project Management Afnan Albahli.
Software Testing and Quality Assurance Software Quality Assurance 1.
1 Software Engineering: A Practitioner’s Approach, 6/e Chapter 15a: Product Metrics for Software Software Engineering: A Practitioner’s Approach, 6/e Chapter.
Software Engineering Modern Approaches Eric Braude and Michael Bernstein 1.
© Michael Crosby and Charles Sacker, 2001 Systematic Software Reviews Software reviews are a “quality improvement process for written material”.
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.
Chapter 4 Requirements Engineering (1/3) Yonsei University 2 nd Semester, 2015 Sanghyun Park.
Software Engineering, COMP201 Slide 1 Software Requirements BY M D ACHARYA Dept of Computer Science.
Software Project Management Lecture # 12. Outline Quality Management ( chapter 26 - Pressman )  SQA  Who does it?  SQA Activities  Software reviews.
by: Er. Manu Bansal Deptt of IT Software Quality Assurance.
Verification vs. Validation Verification: "Are we building the product right?" The software should conform to its specification.The software should conform.
1 Software Requirements Descriptions and specifications of a system.
 System Requirement Specification and System Planning.
ISQB Software Testing Section Meeting 10 Dec 2012.
TOTAL QUALITY MANAGEMENT
Software Quality Control and Quality Assurance: Introduction
Chapter 4 Requirements Engineering (1/3)
CSC 480 Software Engineering
Software Verification and Validation
Quality Management chapter 27.
SEVERITY & PRIORITY RELATIONSHIP
Lecture 15: Technical Metrics
Thursday’s Lecture Chemistry Building Musspratt Lecture Theatre,
Software Quality Assurance Lecture 3
Chapter 13 Quality Management
QA Reviews Lecture # 6.
Software Reviews.
Presentation transcript:

CSSE Software Engineering Process and Practice Lecture 5 Q UALITY A SSURANCE

Software Engineering Lecture 7: Quality Assurance 2 Semester 1, 2006 T OPICS C OVERED In this lecture we will be exploring the following two key ideas in quality: Quality and Quality Models - how do we deconstruct the idea of quality so that we can measure, monitor and control ‘quality’: This is the ‘Product View of Quality’ (Pfleeger pp 8.); Assurance - how confident are we that the final program or system meets our requirements and how do we guarantee that the final program ‘will’ meet our requirements;

Software Engineering Lecture 7: Quality Assurance 3 Semester 1, 2006 Q UALITY FOR E NGINEERS Ideally, for engineering we would like to be able to monitor, measure, evaluate and control quality! … But what is quality? Quality is considered simply too vague a concept to ‘engineer’. For engineering purposes we need to measure, monitor and control quality and so more quantifiable notions of quality are required.

Software Engineering Lecture 7: Quality Assurance 4 Semester 1, 2006 Q UALITY M ODELS Typically, a quality model is used to give a more precise and (where possible) specify the measurable properties of software quality. Quality models are based on the following idea: “Even if quality cannot be measured directly we can find a set of measurable properties of a system that imply quality”.

Software Engineering Lecture 7: Quality Assurance 5 Semester 1, 2006 E XERCISE Write down 5 aspects or properties that you believe show ‘High Quality Teaching’.

Software Engineering Lecture 7: Quality Assurance 6 Semester 1, 2006 K EY Q UESTIONS B EHIND Q UALITY Start to think about what the characteristics of a quality system might be. For example, should it: 1. Satisfy all explicit requirements, that is, should it be correct, complete and consistent with respect to explicit requirements? 2. Adhere to internal (organisational or project) and external standards imposed on the project, for example IEC61508 (safety), Rainbow standards (US Security), IEEE standards, internal company standards and if so, then to what extent? 3. Conform to our implicit notions of quality such as requirements for performance, reliability, usability, extendibility, safety and security? Note: Some factors may require more attention than others because of the problem domain, customer requirements or business necessity.

Software Engineering Lecture 7: Quality Assurance 7 Semester 1, 2006 T HE ISO9126 Q UALITY M ODEL CharacteristicsSub-Characteristics EfficiencyTime Behaviour Resource Utilization MaintainabilityAnalyseability Changeability Testability Stability PortabilityReplaceability Adaptability Installability Co-existence CharacteristicsSub-Characteristics FunctionalitySuitability Accuracy Interoperability Security ReliabilityFault Tolerance Maturity Recoverability UsabilityUnderstandability Learnability Operability Attractiveness

Software Engineering Lecture 7: Quality Assurance 8 Semester 1, 2006 O THER S OFTWARE Q UALITY A TTRIBUTES

Software Engineering Lecture 7: Quality Assurance 9 Semester 1, 2006 Q UALITY A SSURANCE Can you guarantee that your program has ‘quality’? It is difficult, if not impossible, to guarantee absolutely that we have meet the needs for which it was built (why?). The aim is to provide a high level of assurance - a high degree of confidence - that the resulting system will meet the needs for which it was built. Providing ASSURANCE that a system does meet the needs for which it was built means ensuring that the system meets a range of requirements coming from, for example: The Users and other Stakeholders; or The Operational Environment. An important factor that distinguishes Engineering from ad hoc development is the ability to exert control over the level of assurance achieved in a project – this is where process becomes important.

Software Engineering Lecture 7: Quality Assurance 10 Semester 1, 2006 Q UALITY A SSURANCE In practice, exerting this kind of control over quality and quality attributes (like those in ISO9126) requires that we build quality into the system starting at requirements stages. All the evidence that we have points to a situation where we cannot simply fix up our software post hoc and add in quality!

Software Engineering Lecture 7: Quality Assurance 11 Semester 1, 2006 A SSUMPTIONS A BOUT Q UALITY The Big Assumption About Quality The quality of the process determines the quality of the product. The reason for the assumption is that even with standards such as ISO9126 many of the attributes of software are hard to measure. However, there is a very complex and poorly understood relationship between software processes and product quality.

Software Engineering Lecture 7: Quality Assurance 12 Semester 1, 2006 Decide on what factors will deliver quality for your project and expend effort and resources on those factors (but don’t neglect the others). Decide on standards to follow and tailor the standards for your project for example, IEEE standard or IEC standards. Decide upon process metrics: for example, acceptable defect rates from inspections of code or inspections of designs. Decide on product metrics: For example the target reliability or performance estimates for you system. Don’t use inappropriate practices simply because standards have been established. P RACTICAL Q UALITY

Software Engineering Lecture 7: Quality Assurance 13 Semester 1, 2006 Standards are often a key part of the management of quality in a project – but not the only factor; Product standards define characteristics that all components should exhibit e.g. a common programming style. Process standards define how the software process should be enacted. S TANDARDS

Software Engineering Lecture 7: Quality Assurance 14 Semester 1, 2006 A UDITS, R EVIEWS, I NSPECTIONS AND W ALKTHROUGHS Technical reviews are aimed at uncovering problems in an artefact or seeking ways to improve the artefact. Audits aim to determine if a particular product or process conforms to standards.

Software Engineering Lecture 7: Quality Assurance 15 Semester 1, 2006 T YPES OF T ECHNICAL R EVIEW Technical Reviews - Management Method The aim is to evaluate a requirements, design, processes, code or other artifacts to provide evidence that it: Conforms to specifications; Is being created according to plans and standards; Changes are properly implemented; As a minimum, the review team explores the artifact to evaluate whether or not it is suitable for its purpose. Inspections – Management Method The aim is to detect and identify defects in requirements, designs, processes, code or other artifacts. Verify that the artifact meets its specification; Verify that the artifact meets the relevant standards; Identify where the artifact deviates from standards Collect defect data for measurement. Walkthroughs – Developer Method The aim is to evaluate requirements, design, processes, code or other artifacts to: Find defects, omissions and contradictions; Consider alternatives and to suggest alternatives; Exchange technical information;

Software Engineering Lecture 7: Quality Assurance 16 Semester 1, 2006 Consists of a Review Leader, Recorder and two or more Team Members. Project management is typically responsible for implementing the recommendations of the review. Input – A statement of Objectives, a Specification for the artefact, and the Artefact itself. Output – 1. Aims, objectives, specifications and artefact itself 2. A list of deficiencies in the artefact, a list of issues in the process and management of the artefact; 3. Action items, ownership for resolving the deficiencies and issues; and 4. Recommendations for disposing of the outstanding issues. T ECHNICAL R EVIEWS

Software Engineering Lecture 7: Quality Assurance 17 Semester 1, 2006 I NSPECTIONS Typically, a Moderator, a Reader, a Recorder, the Author(s) of the artefact, and two to three Inspectors. Inputs 1. A statement of Objectives, a Specification for the artefact, and the Artefact itself; 2. Inspection Checklist; 3. Standards and guidelines relevant to the engineering of the artefact; 4. Inspection and reporting forms. Outputs 1. A defect list containing a description of the defect, its location and the classification of the defect (E.g. Minor, Major, Critical). 2. A summary report of the inspection summarised by defect class or defect severity; 3. An Inspection Report.

Software Engineering Lecture 7: Quality Assurance 18 Semester 1, 2006 W ALKTHROUGHS Consists of a Moderator, Recorder, Author, and two or more Team Members. Inputs 1. A statement of Objectives, a Specification for the artefact, and the Artefact itself; 2. Standards and guidelines relevant to the engineering of the artefact; Outputs 1. A list of the objectives for this walk-through; 2. A list of the defects, omissions, contradictions and suggestions for improvement; 3. Recommendations for improving the artefact and the processes surrounding that artefact.