Date | Topic | Description | Activities |
---|---|---|---|
August | |||
Introduction to Software Design | |||
26 |
Course Overview Syllabus Learning Outcomes |
Introduction to the course. |
Course Overview Quiz (MyCourses) UML Review Quiz (MyCourses) Design Project R1
|
28 |
UML Class Diagrams Sequence Diagrams |
A review of UML class and sequence diagrams. |
UML Review Activity UML Sequence Diagram Activity |
September | |||
2 |
Design Principles Noun/Verb Analysis & Domain Models |
A review (mostly) SOLID and GRASP design principles. A review of domain modeling and formal noun/verb analysis. |
Design Principles Quiz (MyCourses) Design Principles Activity |
4 |
Anatomy of a Pattern Observer Observer Mini Design Doc Observer Mni Design Presentation |
An introduction to Gang-of-Four Design Patterns. | Observer Exercise (MyCourses Quiz) |
Design Project R1: Mini-Designs | |||
9 |
Strategy Command Composite State Decorator Visitor |
Mini-Design Presentations. Teams form to collaborate on the design for Design Project R1. |
|
11 | |||
Design Project R1: Consensus Design | |||
16 | Midterm Exam 1 | The first midterm exam 1 covering design topics (class diagrams, sequence diagrams, domain models, design principles) and the R1 Design Patterns. | Midterm Exam 1 (MyCourses Quiz) |
18 | Teams discuss their Consensus Domain Model and Knowns & Unknowns with their instructor. |
|
|
23 |
|
||
25 |
|
||
Design Project R1: Implementation | |||
30 |
|
||
October | |||
2 |
|
||
7 | |||
9 |
|
||
14 | OCTOBER BREAK (No Class) | ||
Design Project R2: Mini-Designs | |||
16 |
Singleton Adapter Mediator Proxy Abstract Factory Memento |
Mini-Design Presentations. Design Project teams begin the R2 design phase. |
|
21 | |||
23 | Midterm Exam 2 | The second midterm exam covering design topics (class diagrams, sequence diagrams, domain models, design principles) and the R2 design patterns. |
Midterm Exam 2 (MyCourses Quiz) |
Design Project R2: Consensus Design | |||
28 |
|
||
30 |
Anti-Patterns Refactoring |
A discussion of commonly found patterns in software design that typically have a negative impact on the overall design. An overview of formal refactoring. |
|
November | |||
4 |
|
||
Design Project R2: Implementation | |||
6 |
|
||
11 | |||
13 | |||
18 |
|
|
|
Refactoring Project | |||
20 | |||
25 |
|
||
27 | THANSGIVING BREAK (No Class) | ||
December | |||
2 |
|
||
4 |
|
||
9 | READING DAY | ||
11 | SECTION 01 FINAL (Basham) | ||
15 | SECTION 02 FINAL (St. Jacques) |
The following are some resources for information about patterns: