Date post: | 07-Apr-2018 |
Category: |
Documents |
Upload: | gopikrishnan-murugesan |
View: | 226 times |
Download: | 0 times |
of 103
8/4/2019 SQM-Unit1 and Unit 2
1/103
Software Quality
UNIT - 1
8/4/2019 SQM-Unit1 and Unit 2
2/103
Introduction
Software Quality measures how well the softwareis designed (Quality of design)and how well thesoftware conforms to the design (Quality ofconformance)
Where,
Quality of design concerned about the specifications,design and requirements of the software
Quality of Conformance concerned with theimplementation of the software
8/4/2019 SQM-Unit1 and Unit 2
3/103
Introduction
The primary goal of engineering the product isTo improve the quality of the software products
To increase the productivity &Job Satisfaction of theengineers
Quality is transparent when it is present and it canbe easily recognized in its absence
For Ex:
When a car falls into piecesWhen a system fails to perform properly
8/4/2019 SQM-Unit1 and Unit 2
4/103
Introduction
Note:User Satisfaction issue must also be considered
for Quality
User Satisfaction = Good Quality + Deliveredwithin budget and Schedule + Complaintproduct
Most of the developers feel that software qualitycan be carried out only after the code isgenerated. But it is not true. It can be enforcedeach and every stages of a software process
8/4/2019 SQM-Unit1 and Unit 2
5/103
Introduction
Note:If a team stresses quality in all engineering
activities,
It reduces the amount of rework
Results in lower costVariation control is the heart of Quality Control
For Ex: consider the various versions of OS, amanufacturer has to minimize the variation /
difference between the predicted resources &actual resourcesused including staff, equipment,and calendar time
Cos of this number of bugs will be minimizedfrom one release to another
8/4/2019 SQM-Unit1 and Unit 2
6/103
Introduction
Note:SQM is the management Technique that can be
applied to the development of software to favorthe quality
Software Quality comprises ofQuality Control
Quality Assurance
Quality Cost
8/4/2019 SQM-Unit1 and Unit 2
7/103
Introduction
What is Quality?It is a characteristic or an attribute of something
that must conforms to the design standards
Quality can be a measurable characteristics thatcan be compared to length, color etc.,
8/4/2019 SQM-Unit1 and Unit 2
8/103
Introduction
Insight about Quality?Quality is Not absolute
Quality is Multidimensional
Subject to constraints
Quality criteria are not independant
8/4/2019 SQM-Unit1 and Unit 2
9/103
Introduction
What is Quality?The degree of Excellence - OED, 1990
Zero Defects Crosby, 1979
The totality of features and characteristics of aproduct or service that bear on its ability tosatisfy specified needs ISO, 1986
Quality of a product is achieved thro its features &characteristics
So it is associated with the attribute of a product throwhich performance can be achieved
8/4/2019 SQM-Unit1 and Unit 2
10/103
Introduction
Software Quality?Conformance to explicitly stated functional,
performance requirements & developmentstandards and implicit characteristics that are
expected by all softwares
Department of Defense defined a SQ as thedegree to which the attribute of the softwaresenable it to perform its intended end use
8/4/2019 SQM-Unit1 and Unit 2
11/103
Introduction
Software Quality2 features of quality software:Conformance to its specificationFitness to its intended purpose
8/4/2019 SQM-Unit1 and Unit 2
12/103
Introduction
Software QualityWhen compared to other industry, Software
Quality will be problamatic coz
It does not have physical existenceLack of knowledge of clientRapid change rate in both hardware &
softwareHigh expectation of the customer
8/4/2019 SQM-Unit1 and Unit 2
13/103
Introduction
Views of QualityQuality is a multidimensional construct
It can be considered as a Polyhedron Metaphor
where a quality is represented by a 3-dimensional solid & each face represents adifferent aspects of quality
Polyhedron Metaphor is illustrated as
8/4/2019 SQM-Unit1 and Unit 2
14/103
Introduction
Views of Quality
Timeliness
Cost CorrectnessFunctionality
Reliability
Maintainability
Functionality
CostTimeliness
8/4/2019 SQM-Unit1 and Unit 2
15/103
Introduction
Views of Quality Based on different characteristics of a product, it is been
classified into number of views or perspectives
These views may be considered based on external
observers viewing towards a product ex: user, supplier orclient etc.,
These views are used to vary & conflict based on differenttypes of peoples who is viewing the product
Ex: viewing persons Project Manager Business Analyst ProgrammerQuality Auditor
End user Line Manager and Project Sponser
8/4/2019 SQM-Unit1 and Unit 2
16/103
Introduction
Views of Quality In general, conflicting views are represented between
User and Designer
Designer UserGood Specification What I want
Technically correct Fast Response
Easy to maintain Easy to use help menu
Fast development Exception data &reporting
Well documented Input data once
User managed & Welltrained
Access to all systems
Simple Menu Structure Accurate time
8/4/2019 SQM-Unit1 and Unit 2
17/103
Introduction
Views of Quality conflicting views are classified into 5 types
1. Transcendent view2. Product based view3. Value based view4. Manufacturing view5. User based view
8/4/2019 SQM-Unit1 and Unit 2
18/103
Introduction
Views of QualityTranscendent view
Value basedProduct based
Manufacturing user based
8/4/2019 SQM-Unit1 and Unit 2
19/103
Introduction
Views of Quality1. Transcendent view
This view relates quality to excellence or elegance. In large scale projects, it is expensive to innate high
degree of excellence
2. Product based view Quality Cost i.e., to build high quality in a product
it costs high This type of quality can be added to a product in 2
ways Greater Functionality High Quality Solution thro the use of QMS
8/4/2019 SQM-Unit1 and Unit 2
20/103
Introduction
Views of Quality3. Value based view
This view depends on what price that the customercan afford
With in the software development, this view can be
used to add the quality to a product with the help ofneeded people, time & tools
4. Manufacturing view This view measures the quality in terms of
conformance to requirements
8/4/2019 SQM-Unit1 and Unit 2
21/103
Introduction
Views of Quality5. User based view
This view can be summarized as Fitness forpurpose
i.e., the intended functionality for the product must
be facilitated according to the user
8/4/2019 SQM-Unit1 and Unit 2
22/103
Hierarchical Models of Quality
Hierarchical Model To compare quality in different situations
(quantitatively & qualitatively), it is needed to establisha model of quality in hierarchical structure
Ex: Assessment and Reporting method used in School
Student progress report is prepared under series ofheadings such as Subject name with both qualitative& quantitative assessment
These measures are derived from a examination or aformal test
8/4/2019 SQM-Unit1 and Unit 2
23/103
Hierarchical Models of Quality
Hierarchical Model (Cont)
Subject Teachers
Comments
Term
Grade(A-E)
Exam
Mark (%)
English
Maths
ScienceTamil
Social Science
Total
Traditional Assessment Method
8/4/2019 SQM-Unit1 and Unit 2
24/103
Hierarchical Models of Quality
Hierarchical Model (Cont) Presently, the assessment of a person has become
complicated cos a subject may be broken into differentlevel of skillswhere each of the skills are measuredcollectively to give a more detailed result i.e.,
8/4/2019 SQM-Unit1 and Unit 2
25/103
Hierarchical Models of Quality
Hierarchical Model (Cont)
English
Student
Maths Science Social
Student
Maths English Science Social
Oral Skills Reading Skills Writing CreativeOral Skills Reading Skills Writing Creative
English
Has evolved into
8/4/2019 SQM-Unit1 and Unit 2
26/103
Hierarchical Models of Quality
Hierarchical Model (Cont) Based on different measures of software, its quality can
be depicted as:
Quality factor
Quality criterion
Ex: Maintainability
Quality criterion
Ex: Reliability
Quality criterion
Ex: Usability
Quality Metrics Quality MetricsQuality Metrics
Ex of Metrics: Accuracy, Consistency, Error Toleranceand simplicity
8/4/2019 SQM-Unit1 and Unit 2
27/103
Hierarchical Models of Quality
Hierarchical Models of Quality These models are used to identify the needed quality
criteria's that can be used in improving the resultantquality of the product
Types of quality models
1. McCall Model
2. Boehm Model
3. FURPS Model
4. ISO 9126 Model5. Dromey Model
8/4/2019 SQM-Unit1 and Unit 2
28/103
Hierarchical Models of Quality
Hierarchical Model of McCall Proposed by McCall in 1977. It is also referred as
General Electronics model after McCall
This model is originates from US military developed forUS Air force
This model can be used during the development processby the system developers
In this model, McCall attempts to bridge the gapbetween users & developersby focusing number ofquality factors that reflect both the user views &developer priorities
8/4/2019 SQM-Unit1 and Unit 2
29/103
Hierarchical Models of Quality
Hierarchical Model of McCall
ProductRevision
ProductTransition
Product operations
MaintainabilityFlexibility
Testability
PortabilityReusability
Interoperability
Correctness, Reliability, Efficiency, Integrity, and Usability
8/4/2019 SQM-Unit1 and Unit 2
30/103
Hierarchical Models of Quality
Hierarchical Model of McCall McCall model identifies 3 areas of software work or 3 types of
quality characteristics
1. Product operation
2. Product revision
3. Product Transition
Product Operation It explains the working operation of theproduct that can be learned easily efficiently
Product Revision- It concerned with error correction of the system
- The system may undergo changes
Product Transition This is applicable in distributed
applications & adaptable to new environments
8/4/2019 SQM-Unit1 and Unit 2
31/103
Hierarchical Models of Quality
Hierarchical Model of McCall McCall defines following 11 quality factors:
Usability
Integrity
Efficiency
Correctness
Reliability
Maintainability
Flexibility
Testability
Portability
Reusability
Interoperability
Execution efficiency
Storage efficiency
8/4/2019 SQM-Unit1 and Unit 2
32/103
Hierarchical Models of Quality
Hierarchical Model of McCall McCall identifies 3 areas of software work in a hierarchy
of factors, criteria and metrics
11 factors (To specify) External view of the softwareseen by the users
23 criteria's (To build) Internal view of the softwareseen by developers
Metrics (To control) method of measurement
8/4/2019 SQM-Unit1 and Unit 2
33/103
Hierarchical Models of Quality
8/4/2019 SQM-Unit1 and Unit 2
34/103
Hierarchical Models of Quality
8/4/2019 SQM-Unit1 and Unit 2
35/103
Hierarchical Models of Quality
Hierarchical Model of Boehm (1978) This model is presented by Barry W Boehm
Boehm model definesset of well defined,differentiated characteristics of software quality where
the quality criteria's are subdivided.
In this first division is named asgeneral utility andthe next one isAs-is utility that is the subtype of firstone.
8/4/2019 SQM-Unit1 and Unit 2
36/103
Hierarchical Models of Quality
Hierarchical Model of Boehm (1978) It is similar to McCalls model where a quality of
software is structured around
Higher levelcharacteristics
Intermediate levelcharacteristics
Primitivecharacteristics
8/4/2019 SQM-Unit1 and Unit 2
37/103
Hierarchical Models of Quality
Hierarchical Model of Boehm (1978) Higher levelcharacteristics it addresses answers for 3
questions:
As-is Utility [How well (easily, reliably, efficiently) can Iuse as-is?]
Maintainability [How easy is it to understand, modify andretest?]
Portability [can I still use it even if I change theenvironment]
8/4/2019 SQM-Unit1 and Unit 2
38/103
Hierarchical Models of Quality
Hierarchical Model of Boehm (1978) Intermediate levelcharacteristics It identifies 7 quality
factors that are expected by the software:
Portability
Reliability
Efficiency
Usability
Testability
Understandability
Flexibility
As-is Utility
Maintainability characteristics
8/4/2019 SQM-Unit1 and Unit 2
39/103
Hierarchical Models of Quality
Hierarchical Model of Boehm (1978) Primitivecharacteristics Provides the foundation for
defining quality metrics
8/4/2019 SQM-Unit1 and Unit 2
40/103
Device Independence
Self-contained ness
Accuracy
Completeness
Robustness / Integrity
Consistency
Accountability
Device EfficiencyAccessibility
Communicativeness
Self descriptiveness
Structuredness
conciseness
Legibility
Augment ability
Portability
Reliability
Efficiency
Human Engineering
Testability
Understandability
Modifiability
Maintainability
As-is Utility
General Utility
8/4/2019 SQM-Unit1 and Unit 2
41/103
Hierarchical Models of Quality
Summary of McCall & Boehm Models Boehms and McCalls models might appear very similar.
the difference is that:
McCalls modelprimarily focuses on the precisemeasurement of the high-level characteristics As-isutility
Boehms quality model is based on a wider range of
characteristics with an extended and detailed focuson primarily maintainability.
8/4/2019 SQM-Unit1 and Unit 2
42/103
Hierarchical Models of Quality
Comparison of McCall & Boehm Models by QF to QF
8/4/2019 SQM-Unit1 and Unit 2
43/103
Quality Measurement
Measurement of quality is one of the key problemhighlighted by IT practitioners
Quality measurement is expressed in terms of Metrics thatis a measurable property which is an indicator of one or
more quality criteria that are seeking to measure
Conditions that the quality metric are:
It must be linked to the quality criterion that it seek tomeasure
It must be sensitive to different criterion
It provides determination of the criterion
8/4/2019 SQM-Unit1 and Unit 2
44/103
Quality Measurement
Measurement technique to a software is similar to thetraditional science methods. But it is more complex
Structuredness is the main factor for the software throwhich quality can be measured.
Well structured code is easy to maintain & adapt which canbe calculated in terms of average length of code modules inthe program
Lines of code
Structuredness modularity ----------------------------
Number of modules
8/4/2019 SQM-Unit1 and Unit 2
45/103
Quality Measurement
Software Metrics Structuredness is used to predict the maintainability,
reliability & adaptability of the software later in thelifecycle
Classified into 2 types:
Predictive Metrics
Descriptive Metrics
8/4/2019 SQM-Unit1 and Unit 2
46/103
Quality Measurement
Software Metrics (Cont) Predictive MetricsIt is used to make predictions about
the software later in the life cycle
Descriptive MetricsIt describes the state of the
software at the time of the measurement
For Ex: reliability metricmight be based upon the
number of system crashes during the given period
8/4/2019 SQM-Unit1 and Unit 2
47/103
Quality Measurement
Software Metrics (Cont) McCall & Boehm have defined many number of
approaches to find metrics
McCalls approach is quantitative where structurednessof a software can be measured by
n01Structuredness = -----------
ntot
Where, n01 = number of modules having one or zero exit
points
ntot = total number of modules
This metric valuelies between 0 to 1
8/4/2019 SQM-Unit1 and Unit 2
48/103
Quality Measurement
Software Metrics (Cont) Using Boehm concept, structuredness can be measured
by addressing the answer for following questions:
Have the rules for transfering control between
modules been followed? (Y/N) Are modules are limited in size? (Y/N)
Do all modules have one exit point? (Y/N)
Do all modules have only one entry point? (Y/N)
8/4/2019 SQM-Unit1 and Unit 2
49/103
Quality Measurement
Software Metrics (Cont) What makes a good Metric?
After McCall & Boehm concepts, a scientist Wattshad publishes an analysis of metrics. And hesuggests 7 quality criterias of good software metric
Objectivity
Reliability
Validity
Standardization
Comparability
Economy
Usefulness
8/4/2019 SQM-Unit1 and Unit 2
50/103
Quality Measurement
Software Metrics (Cont) Metric Ranking
Wattshad cited /quoted 40 metrics from thesoftware engineering
Among these 40 metrics, 3 quarters of 40 metrics areconcerned with 2 criteria namelyreliability &maintainability
4 criterias are not metricated
3 criterias have only one metric
8/4/2019 SQM-Unit1 and Unit 2
51/103
Quality Measurement
Software Metrics (Cont) Wattshad ranked following criterias based on no.
of metrics
Quality Criteria Number of metrics cited
Maintainability 18
Reliability 12
Usability 4
Correctness 3
Integrity 1
Expandability 1
Portability 1
Efficiency 0
Adaptability 0
Interoperability 0
Reusability 0
8/4/2019 SQM-Unit1 and Unit 2
52/103
Quality Measurement
Software Metrics Ranking The set of metrics quoted is based on 7 distinct
measurable properties:
1. Readability
2. Error Prediction
3. Error Detection
4. Complexity
5. MTTF (Mean Time To Failure)
6. Modularity
7. Testability
8/4/2019 SQM-Unit1 and Unit 2
53/103
Quality Measurement
Software Metrics Ranking (Cont) Relationship b/w Quality Criteria & Measurable
properties are:
Readability
Error Prediction
Error Detection
Complexity
MTTF
Modularity
Testability
Usability
Integration
Correctness
Reliability
Maintainability
Expandability
Portability
Others
Measurable Properties Quality Criteria
8/4/2019 SQM-Unit1 and Unit 2
54/103
Quality Measurement
Software Metrics Ranking (Cont)1. Readability as a measure of usability:
This measure is applied in documentation to asseshow such documentation assist in the usability of apiece of a software
2 methods:
a) Flesch-Kincaid readability index forms
b) Fog Index
First method works at a syllable level & calculatedusing the formulae:
Grade Level = 0.39a + b - c
a = no. of words in the sentenceb=mean no. of syllables per 100
words
c = 15.59
8/4/2019 SQM-Unit1 and Unit 2
55/103
Quality Measurement
Software Metrics Ranking (Cont)1. Readability as a measure of usability:
Fog index method:
Fog Index = 0.4a + b
a = no. of words in the sentenceb= percentage of words with more than 2 syllables
8/4/2019 SQM-Unit1 and Unit 2
56/103
Quality Measurement
Software Metrics Ranking (Cont)2. Readability as a measure of Maintainability:
Readability of source code can be done in terms of
Statement lines
Average length of variable names
Total number of program branches
8/4/2019 SQM-Unit1 and Unit 2
57/103
Quality Measurement
Software Metrics Ranking (Cont)3. Error Prediction as a measure of Correctness:
With reference to the quote of Halstead, usingBasic parameters such as number of operators &operands one can predict
Number of errors found during validation Total number of errors found during
development
8/4/2019 SQM-Unit1 and Unit 2
58/103
Quality Measurement
Software Metrics Ranking (Cont)4. Error Detection as a measure of Correctness:
Total number of errors which are not detected has tobe predicted usingRemus, Zilles model (says no. of
detected errors) and error detection efficiency
Number of defect Program length and defectremoval rate
8/4/2019 SQM-Unit1 and Unit 2
59/103
Quality Measurement
Software Metrics Ranking (Cont)5. MTTF as a measure of Reliability:
MTTF is given by
tTOT
MTTF = ---------
Rt
tTOT = Total time periodRt = number of failures in tTOT
8/4/2019 SQM-Unit1 and Unit 2
60/103
Quality Measurement
Software Metrics Ranking (Cont)5. MTTF as a measure of Reliability:
MTTF can be assessed by measurement, estimationor prediction
Reliability can be calculated using the measures
Current MTTF (tF)
Length of the operation phase (tOP)
tOPReliability, R1 = exp ---------
tF
8/4/2019 SQM-Unit1 and Unit 2
61/103
Quality Measurement
Software Metrics Ranking (Cont)6. Complexity as a measure of Reliability:
If a Complexity of software gets increasesthen thereliability will decreases
For Ex: Logical complexity of the software can be
measured by the concept of CyclomaticComplexity
7. Complexity as a measure of Maintainability:
If a Complexity of software gets increasesthen themaintainability will get affected
8/4/2019 SQM-Unit1 and Unit 2
62/103
Quality Measurement
Software Metrics Ranking (Cont)8. Modularity as the measure of Maintainability:
If a modularity increases in the software then theMaintainability of software will also increases
9. Testability as the measure of Maintainability:
Ease & effective testing will have a positive impacton a product
The effectiveness of testing will be measured by theconcept raised by Woodward
8/4/2019 SQM-Unit1 and Unit 2
63/103
Quality Measurement
Problems on Software Metrics The overall measure of quality can be calculated by
following measures:
1. Simple Scoring
2. Weighted Scoring
3. Phased weighting factor method
4. The Kepner-Tregoe Method
5. The Cologne combination method
8/4/2019 SQM-Unit1 and Unit 2
64/103
Quality Measurement
Problems on Software Metrics1. Simple Scoring
In this method, each quality criteria is allocated witha score
Overall quality is given by the mean of individualscores
Sum of each Metric Score
Simple Score = ---------------------------------------------------Total number of Metric scores
8/4/2019 SQM-Unit1 and Unit 2
65/103
Quality Measurement
Problems on Software Metrics1. Example: Simple Scoring
Quality Criteria MetricValue
Usability 0.7Security 0.6
Efficiency 0.4
Correctness 0.8
Reliability 0.6Maintainability 0.6
Adaptability 0.7
Expandability 0.7
Simple Score = ?
8/4/2019 SQM-Unit1 and Unit 2
66/103
Quality Measurement
Problems on Software Metrics2. Weighted Scoring
In this method, each Quality Criteria can beweighted based on its importance
Each quality criterion is evaluated to produce a score
between 0 & 1
Sum of Product of each Metric
Weighted Score = -------------------------------------------
Sum of each Metric weight
Where, Product = Value of each Metric Score X
weight of each Metric score
8/4/2019 SQM-Unit1 and Unit 2
67/103
Quality Measurement
Problems on Software Metrics2. Problem 1: Weighted Scoring
Quality Criteria MetricValue
Weight
Usability 0.7 0.5Security 0.6 0.2
Efficiency 0.4 0.3
Correctness 0.8 0.5
Reliability 0.6 0.4Maintainability 0.6 0.4
Adaptability 0.7 0.1
Expandability 0.7 0.1
Weighted Score = ?
8/4/2019 SQM-Unit1 and Unit 2
68/103
Quality Measurement
Problems on Software Metrics3. Phased weighting factor method
It is an extension of weighted scoring
Here weighting is assigned to a group of
characteristicsbased on work areas defined byMcCall
In this method, 2 work areas[Product Operation &Product Transition]are focused to produce qualitywhere each area will be assumed with additionalweightage of characteristics
8/4/2019 SQM-Unit1 and Unit 2
69/103
Quality Measurement
Problems on Software Metrics3. Phased weighting factor method
3 measures has to be calculated:
Product Operation Weighted Mean (POWM)
Product Transition Weighted Mean (PTWM)
Overall Measure by PWF method
Sum of Product of each PO quality criteria
POWM = -----------------------------------------------------------
Sum of weight of each PO quality criteria
8/4/2019 SQM-Unit1 and Unit 2
70/103
Quality Measurement
Problems on Software Metrics3. Phased weighting factor method
Sum of Product of each PT quality criteria
PTWM = --------------------------------------------------------
Sum of weight of each PT quality criteria
PWF is the additional weighting factor that will be
assumed for the calculation. For Ex: PWF for Product Operations = 2/3
PWF for Product Transition = 1/3
Overall Measure by PWF = ((2/3) X POWM) + ((1/3) X PTWM)
8/4/2019 SQM-Unit1 and Unit 2
71/103
Quality Measurement
Problems on Software Metrics3. Problem 2: Phased Weighted Scoring
Group Quality Criteria MetricValue
Weight PWF
ProductOperation
Usability 0.7 0.5
2/3
Security 0.6 0.2
Efficiency 0.4 0.3
Correctness 0.8 0.5
Reliability 0.6 0.4
ProductTransition
Maintainability 0.6 0.4
1/3Adaptability 0.7 0.1
Expandability 0.7 0.1
POWM = ? ; PTWM = ?; Overall Measure = ?
8/4/2019 SQM-Unit1 and Unit 2
72/103
Quality Measurement
Problems on Software Metrics3. The Kepner-Tregoe Method
In this method, quality criteria is divided into 2 parts
Essential minimum value will be specified for eachcriteria
desirable
4. The Cologne combination method
This method facilitates comparative evaluation
Each product will be ranked based on chosen criteria
8/4/2019 SQM-Unit1 and Unit 2
73/103
Quality Measurement
Problems on Software Metrics Problem 3: Using the following data & the PWF method,
calculate the following: POWM, PTWM and overallmeasure of the product
Group Quality Criteria Metric
Value
Weight PWF
ProductOperation
Usability 0.7 0.5
2/3
Security 0.5 0.5
Efficiency 0.6 0.2
Correctness 0.7 0.5Reliability 0.4 0.4
ProductTransition
Maintainability 0.8 0.4
1/3Adaptability 0.7 0.1
Expandability 0.7 0.1
8/4/2019 SQM-Unit1 and Unit 2
74/103
Quality Measurement
Polarity Profiling In this scheme, Quality of a product is specified in the
ranges from -3 to +3
Comparison analysis is made between required quality
& the actual quality achieved
4 quality criterias have been focused for this methodwhich are namely
Efficiency
Reliability
Maintainability
Adaptability
These criterias would beUsefulto analyze usersatisfaction of the product
8/4/2019 SQM-Unit1 and Unit 2
75/103
Quality Measurement
Polarity Profiling (Cont) When a user complaints about the quality, software
engineer has to improve the product in these areas
Polarity Profiling is the graphical profiles
representation of quality criterias to asses thesatisfaction / expectation of the user
Using this scheme, an engineer can asses the level ofuser happiness where by user expectations & the
developer tension can be minimized
8/4/2019 SQM-Unit1 and Unit 2
76/103
Quality Measurement
Example: Polarity Profiling (Cont)
Unusable
InsecureInefficientIncorrectUnreliableUnmaintainable
Not Adaptable
-3 -2 -1 0 1 2 3
-3 -2 -1 0 1 2 3
Usable
SecureEfficientCorrectReliableMaintainable
Adaptable
Where, = Achieved quality &= required quality
Reliability & efficiency not up to the
8/4/2019 SQM-Unit1 and Unit 2
77/103
Polarity Profiling (Cont)
Consider the following situation
Where, = Achieved quality &= required quality
Unusable
InsecureInefficientIncorrectUnreliableUnmaintainable
Not Adaptable
-3 -2 -1 0 1 2 3
-3 -2 -1 0 1 2 3
Usable
SecureEfficientCorrectReliableMaintainable
Adaptable
Reliability & efficiency not up to thereqd. std. where as adaptability& maintainability appears to be
beyond the levelUsers wont get Happy
Reliability & efficiency reaches the
8/4/2019 SQM-Unit1 and Unit 2
78/103
Polarity Profiling (Cont) Consider the following situation
Where, = Achieved quality &= required quality
-3 -2 -1 0 1 2 3
Unusable
InsecureInefficientIncorrectUnreliableUnmaintainable
Not Adaptable
-3 -2 -1 0 1 2 3
Usable
SecureEfficientCorrectReliableMaintainable
Adaptable
Reliability & efficiency reaches thereqd. std. where as adaptability
& maintainability also appears to bereaches the level
Users will be Happy
8/4/2019 SQM-Unit1 and Unit 2
79/103
Polarity Profiling (Cont) Problem
Quality Criteria ActualQuality
RequiredQuality
Usability 0.3 0.7Security 0.5 0.7
Efficiency 0.3 0.6
Correctness 0.9 0.9
Reliability 0.9 0.9Maintainability 0.4 0.8
Adaptability 0.4 0.8
Discuss the possibilities of User Satisfaction in this module?
8/4/2019 SQM-Unit1 and Unit 2
80/103
Quality Measurements
Gilbs Approach It is an iterative approach aiming to converge towards
clear & measurable multidimensional objectives
This approach makes use the concept of McCall &
Boehm models
For each stage, a partial product can be viewed with userwhere a product will be evaluated to identify whether itmeets the needs of user. If it does not satisfy errors has
to be identified & cleared out during the next iterationuntil a product gets satisfied by the user.
8/4/2019 SQM-Unit1 and Unit 2
81/103
Quality Measurements
Gilbs Approach 5 problem areas highlighted
Simple fact that the method is different
Need of training & re-training and associated costs
Need of effective management
Need to measure progress towards the ultimate goal
Picking up errors
8/4/2019 SQM-Unit1 and Unit 2
82/103
Quality Measurements
Gilbs Approach With reference to Gilbs approach, product quality can
be measured in terms ofQuality Template
It models quality in terms ofQuality attributes&
Resource attributes. This is because quality of a productcan be constrained by the available resources
8/4/2019 SQM-Unit1 and Unit 2
83/103
Quality Measurements
Gilbs Approach
Quality Template can be pictured as:
WorkabilityAvailability
Adaptability
Usability
Other Qualities
PeopleTime
Money
Tools
Other Resources
Qualities Resources
8/4/2019 SQM-Unit1 and Unit 2
84/103
Quality Measurements
Gilbs Approach Quality Attributes
1) Workability
2) Availability
3) Adaptability
4) Usability
8/4/2019 SQM-Unit1 and Unit 2
85/103
Quality Measurements
Gilbs Approach: Quality Attributes & its sub-attributes
Workability
Process Capacity
Storage Capacity
Responsiveness
Availability
Reliability
Maintainability
Integrity
Adaptability
Improvability
Extendability
Portability
Usability
Entry Level Requirements
Learning level requirements
Handling ability
Likability
8/4/2019 SQM-Unit1 and Unit 2
86/103
Quality Measurements
Gilbs Approach: Quality Attributes1) Workability
It is defined as the ability of the system to do work(i.e., transaction processing)
Divided into sub-attributes of: Process capacity It is the ability of the system to
process transactions with in a given unit of time
Storage capacity It is the ability of the system tostore information
Responsiveness It is a measure of the responseto a single event
8/4/2019 SQM-Unit1 and Unit 2
87/103
Quality Measurements
Gilbs Approach: Quality Attributes2) Availability
It is the ability of the system to be used with theproportion of elapsed time
Classified into Sub attributes of:a) Reliability
b) Maintainability
c) Integrity
8/4/2019 SQM-Unit1 and Unit 2
88/103
Quality Measurements
Gilbs Approach: Quality Attributes2) Availability
a) Reliability
It is the ability of the system that should not failfrom its operating environment under any
circumstances
It is the degree to which the system does what itshould to do.
Coz purpose of a system is different & thepurpose of parts of a system will be different. Sothe assessment of reliability will also vary
8/4/2019 SQM-Unit1 and Unit 2
89/103
Quality Measurements
Gilbs Approach: Quality Attributes2) Availability
a) Reliability
Based on the analysis of Dickson, Gilbs havesuggested that reliability can be assessed in terms
of Fidelity
Veracity
Viability
For both Logicware (code)and Dataware (data files)
8/4/2019 SQM-Unit1 and Unit 2
90/103
Quality Measurements
Gilbs Approach: Quality Attributes Dicksons classification of Reliability
Logicware
Fidelity Concerned with the accuracy of algorithmimplementation
Veracity Concerned with the representation of real
world be an algorithm
Viability Is the extent to which an algorithm meets itsspecification in terms of performance &requirements
Dataware
Fidelity Says how accurately an idea is represented by
the data within a application
Veracity How well the data matches with the world
Viability How well the required data fits the designconstraints
8/4/2019 SQM-Unit1 and Unit 2
91/103
Quality Measurements
Gilbs Approach: Quality Attributes2) Availability
b) Maintainability
It is the effort required to locate & fix a fault in theprogram within its operating environment
It is the process of fault handling
Sub-attributes of Maintainability are:
Problem recognition Inspection TimeAdministrative Delay Active Correction
Tool Collection Testing
Problem analysis Test Evaluation
Correction Recovery
8/4/2019 SQM-Unit1 and Unit 2
92/103
Quality Measurements
Gilbs Approach: Quality Attributes2) Availability
c) Integrity
It is the protection of the program fromunauthorized access
It is a measure of a system to remain intact underthreat
Integrity may affects availability
So. A system with poor integrity is likely to beunavailable for much time
8/4/2019 SQM-Unit1 and Unit 2
93/103
Quality Measurements
Gilbs Approach: Quality Attributes3) Adaptability
Classified into sub-attributes of:
Improvability It is the time taken to makeminor changes to the system
Extendability It is the ease of adding newfunctionality to a system
Portability It is the east of moving a systemfrom one environment to another
8/4/2019 SQM-Unit1 and Unit 2
94/103
Quality Measurements Gilbs Approach: Quality Attributes
4) Usability
It is the ability of the system that should facilitate the easeof use & effectiveness of a system
Classified into sub-attributes of:
Handling ability It is a measure that says how wellproductivity can be proceeded after the error is detected
Entry level requirements are human capabilities such asintelligence level, language proficiency
Learning level requirements are resources such as timeneeded to reach the performance of the system
Likability It says how well people like the system
8/4/2019 SQM-Unit1 and Unit 2
95/103
Quality Measurements
Gilbs Approach: Resource Attributes
People
Time
Money
Tools
Other Resources
8/4/2019 SQM-Unit1 and Unit 2
96/103
Quality Measurements
Gilbs Approach: Resource Attributes Time Resource
2 types
Calendar time to delivery
Time taken by the system to carry out the task
People Resource
Measured in terms of Man-years
But the availability of People for the particular
development is critical Ex: can not utilize PASCAL programmers for C
programming
8/4/2019 SQM-Unit1 and Unit 2
97/103
Quality Measurements Gilbs Approach: Resource Attributes
Money Resources
Concerned with both development & maintenancecosts
In general, 80% of cost would be spent to
maintenance for quality improvement
Tool Resources
It comprises all physical resources
8/4/2019 SQM-Unit1 and Unit 2
98/103
Quality Measurements Gilbs Approach: Resource Attributes
For continuous improvements, these resources will beconsidered as constraints to a product
People
TimeMoney
Tools
8/4/2019 SQM-Unit1 and Unit 2
99/103
Quality Measurements Gilbs Approach: Resource Attributes
Gilbs have defined some measures to quantify thoseattributes. And these can be measured in terms of unitsper time
For ex: Transactions per second
Records per minute
Bytes per line
Bits per node per second
8/4/2019 SQM-Unit1 and Unit 2
100/103
Quality Measurements Gilbs Approach: Resource Attributes
Workability
ProcessCapacity
Units per time Transactions per sec.
StorageCapacity
Units stored Bytes per second
Responsiveness Actions per time Response time
Attribute Sub-attribute General measure Example
l
8/4/2019 SQM-Unit1 and Unit 2
101/103
Quality Measurements GQM Model
GQM, the acronym for "Goal, Question, Metric
It is an approach to Software Metrics
It was developed by Victor Basili of the University ofMaryland & the Software Engineering Laboratory at theNASA Goddard Space Flight Center
li
8/4/2019 SQM-Unit1 and Unit 2
102/103
Quality Measurements GQM Model
GQM defines a measurement model on three levels:
Conceptual level (goal)
A goal is defined for an object for a variety ofreasons, with respect to various models ofquality, from various points of view and relative
to a particular environment. Operational level (question)
A set of questions is used to define models of theobject of study and then focuses on that object tocharacterize the assessment or achievement of a
specific goal. Quantitative level (metric)
A set of metrics, based on the models, isassociated with every question in order to answerit in a measurable way.
Q li
8/4/2019 SQM-Unit1 and Unit 2
103/103
Quality Measurements GQM Model
GQM templates are a structured way of specifying goals
Field Examples
Object of study pair programming, static analysis tool
Purpose characterize, understand, evaluate,predict
Focus programmer effort, program reliability
stakeholder developer, customer, manager