M10 — Course Summary and New Ideas
SENG 365 — Software Engineering
Neil Ernst
University of Victoria
2026-07-24
Learning Objectives
- Course summary
- New ideas: knowing when and how to apply design
Watch and Reflect
Cynefin and 3X: matching the design approach to the situation.
Key Concepts
- The design space and tradeoffs
- When to design: always. Refactoring vs. architecture.
- Capturing and sharing knowledge (ADRs)
What We Covered
- Encapsulation, refactoring, testing, code smells
- New paradigms: functional programming, concurrency
Continuing to Learn
- Learning new things is a core skill of the discipline.
- Match design effort to the problem: sometimes just start; sometimes probe and spike; sometimes step back and architect.
Day 2
- Course summary and Cynefin / 3X discussion — when and how to apply design.