UNIT-6 SOFTWARE QUALITY ASSURANCE

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

Software Quality Assurance Plan
More CMM Part Two : Details.
Overview Lesson 10,11 - Software 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.
University of Sunderland CIFM03Lecture 1 1 Quality Management of IT CIFM03 Introduction.
Chapter 24 - Quality Management 1Chapter 24 Quality management.
Quality Manual for Interoperability Testing Morten Bruun-Rasmussen Presented by Jos Devlies, Eurorec.
Software Quality Assurance
Purpose of the Standards
CSEB233 Fundamentals of Software Engineering
Chapter 24 - Quality Management
Software Project Management
Chapter 16 Software Quality Assurance
CSEB233 Fundamentals of Software Engineering Module 7: Software Quality Management Badariah Solemon 2010.
Software Project Management
Chapter 16 Software Quality Assurance
UNIT-II Chapter : Software Quality Assurance(SQA)
Introduction to Software Quality Assurance (SQA)
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
CSEB233: Fundamentals of Software Engineering Software Quality Management.
Software Quality Assurance Activities
Unit 8 Syllabus Quality Management : Quality concepts, Software quality assurance, Software Reviews, Formal technical reviews, Statistical Software quality.
Lecture #9 Project Quality Management Quality Processes- Quality Assurance and Quality Control Ghazala Amin.
Introduction to Software Engineering LECTURE 2 By Umm-e-Laila 1Compiled by: Umm-e-Laila.
S Q A.
Software Project Management Lecture # 10. Outline Quality Management (chapter 26)  What is quality?  Meaning of Quality in Various Context  Some quality.
This chapter is extracted from Sommerville’s slides. Text book chapter
Georgia Institute of Technology CS 4320 Fall 2003.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
Chapter : 16 Software Quality Assurance
Software Quality Assurance SOFTWARE DEFECT. Defect Repair Defect Repair is a process of repairing the defective part or replacing it, as needed. For example,
1 Project Management C53PM Session 3 Russell Taylor Staff Work-base – 1 st Floor
Quality Issues. These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 7/e (McGraw-Hill, 2009). Slides copyright 2009.
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.
Software reviews Cost impact of software defects Defect amplification model Review metrics and their use – Preparation effort (E p ), assessment effort.
Pertemuan 14 Matakuliah: A0214/Audit Sistem Informasi Tahun: 2007.
1 Software Engineering: A Practitioner’s Approach, 6/e Chapter 26 Quality Management Software Engineering: A Practitioner’s Approach, 6/e Chapter 26 Quality.
Alex Ezrakhovich Process Approach for an Integrated Management System Change driven.
by: Er. Manu Bansal Deptt of IT Software Quality Assurance.
Software Engineering Process - II 7.1 Unit 7: Quality Management Software Engineering Process - II.
Introduction for the Implementation of Software Configuration Management I thought I knew it all !
Software Quality Control and Quality Assurance: Introduction
Software Quality Management
Software Engineering (CSI 321)
CS223: Software Engineering
Software Quality Assurance
Software Project Management
Quality Management chapter 27.
Software Project Management
Software Quality Assurance
Software Engineering (CSI 321)
Chapter 21 Software Quality Assurance
د. حنان الداقيز خريف /28/2016 Software Quality Assurance ضمان جودة البرمجيات ITSE421 5 – The components of the SQA.
UNIT-6 SOFTWARE QUALITY ASSURANCE
CMMI – Staged Representation
Air Carrier Continuing Analysis and Surveillance System (CASS)
Software Quality Assurance
Chapter 21 Software Quality Assurance
Engineering Processes
Chapter 26 Quality Management
Chapter 13 Quality Management
Quality Measurable characteristic Cyclomatic complexity Cohesion
Software Quality Assurance
Chapter 26 Quality Management
Engineering Processes
Project Management Group
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
3. Software Quality Management
Presentation transcript:

UNIT-6 SOFTWARE QUALITY ASSURANCE Prepared By: Asst. Prof. Garima Pathak

Index Elements of Software Quality Assurance(SQA) SQA - need, tasks, goals, metrics Statistical software quality assurance Six sigma for software engineering SQA planning and standards ISO quality standards

Introduction to Software Quality Assurance [SQA]: Software quality assurance (SQA) encompasses: (1) an SQA process, (2) specific quality assurance and quality control tasks (including technical reviews and a multi-tiered testing strategy) (3) effective software engineering practice (methods and tools) (4) control of all software work products and the changes made to them (5) a procedure to ensure compliance with software development standards (when applicable) (6) measurement and reporting mechanisms.

Elements of Software Quality Assurance[sqa] Software quality assurance encompasses a broad range of concerns and activities that focus on the management of software quality. Ten Elements of SQA are in the following manner: Standards Reviews and audits Testing Error/defect collection and analysis Change management Education Vendor management Security management Safety Risk management

Elements of Software Quality Assurance[sqa] 1. Standards: The job of SQA is to ensure that standards that have been adopted are followed and that all work products conform to them. 2. Reviews and audits: Technical reviews are a quality control activity. Their intent is to uncover errors. Audits are a type of review performed by SQA personnel with the intent of ensuring that quality guidelines are being followed for software engineering work. 3. Testing: The job of SQA is to ensure that testing is properly planned and efficiently conducted so that it has the highest likelihood of achieving its primary goal.

Elements of Software Quality Assurance[sqa] 4. Error/defect collection and analysis: SQA collects and analyzes error and defect data to better understand how errors are introduced and what software engineering activities are best suited to eliminating them. 5. Change management: SQA ensures that adequate change management practices have been instituted. 6. Education: The SQA organization takes the lead in software process improvement and is a key proponent and sponsor of educational programs. 7. Vendor management: The job of the SQA organization is to ensure that high-quality software results by suggesting specific quality practices that the vendor should follow (when possible), and incorporating quality mandates as part of any contract with an external vendor.

Elements of Software Quality Assurance[sqa] 8. Security management: SQA ensures that appropriate process and technology are used to achieve software security. 9. Safety: SQA may be responsible for assessing the impact of software failure and for initiating those steps required to reduce risk. 10. Risk management: Although the analysis and mitigation of risk is the concern of software engineers, the SQA organization ensures that risk management activities are properly conducted and that risk- related contingency plans have been established.

SQA - need, activities, tasks, goals, metrics Quality Assurance testing is employed to reduce possible defects in every stage of the software development life cycle. The focus of [Software Quality Assurance] is to monitor continuously throughout the Software Development Life Cycle to ensure the quality of the delivered products. In process assurance, SQA provides management with objective feedback regarding compliance to approved plans, procedures, standards, and analyses.

SQA - need, activities, tasks, goals, metrics SQA Tasks: These actions are performed (or facilitated) by an independent SQA group that: Prepares an SQA plan for a project: The plan identifies evaluations to be performed, audits and reviews to be conducted, standards that are applicable to the project, procedures for error reporting and tracking, work products that are produced by the SQA group. Participates in the development of the project’s software process description. The SQA group reviews the process description for compliance with organizational policy, internal software standards, externally imposed standards (e.g., ISO-9001), and other parts of the software project plan.

SQA - need, activities, tasks, goals, metrics Reviews software engineering activities to verify compliance with the defined software process: The SQA group identifies, documents, and tracks deviations from the process and verifies that corrections have been made. Audits designated software work products to verify compliance with those defined as part of the software process: The SQA group reviews selected work products; identifies, documents, and tracks deviations; verifies that corrections have been made; and periodically reports the results of its work to the project manager. Ensures that deviations in software work and work products are documented and handled according to a documented procedure:Deviations may be encountered in the project plan, process description, applicable standards, or software engineering work products.

SQA - need, activities, tasks, goals, metrics Records any noncompliance and reports to senior management: Noncompliance items are tracked until they are resolved. SQA Goal, Attribute and Metrics: SQA Goals: Following are SQA Goals: Requirements quality. Design quality. Code quality. Quality control effectiveness.

SQA - need, activities, tasks, goals, metrics SQA Attributes and metrics: Below table identifies the attributes that are indicators for the existence of quality for each of the goals discussed.

SQA - need, activities, tasks, goals, metrics SQA Attributes and metrics:

Statistical Software Quality Assurance Statistical quality assurance reflects a growing trend throughout industry to become more quantitative about quality. For software, statistical quality assurance implies the following steps: 1. Information about software errors and defects is collected and categorized. 2. An attempt is made to trace each error and defect to its underlying cause (e.g., nonconformance to specifications, design error, violation of standards, poor communication with the customer). 3. Using the Pareto principle (80 percent of the defects can be traced to 20 per-cent of all possible causes), isolate the 20 percent (the vital few). 4. Once the vital few causes have been identified, move to correct the problems that have caused the errors and defects.

Six Sigma for Software Engineering Six Sigma is the most widely used strategy for statistical quality assurance in industry today. Originally popularized by Motorola in the 1980s, the Six Sigma strategy “is an accurate and disciplined methodology that uses data and statistical analysis to measure and improve a company’s operational performance by identifying and eliminating defects’ in manufacturing and service-related processes”. The term Six Sigma is derived from six standard deviations—3.4 instances (defects) per million occurrences—implying an extremely high quality standard. The Six Sigma methodology defines three core steps: Define: customer requirements and deliverables and project goals via well-defined methods of customer communication. Measure: the existing process and its output to determine current quality performance (collect defect metrics). Analyze: defect metrics and determine the vital few causes.

Six Sigma for Software Engineering If an existing software process is in place, but improvement is required, Six Sigma suggests two additional steps: Improve: the process by eliminating the root causes of defects. Control: the process to ensure that future work does not reintroduce the causes of defects. These core and additional steps are sometimes referred to as the DMAIC (define, measure, analyze, improve, and control) method.

Six Sigma for Software Engineering If an organization is developing a software process (rather than improving an existing process), the core steps are augmented as follows: Design: the process to (1) avoid the root causes of defects and (2) to meet customer requirements. Verify: that the process model will, in fact, avoid defects and meet customer requirements. This variation is sometimes called the DMADV (define, measure, analyze, design, and verify) method.

Six Sigma for Software Engineering

SQA Planning and Standards Quality planning is the process of developing a quality plan for a project. The quality plan should set out the desired software qualities and describe how these are to be assessed. The SQA Plan provides a road map for instituting software quality assurance. Developed by the SQA group (or by the software team if an SQA group does not exist), the plan serves as a template for SQA activities that are instituted for each software project.

SQA Planning and Standards A standard for SQA plans has been published by the IEEE. The standard recommends a structure that identifies: (1) The purpose and scope of the plan (2) A description of all software engineering work products (e.g., models, documents, source code) that fall within the purview of SQA (3) All applicable standards and practices that are applied during the software process (4) SQA actions and tasks including reviews and audits) and their placement throughout the software process (5) The tools and methods that support SQA actions and tasks (6) Software configuration management procedures (7) Methods for assembling, safeguarding, and maintaining all SQA- related records (8) Organizational roles and responsibilities relative to product quality

SQA Planning and Standards In the quality plan, you should therefore define the most important quality attributes for the software that is being developed. [Table of Quality Attributes]

SQA Planning and Standards The QA process is primarily concerned with defining or selecting standards that should be applied to the software development process or software product. The two types of standards that may be established as part of the quality assurance process are: 1. Product standards: These standards apply to the software product being developed. They include document standards, such as the structure of requirements documents; documentation standards, such as a standard comment header for an object class definition; and coding standards that define how a programming language should be used. 2. Process standards: These standards define the processes that should be followed during software development.

SQA Planning and Standards [Table of Product and Process Standards]

ISO Quality Standards An international set of standards that can be used in the development of a quality management system in all industries is called ISO 9000. ISO 9000 standards can be applied to a range of organisations from manufacturing to service industries. ISO 9001 is the most general of these standards and applies to organisations concerned with the quality process in organisations that design, develop and maintain products.

ISO Standards/ ISO 9126

ISO Standards/ ISO 9126

ISO Standards/ ISO 9126 ISO 9126 provides guidelines for the use of the quality characteristics. Once the requirements for the software product have been established, the following steps are suggested: 1. Judge the importance of each quality characteristic for the application: 2. Select the external quality measurements within the ISO 9126 framework relevant to the qualities prioritized above:

ISO Standards/ ISO 9126 3. Map measurements onto ratings that reflect user satisfaction: 4. Indentify the relevant internal measurements and the intermediate products in which they appear: 5. Overall assessment of product quality

Thank You