Frequently Asked Questions
What is Testing?
- involves the execution of software and the observation of the program behavior or outcome, compared to expected requirements / specifications
- The demonstration of the validity of software at each stage in the system development life cycle
- Determination of the validity of the final system with respect to user needs and requirements
- Examination of the behavior of a system by executing the system on sample test data
When do you stop Testing?
- Most traditional testing techniques use some kind of test coverage information as the stopping criteria, with implicit assumption that higher coverage means higher quality or lower level of defects
- More formal testing techniques include control flow testing that attempts to cover execution paths and domain testing that attempts to cover boundaries between different input sub-domains
- Product Reliabiltiy Goals can be another stopping criteria
What are risks?
- A risk is a condition that can result in a loss
- The probability that a loss will occur is the major concern
- Risks will exist, but we must take countermeasures to reduce the probability that it will occur
- Testing is a means of identify and reducing risks
Possible Risks for a Software System
- Incorrect results will be produced
- Unauthorized transactions will be accepted by the system
- Computer file integrity will be lost
- Processing cannot be reconstructed
- Service provided to user will degrade to an unacceptable level
- Security of system is compromised
- Results of system are unreliable
- System will be difficult to use
- Programs will be unmaintainable
- System will not be portable
- Performance levels become unacceptable
- System will be difficult to operate
An effective approach to testing is to identify and evaluate the risks in the system.
What are the 80/20% Rules in Testing?
- 20% of the software components are responsible for 80% of the problems
- 80% of testing coverage can take as much time as the last 20% of coverage.
What is Inspection?
- are examinations of software artifacts by human inspectors aimed at discovering and fixing faults in the software system
- critical reading and analysis of software code or other artifacts, such as designs, product specification, test plans, test cases, etc.
- identified faults need to be removed as a result of the inspection process, and removal needs to be verified
- a technique for defect prevention and removal






Recent Comments