SYLLABUS
CS 631
Object-Oriented Design Patterns
Tuiesdays-Thursdays 4:30- 7:10 p.m.
West Building, Room 263
Summer 2004
CS 631 Object-Oriented Design Patterns (3:3:0). Principles of object-oriented design through design patterns. A study of the selection of appropriate object-oriented structure after the system requirements or requirements specification of the software system have been developed. Design patterns are created in the logic view of the software system. A study of generalized design solutions for generalized software design problems. A study of the reuse of design patterns. Once developed, design patterns may be specified in any object-oriented language.
Dr. Richard Evans
Department of Computer Science
George Mason University
Fairfax, VA 22030-4444
email: revans@gmu.edu
telephone: 703 319 7877
Outline
Introduction to Design Patterns: Principles and Examples
Design Patterns in Designing Computer Systems
Programming Design Patterns in UML and Java
Advanced Topics in Design Patterns.
Behavioral Design Patterns
Observer Design Pattern,
Structural Design Patterns
Proxy Design Pattern
Facade Design Pattern
Composite Design Pattern
Coding of design patterns in UML (Rational Rose), including static design structure as CLASS DIAGRAM, and dynamic design structure as SEQUENCE DIAGRAM.
Storing each coded design pattern in its own, separate EXPORTED PTL file package for later reuse.
Automatic IMPORT of each one of the above PTL packaged design patterns into its best designed position in the sequence of actor, interface, boundary, control and entity classes.
Materials:
'Design Patterns: Elements of Reusable Object-Oriented Software,' by Gamma, Helm and Vlissides, Addison-Wesley Publishers, 1995. Book comes with a CD.
‘Java Design Patterns: a Tutorial,' by Cooper, Addison-Wesley Publishers. Book comes with a CD.
"UML Toolkit", 1998, Eriksson, John Wiley, CD-ROM.
"Unified Modeling Language Users Guide", 1999., Booch et. al.
Rational Rose 2002 UML Software or Equivalent, Download Rational Rose Enterprise Edition 2002 from http://www.rational.com Enterprise Rational Rose 2002 UML STII-Lab Room 17 or STII-133 Accounts and Materials.
Rational Suite Enterprise, including Enterprise Rational Rose 2002-2003 UML--STII-Labs
Reuse practices: http://www.gmu.edu/depts/survey/
Programming Patterns Using UML and Java, STII Labs 17, 133
Personal Computer, Windows 2000, ME, XP or Windows NT, Connectivity to Internet/Web, Web Browser.
Accounts and Omni Lock Codes for PC CAD Labs in STII-17, 133. See http://www.ite.gmu.edu/labs
Rational Rose. See student 4.0 version on the CD in the back of the UML Toolkit--paperback book available in the textbooks section of the GMU Bookstore.