What is the Ishikawa RCA diagram?
Also know as the fishbone diagram or cause & effect diagram is visual tool for root cause analysis that organizes potential causes of a problem into categories
What are the 5 view of Quality?
What is the Transcendental View?
It is hard to describe but it is something that can be measured, or described
“you see it, you know it”
What is the Users View?
Meeting customer needs and preferences. Also User requirements are met
What is the Product View?
The quality of the product is the sum of all quality of the components
The product is only as good as its weakest component
What is the Manufacturing View?
If the manufacturing methodology is of good quality, the product will be good
What is the Value View?
Basically the value we attach to the things we use
Is complete testing possible?
No, because the domain of possible inputs is really really large and it is not feasible to test everything. Therefore we can’t really prove a program does not contain bugs
What is Static Analysis/Testing?
Static testing is when we don’t have any code to execute so we examine the code and reasons for behavior that may arise during the run time
e.g. code review, inspection, algo. analysis
What is Dynamic Analysis/Testing?
Dynamic testing is when we have the executable and we expose the possible failures of the program.
What are the 3 types of Dynamic Testing covered?
What is validation?
Evaluation of the software that determines if the product meets its intended use
i.e. building the correct product
i.e. meeting requirementes
What is verification?
Evaluation of the software that determines if the product in a certain development phase satisfies the requirements established before the start of the phase
i.e. building the product correctly
i.e. built using good methodology
Why do we test?
To make sure we are building the correct product (validation) and making sure the product is built right (verification)
What is a test case?
A set of input and expected result
What is testing?
Comparing the input of a unit of code to the expected result
What is the SDLC?
Requirements, Design, Test Cases, Implementation
Who should do unit testing and why?
The developers should do unit testing while developing so that bugs can be found sooner and therefore mitigate much more expensive fixes when bugs are found in the later phases.
What is a failure?
Fail to meet requirements
What is an error?
It is the state of the system
What is a fault/defect/bug?
What causes the failure and puts the system in the error state
What is the state of the system?
It is defined by all the value of variables in the system at any time
What is debugging?
Finding and removing defects
What is a test oracle?
It is mechanism that verifies the correctness of program outputs.
Generate expected results for the test inputs
Compare the expected results with the actual results of execution