SOFTWARE QUALITY ASSURANCE LECTURE # 2 SOFTWARE QUALITY.

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

System Integration Verification and Validation
Chapter 17 I.Omaima Al-Matrafi
These slides are designed to accompany Software Engineering: A Practitioner’s Approach, 6/e (McGraw-Hill 2005). Slides copyright 2005 by Roger Pressman.1.
CHAPTER 1 Introduction to SQA.
Total Quality Management
Overview Lesson 10,11 - Software Quality Assurance
Module 4 Quality. Module 4 Objectives Discuss business practices within a framework of corporate social responsibility. Understand the various definitions.
Software project management (intro) Quality assurance.
R&D SDM 1 Metrics How to measure and assess software engineering? 2009 Theo Schouten.
Planning and Tracking Software Quality Yordan Dimitrov Telerik Corporation
Introduction to Software Testing
Handouts Software Testing and Quality Assurance Theory and Practice Chapter 17 Software Quality
Chapter 24 - Quality Management
Quality Management Lecture 1.
Handouts Software Testing and Quality Assurance Theory and Practice Chapter 17 Software Quality
Software Quality SEII-Lecture 15
Introduction to Software Quality Assurance (SQA)
Managing Software Quality
What is Software Engineering? the application of a systematic, disciplined, quantifiable approach to the development, operation, and maintenance of software”
 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.
Planning and Tracking Software Quality.  What Is Software Quality?  Causes of Software Defects  What is Quality Assurance?  Improving the Software.
1 Software Quality CIS 375 Bruce R. Maxim UM-Dearborn.
Quality Control Project Management Unit Credit Value : 4 Essential
Software Quality Engineering Chapters 1-3 Overview, Software Quality and Quality Assurance.
1 Software Testing and Quality Assurance Lecture 33 – Software Quality Assurance.
1 Software quality - Definition IEEE 1. The degree to which a system, component, or process meets specified requirements. 2. The degree to which a system,
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
Question To know that quality has improved, it would be helpful to be able to measure quality. How can we measure quality?
Software Quality : The Elusive Target
Software Project Management Lecture # 11. Outline Quality Management (chapter 26 - Pressman)  What is quality?  Meaning of Quality in Various Context.
Creator: ACSession No: 15 Slide No: 1Reviewer: SS CSE300Advanced Software EngineeringFebruary 2006 Software Quality Assurance & Software Quality Control.
ISO 9001:2008 to ISO 9001:2015 Summary of Changes
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.
OHT 1.1 Galin, SQA from theory to implementation © Pearson Education Limited 2004 The uniqueness of software quality assurance The environments for which.
Quality Management.
1 Software quality - Definition IEEE 1. The degree to which a system, component, or process meets specified requirements. 2. The degree to which a system,
Software quality factors
Quality Models in Software Engineering Literature: An Analytical and Comparative Study Rafa E. Al-Qutaish, PhD Al Ain University of Science and Technology.
LESSON 3. Properties of Well-Engineered Software The attributes or properties of a software product are characteristics displayed by the product once.
QUALITY DEFINITIONS AND CONCEPTS
CSE 303 – Software Design and Architecture
Software Quality Prepared By: Rooshabh Kothari Assistant Professor T & P Co-ordinator CSE/IT Department 1.
Project Management Quality Management. Introduction Project planning Gantt chart and WBS Project planning Network analysis I Project planning Network.
Managing Quality & Risk Week September The Properties of Quality Management Module leader – Tim Rose.
by: Er. Manu Bansal Deptt of IT Software Quality Assurance.
 System Requirement Specification and System Planning.
TOTAL QUALITY MANAGEMENT “ MUST KNOW” CONCEPTS FOR ENGINEERS.
TOTAL QUALITY MANAGEMENT
Software Quality Control and Quality Assurance: Introduction
Software Verification and Validation
Chapter no.1 introduction to Total Quality Management
SEVERITY & PRIORITY RELATIONSHIP
Source & Courtesy: Doc. S. Dapkūnas
Software Quality Assurance Software Quality Factor
Software Testing and Quality Assurance
Software Quality Engineering CS- 449
Software Quality Engineering CS- 449
Definitions.
مقدمه اي بر مهندسي نيازمنديها
Software Quality Engineering CS- 449
Thursday’s Lecture Chemistry Building Musspratt Lecture Theatre,
LEAN PRODUCTION AND QUALITY MANAGEMENT
Software Quality Assurance Lecture 3
Software Quality Assurance 2015
Chapter # 1 Overview of Software Quality Assurance
Presentation transcript:

SOFTWARE QUALITY ASSURANCE LECTURE # 2 SOFTWARE QUALITY

Contact Information 2  Instructor: Rashid Mahmood Lecturer  Office hours: Will update you soon

 Quality Quality Types Quality Control Different views of Quality Quality Models Topics to Cover 4

Quality  Quality means:: meeting the customer ‟ s requirements, at the agreed cost, within the agreed timescales. “Fitness for purpose” [Joseph M Juran] Customer satisfaction 5

Quality Definitions [3,4]  There are many quality definitions some of them are listed below The American Heritage dictionary defines quality as „a characteristic or attribute of something ‟. IEEE Glossary: Degree to which a system, component, or process meets (1) specified requirements, and (2) customer or user needs or expectations ISO 8402: The totality of features and characteristics of a product or service that bear on its ability to satisfy specified or implied needs Another definition, coined by Gerald Weinberg in Quality Software Management: Systems Thinking, is "Quality is value to some person." This definition stresses that quality is inherently subjective - different people will experience the quality of the same software very differently. 6

Software Quality [1] [12]    Software Quality can be defined as, “Conformance to explicitly stated functional and performance requirements, explicitly documented development standards, and implicit characteristics that are expected of all professionally developed software” [Roger Pressman. Software Engineering: A Practitioner's Approach McGraw Hill 6 ed 2004] This definition emphasizes three important points Software requirements are the foundation from which quality is measured. Lack of conformance to requirements is lack of quality Specified standards define a set of development criteria that guide the way in which software is engineered. If the criteria are not followed, lack of quality will almost surely result. If a software conforms to its explicit requirements but fails to meet implicit requirements, software quality is suspect. 7

 Quality of Design Quality of Conformance Quality Types 8

Quality Types [5,6]  Quality of Design (how well software is designed ) measures how valid the design are in creating a worthwhile product Quality of design is the quality which the producer or supplier is intending to offer to the customer. When the producer is making the quality of design of the product, he should take into consideration the customer's requirements in order to satisfy them with fitness for use of the product. Quality of Design is extremely important, and it is said that design is only 5% of the product cost, but has a 70% influence on quality, manufacturability, serviceability, and general acceptance in the market. Customer focused organizations must continuously work on improving the Quality of Design; and improving the quality of design will also have a positive impact on the Quality of Conformance. 9

Quality Types [5,6,7]  Quality of Conformance (how well the software conforms to that design)  Quality of conformance is the level of the quality of product actually produced and delivered through the production or service process of the organization as per the specifications or design. When the quality of a product entirely conforms to the specification (design), the quality of conformance is deemed excellent. It focuses on implementation based on the design. Specifications are targets and tolerances determined by the designer of a product. Targets are the ideal values for which production is expected to strive; tolerances are acceptable deviations from these ideal values recognizing that it is difficult to meet the exact targets all the time due to variability in material, machine, men and process. 10

Objective Quality VS Perceived Quality [14]  Quality might be the most important factor underlying the long-term success of products and firms. The business press routinely cites quality as the cause of firm success and failure. Objective quality is operationalized as a composite of instrument measures and expert ratings on multiple product attributes. For example, a personal computer’s objective quality attributes include processing speed, hard disk capacity, reliability, and features like the modem. Objective quality does not include intangible attributes like aesthetics and brand image or salesperson behavior. Perceived quality is the overall subjective judgment of quality relative to 11 the expectation of quality. These expectations are based on one’s own and others’ experiences, and on sources including brand reputation, price, and advertising. It is not necessary to use or examine a product to form perceptions of quality.

Objective Quality VS Perceived Quality  However, it is now well established that it is not the objective quality but rather customers’ perceptions of quality that drive preferences and, ultimately, satisfaction, loyalty, sales, and profitability. Numerous anecdotes suggest that customer perceptions of quality do not reflect objective quality. Companies frequently find that negative perceptions persist even after products perform well in quality tests. For example it took Google three years after its launch to be perceived as the superior search engine. 12

Quality Control 14

Quality Control [1]  What is quality control? Quality control is defined as the processes and methods used to monitor work and observe whether requirements are met. It focuses on reviews and removal of defects before shipment of products. It is possible to have the same group that builds the product perform the quality control function, or to establish a quality control group or department within the organizational unit that develops the product. For software products, quality control typically includes specification reviews, inspections of code and documents, and checks for user deliverables. 15

Quality Control  Objective minimize the produced defects, increase the product quality  Implementation approaches Fully automated Entirely manual Combination of automated tools and human interactions 16

Quality Assurance VS Quality Control [11]  Quality Assurance: A set of activities designed to ensure that the development and/or maintenance process is adequate to ensure a system will meet its objectives. Quality Control: A set of activities designed to evaluate a developed work product. One of the major points of quality control vs. QA is that assurance of quality is done before starting a project whereas the quality control begins once the product has been manufactured. Assurance of quality is a proactive or preventive 17 process to avoid defects whereas quality control is a corrective process to identify the defects in order to correct them.

Variation Control [1]  Variation is the heart of quality control We want to minimize the difference between the predicted resources needed to complete a project and actual resources used including Staff, equipment and time 18

Different Views of Quality 19  Transcendental View User View Manufacturing View Product View Value based View

Different views of Quality  Transcendental view: sees quality as something that can be recognized but not defined. quality is universally identifiable, absolute unique and perfect Those who hold transcendental view would say, “I can’t define it, but I know when I see it.” associated with intangible properties that delight users Advertisers are fond of promoting products in these terms. “Where shoping is a pleasure” (supermarket), “We love to fly and it shows” (airline), and “It means beautiful eyes” (cosmetics) are example. 20

Different views of Quality [12]  User view: fitness for purpose or meeting user ‟ s needs User based definitions are based on the idea that quality is an individual matter, and products that best satisfy their preferences (i.e. perceived quality) are those with the highest quality. This is a rational approach but leads to problems.  Consumer preferences vary widely, and it is difficult to aggregate these preferences into products with wide appeal. This leads to the choice between a niche strategy or a market aggregation approach which tries to identify those product attributes that meet the needs of the largest number of consumers. 21

Different views of Quality [12]  Manufacturing view: conformance to process standards or the right development of the product Manufacturing-based definitions are concerned primarily with engineering and manufacturing practices and use the universal definition of “conformance to requirements.” Requirements, or specifications, are established design, and any deviation implies a reduction in quality. The concept applies to services as well as products. 22

Different Views of Quality [12]  Product view: inherent characteristics in the product itself Hypothesis: If a product is manufactured with good internal properties, then it will have good external properties. Example: Modularity enables testability. For example reliability can be measured (e.g. mean time between failure), and the engineer can design to that benchmark. Quality is determined objectively. Although this approach has many benefits, it has limitations as well. Where quality is based on individual taste or preference, the benchmark for measurement may be misleading. 23

Different Views of Quality [12]  Value-based view: customers willingness to pay Value-based quality is defined in terms of costs and prices as well as a number of other attributes. Thus, the consumer’s purchase decision is based on quality (however it is defined) at the acceptable price. Central idea  How much a customer is willing to pay for a certain level of quality. Quality is meaningless if a product does not make economic sense. The value-based view makes a trade-off between cost and quality. 24

People/user Quality Expectation People’s quality expectation for software systems they use and rely upon are two-fold:  The software system must do what they are supposed to do. In other words, they must do the right things (Validation) They must perform these specific tasks correctly. In other words, they must do the things right (Verification)  Verification --> refers to the set of activities that ensure that software correctly implements a specific function. Validation - -> refers to a different set of activities that ensure that the software that has been built is traceable to customer requirements. 25

Internal/Producer Quality Expectations  For managers: adherence to process standards, proper choice of methodologies and tools Service related producers: usability, maintainability 3 rd party or software packaging producers: modularity Marketing personnel: profitability and customer value 26

 McCall ‟ s Model ISO 9126 Model IEEE Model FURPS Model GQM Approach Quality Models 27

Quality Models [9,10]  A Quality Model is defined as, “ the set of characteristics and the relationships between them which provides the basis for specifying quality requirements and evaluating quality” Software quality is described by specific quality models Standard quality models McCall ISO/IEC 9126 IEEE  Application or company specific quality models FURPS GQM Approach 28

McCall’s Factor-Criteria-Metrics Model Classification into :  Factors (to specify):  They describe the external view of the software, as viewed by the users.  Criteria (to build):  They describe the internal view of the software, as seen by the developer.  Metrics (to control):  They are defined and used to provide a 29 scale and method for measurement.

McCall’s Quality Factors and Criteria  McCall, Richards, and Walters studied the concept of software quality in terms of two key concepts as follows: quality factors, and quality criteria.  A quality factor represents the behavioral characteristic of a system.  Examples: correctness, reliability, efficiency, testability, portability e.t.c  A quality criterion is an attribute of a quality factor that is related to software development.  Example: Modularity is an attribute of the architecture of a software system. A highly modular software 30 allows designers to put cohesive components in one module, thereby increasing the maintainability of the system.

McCall’s 11 Quality Factors 32    Product Revision Maintainability - Can I fix it? Flexibility - Can I change it? Testability - Can I test it? Product Transition Portability - Will I be able to use on another machine? Reusability - Will I be able to reuse some of the software? Interoperability - Will I be able to interface it with another application? Product Operation Correctness - Does it do what I want? Reliability - Does it do it accurately all the time? Efficiency - Will it run on my machine as well as it can? Integrity - Is it secure? Usability - Can I run it? Attributesof QualityFactors

McCall’s Quality Criteria 33  Some Quality Criteria ‟ s from McCall ‟ s Model is listed below: Accuracy (The precisions of computations and outputs) Completeness (The degree to which the full implementation of the required functionalities has been achieved) Error Tolerance (The degree to which the continuity of operations is ensured under adverse conditions) Expandability (The degree to which software functions can be expanded ) Hardware Independence (The degree to which the software is dependent on the underlying hardware) Modularity (The provision of highly independent modules) Simplicity (The ease with which the software can be understood)

References Software Engineering by Roger Pressman faculty.winthrop.edu/dannellys/csci626/02_Definition.ppt en.wikipedia.org/wiki/Software_quality /Quality%20of%20Design%20and%20Quality%20of%20Conformance.html /$FILE/chapter_1.pdf between-them/

For any query Feel Free to ask 36