Object-Oriented Design Winter Term 2008 -- Schedule

Object-Oriented Design
Winter Term 2008 COMP 304B (CRN 746)
(Tentative) Schedule

Friday 4 January Course Introduction/Overview
Monday 7 January Software Processes: from Waterfall to RUP
Wednesday 9 January Software Processes: productivity and eXtreme Programming
Friday 11 January Software Testing
Monday 14 January OO Software Unit Testing with pyUnit
Tuesday 15 January Python tutorial in McConnell 320, 17:30 - 19:00
Wednesday 16 January What does it mean to be Object-Oriented ?
Friday 18 January What does it mean to be Object-Oriented ?
Monday 21 January What does it mean to be Object-Oriented ?
Assignment 1 due @ 23:55
Wednesday 23 January What does it mean to be Object-Oriented ?
Friday 25 January The Unified Modelling Language (UML)
Monday 28 January UML: Class Diagrams
Wednesday 30 January UML: Class Diagrams
Friday 1 February UML: Class Diagrams
Monday 4 February UML: Interaction Diagrams (Communication Diagrams)
Wednesday 6 February UML: Interaction Diagrams (Sequence Diagrams)
Friday 8 February UML: Behaviour Diagrams (State Automata)
Sunday 10 February Assignment 2 due @ 23:55
Monday 11 February UML: State Automata for language recognition
Wednesday 13 February UML: Behaviour Diagrams (Activity Diagrams)
Friday 15 February UML: Behaviour Diagrams (Statecharts)
Tutorial/hands-on Statecharts, Krieble Lab (Trottier 3120), 17:00 - 18:30
Monday 18 February UML: Behaviour Diagrams (Statecharts)
Wednesday 20 February State Space
Thursday 21 February Assignment 3 due @ 23:55
Friday 22 February In-class midterm
Monday 25 February No class (Study Break)
Wednesday 27 February No class (Study Break)
Friday 29 February No class (Study Break)
Monday 3 March State Space and Behaviour: invariants
Wednesday 5 March Design By Contract
Friday 7 March LSP (co/contra-variance), closed behaviour
Saturday 8 March Assignment 4 due @ 23:55
Monday 10 March Quality of Design: Domains, Encumbrance
Wednesday 12 March Quality of Design: Law of Demeter, Cohesion
Friday 14 March Design Patterns: Command
Monday 17 March Design Patterns: Command
Wednesday 19 March Design Patterns: Observer
Thursday 20 March Design Patterns: Observer
Friday 21 March No class (Easter Holiday)
Monday 24 March No class (Easter Holiday)
Wednesday 26 March Design Patterns: Observer/Template Method
Friday 28 March Design Patterns: Composite
Sunday 30 March Assignment 5 due @ 23:55
Monday 31 March Design Patterns: Singleton/Adapter
Wednesday 2 April Design Patterns: Factory/Summary
Friday 4 April No Class!
Monday 7 April Design Patterns: Visitor
Wednesday 9 April Design Patterns: Visitor
Friday 11 April Final Review
Assignment 6 due @ 23:55
Monday 14 April Final Exam, 14:00 - 17:00. AA - LZ in ENGTR 2100, MA - ZZ in ENGTR 2110.