Software Standards and Quality

Software Standards

  • Define required attributes of products or processes.

  • Essential for quality management.

  • Types:

    • International, national, organizational, or project standards.

Importance of Standards

  • Encapsulate best practices to avoid past mistakes.

  • Provide a framework for defining quality in organizations.

  • Ensure continuity for new staff to understand standards.

Benefits of Standards

  • Improved management of software:

    • Better adherence to schedules and budgets.

    • Likely achievement of quality goals.

    • Enhanced employee training management.

  • Attract new customers through visible certification.

  • Enhancements in global partnerships and co-development.

Business Benefits of Standards

  • Regulation:

    • Cost-effective compliance.

    • Customer assurance.

    • Reduced product liability.

    • Effective risk management.

    • Improved governance.

  • Cost Optimization:

    • Reduced transaction costs.

    • Enhanced product/process interoperability.

    • Flexibility in supply chain.

  • Maximizing Revenue:

    • Improved speed to market.

    • Enhanced product acceptance.

    • Effective product life cycle management.

  • Business Opportunities:

    • Development of new markets and future sales.

    • Influence on technology and industry evolution.

Problems with Standards

  • Small software organizations often resist adopting standards.

  • Negative perceptions stem from perceived costs, bureaucracy, and documentation issues.

  • Very Small Enterprises (VSEs) struggle to relate to international standards.

Who is ISO

  • International Organization for Standardization (ISO):

    • Largest developer of international standards.

    • Comprises national standards institutes from 162 countries.

    • Functions as a bridge between public and private sectors.

How ISO Standards are Developed

  • National expert delegations meet to reach consensus.

  • Draft International Standard (DIS) is circulated for voting.

  • If approved, it becomes a Final Draft International Standard (FDIS).

ISO 9000 Family

  • Standards for quality management systems, originated in manufacturing.

  • Key requirements include:

    • Procedures covering all key processes.

    • Monitoring process effectiveness.

    • Maintaining adequate records.

    • Checking output for defects and corrective actions.

    • Regular reviews for continual improvement.

Certification and Registration

  • Certification means verification by an independent body.

  • ISO does not perform certification or issue certificates.

Criticism of ISO 9000

  • Perceived as overly time-consuming and paperwork-heavy.

  • Difficult application in software environments.

  • Lacks a roadmap for improvement beyond documentation.

  • Controversy regarding relevance for small firms.