CY10: Capstone: a clinic app you can vouch for

Lesson 2 of 5 · reading 15–25 minutes; practice and project time is on the module page

Project 1: assessing the old server

🎯You'll be able to

Turn the assessment skills from CY1 and CY2 into working code and a report the clinic can act on.

🏠The everyday picture

A home inspector's report: each problem has a photo, a severity and the fix, with the most dangerous first, and a cover page the owner can read in two minutes.

📘What it really is

📝A worked example

Input: the starter's in_range, which compares versions as text.

Steps:

  1. Run python -m pytest tests/test_assessment.py -k 03. It fails, because practice-pdf 0.9.12 is wrongly reported as below 0.9.9.
  2. Rewrite parse_version to return a tuple of integers, and compare tuples.
  3. Rerun tests 3 and 4: both pass, and practice-dates 2.10.0 is no longer flagged.

Expected output: tests 3 and 4 passing, and a line in your report's limits saying the advisory list is a practice list.

🌍Where it's used

📝Case scenario

A junior analyst's first report had 40 findings, many duplicates and two false alarms from text version comparison. After rebuilding the checks with numeric versions and one finding per problem, it had 12 clear findings, and the client fixed the top three that week.

🖱️Try it

Run python3 -m assess.assess after finishing the project and open reports/findings.json. Success: F-001 is the critical template package and the summary counts match.

⚠️Common mistakes

🛠️For your project

Project 1 is complete when its 10 tests pass and its marking guide is ticked with evidence.

✅Quick check

How many findings should the finished assessment report, and of which severities?

Show the answer

12: 1 critical, 2 high, 4 medium and 5 low.

Where do the rule IDs and severities come from?

Show the answer

The severity guide in docs/FORMATS.md.

← PreviousPlanning the capstone
ProLearners Assist