Lecture - 9
Lecture - 9
• TQM Advocates:
– Continuous process improvements through process
measurements
• TQM goes beyond documenting processes
– Optimizes them through redesign.
• Over the years the quality paradigm has shifted:
– From product assurance to process assurance.
Total Quality Management (TQM)
Software Testing
Process Improvement
ISO 9000-3
Guidelines for the application of
ISO 9001 to the design,
development and maintenance of
software
ISO 9000 for Software Industry
• ISO 9000 is a generic standard:
– Applicable to many industries,
• Starting from a steel manufacturing industry to a service
rendering company.
• Many clauses of ISO 9000 documents:
– Use generic terminologies
– Very difficult to interpret them in the context of software
organizations.
Software vs. Other Industries
ISO 9000
ISO 9000-3
Guidelines for the application of
ISO 9001 to the design,
development and maintenance of
software
ISO 9000 Part-3
• ISO released a separate document called ISO 9000 part-3 in
1991:
– To help interpret the ISO standard for software industry.
• At present:
– Official guidance is inadequate.
ISO 9000: 2000
• An important goal is to improve effectiveness via process
performance metrics:
– Numerical measurement of the effectiveness of various
activities.
– Continual process improvement and tracking customer
satisfaction have been made explicit.
Why Get ISO 9000 Certification?
Enter surveillance
mode
How to Get ISO 9000 Certification?
• Application stage:
– Applies to a registrar for registration.
• Pre-assessment:
– The registrar makes a rough assessment of the
organization.
How to Get ISO 9000 Certification?
• Document review and adequacy audit:
– Process and quality-related documents.
– The registrar reviews the documents.
– Makes suggestions for improvements.
How to Get ISO 9000 Certification?
• Compliance Audit:
• The registrar checks:
• Whether the suggestions made by it during review have
been complied.
How to Get ISO 9000 Certification?
• Registration:
– The registrar awards ISO 9000 certificate after
successful completion of all previous phases.
• Continued surveillance:
– The registrar continues monitoring the organization
periodically.
ISO 9000 Certification
• An ISO certified organization :
– Can use the certificate for corporate advertisements.
– Cannot use the certificate to advertise its products.
• ISO 9000 certifies organization's process
• Not any product of the organization.
– An organization using ISO certificate for product
advertisements:
• Risks withdrawal of the certificate.
ISO 9001 Requirements
• Management responsibility • Control of customer supplied product
• Quality system • Product identification and
• Contract review traceability
• Process control
• Design Control
• Document and data control • Inspection and testing
• Control of inspection, measuring and
• Purchasing
test equipment
ISO 9001 Requirements
• Control of non-confirming • Internal quality audits
product • Training
• Corrective and preventive action • Servicing
• Handling, storage, packaging, • Statistical techniques
preservation and delivery
• Control of quality records
Quality Standards in Software Development
International Standards
ISO/IEC 25010 (Software Product Quality Model)
ISO 9001 (Quality Management System – QMS)
ISO/IEC 27001 (Information Security Management System
– ISMS)
ISO/IEC 12207 (Software Life Cycle Processes)
NIST (National Institute of Standards and Technology)
Capability Maturity Models
CMMI (Capability Maturity Model Integration)
Six Sigma
TMMi (Test Maturity Model Integration)
Quality Certifications in Software Development
• Individual Certifications
– Certified Software Quality Analyst (CSQA)
– Certified Software Tester (CSTE)
– ISTQB (International Software Testing Qualifications Board)
Certifications
– Certified Information Systems Security Professional (CISSP)
– Project Management Professional (PMP)
• Organizational Certifications
– ISO 9001 Certification
– ISO/IEC 27001 Certification
– CMMI Certification
ISO 9126 (Software Prduct Quality Model)
• ISO/IEC 9126 is an international standard that defines a
framework for evaluating software quality.
• ISO/IEC 25010:2011
• ISO/IEC 25010:2023
• ISO/IEC 25019:2023
• ISO/IEC 25002:2024
Salient Features of ISO 9001 Requirements
• All documents concerned with the development of a software
product:
– Should be properly managed, authorized, and controlled.
• Proper plans should be prepared:
– Progress against these plans should be monitored.
Salient Features of ISO 9001 Requirements
• Important documents independently checked and reviewed:
– For effectiveness and correctness.
• The product should be tested :
– Against specification.
• Several organizational aspects:
– e.g., management reporting of the quality team.
Shortcomings of ISO 9001 Certification
Managed (4)
Defined (3)
Repeatable (2)
Initial (1)
Level 1: (Initial)
• Organization operates
• Without any formal process or project plans
• An organization at this level is characterized by
• Ad hoc and chaotic activities.
Level 1: (Initial)
• Defects proliferate
Level 2: (Repeatable)
• Basic project management practices
• Tracking cost and schedule exist.
• Size and cost estimation techniques:
• Function point analysis, COCOMO, etc. used.
• Development process is ad hoc:
• Not formally defined
• Also not documented.
Level 2: (Repeatable)
• Process used for different projects might vary between
projects:
• Earlier success on projects with similar applications can be
repeated.
• Opportunity to repeat process exist when a company
produces a family of products.
Level 3: (Defined)
Software Software
Project Configuration
Planning Management
Level 2 KPAs
Level 3 KPAs
• Process definition and documentation.
• Reviews
• Training program
Level 3 KPAs
Level 3 KPAs
Level 4 KPAs
• Quantitative measurements.
• Quantitative Process management.
• Control process performance quantitatively
• Focus on identifying and correcting causes of variation
Level 5 KPAs
• Defect prevention.
• Causal analysis of defects to prevent recurrence
• Technology change management.
• Identify and transfer beneficial new technologies
• tools
• methods
• processes
• Process change management.
Examples of Metrics Deployed
• Estimated source lines of code (SLOC)
• Actual SLOC
• Number of issues raised during code inspection
• Number of defects detected during unit testing
• Number of defects detected during system testing
Comparison Between ISO 9001 and SEI CMM
ISO CMM
Is a Certification Is an Assessment
Used for all Industry Used for Software
Development
Yearly re-certification No follow up after reaching level
Single Level Five Levels
Third Party Certification No Certification
Proliferation of CMMs
Software
CMM • Different structures, terms,
Systems
Engr ways of measuring maturity
CMM
People • Causes confusion
CMM
IPD
Software
Acq • Hard to use for a combined
CMM
CMM improvement program
FAA
iCMM Systems • Hard to use multiple models for
Security
Engr CMM a supplier selection
Real-World Applications of CMMI
• Industries Using CMMI for Software Quality
– IT & Software Development: Improves SDLC efficiency.
– Banking & Finance: Ensures secure software and risk
management.
– Healthcare & Pharma: Reduces errors in medical software
solutions.
– Government & Defense: Ensures compliance and reliability
in critical systems.
• Example: A software firm improved defect detection by 35% by
moving from CMMI Level 2 to Level 4, implementing better test
automation and risk assessment.
ISO/IEC 15504 (SPICE)
• ISO/IEC 15504, commonly known as SPICE (Software
Process Improvement and Capability Determination), is an
international standard for assessing and improving software
development processes.
• It provides a structured approach to evaluating process
maturity and capability in software engineering.
ISO/IEC 15504 (SPICE)
• Structure of SPICE: SPICE defines two key dimensions:
– Process Dimension: SPICE categorizes software
development into process areas, covering:
• Primary Lifecycle Processes: Requirements,
development, maintenance.
• Organizational Processes: Process management,
improvement.
• Supporting Processes: Quality assurance, risk
management.
ISO/IEC 15504 (SPICE)
• Capability Dimension: Each process is evaluated on a six-
level capability scale: