Skip to navigation | Skip to main content | Skip to footer

COMP30061: Applying UML and Patterns (2008-2009)

This is an archived syllabus from 2008-2009

Applying UML and Patterns
Level: 3
Credit rating: 10
Pre-requisites: COMP20341 or COMP27310 or INFO21003
Co-requisites: No Co-requisites
Duration: 11 weeks
Lecturers: John Sargeant
Course lecturer: John Sargeant

Additional staff: view all staff
Sem 1 w1-5,7-12 Lecture 1.4 Mon 10:00 - 11:00 -
Sem 1 w1-5,7-12 Lecture 1.4 Mon 14:00 - 16:00 -
Sem 1 w3,5,8,10,12 Lab 3rdLab Mon 10:00 - 11:00 -
Sem 1 w3,5,8,10,12 Lab UNIX Mon 10:00 - 11:00 -
Sem 1 w5 Lab 3rdLab Mon 14:00 - 16:00 -
Assessment Breakdown
Exam: 50%
Coursework: 50%
Lab: 0%
Degrees for which this unit is optional
  • Artificial Intelligence BSc (Hons)


This is not a conventional lecture course. In fact there will probably only be one conventional lecture. Rather than lecture handouts, the primary source of material will be the book "Applying UML and Patterns" by Craig Larman, and you will need to buy it. The book is neither cheap nor thin, but it is excellent, and every computer scientist should own a copy. You will be given detailed advice on which parts of the book to focus on, to avoid excessive reading time.

This is not just a 'reading course' however. There will be 23 contact sessions, but rather than lectures most of these will be of the following kinds:

Q&A: Question and answer sessions, where you can ask questions about the course material and have them answered.
Test: Sessions which include a half hour online test which counts for 10% of the total assessment for the course. There are five of these, each preceded by an optional self-assessment test which can be taken when convenient.
Review: Feedback on a previous test. A final review session will be held after the notional end of the course to review the mock exam.

The continuous assessment and accompanying feedback is made possible by the use of online exam software. See the additional information for more information on this form of assessment. The assessment will be based on a case study - applying UML and patterns to the design of an online exam system! This will run parallel to the case study in the book.

The primary aim of the course is stated in the title of the book: applying UML and patterns, as opposed to merely learning UML notation and pattern descriptions. The book contains a vast amount of sound advice on best practice in software development, and the students should internalise a reasonable subset of this.

Learning Outcomes

A student successfully completing this course should be able to explain the following techniques and apply them appropriately in software development: (A,B,C)
Iterative development as exemplified by the Unified Process.
Use-case modelling and realisation.
Static and dynamic domain modelling.
The fundamental GRASP patterns.
A selection of the classic 'Gang of four' design patterns.
The student should also know when and where to look for additional techniques and patterns. (B, D)

Assessment of Learning outcomes

All are assessed by both interim tests and final examination.

Contribution to Programme Learning Outcomes

Numerous, most notably A2, A4, B1, B2, B3, C5, D4.


Each week has a primary theme (in some weeks there may also be secondary topics) and the style of the two contact sessions for each week is also listed. Since this is a brand new course some of the details may be subject to change.

Week 1

The Unified Process Introductory lecture, Q&A

Week 2

Use case modelling Q&A, test 1 (Unified process)

Week 3

Non-functional requirements Q&A, review 1

Week 4

System sequence diagrams and interaction diagrams Q&A, test 2 (Requirements analysis)

Week 5

Domain modelling Q&A, review 2

Week 6

Operation contracts Q&A, test 3 (Modelling)

Week 7

GRASP patterns (1) Q&A, review 3

Week 8

GRASP patterns (2) Q&A, test 4 (GRASP patterns)

Week 9

GoF patterns (1) Q&A, review 4

Week 10

GoF patterns (2) Q&A, test 5 (Gof patterns)

Week 11

Statechart modelling Q&A, review 5

Reading List

Conventional lecture notes will not exist, but notes on the case study will be provided.

Core Text
Title: Applying UML and patterns: an introduction to Object-Oriented analysis and design and iterative development (3rd edition)
Author: Larman, Craig
ISBN: 0131489062
Publisher: Prentice Hall
Edition: 3rd
Year: 2004
This book is essential for the course.