How the Course Works
How the Course Works
CSE120 is not a traditional lecture course. You'll work in teams on real software projects with external stakeholders — campus departments, community organizations, and industry partners — using industry-standard tools and workflows.
The Core Philosophy
Software Engineering = Programming + Time + Scale + Trade-offs
You already know how to write code. This course teaches you how to manage code over time, collaborate at scale, and make engineering trade-offs. The shift is from construction to engineering.
Two Phases
| Phase | Weeks | Focus |
|---|---|---|
| Phase 1: Planning Labs | 1–6 | Team formation, requirements discovery, architecture design, toolchain setup |
| Phase 2: Implementation Iterations | 6–17 | Five build-and-deliver cycles with demos, reviews, and retrospectives |
Weekly Time Commitment
Plan for 6–8 hours per week outside of lecture and lab on: - Reading assignments and skill-building - Team meetings and project work - Deliverable preparation
Key Distinctions
This site is your knowledge base for understanding and succeeding in the course. It complements:
- CatCourses — where you submit work and view grades (the transactional system)
- Innovate to Grow (I2G) — the end-of-semester showcase event for project presentations
- GitHub — where your team's code, issues, and project board live
Adapted from the CSED Lab course design portfolio. See the full pedagogical philosophy and course structure rationale there.