Object-Oriented Software Design

2006 Winter Term COMP 304B Assignments


All implementation is done in Python.

  1. PlotWindow: Unit Testing, UML Class Diagrams, OO implementation in Python.
  2. ChatProtocol: UML Class Diagrams, UML Sequence Diagrams, State Automata, OO implementation in Python.
  3. Statecharts: An executable Statechart model of a wristwatch. NEW UPDATES HAVE BEEN ADDED TO THIS ASSIGNMENT! CHECK THEM OUT!
  4. Spreadsheet cell value Set/Undo: Command Pattern.

Submitting assignments

Original Work

You are encouraged to help other teams formulate the ideas behind assignment problems, but each team is required to submit their own original work. Handing in work that is not your own, original work as if it is your own is plagiarism. All re-use, collaboration, inspiration must be explicitly mentioned in the assignment. McGill University values academic integrity. Therefore all students must understand the meaning and consequences of cheating, plagiarism and other academic offences under the code of student conduct and disciplinary procedures (see www.mcgill.ca/integrity for more information).