Lecture 3 Flashcards
[SQ] Cost of Quality (SQ C of Q)
The total costs incurred on quality activities and issues. Often split into:
- prevention costs
- appraisal costs
- internal failure costs
- external failure costs
[SQ C of Q - Costs] Internal Failures
Quality failures - detected PRIOR to product shipment
- defect management, rework, retesting
[SQ C of Q - Costs] External Failures
Quality failures - detected AFTER product shipment
- support desk call time, warranty, recalls, etc
[SQ C of Q - Costs] Appraisal
Discovering the condition of the product
- testing and associated activities, product quality audits
[SQ C of Q - Costs] Prevention
Efforts to ensure product quality
- design reviews, prototyping, code reviews, etc
[SQ C of Q] Boehm’s First Law
Errors are more frequent during requirements and design activities, and are more expensive the later they are removed.
- errors discovered later on during the SDLC (testing/design phases of Waterfall) are more costly to fix
[SQ C of Q] Waterfall vs Agile
Agile leads to higher quality software and thus a lower cost of change.
Costs increase with Agile too, but its much lower costs than with Waterfall.
[SQ] Quality Triangle/Project Management Triangle/Tripe Constraint (SQ Triangle)
A model of the constraints of project management.
Illustrates that project management success is measured by the project team’s ability to manage the project, so that the expected results are produced while managing time and cost.
[SQ Triangle] Constraints
- Time: amount of available time to complete project
- Cost: budgeted amount for project
- Scope: what must be done to produce project’s end result (MVP)
CONSTRAINTS OFTEN COMPETE WITH EACH OTHER.
Exploratory Testing
Exploring, finding out about the software, what it does, what it doesn’t do, what works, and what doesn’t work.
Emphasizes personal freedom and responsibility of the tester to continually optimize the quality of their work by treating test-related learning, test design, test execution, and test result interpretation as MUTUALLY SUPPORTIVE activities that run in parallel throughout the project.
Involves simultaneously learning about the software under test while designing and executing tests, using feedback from the last test to inform the next.
- Best used in combination with scripted testing.
- The tester is constantly making decisions about what to test next and where to spend the limited time.
- Exploratory testing is a hands-on approach in which testers are involved in min. planning and max. test execution.
[Exploratory Testing] Skills <4>
Effectiveness of exploratory testing depends on the tester’s:
- Skill
- Intuition
- Experience
- Ability to follow hunches
[Exploratory Testing] Session Based Time Management (Exploratory Testing S.B.T.M)
1: Test Charter
2: Testing Session
3: Session Notes
4: Session Review
[Exploratory Testing S.B.T.M] Test Charter
Goal or agenda for a test session, defines the target to explore, and provides direction but NOT specific actions.
Explore __target__
with __resources__
to discover __information__.
[Exploratory Testing S.B.T.M] Test Sessions
Planned, uninterrupted, chartered, reviewable.
Time-based (45, 90, 120)
Notes documenting the paths taken and results uncovered.
- Who (tester ID)
- What was tested (functionality, charter, framework)
- When was it tested (date, session begin/end time)
- Where was it tested (domain, OS, build #, additional tech/platforms)
- How it was tested (general steps, thoughts, notes, recordings)
[Exploratory Testing S.B.T.M] Session Review
Review details of test execution vs objectives to ensure they’ve been met.
Review what was learned.
Discuss if additional tests should be done based on findings.