Please enable JavaScript.
Coggle requires JavaScript to display documents.
QUALITY AND TESTING The quality of the software is an important aspect of…
QUALITY AND TESTING
The quality of the software is an important aspect of system development. Delivered software needs to be fit for purpose, reliable and maintainable to meet changing requirements. To achieve this the software needs to be tested at various stages of development to ensure that the final software product meets the desired level of quality.
The Quality Triangle
Time - Scope - Cost - Quality
Static Testing
- is the term used to identify and correct errors,that is mistakes made by humans, such as the production of documents, writing of program source, creation of lists of data.
Dynamic testing
- is the term used to identify and correct defects and specifically applies to any form of testing where the program code is exercised with the use of test data
Requirements Specification
Functional specification
Design specification
module and program specification
informal review
Walk through
technical review
Inspection - Inspectors - Scribe - Moderator
Good Software
Meets Functional requirements
- the system must to what it si specified in the requirements document. for example if there is a requirement to display customer details, then the system must provide this feature
Meets non-functional requirements
- This includes characteristics such as reliability, response time, availability, ease of use, and security
Has inherent qualities
- This includes characteristics such as maintainability, efficiency, flexibility, expandability, scalability, reusability, testability, modularity, well documented, portability, and so on
ISTQB - International Software Testing Qualifications Board
Testing shows the presence of defects
Exhaustive testing is impossible
Early testing is benefical
Defect clustering
there is a pesticide paradox
Testing is context dependent
Absence of errors fallacy
The Dynamic Test stages of the V Model Lifecycle
The purpose of dynamic testing is to check the quality of the software by executing the program modules to identify any defects found in them
The software is executed in a number of progressive stages, with each stage building on the confidence of the system gained in preceding stages.
Unit Testing or Module of component testing
Integration testing
System testing
User Acceptance Testing
Black box techniques
White box techniques
Experience-based techniques
Re-testing
Regression Testing
Progression through the Dynamic Testing Stages
Unit testing
Integration Testing
System Testing
User Acceptance testing
Testing in the Lifecycle
The Test Plan
Author and Sign-off's
Revision History
Purpose
System overview
Stakeholders
Roles and responsibilities
Test Schedule
Defect management
Test data
Test scenarios and test scripts
Traceability
Test Tools
Test reports
Entry criteria
Exit Criteria