Com S 362 - Object-Oriented Analysis and Design Spring 2002


General Info.
Course Homepage
About Com S 362
Contacting Us
Syllabus

Homework & Grades
Grading Policies
Grades
Homework Directory
Certification Forms
Exams

Reference
Q & A
Meeting outlines
Resources

Links
OO A&D Links
Dept. Homepage
ISU Homepage

Valid HTML 4.0!
Valid CSS!
 

Course Syllabus

The table below gives the planned syllabus for the course. This syllabus is subject to change. When it becomes necessary to revise the schedule, then this page will be updated to reflect the changes.

The references in the readings are given in the bibliography below.

Dates Topics Readings Optional Readings
Jan. 14 Introduction Handouts, Course Web Site  
Jan. 16 Object-Orientation   [Booch94] Ch. 1-4, [Budd02] Ch. 1-10, [Cox-Novobilski91] Ch. 1-6, [Liskov01] Ch. 1-2 [Meyer97] Ch. 1-6 [Reil96] Ch. 1-2
Jan. 18 Team work on homework 1    
Jan. 21 No class (university holiday)    
Jan. 23 Overview [Larman01] Ch. 1 [Booch94] Ch. 2.1, [Budd02] Ch. 3, [Fowler00] Ch. 1-2, [Meyer97] Ch. 27
Jan. 23-25 Iterative Development and the Unified Process [Larman01] Ch. 2 [Beck99]
Jan. 25 Case Study Intro [Larman01] Ch. 3  
Jan. 25 Inception [Larman01] Ch. 4  
Jan. 25 Understanding Requirements [Larman01] Ch. 5 [Liskov01] Ch. 11, [Meyer97] Ch. 27
Jan. 25-30 Use-Case Model: Writing Requirements in Context [Larman01] Ch. 6 [Fowler00] Ch. 3
Jan. 30, Feb. 1 Team work on homework 2    
Feb. 1-4 Use-Case Model: Writing Requirements in Context [Larman01] Ch. 6 [Fowler00] Ch. 3
Feb. 4 Identifying Other Requirements [Larman01] Ch. 7  
Feb. 6 From Inception to Elaboration [Larman01] Ch. 8  
Feb. 6 Use-Case Model: Drawing System Sequence Diagrams [Larman01] Ch. 9 [Fowler00] Ch. 5, [Meyer97] Ch. 27
Feb. 8 Team work on homework 3    
Feb. 8-11 Domain Model: Visualizing Concepts [Larman01] Ch. 10 [Fowler00] Ch. 4
Feb. 13 Domain Model: Adding Associations [Larman01] Ch. 11 [Fowler00] Ch. 4, [Reil96] Ch. 4 & 7
Feb. 13 Domain Model: Adding Atributes [Larman01] Ch. 12 [Fowler00] Ch. 4, [Reil96] Ch. 4
Feb. 15 Team work on homework 3    
Feb. 18 Use-Case Model: Adding Detail with Operation Contracts [Larman01] Ch. 13 [Fowler00] Ch. 4, [Leavens-Baker-Ruby01], [Liskov01] Ch. 3-5 & 12, [Meyer97] Ch. 11, [Mitchell-McKim02]
Feb. 18 From Requirements to Design in the First Iteration [Larman01] Ch. 14  
Feb. 18 Interaction Diagram Notation [Larman01] Ch. 15 [Fowler00] Ch. 5
Feb. 18-20 GRASP: Designing Objects with Responsibilities [Larman01] Ch. 16 [Reil96] Ch. 2-3, [Wirfs-Brock-Wilkerson89]
Feb. 22 Team work on homework 3    
Feb. 25 Team work on homework 3    
Feb. 27-Mar. 1 GRASP: Designing Objects with Responsibilities [Larman01] Ch. 16 [Reil96] Ch. 2-3, [Wirfs-Brock-Wilkerson89]
Mar. 1-6 Design Model: Use Case Realizations with GRASP Patterns [Larman01] Ch. 17 [Reil96] Ch. 2-3, [Wirfs-Brock-Wilkerson89]
Mar. 4-6 Design Model: Determining Visibility [Larman01] Ch. 18 [Fowler00] pp. 104-106, [Reil96] Ch. 2-4
Mar. 4-6 Design Model: Creating Design Class Diagrams [Larman01] Ch. 19 [Fowler00] Ch. 4
Mar. 6 Team work on homework 4    
Mar. 8 Review for Exam I [Larman01] Ch. 1-19 [Booch94] Ch. 2.1, [Beck99], [Fowler00] Ch. 1-5 & 11, [Liskov01] Ch. 3-5 & 11-12, [Meyer97] Ch. 11 & 27, [Reil96] Ch. 2-4 & 7, [Wirfs-Brock-Wilkerson89]
Mar. 11 Exam I [Larman01] Ch. 1-19 [Booch94] Ch. 2.1, [Beck99], [Fowler00] Ch. 1-5 & 11, [Liskov01] Ch. 3-5 & 11-12, [Meyer97] Ch. 11 & 27, [Reil96] Ch. 2-4 & 7, [Wirfs-Brock-Wilkerson89]
Mar. 13 Implementation Model: Mapping Designs to Code [Larman01] Ch. 20 [Fowler00] Ch. 11, [Liskov01] Ch. 14
Mar. 13 Iteration 2 and its Requirements [Larman01] Ch. 21  
Mar. 15 GRASP: More Patterns for Assigning Responsibilities [Larman01] Ch. 22 [Reil96] Ch. 3
Mar. 18-Mar. 22 Spring Break, no class    
Mar. 25 GRASP: More Patterns for Assigning Responsibilities [Larman01] Ch. 22 [Reil96] Ch. 3
Mar. 27 Team work on homework 4    
Apr. 1-8 Designing Use-Case Realizations with GoF Design Patterns [Larman01] Ch. 23 [Gamma-etal95], [Liskov01] Ch. 15
Apr. 8-10 Team work on homework 5    
Apr. 12-17 Presentations by teams on their use of design patterns    
Apr. 17-19 Design Patterns: Template Method, State, Command, Visitor, Decorator [Gamma-etal95] [Larman01] Ch. 34
Apr. 22 Team work on homework 5    
Apr. 24 Neeraj discusses frameworks    
Apr. 24 Team work on homework 5    
Apr. 26 Neeraj discusses frameworks    
Apr. 26 Team work on homework 5    
Apr. 29 Design Patterns: Template Method, State, Command, Visitor, Decorator [Gamma-etal95] [Larman01] Ch. 34
May 1 Review for the final exam [Larman01] Ch. 6.1, 9, 13, 15-23, 34 [Gamma-etal95] [Fowler00] Ch. 11, [Liskov01] Ch. 14-15, [Reil96], Ch. 3
May 3 Summary and Evaluation    
May 7 (Tues.), 9:45a.m.-11:45a.m. Final Exam [Larman01] Ch. 6.1, 9, 13, 15-23, 34 [Gamma-etal95] [Fowler00] Ch. 11, [Liskov01] Ch. 14-15, [Reil96], Ch. 3

Return to top

Bibliography

[Beck99]
Kent Beck. Extreme Programming Explained: Embrace Change. Addison-Wesley, Boston, Mass, 1999.
[Booch94]
Grady Booch. Object-Oriented Design: With Applications, Second Edition. Benjamin Cummings, New York, N.Y., 1994.
[Budd02]
Timothy Budd. An Introduction to Object-oriented Programming, Third edition. Addison-Wesley, Boston, Mass, 2002.
[Cox-Novobilski91]
Brad J. Cox and Andrew J. Novobilski. Object Oriented Programming: an Evolutionary Approach, Second edition. Addison-Wesley, Reading, Mass, 1991.
[Fowler00]
Martin Fowler with Kendall Scott. UML Distilled Second Edition: A Brief Guide to the Standard Object Modeling Language. Addison-Wesley Longman, Inc., Reading, MA, 2000. ISBN 020165783X.
[Gamma-etal95]
Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Boston, MA, 1995. ISBN 0201633612.
[Larman01]
Craig Larman. Applying UML and Patterns: An Introduction to Object-Oriented Analysis and Design and the Unified Process, Second Edition. Prentice Hall PTR, Upper Saddle River, NJ, 2001. ISBN 0130925691.
[Leavens-Baker-Ruby01]
Gary T. Leavens, and Albert L. Baker, and Clyde Ruby. Preliminary Design of JML: A Behavioral Interface Specification Language for Java. Iowa State University, Department of Computer Science, TR98-06r, June 1998, revised August 2002. [Postscript] [PDF]
[Liskov01]
Barbara Liskov with John Guttag. Program Development in Java. Addison-Wesley, Boston, Mass, 2001.
[Meyer90]
Bertrand Meyer. Lessons from the Design of the Eiffel Libraries. Comm. ACM, 33(9):69-88 (Sept., 1990).
[Meyer97]
Bertrand Meyer. Object-oriented Software Construction, Second edition. Prentice Hall, New York, NY, 1997.
[Mitchell-McKim02]
Richard Mitchell and Jim McKim. Design by Contract by Example. Addison-Wesley, 2002.
[Reil96]
Arthur J. Reil. Object-Oriented Design Heuristics. Addison-Wesley, Reading, MA, 1996. ISBN 020163385X.
[Wirfs-Brock-Wilkerson89]
Rebecca Wirfs-Brock and Brian Wilkerson. Object-Oriented Design: A Responsibility-Driven Approach. OOPSLA '89 Conference Proceedings, Norman Meyerowitz (editor), ACM SIGPLAN Notices, 24(10):71-75, Oct. 1989.

Return to top

Course Content and Policies

The course's content and grading policy are described on separate web pages. See the links on the top left of this page.

Return to top

Last modified Saturday, February 8, 2003.

This web page is for the Spring 2002 offering of Com S 362 at Iowa State University. The details of this course are subject to change as experience dictates. You will be informed of any changes. Please direct any comments or questions to Gary T. Leavens at leavens@cs-DOT-iastate-DOT-edu (after replacing -DOT- with `.').