COMPUTING SCIENCE

COMPUTING SCIENCE

Level 1

CS 1015 - GRAND CHALLENGE OF ARTIFICIAL INTELLIGENCE
Credit Points
15
Course Coordinator
Dr F Guerin

Pre-requisites

None

Co-requisites

None

Notes

Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the School Disability Co-ordinator.

Overview

The first part of the course overviews important problems in AI (for example Natural Language Processing, Computer Vision, and Robotics), and a number of techniques which are used to tackle these problems (for example search, neural networks, and reinforcement learning). The second part of the course looks at relevant areas of Cognitive Science, including Psychology, Linguistics, Neuroscience and Philosophy. Finally the course looks at the history of AI and possible future scenarios.

Structure

Four-hours per week: 2 one-hour lectures, 1 two-hour practical.

Assessment

1st Attempt: 1 two-hour written examination (75%); continuous assessment: a series of short tests in practical sessions (25%).

Resit: 1 two-hour written examination (75%); continuous assessment mark carried forward (25%).

Formative Assessment

During lectures, the Personal Response System and/or other ways of student interaction will be used for formative assessment. Additionally, practical sessions will provide students with practice opportunities and formative assessment.

Feedback

Formative feedback for in-course assessments will be provided in written form. Additionally, formative feedback on performance will be provided informally during practical sessions.

CS 1016 - FOUNDATIONS OF COMPUTING SCIENCE 1
Credit Points
15
Course Coordinator
Professor T Norman

Pre-requisites

None

Co-requisites

None

Notes

Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the School Disability Co-ordinator.

Overview

Topics will include: Introduction to Programming: Object creation and interaction; Class definitions; Simple data types; Strings; Method structure; Control structures; Structured program design; Scoping; Expressions: arithmetic, conditional, string; Internal and external method calls; Sets; Boolean algebra; Propositional logic and truth tables.

Structure

Five hours per week: 2 one hour lectures, 1 one hour tutorial, 1 two hour practical.

Assessment

1st Attempt: 1 two-hour multiple-choice examination (50%), practical examination (30%) and continuous assessment (20%). Continuous assessment is a practical programming task.

Resit: From a new practical examination(50%); new multiple-choice examination (50%).

Formative Assessment

During lectures, the Personal Response System and/or other ways of student interaction will be used for formative assessment. Additionally, practical sessions will provide students with practice opportunities and formative assessment.

Feedback

Formative feedback for in-course assessments will be provided in written form. Additionally, formative feedback on performance will be provided informally during practical sessions.

CS 1017 - INFORMATION TECNNOLOGY
Credit Points
15
Course Coordinator
Martin Kollingbaum

Pre-requisites

None

Co-requisites

None

Notes

Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the School Disability Co-ordinator.

Students should not take  this course if they are currently registered for, or have already obtained a pass in Tools for Science.

Overview

As well as basic concepts it will introduce the more advanced concepts associated with long documents such as section breaks, table of contents and index. It will also introduce the concept of macros and if statements and construction of graphs using spreadsheets.

Structure

One 1 hour lecture a week in the first four weeks, 1 two-hour practical a week.

Assessment

1st Attempt: One 1½-hour multiple-choice examination (25%) and three practical in-class tests (25% each).

Resit: Candidates only resit those components which they have failed (CAS <9) at first attempt. Multiple-choice examination (25%) at resit is 1½-hour; practical assessments are 45 minutes each.

Formative Assessment

During lectures, the Personal Response System and/or other ways of student interaction will be used for formative assessment. Additionally, practical sessions will provide students with practice opportunities and formative assessment.

Feedback

Formative feedback for in-course assessments will be provided in written form. Additionally, formative feedback on performance will be provided informally during practical sessions.

CS 1515 - FOUNDATIONS OF COMPUTING SCIENCE 2
Credit Points
15
Course Coordinator
Dr W Vasconcelos

Pre-requisites

Foundations of Computing Science 1 or basic JAVA programming skills up to the level taught in the Foundations of Computing Science 1 course.

Co-requisites

None

Notes

Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the School Disability Co-ordinator.

Overview

Topics will include: Further Programming: Problem solving: top-down design; Graphical User Interfaces; Text files: reading and writing; Inheritance; Polymorphism; Static and dynamic types; Random numbers; Simulations; Event handling; Error handling; Introduction to statistics.

Structure

Five-hours per week: 2 one-hour lectures, 1 one-hour tutorial, 1 two-hour practical.

Assessment

1st Attempt: 1 two-hour multiple-choice examination (50%), group in-course assessment (20%) and individual assessment (30%). In-course assessments involve producing a computer program for a problem and documenting it.

Resit: From a new practical examination (50%; new written examination(50%).

Formative Assessment

During lectures, the Personal Response System and/or other ways of student interaction will be used for formative assessment. Additionally, practical sessions will provide students with practice opportunities and formative assessment.

Feedback

Formative feedback for in-course assessments will be provided in written form. Additionally, formative feedback on performance will be provided informally during practical sessions.

CS 1516 - WEB APPLICATION DEVELOPMENT
Credit Points
15
Course Coordinator
Dr J Pan

Pre-requisites

None

Co-requisites

None

Notes

Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the School Disability Co-ordinator.

Overview

Topics will include:

  • programming using a scripting language, including objects, methods, control structures, data types and collections;

  • programming for the internet, including forms, application logic, database programming, and interaction with other applications using Web 2.0 technology such as Google Maps.

Structure

Four hours per week: 2 one hour lectures, 1 two hour practical.

Assessment

1st Attempt: 1 two-hour written examination (75%); continuous assessment (25%).

Resit: 1 two-hour written examination (75%); continuous assessment mark carried forward (25%). Continuous assessment consists of programming tasks.

Formative Assessment

During lectures, the Personal Response System and/or other ways of student interaction will be used for formative assessment. Additionally, practical sessions will provide students with practice opportunities and formative assessment.

Feedback

Formative feedback for in-course assessments will be provided in written form. Additionally, formative feedback on performance will be provided informally during practical sessions.

CS 1517 - WEB TECHNOLOGY
Credit Points
15
Course Coordinator
Dr G Coghill

Pre-requisites

Familiarity with the Windows environment.

Co-requisites

None

Notes

Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the School Disability Co-ordinator.

Overview

The design of Web sites is discussed and students are given opportunities to critique existing Web sites and design their own sites. The course will cover the following technologies: XHTML, CSS and JavaScript.

Structure

Four hours per week: 2 one hour lectures, 1 two hour practical.

Assessment

1st Attempt: One 1½-hour multiple-choice examination (25%) and two practical examinations (45% and 30% respectively).

Resit: Candidates only resit those components (multiple-choice examination, practical examinations) which they failed at first attempt. Multiple-choice examination at resit is 1½ hours.

Formative Assessment

During lectures, the Personal Response System and/or other ways of student interaction will be used for formative assessment. Additionally, practical sessions will provide students with practice opportunities and formative assessment.

Feedback

Formative feedback for in-course assessments will be provided in written form. Additionally, formative feedback on performance will be provided informally during practical sessions.

Level 2

CS 2007 - ALGORITHMIC PROBLEM SOLVING
Credit Points
15
Course Coordinator
Dr N Oren

Pre-requisites

CS 1512

Notes

Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the School Disability Co-ordinator.

Overview

This course identifies fundamental data structures and algorithms as the basic building blocks of software systems, and provides experience of their implementation and application using the Java programming language. Introduction to Design of algorithms. Recursion and simple analysis of recursive methods. Data Types & Abstraction. Use of the Java Collection Framework. Stacks, Queues, Deques and Lists. Hash tables. Trees. Search Trees. Heaps. Sets. Algorithmic paradigms and their applications. Implementation issues and efficiency measures.

Structure

12 week course - 2 one-hour lectures, 1 one-hour tutorial and 1 one-hour practical per week.

Assessment

1st Attempt: 1 two-hour written examination (75%) and in-course assessment (25%). In order to pass the course, candidates must obtain a pass mark in the examination and in the overall combination of examination and in-course assessment (with the above weights).

Resit: 75% from a two-hour written examination; 25% carried forward from the original in-course assessment. Candidates must obtain a pass mark in the exam and the overall combination of exam and in-course assessment.

CS 2008 - DATA MANAGEMENT
Credit Points
15
Course Coordinator
Dr S Sripada

Pre-requisites

CS 1014 or CS 1514

Co-requisites

None

Notes

Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the School Disability Co-ordinator.

Overview

The concept of a database and database management. Database development. Illustrations. Entity-Relationship model. Database design: logical design and the relational model. Normalisation; different normal forms. Physical design; file organisation and access; indexing. Database administration. Query By Example and SQL. Query optimisation. Practical examples using MS Access.
Client-server model. Database servers. Database access from client applications. Web-based database access through server-side scripting. Practical examples using MS Access, SQL Server, Javascript and JDBC.
A brief overview of key concepts in distributed, object-oriented, multimedia, spatial and geo-referenced database systems. Data mining.
Basic information retrieval techniques in search engines.

Structure

12 week course - 2 one-hour lectures; plus one two-hour practical per week.

Assessment

1st Attempt: 1 two-hour written examination (75%) and in-course assessment (25%). In order to pass the course, candidates must obtain a pass mark in the examination and in the overall combination of examination and in-course assessment (with the above weights).

Resit: 75% from a two-hour written examination; 25% carried forward from the original in-course assessment. Candidates must obtain a pass mark in the exam and the overall combination of exam and in-course assessment.

CS 2009 - THE ELECTRONIC SOCIETY
Credit Points
15
Course Coordinator
Dr F Guerin

Pre-requisites

None

Co-requisites

None

Notes

Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the School Disability Co-ordinator.

Overview

The course looks at the interaction between modern Technology (especially the Internet) and Human Society. In particular it looks at the impact of the electronic society on organisations, and the impact of specific technologies on various sectors of society. Sectors analysed include: eCommerce, eGovernment, Education (eLearning), eHealth, eScience, Entertainment (e.g. online computer games), and socialising (especially Social Networking technology). The course then looks at the major issues which are relevant to all these sectors, including: Legal and Ethical Issues, online security and crime, privacy, Intellectual Property, Software Failure, Professional issues, the Digital Divide, the Developing World, Public Policies and Standards.

Structure

2 one-hour lectures (to be arranged) and 1 one-hour tutorial (to be arranged) per week.

Assessment

1st Attempt: 1 two-hour written examination (75%); continuous assessment (25%). In order to pass the course, candidates must obtain a pass mark (CAS > 8) in the examination and in the overall combination of examination and continuous assessment (with the above weights).

Resit: 1 two-hour written examination (75%); continuous assessment mark carried forwards (25%). In order to pass the course, candidates must obtain a pass mark (CAS > 8) in the examination and in the overall combination of examination and continuous assessment (with the above weights).

CS 2506 - HUMAN - COMPUTER INTERACTION
Credit Points
15
Course Coordinator
Prof C Mellish

Pre-requisites

Co-requisites

None

Notes

Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the School Disability Co-ordinator.

Overview

Principles of HCI: metaphors and conceptual models; seven stages of action; user models; human information processing; ergonomics; user-centred design and evaluation methodologies; HCI guidelines and standards, including Shneiderman's 8 golden rules. Input/output modes and devices; interaction styles. Users with special needs. Internationalisation. Evaluation techniques - walkthroughs, heuristic evaluation, expert reviews, controlled experiments. Technical Writing and Documentation: help systems; writing tutorials, user manuals and reference material.
Advanced Topics in HCI: multimedia; games.

Structure

12 week course - 2 one-hour lectures; 1 two-hour practical per week.

Assessment

1st Attempt: One two-hour written examination (75%) and in-course assessment (25%). In order to pass the course, candidates must obtain a pass mark in the examination and in the overall combination of examination and in-course assessment (with the above weights).

Resit: 75% from a two-hour written examination; 25% carried forward from original in-course assessment. Candidates must obtain a pass mark in the exam and the overall combination of exam and in-course assessment.

CS 2508 - INTELLIGENT HARDWARE AND ROBOTICS
Credit Points
15
Course Coordinator
Dr J R Lishman

Pre-requisites

CS 2007

Co-requisites

None

Notes

Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the School Disability Co-ordinator.

Overview

Simple C Programming: data types, variables, operators and expressions, control structures (branching, looping, iteration), procedures and functions, input/output, arrays, pointers.
Data representation: bits, binary representation of integers and reals, character codes, Boolean algebra.
Register level machine: main functional parts of a computer - CPU, memory, I/O, buses; architecture of a simple CPU: registers, ALU, control unit; fetch/execute cycle, structure of instructions, instruction decoding; memory addressing: immediate, direct, register, indexing, etc. reference to binary machine code.
Special hardware support: floating point units, graphics.
Assembly language programming: relationship of symbolic instructions and memory addressing modes to the register level architecture; examples of simple assembly language programs.
Execution of C programs on the register level machine.
Memory: different types of memory - main, cache, backing.
I/O: transmission modes (serial/parallel, synchronous/asynchronous), DMA, interrupts.

Structure

12 week course - 2 one-hour lectures; one two-hour practical per week.

Assessment

1st Attempt: 1 two-hour written examination (75%) and in-course assessment (25%). In order to pass the course, candidates must obtain a pass mark in the examination and in the overall combination of examination and in-course assessment (with the above weights).

Resit: 75% from a two-hour written examination; 25% carried forward from original in-course assessment. Candidates must obtain a pass mark in the exam and the overall combination of exam and in-course assessment.

CS 2509 - ADVANCED WEB APPLICATION DEVELOPMENT
Credit Points
15
Course Coordinator
To be advised

Pre-requisites

CS 1514

Co-requisites

None

Notes

Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the School Disability Co-ordinator.

Overview

(a) Advanced programming using a scripting language, including top-down design, reading and writing to files, inheritance and other relationships between classes, event handling, error handling, testing, stacks and queues, recursion;
(b) Advanced programming for the internet, including searching and plug-ins;
(c) Mobile web design and development.

Structure

2 one-hour lectures (to be arranged) and 1 two-hour practical (to be arranged) per week.

Assessment

1st Attempt: 1 two-hour written examination (75%); continuous assessment (25%). In order to pass the course, candidates must obtain a pass mark (CAS > 8) in the examination and in the overall combination of examination and continuous assessment (with the above weights).

Resit: 1 two-hour written examination (75%); continuous assessment mark carried forwards (25%). In order to pass the course, candidates must obtain a pass mark (CAS > 8) in the examination and in the overall combination of examination and continuous assessment (with the above weights).

Level 3

CS 3008 - OPERATING SYSTEMS
Credit Points
15
Course Coordinator
Dr J R Lishman

Pre-requisites

CS 2007, CS 2508

Notes

(i) Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the School Disability Co-ordinator.


(ii) Non-graduating students would require the following background/experience: knowledge of common data-structures and algorithms; experience of the C programming language.

Overview

Introduction and historical overview: from batch systems to distributed OS. I/O system structures: i/o bus, interrupts, DMA. OS structure and services: system calls, system programs, virtual machines. Processes and threads: scheduling, operation, co-operation and communication. Synchronisation, semaphores and deadlock handling. Memory management: logical and physical address spaces, swapping, segmentation and paging. File systems, directory structure, and storage allocation. Protection and security. Comparing and contrasting examples and case studies from UNIX, Solaris 2, and MS-DOS.

Structure

12 week course - 2 one-hour lectures and 1 two-hour laboratory session per week.

Assessment

1st Attempt: 1 two-hour written examination paper (75%) and in-course assessment (25%). In order to pass the course, candidates must obtain a pass mark in the examination and in the overall combination of examination and in-course assessment (with the above weights).

Resit: 1 two-hour written examination (75%); 25% carried forward from original in-course assessment. Candidates must obtain pass mark in the examination and in the overall combination of exam and in-course assessment.

CS 3015 - SOFTWARE ENGINEERING: PRINCIPLES AND PRACTICE
Credit Points
30
Course Coordinator
Dr E Compatangelo

Pre-requisites

CS 2007, CS 2008, CS 2506

Notes

(i) Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the School Disability Co-ordinator.
(ii) This course runs for the entire session and is only available to students registered for Honours degree programmes offered by Computing Science.

Overview

Introduction to software engineering – software development paradigms, software lifecycle, the Unified Paradigm.
Project management issues – team organisation, time and cost estimation, risk analysis. Software modelling and coding issues - The Unified Modelling Language (UML); Computer-Aided Software Engineering.
Software analysis and design issues - requirements elicitation, developing a system specification through use cases, architectural design, detailed design, design patterns.
Software implementation and quality issues - testing strategies and methods; quality assurance and management; software verification and validation; software documentation and maintenance.

Structure

24 week course – 3 one-hour lectures, 1 two-hour individual practical per week during first half-session; 1 one-hour group practical per week during second half-session.

Assessment

1st Attempt: One 1.5 hour written examination (25%) and two software engineering project deliverables (25% and 50% respectively, 75% in total). In order to pass the course, candidates must obtain a pass mark in the examination and in the overall combination of examination project work(with the above weights).

Resit: One 1.5 hour written examination (25%) and software engineering project deliverables (75%). In order to pass the course, candidates must obtain a pass mark in the examination and in the overall combination of examination and project deliverables (with the above weights).

CS 3017 - ADAPTIVE INTERACTIVE SYSTEMS
Credit Points
15
Course Coordinator
Dr A Siddharthan

Pre-requisites

CS 2506 and CS 2007 or CS2509.

Notes

(i) Assistive technologies may be required for any student who is unable to use a standard keyboard/computer monitor. Any students wishing to discuss this further should contact the School Disability Co-ordinator.

(ii) Non-graduating students would require the following background/experience: familiarity with basic algorithmic problem solving and human-computer interaction.

Overview

Adaptive Hypermedia

User modelling.

Content-based and collaborative filtering.

Group modelling.

Affective and persuasive computing.

Conversational interfaces, Speech interfaces.

Application domains (eg personalized news, personalized e-learning, personalized digital tv, personalized e-commerce, personalized in health-care).

Usability aspects of adaptive systems (scrutability, believeability, privacy).

Designing and evaluating adaptive systems.

Structure

2 one-hour lectures and 1 two-hour supervised practical per week.

Assessment

1st Attempt: 1 two-hour written examination (75%) and continuous assessment (25%). In order to pass the course, candidates must obtain a pass mark (CAS > 8) in the exam and in the overall combination of examination and continuous assessment (with the above weights).

Resit: 1 two-hour written examination (75%) and continuous assessment (25%). In order to pass the course, candidates must obtain a pass mark (CAS > 8) in the examination and in the overall combination of examination and continuous assessment (with the above weights). There is no opportunity to repeat the continuous assessment; the mark obtained at the first attempt will be carried forward to resit.

CS 3018 - INTELLIGENT SYSTEMS ENGINEERING: PRINCIPLES AND PRACTICE
Credit Points
30
Course Coordinator
Dr E Compatangelo

Pre-requisites

CS 2007, CS 2008, CS 2506

Notes

(i) Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the School Disability Co-ordinator.
(ii) This course runs for the entire session and is only available to students registered for Honours degree programmes offered by Computing Science.

Overview

Introduction to software engineering - software development paradigms, software lifecycle, prototyping.
The Unified Modelling Language (UML).
Project management issues - team organisation, software measurement and metrics, cost estimation, risk analysis.
Systems analysis and design - reuqirements elicitation, interviewing, system modelling, functional vs non-functional requirements, developing a system specification, object libraries, design patterns.
Computer-aided software engineering.
Implementation and integration methods.
Software testing - testing strategies and methods, quality assurance and management, verification and validation.
Software documentation and maintenance.
Knowledge acquisition; elements of knowledge modelling; introduction to knowledge base management systems; designing knowledge-based software.

Structure

3 one-hour lectures (to be arranged) during the first 12 weeks, 1 one-hour tutorial (to be arranged) per week for the duration of the course, and 1 two-hour supervised practical (to be arranged) per week for the first 12 weeks of the course and 1 one-hour project supervision meeting (to be arranged) for the duration of the course.

Assessment

1st Attempt: One 1.5 hour written examination (25%). Individually-marked group project (75%). In order to pass the course, the candidate must obtain a pass mark (CAS >8) both in the examination and in the overall combination of examination and project (with the above weights).

Resit: One 1.5 hour written resit examination (25%). The nature of the course means that there is no opportunity to resubmit the project; original mark carried forward. In order to pass the course at resit and to get credits, the candidate must obtain a pass mark of (CAS >8) both in the resit examination and in the overall combination of examination and project (with the above weights).

CS 3019 - KNOWLEDGE-BASED SYSTEMS
Credit Points
15
Course Coordinator
Dr J Pan

Pre-requisites

CS 2007 or CS 2509

Notes

(i) Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the School Disability Co-ordinator.
(ii) Non-graduating students would require the following background/experience: familiarity with a procedural programming language.

Overview

- Knowledge representation: propositional logic, description logics, ontology, rules, uncertainty and vagueness.
- Knowledge reasoning: description logics-based and rule-based systems, tableaux (completion) algorithm for description logics, forward chaining and backward chaining for rules.
- Knowledge engineering: expertise identification, capture, evaluations, reusability.

Structure

2 one-hour lectures (to be arranged) and 1 two-hour supervised practical (to be arranged) per week.

Assessment

1st Attempt: 1 two-hour written examination (75%) and continuous assessment (25%). In order to pass the course, candidates must obtain a pass mark (CAS > 8) in the exam and in the overall combination of examination and continuous assessment (with the above weights).

Resit: 1 two-hour written examination (75%) and continuous assessment (25%). In order to pass the course, candidates must obtain a pass mark (CAS > 8) in the examination and in the overall combination of examination and continuous assessment (with the above weights). There is no opportunity to repeat the continuous assessment; the mark obtained at the first attempt will be carried forward to resit.

CS 3020 - ROBOTICS AND LEARNING
Credit Points
15
Course Coordinator
Dr G Coghill

Pre-requisites

CS 2007, CS 2508

Notes

(i) Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the School Disability Co-ordinator. (ii) Non-graduating students would require the following background/experience: familiarity with a procedural programming language, and some experience in basic robotics.

Overview

Animal behaviour: neuroscientific, psychological, and ethological bases; examples of bio-robots. Robot architectures: subsumption, schema-based, and others.
Knowledge representation for robots: short-term behavioural memory, long-term cognitive maps.
Hybrid deliberative/reactive architectures.
Perception: bilogical and psychological insights, robot sensors, integrating action and perception.
Overview of Machine Learning techniques used in robotics.
Reinforcement learning and its application (eg learning to walk, learning to push, learning to shoot a ball into a goal).
Social behaviour and organization (eg robotic football teams).
Planning: motivation; STRIPS; non-linear planning.

Structure

2 one-hour lectures (to be arranged) and 1 two-hour supervised practical (to be arragend) per week.

Assessment

1st Attempt: 1 two-hour written examination (75%) and continuous assessment (25%). In order to pass the course, candidates must obtain a pass mark (CAS > 8) in the overall combination of examination and continuous assessment (with the above weights).

Resit: 1 two-hour written examination (75%) and continuous assessment (25%). In order to pass the course, candidates must obtain a pass mark (CAS > 8) in the examination and in the overall combination of examination and continuous assessment (with the above weights). There is no opportunity to repeat in-course practical work; the mark obtained at the first attempt will be carried forward to resit.

CS 3021 - COMMUNICATION OF COMPUTING
Credit Points
20
Course Coordinator
Dr J F Masthoff

Pre-requisites

CS 2506

Notes

(i) Restricted to students registered for Honours degree programmes offered by Computing Science. (ii) Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the School Disability Co-ordinator. (iii) Disclosure Scotland checking to be undertaken for Child Protection purposes for any students getting access to minors.

Overview

Effective communication skills: audience awareness, body language, influencing the audience, interacting with the audience, cross-cultural communication.

Multimedia communication: blogs (web logs/online journals), newsletters, podcasting (method for sending files to users automatically, mostly used for audio files), interactive media, wikis (websites allowing users to add and edit content collectively).

Mentoring: the mentoring process, the mentoring relationship, boundary issues, questioning techniques, goal setting, mentoring students with special needs, dealing with students who present challenges (eg quiet students, sad students, angry students, students lacking motiviation), referral, group dynamics, managing groups.

Creative problem solving: Brainstorming, analytical creativity, idea selection.

Structure

  • 2 one-hour lectures, to introduce the course and reflect on its outcomes

  • 6 three-hour workshops during the year, delivered in a highly interactive fashion (eg using role playing and case studies)

  • 1 one-hour mentoring session per week during the year, in which a pair of students mentor a small group of Level 1 students registered for a computing science course (typically CS 1014 and CS 1512).

  • 1 two-hour action learning set per two weeks during the year, in which students in a small group discuss the problems/issues they encounter in the mentoring, facilitated by a member of staff. A small amount of time will also be dedicated to briefing mentors about the activities to be undertaken in the next weeks.

Assessment

1st Attempt: Continuous assessment (100%) consisting of an oral presentation to a lay audience (10%), a multimedia communication (45%) and an assessment of the mentoring activity (45%). For the assessment of the mentoring activity, students will keep a reflective journal on the mentoring during the year, and will write an essay on a case study from their mentoring experience (eg, what they were trying to achieve in a particular mentoring activity, how they prepared for it, how effective it was) illustrated with extracts from their reflective journal.

Resit: 1 continuous assessment (100%) consisting of a multimedia communication for a lay audience and tutorial material for supporting novice computer scientists.

CS 3514 - ENTERPRISE COMPUTING
Credit Points
15
Course Coordinator
Dr B Scharlau

Pre-requisites

CS 2007, CS 2008, CS 2506

Co-requisites

CS 3015

Notes

(i) Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the School Disability Co-ordinator.
(ii) Non-graduating students would require the following background/experience: knowledge of database principles; intermediate-level experience of at least one programming language; principles of systems analysis and design.

Overview

This course aims to provide a modern introduction to business computing, centred on the concept of an enterprise data model. Students will learn how to design and implement enterprise data models, and will gain practical skills in using modern RAD tools to rapidly develop business applications that exploit an enterprise model. Business-to-business transactions will also be examined, wherein standard interfaces are established between multiple organisations' models and applications using XML-based technologies. Java Web applications will also be introduced in order to develop both front-end and back-end applications.

Structure

12 week course – 2 one-hour lectures, 1 two-hour practical per week.

Assessment

1st Attempt: 1 two-hour written examination (75%) and in-course assessment (25%). In order to pass the course, candidates must obtain a pass mark in the examination and in the overall combination of examination and in-course assessment (with the above weights).

Resit: 1 two-hour written examination (75%); 25% carried forward from original assessment. Candidates must obtain a pass in the exam, and in the overall combination of exam and in-course assessment.

CS 3516 - AI FOR COMPUTER GAMES
Credit Points
15
Course Coordinator
Dr M Collinson

Pre-requisites

CS 2506, CS 3019

Notes

(i) Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the School Disability Co-ordinator.
(ii) Non-graduating students would require the following background/experience: knowledge of basic concepts of AI and HCI.

Overview

Overview of AI Game Techniques.
Movement Algorithms: Steering Behaviours, Predicting Physics, Motor Control.
Pathfinding: Depth First, A*, Mapping, Team Problems.
Decision Making: Decision Trees, State Machines, Fuzzy Logic, Markoc Systems, Goal Oriented Behaviour, Scripting.
Tactical and Strategic AI: Waypoint Tactics, Tactical Analyses, Tactical Pathfinding, Coordinated Action.
Learning: Reinforcement Learning, Neural Networks.
Board Games: Game Theory, Minimaxing, Opening Books and Other Set Plays.
Execution Management: Scheduling, Anytime, Algorithms, Event Managers.
Game case studies: Shooters, Sports, Driving, Real-time Strategy, Turn-Based Strategy Games.
Search: depth first; breadth first, heuristic.

Structure

2 one-hour lectures and 1 one-hour tutorial per week.

Assessment

1st Attempt: 1 two-hour written examination (75%) and continuous assessment (25%). In order to pass the course, candidates must obtain a pass mark (CAS > 8) in the overall combination of examination and continuous assessment (with the above weights).

Resit: 1 two-hour written examination (75%) and continuous assessment (25%). In order to pass the course , candidates must obtain a pass mark (CAS > 8) in the examination and in the overall combination of examination and continuous assessment (with the above weights). There is no opportunity to repeat in-course practical work; the mark obtained at the first attempt will be carried forward to resit.

CS 3517 - DISTRIBUTED SYSTEMS AND SECURITY
Credit Points
15
Course Coordinator
Dr M Kollingbaum

Pre-requisites

CS 2007, CS 2008

Notes

(i) Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the School Disability Co-ordinator.
(ii) Non-graduating students would require the following background/experience: intermediate level Java programming experience; knowledge of database principles including SQL.

Overview

Introduction to Distributed Systems.
Programming with Distributed Objects: Java RMI; Object Serialization; Managing Multiple Threads of Control; Security Policies; Multi-Tier Client-Server Systems.
Programming with Distributed Data Sources: Transactions and Concurrency Control; Distributed Transactions; Replication; Fault-Tolerant Systems.
Security in Distributed Systems: Authentication, Digital Signatures and Certificates, SSL, Firewalls.
Standard Application Protocols (HTTP, TELNET, FTP); Transport Layer; Network Layer and Routing.

Structure

2 one-hour lectures and 1 two-hour supervised practical per week.

Assessment

1st Attempt: 1 two-hour written examination (75%) and continuous assessment (25%). In order to pass the course, candidates must obtain a pass mark (CAS > 8) in the overall combination of examination and continuous assesment (withe the above weights).

Resit: 1 two-hour written examination (75%) and continuous assessment (25%). In order to pass the course, candidates must obtain a pass mark (CAS > 8) in the examination and in the overall combination of examination and continuous assessment (with the above weights). There is no opportunity to repeat in-course practical work; the mark obtained at the first attempt will be carried forward to resit.

CS 3518 - LANGUAGES AND COMPUTABILITY
Credit Points
15
Course Coordinator
Dr K Van Deemter

Pre-requisites

CS 2007 or CS 2509

Notes

(i) Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the School Disability Co-ordinator.
(ii) Non-graduating students would require the following backgroud/experience: knowledge of basic concepts of formal languages and logic.

Overview

- Imperative languages and their associated automata: Regular languages and Finite state automata (FSA), Context-free languages and Pushdown Automata (PDA), Non-context-free languages and linear-bounded automata (LBA), Turing Machines (TM), nondeterministic Turing Machines.
- Functional languages: Haskell idioms, Haskell polymorphic types, recursion, Haskell higher-order functions, lazy evaluation, infinite sets.
- Chomsky hierarchy and computability: Turing decidability, Turing recognisability, injections, surjections and bijections, Cantor's diagonal argument, the halting problem, the Church-Turing Thesis.

Structure

2 one-hour lectures and 1 one-hour tutorial per week.

Assessment

1st Attempt: 1 two-hour written examination (75%) and continuous assessment (25%). In order to pass the course, candidates must obtain a pass mark (CAS > 8) in the exam and in the overall combination of examination and continuous assessment (with the above weights).

Resit: 1 two-hour written examination (75%) and continuous assessment (25%). In order to pass the course, candidates must obtain a pass mark (CAS > 8) in the examination and in the overall combination of examination and continuous assessment (with the above weights). There is no opportunity to repeat the continuous assessment; the mark obtained at the first attempt will be carried forward to resit.

Level 4

CS 4024 - GRAPHICS
Credit Points
15
Course Coordinator
TBC

Pre-requisites

Notes

(i) Restricted to students registered for Honours degree programmes offered by Computing Science.
(ii) Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the School Disability Co-ordinator. This course will not run in 2010/11.

Overview

Two-dimensional graphics: lines, polygons, coordinate systems, clipping; raster techniques; polygon filling; anti-aliasing; bit-planes; colour models. Three-dimensional graphics: coordinate systems; homogeneous transformations (rotating, translating, scaling), perspective; surface models; hidden line and surface removal; lighting models, shading, shadows, textures, ray tracing.
Object-oriented techniques: scene graphs; behaviours; interpolators; collision detection.
Graphics hardware: input/output (including virtual reality) devices; stereographics; animation and interaction techniques.
Applications of computer graphics will be considered (e.g. CAD, molecular graphics, scientific visualisation, entertainment).

Structure

12 week course - 2 one-hour lectures and 1 two-hour practical session per week.

Assessment

1st Attempt: 1 two-hour written examination (75%) and in-course assessment (25%).

CS 4025 - NATURAL LANGUAGE PROCESSING
Credit Points
15
Course Coordinator
Dr K van Deemter

Pre-requisites

CS 3014

Notes

(i) Restricted to students registered for Honours degree programmes offered by Computing Science.
(ii) Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the School Disability Co-ordinator.

Overview

Formal linguistic models of English: word categories, sentence constituents, phrase-structure grammar rules, features. Modelling syntactic phenemena.
Parsing: shift-reduce parsers, chart parsers, handling ambiguity, definate clause grammars.
Semantics and pragmatics: meaning representations, reference, speech acts.
Generation: Content determination, sentence planning, and realisation.
Applications: grammar checking, machine translation, database interfaces, report generation, dictation.
Speech: Hidden Markov Models, statistical langauge models, speech synthesis.

Structure

12 week course - 2 one-hour lectures and 1 two-hour practical session per week.

Assessment

1st Attempt: 1 two-hour written examination (75%) and in-course assessment (25%).

CS 4027 - PEER-TO-PEER AND AGENT-BASED COMPUTING
Credit Points
15
Course Coordinator
Dr W Vasconcelos

Pre-requisites

CS 3517

Notes

To be taken as part of the taught BSc undergraduate programme.
(i) Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the School Disability Co-ordinator.
(ii) Non-graduating students would require the following background/experience: good Java programming skills; knowledge of distributed systems concepts and design.

Overview

Introduction to peer-to-peer computing and motivation. Basic peer-to-peer algorithms and models: Centralised Directory, Flooded Request and Document Routing. Peer-to-Peer topologies. Case studies. Issues: Scalability, Anonymity/Privacy, Security, Performance, Reliability. Peer-to-peer technologies: Gnutalla, Freenet and JXTA. Introduction to intelligent software agents and multi-agent systems. Motivations. Case studies. Basic concepts of software agents and multi-agent systems. Theories of agency, agent architectures and agent-oriented programming languages. Agent communication languages and protocols, including standards. Agent programming platforms. Negotiation and co-ordination mechanisms. Eletronic institutions. Auctions and voting. Tuple spaces programming for agent communication and coordination. Distributed problem-solving.

Structure

2 one-hour lectures (to be arranged) and 1 two-hour practical (to be arranged) each week.

Assessment

1st Attempt: 1 two-hour written examination (75%); continuous assessment (25%).

Resit: No resit.

CS 4029 - SEMANTIC WEB ENGINEERING
Credit Points
15
Course Coordinator
Dr J Pan

Pre-requisites

CS 3019

Notes

(i) Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the School Disability Co-ordinator.
(ii) Non-graduating students would require the following background/experience: basic concepts of knowledge representation and reasoning.

Overview

The World Wide Web (WWW) has become a major part of many people's lives. We use it for communication, work, school, entertainment, and more. The Semantic Web is an evolving development of the World Wide Web in which the meaning (semantics) of information and services on the web is defined, amking it possible for the web to understand and satisfy the requests of people and machines to use the web content. The goal of the course is to introduce advanced techniques for Web 1.0 (XML and XML Schema), Web 2.0 (AJAX, tagging abd mashups) and Web 3.0 (RDF, OWL and microformats). It also covers some knowledge representation techniques, such as those related to ontologies.

It should be noted that this course is not about HTML and CSS, which are covered by CS 1513 (Web Technology). However, the students are expected to work on Practial 0 (on HTML authoring) before the course starts.

Structure

2 one-hour lectures and 1 two-hour supervised practical per week.

Assessment

1st Attempt: 1 two-hour written examination (75%) and continuous assessment (25%). In order to pass the course, candidates must obtain a pass mark (CAS > 8) in the overall combination of examination and continuous assessment (with the above weights).

Resit: 1 two-hour written examination (75%) and continuous assessment (25%). In order to pass the course, candidates must obtain a pass mark (CAS > 8) in the examination and in the overall combination of examination and continuous assessment (with the above weights). There is no opportunity to repeat in-course practical work; the mark obtained at the first attempt will be carried forward to resit.

CS 4031 - DATA MINING AND VISUALIZATION
Credit Points
15
Course Coordinator
Dr S Sripada

Pre-requisites

CS 2008,
CS 2506,
CS 2007 or CS 2509

Notes

i) Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the School Disability Co-ordinator.
ii) Only available to senior honours students in the Computing Science discipline and Erasmus students.

Overview

- Data Mining: basic statistics, advanced data analysis techniques such as trend detectors, pattern detectors, qualitative models, basic data mining techniques such as classification and clustering.
- Visualization: information visualisation (basic concepts, advanced techniques such as treemaps); supporting user variation (abilities, knowledge, preferences).
- Applications to real world problems: for example, medical decision support, supporting analysis of genome data.

Structure

2 one-hour lectures and 1 two-hour practical per week. Also, guest seminars from people other than the main lecturer.

Assessment

1st Attempt: 1 two and a half hour written examination (75%); continuous assessment (25%).

Resit: No resit.

CS 4032 - MOBILE COMPUTING
Credit Points
15
Course Coordinator
Dr B Scharlau

Pre-requisites

CS 3514, CS 3515

Notes

i) Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the School Disability Co-ordinator.

ii) Only available to senior honours students in the Computing Science discipline and Erasmus students.

Overview

Syllabus:
a) handset development environment
b) Java ME - development and testing
c) Google Android development
d) bluetooth integration
e) location based services
f) storage of data

Structure

2 one-hour lectures (to be arranged) and 1 two-hour practical (to be arranged) per week. Also, guest seminars from people other than the main lecturer.

Assessment

1st Attempt: 1 two-hour written examination (75%); continuous assessment (25%).

Resit: no resit.

CS 4033 - BIO-COMPUTING
Credit Points
15
Course Coordinator
Dr G M Coghill

Pre-requisites

CS 3014 or CS 3019

Notes

Available only to Final Year Honours students in the Department of Computing Science.

Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the Departmental Disability Co-ordinator.

Overview

A selection of topics spanning a range of Biological Applications of Computing Science under the following headings:

Bioinformatics (eg Outline of Molecular biology, sequence alignment, protein folding)

Model-based Technology (eg Qualitative and Fuzzy Qualitative reasoning applied to Systems Biology)

Nature Inspired Computing (eg focussing on Artificial Immune Systems and their application in Bioinformatics and Systems Biology).

Structure

2 one-hour lectures and 1 two-hour practical per week.

Assessment

1st Attempt: 1 two-hour written examination (75%) and continuous assessment (25%).

Resit: None.

CS 4092 - SINGLE HONOURS ERASMUS COMPUTING PROJECT (E2)
Credit Points
90
Course Coordinator
Dr J R Lishman

Pre-requisites

Available only to Erasmus students registered for Computing Science and that can be assimilated to our Final year Single Honours students.

Notes

Assistive technology may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any Erasmus students wishing to discuss this further should contact the Departmental Disability Coordinator prior to arrival.

Overview

Ths student will undertake a project under the supervision of teaching staff in the department. The project will require creativity, analytical and practical skills. A major component of the project is its presentation, both written and oral.

Structure

Self-directed work, 1 hour weekly meetings; initial introductory discussion to establish workplan.

Assessment

1st Attempt: Report and documentation (95%), oral presentation (5%).

Resit: None.

CS 4093 - SINGLE HONOURS ERASMUS COMPUTING PROJECT (E3)
Credit Points
60
Course Coordinator
Dr J R Lishman

Pre-requisites

Available only to Erasmus students registered for Computing Science and that can be assimilated to our Final year Single Honours students.

Notes

Assistive technology may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any Erasmus students wishing to discuss this further should contact the Departmental Disability Coordinator prior to arrival.

Overview

The student will undertake a project under the supervision of teaching staff in the department. The project will require creativity, analytical and practical skills. A major component of the project is its presentation, both written and oral.

Structure

Self-directed work, 1 hour weekly meetings; initial introductory discussion to establish workplan.

Assessment

1st Attempt: Report and documentation (95%), oral presentation (5%).

Resit: None.

CS 4524 - PROFESSIONAL TOPICS IN COMPUTING
Credit Points
10
Course Coordinator
Prof D Pym

Pre-requisites

CS 3015

Notes

(i) Restricted to Final Year Single Honours students in Computing Science.
(ii) Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the School Disbaility Co-ordinator.

Overview

Ethics: the individual, organisational and societal context of computing systems; deployemnt of technical knowledge and skills with a concern for the public good. Legal Issues: UK legal system, contract law liabilities, company and employment law, data protection, computer misuse, intellectual property rights.
Public policy issues: digital signatures, restrictions on encryption, IT monopolies.
Safety/mission critical software: impact of failure on users; liability; risk analysis.
Professional Bodies: structure, function, restriction of title, licence to practise, code of ethics/conduct/practice.
Career: Career options; entrepreneurship; rights and duties of an employee.
Aspects of effective communication: written and verbal communication skills.

Structure

8 week course - 2 one-hour lectures, 1 two-hour practical session per week.

Assessment

1st Attempt: One 1.5 hour examination (75%) and in-course assessment consisting of: 4000 word essay/report (20%), oral presentation (5%).

CS 4525 - JOINT HONOURS COMPUTING PROJECT
Credit Points
30
Course Coordinator
Dr F Guerin

Pre-requisites

Restricted to Final Year Joint Honours students in Computing Science.

Notes

Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any students wishing to discuss this further should contact the School Disability Co-ordinator.

Overview

The student will undertake a project under the supervision of teaching staff in Computing Science. The project will require creativity, analytical and practical skills. A major component of the project is its presentation, both written and oral.

Structure

15 week project course - weekly meetings with project supervisor.

Assessment

1st Attempt: 95% report and documentation, 5% oral presentation.

CS 4526 - SINGLE HONOURS COMPUTING PROJECT
Credit Points
50
Course Coordinator
Dr F Guerin

Pre-requisites

Restricted to Final Year Single Honours students in Computing Science.

Notes

Assistive technologies may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any student wishing to discuss this further should contact the School Disability Co-ordinator.

Overview

The student will undertake a project under the supervision of teaching staff in Computing Science. The project will require creativity, analytical and practical skills. A major component of the project is its presentation, both written and oral.

Structure

15 week project course - weekly meetings with project supervisor.

Assessment

1st Attempt: 95% report and documentation, 5% oral presentation.

Formative Assessment

Feedback

CS 4593 - SINGLE HONOURS ERASMUS COMPUTING PROJECT (E4)
Credit Points
60
Course Coordinator
Dr F Guerin

Pre-requisites

Available only to Erasmus students registered for Computing Science and that can be assimilated to our Final year Single Honours students.

Notes

Assistive technology may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any Erasmus students wishing to discuss this further should contact the Departmental Disability Coordinator prior to arrival.

Overview

The student will undertake a project under the supervision of teaching staff in the department. The project will require creativity, analytical and practical skills. A major component of the project is its presentation, both written and oral.

Structure

Self-directed work, 1 hour weekly meetings; initial introductory discussion to establish workplan.

Assessment

1st Attempt: Report and documentation (95%), oral presentation (5%).

Resit: None.

CS 4901 - SINGLE HONOURS ERASMUS COMPUTING PROJECT (E1)
Credit Points
120
Course Coordinator
Dr J R Lishman

Pre-requisites

Available only to Erasmus students registered for Computing Science and that can be assimilated to our Final year Single Honours students.

Notes

Assistive technology may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any Erasmus students wishing to discuss this further should contact the Departmental Disability Coordinator prior to arrival.

Overview

The student will undertake a project under the supervision of teaching staff in the department. THe project will require creativity, analytical and practical skills. A major component of the project is its presentation, both written and oral.

Structure

Self-directed work, 1 hour weekly meetings; initial introductory discussion to establish workplan.

Assessment

1st Attempt: Report and documentation (95%), oral presentation (5%).
Resit: None.

CS 4993 - SINGLE HONOURS ERASMUS COMPUTING PROJECT (E5)
Credit Points
60
Course Coordinator
Dr J R Lishman

Pre-requisites

Available only to Erasmus students registered for Computing Science and that can be assimilated to our Final year Single Honours students.

Notes

Assistive technology may be required for any student who is unable to use a standard keyboard/mouse/computer monitor. Any Erasmus students wishing to discuss this further should contact the Departmental Disability Coordinator prior to arrival.

Overview

The student will undertake a project under the supervision of teaching staff in the department. The project will require creativity, analytical and practical skills. A major component of the project is its presentation, both written and oral.

Structure

Self-directed work, 1 hour weekly meetings; initial introductory discussion to establish workplan.

Assessment

1st Attempt: Report and documentation (95%), oral presentation (5%).

Resit: None.

CS 50IP - BUSINESS AND INDUSTRIAL APPLICATIONS OF IT
Credit Points
120
Course Coordinator
Dr K van Deemter

Pre-requisites

Acceptance into Senior Honours and permission of Head of Computing Science. Availability of placement.

Overview

Work experience in an industrial, business, or public sector organisation.

Assessment

1st Attempt: Written report (75%), viva (15%) and seminar (10%).