Skip to main content

Checkpoint Gate - After Semester 3

Required Output Classification

Required outputClassificationPublic/private guidance
Closed-book prompts, self-assessment answers, and skills matricesPractice artifactUse for honest calibration; do not publish raw answers unless rewritten as a study guide.
Required evidence gate items, sign-off checklist, and readiness decisionCheckpoint evidenceKeep as private progression evidence; share only sanitized summaries with mentors or reviewers.
Repair artifacts produced after a weak checkpoint, such as corrected solutions, diagrams, traces, benchmarks, or runbooksCheckpoint evidenceStore beside the checkpoint so the remediation trail is inspectable without making mistakes public.
Reviewer notes or mentor feedback that materially improve a project artifactPortfolio candidateConvert into public-safe acknowledgements or changelog entries only after removing private feedback context.

Use this gate after you finish the modules, the semester project, and the exam. The next semester moves into systems programming, where weak design habits become more expensive. Do not advance on optimism.


Gate Question

Can you change a medium-sized codebase safely and explain the design tradeoffs in language another engineer would respect?

If the answer is not clearly yes, use the remediation section before moving on.


Readiness Standards

Mark each item only if you can demonstrate it with code, notes, or a project artifact.

Module 1: OOD Foundations & Smells

  • I can explain cohesion, coupling, and encapsulation using a real example from code I touched this semester.
  • I can identify at least 8 code smells without confusing symptom, cause, and refactor move.
  • I can explain one situation where applying a principle too early would have made the design worse.

Module 2: Refactoring Techniques

  • I completed at least one non-trivial refactor in small steps rather than a rewrite.
  • I used tests or characterization checks to protect behavior before risky changes.
  • I can describe which Fowler-style moves I used and why they reduced change cost.

Module 3: Behavioral Patterns

  • I can explain when Strategy, Observer, and Command are useful in practical code.
  • I can name one misuse case for each of those patterns.
  • I used at least one behavioral pattern in the semester project or an equivalent exercise.

Module 4: Structural & Creational Patterns

  • I can explain when Factory, Adapter, and Decorator are justified.
  • I can distinguish composition that helps from wrapping that only adds ceremony.
  • I used at least one structural or creational pattern without creating pattern salad.

Module 5: Applied Design & Code Review

  • I can review a change using correctness, clarity, design, and tests as separate lenses.
  • I wrote at least one design note or ADR that records a real decision and its consequences.
  • I can explain whether a design decision was reversible or expensive to undo.

Minimum Evidence Pack

You are not checkpoint-ready unless you have all of the following:

  • a smell log with examples from real code
  • a pattern cookbook covering Strategy, Observer, Command, Factory, Adapter, and Decorator
  • a project or exercise branch showing incremental refactor commits
  • tests or characterization checks for the code you changed
  • at least one written review of code using a rubric
  • at least one ADR or short design memo tied to the project

Fast Oral Check

Answer these without opening notes:

  1. What is the difference between a smell and a bug?
  2. When should you prefer extraction over adding another conditional branch?
  3. Why is "use a pattern here" incomplete advice?
  4. What makes a review comment actionable?
  5. Name one decision in your semester project that was reversible and one that was not.

If you cannot answer at least 4 well, rework Module 5 and your project notes.


Remediation Path

Use the smallest fix that addresses the gap:

  • Weak smell recognition: repeat Module 1 practice and annotate two unfamiliar files.
  • Weak refactor safety: repeat Module 2 with characterization tests first.
  • Weak pattern judgment: revisit Modules 3 and 4 and write one "when not to use this pattern" note per pattern.
  • Weak review or ADR quality: repeat Module 5 practice and rewrite one review plus one ADR.
  • Weak project evidence: split your project changes into smaller commits and document the design pressure behind each one.

Sign-Off

You are ready for Semester 4 when your evidence pack exists, the oral check is comfortable, and your project history shows deliberate design rather than rushed cleanup.

Added Gate Evidence

Bring these artifacts to the checkpoint:

  • a test report or transcript for the OOAD case extension
  • a commit graph or short history summary showing refactor steps
  • one design rationale note explaining inheritance, polymorphism, composition, and dependency choices
  • one "when not to use this pattern" note for a pattern you considered
  • one peer-review style critique of your own final design

Mastery Rubric

LevelEvidence
Beginner passCan answer direct questions and complete familiar exercises with light notes.
Solid passCan solve new variants, explain choices, and connect the work to Semester 2 Algorithms and Data Structures.
Strong passCan defend tradeoffs, identify failure modes, and produce clean evidence in the portfolio artifact.
Not readyRelies on copied solutions, cannot explain mistakes, or lacks durable artifacts.

Retake and Repair Rule

If a section is weak, do not only reread. Repair it by producing new evidence: a corrected solution, a fresh implementation, a rewritten proof, a benchmark, a diagram, a runbook, or a short teaching note.


Answer-Quality Examples

Use these examples when grading written answers or spoken explanations.

QualityExample pattern
WeakNames a concept but gives no example, constraint, or failure case.
AcceptableDefines the concept and applies it to a familiar exercise.
StrongApplies the concept to a new variant and explains why an alternative would fail.
Portfolio-readyConnects the concept to Semester 2 Algorithms and Data Structures, current project evidence, and a future capstone decision.

Interleaving Prompt

For any missed answer, add one sentence starting with: This depends on an earlier skill because...

Calibration Materials

Use these learner-visible calibration materials before self-grading or requesting review: