Download as pdf or txt
Download as pdf or txt
You are on page 1of 11

Software Quality Assurance

Software Quality Assurance


What is SW Quality Assurance?

Is a key activity which apply through out the SW development lifecycle.


Software Quality Assurance
Definition for SW Quality

Degree to which a system, component, or process meets (1) specified


requirements, and (2) customer or user needs or expectations
[IEEE Glossary]

The totality of features and characteristics of a product or service that


bear on its ability to satisfy specified or implied needs
[ISO]
Software Quality Assurance
Definition for SW Quality

The extend it covers,

Functional Requirements

Non Functional Requirement


Software Quality Assurance

An alternate view of Quality:

• is multidimensional, can be difficult to quantify


• has aspects that are not easy to measure
• assessment is subject to constraints (e.g., cost)
• is about acceptable compromises
• criteria are not independent, can conflict
Software Quality Assurance
Quality Criteria include:

correctness
efficiency
flexibility
integrity
interoperability
maintainability
portability
reliability
reusability
testability
usability
Software Quality Assurance
SQA :

Monitoring processes and products throughout the software development


lifecycle to ensure the quality of the delivered product(s)

Monitoring the processes


Provides management with objective feedback regarding process
compliance to approved plans, procedures, standards, and analyses

Monitoring the products


Focus on the quality of product within each phase of the SDLC
e.g., requirements, test plan, architecture, etc.
Objective: identify and remove defects throughout the lifecycle, as early
as possible
Software Quality Assurance
Process Assessment
• Use of standards and process models has a positive impact on
the quality of the software product
– Disciplined, controlled development process
• Examples include:
– ISO 9001
– CMM
• CMU SEI, 5 levels
– SPICE
• Developing a standard for software process assessment
• ISO joint committee, Europe, Australia
– IEEE 1074, IEEE 12207, …
Software Quality Assurance
Product Assessment

• Reviews, inspections, walkthroughs


– Specialized techniques available:
• How to review/assess requirements, architecture,
detailed designs, code
• Testing
• Simulation
• Protoyping
• Formal verification
– Model checking, theorem proving
Software Quality Assurance
Software Testing Types
Software
• Black box testing
Quality Assurance
• White box testing
• Unit testing
• Incremental integration testing
• Integration testing
• Functional testing
• System testing
• End-to-end testing
• Sanity testing
• Regression testing
• Acceptance testing
• Load testing
• Stress testing
• Performance testing
• Release Test

You might also like