Title: Software Quality: An overview from the perspective of total quality management by Kan, Basili, Shapi
1Software Quality An overview from the
perspective of total quality management by Kan,
Basili, Shapiro
- General Quality
- necessary condition but not sufficient for
todays world market - multidimensional concept involving
- entity of interest, view of that entity, quality
attributes of that entity - Multiple definitions
- a) conformance to requirements (Crosby) and
- b) fitness for use (Juran)
- Product Quality
- two levels
- small q - at product level
- Defect rate (e.g. use bugs/kloc metric)
- Reliability (e.g. use meantime-to-failure
metric) - big Q - product level PLUS customer satisfaction
level - quality loop concept
- customer wants
- requirements
- product design and implementation according to
requirements - distribute and service the product
- customer satisfaction
this is non-trivial to do
2Software Quality (cont.)
- 3. Process Quality
- Ensuring that each intermediate product resulting
from the steps of development process is of good
quality and satisfies the internal customers who
have to perform the next step. - Ensuring that the methodology, tools, and
technologies employed for the process are under
control and are improving. - ---- Need metrics for this ?---
3Total Quality Management (TQM)
- A style of management that creates an
organizational culture for improvement of - product
- process
- service
- to achieve success through customer satisfaction
- Key elements are
- Customer focus
- Process
- Human Culture
- Measurements
- Several Organizational frameworks have been
proposed to improve quality - Plan-Do-Check-Act (improving/optimizing a
process) - Quality Improvement Paradigm/Experience Factory
(building cont. improving org.) - SEI Capability Maturity Model (staged process
improvement) - Lean Enterprise Management (valued added
process and development)
41. Customer Focus
- Understanding the customers wants and needs is a
key element for software TQM - Early in the development phase - verify
requirements and early feedback - rapid throwaway prototyping
- iterative enhancement
- evolutionary development
- Late in the development phase controlled
feedback - customer beta test
- customer burn-in for early customers
52. Process, Technology, and Development
- Defect Prevention Process
- causal analysis
- action team
- (action kick off meetings)
- action tracking
- Reviews and Inspections
- Formal Methods
- Improvements in Design Paradigms (e.g. OO)
- Programming Languages
- Development Platforms, Libraries, Change Control
and Middleware (Screen -Logic DataBase M-V-C) - Software Reuse
63. Human Culture
- Organizational Participation (total)
- Management commitment and leadership
- Professional buy-in and empowerment
- customer interaction (my addition for emphasis)
- Integrated Operational Approach
- project (schedule/resource/function perspective)
- process
- quality
- Communication is a huge factor for human culture
Many software projects are group activities --
social, psychological, organizational
skills are relatively important
74. Data, Measurement, and Model
- Collecting data and performing measurements are
absolutely necessary - well defined metrics (a necessary pre-req.)
- Goal/Question/Metric (GQM)
- models are needed
- reliability models
- quality models (may be used for both development
and service) - complexity models
- service models (my addition)
- must have means to collect and record