COMPUTING SCIENCE

COMPUTING SCIENCE

Level 3

CS 3020 - ROBOTICS AND LEARNING
Credit Points
15
Course Coordinator
Dr F Guerin

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: biological 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).

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 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 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 3012 - FORMAL LANGUAGES AND COMPILERS
Credit Points
15
Course Coordinator
Dr F Guerin

Pre-requisites

CS 2007 and any Level 1 mathematics course.

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; intermediate level experience of the Java programming language; mathematics equivalent to higher level.

Overview

Alphabets, strings and languages, regular expressions and languages, finite state automata, output from automata, grammars and context free languages, syntax analysis, derivation trees, ambiguous grammars and inherently ambiguous languages, bottom-up syntax analysis, LR parsing, parser generator tools, translation, A mini-Compiler.

Structure

12 week course - 2 one-hour lectures and 1 two-hour tutorial 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 in-course assessment. Candidates must obtain a pass mark in the exam and in the overall combination of exam and in-course assessment.

CS 3014 - ARTIFICIAL INTELLIGENCE
Credit Points
15
Course Coordinator
Dr G M Coghill

Pre-requisites

CS 2007, CS 2008, 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.

Overview

Introduction to Artificial Intelligence: aims, history and issues.
Search: depth first; breadth first; heuristic.
Game playing: adversarial search; static evaluation; minimax.
Knowledge representation and reasoning: propositional logic; rule-based systems; forward and backward chaining; tools for nle-based system construction.
Planning: motivation; STRIPS; non-linear planning.
Machine Learning: decision tree induction; concept learning.
Robotics.

Structure

12 week course – two one-hour lectures and one two-hour practical session each 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 in-course assessment. Candidates must obtain a pass mark in the exam 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, prototyping.
Project management issues – team organisation, software measurement and metrics, cost estimation, risk analysis,
Systems analysis and design – requirements elicitation, interviewing, system modelling functional vs non-functional requirements, developing a system specification, object libraries, design patterns.
The Unified Modelling Language (UML) and comparison with structured methods (e.g. SSADM)
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.

Structure

24 week course – 2 one-hour lectures, 1 two-hour practical per week during first half-session; 1 one-hour lecture per week, 1 two-hour practical every third week during second half-session.

Assessment

1st Attempt: One 1.5 hour written examination (25%) and software engineering project (75%). 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: 1 one and a half-hour written examination (25%); original project mark carried forward (75%). Candidates must obtain a pass mark in the exam and the overall combination of exam and project work.

CS 3016 - WEB DESIGN AND ADMINISTRATION
Credit Points
15
Course Coordinator
Dr B Scharlau

Pre-requisites

CS 2506

Co-requisites

None

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 Internet and world-wide web technologies and design principles for information-rich web sites; Programming in Java; Basic organisation and functionality of database systems.

Overview

Introduction and historical overview of the Internet.
Part l - Technologies and technical issues:

  1. Internet services: application protocols (HTTP, FTP, Telnet, etc.), web
    servers (assessment, configuration and maintenance).

  2. Privacy and security: technologies (firewall, encryption, etc.), certificate
    management, legal, social and human issues.

Part ll - Design and management of web sites:


  1. Design and maintenance of web site information content (quality, quantity,
    format and location of information);

    copyright and responsibility.
  2. HCI for the web: recommendations, internationalisation, accessibility; influence
    of technologies on design.
  3. Tools and techniques for web site development and management.

  4. Assessment and evaluation of web sites (tools, standards and practices).

Structure

12 week course - 2 one-hour lectures and 1 two-hour practical session each 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 in-course assessment.

Candidates must obtain a pass mark in the examination and in the overall combination of exam and in-course assessment.

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 1012 and CA 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 3511 - DISCRETE METHODS
Credit Points
15
Course Coordinator
Dr K Van Deemter

Pre-requisites

CS2005 and either i) a Level 1 Mathematics Course (those students who completed Level 1 study in 2004/2005 or earlier) or
ii) CS1512 (those students who completed Level 1 study in 2005/2006 or later).

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; mathematics equivalent to higher level.

Overview

Propositional and predicate logic, proof methods, relations and their applications. Sets, functions, graphs and related algorithms. Graphs, trees and related algorithms.

Structure

12 week course - 2 one-hour lectures, 1 two-hour tutorial 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.

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

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

Rapid application development for business systems using C#.
Business to Business (B2B) applications; modern approaches to EDI using XML, e.g. ebXML, BizTalk.
Business integration with OLAP, CRM, ERP.
Information in organisational decision making.
Integration of information systems with organisational strategy and development.
Java Web applications development (using servlets and JSP).

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 3515 - DISTRIBUTED INFORMATION SYSTEMS
Credit Points
15
Course Coordinator
Dr T J Norman

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: knowledge of operating system concepts, including concurrency; knowledge of database principles, including SQL; intermediate-level Java programming experience.

Overview

Introduction to distributed information systems. Review of the Internet Technology (Networks & Protocols).
Distributed programming with sockets. Socket Essentials. Multithreading in Java. Basic concepts of Internet services.
Enterprise computing architectures. Security. Object-based Protocols. Two-tier and three-tier Architectures. Remote Method Invocation.
Distributed database transactions. Java Database Connectivity. Java Servlets. Distributed Transactions. Transaction Processing Monitors.
Enterprise-level interoperability. COBRA. Object Services, ERP Systems. XML.
Electronic commerce. E-commerce Essentials. Software Agents in E-commerce.

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%). 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 a pass mark in the exam and in the overall combination of exam and in-course assessment.

Level 1

CS 1011 - INFORMATION TECHNOLOGY
Credit Points
20
Course Coordinator
Dr B Scharlau

Pre-requisites

None

Co-requisites

None

Notes

(i) Students should not take this course if they are currently registered for, or have already obtained Credit points in any of the following: CS 1008, CS 1301, CS 1508, CS 1801, CS 1003, CS 1005, CS 1502, CS 1503, TS 1001, LS 1510, LS 1511, LS1513.
(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

The course follows the syllabus of the European Computer Driving License (ECDL). The subject matter is grouped into 7 modules:
(1) Basic Concepts of Information Technology; (2) Using the Computer and Managing Files; (3) Word Processing; (4) Spreadsheets; (5) Databases; (6) Presentations; (7) Information and Communication.

Structure

12 week course - 1 one-hour lecture; 3 one-hour practicals per week.

Assessment

1st Attempt: One 1.5 hour multiple-choice examination (25%) and three practical examinations 25% each.

Resit: Candidates only resit those components which they failed (CAS<9) at first attempt. Multiple-choice examination (25%) at resit is one and a half-hours; practical assessments are 45 minutes each.

CS 1013 - GRAND CHALLENGES OF ARTIFICIAL INTELLIGENCE
Credit Points
20
Course Coordinator
Dr F Guerin

Pre-requisites

None

Co-requisites

CS 1014

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.

Overview

Overview of AI (search, learning, natural language processing, vision).

AI and Cognitive Science (psychology, linguistics, philosophy) including criticisms of AI.

AI research methodology (hypotheses, experiments), including the Turing Test.

UKCRC Grand Challenges (including Memories for Life, Architecture of Brain and Mind, Learning for Life).

Expermintation with existing AI systems.

Structure

2 one-hour lectures (to be arranged), 1 two-hour supervised practical (to be arranged) and 1 one-hour tutorial (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 overall combination of examination and continuous assessment (with the above weights).

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

CS 1014 - FOUNDATIONS OF COMPUTING SCIENCE 1
Credit Points
20
Course Coordinator
Dr S Townsend

Pre-requisites

Familiarity with the Windows environment (ie Higher or A- level Computing or Information Systems, CS 1011 or equivalent experience)

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

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; Collections; Iterators; Casting; Arrays; simple event handling.

Use of a program development environment: editing, compiling, testing, debugging, project management.

Computing Science Fundamentals: Sets; Boolean algebra; Propositional logic and truth tables.

Structure

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

Assessment

1st Attempt: 1 two-hour written examination (50%), practical examination (30%), and in-course assessment (20%).

Resit: 50% from a new practical examination; 50% new written examination.

CS 1512 - FOUNDATIONS OF COMPUTING SCIENCE 2
Credit Points
20
Course Coordinator
Prof J R W Hunter

Pre-requisites

CS 1014

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

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; Javadoc; Non-BlueJ compilation and execution: 'main' method.

Computing Science Fundamentals: Methods of proof; Introduction to probability; Predicate logic.

Human Factors: Principles of Human-Computer Interaction; Users with special needs; Evaluation techniques.

Structure

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

Assessment

1st Attempt: 1 two-hour written examination (50%), practical examination (30%) and in-course assessment (20%).

Resit: 50% from a new practical examination; 50% new written examination.

CS 1513 - WEB TECHNOLOGY
Credit Points
20
Course Coordinator
Dr B Scharlau

Pre-requisites

Familiarity with the Windows environment (ie Higher or A -level Computing or Information Systems, CS 1011 or equivalent experience).

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. This course cannot be taken by those students who have successfully completed CS 1009.

Overview

Review of Internet history, technology, services & standards. Features of an Internet information system: three-layer architecture. Web Information Architecture. Introduction to hypermedia & the Web hyperlinking model. Information architecture in Web site design. Techniques for organising & navigating information. Web site navigation: issues & techniques. HTML authoring using a text editor. From HTML to XHTML. Web forms. Cascading Style Sheets (CSS) and the separation of presentation & information. Browser issues. The application of standards. Accessibility. Introduction to client-side scripting with Javascript. Issues and techniques in managing and maintaining large Web sites. Introduction to Web security & privacy.

Structure

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

Assessment

1st Attempt: One 1.5 hour multiple-choice examination (25%) and three practical examinations (25% each).

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

Level 2

CS 2007 - ALGORITHMIC PROBLEM SOLVING
Credit Points
15
Course Coordinator
Dr E Reiter

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 1512

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 2506 - HUMAN - COMPUTER INTERACTION
Credit Points
15
Course Coordinator
Dr J Masthoff

Pre-requisites

CS 2007 and CS 2008

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.
Java APIs for Building User-Interfaces.
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.

Level 4

CS 4016 - BUSINESS AND INDUSTRIAL APPLICATIONS OF IT
Credit Points
120
Course Coordinator
Dr J Pan

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 and oral presentation of the work undertaken during the year (100%).

Resit (for Honours students only): Candidates achieving a CAS mark of 6-8 may be awarded compensatory level 1 credit. Candidates achieving a CAS mark of less than 6 will be required to submit themselves for re-assessment and should contact the Course Co-ordinator for further details.

CS 4021 - KNOWLEDGE TECHNOLOGIES
Credit Points
15
Course Coordinator
Dr J Pan

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

Introduction to Knowledge Technologies/Management; identification of inherent research challenges. Introduction to knowledge-based systems; rule-based systems, knowledge representation, case studies, programming in CLIPS, interfacing with users, uncertainty. Review of the 6 major challenges associated with Knowledge Technologies, namely Knowledge Capture, Modelling, Use/Reuse, Retrieval, Publishing and Maintenance.

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%).

Resit (for Honours students only): Candidates achieving a CAS mark of 6-8 may be awarded compensatory level 1 credit. Candidates achieving a CAS mark of less than 6 will be required to submit themselves for re-assessment and should contact the Course Co-ordinator for further details.

CS 4022 - ADVANCED DISTRIBUTED INFORMATION SYSTEMS
Credit Points
15
Course Coordinator
Dr W Vasconcelos

Pre-requisites

CS 3515

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

Introduction to advanced distributed information systems. Review of message-passing and distributed objects architectures. Tuple-space architectures (JavaSpaces and JINI). Distributed information agents. Java security model.
Information agents. Interoperability (agent communication languages - standards and protocols). Mediation. Agent wrappers. Mobile agents.
Information storage and retrieval. Introduction to information retrieval techniques (term-frequency distributions, vector space models). Search services and search strategies.
Practical applications of advanced distributed information systems. Real-time multi-media systems. Web search engines. Personal information agents.

Structure

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%).

Resit (for Honours students only): Candidates achieving a CAS mark of 6-8 may be awarded compensatory level 1 credit. Candidates achieving a CAS mark of less than 6 will be required to submit themselves for re-assessment and should contact the Course Co-ordinator for further details.

CS 4023 - eSCIENCE
Credit Points
15
Course Coordinator
Dr G M Coghill

Pre-requisites

CS 3014, CS 3515

Notes

(i) Restricted to students registered for Honours dregree 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

Outline of molecular biology, Data searches and pairwise alignment, Methods for phylogenetics, Genomics and gene recognition, data mining,model learning, Grid computing.

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%).

Resit (for Honours students only): Candidates achieving a CAS mark of 6-8 may be awarded compensatory level 1 credit. Candidates achieving a CAS mark of less than 6 will be required to submit themselves for re-assessment and should contact the Course Co-ordinator for further details.

CS 4024 - GRAPHICS
Credit Points
15
Course Coordinator
Dr D W Ritchie

Pre-requisites

CS 3511

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

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%).

Resit (for Honours students only): Candidates achieving a CAS mark of 6-8 may be awarded compensatory level 1 credit. Candidates achieving a CAS mark of less than 6 will be required to submit themselves for re-assessment and should contact the Course Co-ordinator for further details.

CS 4025 - NATURAL LANGUAGE PROCESSING
Credit Points
15
Course Coordinator
Professor C Mellish

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%).

Resit (for Honours students only): Candidates achieving a CAS mark of 6-8 may be awarded compensatory level 1 credit. Candidates achieving a CAS mark of less than 6 will be required to submit themselves for re-assessment and should contact the Course Co-ordinator for further details.

CS 4026 - FORMAL MODELS OF COMPUTATION
Credit Points
15
Course Coordinator
Prof C Mellish

Pre-requisites

CS 3012, CS 3511

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

Lambda-Calculus and Functional Programming:

  1. Lambda-Calculus, conversions, normal form, Church-Rosser Theorem.

  2. Haskell syntax, types, higher-order functions, function composition, infinite data structures, list comprehensions, algerbraic types, modules and abstract data types

Theorem proving Logic Programming:
  1. Predicate calculus, substitutions and interpretations, validity, satisfiability, logical consequence,

  2. Proof procedures, soundness and completeness, (SLDNF-) resolution and unification,

  3. Prolog syntax, execution mechanism, backtracking, recursion, lists and list processing, cuts, meta-programming.

Computability and Complexity:
  1. Turing Machines, definition of algorithm, Church-Turing Thesis

  2. Decidability, the Halting Problem, diagonalisation, reducibility,

  3. Measures of complexity, P and NP, NP-Completeness, space complexity

  4. Intractability

Structure

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

Assessment

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

Resit (for Honours students only): Candidates achieving a CAS mark of 6-8 may be awarded compensatory level 1 credit. Candidates achieving a CAS mark of less than 6 will be required to submit themselves for re-assessment and should contact the Course Co-ordinator for further details.

CS 4092 - SINGLE HONOURS ERASMUS COMPUTING PROJECT (E2)
Credit Points
90
Course Coordinator
Dr E Compatangelo

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 E Compatangelo

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
Dr D W Ritchie

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%).

Resit (for Honours students only): Candidates achieving a CAS mark of 6-8 may be awarded compensatory level 1 credit. Candidates achieving a CAS mark of less than 6 will be required to submit themselves for re-assessment and should contact the Course Co-ordinator for further details.

CS 4525 - JOINT HONOURS COMPUTING PROJECT
Credit Points
30
Course Coordinator
Dr D Ritchie

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.

Resit (for Honours students only): Candidates achieving a CAS mark of 6-8 may be awarded compensatory level 1 credit. Candidates achieving a CAS mark of less than 6 will be required to submit themselves for re-assessment and should contact the Course Co-ordinator for further details.

CS 4526 - SINGLE HONOURS COMPUTING PROJECT
Credit Points
45
Course Coordinator
Dr D Ritchie

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.

Resit (for Honours students only): Candidates achieving a CAS mark of 6-8 may be awarded compensatory level 1 credit. Candidates achieving a CAS mark of less than 6 will be required to submit themselves for re-assessment and should contact the Course Co-ordinator for further details.

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

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 E Compatangelo

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 E Compatangelo

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.