SlideShare a Scribd company logo
1 of 35
Software Quality Assurance
Lecture # 1
Software Quality
Ms. AYESHA RAANA [Lecturer]
COMPUTER SCIENCE DEPARTMENT
GC WOMEN UNIVERSITY,SIALKOT
Email:: ayesha.raana@gcwus.edu.pk
Office :: IT Block, GC Women University Sialkot
Student Hours: Mentioned outside my office
INSTRUCTOR INFORMATION
 This course deals with a very important aspect of
software engineering: quality assurance
of software products and services
 We’ll learn different aspects of software quality
assurance in this course
- Software Quality Engineering By JEF TIAN
- Software Testing & Continuous quality improvement 2nd Edition by
William Lewis.
Books
- Quality
- Quality Types
- Quality Control
- Different views of Quality
- Quality Models
Presentation Outline
What is Quality?
 Can you define quality?
 You must be thinking, what kind of question is
that. It is very easy to define quality, but if you
think really hard, it is not that easy to define
quality
 Have you come with a definition? Let’s see what
I have in store for you
Synonyms of Quality
 Excellence
 Superiority
 Class
 Eminence
 Value
 Worth
Antonym of Quality
 Inferiority
Quality
Quality means::
 meeting the customer’s requirements, at the agreed
cost, within the agreed timescales.
 “Fitness for purpose”
 Customer satisfaction
So, What is Quality ?
Quality can mean different things to different people. What 'quality' features would you look for in a car, for example ? Speed,
comfort, style, reliability, safety, serviceability ? How much would you be willing to pay for these things ?
In software terms, we consider Quality to be about delivering a product that meets the customer's requirements, at an agreed
cost, and within agreed timescales. It is no use delivering a perfect piece of code that cost twice as much as intended...
Of course, customer requirements can include some expectations of usability, reliability, maintainability, portability,
extendibility, security, etc. These are what we call Non-Functional Requirements.
We also use the term "fitness for purpose". What we mean by that is that we shouldn't waste time & effort building in features
that the customer doesn't really want. Why build a Rolls Royce when the customer only needs a Bicycle ?
Ultimately, this leads us to the key criterion: That of customer satisfaction. Whatever we do, if the customer isn't satisfied (&
doesn't give us repeat business), then we've failed in some way.
Standard Definitions of Quality
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. One strength
of this definition is the questions it invites software teams to consider, such as
"Who are the people we want to value our software?" and "What will be
valuable to them?"
SOFTWARE QUALITY
In
YOUR MIND
Software Quality
 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”
 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.
Quality Types
 Quality of Design (how well software is designed )
 the characteristics that designers specify for an item.
 In Software development, quality of design includes requirements
and the design of the system.
 measures how valid the design and requirements are in creating a
worthwhile product
 Quality of Conformance (how well the software conforms to that
design)
 the degree to which the design specification are followed.
 It focuses on implementation based on the design.
Quality Control
Quality Control
 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.
Quality Control
 Objective
 minimize the produced
defects, increase the product
quality
 Implementation
approaches
 Fully automated
 Entirely manual
 Combination of automated
tools and human interactions
Quality Control
 Key concept of quality
control
 compare the work products
with the specified and
measurable standards
 Quality control can be provided
by various sources.
 Quality control is designed to
detect and correct defects.
Detection implies flaws in the
processes that are supposed to
produce defect-free products
and services.
Variation Control
 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
Objective Quality VS Perceived Quality
• 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
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.
Different Views of Quality
 Transcendental view:
associated with
intangible properties
that delight users
 User view: fitness for
purpose or meeting
user’s needs
 Manufacturing view:
conformance to
process standards or
the right
development of the
product
Different Views of Quality
 Product view: inherent characteristics in the product
itself
 Value-based view: customers willingness to pay
People’s/ User’s Quality Expectations
 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.
Internal/Producer Quality Expectations
 For managers: adherence to process standards, proper
choice of methodologies and tools
 Service related producers: usability, maintainability
 3rd party or software packaging producers: modularity
 Marketing personnel: profitability and customer value
Quality Models
 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
Two main approaches:
 Standard Models:
 McCall
 ISO/IEC 9126
 Application or company specific quality models
 FURPS
 GQM Approach
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 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 allows designers to
put cohesive components in one module, thereby increasing the
maintainability of the system.
Factor-Criteria-Metrics-Model
McCall’s Factor Model Tree
McCall’s 11 Quality Factors
 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?
Attributes of Quality Factors
McCall’s 11 Quality Factors
Quality Attributes
McCall’s Quality Criteria’s
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)
McCall’s Quality Factors and Criteria
Relationship Between Quality Factors and Quality Criteria
 Each quality factor is positively influenced by a set of quality
criteria, and the same quality criterion impacts a number of
quality factors.
Example: Simplicity impacts reliability, usability, and
testability.
 If an effort is made to improve one quality factor, another
quality factor may be degraded.
Example: Portable code may be less efficient.
 Some quality factors positively impact others.
Example: An effort to improve the correctness of a system
will increase its reliability.
LECTURE 1 SQA.ppt

More Related Content

Similar to LECTURE 1 SQA.ppt

Similar to LECTURE 1 SQA.ppt (20)

Improving our Approach Towards Capturing Value in Requirements
Improving our Approach Towards Capturing Value in RequirementsImproving our Approach Towards Capturing Value in Requirements
Improving our Approach Towards Capturing Value in Requirements
 
Quality principles and concepts
Quality principles and conceptsQuality principles and concepts
Quality principles and concepts
 
Software quality management lecture notes
Software quality management lecture notesSoftware quality management lecture notes
Software quality management lecture notes
 
stfbegn.ppt
stfbegn.pptstfbegn.ppt
stfbegn.ppt
 
Software testing for beginners
Software testing for beginners Software testing for beginners
Software testing for beginners
 
Software testing
Software testingSoftware testing
Software testing
 
Quality Management
Quality ManagementQuality Management
Quality Management
 
Ch27
Ch27Ch27
Ch27
 
Quality Mangt
Quality MangtQuality Mangt
Quality Mangt
 
Software Quality Assurance
Software Quality AssuranceSoftware Quality Assurance
Software Quality Assurance
 
09 fse qualitymanagement
09 fse qualitymanagement09 fse qualitymanagement
09 fse qualitymanagement
 
Software quality assurance
Software quality assuranceSoftware quality assurance
Software quality assurance
 
Software quality
Software qualitySoftware quality
Software quality
 
Om bhawna
Om bhawnaOm bhawna
Om bhawna
 
Quality concept
Quality concept Quality concept
Quality concept
 
Quality - A Priority In Service Engagements
Quality - A Priority In Service EngagementsQuality - A Priority In Service Engagements
Quality - A Priority In Service Engagements
 
Quality concepts
Quality conceptsQuality concepts
Quality concepts
 
Basic Concept of Software Quality
Basic Concept of Software Quality Basic Concept of Software Quality
Basic Concept of Software Quality
 
What is QA in Software Testing Services
What is QA in Software Testing ServicesWhat is QA in Software Testing Services
What is QA in Software Testing Services
 
Tqm evolation of quality concecpts
Tqm evolation of quality concecpts Tqm evolation of quality concecpts
Tqm evolation of quality concecpts
 

Recently uploaded

EduAI - E learning Platform integrated with AI
EduAI - E learning Platform integrated with AIEduAI - E learning Platform integrated with AI
EduAI - E learning Platform integrated with AIkoyaldeepu123
 
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...srsj9000
 
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETEINFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETEroselinkalist12
 
Arduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.pptArduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.pptSAURABHKUMAR892774
 
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfCCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfAsst.prof M.Gokilavani
 
Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxDeepakSakkari2
 
pipeline in computer architecture design
pipeline in computer architecture  designpipeline in computer architecture  design
pipeline in computer architecture designssuser87fa0c1
 
Effects of rheological properties on mixing
Effects of rheological properties on mixingEffects of rheological properties on mixing
Effects of rheological properties on mixingviprabot1
 
Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...VICTOR MAESTRE RAMIREZ
 
DATA ANALYTICS PPT definition usage example
DATA ANALYTICS PPT definition usage exampleDATA ANALYTICS PPT definition usage example
DATA ANALYTICS PPT definition usage examplePragyanshuParadkar1
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024hassan khalil
 
main PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidmain PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidNikhilNagaraju
 
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort serviceGurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort servicejennyeacort
 
Concrete Mix Design - IS 10262-2019 - .pptx
Concrete Mix Design - IS 10262-2019 - .pptxConcrete Mix Design - IS 10262-2019 - .pptx
Concrete Mix Design - IS 10262-2019 - .pptxKartikeyaDwivedi3
 
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdfCCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdfAsst.prof M.Gokilavani
 
Past, Present and Future of Generative AI
Past, Present and Future of Generative AIPast, Present and Future of Generative AI
Past, Present and Future of Generative AIabhishek36461
 
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)Dr SOUNDIRARAJ N
 

Recently uploaded (20)

EduAI - E learning Platform integrated with AI
EduAI - E learning Platform integrated with AIEduAI - E learning Platform integrated with AI
EduAI - E learning Platform integrated with AI
 
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
Gfe Mayur Vihar Call Girls Service WhatsApp -> 9999965857 Available 24x7 ^ De...
 
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETEINFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
INFLUENCE OF NANOSILICA ON THE PROPERTIES OF CONCRETE
 
Arduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.pptArduino_CSE ece ppt for working and principal of arduino.ppt
Arduino_CSE ece ppt for working and principal of arduino.ppt
 
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdfCCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
CCS355 Neural Network & Deep Learning Unit II Notes with Question bank .pdf
 
Biology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptxBiology for Computer Engineers Course Handout.pptx
Biology for Computer Engineers Course Handout.pptx
 
pipeline in computer architecture design
pipeline in computer architecture  designpipeline in computer architecture  design
pipeline in computer architecture design
 
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Serviceyoung call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
young call girls in Rajiv Chowk🔝 9953056974 🔝 Delhi escort Service
 
Effects of rheological properties on mixing
Effects of rheological properties on mixingEffects of rheological properties on mixing
Effects of rheological properties on mixing
 
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
9953056974 Call Girls In South Ex, Escorts (Delhi) NCR.pdf
 
Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...Software and Systems Engineering Standards: Verification and Validation of Sy...
Software and Systems Engineering Standards: Verification and Validation of Sy...
 
DATA ANALYTICS PPT definition usage example
DATA ANALYTICS PPT definition usage exampleDATA ANALYTICS PPT definition usage example
DATA ANALYTICS PPT definition usage example
 
Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024Architect Hassan Khalil Portfolio for 2024
Architect Hassan Khalil Portfolio for 2024
 
main PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfidmain PPT.pptx of girls hostel security using rfid
main PPT.pptx of girls hostel security using rfid
 
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort serviceGurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
Gurgaon ✡️9711147426✨Call In girls Gurgaon Sector 51 escort service
 
Concrete Mix Design - IS 10262-2019 - .pptx
Concrete Mix Design - IS 10262-2019 - .pptxConcrete Mix Design - IS 10262-2019 - .pptx
Concrete Mix Design - IS 10262-2019 - .pptx
 
Design and analysis of solar grass cutter.pdf
Design and analysis of solar grass cutter.pdfDesign and analysis of solar grass cutter.pdf
Design and analysis of solar grass cutter.pdf
 
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdfCCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
CCS355 Neural Networks & Deep Learning Unit 1 PDF notes with Question bank .pdf
 
Past, Present and Future of Generative AI
Past, Present and Future of Generative AIPast, Present and Future of Generative AI
Past, Present and Future of Generative AI
 
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
UNIT III ANALOG ELECTRONICS (BASIC ELECTRONICS)
 

LECTURE 1 SQA.ppt

  • 1. Software Quality Assurance Lecture # 1 Software Quality
  • 2. Ms. AYESHA RAANA [Lecturer] COMPUTER SCIENCE DEPARTMENT GC WOMEN UNIVERSITY,SIALKOT Email:: ayesha.raana@gcwus.edu.pk Office :: IT Block, GC Women University Sialkot Student Hours: Mentioned outside my office INSTRUCTOR INFORMATION
  • 3.  This course deals with a very important aspect of software engineering: quality assurance of software products and services  We’ll learn different aspects of software quality assurance in this course
  • 4. - Software Quality Engineering By JEF TIAN - Software Testing & Continuous quality improvement 2nd Edition by William Lewis. Books
  • 5. - Quality - Quality Types - Quality Control - Different views of Quality - Quality Models Presentation Outline
  • 6. What is Quality?  Can you define quality?  You must be thinking, what kind of question is that. It is very easy to define quality, but if you think really hard, it is not that easy to define quality  Have you come with a definition? Let’s see what I have in store for you
  • 7. Synonyms of Quality  Excellence  Superiority  Class  Eminence  Value  Worth
  • 9. Quality Quality means::  meeting the customer’s requirements, at the agreed cost, within the agreed timescales.  “Fitness for purpose”  Customer satisfaction
  • 10. So, What is Quality ? Quality can mean different things to different people. What 'quality' features would you look for in a car, for example ? Speed, comfort, style, reliability, safety, serviceability ? How much would you be willing to pay for these things ? In software terms, we consider Quality to be about delivering a product that meets the customer's requirements, at an agreed cost, and within agreed timescales. It is no use delivering a perfect piece of code that cost twice as much as intended... Of course, customer requirements can include some expectations of usability, reliability, maintainability, portability, extendibility, security, etc. These are what we call Non-Functional Requirements. We also use the term "fitness for purpose". What we mean by that is that we shouldn't waste time & effort building in features that the customer doesn't really want. Why build a Rolls Royce when the customer only needs a Bicycle ? Ultimately, this leads us to the key criterion: That of customer satisfaction. Whatever we do, if the customer isn't satisfied (& doesn't give us repeat business), then we've failed in some way.
  • 11. Standard Definitions of Quality 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. One strength of this definition is the questions it invites software teams to consider, such as "Who are the people we want to value our software?" and "What will be valuable to them?"
  • 13. Software Quality  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”  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.
  • 14. Quality Types  Quality of Design (how well software is designed )  the characteristics that designers specify for an item.  In Software development, quality of design includes requirements and the design of the system.  measures how valid the design and requirements are in creating a worthwhile product  Quality of Conformance (how well the software conforms to that design)  the degree to which the design specification are followed.  It focuses on implementation based on the design.
  • 16. Quality Control  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.
  • 17. Quality Control  Objective  minimize the produced defects, increase the product quality  Implementation approaches  Fully automated  Entirely manual  Combination of automated tools and human interactions
  • 18. Quality Control  Key concept of quality control  compare the work products with the specified and measurable standards  Quality control can be provided by various sources.  Quality control is designed to detect and correct defects. Detection implies flaws in the processes that are supposed to produce defect-free products and services.
  • 19. Variation Control  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
  • 20. Objective Quality VS Perceived Quality • 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 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.
  • 21. 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.
  • 22. Different Views of Quality  Transcendental view: associated with intangible properties that delight users  User view: fitness for purpose or meeting user’s needs  Manufacturing view: conformance to process standards or the right development of the product
  • 23. Different Views of Quality  Product view: inherent characteristics in the product itself  Value-based view: customers willingness to pay
  • 24. People’s/ User’s Quality Expectations  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  3rd party or software packaging producers: modularity  Marketing personnel: profitability and customer value
  • 26. Quality Models  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 Two main approaches:  Standard Models:  McCall  ISO/IEC 9126  Application or company specific quality models  FURPS  GQM Approach
  • 27. 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 scale and method for measurement.
  • 28. 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 allows designers to put cohesive components in one module, thereby increasing the maintainability of the system.
  • 31. McCall’s 11 Quality Factors  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? Attributes of Quality Factors
  • 32. McCall’s 11 Quality Factors Quality Attributes
  • 33. McCall’s Quality Criteria’s 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)
  • 34. McCall’s Quality Factors and Criteria Relationship Between Quality Factors and Quality Criteria  Each quality factor is positively influenced by a set of quality criteria, and the same quality criterion impacts a number of quality factors. Example: Simplicity impacts reliability, usability, and testability.  If an effort is made to improve one quality factor, another quality factor may be degraded. Example: Portable code may be less efficient.  Some quality factors positively impact others. Example: An effort to improve the correctness of a system will increase its reliability.