Post on 17-Mar-2021
Page 1 of 41
School of Computer Science
UNDERGRADUATE MODULES FOR 2013-2014
Full Year
Module Module Code Level
Software Engineering Group Project G52GRP 2
Individual Dissertation Single/Joint Honours G53IDS/Y/J 3
Autumn Semester – Computer Science Modules
Module Module Code Level
Computer Systems Architecture G51CSA 1
Mathematics for Computer Science G51MCS 1
Introduction to Requirements Engineering G51REQ 1
Introduction to Programming G51PRG 1
Algorithmic Problem Solving G51APS 1
Unix and Software Tools G51UST 1
Software Engineering Methodologies G52SEM 2
Algorithms and Data Structures G52ADS 2
Introduction to Formal Reasoning G52IFR 2
Application Programming G52APR 2
Graphical User Interfaces G52GUI 2
Introduction to Image Processing G52IIP 2
Planning and Search G52PAS 2
Computer Graphics G53GRA 3
Computers in the World G53CWO 3
Software Quality Management G53SQM 3
Compilers G53CMP 3
Computer Vision G54VIS 4
Autumn Semester – Compulsory Business Modules for Joint Honours
Module Module Code Level
Entrepreneurship and Business N11440 1
Business Economics A N11604 1
Contemporary Economic Policy N12107 2
Designing and Managing Organisations N12617 2
Strategic Management I N13410 3
Human Resource Management I N13425 3
Page 2 of 41
Spring Semester – Computer Science Modules
Module Module Code Level
Introduction to Functional Programming G51FUN 1
Database Systems G51DBS 1
Introduction to Software Engineering G51FSE 1
Introduction to Object-Oriented Programming G51OOP 1
Introduction to Artificial Intelligence G51IAI 1
Web Programming and Scripting G51WPS 1
Computer Communications and Networks G52CCN 2
Concepts of Concurrency G52CON 2
Machines and their Languages G52MAL 2
C++ Programming G52CPP 2
Human Computer Interaction G52HCI 2
AI Programming Techniques G52APT 2
Operating Systems G53OPS 3
Enterprise Level Computing G53ELC 3
Computer Security G53SEC 3
New Media Design G53NMD 3
Advanced Computer Communications G54ACC 4
Simulation for Computer Scientists G54SIM 4
Spring Semester – Compulsory Business Modules for Joint Honours
Module Module Code Level
Business Economics B1 N11116 1
People and Organisations N11603 1
Economics of Business Decisions N12604 1
Organising and Managing in Practice N12606 1
Strategic Management II N13418 1
Human Resource Management II N13426 1
Page 3 of 41
Notes:
1. Modules offered in any semester are subjected to change as they depend on staffavailability and enrollments from sufficient number of students.
2. The descriptions of the offered modules are current as and when this document isprepared but they may be subjected to modifications and additions by the moduleconvenor.
3. Students may take modules offered by other Schools provided appropriateapproval has been obtained from the Course Director of the School of ComputerScience and the module convenor of the offering School, subjected to thecondition that there is no clash in the timetables and that all prerequisites andcorequisites of the selected module are met. A maximum of 20 credits of suchmodules are allowed in one academic year.
4. This document provides summaries as well as important details of ComputerScience modules that are only relevant to the Malaysia Campus. Otherinformation not included in this document e.g. education aims, learning outcomesas well as descriptions of other non-Computer Science modules, can be viewed atthe Nottingham’s Module Catalogue web site below:
http://modulecatalogue.nottingham.ac.uk/malaysia/ // Malaysia Campus
Page 4 of 41
G52GRP – Software Engineering Group Project (20 Credits) – Full Year 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: None; C: None; A: Coursework 100%
2. LecturerChen ZhiYuan (Dr)Contact: 03-89248141 (Office Phone); BB71 (Room)E-mail: Zhiyuan.Chen@nottingham.edu.my
3. Summary of ContentWorking in groups of around five to six people, you’ll be assigned a supervisor whowill provide you with a short written description of a computer application to bedesigned, programmed, and documented during the course of the module. Eachgroup will meet twice a week, once with your supervisor and once without; you’llalso have four introductory one hour lectures.
4. Weekly Programme
Week No Lecture Topic
1 Overview: Aims, Organisation, Assessment
2 Team Working and Group meetings
3 Version Control
4 Characteristics of a good project
5 Course Information Review
6 Code Quality, Maintainability, Reusability, Debugging and Testing
7 Report Writing
8 Giving an Effective Presentation
9 No Lecture
10 No Lecture
11 Group Project Open Day
No Lecture
5. ResourcesReference texts as relevant to the project topics
6. Web Linkhttp://moodle.nottingham.ac.uk/
School of Computer Science
Page 5 of 41
G53IDS/Y/J – Individual Disseration (40/40/20 Credits) – Full Year 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: None; C: None; A: Dissertation 80%, Practical (Demo) 10%, Progress Presentation(Autumn) 10%
2. LecturerKR Selvaraj (Mr)Contact: 03-89248139 (Office Phone); BB60 (Room)E-mail: kr.selvaraj@nottingham.edu.my
3. Summary of ContentStudents are required to perform an individual project on a topic in computerscience. Each student has a supervisor who is a member of the academic staff. Thetopic can be any area of the subject which is of mutual interest to both the studentand supervisor. Through a one hour lecture and a tutorial with your supervisor eachweek, you’ll develop your own independent research project and written report.Topics can range from purely theoretical studies to practical work building a systemfor some third party, although most projects aim to provide a balance between thetheoretical and practical aspects of the subject. Guidelines on word length ofdissertation are flexible to accommodate differing types of project work (e.g.balance between theory and practice) undertaken.
4. Weekly Programme
Week No Lecture Topic
1 Project Briefing
2 Information Skills
3 Literature Review
4 Plagiarism
5 Public Presentation Skills
6 Dissertation Report Preparation
7 TBA
8 TBA
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title of Book Edition Publisher ISBN
1 Dawson,Christian W
2000 The essence ofcomputing projects:
a student's guide
Prentice Hall
Reference texts recommended by the supervisors as relevant to the project topics.
6. Web Linkhttp://moodle.nottingham.ac.uk/
School of Computer Science
Page 6 of 41
G51CSA – Computer Systems Architecture (10 Credits) – Autumn 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: None; C: G51PRG; A: Coursework 25%, Written Examination 75%
2. LecturerKR Selvaraj (Mr)Contact: 03-89248139 (Office Phone); BB60 (Room)E-mail: kr.selvaraj@nottingham.edu.my
3. Summary of ContentThis module is part of the Operating Systems and Architecture theme in the Schoolof Computer Science. The module covers: basic architecture of a digital computers. use simple C programs (linked to G51PRG) to introduce assembly language,
binary representations of basic data types, such as integers and floating pointnumbers.
It also covers the principles of the lower level implementation of I/O using pollingand interrupts, and the use of exceptions.
4. Weekly Programme
Week No Lecture Topic
1 Introduction & Concepts
2 Bits, bytes and numbers ( Part I)
3 Bits, bytes and numbers (Part II)
4 Current Program Status Register(CPSR), Conditions and Branches.
5 ARM arithmetic, Data Processing, Loads and Stores;
6 Comparisons and Loops.
7 Bitwise operations, Binary Addition and Signed Numbers.
8 Computer Systems Organization; Addresses and Addressing.
9 Binary Arithmetic operations
10 Digital Logic Operations using ARM.
11 CPU and Computer Architecture including Instruction Pipelining.
12 RISC- CISC Architecture
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title of Book Edition Publisher ISBN
1 Petzold,Charles
2000 The Hidden languageof computer hardware
and software
MicrosoftPress
0-7356-1131-9
2 Hohl,William
2009 ARM AssemblyLanguage:
Fundamentals andtechniques
CRC
3 Furber,Stephen B
2000 ARM system-on-chiparchitecture
2nd Addison-Wesley
4 M.MorrisMano
1993 Computer SystemsArchitecture;
Computer
3rd PrenticeHall
0-1317-5738-5
6. Web Linkhttp://moodle.nottingham.ac.uk/
School of Computer Science
Page 7 of 41
G51MCS – Mathematics for Computer Scientists (10 Credits) – Autumn 2013-2014
1. Pre-requisites & Co-requisites; Assessment DetailsP: None; C: None; A: Coursework 25%; Written Examination 75%
2. LecturerIman Yi Liao (Dr)Contact: 03-87253438 (Office Phone); BB63 (Room)E-mail: Iman.Liao@nottingham.edu.my
3. Summary of ContentThe module covers mathematical concepts relevant to computer science:
Set theory: Definition, membership, operations, construction, cartesianproduct, power sets.
Functions and relations. Boolean algebra: truth tables, propositional calculus including equivalences
and modelling, proof and deduction, induction. Simple number theory: inequalities, floor and ceiling function, greatest
common divisor, modulo arithmetic. Elementary combinatorics. Quantification and predicate logic: Sum and product. Universal and
existential quantification. Linear algebra: matrices Probability: discrete probability, conditional probability
4. Weekly Programme
Week No Lecture Topic
1 (1) Introduction to the module. (2) Set Theory 1: Definition,membership, operations.
2 (1) Set Theory 2: Construction, cartesian product, power sets. (2)Functions.
3 (1) Functions 2. (2) Boolean Algebra.
4 (1) Truth tables. (2) Logic - Propositions Including equivalencesand modelling
5 (1) Logic - Proof and Deduction. (2) Logic - Induction
6 (1) Simple number theory 1. (2) Simple number theory 2.
7 (1) Quantification. (2) Matrices 1.
8 (1) Matrices 2. (2) Predicate Logic 1.
9 (1) Predicate Logic 2. (2) Probability 1.
10 (1) Probability 2. (2) Probability 3.
11 Revision.
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title of Book(Primary)
Edition Publisher ISBN
1 Norman L.Biggs
2003 Discrete Mathematics 2nd OxfordUniversity
Press
0198507178
6. Web Linkhttp://moodle.nottingham.ac.uk
School of Computer Science
Page 8 of 41
G51REQ – Requirement Engineering (10 Credits) – Autumn 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: None; C: None; A: Coursework 100%
2. LecturerBehrang Parhizkar (Mr)Contact: 0172951500 (Mobile Phone); BB47 (Room)E-mail: hani.parkhizkar@nottingham.edu.my
3. Summary of ContentThis module introduces fieldwork as a means of understanding users and developingsystem requirements based on direct observations of user activities. It exploresfieldwork methods, fieldwork data analysis and requirements specification.
4. Weekly Programme
Week No Lecture Topic
1 Requirements Engineering Process (process models, actors in RE)
2 Requirements Engineering Process (process support & improvement)
3 Requirements Elicitation (elicitation process & techniques)
4 Requirements Elicitation (ethnography & fieldworks)
5 Requirements Analysis (prototyping, requirement analysis andnegotiation)
6 Requirements Validation (req. reviews)
7 Requirements Validation (model validation, requirement testing)
8 Requirements Management (stable & volatile requirements)
9 Requirements Management (change management, traceability)
10 Requirements Management (change Management)
11 Group Assignment Presentation
12 Revision
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title of Book Edition Publisher ISBN
1 Sommerville,Ian
2011 SoftwareEngineering
9th. Pearson 0-1370-5346-0
6. Web Linkhttp://moodle.nottingham.ac.uk/
School of Computer Science
Page 9 of 41
G51PRG – Introduction to Programming (10 Credits) – Autumn 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: None; C: G51CSA; A: Coursework 100%
2. LecturerChew Sze-Ker (Mr)Contact: 03.89248140 (Office Phone); BB59 (Room)E-mail: chew.sze-ker@nottingham.edu.my
3. Summary of ContentYou’ll cover the basic concepts of programming including: problem solving;debugging; elementary programming; functions and procedures; memory andpointers; and data structures. You’ll spend around six hours per week in lectures,computer classes and tutorials. The basic concepts of programming including:problem solving, compiling, editing, debugging, elementary programming,conditionals, loops, functions and procedures, arrays and strings, direct and indirectaccess, memory and pointers, iteration and recursion and data structures.Please note: This is a non-compensatable module.
4. Weekly Programme
Week No Lecture Topic
1 Introduction to C compiler/Getting started with GCC
2 Procedures, Parameters, Values and Variables
3 Operators and Precedence
4 Conditionals and Loops
5 Pointers and scanf()
6 Arrays and Strings
7 String Processing
8 File Input/Output
9 Structures
10 Heap arrays and Linked List
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title of Book Edition Publisher ISBN
1 Vine,Michael A
2009 C programmingfor the absolute
beginner
2nd CengageLearning
1-598-63480-1
6. Web Linkhttp://moodle.nottingham.ac.uk/
School of Computer Science
Page 10 of 41
G51APS – Algorithmic Problem Solving (10 Credits) – Autumn 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: None; C: G51MCS; A: Written Examination 100%
2. LecturerSiang Yew Chong (Dr)Contact: 03-89248148 (Office Phone); BB57 (Room)E-mail: Siang-Yew.Chong@nottingham.edu.my
3. Summary of ContentThis module revolves around various problem solving tasks, such as solving logicand other puzzles, and finding winning strategies for simple two-person games.Through this, you will be introduced to problem solving principles, such as formalmathematical modelling of a problem and recursion.
4. Weekly Programme
Week No Lecture Topic
1 Introduction.
2 Invariants.
3 Crossing a River.
4 Games.
5 Knights and Knaves.
6 Induction.
7 Coursework Discussion.
8 Fake-Coin Detection.
9 Towers of Hanoi.
10 Revision.
11 Coursework Discussion.
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title of Book Edition Publisher ISBN
1 RolandBackhouse
2008 AlgorithmicProblem Solving
2 Paul Zeitz 2007 The Art andCraft of Problem
Solving
2nd John Wileyand Sons
978-0-471-
78901-7
6. Web Linkhttp://moodle.nottingham.ac.uk/
School of Computer Science
Page 11 of 41
G51UST – UNIX and Software Tools (10 Credits) – Autumn 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: None; C: G51PRG; A: Coursework 50%, Written Examination 50%
2. LecturerBen Phear (Mr)Contact: CFFRC Offices; 2nd Floor B BlockEmail: ben.phear@nottingham.edu.my
3. Summary of ContentThis 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, documentationsystems with particular reference to programming languages used widely intheSchool's teaching (eg. Java).
Software Engineering Tools: build management systems and version controlsystems. The use of UNIX shell scripting and software tools to create specificbespoke tools and components.
4. Weekly Programme
Week No Lecture Topic
1 Introduction, overview and module contents
2 The UNIX Filestore and File Processing
3 Editing Files and EMACS
4 UNIX Processes and UNIX Network Utilities
5 Searching and Regular Expressions (Regex)
6 Shell Programming and The sed Editor
7 The AWK programming Language
8 Version Control Systems
9 Compilers, Interpreters and Debuggers
10 Make
11 Module Summary and Revision
5. ResourcesThe Internet, Google, UNIX/GNU Main-pages, any book that covers module topiccontent. There is no formal prescribed text for this module.
6. Web Linkhttp://moodle.nottingham.ac.uk/
School of Computer Science
Page 12 of 41
G52SEM – Software Engineering Methodologies (10 Credits) – Autumn 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: G51FSE; C: None; A: Coursework 40%, Written Examination 60%
2. LecturerKR Selvaraj (Mr)Contact: 03-89248139 (Office Phone); BB60 (Room)E-mail: kr.selvaraj@nottingham.edu.my
3. Summary of ContentThis module is part of the Software Engineering theme. It covers three mainaspects 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 ProgramEvaluation and Review Technique (PERT).
software documentation: the practice of good software documentation will bedemonstrated
4. Weekly Programme
Week No Lecture Topic
1 Introduction and Goals, Software Project Management, Vision andScope
2 Use Case Analysis
3 Project Definition, Traditional Project Management
4 Agile teams and Interactive approaches
5 Estimating and Scheduling a project. An overview of prince 2
6 Tools and Infrastructure, Software Development Infrastructure forsuccessful projects
7 Software Testing, TDD and Unit Testing with JUnit
8 Domain Modelling, Project Monitoring
9 Software Design, UML 2.0 as a design specification tool
10 Using design patterns, Achieving loose coupling, Clean code andrefactoring
11 Automated build and test, Producing documentation
12 Revision
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title ofBook
Edition Publisher ISBN
1 AndrewStellman
andJenniferGreene
2006 Appliedsoftwareproject
management
1st O'Reilly Media 0-5960-0948-8
2 Cockburn,Alistair
2001 Writingeffective use
cases
1st Addison-Wesley 0-2017-0225-8
6. Web Linkhttp://moodle.nottingham.ac.uk/
School of Computer Science
Page 13 of 41
G52ADS – Algorithms and Data Structures (10 Credits) – Autumn 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: G51MCS, G51OOP; C: None; A: Coursework 25%, Written Examination 75%
2. LecturerMak Yoke Lai (Ms)E-mail: YokeLai.Mak@nottingham.edu.my
3. Summary of ContentThis module introduces you to the basics of how to specify abstract data types anduse them to design programs. You’ll cover the use of mathematical descriptions ofthe computational resources needed to support algorithm design decisions. Theemphasis is upon understanding data structures and algorithms so as to be able toselect them appropriately for solving a given problem. You’ll spend around threehours per week studying for this module in lectures and computer classes.
4. Weekly Programme
Week No Lecture Topic
1 Introduction, overview and module contents
2 Algorithms and analysis, data structures/abstract data types; Sortingmethods I: bubble sort, selection sort and insertion sort
3 Sorting methods II: merge sort and quick sort; Stacks
4 Queues; Recursion
5 Linked list (single and double ended); Graph, DFS and BFS
6 Shortest path algorithms, minimum spanning tree
7 Topological sort; Hash table
8 Heaps, heap sort, priority queue
9 Tree, tree traversal; Binary search tree, balanced binary search treepart 1 (AVL tree)
10 Balanced binary search tree part 2 (Red black tree); Multi-way tree(2,3) and (2,3,4) trees
11 Revision and discussion of past exam papers
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title of Book Edition Publisher ISBN
1 MichaelT.Goodrichand Roberto
Tamassia
2011 Data Structuresand Algorithms
in Java
5th John Wiley 0-4703-9880-9
2 Shaffer,Clifford A.
2001 A practicalintroduction todata structuresand algorithm
analysis
2nd Prentice Hall 0-1302-8446-7
6. Web Linkhttp://moodle.nottingham.ac.uk/
School of Computer Science
Page 14 of 41
G52IFR – Introduction to Formal Reasoning (10 Credits) – Autumn 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: G51FUN, G51MCS; C: None; A: Coursework 50%, Written Examination 50%
2. LecturerMichael Chung (Mr)Contact: 03-89248142 (Office Phone); BB58 (Room)E-mail: michael.chung@nottingham.edu.my
3. Summary of ContentThe module introduces methods of formal reasoning relevant for ComputerScientists. It continues and develops further the themes of G51MCS and introducesa mathematical rigorous approach to program construction. The module covers thefollowing 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. Resources
No Name ofAuthor(s)
Year ofPublication
Title of Book Edition Publisher ISBN
1 Bertot, Yves& Castéran,
Pierre
2004 Interactive TheoremProving and
ProgramDevelopment:Coq'Art: TheCalculus ofInductive
Constructions
1st Springer 3-5402-0854-
2
6. Web Linkhttp://moodle.nottingham.ac.uk/
School of Computer Science
Page 15 of 41
G52APR – Application Programming (10 Credits) – Autumn 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: G51OOP; C: None; A: Coursework 100%
2. LecturerMichael Chung (Mr)Contact: 03-89248142 (Office Phone); BB58 (Room)E-mail: michael.chung@nottingham.edu.my
3. Summary of ContentThis module builds on your basic Java programming knowledge by showing howapplications can be built through the use of various example libraries and Java APIs.Topics may include: GUI programming, threads, networking, data processing andcommon design patterns etc.
4. Weekly Programme
Week No Lecture Topic
1 Introduction
2 & 3 GUI Components
4 & 5 Multithreading
6 & 7 Networking
8 & 9 Accessing Database with JDBC
10 & 11 Web Applications
12 Design Patterns
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title ofBook
Edition Publisher ISBN
1 Deitel & Deitel 2007 Java How toProgram
7th Pearson 0-13-613247-2
6. Web Linkhttp://moodle.nottingham.ac.uk/
School of Computer Science
Page 16 of 41
G52GUI – Graphical User Interfaces (10 Credits) – Autumn 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: G51OOP, G52APR; C: None; A: Coursework 100%
2. LecturerChen ZhiYuan (Dr)Contact: 03-89248141 (Office Phone); BB71 (Room)E-mail: Zhiyuan.Chen@nottingham.edu.my
3. Summary of ContentThis module will introduce you to programming concepts and structures byconsidering the Java Swing packages in depth. You’ll explore a wide range ofcomponents, and will consider the other APIs, which allows easy incorporation ofhigh-quality 2D graphics, text, and images in applications, and the use ofIntegrated Development Environments (IDEs), which simplify the construction ofgraphical user interfaces.
4. Weekly Programme
Week No Lecture Topic
1 Introduction, overview and module contents
2 JOptionPane dialogs and JFrame
3 Layout and an event
4 Model View Controller (MVC) Architecture
5 Use JUnit in Eclipse to develop the Data Model
6 Link the Data Model and the view together
7 Developing the Data Model using JUnit Test and link it to the View
8 Add the controller class and a first action listener
9 Add the table focus and item listeners
10 Add a JMenuBar, JMenu and JMenuItem
11 Creating the application using JavaFX, using FXML and adding astylesheet.
12 Revision
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title of Book Edition Publisher ISBN
1 Dan R. Olsen 2010 BuildingInteractiveSystems
1st CourseTechnology
1-4239-0248-3
No Name ofAuthor(s)
Year ofPublication
Title of Book(Secondary)
Edition Publisher’sName
ISBN
1 Swing Tutorial &JAVA 2D Tutorial
Sun Java
6. Web Linkhttp://moodle.nottingham.ac.uk
School of Computer Science
Page 17 of 41
G52IIP – Introduction to Image Processing (10 Credits) – Autumn 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: G51MCS, G51PRG; C: None; A: Coursework 40%, Written Examination 60%
2. LecturerHo Sooi Hock (Mr)Contact: 03-89248145 (Office Phone); BB65 (Room)E-mail: ho.sooi-hock@nottingham.edu.my
3. Summary of ContentThis 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 visualsystem, digital image formation and acquisition, colour models and processing
point processing, spatial filtering, image transforms and frequency domainprocessing, edge detection, image segmentation, image coding and compression
4. Weekly Programme
Week No Lecture Topic
1 Introduction, overview and module contents
2 Digital image fundamentals
3 Point and histogram processing
4 Spatial domain image filtering
5 Image sharpening, edge detection and Hough transform
6 Frequency domain & Fourier transform
7 Image filtering in the frequency domain
8 Image segmentation & representation
9 Object representation
10 Image coding and image compression
11 Revision and discussion of past exam papers
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title of Book Edition Publisher ISBN
1 Gonzalez &Woods
2008 Digital ImageProcessing
3rd PrenticeHall
0-13-168728-X
2 Efford 2000 Digital ImageProcessingUsing Java
1st Addison-Wesley
0-20-159623-7
6. Web Linkhttp://moodle.nottingham.ac.uk
School of Computer Science
Page 18 of 41
G52PAS – Planning and Search (10 Credits) – Autumn 2013-2014
1. Pre-requisites (P) & Co-requisites (C) ; Assessment Details (A)P: G51IAI; C: None; A: Written Examination 100%
2. LecturerSiang Yew Chong (Dr)Contact: 03-89248148 (Office Phone); BB57 (Room)E-mail: Siang-Yew.Chong@nottingham.edu.my
3. Summary of ContentYou will be introduced to advanced Artificial Intelligence (AI) techniques forproblem-solving, searching and planning. Topics covered include: local search;classical planning; reasoning about actions; planning under uncertainty; conditionalplanning; planning with time and resources.
4. Weekly Programme
Week No Lecture Topic
1 Introduction to Search.
2 Local Search and Genetic Algorithms
3 Search and SAT, Search with Non-determinism and Partial Observability.
4 Logical Agents.
5 Situation Calculus.
6 Classical Planning.
7 Classical Planning 2 and Partial Order Planning.
8 Classical Planning: GraphPlan, SatPlan.
9 Classical Planning: Planning with Time and Resources.
10 Classical Planning: Hierarchical Planning and Planning in Non-DeterministicDomains.
11 Revision and Coursework Discussion.
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title of Book Edition Publisher ISBN
1 Stuart J.Russell &
Peter Norvig
2010 ArtificialIntelligence :A
ModernApproach
3rd PrenticeHall
0-13-604259-
7
6. Web Linkhttp://moodle.nottingham.ac.uk/
School of Computer Science
Page 19 of 41
G53GRA – Computer Graphics (10 Credits) – Autumn 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: G51OOP or G51PRG; C: None; Recommended: G51MCS; A: Coursework 50%;Written Examination 50%
2. LecturerIman Yi Liao (Dr)Contact: 03-87253438 (Office Phone); BB63 (Room)E-mail: Iman.Liao@nottingham.edu.my
3. Summary of ContentThis module is part of the Graphics and Vision theme in the School of ComputerScience. It examines the generation of 3D graphics. The main areas are modelling3D worlds by computer, projecting on to 2D displays and rendering 2D views togive them realism. The course explores various methods and the conflictingrequirements of efficiency and realism.
4. Weekly Programme
Week No Lecture Topic
1 Introduction
2 Math for Graphic Programming
3 Modelling
4 Transformation
5 Viewing
6 Projection
7 Clipping
8 Lighting
9 Texture
10 Coursework Discussion
11 Revision
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title of Book(Primary)
Edition Publisher ISBN
1 EdwardAngel &DaveShreiner
2012 InteractiveComputerGraphics: A Top-Down Approachwith Shader-BasedOpenGL
6th Pearson 0-273-75226-X
6. Web Linkhttp://moodle.nottingham.ac.uk
School of Computer Science
Page 20 of 41
G53CWO – Computers in the World (10 Credits) – Autumn 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: None; C: None; A: Coursework 50%; Written Examination 50%
2. LecturerHo Sooi Hock (Mr) [Co-ordinator for Group Teaching]Contact No: 03-89248145 (Office Phone); BB65 (Room)E-mail: ho.sooi-hock@nottingham.edu.my
3. Summary of ContentThe module examines the scope of applications of computers and computing in theworld at large from scientific supercomputers, through PCs, tablets, embeddedcomputers, etc. The module covers various topics such as: dependability ofcomputer-based systems and associated risks; legal liability, data protection andintellectual property issues; social and cultural impacts of computing; the portrayalof computers and computing in the popular media and in fiction; ethical issues incomputing; and professional issues including the role of professional bodies.
4. Weekly Programme
Week No Lecture Topic
1 Ubiquity of Computers, New Developments & Rapid Changes
2 Software Safety
3 Computer Crime
4 Privacy
5 Freedom of Speech
6 Intellectual Property Issues
7 Computers in the Workplace
8 Evaluating & Controlling Technologies
9 Professionalism & Ethical Issues
10 Wrap Up & Discussion
11 Revision
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title ofBook
Edition Publisher ISBN
1 Sarah Baase 2008 Ethics &Computing
3rd Prentice Hall 0-13-600848-4
2 K. Bowyer 2001 Ethics &Computing
1st Wiley-IEEEPress
0-7803-6019-2
6. Web Linkhttp://moodle.nottingham.ac.uk
School of Computer Science
Page 21 of 41
G53SQM – Software Quality Management (10 Credits) – Autumn 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: G52SEM; C: None; A: Coursework 40%, Written Examination 60%
2. LecturerChew Sze-Ker (Mr)Contact: 03.89248140 (Office Phone); BB59 (Room)E-mail: chew.sze-ker@nottingham.edu.my
3. Summary of ContentThrough a two hour lecture each week, you’ll be introduced to concepts andtechniques for software testing and will be given an insight into the use of artificialand computational intelligence for automated software testing. You’ll also reviewrecent industry trends on software quality assurance and testing.
4. Weekly Programme
Week No Lecture Topic
1 Introduction to SQA/Software Quality Factors
2 Components of SQA Systems
3 Pre-project Software Quality/Integrating quality Activities
4 Agile Development I
5 Agile Development II
6 Configuration Management I
7 Configuration Management II
8 Software Reviews
9 Software Testing Strategies/Implementation
10 Software Metrics
11 Revision
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title of Book Edition Publisher ISBN
1 MalikKamna
2006 Software Quality: apractitioner’s
approach
1st McGrawHill
0-070-24873-
7
2 Tian Jeff 2005 Software QualityEngineering: testing,
quality assuranceand quantifiable
improvement
1st Wiley 0-013-06428-
2
6. Web Linkhttp://moodle.nottingham.ac.uk/
School of Computer Science
Page 22 of 41
G53CMP – Compilers (10 Credits) – Autumn 2013-2014
1. Pre-requisites (P) & Co-requisites (C);Assessment Details (A)P: G51FUN, G52MAL; C: None; A: Coursework 25%, Written Examination 75%
2. LecturerTomas Maul (Dr)Contact: 03-89248232 (Office Phone); BB64 (Room)E-mail: Tomas.Maul@nottingham.edu.my
3. Summary of ContentYou’ll examine aspects of language and compiler design by looking at thetechniques and tools that are used to construct compilers for high levelprogramming languages. Topics covered include: parsing; types and type systems;run-time organization; memory management; code generation; and optimization.You’ll spend around four hours each week in lectures and computer classes for thismodule.
4. Weekly Programme
Week No Lecture Topic
1 Administrative Details and Introduction
2 Overview & Lexical Analysis
3 Syntax Analysis 1
4 Syntax Analysis 2
5 Semantic Analysis
6 Intermediate Code Generation 1
7 Intermediate Code Generation 2
8 Run-Time Organization
9 Code Generation
10 Code Optimization
11 Revision
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title of Book Edition Publisher ISBN
1 Aho, Lam,Sethi andUllman
2003 Compilers:Principles,
Techniques &Tools
2nd PrenticeHall
0-201-10194-7
6. Web Linkhttp://moodle.nottingham.ac.uk/
School of Computer Science
Page 23 of 41
G54VIS – Computer Vision (10 Credits) – Autumn 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: G51OOP or G51PRG; C: None; Recommended: G52IIPA: Written Examination 100%
2. LecturerTomas Maul (Dr)Contact: 03-89248232 (Office Phone); BB64 (Room)E-mail: Tomas.Maul@nottingham.edu.my
3. Summary of ContentYou’ll examine current techniques for the extraction of useful information about aphysical situation from individual and sets of images. You’ll cover a range ofmethods and applications, with particular emphasis being placed on theidentification of objects, recovery of three-dimensional shape and motion, and therecognition of events. You’ll spend around three hours a week in lectures andtutorials.
4. Weekly Programme
Week No Lecture Topic
1 Introduction
2 Segmentation as Clustering. Region-based Segmentation.
3 Watersheds. The EM Algorithm.
4 Binocular Stereo. Camera Calibration.
5 Stereo Correspondence. Motion Analysis and Optic Flow.
6 Computing Optic Flow. Issues in Optic Flow.
7 Evaluation: Optic flow and segmentation. Introduction to Tracking.
8 The Kalman Filter. Snakes.
9 Particle Filters and Condensation.
10 Event Detection and Hidden Markov Models.
11 Revision.
5. Resources
No Name ofAuthor(s)
Year ofPublicatio
n
Title of Book Edition Publisher ISBN
1David A.Forsyth &
Jean Ponce2002
ComputerVision: AModern
Approach
1st Prentice Hall0-13-
085198-1
6. Web Linkhttp://moodle.nottingham.ac.uk/
School of Computer Science
Page 24 of 41
G51FUN – Intro to Functional Programming (10 Credits) – Spring 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: G51MCS, G51PRG; C: None; A: Coursework 25%, Written Examination 75%
2. LecturerMichael Chung (Mr)Contact: 03-89248142 (Office Phone); BB58 (Room)E-mail: michael.chung@nottingham.edu.my
3. Summary of ContentIn this module, you’ll be taught the basics of functional programming, coveringtopics including: list processing; pattern matching; recursion over lists; algebraicdata types; and higher-order functions.
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, patternmatching, 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, otherlibrary actions
9 Functional parsers: Introduction, primitive parsers, sequencing parsers, otherlibrary 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. Resources
No Name ofAuthor(s)
Year ofPublication
Title of Book Edition Publisher ISBN
1 GrahamHutton
2007 Programming inHaskell
1st CUP 0-521-69269-5
2 Richard Bird 1988 Introduction toFunctional
Programming usingHaskell
2nd PrenticeHall
0-134-84346-0
6. Web Linkhttp://moodle.nottingham.ac.uk/
School of Computer Science
Page 25 of 41
G51DBS – Database Systems (10 Credits) – Spring 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: G51MCS; C: None; A: Coursework 40%, Written Examination 60%
2. LecturerWai Yee Haw (Ms)E-mail: WaiYee.Haw@nottingham.edu.my
3. Summary of ContentThis module is part of the Software Engineering theme in the School ComputerScience. It introduces database management systems, the design and use ofdatabase systems. The relational database model and the structured databasequery language (SQL) are covered. Throughout the module students are giveninstruction in the use of a relational database management system. Topics coveredinclude: the relational model; entity-relationship modelling, normalisation, anddatabase security.
4. Weekly Programme
Week No Topics
1 Introduction to Database Systems, The Relational Model
2 Database Models & Relational Database
3 Relational Algebra & Entity Relationship Modelling
4 Normalisation
5 SQL Data Definition
6 More SQL – Data Definition Language (I)
7 More SQL – Data Definition Language (II)
8 Data Administration and Security
9 Database Integrity and Security
10 Object-relational & Object-oriented Databases, XML and databases
11 Good and Bad ‘Modern’ Databases
12 Revision
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title of Book Edition Publisher ISBN
1 ThomasConnolly and
CarolynBegg,
2005 Database Systems -A Practical Approach
to Design,Implementation, and
Management
3rd or4th
Addison-Wesley
0-3212-1025-
5
2 Elmasriand SBNavathe
2004 Fundamentals ofDatabase Systems
3rd or4th
Addison-Wesley
0-3212-0448-
4
6. Web Linkhttp://moodle.nottingham.ac.uk/
School of Computer Science
Page 26 of 41
G51FSE – Introduction to Software Engineering (10 Credits) – Spring 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: None; C: None; A: Coursework 30%, Written Examination 70%
2. LecturerTimothy Brailsford (Dr)Contact: 03-89248147 (Office Phone); BB70 (Room)E-mail: tim.brailsford@nottingham.edu.my
3. Summary of ContentThis module introduces the concepts of Software Engineering as a discipline and willprovide an overview of the whole software development process. A selection offundamental 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 Lecture Topic
1 Introduction to Object-oriented Software Engineering (OOSE) – Part 1
2 Introduction to Object-oriented Software Engineering (OOSE) – Part 2
3 Introduction to Object-oriented Software Engineering (OOSE) – Part 3
4 Object-orientation (OO)
5 Object-oriented Analysis (OOA)
6 Object-oriented Design (OOD) – Part 1
7 Object-oriented Design (OOD) – Part 2
8 Formal Specification
9 Architectural Design
10 Testing Principles and Managing Software Project – Part 1
11 Testing Principles and Managing Software Project – Part 2Revision and review past examination questions
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title of Book Edition Publisher ISBN
1 IanSommerville
2006 SoftwareEngineering
8th AddisonWesley
0-3213-1379-9
2 Roger SPressman
2004 SoftwareEngineering: APractitioner's
Approach
6th McGraw-Hill
0-0730-1933-8
6. Web Linkhttp://moodle.nottingham.ac.uk
School of Computer Science
Page 27 of 41
G51OOP – Object Oriented Programming (10 Credits) – Spring 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: G51PRG; C: None; A: Coursework 100%
2. LecturerChew Sze-Ker (Mr)Contact: 03-89248140 (Office Phone); BB59 (Room)E-mail: chew.sze-ker@nottingham.edu.my
3. Summary of ContentSpending two hours in lectures each week until towards the end of the module, youwill study the basic concepts of object-oriented programming and design, including:classes and objects; inheritance; interfaces; polymorphism and class discoverytechniques. Your studies will be supported by practical examples using the Javaprogramming language in a two hour computer class most weeks.Please note: This is a non-compensatable module.
4. Weekly Programme
Week No Lecture Topic
1 Introduction to Objects/Classes
2 Inheritance
3 Polymorphism
4 Event Handling and Exception
5 File Processing
6 Interfaces and Inner Classes
7 Linked Data Structures
8 Graphical User Interfaces I
9 Graphical User Interfaces II
10 Coursework discussions
11 Revision
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title ofBook
Edition Publisher ISBN
1 Savitch,Walter J
2004 Absolute Java 4th Pearson 0-3212-0567-7
2 Bishop J.M. 2001 Java Gently 3rd AddisonWesley
0-2017-1050-1
3 Deitel, Paul J 2007 Java: How toProgram
7th Pearson 0-1361-3247-2
6. Web Linkhttp://moodle.nottingham.ac.uk/
School of Computer Science
Page 28 of 41
G51IAI – Introduction to Artificial Intelligence (10 Credits) – Spring 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: None; C: None; A: Written Examination 100%
2. LecturerHo Sooi Hock (Mr)Contact No: 03-89248145 (Office Phone); BB65 (Room)E-mail: ho.sooi-hock@nottingham.edu.my
3. Summary of ContentThis 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 Lecture Topic
1 Introduction, overview and module contents
2 Reasons for AI; History of AI; Philosophy of AI
3 Problem formulation
4 Uninformed search – BFS, DFS, UCS, DLS, IDS
5 Heuristic search techniques – BFS, GFS and A*
6 Tutorials on search techniques; Discussion on courseworks
7 Game playing techniques
8 Introduction to neural networks
9 Constraint satisfaction problems
10 Knowledge representations
11 Revision
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title of Book Edition Publisher ISBN
1 S. J. Russell &Peter Norvig
2010 AI :A ModernApproach
3rd Prentice Hall 0-13-604259
-7
2 George F Luger 2008 AI:Structuresand strategiesfor Complex
Problem Solving
6th AddisonWesley
0-321-54589-
3
6. Web Linkhttp://moodle.nottingham.ac.uk
School of Computer Science
Page 29 of 41
G51WPS – Web Programming and Scripting (10 Credits) – Spring 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: G51PRG; C: None; A: Coursework 50%, Written Examination 50%
2. LecturerBen Phear (Mr)Contact: CFFRC Offices; 2nd Floor B BlockE-mail: Ben.phear@nottingham.edu.my
3. Summary of ContentThis course will introduce a broad spectrum of web programming technologies. Itwill begin with an overview of how the Internet and the Web work, includingfundamentals 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 Lecture Topic
1 Introduction, overview and module contents
2 Computer Communications and Networks, and TCP/IP
3 Web browsers, servers, and HTTP
4 HTML
5 Cascading Style Sheets (CSS)
6 Javascript
7 Server-side Interaction
8 PHP
9 Web Usability
10 XML
11 Web Application Frameworks and Module Summary and Revision
5. Resources
The Internet, Google, UNIX/GNU Main-pages, any book that covers module topiccontent. There is no formal prescribed text for this module.
6. Web Linkhttp://moodle.nottingham.ac.uk/
School of Computer Science
Page 30 of 41
G52CCN – Comp Communications and Networks (10 Credits) – Spring 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: G51MCS; C: None; A: Written Examination 100%
2. LecturerKR Selvaraj (Mr)Contact: 03-89248139 (Office Phone); BB60 (Room)E-mail: kr.selvaraj@nottingham.edu.my
3. Summary of ContentThis module is part of the Net-Centric Computing theme in the School of ComputerScience. This module will give you an overview of technologies including datatransmission techniques, Local Area Networks, Wide Area Networks, networksecurity, and network applications. You’ll pay particular attention to the internetenvironment and TCP/IP protocols. You’ll spend around two hours each week inlectures for this module.
4. Weekly Programme
Week No Topics
1 - 3 Part 1: Data Transmission1. Introduction, Transmission media2. Local asynchronous communication and RS-2323. Long distance communication (carriers and modems)
4 - 6 Part 2: Packet Transmission5. Packets, frames and error detection6. Local Area Networks7. Hardware addressing and frame types8. LAN wiring and physical topology9. Extending LANs10.WAN technologies and routing11. Ownership, service and performance
7 - 8 Part 3: Internetworking12. Protocols and layering13. Internetworking - concepts14. IP addressing15. IP datagrams16. Future IP17. Transport Control Protocol (TCP)
9 - 10 Part 4 : Introduction to Computer and Network Security
11 - 12 Part 5: Applications18. Client-Server Interaction19. The Socket API20. Example applications21. Revision
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title of Book Edition Publisher ISBN
1 Douglas E.Comer
2004 ComputerNetworks and
Internets
4th PrenticeHall
0-1312-3627-X
6. Web Linkhttp://moodle.nottingham.ac.uk/
School of Computer Science
Page 31 of 41
G52CON – Concepts of Concurrency (10 Credits) – Spring 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: G51MCS, G51OOP; C: None; A: Written Examination 100%
2. LecturerAbdur Rakib (Dr)Contact: 03-89248137 (Office Phone); BB72 (Room)E-mail: abdur.rakib@nottingham.edu.my
3. Summary of ContentThis module introduces the basic principles of concurrent programming and theiruse in designing computer programs. It covers concurrency primitives for sharedmemory and distributed implementations of concurrency, the correctness ofconcurrent algorithms, and concurrent programming in Java. Building on thesebasic principles, it explains how concurrency primitives and algorithms can be usedto solve some common problems in concurrent programming, e.g., the producer-consumer problem, the readers and writers problem, client server problems etc.Topics include: hardware support for concurrency, mutual exclusion and conditionalsynchronisation, semaphores, monitors, RPC and rendezvous, safety and livenessproperties of concurrent algorithms, proving properties using assertional reasoningand model checking, and the use of Java threads, synchronized methods, andmonitors.
4. Weekly Programme
Week No Lecture Topic
1 Introduction, overview and module contents
2 Operating System Processes
3 Processes & Threads
4 Inter-process Communication and Synchronisation
5 Critical Sections and Atomic Actions
6 Mutual Exclusion Algorithms
7 Semaphores
8 Monitors
9 Monitors in Java
10 Syncronization in Java
11 Message Passing, Remote Invocation
12 Proving Correctness, Model Checking
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title of Book Edition Publisher ISBN
1 Andrews 2000 Foundations ofMultithreaded,
Parallel andDistributed
Programming
1st Addison-Wesley
0-2013-5752-
6
6. Web Linkhttp://moodle.nottingham.ac.uk/
School of Computer Science
Page 32 of 41
G52MAL – Machines and their Languages (10 Credits) – Spring 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: G51FUN, G51MCS, G51PRG; C: None;A: Coursework 25%, Written Examination 75%
2. LecturerTomas Maul (Dr)Contact: 03-89248232 (Office Phone); BB64 (Room)E-mail: Tomas.Maul@nottingham.edu.my
3. Summary of ContentYou’ll investigate classes of formal language and the practical uses of this theory,applying this to a series of abstract machines. You’ll focus in particular on languagerecognition, but will study a range of topics including: finite state machines; regularexpressions; context-free grammars; and Turing machines. You’ll spend around twohours per week in lectures studying for this module.
4. Weekly Programme
Week No Lecture Topic
1 Introduction, overview and module contents
2 Alphabets, words and languages.
3Automata Theory; Deterministic and Non-deterministic FiniteAutomata (DFAs and NFAs).
4 NFA & DFA equivalence and other matters.
5 Regular Expressions.
6 DFA Minimization and Proving Languages to be Not Regular.
7 Pushdown Automata (PDA).
8 Context-free Grammars (CFG).
9 PDAs, CFGs and Derivation trees.
10 Disambiguation and Parsing.
11 Context-sensitive grammars, Turing machines and Decidability.
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title of Book Edition Publisher ISBN
1 John Hop Croft,Rajeev Motwani,Jeffrey.D.Ullman
2007 Introduction toAutomataTheory,
Languages andcomputation
3rd AddisonWesley
0-3214-7617-
4
6. Web Linkhttp://moodle.nottingham.ac.uk/
School of Computer Science
Page 33 of 41
G52CPP – C++ Programming (10 Credits) – Spring 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: G51PRG, G51OOP; C: None; A: Coursework 40%, Written Examination 60%
2. LecturerMichael Chung (Mr)Contact: 03-89248142 (Office Phone); BB58 (Room)E-mail: michael.chung@nottingham.edu.my
3. Summary of ContentThe course will cover programming material and concepts necessary to obtain athorough understanding of the C++ programming language.
4. Weekly Programme
Week No Lecture Topic
1 Introduction
2 Introduction to Classes and Objects
3 Classes
4 Classes (cont.)
5 Operator overloading
6 Inheritance in C++
7 Polymorphism in C++
8 Templates
9 Stream Input/Output, Class String
10 Exception Handling
11 File Processing
12 STL
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title ofBook
Edition Publisher ISBN
1 Deitel & Deitel 2008 C++ How toProgram
6th Pearson 0-13242701-
X
6. Web Linkhttp://moodle.nottingham.ac.uk/
School of Computer Science
Page 34 of 41
G52HCI – Human Computer Interaction (10 Credits) – Spring 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: None; C: None; A: Coursework 100%
2. LecturerChen ZhiYuan (Dr)Contact: 03-89248141 (Office Phone); BB71 (Room)E-mail: Zhiyuan.Chen@nottingham.edu.my
3. Summary of ContentThis module is part of the Human-Computer Interaction theme in the School ofComputer 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 thisknowledge in the design of usable interactive computer systems. The module willintroduce the concept of usability, examine different design approaches andevaluation methods and illustrate the principles through an exploration of a numberof case studies.
4. Weekly Programme
Week No Lecture Topic
1 Introduction, overview and module contents
2 Understanding Users - The Cognitive Perspective
3 Understanding users - Ethnography
4 Understanding users - Organisational Context
5 Understanding Users – Art and Design Perspective
6 Requirements
7 Designing GUIs
8 Participatory design and prototyping
9 Evaluating Interfaces
10 The Future of the Interface
11 Revision
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title of Book Edition Publisher ISBN
1 HelenSharp,Yvonne
Rogers &JennyPreece
2007 InteractionDesign: Beyond
HumanComputerInteraction
2nd Wiley 0-4700-1866-6
2 BenSchneiderm
an &CatherinePlaisan
2010 Designing theUser Interface:Strategies for
Effective Human-ComputerInteraction
5th Addison-Wesley
0-3215-3735-1
6. Web Linkhttp://moodle.nottingham.ac.uk
School of Computer Science
Page 35 of 41
G52APT – AI Programming Techniques (10 Credits) – Spring 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: G51PRG, G52PAS; C: None; A: Coursework 25%, Written Examination 75%
2. LecturerChew Sze-Ker (Mr) (Co teach with Chong Siang Yew (Dr))Contact: 03.89248140 (Office Phone); BB59 (Room)E-mail: chew.sze-ker@nottingham.edu.my
3. Summary of ContentThis module introduces you to basic Artificial Intelligence (AI) programmingtechniques and explains how these can be used to solve typical AI problems. Wewill cover various modern AI algorithms; lists and other data structures; and AIprogramming patterns. You’ll spend around four hours per week in lectures andcomputer classes studying for this module.
4. Weekly Programme
Week No Lecture Topic
1 Introduction, Prolog syntax
2 Prolog execution, Recursive programs
3 Lists
4 Backtracking, second order programming
5 Depth first search, iterative deepening search
6 Breadth first search, state representation
7 Non-path problems, forward planning
8 Regression planning, further regression
9 Partial order planning
10 Revision
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title of Book Edition Publisher ISBN
1 Bratko, Ivan 2012 PrologProgramming for
ArtificialIntelligence
4th Prentice Hall 9-7803214174
66
2 Sterling &Shapiro
1994 The Art of Prolog 2nd MIT Press 0-2621-9338-8
3 Russell &Norvig
2010 ArtificialIntelligence: A
Modern Approach
3rd Pearson 0-1320-7148-7
6. Web Linkhttp://moodle.nottingham.ac.uk
School of Computer Science
Page 36 of 41
G53OPS – Operating Systems (10 Credits) – Spring 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: 51PRG, G52CON; C: None; A: Written Examination 100%
2. LecturerKR Selvaraj (Mr)Contact: 03-89248139 (Office Phone); BB60 (Room)E-mail: kr.selvaraj@nottingham.edu.my
3. Summary of ContentThis module is part of the Operating Systems and Architecture theme in the Schoolof Computer Science. It covers the fundamental principles that underpin operatingsystems. Topics that are covered include the architecture of operating systems,process management and memory management, storage, and security. This coursehas two hours of lectures per week and will provide you with a broad overview ofoperating systems, helping you to better understand their functionality and thehardware abstractions and services that they provide to application programs.
4. Weekly Programme
Week No Lecture Topics
1 Introduction and background
2 Memory Management Part I
3 Memory Management Part II
4 Memory Management Part III
5 Processes Scheduling Part I
6 Processes Scheduling Part II
7 Processes Scheduling Part III
8 File Systems Part I
9 File Systems Part II
10 Input/output processes Part I
11 Input/output processes Part II
12 Summary and Revision
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title ofBook
Edition Publisher ISBN
1 Andrew S.Tanenbaum
2001 ModernOperatingSystems
2nd PrenticeHall
0-13-031-358-0
2 AbrahamSilberschatz andPeter Galvin and
Greg Gagne
2003 OperatingSystem
Concepts
6th John Wiley&
sons
0-471-26272-2
3 AbrahamSilberschatz andPeter Galvin and
Greg Gagne
2003 AppliedOperatingSystem
Concepts
1st John Wiley&
sons
0-471-263-14-
1
6. Web Linkhttp://moodle.nottingham.ac.uk
School of Computer Science
Page 37 of 41
G53ELC – Enterprise Level Computing (10 Credits) – Spring 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: G52CCN, G51DBS, G51OOP; C: None; A: Written Examination 100%
2. LecturerChen ZhiYuan (Dr)Contact: 03-89248141 (Office Phone); BB71 (Room)E-mail: Zhiyuan.Chen@nottingham.edu.my
3. Summary of ContentThis module is part of the Net-Centric Computing theme in the School of ComputerScience. It provides an overview of more advanced Web architectures andtechnologies. In particular it will cover the development of web services through theuse of standards such as XML, SOAP, WSDL and UDDI and consider how webservices can be used to implement a Service Oriented Architecture (SOA). Thismodule explains how modern enterprises construct computer applications that aredistributed over an intranet using a variety of servers and clients. Multi-tieredarchitectures using state-of-the-art distributed system technologies will be coveredin a context of object-oriented design and implementation as distributedcomponents.
4. Weekly Programme
Week No Lecture Topic
1 Introduction, overview and module contents
2 Why use Object-Oriented Systems?
3 Web Services
4 Client Choices
5 Software Patterns and Enterprise Architectures
6 Enterprise Authentication Patterns
7 Domain and Entity Modelling
8 Persistence Layer and ORMs
9 MOM and JMS
10 Presentation Layer
11 Virtualization Layer
12 Cloud Computing
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title of Book Edition Publisher ISBN
1 Farley, Jim 2002 Java enterprisein a nutshell
3rd O’Reilly 0-5961-0142-
2
2 Chu-Carroll,Mark C.
2011 Code in thecloud
1st PragmaticBookshelf
9-7819343566
30
6. Web Linkhttp://moodle.nottingham.ac.uk
School of Computer Science
Page 38 of 41
G53SEC – Computer Security (10 Credits) – Spring 2013-2014
1. Pre-requisites & Co-requisites; Assessment DetailsP: G52CCN or equivalent knowledge of computer networks; C: None;A: Coursework 40%, Written Examination 60%
2. LecturerTBA
3. Summary of ContentThe module covers the following topics: access control, reference monitors, securitymodels, cryptography, cryptanalysis, network security and software security.
4. Weekly Programme
Week No Lecture Topic
1 Introduction & Overview
2 Foundations of Computer Security
3 Access Control
4 Reference Monitors
5 Security Models
6 Other Security Models
7 Cryptography 1
8 Cryptography 2
9 Network Security
10 Software Security
11 Student Presentations & Discussions
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title of Book Edition Publisher ISBN
1 DieterGollmann
2006 ComputerSecurity
2nd John Wiley 0-4708-6293-
9
2 RossAnderson
2008 SecurityEngineering
2nd Prentice-Hall 0-4700-6852-
3
6. Web Linkhttp://moodle.nottingham.ac.uk
School of Computer Science
Page 39 of 41
G53NMD – New Media Design (10 Credits) – Spring 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: None; C: None; A: Coursework-1 25%, Coursework-2 75%
2. LecturerTimothy Brailsford (Dr)Contact: 03-89248147 (Office Phone); BB70 (Room)E-mail: tim.brailsford@nottingham.edu.my
3. Summary of ContentThis module aims to:
Provide a sound understanding of wide range of concepts, methods andtechniques of Operational Research and Artificial Intelligence that can help indesign of intelligent decision support systems.
Present state-of-the-art of both advanced Operational Research and ArtificialIntelligence methods including multi-criteria decision making, decision making inthe presence of uncertainty, case-based reasoning, etc.Present a variety of examples from industrial and service sectors.
4. Weekly Programme
Week No Lecture Topic
1 Introduction to Multimedia
2 Multimedia Authoring Systems; Interaction and Methaphor in MultimediaDesign
3 Graphics and Still Images Representation; Colour Science and ColorModels
4 Hypertext
5 Media Design: Text, Images, and Sound
6 Scalable Vector Graphics
7 Digital Audio
8 Architecture of Multimedia Systems
9 Synchronized Multimedia Integration Language
10 Digital Video
11 Intellectual Property Rights; Narrative
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title of Book Edition Publisher ISBN
1 Barfield, L 2004 Design for NewMedia:
Interactiondesign for
multimedia andthe web
1st PearsonAddison-Wesley
978-0201596090
2 Li, Z. &Drew,M.
2004 Fundamentals ofMultimedia
- PearsonPrentice-
Hall
978-0130618726
6. Web Linkhttp://moodle.nottingham.ac.uk
School of Computer Science
Page 40 of 41
G54ACC – Advanced Computer Communications (10 Credits) – Spring 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: G52CCN or equivalent; C: None; A: Written Examination 100%
2. LecturerHo Sooi Hock (Mr)Contact No: 03-89248145 (Office Phone); BB65 (Room)E-mail: ho.sooi-hock@nottingham.edu.my
3. Summary of ContentThe course gives a basic understanding of network-related initialization and theoperation of the main Internet protocols. It gives an insight into the servicedefinition and protocols of the most important network applications services. Itconsiders basic network architectures such as the client-server model and the morecomplex distributed systems. Introduction to technologies includes p2p andwireless networking.
4. Weekly Programme
WeekNo
LectureTopic
1 Introduction, Overview & Module Contents
2 IP Subnetting & supernetting; IP Address Depletion
3 Network Auto-configuration; Fragmentation
4 Transport layer protocol and socket programming
5 UDP/TCP comparison; Flow & Congestion Control
6 Advanced Congestion Control
7 IP Multicasting
8 Distributed Systems & Middleware
9 P2P systems
10 Wireless Communications
11 Revision
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title of Book Edition Publisher ISBN
1 Kurose &Ross
2013 ComputerNetworking: A
Top DownApproach
Featuring theInternet
6th Addison-Wesley
0-13-285620-
4
2 Tannenbaum 2011 ComputerNetworks
5th PrenticeHall
0-13-212695-
3
6. Web Linkhttp://moodle.nottingham.ac.uk
School of Computer Science
Page 41 of 41
G54SIM – Simulation for Computer Scientists (10 Credits) – Spring 2013-2014
1. Pre-requisites (P) & Co-requisites (C); Assessment Details (A)P: None; C: None; A: Coursework 100%
2. LecturerChris Roadknight (Dr)Contact: 03-87253440 (Office Phone); BB72 (Room)E-mail: Chris.Roadknight@nottingham.edu.my
3. Summary of ContentThis module is part of the Modelling and Optimisation theme in the School ofComputer Science. This module introduces you to three broad simulation paradigmscommonly used in Operations Research and Management Science: SystemDynamics, Discrete Event, and Agent-Based. Covering topics such as theintroduction to the principles of modelling and simulation, conceptual modelling,model implementation, input modelling and output analysis, you will becomecompetent in choosing and implementing the correct method for your particularproblem.
4. Weekly Programme
Week No Lecture Topic
1 Introduction to simulation
2 General principles of simulation
3 Modelling paradigms
4 Simulation paradigms
5 Generating random numbers
6 Input modelling
7 Output data analysis
8 Experimental design and sensitivity analysis
9 Case studies
10 Revision
5. Resources
No Name ofAuthor(s)
Year ofPublication
Title of Book Edition Publisher ISBN
1 Gilbert, G.Nigel
2005 Simulation forthe socialscientist
2nd OpenUniversity
Press
9-78033
5-21600
0
2 Robinson,Stewart
2004 Simulation : thepractice of
modeldevelopment
and use
1st John Wiley 9-78047
0-84772
5
6. Web Linkhttp://moodle.nottingham.ac.uk
School of Computer Science