Capstone Software Project
A team builds and ships a real software product for a real client over one term, following one invented team and community client throughout: team roles, RACI and charter; client discovery, stakeholder interviews and baseline metrics; a proposal with an MVP scoped against realistic capacity, risks, open-source licensing, data ownership and privacy obligations; user stories with testable acceptance criteria and accessibility to WCAG 2.2 AA from day one; a simple architecture with C4 diagrams, architecture decision records, database constraints and a STRIDE threat model; repository, review, CI/CD, secrets and cost practice; sprints with probabilistic forecasts, retrospectives and fair contribution evidence; a test strategy from unit to property-based tests; privacy by design and a responsible decision about machine learning; a pilot with SLOs, incident response, backups and a tested handover; the final report, demonstration, professional ethics and engineering titles; and evaluation, portfolios and next steps.
CMPUT-499 Year 4 3 credits 12 lessons · 5 h 46 min
Offered by HSM University · Computing Science
This is the Canadian version of this course. See the American version.
What you'll learn
- Form and run a capstone team with clear roles, a RACI matrix, a team charter and an agreed definition of done, and work productively with a supervisor and a client.
- Conduct client discovery with stakeholder mapping, interviews, observation and surveys, synthesize findings, and write a solution-free problem statement with baseline metrics.
- Write a project proposal that scopes an MVP against realistic capacity, ranks risks, sets a change process and settles licensing, data ownership and privacy obligations.
- Turn scope into user stories with testable acceptance criteria, wireframes and measurable non-functional requirements, with accessibility to WCAG 2.2 AA built in from the start.
- Design a simple, justified architecture, communicate it with C4 diagrams and architecture decision records, model data with database constraints and threat-model it with STRIDE.
- Set up a repository, branching and review practice, a CI/CD pipeline, environments, secrets management, dependency auditing and cost tracking before development starts.
- Run sprints with goals, estimation, probabilistic forecasts, burndowns and retrospectives, manage team conflict and judge contribution from several kinds of evidence.
- Plan and apply a test strategy across unit, integration, end-to-end and property-based tests, and use coverage, accessibility, performance and defensive security checks appropriately.
- Apply privacy by design, data minimization, consent, log redaction and retention, and evaluate whether and how to use machine learning or ranking features responsibly.
- Release safely, run a pilot, observe a system with logs, metrics and SLOs, respond to incidents, test backups, and hand over access, documentation and a maintenance plan.
- Communicate the project in a report, presentation and reflection written for each audience, report results honestly, and apply professional ethics and the rules on engineering titles.
- Evaluate a capstone with rubrics, client feedback and peer assessment, turn it into portfolio evidence, and connect it to the whole computing science program and future paths.
Course content
12 lessons · 5 h 46 min total · final exam
- 1 What a capstone is and how this one works 30 min · quiz
- 2 Finding the problem: client discovery and success metrics 30 min · quiz
- 3 The project proposal: scope, risks and the client agreement 28 min · quiz
- 4 Requirements and design: user stories, acceptance criteria and accessibility 29 min · quiz
- 5 Architecture: structure, decisions, data and threats 30 min · quiz
- 6 Engineering practice: repository, reviews, pipelines and environments 29 min · quiz
- 7 Iterative development: sprints, estimation and working as a team 27 min · quiz
- 8 Testing strategy: from unit tests to accessibility and security checks 30 min · quiz
- 9 Data, privacy and responsible features 29 min · quiz
- 10 Release and operations: deploying, monitoring and handing over 29 min · quiz
- 11 Communicating the work: reports, presentations and professional ethics 28 min · quiz
- 12 The final demonstration, evaluation and what comes next 27 min · quiz
- E Final exam 20 questions
Requirements
Recommended background. You can start any course at any time.
Description
A team builds and ships a real software product for a real client over one term, following one invented team and community client throughout: team roles, RACI and charter; client discovery, stakeholder interviews and baseline metrics; a proposal with an MVP scoped against realistic capacity, risks, open-source licensing, data ownership and privacy obligations; user stories with testable acceptance criteria and accessibility to WCAG 2.2 AA from day one; a simple architecture with C4 diagrams, architecture decision records, database constraints and a STRIDE threat model; repository, review, CI/CD, secrets and cost practice; sprints with probabilistic forecasts, retrospectives and fair contribution evidence; a test strategy from unit to property-based tests; privacy by design and a responsible decision about machine learning; a pilot with SLOs, incident response, backups and a tested handover; the final report, demonstration, professional ethics and engineering titles; and evaluation, portfolios and next steps.
Part of the Science stream, typically taken in year 4.