CS 481W/482: Senior Capstone Project I & II
Computer Science Capstone
Course Information
Basic Information
| Component | Details |
|---|---|
| Course Numbers | CS 481W (Fall 2025) / CS 482 (Spring 2026) |
| Credits | 4 credits per semester (8 total) |
| Duration | Two semesters (30 weeks) |
| Meeting Format | Weekly individual meetings (30 minutes) |
| Prerequisites | Senior standing; completion of core CS curriculum |
Professor
Lucas Cordova, Ph.D.
Email: LPCordova@willamette.edu
Office: Ford 210 (Salem)
Office Hours
Office hours are available by 15-minute appointments or on a drop-in basis when available. Multiple modalities are offered (in-person, phone, Google Meet). If the scheduled times do not align with your availability, please contact the instructor.
Course Description
A two-semester culminating experience where students apply their cumulative knowledge to design, develop, and deploy a full-stack or similar-type application. Students will follow industry-standard software development lifecycle (SDLC) practices, from initial conception through final deployment and documentation. The course emphasizes professional software engineering methodology, project management, technical communication, and collaborative development practices.
Learning Objectives
Upon completion of this course sequence, students will be able to:
- Design and implement a complete full-stack or similar-type application from conception to deployment
- Apply software engineering principles and best practices throughout the development lifecycle
- Demonstrate proficiency in project management and agile methodologies
- Create comprehensive technical documentation
- Present technical work to both technical and non-technical audiences
- Collaborate effectively using version control and project management tools
- Conduct meaningful peer reviews and incorporate feedback
Textbooks and Materials
| Material | Details | Required |
|---|---|---|
| Software Engineering: A Modern Approach | Marco Tulio Valente. Free, open textbook. Available at engsoftmoderna.info | Required |
| Handbook of Software Engineering Methods | Lara Letaw. Free OER via Open Textbook Library. Available at open.umn.edu | Required |
Software Engineering: A Modern Approach provides comprehensive coverage of software engineering topics including process models, requirements, architecture, design, testing, and maintenance. Handbook of Software Engineering Methods complements it with a practical, methods-oriented framing aligned with real-world project work. Both texts are free and open-access.
Software Development Methodology
Modified Agile with Academic Milestones
This course employs a Modified Agile methodology that combines industry-standard Agile practices with academic milestone requirements.
Core Principles
- Iterative Development: Features built incrementally with regular feedback loops
- Weekly Sprints: One-week development cycles aligned with instructor meetings
- Continuous Integration: Code integrated and tested regularly
- Adaptive Planning: Requirements evolve based on feedback and learning
- Stakeholder Engagement: Instructor as product owner (or external customer in certain situations) and peers as stakeholders
Development Cycle Structure
Weekly Sprint Cycle
The following provides a high-level overview of the weekly sprint cycle. The precise schedule may vary based on project needs and progress.
| Day | Activity | Deliverable |
|---|---|---|
| Monday | Sprint planning | Sprint backlog |
| Tuesday–Thursday | Development work | Code commits |
| Friday | Code review and testing | Pull requests |
| Weekend | Documentation and reflection | Updated docs |
| Weekly Meeting | Sprint review with instructor | Demo |
Scrum Artifacts (Academic Adaptation)
- Product Backlog: Living document in GitHub Issues
- Sprint Backlog: Weekly task list with estimates
- Burndown Charts: Visual progress tracking
- Definition of Done: Explicit completion criteria
Required Development Practices
Version Control Requirements
- Daily commits minimum (including research/documentation days)
- Commit format: Conventional commits (
feat:,fix:,docs:, etc.) - Workflow: Feature branch with pull requests
- Protection: Main branch requires review
Testing Strategy
| Test Type | Requirement | Coverage Target |
|---|---|---|
| Unit Tests | All public methods | 60% minimum (Semester 2) |
| Integration Tests | All API endpoints | 100% |
| End-to-End Tests | Critical user paths | Core features |
| Performance Tests | Database queries | < 100ms response |
CI/CD Pipeline
A continuous integration and continuous deployment (CI/CD) pipeline will be established to automate testing and deployment processes, ensuring rapid and reliable delivery of software updates. The implementation will vary based on the project’s technical stack.
Example workflow configuration for GitHub Actions:
Agile Ceremonies
Sprint Planning (Weekly – 10 min)
- Review velocity
- Select backlog items
- Break down tasks
- Commit to goals
Daily Standup (Asynchronous)
Post daily by 10 AM in Discord/Slack:
- Yesterday’s completions
- Today’s plan
- Current blockers
Sprint Review (Weekly – 15 min)
- Demo features
- Gather feedback
- Discuss incomplete items
Sprint Retrospective (Bi-weekly – 5 min)
- What went well
- Areas for improvement
- Action items
Course Structure
Semester 1: Planning, Design, and Foundation (CS 481W – Fall 2025)
Milestone 1: Project Initiation and Planning (Weeks 1–4)
| Week | Topic | Deliverable |
|---|---|---|
| 1 | Course Introduction and Project Brainstorming: course overview, SDLC methodologies review, project ideation workshop | Three project ideas (one page each) |
| 2 | Project Selection and Feasibility: technology stack research, feasibility analysis, market research | Project selection with justification |
| 3 | Project Proposal Development: scope definition, user stories, risk assessment | Draft project proposal |
| 4 | Proposal Finalization: proposal refinement, timeline planning, methodology selection | Final project proposal (5–7 pages) |
Milestone 2: Design and Architecture (Weeks 5–8)
| Week | Topic | Deliverable |
|---|---|---|
| 5 | System Architecture Design: high-level architecture, component diagrams, database schema | Architecture diagram |
| 6 | UI/UX Design: wireframes, user flows, accessibility planning | Complete wireframe set |
| 7 | Detailed Design: API specifications, data flow diagrams, security architecture | Technical design document |
| 8 | Mid-Semester Presentation: present to instructor and peers, peer feedback, Q&A | 15-minute presentation |
Milestone 3: Foundation Development (Weeks 9–14)
| Week | Focus Area | Key Deliverable |
|---|---|---|
| 9 | Environment Setup | CI/CD pipeline |
| 10 | Database Implementation | Schema with test data |
| 11 | Backend Foundation | Auth system and core APIs |
| 12 | Frontend Foundation | Basic UI with routing |
| 13 | Integration | Working prototype |
| 14 | Documentation | Complete code docs |
Milestone 4: Semester 1 Wrap-up (Week 15)
- Working prototype demonstration
- Semester retrospective
- Semester 2 planning
- Deliverable: Prototype demo and reflection paper
Semester 2: Development, Testing, and Deployment (CS 482 – Spring 2026)
Milestone 5: Feature Development (Weeks 1–6)
- Week 1: Sprint planning and setup
- Weeks 2–3: Core Feature Sprint 1
- Weeks 4–5: Core Feature Sprint 2
- Week 6: Integration testing and fixes
Milestone 6: Testing and QA (Weeks 7–10)
| Week | Activity | Focus |
|---|---|---|
| 7 | Test Planning | Test cases, scripts |
| 8 | Mid-Semester Presentation | Technical demo |
| 9 | User Acceptance Testing | 5+ user sessions |
| 10 | Refinement Sprint | Priority fixes |
Milestone 7: Deployment and Documentation (Weeks 11–13)
- Week 11: Production environment setup
- Week 12: Deployment and monitoring
- Week 13: Final documentation package
Milestone 8: Project Closure (Weeks 14–15)
- Week 14: Showcase preparation
- Week 15: Public presentation and handoff
Peer Review Process
Overview
Each student serves as a peer reviewer for two projects throughout both semesters, developing critical evaluation skills and exposure to different approaches.
Review Partnerships
Review partnerships are assigned at the start of Semester 1 and remain consistent throughout both semesters. Each student provides constructive feedback and support to their assigned peers.
Review Schedule
Semester 1 Reviews
- Week 3: Proposal Draft
- Week 6: Architecture
- Week 8: Design Docs
- Week 11: Backend Code
- Week 13: Frontend Code
- Week 15: Prototype
Semester 2 Reviews
- Week 2: Sprint Planning
- Week 5: Features
- Week 8: Presentation
- Week 9: Testing
- Week 11: Deployment
- Week 12: Documentation
- Week 14: Final Code
- Week 15: Showcase
Review Rubric
| Grade | Criteria | Point Range |
|---|---|---|
| A | Specific, actionable feedback with code examples | 90–100% |
| B | Identifies major issues with useful suggestions | 80–89% |
| C | Meets requirements with basic feedback | 70–79% |
| D | Minimal effort, vague feedback | 60–69% |
| F | Missing or non-constructive | Below 60% |
Assessment and Grading
Grade Scale
| Percentage | Grade | Percentage | Grade |
|---|---|---|---|
| ≥ 92.00 | A | 72.00 – 77.99 | C |
| 90.00 – 91.99 | A- | 70.00 – 71.99 | C- |
| 88.00 – 89.99 | B+ | 68.00 – 69.99 | D+ |
| 82.00 – 87.99 | B | 62.00 – 67.99 | D |
| 80.00 – 81.99 | B- | 60.00 – 61.99 | D- |
| 78.00 – 79.99 | C+ | ≤ 59.99 | F |
Semester 1 Grade Distribution (CS 481W)
| Component | Weight | Description |
|---|---|---|
| Project Proposal | 15% | Complete proposal document |
| Design Documentation | 15% | Architecture and design docs |
| Weekly Progress | 20% | Meeting attendance and progress |
| Mid-Semester Presentation | 10% | Design presentation |
| Working Prototype | 25% | Functional MVP |
| Final Presentation | 10% | Semester wrap-up |
| Peer Reviews | 5% | Quality of reviews provided |
Semester 2 Grade Distribution (CS 482)
| Component | Weight | Description |
|---|---|---|
| Feature Completion | 25% | All planned features implemented |
| Testing and Quality | 15% | Test coverage and bug fixes |
| Deployment Success | 15% | Production deployment |
| Documentation | 15% | User and technical docs |
| Weekly Progress | 15% | Consistent development |
| Final Presentation | 10% | Project showcase |
| Peer Reviews | 5% | Quality of reviews provided |
Required Tools and Resources
Technology Stack
- Version Control: Git/GitHub (required)
- Project Management: Jira, Trello, or GitHub Projects
- Communication: Discord or Slack
- CI/CD: GitHub Actions, Jenkins, or CircleCI
- Cloud: Student credits for AWS/Azure/GCP
- Documentation: Markdown, JSDoc, or Sphinx
Development Environment
Project Proposal Template
Executive Summary (1 page)
- Project name and tagline
- Problem statement
- Proposed solution
- Target users
Technical Specifications (2–3 pages)
- Functional requirements (minimum 10)
- Non-functional requirements
- Technology stack justification
- System architecture overview
Project Management (1–2 pages)
- Development methodology
- Timeline with milestones
- Risk analysis matrix
- Success metrics
References and Research (1 page)
- Similar solutions analysis
- Technical resources
- Learning requirements
Course Policies
Academic Integrity
All code must be original or properly attributed. AI tool usage must be documented. Plagiarism results in course failure. For details, consult Willamette’s academic integrity policy.
Late Work
Students are allotted 72 cumulative hours (3 days) of late submissions across all deliverables without penalty. Hours may be distributed across assignments as needed. Once exhausted, late submissions incur a 20% penalty per 24 hours on a continuous scale; deliverables submitted more than 5 days late receive no credit. Extenuating circumstances should be discussed with the instructor promptly.
Incomplete Grades
Incomplete grades are granted only for prolonged illness or family emergencies that remove a student from the learning environment for an extended period. Incompletes are not granted for falling behind due to motivation, comprehension, or time management difficulties. Students experiencing academic difficulties should consult with the instructor to develop an improvement plan.
Time Commitment
Per Willamette’s Credit Hour Policy, each hour of class time requires 2–3 hours of work outside class. The advanced nature of this course requires consistent effort throughout the semester. Expect 6–9 hours per week of outside engagement including development, documentation, and project work.
Classroom Conduct
Constructive classroom behavior supports an environment of trust, respect, and collaborative learning. Disruptive behaviors include but are not limited to: interrupting others, distracting from course content, unauthorized recordings, and any form of harassment or abuse. Such behaviors will not be tolerated.
Accommodations
Students requiring accommodations should provide documentation from Accessible Education Services (Smullin 155, 503-370-6737, accessible-info@willamette.edu) within the first two weeks.
Office Hours
- By Appointment: Project-specific consultations
- Online: Discord server for async questions
Appendix: Additional Resources
Recommended Reading
- The Pragmatic Programmer by Hunt and Thomas
- Clean Code by Robert Martin
- Design Patterns by the Gang of Four
Online Resources
Success Tips
- Start early and iterate often
- Commit code daily, even small changes
- Ask for help when stuck for more than 2 hours
- Attend all weekly meetings prepared
- Engage meaningfully in peer reviews
- Document as you go, not at the end
University Policies
Inclusive Classroom
Students are addressed by their affirmed name and pronouns upon request. Notify the instructor at any point to update records accordingly.
Accessibility and Accommodations
Willamette University is committed to creating inclusive learning environments. Students experiencing barriers to inclusion or achievement should notify the instructor promptly. Students with disabilities are encouraged to contact Accessible Education Services (Smullin 155, 503-370-6737, accessible-info@willamette.edu) to discuss accommodations.
Title IX
Willamette University prohibits discrimination and harassment based on sex or gender. As a mandatory reporter, the instructor is required to report any incidents of sexual misconduct disclosed to them to Willamette’s Title IX Coordinator. For confidential support, contact:
- Confidential advocate: confidential-advocate@willamette.edu
- WUTalk crisis line: 503-375-5353
- Campus Safety (emergency): 503-370-6911
Religious Accommodations
Students requiring accommodations for religious observances should notify the instructor within the first two weeks of the semester.
Land Acknowledgement
We respectfully acknowledge that Willamette University is located on the ancestral lands of the Kalapuya people, who today are represented by the Confederated Tribes of the Grand Ronde and the Confederated Tribes of the Siletz Indians. We honor their deep connection to this land and recognize the ongoing contributions of Indigenous peoples to our academic community.