Object-Oriented Design Lectures and Tutorials
Lectures
- Intro to the course, overview of the course outline
- Software Processes
- Notes: Chapter 2 (pp. 45 - 65) of Shari Lawrence Pfleeger.
Software Engineering; Theory and Practice (Second Edition). Prentice Hall. 2001.
- Class presentation [pdf]
-
Unit Testing in Python (Chapter 13 only).
- What does it mean to be Object-Oriented ?
(Page-Jones Chapter 1. p. 3 - 49).
- UML: Classes, Attributes and Methods
(Page-Jones Chapter 3. p. 85 - 101).
- UML: Class Diagrams
(Page-Jones Chapter 4. p. 107 - 130).
From here: material for the final exam
- UML: Architecture Diagrams, Package Diagrams
(Page-Jones Chapter 7. p. 188 - 196).
- UML: Object-Interaction Diagrams: Communication Diagrams (formerly known as Collaboration Diagrams)
(Page-Jones Chapter 5. p. 137 - 146).
- UML: Object-Interaction Diagrams: Sequence Diagrams
(Page-Jones Chapter 5. p. 146 - 160).
- Higraphs [pdf]
- Finite State Automata (FSA) in a nutshell and
how FSA can be used to
recognize patterns specified using
regular expresssions. More information about (and examples of) regular expressions
at http://www.regular-expressions.info/
and on Wikipedia.
- UML: Statecharts [pdf]
Page-Jones Chapter 6. p. 164 - 181 is optional reading. It is replaced by
David Harel.
On Visual Formalisms.
Communications of the ACM,
31(5):514-530. May 1988.
(read pages 514 - 523)
- UML: Activity Diagrams/Petri Nets [pdf]
- Criteria for good OO design: Domains, Encumbrance and Cohesion.
(Page-Jones Chapter 9. p. 233 - 253).
- Object-Oriented Software.
- State-space and Behaviour. (Page-Jones Chapter 10. p. 259 - 272).
- Classes vs. Types. Type Conformance and Closed Behaviour. (Page-Jones Chapter 11. p. 278 - 294).
- Design Patterns: Composite.
(GoF p. 163 - 169).
- Design Patterns: Observer.
(GoF p. 293 - 300).
- Design Patterns: Command.
(GoF p. 233 - 238 and 62 - 64). Lecture
[pdf]
- Design Patterns: Visitor.
(GoF p. 331 - 336). Lecture
[pdf]
Not exam material, but very informative:
Chapter 2 "A Case Study: Designing a Document
Editor" of the GoF book.
Reehan Shaikh has graciously provided his excellent hand-written class notes in PDF format.
They are collected in PDFnotes.zip. These are not official class notes,
have not been verified for correctness (but at a first glance look quite complete), and some lectures are missing.
They may complement your own class notes as well as the official course material.