This is an archived syllabus from 2013-2014
COMP33411 Software Design using Patterns syllabus 2013-2014
COMP33411 Software Design using Patterns
Enrolled students: 105
Course leader: John Sargeant
Additional staff: view all staff
- Pre-Requisite (Compulsory): COMP23420
- 50% Written exam
- 50% Coursework
|Sem 1||Lecture||IT407||Wed||11:00 - 11:00||-|
|Sem 1 w1-2,4,7,9,11||Lecture||1.3||Tue||16:00 - 16:00||-|
|Sem 1 A w3+||Lab||3rdLab||Tue||16:00 - 16:00||-|
|Sem 1 A w3+||Lab||G23||Tue||16:00 - 16:00||-|
|Sem 1 A w3+||Lab||Toot 0||Tue||16:00 - 16:00||-|
- Software Engineering
OverviewThis is an advanced course on software design following on from the second year software engineering course COMP23420.
Although a number of software design technques are covered, the main emphasis is on design patterns, which are approcahes to hard design problems which have shown themselves to be useful in multuiple different situations.
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.
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.
The Unified Process Introductory lecture, Q&A
Use case modelling Q&A, test 1 (Unified process)
Non-functional requirements Q&A, review 1
System sequence diagrams and interaction diagrams Q&A, test 2 (Requirements analysis)
Domain modelling Q&A, review 2
Operation contracts Q&A, test 3 (Modelling)
GRASP patterns (1) Q&A, review 3
GRASP patterns (2) Q&A, test 4 (GRASP patterns)
GoF patterns (1) Q&A, review 4
GoF patterns (2) Q&A, test 5 (Gof patterns)
Statechart modelling Q&A, review 5
Feedback methodsFeedback is mainly through a series of 5 online tests. Student get individual feedback on these, and they are also reviewed at subsequent lectures.
- Assessment written exam (2 hours)
- Lectures (17 hours)
- Practical classes & workshops (5 hours)
- Analytical skills
- Problem solving
- Written communication
On successful completion of this unit, a student will be able to:
Learning outcomes are detailed on the COMP33411 course unit syllabus page on the School of Computer Science's website for current students.
No reading list found for COMP33411.
Course unit materials
Links to course unit teaching materials can be found on the School of Computer Science website for current students.