School of Computer Science
UNDERGRADUATE COMPUTER SCIENCE MODULES FOR 2012-2013
Full Year
Module
Software Engineering Group Project
Individual Dissertation Single/Joint Honours
Module Code
G52GRP
G53IDS/J/Y
Level
2
3
Autumn Semester
Module
Computer Systems Architecture
Mathematics for Computer Science
Introduction to Requirements Engineering
Introduction to Programming
Algorithmic Problem Solving
Unix and Software Tools
Software Engineering Methodologies
Algorithms and Data Structures
Introduction to Formal Reasoning
Application Programming
Graphical User Interfaces
Introduction to Image Processing
Planning and Search
Computer Vision
Module Code
G51CSA
G51MCS
G51REQ
G51PRG
G51APS
G51UST
G52SEM
G52ADS
G52IFR
G52APR
G52GUI
G52IIP
G52PAS
G53VIS
Level
1
1
1
1
1
1
2
2
2
2
2
2
2
3
Computers in the World
G53CWO
3
Software Quality Management
G53SQM
3
Compilers
G53CMP
3
Page 1 of 39
Spring Semester
Module
Introduction to Functional Programming
Database Systems
Introduction to Software Engineering
Introduction to Object-Oriented Programming
Introduction to Artificial Intelligence
Web Programming and Scripting
Computer Communications and Networks
Concepts of Concurrency
Machines and their Languages
C++ Programming
Human Computer Interaction
AI Programming Techniques
Operating Systems
Enterprise Level Computing
Computer Security
New Media Design
Advanced Computer Communications
Simulation for Computer Scientists
Module Code
G51FUN
G51DBS
G51FSE
G51OOP
G51IAI
G51WPS
G52CCN
G52CON
G52MAL
G52CPP
G52HCI
G52APT
G53OPS
G53ELC
G53SEC
G53NMD
G54ACC
G54SIM
Level
1
1
1
1
1
1
2
2
2
2
2
2
3
3
3
3
4
4
Notes:
1. Modules offered in any semester are subjected to change as they depend on staff
availability and enrollments from sufficient number of students.
2. The descriptions of the offered modules are current as and when this document is
prepared but they may be subjected to modifications and additions by the module
convenor.
3. Students may take modules offered by other Schools provided appropriate
approval has been obtained from the Course Director of the School of Computer
Science and the module convenor of the offering School, and subjected to the
condition that you have met the prerequisites and corequisites of the selected
module. A maximum of 20 credits of such modules can be taken in one academic
year.
4. Descriptions of module not included in this document and other non-Computer
Science modules can be reviewed at Nottingham’s Module Catalogue web site:
http://modulecatalogue.nottingham.ac.uk/nottingham/asp/main_search.asp
Page 2 of 39
School of Computer Science
G52GRP – Software Engineering Group Project (20 Credits) – Full Year 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: None; C: None; A: Coursework 100%
2.
Lecturer
Chen ZhiYuan (Dr)
Contact: 03-89248141 (Office Phone); BB59 (Room)
E-mail:
Zhiyuan.Chen@nottingham.edu.my
3.
Summary of Content
Students will be divided up into groups of around five or six students, and assigned
a member of staff as their supervisor. Each supervisor will provide their group with
a short written description of a computer application to be designed, programmed,
and documented during the course of the module. Each group will have two
meetings per week, one with their supervisor present, and one without. A couple of
introductory lectures will also be given.
4.
Weekly Programme
Week No
1
2
3
4
5
6
7
8
9
10
11
Lecture Topic
Overview: Aims, Organisation, Assessment
Team Working and Group meetings
Version Cotrol with Sub-version
Project Management: How to Deliver?
Giving an Effective Presentation
Report Writing and Peer Marking
Enterprise-level Testing: Breaking Software for a Living
No Lecture
No Lecture
Group Project Open Day
No Lecture
5.
Resources
Reference texts as relevant to the project topics
6.
Web Link
http://moodle.nottingham.ac.uk/
Page 3 of 39
School of Computer Science
G53IDS/J/Y – Individual Disseration (40/20/40 Credits) – Full Year 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: None; C: None; A: Dissertation 80%, Demo 10%, Presentation (Autumn) 10%
2.
Lecturer
KR Selvaraj (Mr)
Contact: 03-89248139 (Office Phone); BB60 (Room)
E-mail:
kr.selvaraj@nottingham.edu.my
3.
Summary of Content
Students are required to perform an individual project on a topic in computer
science. Each student has a supervisor who is a member of the academic staff. The
topic can be any area of the subject which is of mutual interest to both the student
and supervisor. Topics can range from purely theoretical studies to practical work
building a system for some third party, although most projects aim to provide a
balance between the theoretical and practical aspects of the subject.
4.
Web Link
http://sepang.nottingham.edu.my/~krselvaraj
Page 4 of 39
School of Computer Science
G51CSA – Computer Systems Architecture (10 Credits) – Autumn 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: None; C: G51PRG; A: Coursework 25%, Written Examination 75%
2.
Lecturer
KR Selvaraj (Mr)
Contact: 03-89248139 (Office Phone); BB60 (Room)
E-mail:
kr.selvaraj@nottingham.edu.my
3.
Summary of Content
This module is part of the Operating Systems and Architecture theme in the School
of Computer Science:
 the basic von Neumann architecture for stored-program digital computers.
 use simple C programs (linked to G51PRG) to introduce assembly language,
binary representations of basic data types
 how C programming concepts such as arrays and procedures are implemented
at the machine/assembly level. It also covers principles of the lower level
implementation of I/O using polling and interrupts, and the use of exceptions.
4.
Weekly Programme
Week No
1
2
3
4
5
6
7
8
9
10
11
12
5.
No
1
2
6.
Lecture Topic
Introduction & Concepts
Bits, bytes and numbers ( Part I)
Bits, bytes and numbers (Part II)
Current Program Status Register(CPSR), Conditions and Branches.
ARM arithmetic, Data Processing, Loads and Stores;
Comparisons and Loops.
Bitwise operations, Binary Addition and Signed Numbers.
Computer Systems Organization; Addresses and Addressing.
Binary Arithmetic operations
ARM Procedure calling conventions and recursion.
CPU and Computer Architecture including Instruction Pipelining.
RISC- CISC Architecture
Resources
Name of
Author(s)
Petzold,
Charles
Year of
Publication
2000
M.
Morris
Mano
1993
Title of Book
The Hidden
language of
computer
hardware and
software
Computer Systems
Architecture;
Computer
Edition
3rd
Publisher’s
Name
Microsoft
Press
ISBN
0-73561131-9
Prentice
Hall
0-13175738-5
Web Link
http://sepang.nottingham.edu.my/~krselvaraj
Page 5 of 39
School of Computer Science
G51MCS – Mathematics for Computer Scientists (10 Credits) – Autumn 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: None; C: None; A: Coursework 25%, Written Examination 75%
2.
Lecturer
Tomas Maul (Dr)
Contact: 03-89248232 (Office Phone); BB64 (Room)
E-mail:
Tomas.Maul@nottingham.edu.my
3.
Summary of Content
The module covers mathematical concepts relevant to computer science:
 Boolean algebra: truth tables, propositional calculus.
 Simple number theory: inequalities, floor and ceiling function, greatest
common divisor, modulo arithmetic. Elementary combinatorics.
 Sets, functions and relations: union, intersection, complementation of sets.
Bijections and surjections. Ordering relations. Hasse diagrams.
 Quantifiers. Sum and product. Universal and existential quantification (at this
stage, understanding of meaning of quantified expressions only).
 Simple induction on natural numbers (linked to recursion in G51APS).
4.
Weekly Programme
Week No
1
2
3
4
5
6
7
8
9
10
11
5.
No
1
6.
Lecture Topic
Introduction to the module. Some puzzles and games.
Propositional Logic.
Double Negation Elimination and Excluded Middle. Introduction to
truth tables. Boolean Algebra.
Number systems, order, floor, ceiling. Divisibility, quotient and
remainder.
Recursive Definitions. Euclid's Algorithm, Summations.
Induction. Summary of Arithmetics.
Sets and Functions 1
Sets and Functions 2
Quantifiers and finite sets. The pigeonhole principle, binomial
coefficients.
Pascal's Triangle and Hilbert's Hotel. Modular Arithmetic.
Revision.
Resources
Name of
Author(s)
Norman L.
Biggs
Year of
Publication
2003
Title of Book
Edition
Discrete
Mathematics
2nd
Publisher’s
Name
Oxford University
Press
ISBN
0-19850717-8
Web Link
http://baggins.nottingham.edu.my/~kcztm/TeachG51MCS.html
Page 6 of 39
School of Computer Science
G51REQ – Requirement Engineering (10 Credits) – Autumn 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: None; C: None; A: Coursework 100%
2.
Lecturer
Behrang Parhizkar (Mr)
Contact: 0172951500 (Mobile Phone); BB47 (Room)
E-mail:
hani.parkhizkar@nottingham.edu.my
3.
Summary of Content
This module introduces fieldwork as a means of understanding users and developing
system requirements based on direct observations of user activities. It explores
fieldwork methods, fieldwork data analysis and requirements specification.
4.
Weekly Programme
Week No
1
2
3
4
5
6
7
8
9
10
11
12
5.
No
1
6.
Lecture Topic
Requirements Engineering Process (process models, actors in RE)
Requirements Engineering Process (process support & improvement)
Requirements Elicitation (elicitation process & techniques)
Requirements Elicitation (ethnography & fieldworks)
Requirements Analysis (prototyping, requirement analysis and
negotiation)
Requirements Validation (req. reviews)
Requirements Validation (model validation, requirement testing)
Requirements Management (stable & volatile requirements)
Requirements Management (change management, traceability)
Requirements Management (change Management)
Group Assignment Presentation
Revision
Resources
Name of
Author(s)
Sommerville,
Ian
Year of
Publication
2011
Title of Book
Edition
Software
Engineering
9th.
Publisher’s
Name
Pearson
ISBN
0-13705346-0
Web Link
http://moodle.nottingham.ac.uk/
Page 7 of 39
School of Computer Science
G51PRG – Programming (10 Credits) – Autumn 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: None; C: G51CSA; A: Coursework 100%
2.
Lecturer
Chew Sze-Ker (Mr)
Contact: 03.89248140 (Office Phone); BB72 (Room)
E-mail:
chew.sze-ker@nottingham.edu.my
3.
Summary of Content
This module is part of the Programming theme in the School of Computer Science.
The basic concepts of programming including: problem solving, compiling, editing,
debugging, elementary programming, conditionals, loops, functions and procedures,
arrays and strings, direct and indirect access, memory and pointers, iteration and
recursion and data structures.
Please note: This is a non-compensatable module.
4.
Weekly Programme
Week No
1
2
3
4
5
6
7
8
9
10
5.
No
1
6.
Lecture Topic
Introduction to C compiler/Getting started with GCC
Procedures, Parameters, Values and Variables
Operators and Precedence
Conditionals and Loops
Pointers and scanf()
Arrays and Strings
String Processing
File Input/Output
Structures
Heap arrays and Linked List
Resources
Name of
Author(s)
Vine,
Michael A
Year of
Publication
2009
Title of Book
Edition
C programming
for the absolute
beginner
2nd
Publisher’s
Name
Cengage
Learning
ISBN
1-598634801
Web Link
http://moodle.nottingham.ac.uk/
Page 8 of 39
School of Computer Science
G51APS – Algorithmic Problem Solving (10 Credits) – Autumn 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: None; C: G51MCS; A: Written Examination 100%
2.
Lecturer
Siang Yew Chong (Dr)
Contact: 03-89248148 (Office Phone); BB57 (Room)
E-mail:
Siang-Yew.Chong@nottingham.edu.my
3.
Summary of Content
This module is based around two topics: (a) solving logic and other puzzles and (b)
finding winning strategies for simple two-person games. Problem solving principles
introduced are formal mathematical modelling of a problem (using elements of logic
and graph theory), invariants and recursion and development of some algebraic
manipulation skills.
4.
Weekly Programme
Week No
1
2
3
4
5
6
7
8
9
10
11
5.
No
1
2
6.
Introduction.
Invariants.
Crossing a River.
Games.
Knights and Knaves.
Induction.
Coursework Discussion.
Fake-Coin Detection.
Towers of Hanoi.
Revision.
Coursework Discussion.
Lecture Topic
Resources
Name of
Author(s)
Roland
Backhouse
Year of
Publication
2008
Paul Zeitz
2007
Title of Book
Edition
ISBN
Algorithmic
Problem
Solving
The Art and
Craft of
Problem
Solving
Publisher’s
Name
2nd
John Wiley
and Sons
978-047178901-7
Web Link
http://baggins.nottingham.edu.my/~khczcsy/G51APS/G51APS.html
Page 9 of 39
School of Computer Science
G51UST – UNIX and Software Tools (10 Credits) – Autumn 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: None; C: None; A: Coursework 25%, Written Examination 75%
2.
Lecturer
Ben Phear (Mr)
Contact: CFFRC Offices; 2nd Floor B Block
Email:
ben.phear@nottingham.edu.my
3.
Summary of Content
This module includes the following topics:
 Basic UNIX usage: windowing systems, file system navigation, text editing,
useful commands (eg. man, mozilla, lpr), environment variables.
 Unix I/0 and file processing: pipes, redirections, grep and regular
expressions, sed, awk.
 Unix shell scripting. Compilers, interpreters, debuggers, documentation
systems with particular reference to programming languages used widely
inthe School's teaching (eg. Java).
 Software Engineering Tools: build management systems and version control
systems. The use of UNIX shell scripting and software tools to create specific
bespoke tools and components.
4.
Weekly Programme
Week No
1
2
3
4
5
6
7
8
9
10
11
Lecture Topic
Introduction, overview and module contents
The UNIX Filestore and File Processing
xEditing Files and EMACS
UNIX Processes and UNIX Network Utilities
Searching and Regular Expressions (Regex)
Shell Programming and The sed Editor
The AWK programming Language
Version Control Systems
Compilers, Interpreters and Debuggers
Make
Module Summary and Revision
5.
Resources
The Internet, Google, UNIX / GNU Man-pages, any book that covers module topic
content. There is no formal prescribed text for this module.
6.
Web Link
http://moodle.nottingham.ac.uk/
Page 10 of 39
School of Computer Science
G52SEM – Software Engineering Methodologies (10 Credits) – Autumn 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: G51FSE; C: None; A: Coursework 40%, Written Examination 60%
2.
Lecturer
KR Selvaraj (Mr)
Contact: 03-89248139 (Office Phone); BB60 (Room)
E-mail:
kr.selvaraj@nottingham.edu.my
3.
Summary of Content
The module covers three main aspects of the software development process in
depth:
 system analysis and design process: the Unified Modelling Language (UML),
Use-Case Analysis (UCA) and Data Flow Diagrams (DFDs).
 the project management process: essential concepts and techniques in project
management, including Gantt charts, critical path analysis and the Program
Evaluation and Review Technique (PERT).
 software documentation: the practice of good software documentation will be
demonstrated
4.
Weekly Programme
Week No
1
2
3
4
5
6
7
8
9
10
11
12
5.
Resources
No
Name of
Author(s)
Andrew
Stellman
and
Jennifer
Greene
Cockburn,
Alistair
1
2
6.
Lecture Topic
Introduction and Goals, Software Project Management, Vision and
Scope
Use Case Analysis
Project Definition, Traditional Project Management
Agile teams and Interactive approaches
Estimating and Scheduling a project. An overview of prince 2
Tools and Infrastructure, Software Development Infrastructure for
successful projects
Software Testing, TDD and Unit Testing with JUnit
Domain Modeling, Project Monitoring
Software Design, UML 2.0 as a design specification tool
Using design patterns, Achieving loose coupling, Clean code and
refactoring
Automated build and test, Producing documentation
Revision
Year of
Publication
2006
Title of
Book
Applied
software
project
management
Edition
1st
Publisher’s
Name
O'Reilly Media
2001
Writing
effective use
cases
1st
Addison-Wesley
ISBN
0-59600948-8
0-20170225-8
Web Link
http://sepang.nottingham.edu.my/~krselvaraj
Page 11 of 39
School of Computer Science
G52ADS – Algorithms and Data Structures (10 Credits) – Autumn 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: G51MCS, G51OOP; C: None; A: Coursework 25%, Written Examination 75%
2.
Lecturer
TBA
3.
Summary of Content
The emphasis is made on choosing data structures and algorithms appropriate for
solving a given problem. It presents the mathematical analysis of time and space
usage of algorithms using the big-Oh notation. Such mathematical analysis is then
used to support algorithm design decisions. It presents the usage of pre/post
conditions and loop invariants to aid in the design and implementation of
algorithms. Specific algorithms and data structures may include, but are not limited
to: stacks, queues and lists; trees and tree traversal methods; heaps, search trees;
graph problems and graph algorithms such as shortest paths and minimum
spanning trees.
4.
Weekly Programme
Week No
1
2
3
4
5
6
7
8
9
10
11
5.
No
1
2
6.
Lecture Topic
Introduction, overview and module contents
Algorithms and analysis, data structures/abstract data types; Sorting
methods I: bubble sort, selection sort and insertion sort
Sorting methods II: merge sort and quick sort; Stacks
Queues; Recursion
Linked list (single and double ended); Graph, DFS and BFS
Shortest path algorithms, minimum spanning tree
Topological sort; Hash table
Heaps, heap sort, priority queue
Tree, tree traversal; Binary search tree, balanced binary search tree
part 1 (AVL tree)
Balanced binary search tree part 2 (Red black tree); Multi-way tree
(2,3) and (2,3,4) trees
Revision and discussion of past exam papers
Resources
Name of
Author(s)
Michael
T.Goodrich
and Roberto
Tamassia
Shaffer,
Clifford A.
Year of
Publication
2011
2001
Title of Book
Edition
Data Structures
and Algorithms
in Java
5th
Publisher’s
Name
John Wiley
A practical
introduction to
data structures
and algorithm
analysis
2nd
Prentice Hall
ISBN
0-47039880-9
0-13028446-7
Web Link
http://moodle.nottingham.ac.uk/
Page 12 of 39
School of Computer Science
G52IFR – Introduction to Formal Reasoning (10 Credits) – Autumn 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: G51FUN, G51MCS; C: None; A: Coursework 25%, Written Examination 75%
2.
Lecturer
Michael Chung (Mr)
Contact: 03-89248142 (Office Phone); BB58 (Room)
E-mail:
michael.chung@nottingham.edu.my
3.
Summary of Content
The module introduces methods of formal reasoning relevant for Computer
Scientists. It continues and develops further the themes of G51MCS and introduces
a mathematical rigorous approach to program construction. The module covers the
following areas:
 Proofs in propositional logic and predicate logic
 Classical vs. intuitionistic logic
 Reasoning about Bool
 Basic operations on types: Cartesian product, disjoint union and function
space.
 Natural numbers, primitive recursion and induction
 Lists, verification of list based programs
 Inductive representation of syntax trees
 Introduction to program specification and program correctness.
4.
Weekly Programme
Week No
Lecture Topic
1
Introduction: Course content, assessment, introduction to Coq
2
Coq Basics, Propositional Logic
3
More Coq, Classical Logic
4
Bool and Predicate Logic
5
General Predicate Logic
6
More Predicate Logic
7
Operations on sets
8
Peano Arithmetic
9
Some Algebra
10
Primitive recursion
11
The omega hotel, diagonalisation
12
Lists
5.
No
1
6.
Resources
Name of
Author(s)
Bertot, Yves
& Castéran,
Pierre
Year of
Publication
2004
Title of Book
Edition
Interactive Theorem
Proving and
Program
Development:
Coq'Art: The
Calculus of
Inductive
Constructions
1st
Publisher’s
Name
Springer
ISBN
3540208542
Web Link
http://baggins.nottingham.edu.my/~kczmc/Teaching/G52IFR/
Page 13 of 39
School of Computer Science
G52APR – Application Programming (10 Credits) – Autumn 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: G51OOP; C: None; A: Coursework 100%
2.
Lecturer
Michael Chung (Mr)
Contact: 03-89248142 (Office Phone); BB58 (Room)
E-mail:
michael.chung@nottingham.edu.my
3.
Summary of Content
Builds on basic programming knowledge by showing how applications can be built
through the use of various example Java APIs including: GUI programming,
threads, networking, data processing, etc. Where appropriate, the underlying
design patterns behind the APIs will be illuminated.
4.
Weekly Programme
Week No
1
2&3
4&5
6&7
8&9
10 & 11
12
5.
No
1
6.
Lecture Topic
Introduction
GUI Components
Multithreading
Networking
Accessing Database with JDBC
Web Applications
Design Patterns
Resources
Name of
Author(s)
Deitel &
Deitel
Year of
Publication
2007
Title of
Book
Java How to
Program
Edition
7th
Publisher’s
Name
Pearson
ISBN
0-13613247-2
Web Link
http://baggins.nottingham.edu.my/~kczmc/Teaching/G52APR/
Page 14 of 39
School of Computer Science
G52GUI – Graphical User Interfaces (10 Credits) – Autumn 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: G51OOP, G52APR; C: None; A: Coursework 100%
2.
Lecturer
Chen ZhiYuan (Dr)
Contact: 03-89248141 (Office Phone); BB59 (Room)
E-mail:
Zhiyuan.Chen@nottingham.edu.my
3.
Summary of Content
This module is part of the Human-Computer Interaction theme in the School of
Computer Science.
The module focuses on how to implement graphical user interfaces. It will introduce
key programming concepts and structures by considering in depth the Java Swing
packages. The course will explore a wide range of components (from buttons to
tables), and the Java 2D API, which allows developers to easily incorporate highquality 2D graphics, text, and images in applications. The use of Integrated
Development Environments (IDEs), which simplify the construction of graphical user
interfaces, will be introduced and the advantages and disadvantages considered.
The module will also discuss design guidelines for graphical interfaces.
4.
Weekly Programme
Week No
1
2
3
4
5
6
7
8
9
10
11
12
Lecture Topic
Introduction, overview and module contents
Windows & Events
Model/View Notification
Widgets and Layout
Java Swing Layout Management
Abstract Model Widgets
The JTree Component
Multiple View Models
Look, Feel and Graphical Design
Interactive Design Tools
Graphics and the Java 2D API
Revision
5.
Resources
No
Name of
Author(s)
Dan R. Olsen
1
Year of
Publication
2010
2
6.
Title of Book
Edition
Building
Interactive
Systems
Swing Tutorial
& JAVA 2D
Tutorial
1st
Publisher’s
Name
Course
Technology
ISBN
1-42390248-3
Sun Java
Web Link
http://moodle.nottingham.ac.uk
Page 15 of 39
School of Computer Science
G52IIP – Introduction to Image Processing (10 Credits) – Autumn 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: G51MCS, G51PRG; C: None; A: Coursework 25%, Written Examination 75%
2.
Lecturer
Ho Sooi Hock (Mr)
Contact: 03-89248145 (Office Phone); BB71 (Room)
E-mail:
ho.sooi-hock@nottingham.edu.my
3.
Summary of Content
This module includes the following topics:
 overview of image processing and its applications, relations between image
processing and other related fields e.g. computer vision, computer graphics,
image analysis and digital photography
 fundamentals of digital images, elements of visual perception and human visual
system, digital image formation and acquisition, colour models and processing
 point processing, spatial filtering, image transforms and frequency domain
processing, edge detection, image segmentation, image coding and compression
4.
Weekly Programme
Week No
1
2
3
4
5
6
7
8
9
10
11
5.
No
1
2
6.
Lecture Topic
Introduction, overview and module contents
Digital image fundamentals
Point and histogram processing
Spatial domain image filtering
Image sharpening, edge detection and Hough transform
Frequency domain & Fourier transform
Image filtering in the frequency domain
Image segmentation & representation
Object representation
Image coding and image compression
Revision and discussion of past exam papers
Resources
Name of
Author(s)
Gonzalez &
Woods
Year of
Publication
2008
Title of Book
Edition
Digital Image
Processing
3rd
Efford
2000
Digital Image
Processing
Using Java
1st
Publisher’s
Name
Prentice Hall
AddisonWesley
ISBN
0-13168728X
0-20159623-7
Web Link
http://sepang.nottingham.edu.my/~hsooihock/G52IIP/index.html
Page 16 of 39
School of Computer Science
G52PAS – Planning and Search (10 Credits) – Autumn 2012-2013
1.
Pre-requisites (P) & Co-requisites (C) ; Assessment Details (A)
P: G51IAI; C: None; A: Written Examination 100%
2.
Lecturer
Siang Yew Chong (Dr)
Contact: 03-89248148 (Office Phone); BB57 (Room)
E-mail:
Siang-Yew.Chong@nottingham.edu.my
3.
Summary of Content
This module introduces more advanced AI techniques for problem-solving and
search, reasoning about actions, representing and reasoning with uncertainty and
AI planning. The search techniques are applicable to problems in AI and
optimisation and include: heuristic search, hill climbing, genetic algorithms,
simulated annealing, tabu search, local beam search and SAT. The planning
techniques are applicable to complex task planning and planning for mobile robots.
Topics covered include: approaches to reasoning about actions and searching for
plans efficiently, planning in static worlds, planning under uncertainty, conditional
planning, planning with time and resources, and mobile agent planning.
4.
Weekly Programme
Week No
1
2
3
4
5
6
7
8
9
10
11
5.
No
1
6.
Lecture Topic
Introduction to Search.
Local Search and Genetic Algorithms
Search and SAT, Search with Non-determinism and Partial Observability.
Logical Agents.
Situation Calculus.
Classical Planning.
Classical Planning 2 and Partial Order Planning.
Classical Planning: GraphPlan, SatPlan.
Classical Planning: Planning with Time and Resources.
Classical Planning: Hierarchical Planning and Planning in Non-Deterministic
Domains.
Revision and Coursework Discussion.
Resources
Name of
Author(s)
Stuart J.
Russell &
Peter Norvig
Year of
Publication
2010
Title of Book
Edition
Artificial
Intelligence :A
Modern
Approach
3rd
Publisher’s
Name
Prentice Hall
ISBN
0-136042597
Web Link
http://baggins.nottingham.edu.my/~khczcsy/G52PAS/G52PAS.html
Page 17 of 39
School of Computer Science
G53VIS – Computer Vision (10 Credits) – Autumn 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: G51OOP or G51PRG; C: None; Recommended: G52IIP
A: Coursework 25%, Written Examination 75%
2.
Lecturer
Tomas Maul (Dr)
Contact: 03-89248232 (Office Phone); BB64 (Room)
E-mail:
Tomas.Maul@nottingham.edu.my
3.
Summary of Content
This module is part of the Graphics and Vision theme in the School of Computer
Science. Building on G52IIP this module examines current techniques for the
extraction of useful information about a physical situation from individual and sets
of images. Particular emphasis is placed on the identification of objects, recovery of
three-dimensional shape &motion, and the recognition of events. Topics covered
include: advanced segmentation and feature extraction, motion computation and
tracking, stereo vision and the use of hidden markov models in higher level
analysis.
4.
Weekly Programme
Week No
1
2
3
4
5
6
7
8
9
10
11
5.
Lecture Topic
Introduction
Segmentation as Clustering. Region-based Segmentation.
Watersheds. The EM Algorithm.
Binocular Stereo. Camera Calibration.
Stereo Correspondence. Motion Analysis and Optic Flow.
Computing Optic Flow. Issues in Optic Flow.
Evaluation: Optic flow and segmentation. Introduction to Tracking.
The Kalman Filter. Snakes.
Particle Filters and Condensation.
Event Detection and Hidden Markov Models.
Revision.
Resources
N
o
Name of
Author(s)
1
David A.
Forsyth &
Jean Ponce
6.
Year of
Publicatio
n
2002
Title of Book
Edition
Publisher’s
Name
ISBN
Computer
Vision: A
Modern
Approach
1st
Prentice Hall
0-13085198-1
Web Link
http://baggins.nottingham.edu.my/~kcztm/TeachG53VIS.html
Page 18 of 39
School of Computer Science
G53CWO – Computers in the World (10 Credits) – Autumn 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: None; C: None; A: Coursework 50%; Written Examination 50%
2.
Lecturer
Ho Sooi Hock (Mr) [Group Teaching]
Contact No: 03-89248145 (Office Phone); BB71 (Room)
E-mail:
ho.sooi-hock@nottingham.edu.my
3.
Summary of Content
Scope of applications of computers and computing in the world at large (from
scientific supercomputers, PCs, tablets and phones to embedded computers, smart
cards and RFID tags). Dependability of computer-based systems and management
of risk in relation to such systems. Legal liability, data protection and intellectual
property issues in computing. Social and cultural impacts of computing (e.g. social
networking), the portrayal of computers and computing in the popular media,
fiction and ethical issues in computing. Sustainability and appropriate technology.
The nature of professionalism, the role of professional bodies, and continuing
professional development.
4.
Weekly Programme
Week No
1
2
3
4
5
6
7
8
9
10
11
5.
No
Lecture Topic
Ubiquity of Computers, New Developments & Rapid Changes
Software Safety
Computer Crime
Privacy
Freedom of Speech
Intellectual Property Issues
Computers in the Workplace
Evaluating & Controlling Technologies
Professionalism & Ethical Issues
Wrap Up & Discussion
Revision
Resources
Name of
Author(s)
Year of
Publication
Title of
Book
Edition
Publisher’s
Name
ISBN
1
Sarah Baase
2008
3rd
Prentice Hall
2
K. Bowyer
2001
Ethics
&
Computing
Ethics
&
Computing
1st
Wiley-IEEE
Press
6.
Web Link
http://sepang.nottingham.edu.my/~hsooihock or http://moodle.nottingham.ac.uk
0-13600848-4
0-78036019-2
Page 19 of 39
School of Computer Science
G53SQM – Software Quality Management (10 Credits) – Autumn 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: G52SEM; C: None; A: Coursework 40%, Written Examination 60%
2.
Lecturer
Chew Sze-Ker (Mr)
Contact: 03.89248140 (Office Phone); BB72 (Room)
E-mail:
chew.sze-ker@nottingham.edu.my
3.
Summary of Content
This module is part of the Software Engineering theme in the School of Computer
Science.
 This module introduces concepts and techniques for testing software and
assuring its quality
 The topics covered in this module include: Software quality concepts and
principles, Commercial and governmental stan.
4.
Weekly Programme
Week No
1
2
3
4
5
6
7
8
9
10
11
Lecture Topic
Introduction to SQA/Software Quality Factors
Components of SQA Systems
Pre-project Software Quality/Integrating quality Activities
Software Reviews
Software Testing Strategies/Implementation
Software Quality Metrics
The Function Point Method
Presentation
Presentation
Presentation
Revision and discussion
5.
Resources
No
Name of
Author(s)
Malik
Kamna
Year of
Publication
2006
Tian Jeff
2005
1
2
6.
Title of Book
Edition
Software Quality: a
practitioner’s
approach
Software Quality
Engineering:
testing, quality
assurance and
quantifiable
improvement
1st
Publisher’s
Name
McGraw Hill
1st
Wiley
ISBN
0-070248737
0-013064282
Web Link
http://moodle.nottingham.ac.uk/
Page 20 of 39
School of Computer Science
G53CMP – Compilers (10 Credits) – Autumn 2012-2013
1.
Pre-requisites (P) & Co-requisites (C);Assessment Details (A)
P: G51PRG, G52MAL; C: None; A: Coursework 25%, Written Examination 75%
2.
Lecturer
Tomas Maul (Dr)
Contact: 03-89248232 (Office Phone); BB64 (Room)
E-mail:
Tomas.Maul@nottingham.edu.my
3.
Summary of Content
This module is part of the Programming theme in the School of Computer Science.
Aspects of language and compiler design are examined by looking at the techniques
and tools that are used to construct compilers for high level programming
languages. A particular emphasis is placed on the use of formal techniques for
specifying the syntax and semantics of the source language. The course retains a
practical focus by exploring the implementation of a working compiler. Functional
programming notation is used throughout to minimize the gap between
specification and implementation, and to facilitate the presentation of symbolic
algorithms. Topics covered include parsing, parser generators, types and type
systems, run-time organisation, memory management, code generation and
optimisation.
4.
Weekly Programme
Week No
1
2
3
4
5
6
7
8
9
10
11
5.
No
1
6.
Lecture Topic
Administrative Details and Introduction
A Complete (Albeit Small) Compiler
Defining Programming Languages;
Syntactic Analysis
Contextual Analysis: Scope
Contextual Analysis: Types and Type Systems
Code Generation
Run-time organisation
Register Allocation
Code Optimization
Revision
Resources
Name of
Author(s)
lfred V. Aho,
Ravi Sethi and
Jeffrey
D.Ullman, S.
Year of
Publication
2003
Title of Book
Edition
Compilers:
Principles,
Techniques &
Tools
2nd
Publisher’s
Name
Prentice Hall
ISBN
0-201101947
Web Link
http://baggins.nottingham.edu.my/~kcztm/TeachG53CMP.html
Page 21 of 39
School of Computer Science
G51FUN – Intro to Functional Programming (10 Credits) – Spring 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: G51MCS, G51PRG; C: None; A: Coursework 25%, Written Examination 75%
2.
Lecturer
Michael Chung (Mr)
Contact: 03-89248142 (Office Phone); BB58 (Room)
E-mail:
michael.chung@nottingham.edu.my
3.
Summary of Content
Broadly speaking, a functional programming language is one that emphasises the
application of functions, rather than the execution of commands. Among other
features, functional languages offer a compact notation for writing programs,
powerful abstraction methods for structuring programs, and a simple mathematical
basis that supports reasoning about programs.
4. Weekly Programme
Week No
Lecture Topic
1
Introduction: Course content, assessment, introduction to functional language,
history
2
The Hug system: Hugs, standard prelude, function application, Haskell scripts,
naming requirements, layout rule
3
Type Information: Type errors, basic types, list types, tuple types, function types
– curried, polymorphic, overloaded, basic classes
4
Defining functions: Conditional expressions, guarded equations, pattern
matching, lamda expressions, sections
5
List comprehension: Introduction, dependent generators, guards, zip functions,
string comprehensions
6
Recursive functions: Introduction, recursion on lists, multiple arguments
7
Higher order functions: map, filter, foldr, other library functions
8
Interactive programs: Introduction, primitive actions, sequencing actions, other
library actions
9
Functional parsers: Introduction, primitive parsers, sequencing parsers, other
library parsers
10
Defining types: Type declarations, data declarations, recursive types, examples
11
Lazy evaluations: Innermost & outermost evaluations, lambda expressions,
termination, number of structures, infinite structures
12
Reasoning about programs
5.
No
1
2
6.
Resources
Name of
Author(s)
Graham
Hutton
Richard
Bird
Year of
Publication
2007
1988
Title of Book
Edition
Programming in
Haskell
Introduction to
Functional
Programming
using Haskell
1st
Publisher’s
Name
CUP
2nd
Prentice Hall
ISBN
0-52169269-5
0-13484346-0
Web Link
http://baggins.nottingham.edu.my/~kczmc/Teaching/G51FUN/fun.html
Page 22 of 39
School of Computer Science
G51DBS – Database Systems (10 Credits) – Spring 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: G51MCS; C: None; A: Coursework 25%, Written Examination 75%
2.
Lecturer
TBA
3.
Summary of Content
The module introduces database management systems, the design and use of
database systems. The relational database model and the structured database
query language (SQL) are covered. Throughout the module students are given
instruction in the use of a relational database management system. Topics covered
include: the relational model; entity-relationship modelling, SQL data definitions
and select, normalisation, efficiency, transactions and database security.
4.
Weekly Programme
Week No
1
2
3
4
5
6
7
8
9
10
11
12
Topics
Introduction to Database Systems, The Relational Model
Database Models & Relational Database
Relational Algebra & Entity Relationship Modelling
Normalization
SQL Data Definition
More SQL – Data Definition Language (I)
More SQL – Data Definition Language (II)
Data Administration and Security
Transactions and Recovery, Concurrency Control & Efficiency Issues
Object-relational & Object-oriented Databases, XML and databases
Good and Bad ‘Modern’ Databases
Revision
5.
Resources
No
Name of
Author(s)
Thomas
Connolly and
Carolyn
Begg,
1
2
6.
R Elmasri
and SB
Navathe,
Year of
Publication
2005
2004
Title of Book
Edition
Database Systems
- A Practical
Approach to
Design,
Implementation,
and Management
Fundamentals of
Database Systems
3rd or
4th
Publisher’s
Name
AddisonWesley
3rd or
4th
AddisonWesley
.
ISBN
0321210255
0321204484
Web Link
TBA
Page 23 of 39
School of Computer Science
G51FSE – Introduction to Software Engineering (10 Credits) – Spring 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: None; C: None; A: Coursework 30%, Written Examination 70%
2.
Lecturer
Timothy Brailsford (Dr)
Contact: 03-89248147 (Office Phone); BB70 (Room)
E-mail:
tim.brailsford@nottingham.edu.my
3.
Summary of Content
This module introduces the concepts of Software Engineering as a discipline and will
provide an overview of the whole software development process. A selection of
fundamental topics will be covered in depth:
 Software development methodologies and the software lifecycle, including the
waterfall model, extreme programming etc.
 Formal requirements and specifications, focusing on how to turn an informal
design brief into a formal specification.
 Software testing, evaluation and debugging, including practical use of modern
debugging toolkits.
 Software evolution and maintenance, including version control and collaborative
development systems.
4.
Weekly Programme
Week No
1
2
3
4
5
6
7
8
9
10
11
5.
No
Lecture Topic
Introduction to Object-oriented Software Engineering (OOSE) – Part 1
Introduction to Object-oriented Software Engineering (OOSE) – Part 2
Introduction to Object-oriented Software Engineering (OOSE) – Part 3
Object-orientation (OO)
Object-oriented Analysis (OOA)
Object-oriented Design (OOD) – Part 1
Object-oriented Design (OOD) – Part 2
Formal Specification
Architectural Design
Testing Principles and Managing Software Project – Part 1
Testing Principles and Managing Software Project – Part 2
Revision and review past examination questions
Resources
Edition
Ian
Sommerville
Year of
Publication
2006
Title of Book
1
Name of
Author(s)
Software
Engineering
8th
2
Roger S
Pressman
2004
Software
Engineering: A
Practitioner's
Approach
6th
6.
Publisher’s
Name
Addison
Wesley
McGraw-Hill
ISBN
0321313799
0073019338
Web Link
http://moodle.nottingham.ac.uk
Page 24 of 39
School of Computer Science
G51OOP – Object Oriented Programming (10 Credits) – Spring 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: G51PRG; C: None; A: Coursework 100%
2.
Lecturer
Chew Sze-Ker (Mr)
Contact: 03.89248140 (Office Phone); BB72 (Room)
E-mail:
chew.sze-ker@nottingham.edu.my
3.
Summary of Content
The basic concepts of object-oriented programming and design including: classes,
objects, aggregation, inheritance, class discovery techniques, principles of good
design and common design patterns. These will be supported by practical examples
using the Java programming language.
Please note: This is a non-compensatable module.
4.
Weekly Programme
Week No
1
2
3
4
5
6
7
8
9
10
11
Lecture Topic
Introduction to Objects/Classes
Inheritance
Polymorphism
Event Handling and Exception
File Processing
Interfaces and Inner Classes
Linked Data Structures
Graphical User Interfaces I
Graphical User Interfaces II
Coursework discussions
Revision and discussion of past exam papers
5.
Resources
No
Name of
Author(s)
Savitch,
Walter J
Year of
Publication
2004
Title of
Book
Absolute
Java
Edition
Bishop J.M.
2001
Java Gently
3rd
Addison
Wesley
0-20171050-1
2007
Java: How to
Program
7th
Pearson
0-13613247-2
1
2
3
6.
Deitel, Paul J
4th
Publisher’s
Name
Pearson
ISBN
0-32120567-7
Web Link
http://moodle.nottingham.ac.uk/
Page 25 of 39
School of Computer Science
G51IAI – Introduction to Artificial Intelligence (10 Credits) – Spring 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: None; C: None; A: Written Examination 100%
2.
Lecturer
Ho Sooi Hock (Mr)
Contact No: 03-89248145 (Office Phone); BB71 (Room)
E-mail:
ho.sooi-hock@nottingham.edu.my
3.
Summary of Content
This module aims to:
 give a broad overview of the fundamental theories and techniques of AI
 a peek into the history of AI and the key milestones, e.g. Turing Test and the
Chinese Room, MYCIN etc.
 provide the student with the necessary knowledge to allow them to implement
common AI search techniques
 introduce game playing and describe some of the techniques that are applicable
in this area (e.g. mini-max, alpha-beta pruning)
 review the principles of neural networks in general and perceptron learning.
4.
Weekly Programme
Week No
1
2
3
4
5
6
7
8
9
10
11
5.
No
1
2
6.
Lecture Topic
Introduction, overview and module contents
Reasons for AI; History of AI; Philosophy of AI
Problem formulation
Uninformed search – BFS, DFS, UCS, DLS, IDS
Heuristic search techniques – BFS, GFS and A*
Tutorials on search techniques; Discussion on courseworks
Game playing techniques
Introduction to neural networks
Perceptron learning and linear separability
Constraint satisfaction problems
Revision and discussion of past exam papersl
Resources
Name of
Author(s)
S. J. Russell &
Peter Norvig
Year of
Publication
2010
Title of Book
Edition
AI :A Modern
Approach
3rd
George F Luger
2008
AI:Structures
and strategies
for Complex
Problem Solving
6th
Publisher’s
Name
Prentice Hall
Addison
Wesley
ISBN
0-13604259
-7
0-321545893
Web Link
http://sepang.nottingham.edu.my/~hsooihock or http://moodle.nottingham.ac.uk
Page 26 of 39
School of Computer Science
G51WPS – Web Programming and Scripting (10 Credits) – Spring 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: G51PRG; C: None; A: Coursework 25%, Written Examination 75%
2.
Lecturer
Ben Phear (Mr)
Contact: CFFRC Offices; 2nd Floor B Block
E-mail:
Ben.phear@nottingham.edu.my
3.
Summary of Content
This course will introduce a broad spectrum of web programming technologies. It
will begin with an overview of how the Internet and the Web work, including
fundamentals such as the client-server paradigm, URLs, MIME types and HTTP.
Then client side technologies will be studied (HTML, CSS, Java Script, and XML),
followed by an introduction to server side technologies (such as Perl and CGI, JSP,
ASP.NET, PHP) with an emphasis on PHP. Guidelines for Web design and usability,
and case studies will also be provided.
4.
Weekly Programme
Week No
1
2
3
4
5
6
7
8
9
10
11
5.
Lecture Topic
Introduction, overview and module contents
Computer Communications and Networks, and TCP/IP
Web browsers, servers, and HTTP
HTML
Cascading Style Sheets (CSS)
Javascript
Server-side Interaction
PHP
Web Usability
XML
Web Application Frameworks and Module Summary and Revision
Resources
The Internet, Google, UNIX / GNU Man-pages, any book that covers module topic
content. There is no formal prescribed text for this module.
6.
Web Link
http://moodle.nottingham.ac.uk/
Page 27 of 39
School of Computer Science
G52CCN – Comp Communications and Networks (10 Credits) – Spring 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: G51MCS; C: None; A: Coursework 25%, Written Examination 75%
2.
Lecturer
KR Selvaraj (Mr)
Contact: 03-89248139 (Office Phone); BB60 (Room)
E-mail:
kr.selvaraj@nottingham.edu.my
3.
Summary of Content
The module introduces database management systems, the design and use of
database systems. The relational database model and the structured database
query language (SQL) are covered. Throughout the module students are given
instruction in the use of a relational database management system. Topics covered
include: the relational model; entity-relationship modelling, SQL data definitions
and select, normalisation, efficiency, transactions and database security.
4.
5.
No
1
6.
Weekly Programme
Week No
Topics
1-3
Part 1: Data Transmission
1. Introduction, Transmission media
2. Local asynchronous communication and RS-232
3. Long distance communication (carriers and modems)
4-6
Part 2: Packet Transmission
5. Packets, frames and error detection
6. Local Area Networks
7. Hardware addressing and frame types
8. LAN wiring and physical topology
9. Extending LANs
10.WAN technologies and routing
11. Ownership, service and performance
7-8
Part 3: Internetworking
12. Protocols and layering
13. Internetworking - concepts
14. IP addressing
15. IP datagrams
16. Future IP
17. Transport Control Protocol (TCP)
9 - 10
Part 4 : Introduction to Computer and Network Security
11 - 12
Part 5: Applications
18. Client-Server Interaction
19. The Socket API
20. Example applications
21. Revision
Resources
Name of
Author(s)
Douglas E.
Comer
Year of
Publication
2004
Title of Book
Edition
Computer
Networks and
Internets
4th
Publisher’s
Name
Prentice Hall
ISBN
0-13123627-X
Web Link
http://sepang.nottingham.edu.my/~krselvaraj
Page 28 of 39
School of Computer Science
G52CON – Concepts of Concurrency (10 Credits) – Spring 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: G51PRG, knowledge of mathematics; C: None; A: Written Examination 100%
2.
Lecturer
Abdur Rakib (Dr)
Contact: 03-89248137 (Office Phone); BB65 (Room)
E-mail:
abdur.rakib@nottingham.edu.my
3.
Summary of Content
This module introduces the basic principles of concurrent programming and their
use in designing computer programs. It covers concurrency primitives for shared
memory and distributed implementations of concurrency, the correctness of
concurrent algorithms, and concurrent programming in Java. Building on these
basic principles, it explains how concurrency primitives and algorithms can be used
to solve some common problems in concurrent programming, e.g., the producerconsumer problem, the readers and writers problem, client server problems etc.
Topics include: hardware support for concurrency, mutual exclusion and conditional
synchronisation, semaphores, monitors, RPC and rendezvous, safety and liveness
properties of concurrent algorithms, proving properties using assertional reasoning
and model checking, and the use of Java threads, synchronized methods, and
monitors.
4.
Weekly Programme
Week No
1
2
3
4
5
6
7
8
9
10
11
12
5.
Resources
No
Name of
Author(s)
Andrews
1
6.
Lecture Topic
Introduction, overview and module contents
Operating System Processes
Processes & Threads
Inter-process Communication and Synchronisation
Critical Sections and Atomic Actions
Mutual Exclusion Algorithms
Semaphores
Monitors
Monitors in Java
Syncronization in Java
Message Passing, Remote Invocation
Proving Correctness, Model Checking
Year of
Publication
2000
Title of Book
Edition
Foundations of
Multithreaded,
Parallel and
Distributed
Programming
1st
Publisher’s
Name
AddisonWesley
ISBN
0201357526
Web Link
http://baggins.nottingham.edu.my/~kefzabr/G52CON/
Page 29 of 39
School of Computer Science
G52MAL – Machines and their Languages (10 Credits) – Spring 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: G51FUN, G51MCS, G51PRG; C: None;
A: Coursework 25%, Written Examination 75%
2.
Lecturer
Tomas Maul (Dr)
Contact: 03-89248232 (Office Phone); BB64 (Room)
E-mail:
Tomas.Maul@nottingham.edu.my
3.
Summary of Content
A series of abstract machines, classes of formal languages and their relation is
investigated, along with important practical applications of this theory, in particular
language recognition (lexical and syntactic analysis). Ultimately the investigations
touch on the question of what can and cannot be computed. Topics covered include:
finite state machines, regular expressions, context-free grammars, push-down
automata, parsing and Turing machines.
4.
Weekly Programme
Week No
1
2
3
4
5
6
7
8
9
10
11
5.
No
1
6.
Lecture Topic
Introduction, overview and module contents
Preliminaries
Automata Theory; Deterministic Finite Automata (DFA)
Non Deterministic Finite Automata (NFA)
Subset Construction; Epsilon Transition
Regular Language and Regular Expressions; Minimisation of Finite
Automata
Properties of Language, Proving Languages not to be Regular
Introduction to Context free Grammar- Chomsky norms
Regular grammar, Derivations
Parse trees; Case Study - NLP
Pushdown Automata (PDA)
The Language of a PDA; Turing Machines and Decidability
Resources
Name of
Author(s)
John Hop Croft,
Rajeev Motwani,
Jeffrey.D.Ullman
Year of
Publication
2007
Title of Book
Edition
Introduction to
Automata
Theory,
Languages and
computation
3rd
Publisher’s
Name
Addison
Wesley
ISBN
0321476174
Web Link
http://baggins.nottingham.edu.my/~kcztm/TeachG52MAL.html
Page 30 of 39
School of Computer Science
G52CPP – C++ Programming (10 Credits) – Spring 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: G51OOP; C: None; A: Coursework 40%, Written Examination 60%
2.
Lecturer
Michael Chung (Mr)
Contact: 03-89248142 (Office Phone); BB58 (Room)
E-mail:
michael.chung@nottingham.edu.my
3.
Summary of Content
The course will cover programming material and concepts necessary to obtain a
thorough understanding of the C++ programming language for students with
experience with another imperative programming language such as Java or C#.
4.
Weekly Programme
Week No
1
2
3
4
5
6
7
8
9
10
11
12
5.
No
1
6.
Lecture Topic
Introduction
Introduction to Classes and Objects
Classes
Classes (cont.)
Operator overloading
Inheritance in C++
Polymorphism in C++
Templates
Stream Input/Output, Class String
Exception Handling
File Processing
STL
Resources
Name of
Author(s)
Deitel &
Deitel
Year of
Publication
2008
Title of
Book
C++ How
to Program
Edition
6th
Publisher’s
Name
Pearson
ISBN
013242701X
Web Link
http://baggins.nottingham.edu.my/~kczmc/Teaching/G52CPP
Page 31 of 39
School of Computer Science
G52HCI – Human Computer Interaction (10 Credits) – Spring 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P:G52GUI; C: None; A: Coursework 100%
2.
Lecturer
Chen ZhiYuan (Dr)
Contact: 03-89248141 (Office Phone); BB59 (Room)
E-mail:
Zhiyuan.Chen@nottingham.edu.my
3.
Summary of Content
This module is part of the Human-Computer Interaction theme in the School of
Computer Science.
The module provides an overview of the field of Human Computer Interaction,
which aims to understand people's interaction with technology and to apply this
knowledge in the design of usable interactive computer systems. The module will
introduce the concept of usability, examine different design approaches and
evaluation methods and illustrate the principles through an exploration of a number
of case studies.
4.
Weekly Programme
Week No
1
2
3
4
5
6
7
8
9
10
11
5.
No
1
2
6.
Lecture Topic
Introduction, overview and module contents
Understanding Users - The Cognitive Perspective
Understanding users - Ethnography
Understanding users - Organisational Context
Understanding Users – Art and Design Perspective
Requirements
Designing GUIs
Participatory design and prototyping
Evaluating Interfaces
The Future of the Interface
Revision
Resources
Name of
Author(s)
Helen
Sharp,
Yvonne
Rogers &
Jenny
Preece
Ben
Schneiderm
an &
Catherine
Plaisan
Year of
Publication
2007
2010
Title of Book
Edition
Interaction
Design: Beyond
Human
Computer
Interaction
2nd
Designing the
User Interface:
Strategies for
Effective HumanComputer
Interaction
5th
Publisher’s
Name
Wiley
AddisonWesle
ISBN
047001866-6
032153735-1
Web Link
http://moodle.nottingham.ac.uk
Page 32 of 39
School of Computer Science
G52APT – AI Programming Techniques (10 Credits) – Spring 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: G51PRG, G52PAS; C: None; A: Coursework 25%, Written Examination 75%
2.
Lecturer
Chew Sze-Ker (Mr) (Co teach with Chong Siang Yew (Dr))
Contact: 03.89248140 (Office Phone); BB72 (Room)
E-mail:
chew.sze-ker@nottingham.edu.my
3.
Summary of Content
This module introduces basic AI programming techniques and explains how these
can be used to solve typical AI problems (e.g., those introduced in G51IAI and
G52PAS). The programming techniques are introduced through an AI programming
language, however the emphasis is on transferrable AI programming skills rather
than language specific details. Topics covered include: introduction to Prolog, Horn
clauses, unification, backtracking, lists and other data structures, and AI
programming patterns. Key AI problems are used to illustrate practical exercises,
e.g., basic search, planning, game playing, etc.
4.
Weekly Programme
Week No
1
2
3
4
5
6
7
8
9
10
5.
No
Lecture Topic
Introduction, Prolog syntax
Prolog execution, Recursive programs
Lists
Backtracking, second order programming
Depth first search, iterative deepening search
Breadth first search, state representation
Non-path problems, forward planning
Regression planning, further regression
Partial order planning
Revision
Resources
Name of
Author(s)
Bratko, Ivan
Year of
Publication
2012
2
Sterling &
Shapiro
1994
3
Russell &
Norvig
2010
1
6.
Title of Book
Edition
Prolog
Programming for
Artificial
Intelligence
The Art of Prolog
4th
Publisher’s
Name
Prentice Hall
2nd
MIT Press
3rd
Pearson
Artificial
Intelligence: A
Modern Approach
ISBN
978032
14174
66
026219338-8
013207148-7
Web Link
http://moodle.nottingham.ac.uk
Page 33 of 39
School of Computer Science
G53OPS – Operating Systems (10 Credits) – Spring 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: 51PRG, G52CON; C: None; A: Written Examination 100%
2.
Lecturer
KR Selvaraj (Mr)
Contact: 03-89248139 (Office Phone); BB60 (Room)
E-mail:
kr.selvaraj@nottingham.edu.my
3.
Summary of Content
Operating systems provide a software interface to make the hardware of a
computer more readily usable, and to provide cost-effective use of that hardware.
This module covers how key aspects of an operating systems can be implemented,
including:
process scheduling, memory management, file systems, input/output. In addition,
the history of operating systems will be discussed and how they have developed in
line with advances in hardware.
4.
Weekly Programme
Week No
1
2
3
4
5
6
7
8
9
10
11
12
5.
No
Lecture Topics
Introduction and background
Memory Management Part I
Memory Management Part II
Memory Management Part III
Processes Scheduling Part I
Processes Scheduling Part II
Processes Scheduling Part III
File Systems Part I
File Systems Part II
Input/output processes Part I
Input/output processes Part II
Summary and Revision
Resources
Name of
Author(s)
Andrew S.
Tanenbaum
Year of
Publication
2001
Title of
Book
Modern
Operating
Systems
Edition
2
Abraham
Silberschatz and
Peter Galvin and
Greg Gagne
2003
Operating
System
Concepts
6th
John Wiley &
sons
0-471262722
3
Abraham
Silberschatz and
Peter Galvin and
Greg Gagne
2003
Applied
Operating
System
Concepts
1st
John Wiley &
sons
0-471263-141
1
6.
2nd
Publisher’s
Name
Prentice Hall
ISBN
0-13031358-0
Web Link
http://baggins.nottingham.edu.my/~krselvaraj
Page 34 of 39
School of Computer Science
G53ELC – Enterprise Level Computing (10 Credits) – Spring 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: G52CCN, G51DBS, G51OOP; C: None; A: Written Examination 100%
2.
Lecturer
Chen ZhiYuan (Dr)
Contact: 03-89248141 (Office Phone); BB59 (Room)
E-mail:
Zhiyuan.Chen@nottingham.edu.my
3.
Summary of Content
This module is part of the Net-Centric Computing theme in the School of Computer
Science.
Then module provides an overview of more advanced Web architectures and
technologies. In particular it will cover the development of web services through the
use of standards such as XML, SOAP, WSDL and UDDI and consider how web
services can be used to implement a Service Oriented Architecture (SOA). This
module explains how modern enterprises construct computer applications that are
distributed over an intranet using a variety of servers and clients. Multi-tiered
architectures using state-of-the-art distributed system technologies will be covered
in a context of object-oriented design and implementation as distributed
components.
4.
Weekly Programme
Week No
1
2
3
4
5
6
7
8
9
10
11
12
5.
No
1
2
6.
Lecture Topic
Introduction, overview and module contents
Why use Object-Oriented Systems?
Web Services
Software Patterns and Enterprise Architectures
Enterprise Authentication Patterns
Client Choices
Domain and Entity Modelling
Dependency Injection Containers
Message Brokers
Virtualization and Hypervisors
Cloud Computing
Revision
Resources
Name of
Author(s)
Year of
Publication
2002
Chu-Carroll,
Mark C.
2011
Farley, Jim
Title of Book
Edition
Java enterprise
in a nutshell
3rd
Code in the
cloud
1st
Publisher’s
Name
O’Reilly
Pragmatic
Bookshelf
ISBN
0596101422
978193
43566
30
Web Link
http://moodle.nottingham.ac.uk
Page 35 of 39
School of Computer Science
G53SEC – Computer Security (10 Credits) – Spring 2012-2013
1.
Pre-requisites & Co-requisites; Assessment Details
P: G51WPS or G52IWS or G52CCN or Equivalent Knowledge of Networks and
Computer Systems. C: None.
A: Coursework 40%, Written Examination 60%
2.
Lecturer
TBA
3.
Summary of Content
The module covers the following topics: access control, reference monitors, security
models, cryptography, cryptanalysis, network security and software security.
4.
Weekly Programme
Week No
1
2
3
4
5
6
7
8
9
10
11
5.
No
1
2
6.
Lecture Topic
Introduction & Overview
Foundations of Computer Security
Access Control
Reference Monitors
Security Models
Other Security Models
Cryptography 1
Cryptography 2
Network Security
Software Security
Student Presentations & Discussions
Resources
Name of
Author(s)
Dieter
Gollmann
Year of
Publication
2006
Title of Book
Edition
Computer
Security
2nd
Publisher’s
Name
John Wiley
Ross
Anderson
2008
Security
Engineering
2nd
Prentice-Hall
ISBN
0470862939
0470068523
Web Link
TBA
Page 36 of 39
School of Computer Science
G53NMD – New Media Design (10 Credits) – Spring 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: None; C: None; A: Coursework 100%
2.
Lecturer
Timothy Brailsford (Dr)
Contact: 03-89248147 (Office Phone); BB70 (Room)
E-mail:
tim.brailsford@nottingham.edu.my
3.
Summary of Content
This module aims to:
 Provide a sound understanding of wide range of concepts, methods and
techniques of Operational Research and Artificial Intelligence that can help in
design of intelligent decision support systems.
 Present state-of-the-art of both advanced Operational Research and Artificial
Intelligence methods including multi-criteria decision making, decision making in
the presence of uncertainty, case-based reasoning, etc.
Present a variety of examples from industrial and service sectors.
4.
Weekly Programme
Week No
1
2
3
4
5
6
7
8
9
10
11
Lecture Topic
Introduction to Multimedia
Multimedia Authoring Systems; Interaction and Methaphor in Multimedia
Design
Graphics and Still Images Representation; Colour Science and Color
Models
Hypertext
Media Design: Text, Images, and Sound
Scalable Vector Graphics
Digital Audio
Architecture of Multimedia Systems
Synchronized Multimedia Integration Language
Digital Video
Intellectual Property Rights; Narrative
5.
Resources
No
Name of
Author(s)
Barfield, L
Year of
Publication
2004
Li, Z. &
Drew,M.
2004
1
2
6.
Title of Book
Edition
Design for New
Media:
Interaction
design for
multimedia and
the web
Fundamentals
of Multimedia
1st
-
Publisher’s
Name
Pearson
AddisonWesley
Pearson
Prentice-Hall
ISBN
9780201596090
9780130618726
Web Link
http://moodle.nottingham.ac.uk
Page 37 of 39
School of Computer Science
G54ACC – Advanced Computer Communications (10 Credits) – Spring 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: G52CCN or equivalent; C: None; A: Written Examination 100%
2.
Lecturer
Ho Sooi Hock (Mr)
Contact No: 03-89248145 (Office Phone); BB71 (Room)
E-mail:
ho.sooi-hock@nottingham.edu.my
3.
Summary of Content
The course gives a basic understanding of network-related initialization and the
operation of the main Internet protocols. It gives an insight into the service
definition and protocols of the most important network applications services. It
considers basic network architectures such as the client-server model and the more
complex distributed systems. Introduction to technologies includes p2p and
wireless networking.
4.
Weekly Programme
Week
No
1
2
3
4
5
6
7
8
9
10
11
5.
No
1
2
6.
Lecture
Topic
Introduction, Overview & Module Contents
IP Subnetting & supernetting; IP Address Depletion
Network Auto-configuration; Fragmentation
Transport layer protocol and socket programming
UDP/TCP comparison; Flow & Congestion Control
Advanced Congestion Control
IP Multicasting
Distributed Systems & Middleware
P2P systems
Wireless Communications
Revision
Resources
Name of
Author(s)
Kurose &
Ross
Year of
Publication
2013
Tannenbaum
2011
Title of Book
Edition
Computer
Networking: A
Top Down
Approach
Featuring the
Internet
Computer
Networks
6th
5th
Publisher’s
Name
AddisonWesley
Prentice Hall
ISBN
0-132856204
0-132126953
Web Link
http://sepang.nottingham.edu.my/~hsooihock or http://moodle.nottingham.ac.uk
Page 38 of 39
School of Computer Science
G54SIM – Simulation for Computer Scientists (10 Credits) – Spring 2012-2013
1.
Pre-requisites (P) & Co-requisites (C); Assessment Details (A)
P: None; C: None; A: Coursework 40%, Written Examination 60%
2.
Lecturer
Chen ZhiYuan (Dr)
Contact: 03-89248141 (Office Phone); BB59 (Room)
E-mail:
Zhiyuan.Chen@nottingham.edu.my
3.
Summary of Content
This module is part of the Modelling and Optimisation theme in the School of
Computer Science. Computational Simulation of systems is becoming an
increasingly common due to the recent improvements of speed and memory in
computer hardware allowing simulation of realistic systems. System simulation can
help to understand the processes currently in place and show the consequences of
changes to these processes over time. Successful case studies of simulation include
manufacturing, financial system, retail and more recently other areas of the service
sector. Three broad simulation paradigms exist: System Dynamics, Agent-based
and Discrete Event. This module will explain each of them in detail so that students
will be competent in choosing and implementing the right method for their
particular problem.
4.
Weekly Programme
Week No
1
2
3
4
5
6
7
8
9
10
5.
No
1
2
6.
Lecture Topic
Introduction to simulation
General principles of simulation
Modelling paradigms
Simulation paradigms
Generating random numbers
Input modelling
Output data analysis
Experimental design and sensitivity analysis
Case studies
Revision
Resources
Name of
Author(s)
Year of
Publication
2005
Title of Book
Edition
Simulation for
the social
scientist
2nd
Publisher’s
Name
Open
University
Press
Robinson,
Stewart
2004
Simulation : the
practice of
model
development
and use
1st
John Wiley
Gilbert, G.
Nigel
ISBN
978033
521600
0
978047
084772
5
Web Link
http://moodle.nottingham.ac.uk
Page 39 of 39