Software Assurance Models & Software Quality Assurance Trends



Models for Quality Assurance (QA Models)

Quality Assurance models define systematic activities to ensure that software processes and products meet specified quality standards.

Software Assurance Models & Software Quality Assurance Trends

Objectives

  • Prevent defects rather than detect them later
  • Improve development processes
  • Ensure customer satisfaction

Common QA Models

ModelFocus
ISO ModelsStandardization & documentation
CMM / CMMIProcess maturity
TMMTesting maturity
SPICEProcess assessment
Malcolm BaldrigeOrganizational excellence
P-CMMWorkforce capability

Real-life example: Just like a restaurant follows hygiene standards daily to avoid customer complaints, QA models help software teams avoid defects early.

ISO 9000 Series

ISO 9000 is an international quality management standard developed by the International Organization for Standardization (ISO).

Purpose

  • Ensure consistent product quality
  • Improve customer satisfaction
  • Standardize processes

Important ISO Standards

StandardDescription
ISO 9000Fundamentals & vocabulary
ISO 9001Quality Management System (QMS) requirements
ISO 9004Performance improvement guidelines

Key Principles

  • Customer focus
  • Leadership
  • Process approach
  • Continuous improvement

Example: A software company certified with ISO 9001 follows documented procedures for coding, testing, and delivery.

Capability Maturity Model (CMM)

CMM evaluates the maturity of software development processes in an organization.

Five Levels of CMM

LevelNameDescription
1InitialAd-hoc, chaotic processes
2RepeatableBasic project management
3DefinedDocumented & standardized processes
4ManagedProcess measured & controlled
5OptimizingContinuous process improvement

Example: Level 1 = No fixed study routine Level 5 = Daily study plan + performance analysis

Capability Maturity Model Integration (CMMI)

CMMI is an improved and integrated version of CMM, combining multiple process areas.

CMMI Models

ModelFocus
CMMI-DEVDevelopment
CMMI-SVCServices
CMMI-ACQAcquisition

CMMI Maturity Levels

Same 5 levels as CMM but broader and more flexible.

Benefit:

  • Higher productivity
  • Better quality products
  • Reduced rework cost

Test Maturity Models (TMM / TMMi)

Test Maturity Models measure the maturity of testing processes in an organization.

Levels of TMM

LevelFocus
1Ad-hoc Testing
2Test Planning
3Test Integration
4Test Measurement
5Test Optimization

Example: Manual testing without planning → Mature automation with metrics

SPICE (ISO/IEC 15504)

SPICE stands for Software Process Improvement and Capability Determination.

Purpose

  • Assess software process capability
  • Improve processes systematically

Capability Levels

LevelDescription
0Incomplete
1Performed
2Managed
3Established
4Predictable
5Optimizing

Difference from CMM: SPICE focuses on process capability, not organizational maturity.

Malcolm Baldrige Quality Model

A framework for organizational performance excellence developed in the USA.

Seven Criteria

  1. Leadership
  2. Strategy
  3. Customers
  4. Measurement & Analysis
  5. Workforce
  6. Operations
  7. Results

Example: Used by large IT firms to benchmark overall performance, not just software quality.

People Capability Maturity Model (P-CMM)

P-CMM focuses on improving workforce capability and human resource practices.

P-CMM Levels

LevelFocus
1Initial
2Managed
3Defined
4Predictable
5Optimizing

Benefits

  • Skill development
  • Reduced employee turnover
  • Better team performance

Real-life example: Training employees systematically instead of learning only on the job.

Comparison Summary Table

ModelMain Focus
ISO 9000Quality standards
CMMProcess maturity
CMMIIntegrated process improvement
TMMTesting maturity
SPICEProcess capability
BaldrigeOrganizational excellence
P-CMMPeople & skills development

Software Process – PSP and TSP

Personal Software Process (PSP)

PSP is a self-improvement process designed for individual software engineers to improve their personal work quality.

Objectives of PSP

  • Improve estimation accuracy
  • Reduce defects
  • Increase productivity

PSP Levels

LevelFocus
PSP0Basic measurement
PSP1Planning & estimation
PSP2Quality management
PSP3Cyclic development

Example: Like a student tracking daily study time and mistakes to improve exam scores.

Team Software Process (TSP)

TSP extends PSP concepts to software development teams.

Objectives

  • Build self-managed teams
  • Deliver high-quality software on time
  • Improve team accountability

TSP Activities

  • Team planning
  • Quality goals setting
  • Regular performance tracking

Example: A cricket team planning roles, strategy, and performance metrics.

Object-Oriented (OO) Methodology

OO methodology organizes software using objects, which combine data and behavior.

Key Concepts

  • Encapsulation
  • Inheritance
  • Polymorphism
  • Abstraction

Impact on Quality

  • High reusability
  • Easy maintenance
  • Reduced complexity

Real-life example: A mobile phone object containing camera, calling, and apps as features.

Cleanroom Software Engineering

Cleanroom is a defect prevention approach, not defect removal.

Key Principles

  • Formal specification
  • Incremental development
  • Statistical quality control

Benefits

  • Very low defect rate
  • High reliability

Example: Manufacturing medicines in a sterile environment to avoid contamination.

Defect Injection and Prevention

Defect Injection

Introducing known defects deliberately to:

  • Measure testing effectiveness
  • Improve defect detection capability

Defect Prevention

Activities performed to avoid defects:

  • Root cause analysis
  • Training
  • Process improvement

Example: Fire drills to prepare people before real emergencies.

Internal Auditing and Assessments

Systematic examination of processes to ensure compliance with standards.

Objectives

  • Identify process gaps
  • Ensure quality standards
  • Support continuous improvement

Types

Audit TypePurpose
Process AuditCheck workflows
Product AuditCheck deliverables
Compliance AuditCheck standards adherence

Inspections & Walkthroughs

  • Inspections: Formal peer review technique to identify defects early.
  • Walkthroughs: Author-led review to explain work products.

Comparison

FeatureInspectionWalkthrough
FormalityHighMedium
ModeratorRequiredNot mandatory
Defect DetectionVery highModerate

Example: Teacher checking answer sheets vs student explaining answers.

CASE Tools and Their Effect on Software Quality

CASE (Computer-Aided Software Engineering) tools support automation of SDLC activities.

Types of CASE Tools

Tool TypeFunction
Upper CASERequirement & design
Lower CASECoding & testing
Integrated CASEEnd-to-end support

Impact on Quality

  • Reduced human error
  • Better documentation
  • Improved consistency

Examples

  • Jira – issue tracking
  • Selenium – test automation
  • Git – version control

Summary Table

TrendMain Benefit
PSP/TSPIndividual & team improvement
OO MethodologyReusability & maintainability
CleanroomDefect prevention
Defect PreventionReduced rework
AuditsCompliance & improvement
ReviewsEarly defect detection
CASE ToolsAutomation & quality consistency