Modules - 2009
Contents/Links
Modules for 2009/2010
Degree Programmes for 2009/2010
WARNING: Some of the Syllabus Pages linked from the module codes may be for earlier academic years, if an updated version for 2009/2010 is not yet available. Such Syllabus Pages are subject to change.
Note to module providers: if you wish to change your syllabus, see the instructions in MDs-XML-Notes.
Table of Modules
| Credits | |||||||||
| Level | Code | Module Title | Sem1 | Sem2 | Lecturer(s) | Reviewer | E-mail List | Taught with | Number |
| 1/C | 18186 | Design & Media Team | 10 | Russell Beale | Bob Hendley | mod-team-dm | 96 | ||
| 1/C | 22754.1 | Foundations of Computer Science: Sem1 | 10 | Martin Escardo | Unknown/Left | mod-found-cs | 104 | ||
| 1/C | 22754.2 | Foundations of Computer Science: Sem2 | 10 | Manfred Kerber | 104 | ||||
| 1/C | 21156 | Information & the Web | 10 | Iain Styles | Eike Ritter | mod-info-web | 43 | ||
| 1/C | 23069 | Introduction to AI | 10 | Richard Dearden:5, Jeremy Wyatt:5 | Mark Lee | mod-intro-ai | * | 0 | |
| 1/C | 20415 | Introduction to Mathematics for Computer Science | 10 | 10 | Lesley Lloyd (Achim Jung) | Antoni Diller | mod-intro-maths | 43 | |
| 1/C | 11224 | Introduction to Software Engineering | 10 | Unknown/Left (Rami Bahsoon) | Behzad Bordbar | mod-intro-se | * | 116 | |
| 1/C | 21155 | Language & Logic | 10 | Mark Lee | Peter Hancox | mod-lang-logic | 97 | ||
| 1/C | 22382 | Robot Programming | 10 | Nicholas Hawes | Jeremy Wyatt | mod-robot-prog | 43 | ||
| 1/C | 18190.1 | Software Workshop 1: Sem1 | 20 | Peter Tino:15, Steven Vickers:5 | Martin Escardo | mod-sww1 | 105 | ||
| 1/C | 18190.2 | Software Workshop 1: Sem2 | 10 | Jim Mcgregor | 105 | ||||
| 1/C I | 21977 | ICY: Data Structures & Algorithms | 10 | [Jim Yandle (Unknown/Left)] | [Hayo Thielecke] | mod-datastruct-icy | 21921 | 10 | |
| 1/C I | 21980 | ICY: Databases | 10 | [John Barnden] | [Uday Reddy] | mod-db-icy | 21923 | 10 | |
| 1/C I | 21978 | ICY: Introduction to Computer Science | 10 | [Unknown/Left] | [Hayo Thielecke] | mod-ics-icy | 21933 | 10 | |
| 1/C I | 21699.1 | Software Workshop ICY: Sem1 | 20 | [Manfred Kerber] | [Steven Vickers] | mod-sww-icy | 06994.1 | 10 | |
| 1/C I | 21699.2 | Software Workshop ICY: Sem2 | 20 | [Martin Escardo] | 06994.2 | 10 | |||
| 2/I | 18519 | Communication Skills & Professional Issues | 10 | Nick Blundell:7.5, Jim Yandle:2.5 | Manfred Kerber | mod-comm-skills | 112 | ||
| 2/I | 19339 | Computational Vision | 10 | Hamid Dehghani | Ela Claridge | mod-comp-vision | 49 | ||
| 2/I | 18183 | Computer Science Study Abroad | 60 | 60 | (Tom Chothia) | Unassigned | mod-study-abroad | 1 | |
| 2/I | 19340 | Computer Systems & Architecture | 10 | Unknown/Left | Achim Jung | mod-sys-arch | 84 | ||
| 2/I | 19341 | Introduction to Natural Computation | 10 | Jon Rowe | Nicholas Hawes | mod-intro-nc | 55 | ||
| 2/I | 02640 | Machine Learning | 10 | Ata Kaban | Xin Yao | mod-mach-learn | * | 16 | |
| 2/I | 21254 | Mathematical Techniques for Computer Science | 10 | Achim Jung | Hamid Dehghani | mod-maths-cs | 65 | ||
| 2/I | 05934 | Models of Computation | 10 | Steven Vickers | Volker Sorge | mod-models | 76 | ||
| 2/I | 02495 | Natural Language Processing 1 | 10 | Peter Hancox | Manfred Kerber | mod-nlp1 | 21 | ||
| 2/I | 18191 | Software Engineering | 10 | 10 | Joan Jackson:13.333333, Rami Bahsoon:6.666667 (Rami Bahsoon) | Behzad Bordbar | mod-se | 57 | |
| 2/I | 19343 | Software System Components 1 | 20 | Bob Hendley:5.4:HCI, Volker Sorge:11:Graphics + I/O, Hayo Thielecke:3.6:Parsing (Volker Sorge) | Rami Bahsoon | mod-ssc1 | * | 92 | |
| 2/I | 19321 | Software System Components 2 | 20 | Bob Hendley:7.2:DBs, Eike Ritter:12.8:Networks/Concurrency (Eike Ritter) | Rami Bahsoon | mod-ssc2 | 90 | ||
| 2/I | 11582 | Software Workshop Haskell | 10 | Antoni Diller | Peter Hancox | mod-sww-haskell | 18 | ||
| 2/I | 02630 | Software Workshop Prolog | 10 | Peter Hancox | Antoni Diller | mod-sww-prolog | 59 | ||
| 2/I | 08165 | Software Workshop Team Java | 10 | Errol Thompson | Hayo Thielecke | mod-team-java | 80 | ||
| 3/H | 02363 | Commercial Programming | 10 | Rami Bahsoon:5, Nick Blundell:5 (Rami Bahsoon) | Ela Claridge | mod-comm-prog | * | 57 | |
| 3/H | 02578 | Compilers & Languages | 10 | Hayo Thielecke | Eike Ritter | mod-compilers | * | 30 | |
| 3/H | 05933 | Computer Networks | 10 | Unknown/Left | Unknown/Left | mod-networks | * | 46 | |
| 3/H | 02525 | Databases 2 | 10 | Uday Reddy | Richard Dearden | mod-databases2 | 62 | ||
| 3/H | 06798 | Distributed Systems | 10 | Unknown/Left | Steven Vickers | mod-dist-sys | * | 51 | |
| 3/H | 02411 | Evolutionary Computation | 10 | [Xin Yao] | [Jon Rowe] | mod-evol-comp | 22753 | 20 | |
| 3/H | 02408 | Graphics 2 | 10 | Ela Claridge | Hamid Dehghani | mod-graphics2 | 45 | ||
| 3/H | 22133 | Human Computer Interaction | 10 | Russell Beale | Jon Rowe | mod-hci | 3 | ||
| 3/H | 15506 | Individual Study 1 | Ata Kaban:5, John Barnden:5 | William Edmondson | mod-ind-study1 | 2 | |||
| 3/H | 20122 | Intelligent Data Analysis | 10 | Peter Tino | Russell Beale | mod-ida | * | 45 | |
| 3/H | 13520 | Intelligent Robotics | 20 | Jeremy Wyatt | Richard Dearden | mod-int-robot | * | 23 | |
| 3/H | 11223 | Natural Language Processing & Applications | 10 | Mark Lee | Nicholas Hawes | mod-nlpa | 45 | ||
| 3/H | 14410 | Nature Inspired Design (A) | 10 | [Bob Hendley] | [Xin Yao] | mod-ni-design-a | 12418 | 4 | |
| 3/H | 20416 | Neural Computation | 10 | [John Bullinaria] | [Peter Tino] | mod-neural-comp | 12412 | 12 | |
| 3/H | 15258 | Operating Systems | 10 | Nick Blundell | Unknown/Left | mod-op-sys | * | 33 | |
| 3/H | 02483 | Philosophy of Cognitive Science | 10 | Antoni Diller | Russell Beale | mod-phil-cogsci | 44 | ||
| 3/H | 02562 | Planning | 10 | Richard Dearden | Volker Sorge | mod-planning | * | 20 | |
| 3/H | 02552 | Principles of Programming Languages | 10 | Uday Reddy | Achim Jung | mod-princ-pls | 26 | ||
| 3/H | 02596 | Project - E&SE/BEng | 10 | 30 | [ (Ela Claridge)] | [Peter Tino] | mod-proj-eseb | 02386 | 0 |
| 3/H | 15500 | Software Design Study | 10 | 20 | (Behzad Bordbar) | Mark Lee | mod-sw-design | 5 | |
| 3/H | 02386 | Software Project | 20 | 20 | (Ela Claridge) | Peter Tino | mod-proj-ug | * | 65 |
| 3/H | 19322 | Software System Components 1A | 30 | [Bob Hendley:5.4:HCI, Volker Sorge:11:Graphics + I/O, Hayo Thielecke:3.6:Parsing (Volker Sorge)] | [Rami Bahsoon] | mod-ssc1a | 19343 | 0 | |
| 3/H | 17423 | Systems Programming in C/C++ | 10 | Eike Ritter | Unknown/Left | mod-sys-prog | 85 | ||
| 3/H | 02645 | Virtual Reality | 10 | Unknown/Left | Jeremy Wyatt | mod-vr | 46 | ||
| 4/M A | 07953 | First semester mini-project | 30 | (Bob Hendley) | John Bullinaria | mod-mini1 | 7 | ||
| 4/M A | 21253 | Human Computer Interaction (MSc) | 10 | Russell Beale | Jon Rowe | mod-hci-msc | 32 | ||
| 4/M A | 18156.1 | Internet Computing Workshop: Sem1 | 20 | Tom Chothia | Martin Escardo | mod-sww-internet | 60 | ||
| 4/M A | 18156.2 | Internet Computing Workshop: Sem2 | 20 | Behzad Bordbar | 60 | ||||
| 4/M A | 22456 | Internet Security Seminar | 10 | Tom Chothia | Mark Ryan | mod-internet-sec | 10 | ||
| 4/M A | 18159 | Project (CompSci - MSc) | (Rami Bahsoon) | Peter Tino | mod-proj-msc | 70 | |||
| 4/M A | 02637 | Project - Advanced MSc | (Bob Hendley) | Peter Tino | mod-proj-msc-adv | 6 | |||
| 4/M A | 06991 | Research Skills | 10 | Peter Hancox | Iain Styles | mod-res-skills | 8 | ||
| 4/M A | 07954 | Second semester mini-project | 30 | (Bob Hendley) | John Bullinaria | mod-mini2 | 7 | ||
| 4/M | 17442 | Commercial Programming (Extended) | 10 | [Rami Bahsoon:5, Nick Blundell:5 (Rami Bahsoon)] | [Ela Claridge] | mod-comm-prog-ext | 02363 | 27 | |
| 4/M | 15255 | Compilers & Languages (Extended) | 10 | [Hayo Thielecke] | [Eike Ritter] | mod-compilers-ext | 02578 | 9 | |
| 4/M | 18157 | Component-based Software | 10 | Rami Bahsoon | Uday Reddy | mod-comp-based-sw | 39 | ||
| 4/M | 18150 | Computer Networks (Extended) | 10 | [Unknown/Left] | [Unknown/Left] | mod-networks-ext | 05933 | 55 | |
| 4/M | 17417 | Computer Security | 10 | Mark Ryan | Tom Chothia | mod-comp-sec | 64 | ||
| 4/M | 20008 | Cryptography | 10 | Volker Sorge | Mark Ryan | mod-crypt | 48 | ||
| 4/M | 18151 | Distributed Systems (Extended) | 10 | [Unknown/Left] | [Steven Vickers] | mod-dist-sys-ext | 06798 | 31 | |
| 4/M | 19009 | Individual Study 2 | Ata Kaban:5, John Barnden:5 | William Edmondson | mod-ind-study2 | 6 | |||
| 4/M | 20233 | Intelligent Data Analysis (Extended) | 10 | [Peter Tino] | [Russell Beale] | mod-ida-ext | 20122 | 8 | |
| 4/M | 15267 | Intelligent Robotics (Extended) | 20 | [Jeremy Wyatt] | [Richard Dearden] | mod-int-robot-ext | 13520 | 5 | |
| 4/M | 22753 | Introduction to Evolutionary Computation | 10 | Xin Yao | Jon Rowe | mod-intro-evol-comp | * | 8 | |
| 4/M | 12412 | Introduction to Neural Computation | 10 | John Bullinaria | Peter Tino | mod-intro-neural-comp | * | 10 | |
| 4/M | 20236 | Machine Learning (Extended) | 10 | [Ata Kaban] | [Xin Yao] | mod-mach-learn-ext | 02640 | 6 | |
| 4/M | 12418 | Nature Inspired Design | 10 | Bob Hendley | Xin Yao | mod-ni-design | * | 10 | |
| 4/M | 12416 | Nature Inspired Optimisation | 10 | Jon Rowe | Bob Hendley | mod-ni-opt | 10 | ||
| 4/M | 20009 | Network Security | 10 | Unknown/Left | Mark Ryan | mod-net-sec | 50 | ||
| 4/M | 15257 | Operating Systems (Extended) | 10 | [Nick Blundell] | [Unknown/Left] | mod-op-sys-ext | 15258 | 12 | |
| 4/M | 20234 | Planning (Extended) | 10 | [Richard Dearden] | [Volker Sorge] | mod-planning-ext | 02562 | 13 | |
| 4/M | 22755 | Programming Massively Parallel Architectures | 10 | Dan Ghica | Unknown/Left | mod-prog-parallel | 9 | ||
| 4/M | 22457 | Quantum Computing and Cryptography | 10 | Steven Vickers | Iain Styles | mod-intro-mqc | 7 | ||
| 4/M | 20010 | Secure Programming | 10 | Hayo Thielecke | Tom Chothia | mod-sec-prog | 52 | ||
| 4/M | 18158 | Software Testing | 10 | Ela Claridge | Unknown/Left | mod-sw-testing | 19 | ||
| 4/M U | 02456 | Project - E&SE/MEng | 30 | 30 | [ (Ela Claridge)] | [Peter Tino] | mod-proj-esem | 02386 | 0 |
| 4/M U | 17419 | Software Project M40 | 10 | 30 | [ (Ela Claridge)] | [Peter Tino] | mod-prog-m40 | 02386 | 2 |
| 4/M U | 17418 | Software Project M60 | 20 | 40 | [ (Ela Claridge)] | [Peter Tino] | mod-prog-m60 | 02386 | 5 |
| 4/M C | 21921 | Fundamentals: Data Structures | 10 | Jim Yandle (Unknown/Left) | Hayo Thielecke | mod-fund-datastruct | * | 36 | |
| 4/M C | 21923 | Fundamentals: Databases | 10 | John Barnden | Uday Reddy | mod-fund-db | * | 44 | |
| 4/M C | 21933 | Fundamentals: Intro to Computer Science | 10 | Unknown/Left | Hayo Thielecke | mod-ics-cs | * | 36 | |
| 4/M C | 21936 | Fundamentals: Software Engineering | 10 | [Unknown/Left (John Barnden)] | [Behzad Bordbar] | mod-fund-se | 11224 | 21 | |
| 4/M C | 06997 | Project - Conversion MSc | (Rami Bahsoon) | Peter Tino | mod-proj-conv | 46 | |||
| 4/M C | 06994.1 | Software Workshop: Sem1 | 20 | Manfred Kerber | Steven Vickers | mod-sww-msc | 45 | ||
| 4/M C | 06994.2 | Software Workshop: Sem2 | 20 | Martin Escardo | 45 | ||||
Notes
Level
Modules are arranged by Level (and then by Title). The University is moving from a numerical labelling of Levels (1-4) to a letter-based labelling (C = Certificate, I = Intermediate, H = Honours, M = Masters).
Any additional letter is only for use within the School.
Level 0 modules are intended for the Foundation Year (Foundation Academy).
For Levels 1/C to 3/H, 'I' after the level designation marks modules only available to the Intercalated Year, 'Q' those only available as a Module Outside the Main Discipline.
For Level 4/M, 'U' marks modules available only for undergraduate MEng/MSci programmes, 'C' only the conversion MSc, 'A' only advanced MSc programmes.
Module Codes
All university modules have an official Module Code, often called the "Banner" code. Codes consist of a two digit "area" code followed by a five digit code for the module. Currently these five digit codes are unique, i.e. the area code is redundant. The area code for Computer Science is 06, and is omitted in the table above.
The Module Codes in the table are linked to "Syllabus Pages". These in turn link to the School of Computer Science Module Description. (Note to module providers: if you wish to change your syllabus page/module description, see the instructions in MDs-XML-Notes.)
Pseudo-Module Codes of the form 06-N#### are used when a module has not yet been assigned an official Module Code.
See below for submodules.
Module Title
Unfortunately, different University databases contain different variants of module titles, partly because the maximum number of characters allowed varies. The module code is the only sure guide.
Submodules have no status outside the School, merely reflecting the way the module is taught. They are designated by a Module Code with digits after a decimal point: thus 12345.2 would be the code for the second submodule for the module with code 12345. Text after a colon in a Module Title gives the title of the submodule, reflecting the way the module is taught.
Lecturer(s)
Parentheses around a lecturer's name indicate co-ordination, i.e. that the number of lectures involved is either none or very few.
Where no coordinator is given, the FIRST-named lecturer is responsible for coordinating the module (except in the case of linked modules, where the coordinator for the SECOND module is responsible for combining assessment marks).
Square brackets around a lecturer's name indicate significant overlap of teaching with another module. The Taught With column indicates which other module or submodule the unit is taught with.
Nos
Numbers are generally estimates, particularly for optional modules. Where no number is given and the lecturer name is in [..], the number has been included in the overlapping module.
E-mail List
The e-mail list for each module is automatically derived from the School's database. Changes to module registrations made via the School Office should normally be reflected in the e-mail list overnight. Note that the e-mail lists are strictly one per module; where modules are taught together all relevant e-mail lists need to be used in order to contact students.
Taught With
A non-blank entry in this column indicates that the (sub)module is taught with some other (sub)module(s). * indicates that it is considered the 'base' unit, i.e. there will at least one other (sub)module taught with this module. A (sub)module code in this column gives the code of the 'base' unit it is taught with.