FIT4004 Lecture Notes - Lecture 1: Software Quality Assurance, Functional Completeness, Fault Tolerance
Week 1 - What is QA?
Terminology
Software Quality Assurance:
●Degree to which a software product meets established requirements
●Also dependent on how accurate requirements meet stakeholder
needs/wants/expectations
●Comprised of three parts
○Ensuring product has desired quality properties
○Ensuring process by which product was built is of sufficient quality.
○Ensuring QA of product and process is of sufficient quality
Product quality is about ensuring that deliverables have desired quality properties.
Process quality is ensuring that the software development processes and policies, as
defined by project management plans, are being followed
Artifacts: the tangible (or at least identifiable) outputs of a project. (Eg. requirements
documents, design documents, process documents, meeting minutes, chat logs, etc).
Deliverable: Artifacts that are delivered directly to the customer
Quality properties:
●Functionality: degree to which a product or system provides functions that meet
stated and implied needs when used under specified conditions
○Functional completeness
○Functional correctness
○Functional appropriateness
●Reliability: degree to which a system, product or component performs the
specified functions under specified conditions for a specified period of time
○Maturity
○Availability
○Fault tolerance
○Recoverability
●Usability: degree to which a product or system can be used by specified users to
achieve specified goals with effectiveness, efficiency and satisfaction in a
specified context of use
Document Summary
Degree to which a software product meets established requirements. Also dependent on how accurate requirements meet stakeholder needs/wants/expectations. Ensuring process by which product was built is of sufficient quality. Ensuring qa of product and process is of sufficient quality. Product quality is about ensuring that deliverables have desired quality properties. Process quality is ensuring that the software development processes and policies, as defined by project management plans, are being followed. Artifacts : the tangible (or at least identifiable) outputs of a project. (eg. requirements documents, design documents, process documents, meeting minutes, chat logs, etc). Deliverable : artifacts that are delivered directly to the customer. Functionality : degree to which a product or system provides functions that meet stated and implied needs when used under specified conditions. Reliability : degree to which a system, product or component performs the specified functions under specified conditions for a specified period of time.