ELEC5618 · Software Quality Engineering
Software Quality in a Company
Week 2 of University of Sydney ELEC5618 Software Quality Engineering looks at how quality is organised inside a real company: classic software failures, the nine-way classification of software error causes, the cost of quality, and the People Capability Maturity Model (P-CMM) for developing the workforce that builds quality software. It also defines software quality itself (IEEE 730, ISO 9000). This grounds why defects arise and where quality mechanisms intervene, and it seeds the product-structure lab behind Assignment 1.
What this chapter covers
- 01Defining software quality: IEEE 730 (meets established requirements representing stakeholder needs) vs ISO 9000 (inherent characteristics fulfil requirements); fit-for-use vs conformance
- 02Classification of software error causes (nine causes: faulty requirements, communication failures, deliberate deviations, logical design, coding, non-compliance with documentation, inadequate testing, UI/procedure, documentation errors)
- 03Quality-factor models: McCall (product operation / revision / transition) and ISO/IEC 25010
- 04Cost of quality = conformance (prevention + appraisal) + nonconformance (internal + external failure), plus measurement/test-equipment cost
- 05Process standards vs management standards (IEEE 730 / IEEE 1012 vs CMMI / SPICE)
- 06People CMM five maturity levels: Initial → Repeatable → Defined → Managed → Optimizing
- 07Initial quality mechanisms a team puts in place
- 08How error causes map to the phase where a defect is introduced
Classifying a defect's root cause and its cost-of-quality category
- +1Identify the primary error cause: the requirement itself was incomplete/faulty — a faulty definition of requirements by the client (missing an essential detail, the fiscal-year start). A secondary contributor is a client–developer communication failure (the assumption was never confirmed).
- +1Locate where the fault entered: in the requirements phase, not coding — the code faithfully implements a wrong specification, so this is a validation gap (right-product question), not a verification gap.
- +1Cost-of-quality category: it was found at acceptance but before delivery to the customer's users, so the rework is an internal failure cost (correcting a defect before the customer receives the product). Had it shipped, it would become an external failure cost.
- +1Earlier is cheaper: a requirements review or a clarifying question (prevention/appraisal cost) would have cost far less than reworking code, tests and reports at acceptance — the classic argument that defects get more expensive the later they are caught.
Key terms
- Software quality (IEEE 730)
- The degree to which a product meets established requirements that accurately represent stakeholder needs, wants and expectations. A product should be both fit for use and conformant to requirements.
- Classification of software error causes
- A nine-category scheme for where defects originate: faulty requirements, client–developer communication failures, deliberate deviations, logical design errors, coding errors, non-compliance with documentation/coding standards, inadequate testing, UI/procedure errors and documentation errors.
- Cost of quality
- The total cost of conformance plus nonconformance: prevention cost, appraisal cost, internal failure cost (fix before the customer gets it), external failure cost (found after delivery), and measurement/test-equipment cost. Prevention and appraisal are cheaper than failure.
- People CMM (P-CMM)
- A maturity framework for developing an organisation's workforce, with five levels — Initial (ad-hoc), Repeatable, Defined, Managed and Optimizing — aimed at improving capability and reducing reliance on a few key individuals.
- McCall's quality model
- An early software-quality model grouping factors into product operation (e.g. correctness, reliability, usability, integrity), product revision (maintainability, testability, flexibility) and product transition (portability, reusability, interoperability).
- Process vs management standards
- Process standards target a project team and prescribe how to carry out work (e.g. IEEE 730, IEEE 1012); management standards target the organisation of SQA systems and supplier capability (e.g. CMMI, ISO/IEC 15504 / SPICE).
Software Quality in a Company FAQ
What are the software error causes I need to know?
The unit teaches a nine-category classification: faulty definition of requirements, client–developer communication failures, deliberate deviations from requirements, logical design errors, coding errors, non-compliance with documentation/coding instructions, an inadequate (disintegrated) testing process, user-interface and procedure errors, and documentation errors. In a scenario question, name the primary cause and, where relevant, a secondary contributor.
How is cost of quality split up?
Into conformance costs (prevention and appraisal — the money you spend to avoid and detect defects) and nonconformance costs (internal failure, fixed before the customer sees it, and external failure, found after delivery), plus the capital cost of measurement/test equipment. The recurring exam point is that prevention and appraisal are cheaper than failure, so quality effort pays for itself when it moves defects earlier.
What is the People CMM and how does it differ from CMM/CMMI?
The People CMM applies the same five-level maturity idea — Initial, Repeatable, Defined, Managed, Optimizing — to developing people rather than processes. Its goal is to grow organisational capability, align individual and organisational motivation, and avoid depending on a few irreplaceable individuals. CMM/CMMI (covered later) applies maturity to the software process itself.
Can AI help me with the Week 2 material?
Yes. Sia can quiz you on the nine error causes, walk a cost-of-quality classification, and check whether you have placed an organisation at the right People CMM level with justification. Use it to rehearse the classifications; it does not complete graded work, and the University of Sydney academic-integrity policy applies.
Exam move
Turn Week 2 into three memorised lists you can reproduce under exam pressure: the nine software-error causes, the five cost-of-quality categories, and the five People CMM levels. For each, keep a one-line example so a scenario question is easy to answer. Practise the two-step move the worked example shows — separate where a defect entered (its cause/phase) from when it was caught (its cost category) — because examiners test that you do not conflate them. Sketch the two definitions of software quality (IEEE 730 and ISO 9000) and the fit-for-use vs conformance framing, since a short-answer question may ask you to define quality. Confirm assessment details on Canvas.
Working through Software Quality in a Company in ELEC5618? Sia is AskSia’s AI Software Engineering tutor — ask any ELEC5618 Software Quality in a Company question and get a clear, step-by-step explanation grounded in how ELEC5618 is taught and assessed. Read this chapter free, then take your hardest questions to Sia.