OM 456 Lecture 5 Fundamentals of SOFTWARE QUALITY
Software Quality Assurance includes the following activities:
-Process definition and implementation -Auditing -Training
Software Quality Control Testing
Unit Testing Integration Testing System Testing Acceptance Testing
Software Quality Assurance (SQA) is
a set of activities for ensuring quality in software engineering processes (that ultimately result in quality in software products).
Software Quality Control (SQC) is
a set of activities for ensuring quality in software products.
Requirements:
business/product/software requirements
Explicit:
clearly defined and documented
Software quality is the
degree of conformance to explicit or implicit requirements and expectations.
Expectations:
mainly end-user expectations
Implicit:
not clearly defined and documented but indirectly suggested
Software Quality Assurance encompasses
the entire software development life cycle and the goal is to ensure that the development and/or maintenance processes are continuously improved to produce products that meet specifications/requirements
The quality management system under which the software system is created is normally based on one or more of the following models/standards:
• CMMI • Six Sigma • ISO 9000
Software Quality Assurance Processes could be:
•Software Development Methodology •Project Management •Configuration Management •Requirements Development/Management •Estimation •Software Design •Testing •Other processes
What is software quality?
As with any definition, the definition of 'software quality' is also varied and debatable. Some even say that 'quality' cannot be defined and some say that it can be defined but only in a particular context. Some even state confidently that 'quality is lack of bugs'. Whatever the definition, it is true that quality is something we all aspire to.
Once the processes have been defined and implemented, Quality Assurance has the following responsibilities:
•identify weaknesses in the processes •correct those weaknesses to continually improve the process
Definition of software quality by ISTQB
The totality of functionality and features of a software product that bear on its ability to satisfy stated or implied needs.
Software Quality Control Reviews
Requirement Review Design Review Code Review Deployment Plan Review Test Plan Review Test Cases Review
Software Quality Control includes the following activities:
Reviews Testing
Definition of quality by ISTQB
The degree to which a component, system or process meets specified requirements and/or user/customer needs and expectations.
Definition of software quality by IEEE
The degree to which a system, component, or process meets specified requirements. The degree to which a system, component, or process meets customer or user needs or expectations.
