Com S 362 - Object-Oriented Analysis and Design (Fall 2007 Edition)
Topics and Approximate Timeline
| Lecture Date | Topic | Deliverable Due | Reading |
|---|---|---|---|
| Mon 8/20/2007 | Introduction, team formation, first homework review | None assigned | |
| Wed 8/22/2007 | Review: Object-oriented programming | HW 1 - Part 1 | [Arnold] Ch 2 |
| Fri 8/24/2007 | Inheritance | [Arnold] Ch 3 | |
| Mon 8/27/2007 | Interfaces | [Arnold] Ch 4 | |
| Wed 8/29/2007 | Exception handling | HW 1 - Part 2 | [Arnold] Ch 12 |
| Fri 8/31/2007 | Exception handling | Project Goals | [Arnold] Ch 12 |
| Mon 9/3/2007 | University holiday | None assigned | |
| Wed 9/5/2007 | Unified Modeling Language (UML) Overview | [Fowler] Chapter 1, [Optional: UML Spec from OMG] | |
| Wed 9/5/2007 | Unified Modeling Language (UML) - Class diagrams | [Fowler] Chapter 3 and 5 | |
| Fri 9/7/2007 | Unified Modeling Language (UML) - Interaction diagrams | [Fowler] Chapter 4, 12, 16, and 17 | |
| Mon 9/10/2007 | Basic principles of design: abstraction, modularity, separation of concerns | [Dijkstra] | |
| Mon 9/10/2007 | Basic principles of design: information hiding modularity | [Parnas72] | |
| Wed 9/12/2007 | Basic principles of design: information hiding modularity | [Parnas72] | |
| Fri 9/14/2007 | Structure and tasks of design | [Baldwin and Clark] Chapter 2 | |
| Mon 9/17/2007 | Modularity and the design structure matrix | [Baldwin and Clark] Chapter 3 | |
| Wed 9/19/2007 | Modularity and the design structure matrix | HW 2 - Part 1 | [Baldwin and Clark] Chapter 3 |
| Fri 9/21/2007 | Basics of object-oriented design: classes, responsibility, collaboration, responsibility-driven design, CRC cards and process | [Wirfs-Brock-Wilkerson89] | |
| Mon 9/24/2007 | Basics of object-oriented design: classes, responsibility, collaboration, responsibility-driven design, CRC cards and process | [Beck and Cunningham] [CRC Card Template](WORD) [Butler's CRC tutorial] | |
| Wed 9/26/2007 | Basics of object-oriented design: classes, responsibility, collaboration, responsibility-driven design, CRC cards and process | [Beck and Cunningham] [CRC Card Template](WORD) [Butler's CRC tutorial] | |
| Fri 9/28/2007 | Basics of object-oriented design: classes, responsibility, collaboration, responsibility-driven design, CRC cards and process | [Beck and Cunningham] [CRC Card Template](WORD) [Butler's CRC tutorial] | |
| Mon 10/1/2007 | Design by Contract with JML and JUnit | Project: Use Cases | [Beck-Gamma98] [Leavens-Cheon06] |
| Wed 10/3/2007 | Design by Contract with JML and JUnit | Project: Domain Models | [Beck-Gamma98] [Leavens-Cheon06] |
| Fri 10/5/2007 | Design by Contract with JML and JUnit | Project: System Sequence Diagrams | [Beck-Gamma98] [Leavens-Cheon06] |
| Mon 10/8/2007 | Class Overview for the Mid-Term | Exam review notes | |
| Wed 10/10/2007 | Mid-Term Exam | Exam review notes | |
| Fri 10/12/2007 | Software Architectures | [Garlan and Shaw] | |
| Mon 10/15/2007 | Software Architectures | [Garlan and Shaw] | |
| Wed 10/17/2007 | Software Architectures | [Garlan and Shaw] | |
| Fri 10/19/2007 | Software Architectures | [Garlan and Shaw] | |
| Mon 10/22/2007 | Software Architectures | [Garlan and Shaw] | |
| Wed 10/24/2007 | Guest Lecture: Hibernate - an object/relational persistence and query service for Java | [Hibernate] | |
| Fri 10/26/2007 | Guest Lecture: Spring Framework | HW 2 - Part 2 due | [Developing an MVC application using Spring Framework] |
| Mon 10/29/2007 | Antipatterns | Project: CRC Cards | [Antipatterns] Ch 5 and antipatterns descriptions |
| Wed 10/31/2007 | Antipatterns | Project: Software Architecture | [Antipatterns] Ch 5 and antipatterns descriptions |
| Fri 11/2/2007 | Introduction to Refactoring | [Fowler99] | |
| Mon 11/5/2007 | Abstract factory, factory method, and builder | Project: Class and interaction diagrams | [Patterns] Ch 3, pages 81:116 |
| Wed 11/7/2007 | Prototype, singleton, and discussion of creational patterns | [Patterns] Ch 3, pages 117:136 | |
| Fri 11/9/2007 | Adapter and bridge patterns | [Patterns] Ch 4, pages 137:162 | |
| Mon 11/12/2007 | Composite and decorator patterns | [Patterns] Ch 4, pages 163:185 | |
| Wed 11/14/2007 | Facade, Flyweight, proxy and discussion of structural patterns | [Patterns] Ch 4, pages 185:220 | |
| Fri 11/16/2007 | Visitor, Strategy, and State patterns | Project: Implementation, finalize first iteration, change simulation period begin at 12:01pm. | [Patterns] Ch 5 - page 331:345, 315:325, 305:315 |
| Mon 11/19/2007 | No lecture, (Thanksgiving break - classes recessed.) | None assigned | |
| Wed 11/21/2007 | No lecture, (Thanksgiving break - classes recessed.) | None assigned | |
| Fri 11/23/2007 | No lecture, (Thanksgiving break - classes recessed.) | None assigned | |
| Mon 11/26/2007 | Visitor and recap of composite patter, comparison between the two, combination of visitor and implicit-invocation architectural style, discussion about the change and how it affects each of these patterns. | [Patterns] Ch 5 - page 331:345 | |
| Wed 11/28/2007 | Chain of responsibility design pattern and discussion about behavioral patterns | Change simulation period end at 10:59am. Change response week starts. | [Patterns] Ch 4, pages 221:223 |
| Fri 11/30/2007 | Template Method and State pattern | [Patterns] Ch 4, pages 325:330 and 305:310 | |
| Mon 12/3/2007 | Strategy, Observer, and Mediator patterns | [Patterns] Ch 4, pages 315:324, 293:301, and 273:282 | |
| Wed 12/5/2007 | Final Project Presentation | Project Report | project code |
| Fri 12/7/2007 | Final Project Presentation | None | |
| Tue 12/11/2007 | Final Exam | Exam review notes |
The layout of this website and the some contents on this website is inspired from Com S 342 webpage as taught by Gary T. Leavens in Fall 2006. Other contents are copyright © 2007, Hridesh Rajan. All rights reserved.