software quality1 software quality factors how to describe and measure software quality
TRANSCRIPT
Software quality 1
Software quality factors
How to describe and measure software quality
Software quality 2
Quality in generalGarvin’s five definitions of quality (1988)
• Transcendent– Quality is universally recognizable
• Product-based– Quality is a precise and measureable variable
• User-based– Quality is fitness for intended use
• Manufacturing-based– Quality is conformance to specifications
• Value-based– Quality is defined in terms of costs and prices.
Software quality 3
The software life cycle
• The software life cycle describes the production, use, and maintenance of a piece of software.
• Different software has different life spans– Short life spans
• Prototypes made for an exhibition
– Long life cycles• Most administrative systems
Software quality 4
Functional vs. non-functional requirements
• Examples: Hotel reservation• Functional requirements
– Reservations and cancellations– Meals and extra services– Billings
• Non-functional requirements– Max. time to do reservation < 2 min– Downtime < 1%– Run on Microsoft Windows + Mac– Easy to change DBMS
Software quality 5
Software quality framework
• Software quality factor– Management-oriented view of produce quality
• Software quality criteria– Software-oriented attributes which provides
quality
• Software quality metrics– Quantitative measures of those attributes– Figure 1. Software quality framework, page
959
Software quality 6
Example quality factors
• Table 1. Example Quality Factors, page 959
• Figure 2. Quality factors perspectives, page 960
• Table 2. Definition of Software Quality Factors, page 961
Software quality 7
Definitions of software quality factors
• Figure 4. Relationship of criteria to software quality factors, page 963
• Table 4. Criteria Definitions for Software Quality Factors, page 965
• Figure 5. Relationships between software quality factors, page 967
Software quality 8
Grouping software quality factors
• Product operations– Will it work correctly now and in the future?
• Product revision– Can it be changed?
• Product transition– Can it be used in other contexts?– Figure 3. Allocation of software quality factors
to life cycle activity, page 962
Software quality 9
Metrics
• How to measure software quality?– We need some numbers!– Metrics are measurements of whether the criteria
exists or not, and to what degree
• Example metrics– Checklists: Grading the software– Inspection guidelines– Quantitative measures– Table 5. Quality Metrics Summary, page 966-967
Software quality 10
PracticeHow to do it?
• User quality goals• Identify quality requirements. Depends on
– Life cycle– Risk of use– Performance– Etc.– Figure 6. Quality factor specification process, page
968– Table 6. Quality Factors Relates to System
Characteristics, page 968
• Traceability
Software quality 11
References
• James McCall Quality Factors, page 958-969 in– John J. Marcianiak (editor) Encyclopedia of
Software Engineering, Volume 2, Wiley 1994
• David A. Garvin Managing Quality, The Free Press 1988, page 40-46