Blame

8b5e15 lisa 2026-04-19 17:40:43
sd: add 6 key-concept explainer pages (PSM, T/V/E, Critical Path, T.E.L.O.S., Roadmap vs Gantt, AI Disclosure) + Hub links
1
# Testing vs Validation vs Evaluation
2
3
Confusing these three terms in the C1-2 writing test or C1-3 interview drops marks instantly — they belong to the same PSM stage (Development) except Evaluation, which is its own stage entirely.
4
5
---
6
7
```mermaid
8
flowchart TB
9
subgraph DEV["PSM Stage 3 — Development"]
10
direction LR
11
T["**Testing**\n──────────\nDoes the program\nwork correctly?\n\nExample: enter 25\nin age field →\ncorrect output"]
12
V["**Validation**\n──────────\nIs the input\nreasonable?\n\nExample: reject −3\nas an age before\nprocessing starts"]
13
end
14
subgraph EVAL["PSM Stage 4 — Evaluation"]
15
direction LR
16
E["**Evaluation**\n──────────\nDoes the solution\nmeet its criteria?\n\nExample: does the\nfinished app satisfy\nall requirements?"]
17
end
18
DEV --> EVAL
19
```
20
21
---
22
23
## Testing
24
25
Testing checks that the program **runs correctly** — given an input, does it produce the expected output? You write test cases before or during coding and run them as you build. Testing catches bugs: wrong calculations, broken logic, features that don't behave as designed. It happens inside the **Development** stage.
26
27
**Example:** You enter `25` into an age field and expect the program to calculate a result based on that age. If the output matches what you designed, the test passes. If the program crashes or returns the wrong value, testing has found a bug to fix.
28
29
## Validation
30
31
Validation checks that **data entered by the user is reasonable or acceptable** before the program processes it. It runs at the point of input — not after — and prevents garbage data from reaching the rest of the program. Like testing, validation is part of the **Development** stage.
32
33
**Example:** The same age field should reject `−3` — that is not a valid age. Validation code checks for this (e.g. `if age < 0: display error`) and stops the bad value from being used in any calculation. The program hasn't "crashed" without validation; it just silently produces a wrong answer.
34
35
> Key distinction: testing checks whether the *program* works; validation checks whether the *data* is acceptable.
36
37
## Evaluation
38
39
Evaluation judges whether the **completed solution meets the evaluation criteria** set during the Design stage and addresses the original problem. It is its own PSM stage — Stage 4 — separate from Development. You are not checking individual inputs or features here; you are assessing the solution as a whole against measurable standards.
40
41
**Example:** "Does the finished app allow 90% of beta testers to complete onboarding in under 2 minutes?" That criterion was written in Design. Evaluation collects evidence (surveys, observation, usage data) and checks whether the criterion was met.
42
43
> Common mistake: saying your solution "works" as part of Evaluation. Whether it works is testing. Evaluation asks whether it *meets user needs and requirements*.
44
45
---
46
47
## Quick reference
48
49
| Term | PSM stage | What it checks | Example |
50
|------|-----------|----------------|---------|
51
| Testing | Development | Program runs correctly | Entering `25` in age field → correct output |
52
| Validation | Development | Input is reasonable/acceptable | Rejecting `−3` as an age before processing |
53
| Evaluation | Evaluation | Solution meets evaluation criteria | "Does it satisfy all functional requirements?" |
54
55
---
56
57
## Why it matters at validation
58
59
The C1-2 writing test and C1-3 interview both probe PSM knowledge directly. A question like "which Development activities does your project plan include?" expects you to name validation, testing, and documentation separately — not lump them together. At the C1-3 interview, you may be asked to point to evidence of each activity in your GitHub Projects board. If your plan only shows "testing" with no separate validation tasks, that signals a gap. At Stage 4, markers also check that you are measuring against your Design-stage criteria, not just describing whether the app runs.
60
61
See `C013-Annotate-Project-Plan.md` for guidance on annotating your plan so each PSM activity is visible to the interviewer.
62
63
---
64
65
## See also
66
67
- [Problem-Solving Methodology](/sd/Problem-Solving%20Methodology)
68
69
---
70
71
← Back to [VCE Software Development Hub](/sd/VCE%20Software%20Development%20Hub)