Capstone

Final Software Design Project

The capstone proves students can design, build, explain, test, and improve a small software system. The project should be small enough to finish, but rich enough to show real design thinking.

Approved Project Ideas

  • Student Planner App
  • Library Management System
  • Food Ordering System
  • Mini Game System
  • Bank Account Simulator
  • Course Registration System
  • Inventory Management App
  • Campus Event Manager

Minimum Technical Requirements

  • At least 5 meaningful modules/classes.
  • Clear separation of responsibilities.
  • At least one design pattern used naturally.
  • At least one interface or abstraction.
  • Basic tests for important behavior.
  • README with setup, design explanation, and tradeoffs.
  • Class/module diagram and architecture diagram.

Required Deliverables

DeliverableWhat it must includeWhy it matters
Requirements DocumentFunctional requirements, non-functional requirements, acceptance criteria, constraints, assumptions.Shows the design is connected to a real problem.
Design DocumentModule/class list, responsibilities, dependency notes, pattern explanation.Shows structure before and during implementation.
DiagramsOne architecture diagram, one class/module diagram, one sequence diagram.Shows that the student can communicate design visually.
Source CodeWorking prototype with clean structure and meaningful names.Shows the design can support real behavior.
TestsAt least 5 meaningful tests or equivalent instructor-approved checks.Shows important rules can be verified.
ReflectionTradeoffs, technical debt, what changed, what would improve next.Shows mature design reasoning.

Milestone Plan

Milestone 1: Proposal

Submit the app idea, target users, core features, constraints, and risk list. Keep the project small. A clean course registration prototype is better than a massive unfinished platform.

Milestone 2: Design Plan

Submit requirements, module breakdown, early diagrams, and expected design pattern. The instructor should challenge scope and unclear responsibilities here.

Milestone 3: Prototype

Submit a working core workflow with early tests. At this stage the system should prove the main design can work.

Milestone 4: Design Review

Present the system to peers. Explain the strongest and weakest design decisions. Collect feedback and revise.

Milestone 5: Final Submission

Submit final code, tests, README, diagrams, and reflection. Present the project in 7–10 minutes.

Rubric

Requirements

Excellent work has clear, testable requirements and realistic scope.

Modularity

Responsibilities are separated. Changes have obvious homes.

Principles

Design principles are applied with evidence, not just named.

Pattern Use

The pattern solves a real problem and is explained clearly.

Testing

Tests cover important behavior and show testable design.

Diagrams

Diagrams clarify structure, workflow, and boundaries.

Code Quality

Names, modules, and dependencies are understandable.

Reflection

Tradeoffs and weaknesses are discussed honestly.

Instructor reminder: Grade design reasoning heavily. A small project with a clean design and honest tradeoff discussion should beat a large project with tangled code.

Saved Milestones

Capstone Progress Tracker

This checklist is saved locally in the student's browser.

0% complete