MODULE SPECIFICATION Template Guidance



|[pic] |School of Computer Science |

UNDERGRADUATE CoMPUTER SCIENCE MODULES FOR 2010-2011

Full Year

|Module |Module Code |Level |

|Software Engineering Group Project |G52GRP |2 |

|Individual Dissertation Single/Joint Honours |G53IDS/J |3 |

Autumn Semester

|Module |Module Code |Level |

|Computer Systems Architecture |G51CSA |1 |

|Mathematics for Computer Science |G51MCS |1 |

|Skills for Communicating Information |G51SCI |1 |

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

|Planning and Search |G52PAS |2 |

|Enterprise Level Computing |G53ELC |3 |

|Computer Vision |G53VIS |3 |

|System and Real-Time Programming |G53SRP |3 |

|Advanced Computer Communications |G54ACC |4 |

Spring Semester

|Module |Module Code |Level |

|Functional Programming |G51FUN |1 |

|Database Systems |G51DBS |1 |

|Foundations of Software Engineering |G51FSE |1 |

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

|Introduction to Image Processing |G52IIP |2 |

|C/C++ for Java Programmers |G52CFJ |2 |

|Human Computer Interaction |G52HCI |2 |

|Operating Systems |G53OPS |3 |

|Computer Security |G53SEC |3 |

|New Media Design |G53NMD |3 |

|Decision Support Methodologies |G53DSM |3 |

MODULE OUTLINE

AUTUMN 2010-2011

1. Module Code

G51CSA

2. Title of Module

Computer Systems Architecture

3. Number of credits

10

4. Level

1

5. Taught Semester and Assessment Period

|Semester |Assessment |

|Autumn |Assessed by end of Autumn Semester |

6. Pre-requisites for admission to the module (if any)

None

7. Co-requisites for the module (if any)

G51PRG Programming

8. Lecturer

Mr KR. Selvaraj

|Contact No: |03-8924-8139 |

|Room No: |BB-60 |

|E-mail: |Kr.selvaraj@nottingham.edu.my |

9. Summary of Content

The module aims to:

• give a broad understanding of the internal operation and structure of a modern PC or workstation;

• show how a computer is built up from a relatively simple digital circuit by successive elaboration to form a number of logical layers of functionality;

• show that hardware and software are often equivalent in this context;

• allow the students to appreciate the typical facilities and mechanisms underlying the operation of various high-level programming operations and facilities;

• allow the students to appreciate the key conceptual steps underlying the evolution or realisation of a conventional stored-program digital computer.

10. Learning Outcomes

Knowledge and Understanding

• Ability to understand simple assembly language programs and the major components (especially hardware) which make up a computer system.

Professional Skills

• To be able to program in assembly language.

11. Weekly Programme

|Week |Lecture |

|No |Topics |

| |Introduction & Concepts including Computer Evolution, performance & levels of abstraction, and von Neumann architecture.|

|1 | |

|2 |Data and Program Representation I , Introduction to SPIM |

|3 |Data and Program Representation II; MIPS 32, Arithmetic, and System I/O. |

|4 |Computer Systems Organization |

|5 |Addressing modes and formats |

|6 |Binary Arithmetic operations, Assembly Language |

|7 |Instruction set and formats |

|8 |Memory Systems. MIPS Procedure calling conventions and recursion. |

|9 |Interrupts, Exception and I/O |

|10 |CPU and Computer Architecture including Instruction Pipelining, Caching, Parallel Architecture. |

|11 |RISC- CISC Architecture |

|12 |Revision |

1. Assessment details

25% Coursework; 75% Written Examination

2. Resources

Suggested primary texts

|No |Name of Author(s) |Year of |Title of Book |Edition |Publisher’s Name |ISBN |

| | |Publication | | | | |

|1 |David A. Patterson, John L.|2009 |Computer organization and |3rd or 4th |Elsevier/Morgan Kaufmann, |9780123744937 |

| |Hennessy ; with a | |design : the |ed. | | |

| |contribution by Peter J. | |hardware/software interface| | | |

| |Ashenden, James R. Larus, | | | | | |

| |Daniel J. Sorin,, | | | | | |

Suggested secondary texts

|No |Name of Author(s) |Year of |Title of Book |Edition |Publisher’s Name |ISBN |

| | |Publication | | | | |

|1 |Douglas E. Comer |2005 |Essentials of Computer |3rd or 4th |Prentice Hall |0131964267 |

| |M. Morris Mano | |Architecture; |ed. | | |

| |William Stallings | |Computer Systems |3rd ed. | | |

|2. | |1993 |Architecture; | |PHI, Englewood Cliffs, N.J.|0131757385 |

| | | |Computer Organization & | |Prentice Hall | |

| | | |Architecture |6th ed. | | |

|3. | | | | |Prentice Hall | |

| | |2003 | | | |0130493074 |

3. Web Link



1. Module Code

G51MCS

2. Title of Module

Mathematics for Computer Scientists

3. Number of credits

10

4. Level

1

5. Taught Semester and Assessment Period

|Semester |Assessment |

|Autumn |Assessed by end of Autumn Semester |

6. Pre-requisites for admission to the module (if any)

None

7. Co-requisites for the module (if any)

None

8. Lecturer

Tomas Maul (Dr)

|Contact No: |03-89248232 |

|Room No: |BB64 |

|E-mail: |Tomas.Maul@nottingham.edu.my |

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

10. Learning Outcomes

Knowledge and Understanding

• Understanding of basic mathematical concepts, definitions and notation.

Intellectual Skills

• The ability to understand and apply simple logical reasoning.

Professional and Transferable Skills

• The ability to evaluate available mathematical techniques and select those appropriate to a given problem.

11. Weekly Programme

|Week |Lecture |

|No |Topic |

|1 |Introduction to the module. Some puzzles and games. |

|2 |Propositional Logic. |

|3 |Double Negation Elimination and Excluded Middle. Introduction to truth tables. Boolean Algebra. |

|4 |Number systems, order, floor, ceiling. Divisibility, quotient and remainder. |

|5 |Recursive Definitions. Euclid's Algorithm, Summations. |

|6 |Induction. Summary of Arithmetics. |

|7 |Sets and Functions 1 |

|8 |Sets and Functions 2 |

|9 |Quantifiers and finite sets. The pigeonhole principle, binomial coefficients. |

|10 |Pascal's Triangle and Hilbert's Hotel. Modular Arithmetic. |

|11 |Revision. |

12. Assessment details

Coursework 25%; Written Examination 75%.

13. Resources

Suggested primary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

|1 |Norman L. Biggs |2003 |Discrete Mathematics |2nd |Oxford University Press |0198507178 |

| | | | | | | |

Suggested secondary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

|1 |Douglas E. Ensley & J. |2005 |Discrete Mathematics: |1st |Wiley |0471476021 |

| |Winston Crawley | |Mathematical Reasoning | | | |

| | | |and Proof with Puzzles,| | | |

| | | |Patterns, and Games. | | | |

14. Web Link



1. Module Code

G51SCI

2. Title of Module

Skills for Communicating Information

3. Number of credits

10

4. Level

1

5. Taught Semester and Assessment Period

|Semester |Assessment |

|Autumn |Assessed by end of Autumn Semester |

6. Pre-requisites for admission to the module (if any)

None

7. Co-requisites for the module (if any)

None

8. Lecturer

Michael Chung (Mr)

|Contact No: |03-89248142 |

|Room No: |BB58 |

|E-mail: |michael.chung@nottingham.edu.my |

9. Summary of Content

This module provides students with ability to search, gather and present information using a wide range of media. In the course of these studies the following topics are covered:

• Study skills and use of English;

• Report writing, preparation of slides and making a presentation.

10. Learning Outcomes

Professional Skills

• Develop and evaluate methods of presenting information and data

Transferable Skills

• Enhanced skills in spelling, grammar, report writing, presentation planning, slide preparation and oral presentation

11. Weekly Programme

|Week |Lecture |

|No |Topic |

|1 |Introduction, overview and module contents |

|2 |Report writing |

|3 |Use of various information sources including library |

|4 |Presentation skills |

|5 |Use of English and study skills |

|6 |Coursework briefing |

|7 |Use of Latexx in documentation I |

|8 |Use of Latexx in documentation II |

|9 |CV preparation |

|10 |Presentation |

12. Assessment details

5 courseworks each worth 20%

13. Resources

Suggested primary texts

Not Applicable

Suggested secondary texts

Not Applicable

14. Web Link



1. Module Code

G51PRG

2. Title of Module

Programming

3. Number of credits

10

4. Level

1

5. Taught Semester and Assessment Period

|Semester |Assessment |

|Autumn |Assessed by end of Autumn Semester |

6. Pre-requisites for admission to the module (if any)

None

7. Co-requisites for the module (if any)

G51CSA Computer Systems Architecture

8. Lecturer

Chew Sze-Ker (Mr)

|Contact No: |03-89248140 |

|Room No: |BB72 |

|E-mail: |Chew.sze-ker@nottingham.edu.my |

9. Summary of Content

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. These concepts will be illustrated by practical example in a suitable language.

10. Learning Outcomes

Knowledge and Understanding

• Understanding of the theory and practice of procedural and object-oriented programming

Intellectual Skills

• Understand and logically evaluate program requirements and specifications. Understand the complex ideas of programming solutions and relate them to particular problems

Professional Skills

• Ability to write procedural programs

Transferable Skills

• The ability to solve problems using programming including mathematical problems, schedule and present their works and to retrieve additional learning materials

11. Weekly Programme

|Week |Lecture |

|No |Topic |

|1 |Introduction, overview and module contents |

|2 |An overview of computers and programming language |

|3 |Basic elements of Java I |

|4 |Basic elements of Java II |

|5 |Inputs/Outputs |

|6 |Control structure I: selection |

|7 |Control structure II: repetition |

|8 |User defined functions, Recursion |

|9 |Arrays |

|10 |Applications of Arrays |

|11 |Revision and discussion of past exam papers |

12. Assessment details

Lab exercises (8*5%) 40%; Multiple choice questions 30%; Lab assessments (3*10%) 30%

13. Resources

Suggested primary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

|1 | | |Absolutely Java |4th | | |

| | | | | | | |

|2 |Bishop J.M. |2001 |Java Gently |3rd |Addison Wesley | |

Suggested secondary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name|ISBN |

|1 |Deitel, Harvey M. |2003 |Java: How to Program |5th |Prentice Hall | |

14. Web Link

To be provided by the module convenor.

1. Module Code

G51APS

2. Title of Module

Algorithmic Problem Solving

3. Number of credits

10

4. Level

1

5. Taught Semester and Assessment Period

|Semester |Assessment |

|Autumn |Assessed by end of Autumn Semester |

6. Pre-requisites for admission to the module (if any)

None

7. Co-requisites for the module (if any)

G51MCS Mathematics for Computer Scientists

8. Lecturer

Dr. Siang Yew Chong

|Contact No: |03-89248148 |

|Room No: |BB57 |

|E-mail: |Siang-Yew.Chong@nottingham.edu.my |

9. 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.

10. Learning Outcomes

Knowledge and Understanding

• How to approach novel problems and formulate a plan for their solution.

Intellectual Skills

• The art of effective reasoning

• Problem decomposition.

• Avoidance of case analysis.

• What to name and what not to name.

Professional Skills

• Problem analysis.

• Ability to identify and communicate relevant information.

Transferable Skills

• The art of effective reasoning, supporting, in particular, formulation and solution of programming problems in sound mathematical terms.

11. Weekly Programme

|Week |Lecture |

|No |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. |

12. Assessment details

Written Examination 100%

13. Resources

Suggested primary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

|1 |Roland Backhouse |2008 |Algorithmic Problem Solving | | | |

| | | | | | | |

Suggested secondary texts

|No |Name of Author(s) |Year of Publication|Title of Book |Edition |Publisher’s Name |ISBN |

|1 |Paul Zeitz |2007 |The Art and Craft of Problem |2nd |John Wiley and Sons |978-0-471-78901-7 |

| | | |Solving | | | |

| | | | | | | |

|2 |Roland Backhouse |2003 |Program Construction: |1st |John Wiley and Sons |978-0-470-84882-1 |

| | | |Calculating Implementations | | | |

| | | |from Specifications | | | |

|3 |George Polya |1973 |How to Solve It: A New Aspect |2nd |Princeton University|978-0-691-08097-0 |

| | | |of Mathematical Method | |Press | |

|4 |Zbigniew Michalewicz |2008 |Puzzle-based Learning: |1st |Hybrid Publishers |978-1-876-46263-5 |

| |and Matthew | |Introduction to critical | | | |

| |Michalewicz | |thinking, mathematics, and | | | |

| | | |problem solving | | | |

14. Web Link



1. Module Code

G51UST

2. Title of Module

Unix and Software Tools

3. Number of credits

10

4. Level

1

5. Taught Semester and Assessment Period

|Semester |Assessment |

|Autumn |Assessed by end of Autumn Semester |

6. Pre-requisites for admission to the module (if any)

None

7. Co-requisites for the module (if any)

G51PRG Programming

8. Lecturer

Dr. VP Kallimani

|Contact No: |03-89248141 |

|Room No: |BB59 |

|E-mail: |vp.kallimani@nottingham.edu.my |

9. Summary of Content

• Basic Unix usage – windowing systems, file system navigation, text editing, useful commands, environmental variables, I/O and file processing pipes, redirections, grep and regular expressions, sed, awk and Unix shell scripting;

• Compilers, interpreters, debuggers, documentation systems with particular reference to programming languages used

• Software engineering tools – build management and version control systems

• The user of Unix shell scripting and software tools to create specific bespoke tools and components

10. Learning Outcomes

Knowledge and Understanding

• The theory of programming in a scripting language, the practice of programming and the strengths and weaknesses of software tools

Intellectual Skills

• Understand complex ideas and relate them to specific problems or questions

Professional Skills

• Write programs and the ability to evaluate available tools and select those that are fit for purpose within a given domain/scenario. The ability to work effectively and ethically with others, in particular in the user of version management tools

Transferable Skills

• The ability to solve problems and the ability to use appropriate tools to work productively in a collaborative environment

11. Weekly Programme

|Week |Lecture |

|No |Topic |

|1 |Introduction, overview and module contents |

|2 |Unix file store |

|3 |File processing |

|4 |Editing, VI; Commands and environment variables |

|5 |Unix processes |

|6 |Search and regular expressions |

|7 |Redirection and piping |

|8 |Shell scripting, Sed |

|9 |Software development and C programs |

|10 |Version control |

|11 |Revision and discussion of past exam papers |

12. Assessment details

Coursework 25%; Written Examination 75%

13. Resources

Suggested primary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

|1 |Arnold Robbins | |UNIX in a Nutshell | |O’Reilly | |

Suggested secondary texts

|No |Name of Author(s) |Year of |Title of Book |Edition |Publisher’s Name |ISBN |

| | |Publication | | | | |

|1 |Behrouz A. Forouzan, Richard| |UNIX and Shell programming: a | | | |

| |F. Gilberg | |textbook  | | | |

| |Graham Glass and King Ables | | | | | |

| |Randal K. Michael | |Unix for Programmers and Users | | | |

| |Amir Afzal. | |Mastering Unix shell scripting | | | |

|2 | |2003 |Unix Unbounded, A Beginning |3rd |Prentice Hall | |

| | | |Approach  | | | |

| | | | | | | |

|3 | | | | | | |

| | | | | | | |

| | | | | | | |

|4 | |2008 | |5th |Prentice Hall | |

14. Web Link



1. Module Code

G52GRP

2. Title of Module

Software Engineering Group Project.

3. Number of credits

20

4. Level

2

5. Semester in which module is taught and Assessment Period

|Semester |Assessment |

|Full Year |Assessed by end of Spring Semester |

6. Pre-requisites for admission to the module (if any)

None

7. Co-requisites for the module (if any)

None

8. Lecturer

V. P. Kallimani (Mr)

|Contact No: |03-89248141 |

|Room No: |BB59 |

|E-mail: |vp.kallimani.@nottingham.edu.my |

9. 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.

10. Learning Outcomes

Knowledge and Understanding

• Group projects may address topics in any area of the curriculum and so may address any of the knowledge and understanding outcomes

Intellectual Skills

• the ability to understand and logically evaluate requirements and specifications

• the ability to think independently while giving due weight to the arguments of others

Professional Skills

• the ability to understand and make use of software engineering methodologies

• the ability to evaluate, select and deploy tools and techniques

• the ability to work effectively and ethically with users

Transferable Skills

• the ability to chair and minute meetings, work effectively in software engineering groups, give short technical presentations and demonstrations, and co-author technical reports

11. Weekly Programme

A typical sequence of lectures as below:

|Week |Lecture |

|No |Topic |

|1 |Overview: Aims, Organisation, Assessment |

|2 |Team Working and Group meetings |

|3 |Version Cotrol with Sub-version |

|4 |Project Management: How to Deliver? |

|5 |Giving an Effective Presentation |

|6 |Report Writing and Peer Marking |

|7 |Enterprise-level Testing: Breaking Software for a Living |

|8 |No Lecture |

|9 |No Lecture |

|10 |Group Project Open Day |

|11 |No Lecture |

12. Assessment details

Group project deliverables: 2 written reports, software, trade-fair-style demonstration, presentation, peer assessment – 80%

Individual reflective statement (individual report) – 20%

13. Resources

Reference texts as relevant to the project topics.

14. Web Link

To be given by the module convenor

1. Module Code

G52SEM

2. Title of Module

Software Engineering Methodologies

3. Number of credits

10

4. Level

2

5. Taught Semester and Assessment Period

|Semester |Assessment |

|Autumn |Assessed by end of Autumn Semester |

6. Pre-requisites for admission to the module (if any)

G51FSE Foundations of Software Engineering; G51ISE (2009/10)

7. Co-requisites for the module (if any)

None

8. Lecturer

Mr KR. Selvaraj

|Contact No: |03-8924-8139 |

|Room No: |BB-60 |

|E-mail: |Kr.selvaraj@nottingham.edu.my |

9. Summary of Content

This module aims to:

• give students an understanding of the tools and techniques which may be used to design commercial software, manage software development projects and document software to a professional standard.

• allow students to effectively analyse requirements for a range of systems, using appropriate tools and techniques; use project management tools effectively and understand soft issues of project management; document software using appropriate tools.

10. Learning Outcomes

Knowledge and Understanding

• Knowledge of the practice of constructing large systems.

• Understanding of the strengths and weaknesses of system specification, design and implementation tools and resources.

Intellectual Skills

• The ability to effectively analyse requirements for a range of systems, using appropriate tools and techniques.

Professional Skills

• The ability to work effectively and ethically with users.

Transferable Skills

• The ability to solve hardware/software analysis problems and write detailed reports on the solutions adopted.

• The ability to use project management tools effectively and understand soft issues of project management.

11. Weekly Programme

|Week |Lecture |

|No |Topic |

|1 |The System Analysis and Design Process – Part 1 |

|2 |The System Analysis and Design Process – Part 2 |

|3 |The System Analysis and Design Process – Part 3 |

|4 |The System Analysis and Design Process – Part 4 |

|5 |The Project Management Process – Part 1 |

|6 |The Project Management Process – Part 2 |

|7 |The Project Management Process – Part 3 |

|8 |The Project Management Process – Part 4 |

|9 |Software Documentation – Part 1 |

|10 |Software Documentation – Part 2 |

|11 |Revision |

12. Assessment details

|Coursework 40%; Written Examination 60% | |

13. Resources

Suggested primary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

|1 |Kendall, Kenneth E |2007 |Systems Analysis and |7th |Prentice Hall |13: 978-0132240857 |

| | | |Design | | | |

Suggested secondary texts

|No |Name of Author(s) |Year of |Title of Book |Edition |Publisher’s Name |ISBN |

| | |Publication | | | | |

|1 |O’Docherty, Mik |2005 |Object-oriented Analysis and|1st |Wiley |ASIN: B000YHHTHQ |

| | | |Design : Understanding | | | |

| | | |System Development with UML | | | |

| | | |2.0, | | | |

14. Web Link



1. Module Code

G52ADS

2. Title of Module

Algorithms and Data Structures

3. Number of credits

10

4. Level

2

5. Taught Semester and Assessment Period

|Semester |Assessment |

|Autumn |Assessed by end of Autumn Semester |

6. Pre-requisites for admission to the module (if any)

G51MCS Mathematics for Computer Scientists;

G51OOP Object-Oriented Programming (G51PRG 2009/10)

7. Co-requisites for the module (if any)

None

8. Lecturer

Chew Sze-Ker (Mr)

|Contact No: |03-89248140 |

|Room No: |BB72 |

|E-mail: |Chew.sze-ker@nottingham.edu.my |

9. Summary of Content

This module introduces the basics of specifying abstract data types and using them to design programs. Commonly used data structures and algorithms are studied in depth. 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.

10. Learning Outcomes

Knowledge and Understanding

• The theory and practice of implementing algorithms; to know of and understand the mathematical properties of algorithms.

Intellectual Skills

• Ability to apply mathematical techniques to algorithms and data structures and understand the their specifications

Professional Skills

• Implementation of data structures and algorithms; evaluation and selection of available tools, applications, algorithms and data structures that are suitable for a given domain/scenario.

Transferable Skills

• The ability to solve problems using a variety of data structures and algorithms; to utilise mathematical techniques when necessary to achieve the above

11. Weekly Programme

|Week |Lecture |

|No |Topic |

|1 |Introduction, overview and module contents |

|2 |Algorithms and analysis, data structures/abstract data types; Sorting methods 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 tree part 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 |

12. Assessment details

Coursework 1 15%; Coursework 2 10%; Written Examination 75%

13. Resources

Suggested primary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

|1 |Michael T.Goodrich and Roberto | |Data Structures and |3rd | | |

| |Tamassia | |Algorithms in Java | | | |

Suggested secondary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

|1 | | |Introduction to algorithms |2nd |MIT Press | |

| | | | | | | |

| |Shaffer, Clifford A.| |A practical introduction to data | | | |

| |Sahni, Sartaj | |structures and algorithm analysis | | | |

|2 | | | | |Prentice Hall | |

| | | |Data structures, algorithms, and | | | |

| | | |applications in Java | |McGraw-Hill | |

|3 | | | | | | |

14. Web Link

To be provided by the module convenor.

1. Module Code

G52IFR

2. Title of Module

Introduction to Formal Reasoning

3. Number of credits

10

4. Level

2

5. Taught Semester and Assessment Period

|Semester |Assessment |

|Autumn |Assessed by end of Autumn Semester |

6. Pre-requisites for admission to the module (if any)

G51FUN Functional Programming; G51MCS Mathematics for Computer Scientists

7. Co-requisites for the module (if any)

None

8. Lecturer

Michael Chung (Mr)

|Contact No: |03-89248142 |

|Room No: |BB58 |

|E-mail: |michael.chung@nottingham.edu.my |

9. Summary of Content

Not Available

10. Learning Outcomes

Not Available

11. Weekly Programme

|Week |Lecture |

|No |Topic |

|1 |Introduction, overview and module contents |

|2 |Coq Basics, Propositional Logic |

|3 |More Coq, Classical Logic |

|4 |Bool and Predicate Logic; General Predicate Logic |

|5 |More Predicate Logic |

|6 |Operations on Sets |

|7 |Peano Arithmetic; Some Algebra |

|8 |Primitive Recursion |

|9 |The omega hotel, diagonalisation |

|10 |Lists |

|11 |Revision and discussion of past exam papers |

12. Assessment details

Coursework 1 25%; Coursework 2 25%; Written Examination 50%

13. Resources

Suggested primary texts

Not Available

Suggested secondary texts

Not Available

14. Web Link

To be provided by the module convenor

1. Module Code

G52APR

2. Title of Module

Application Programming

3. Number of credits

10

4. Level

2

5. Taught Semester and Assessment Period

|Semester |Assessment |

|Autumn |Assessed by end of Autumn Semester |

6. Pre-requisites for admission to the module (if any)

G51OOP Object-Oriented Programming; (G51PRG 2009/10)

7. Co-requisites for the module (if any)

None

8. Lecturer

Michael Chung (Mr)

|Contact No: |03-89248142 |

|Room No: |BB58 |

|E-mail: |michael.chung@nottingham.edu.my |

9. Summary of Content

Not Available

10. Learning Outcomes

Not Available

11. Weekly Programme

|Week |Lecture |

|No |Topic |

|1 |Introduction, overview and module contents |

|2 |GUI Components I |

|3 |GUI Components II |

|4 |Multithreading |

|5 |Networking |

|6 |Coursework Discussion |

|7 |Accessing Databases with JDBC |

|8 |Web Applications I |

|9 |Web Applications II |

|10 |Design Patterns |

|11 |Revision and discussion of past exam papers |

12. Assessment details

Coursework 1 25%; Coursework 2 25%; Written Examination 50%

13. Resources

Suggested primary texts

Not Available

Suggested secondary texts

Not Available

14. Web Link

To be provided by the module convenor

1. Module Code

G52GUI

2. Title of Module

Graphical User Interface

3. Number of credits

10

4. Level

2

5. Taught Semester and Assessment Period

|Semester |Assessment |

|Autumn |Assessed by end of Autumn Semester |

6. Pre-requisites for admission to the module (if any)

G51PRG Programming or G51OOP Object-Oriented Programming or G52APR Application Programming

7. Co-requisites for the module (if any)

None

8. Lecturer

Dr. Wang Wei

|Contact No: |03-89248721 |

|Room No: |BB63 |

|E-mail: |wang.wei@nottingham.edu.my |

9. Summary of Content

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 high-quality 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.

10. Learning Outcomes

Knowledge and Understanding

• Understanding of GUI programming concepts such as event handling and layout management. Knowledge of the Java Swing and 2D APIs. Understanding of design guidelines for graphical interfaces. Intellectual Skills: Ability to exploit event based structuring techniques to drive applications.

Intellectual Skills

• Ability to exploit event based structuring techniques to drive applications.

Professional Skills

• Ability to develop graphical interfaces in Java using the Swing and Java 2D APIs. Ability to apply good design principles in the development process.

Transferable Skills

• The ability to solve GUI implementation problems.

11. Weekly Programme

|Week |Lecture |

|No |Topic |

|1 |Introduction |

|2 |A Simple Swing Example |

|3 |Windows and Events |

|4 |Events in Swing |

|5 |Widgets |

|6 |Components in Swing |

|7 |Layout |

|8 |Layout in Swing |

|9 |Abstract Widgets |

|10 |Abstract Widgets Practice |

|11 |Graphical Design |

12. Assessment details

Coursework 100%

13. Resources

Suggested primary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

|1 |Dan Olsen |2009 |Building Interactive Systems: |1st |Course Technology |978-1423902485 |

| | | |Principles for Human-Computer | | | |

| | | |Interaction | | | |

Suggested secondary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

|1 |- |- |Creating a GUI With |- |Sun Java |- |

| | | |JFC/Swing | | | |

14. Web Link



1. Module Code

G52PAS

2. Title of Module

Planning and Search

3. Number of credits

10

4. Level

2

5. Semester in which module is taught and Assessment Period

|Semester |Assessment |

|Autumn |Assessed by end of Autumn Semester |

6. Pre-requisites for admission to the module (if any)

G5AIAI Introduction to Artificial Intelligence 

7. Co-requisites for the module (if any)

None

8. Lecturer

Prof. Andrzej Bargiela

|Contact No: |03-8924 |

|Room No: |BB70 |

|E-mail: |Andrzej.bargiela@nottingham.ac.uk |

9. 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 optimization. They 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.

10. Learning Outcomes

Knowledge and Understanding

• understanding and experience of AI planning and search techniques.

Intellectual Skills

• the ability to analyse algorithms.

Professional Skills

• enhanced programming skills

• the ability to evaluate available AI and select those appropriate to a given situation

Transferable Skills

• the ability to solve problems and write detailed reports on the solutions adopted

• the ability to retrieve information from appropriate sources

11. Weekly Programme

|Week |Lecture |

|No |Topic |

|1 |Introduction and Overview |

|2 |Local Search and Hill Climbing |

|3 |Simulated Annealing |

|4 |Tabu Search |

|5 |Genetic Algorithms I |

|6 |Genetic Algorithms II |

|7 |Genetic Programming + Exercises |

|8 |Evolutionary Strategies |

|9 |Ant Colony/Algorithms |

|10 |Others Topics of Interests |

|11 |Exercises+ Assignment Discussion |

|12 |Revision |

12. Assessment details

Written Examination (100%)

13. Resources

Suggested primary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

| |Michalewicz, Zbigniew. |1996 |Genetic algorithms + data structures = |3 |Springer |3-540-60676-9|

| | | |evolution programs /  Zbigniew | | | |

| | | |Michalewicz.  -- Third, revised and | | | |

| | | |extended ed. | | | |

Suggested secondary texts

|No |Name of Author(s)|Year of Publication|Title of Book |Edition |Publisher’s Name |ISBN |

| |Goldberg, David. |1989 |Genetic algorithms in search, |1st |Addison-Wesley |0201157675 |

| | | |optimization, and machine | |Professional | |

| | | |learning /  David E. Goldberg | | | |

14. Web Link



1. Module Code

G53IDS/IDY/IDJ

2. Title of Module

Individual Dissertation Single Honours/Software Systems/Joint Honours

3. Number of credits

40 for IDS/IDY and 20 for IDJ

4. Level

3

5. Semester in which module is taught and Assessment Period

|Semester |Assessment |

|Full Year |Assessed by end of Spring Semester |

6. Pre-requisites for admission to the module (if any)

None

7. Co-requisites for the module (if any)

None

8. Lecturer

K. R. Selvaraj (Mr)

|Contact No: |03-89248139 |

|Room No: |BB60 |

|E-mail: |kr.selvaraj@nottingham.edu.my |

9. 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.

10. Learning Outcomes

Knowledge and Understanding

• Individual projects may arise from any area of the curriculum and so may address any of the knowledge and understanding outcomes

Intellectual Skills

• the ability to think independently while giving due weight to the arguments of others

• the ability to understand complex ideas and relate them to specific problems or questions

Professional Skills

• enhanced programming abilities

• the ability to comprehend and apply software engineering methodologies

Transferable Skills

• the ability to plan, organisation and execute project work

• the ability to communicate their results to others

11. Weekly Programme

Supporting lectures to be arranged by the module convenor and weekly meetings to be scheduled with the supervisors

12. Assessment details

Project report in printed and electronic form (PDF). The source code must also be included in the submission – 80%

Demonstration and presentation of project results – 10%

Interim report and presentation of progress during the Autumn semester – 10%

1. Module Code

G53ELC

2. Title of Module

Enterprise Level Computing

3. Number of credits

10

4. Level

3

5. Taught Semester and Assessment Period

|Semester |Assessment |

|Autumn |Assessed by end of Autumn Semester |

6. Pre-requisites for admission to the module (if any)

G52CCN Computer Communications and Networks, G51DBS Data Systems and

G51OOP Object-Oriented Programming (G51PRG 2009/10)

7. Co-requisites for the module (if any)

None

8. Lecturer

Dr. Wang Wei

|Contact No: |03-89248721 |

|Room No: |BB63 |

|E-mail: |wang.wei@nottingham.edu.my |

9. Summary of Content

This module provides an overview of more advanced Web architectures and technologies. 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). The module will also provide an introduction to the Semantic Web. It explains how modern enterprises construct computer applications that are distributed over an intranet. Multi-tiered architectures will be covered in the context of object-oriented design and implementation as distributed components. The module will describe the interface to web technologies and the Internet and cover electronic commerce as an important application. The Java 2 Enterprise Edition will be used as the basis for the module and compared and contrasted with Microsoft .Net technology. Security and additional materials in the field of networking and communication protocols, tools and good practice will also be described and demonstrated.

10. Learning Outcomes

Knowledge and Understanding

• Design and implementation of multi-tier applications using distributed component technology. The use of Windows Communication Foundation (WCF) and Windows Presentation Foundation (WPF) and server-side technologies for web page delivery and their security implications on intranets and the Internet.

Intellectual Skills

• The ability to understand and logically evaluate requirements and specifications and the ability to understand complex ideas and relate them to specific problem.

Professional Skills

• The ability to implement server-side applications in an eCommerce application using a variety or proprietary and open-source approaches and comparisons between Microsoft and the Java 2 enterprise bean approach.

Transferable Skills

• Enhanced systems analysis, systems architecture design, developmental and communication skills.

11. Weekly Programme

|Week |Lecture |

|No |Topic |

|1 |Module Introduction |

|2 |Database Conectivity I |

|3 |Database Conectivity II |

|4 |Server-side Processing and AJAX |

|5 |Servlets |

|6 |Java Server Pages |

|7 |Java Directory and Naming Interface |

|8 |Java and XML |

|9 |Microsoft .NET Overview |

|10 |Web Services |

|11 |Case Study |

12. Assessment details

Coursework 50%; Written Examination 50%

13. Resources

Suggested primary texts

|No |Name of Author(s) |Year of Publication|Title of Book |Edition |Publisher’s Name |ISBN |

|1 |Jim Farley, William Crawford |2005 |Java Enterprise in a |3rd |'Reilly Associates |0-596-00152-5 |

| | | |Nutshell | | | |

|2 |Dave Elliman |- |The Student Handbook |- |- |- |

| | | |for the Module | | | |

Suggested secondary texts

|No |Name of Author(s) |Year of |Title of Book |Edition |Publisher’s Name |ISBN |

| | |Publication | | | | |

|1 |- |- |Designing Enterprise |2nd |Sun Java |- |

| | | |Applications with the J2EE | | | |

| | | |Platform | | | |

|2 |Eric Jendrock, Ian Evans, Devika |2010 |The Java EE 6 Tutorial |- |- |- |

| |Gollapudi, Kim Haase, Chinmayee | | | | | |

| |Srivathsa | | | | | |

14. Web Link



1. Module Code

G53VIS

2. Title of Module

Computer Vision

3. Number of credits

10

4. Level

3

5. Taught Semester and Assessment Period

|Semester |Assessment |

|Autumn |Assessed by end of Autumn Semester |

6. Pre-requisites for admission to the module (if any)

Compulsory: G51OOP Object-Oriented Programming (G51PRG 2009/10)

Recommended: G52IIP - Introduction to Image Processing (G52IVG 2009/10). Background knowledge of vision and image processing are an advantage.

7. Co-requisites for the module (if any)

None

8. Lecturer

Tomas Maul (Dr)

|Contact No: |03-89248232 |

|Room No: |BB64 |

|E-mail: |Tomas.Maul@nottingham.edu.my |

9. Summary of Content

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.

10. Learning Outcomes

Knowledge and Understanding

• Experience in implementing image processing and vision algorithms. Understanding of current techniques in image processing and computer vision and an awareness of their limitations. An appreciation of the underlying mathematical principles of computer vision.

Intellectual Skills

• Apply knowledge of computer vision techniques to particular tasks. Evaluate and compare competing approaches to vision tasks.

Professional Skills

• Develop a working knowledge of image processing algorithms and libraries and evaluate the applicability of various algorithms and operators to particular tasks.

Transferable Skills

• Apply knowledge of the methods and approaches presented to problem domains use the available resources (libraries, internet, etc) to supplement the course material.

11. Weekly Programme

|Week |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. |

12. Assessment details

Coursework 40%; Written Examination 60%

13. Resources

Suggested primary texts

None.

Suggested secondary texts

|No |Name of Author(s) |Year of |Title of Book |Edition |Publisher’s Name |ISBN |

| | |Publication | | | | |

|1 |David A. Forsyth & Jean|2002 |Computer Vision: A Modern |1st |Prentice Hall |0130851981 |

| |Ponce | |Approach | | | |

|2 |E. R. Davies |2005 |Machine Vision: Theory, |3rd |Morgan Kaufmann |0122060938 |

| | | |Algorithms, Practicalities | | | |

14. Web Link



1. Module Code

G53SRP

2. Title of Module

System and Real Time Programming

3. Number of credits

10

4. Level

3

5. Taught Semester and Assessment Period

|Semester |Assessment |

|Autumn |Assessed by end of Autumn Semester |

6. Pre-requisites for admission to the module (if any)

None

7. Co-requisites for the module (if any)

G51PRG Programming; G52CON Concepts of Concurrency

8. Lecturer

Dr. VP Kallimani

|Contact No: |03-89248141 |

|Room No: |BB59 |

|E-mail: |vp.kallimani@nottingham.edu.my |

9. Summary of Content

This module provides an overview of embedded and real-time systems, issues and programming. Topics covered include: introduction to real-time and embedded systems; designing for real-time systems; system and software reliability and fault-tolerance; real-time processes and real-time scheduling; schedulability analysis; the Real-Time Specification for Java (RTSJ); programming with clocks and time; real-time threads; asynchronous events; interfacing to hardware devices.

10. Learning Outcomes

Knowledge and Understanding

• The practice of programming. The strengths and weaknesses of computer tools, applications and other resources. The synergy of hardware and software in computer systems implementation.

Intellectual Skills

• Understand complex ideas and relate them to specific problems or questions

Professional Skills

• Program in various paradigms

Transferable Skills

• The ability to solve problems

11. Weekly Programme

|Week |Lecture |

|No |Topic |

|1 |Introduction, overview and module contents |

|2 |Real time system, reliability, failure, and fault tolerance techniques; Java, exceptions and |

| |threads |

|3 |Concurrency and reliability; Concurrency programming with Java threads |

|4 |Concurrency control and communication; Java Concurrency I: Synchronisation; Java Concurrency II: |

| |wait and notify |

|5 |Java clocks and time; Case Study 1: Mines drain system |

|6 |Introduction to Real Time Scheduling; RTSJ clocks and time |

|7 |Real time thread; RTSJ asynchronous events |

|8 |RTSJ deadlines and cost; Feasibility analysis |

|9 |Resource sharing; Case Study 2: Chemical industry |

|10 |RTSJ memory areas and parameters; Hardware interfacing |

|11 |Revision and discussion of past exam papers |

12. Assessment details

Written Examination 100%

13. Resources

Suggested primary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

|1 |Alan Burns and Andy |March 2001 |Real-Time Systems and |3rd | Addison Wesley |0201729881 |

| |Wellings | |Programming Language | |Longman | |

Suggested secondary texts

|No |Name of Author(s) |Year of |Title of Book |Edition |Publisher’s Name |ISBN |

| | |Publication | | | | |

|1 |Wellings, Andrew J |2004 |Concurrent and real-time |1st |Wiley | |

| | | |programming in Java | | | |

| | | | | | | |

| | | | | | | |

| | | | | | | |

| | | | | | | |

| | | | | | | |

| | | | | | | |

14. Web Link



1. Module Code

G54ACC

2. Title of Module

Advanced Computer Communications

3. Number of credits

10

4. Level

4

5. Semester in which module is taught and Assessment Period

|Semester |Assessment |

|Autumn |Assessed by end of Autumn Semester |

6. Pre-requisites for admission to the module (if any)

G52CCN or equivalent knowledge of computer networking

7. Co-requisites for the module (if any)

None

8. Lecturer

Ho Sooi Hock (Mr)

|Contact No: |03-89248145 |

|Room No: |BB71 |

|E-mail: |ho.sooi-hock@nottingham.edu.my |

9. 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. Consistent examples from all-IP core telecommunications networks are used to illustrate transmission coding, error control, media access, routing, presentation coding, services and security. Introduction to technologies includes switch and router design, network processors, and encryption.

10. Learning Outcomes

Knowledge and Understanding

• understanding of distributed systems concepts and issues, including DNS, WWW/HTTP and network security issues.

• a grasp of basic client-server system implementation techniques

Intellectual Skills

• the ability to understand and evaluate requirements of and practical constraints on designing distributed systems and protocols (using RMI and socket-based communication)

Professional Skills

• the ability to evaluate and choose between possible distribution technologies (e.g. RMI, TCP sockets)

• the ability to understand and reason about security weaknesses and limitations of possible solutions in networked computer systems

Transferable Skills

• the ability to structure and communicate ideas effectively

11. Weekly Programme

|Week |Lecture |

|No |Topic |

|1 |Introduction, overview and module contents |

|2 |Review of TCP and IP functions; IP subnetting and supernetting |

|3 |Problem of IP address exhaustion; Network auto-configuration |

|4 |Transport layer protocol and socket programming |

|5 |UDP/TCP comparison; Remote Procedure Call |

|6 |Remote Method Invocations |

|7 |IP multicast |

|8 |Distributed Systems and domain name services |

|9 |P2P systems |

|10 |Firewalls |

|11 |Revision |

|12 |Review Past Year Papers |

12. Assessment details

Written Examination 100%

13. Resources

Suggested primary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

|1 |Kurose & Ross |2008 |Computer Networking: A Top Down |4th |Addison-Wesley |0-321-49770-8 |

| | | |Approach Featuring the Internet | | | |

Suggested secondary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

|1 |Tannenbaum |2003 |Computer Networks |4th |Prentice Hall |0-13-038488-7 |

|3 |Comer |2004 |Computer Networks and |4th |Prentice Hall |0-13-123627-X |

| | | |Internets | | | |

14. Web Link



MODULE OUTLINE

SPRING 2010-2011

1. Module Code

G51FUN

2. Title of Module

Functional Programming

3. Number of credits

10

4. Level

1

5. Taught Semester and Assessment Period

|Semester |Assessment |

|Spring |Assessed by end of Spring Semester |

6. Pre-requisites for admission to the module (if any)

G51PRG Programming

7. Co-requisites for the module (if any)

None

8. Lecturer

Michael Chung (Mr)

|Contact No: |03-89248142 |

|Room No: |BB58 |

|E-mail: |michael.chung@nottingham.edu.my |

9. Summary of Content

Not Available

10. Learning Outcomes

Not Available

11. Weekly Programme

|Week |Lecture |

|No |Topic |

|1 |Introduction, overview and module contents |

|2 |Types and Classes |

|3 |Defining Functions |

|4 |List Comprehensions |

|5 |Recursive Functions |

|6 |Higher Order Funtions |

|7 |Functional Parsers |

|8 |Interactive Programs |

|9 |Declaring Types and Classes; The Countdown Problem |

|10 |Lazy Evaluation; Reasoning about Programs |

|11 |Revision and discussion of past exam papers |

12. Assessment details

Coursework 1 15%; Coursework 2 10%; Written Examination 75%

13. Resources

Suggested primary texts

Not Available

Suggested secondary texts

Not Available

14. Web Link

To be provided by the module convenor

1. Module Code

G51DBS

2. Title of Module

Database Systems

3. Number of credits

10

4. Level

1

5. Taught Semester and Assessment Period

|Semester |Assessment |

|Spring |Assessed by end of Spring Semester |

6. Pre-requisites for admission to the module (if any)

G51MCS

7. Co-requisites for the module (if any)

None

8. Lecturer

Mr KR. Selvaraj

|Contact No: |03-8924-8139 |

|Room No: |BB-60 |

|E-mail: |Kr.selvaraj@nottingham.edu.my |

9. 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.

10. Learning Outcomes

Knowledge and Understanding

• Ability to use SQL and an understanding of embedded SQL. Understanding of the ANSI/SPARC and relational models of database systems.

Intellectual Skills

• Basic knowledge of the mathematics underlying relational database systems. Ability to design database systems.

Professional Skills

• The use of SQL for database specification and manipulation. Database administration, including integrity and security control.

Transferable Skills:

• Understanding of the application of database systems.

11. Weekly Programme

|Week |Lecture |

|No |Topics |

|1 |Introduction to Database Systems, The Relational Model |

|2 |Entity Relationship Modelling |

|3 |SQL Data Definition |

|4 |SQL SELECT |

|5 |More SQL SELECT |

|6 |SQL and Java |

|7 |Normalization to 3NF and BCNF |

|8 |Efficiency Issues |

|9 |Transactions and Recovery, Concurrency |

|10 |More Concurrency, Security and Integrity |

|11 |Good and Bad ‘Modern’ Databases |

|12 |Revision |

4. Assessment details

Coursework 25%; Written Examination 75%

5. Resources

Suggested primary texts

|No |Name of Author(s) |Year of |Title of Book |Edition |Publisher’s Name |ISBN |

| | |Publication | | | | |

|1 |Thomas Connolly and |2005 |Database Systems - A Practical |3rd or 4th ed.|Addison-Wesley |0321210255 |

| |Carolyn Begg, | |Approach to Design, | | | |

| | | |Implementation, and Management | | | |

Suggested secondary texts

|No |Name of Author(s) |Year of |Title of Book |Edition |Publisher’s Name |ISBN |

| | |Publication | | | | |

|1 |R Elmasri and SB Navathe, |2004 |Fundamentals of Database|3rd or 4th |Addison-Wesley, |0321204484 |

| |A. Silberschatz, H. F. Korth, | |Systems, |ed. | | |

| |and S. Sudarshan, | | | | | |

| |Peter Rob, Carlos Coronel | | | |McGraw-Hill | |

|2. | | |Database System |4th ed. | | |

| | |2002 |Concepts, | |Course Technology |0072283637  |

| | | | | | | |

| | | |Database System |7th ed. | | |

| | | | | | | |

|3. | |2007 | | | |1418836508 |

6. Web Link



1. Module Code

G51FSE

2. Title of Module

Foundations of Software Engineering

3. Number of credits

10

4. Level

1

5. Taught Semester and Assessment Period

|Semester |Assessment |

|Spring |Assessed by end of Spring Semester |

6. Pre-requisites for admission to the module (if any)

None

7. Co-requisites for the module (if any)

None

8. Lecturer

- (Mr) TBA

|Contact No: |03-8924-TBA |

|Room No: |BB-TBA |

|E-mail: |TBA-@nottingham.edu.my |

9. 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.

10. Learning Outcomes

Knowledge and Understanding

• The different approaches to managing the software development process. The practice of producing specifications from informal briefs. Knowledge of how to test, debug and change programs.

Intellectual Skills

• Understand how to represent formal program requirements. Understand how to create and deploy an effective plan for testing software systems.

Professional Skills

• The ability to apply software engineering methodologies in practical scenarios.

• The ability to evaluate, select and deploy appropriate tools and techniques.

Transferable Skills

• The ability to deploy a software development methodology, and to test and debug software, independent of programming language.

11. Weekly Programme

|Week |Lecture |

|No |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 2 |

| |Revision and review past examination questions |

12. Assessment details

Coursework 30%; Written Examination 70%

13. Resources

Suggested primary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

|1 |Ian Sommerville |2006 |Software Engineering |8th |Addison Wesley |13: 978-0321313799 |

| | | | | | | |

Suggested secondary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

|1 |Roger S Pressman |2004 |Software Engineering: A |6th |McGraw-Hill |13: 978-0073019338 |

| | | |Practitioner's Approach | | | |

| | | | | | | |

14. Web Link

?????

1. Module Code

G51OOP

2. Title of Module

Object-Oriented Programming

3. Number of credits

10

4. Level

1

5. Taught Semester and Assessment Period

|Semester |Assessment |

|Spring |Assessed by end of Spring Semester |

6. Pre-requisites for admission to the module (if any)

G51PRG Programming

7. Co-requisites for the module (if any)

None

8. Lecturer

Chew Sze-Ker (Mr)

|Contact No: |03-89248140 |

|Room No: |BB72 |

|E-mail: |Chew.sze-ker@nottingham.edu.my |

9. 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.

10. Learning Outcomes

Knowledge and Understanding

• Understanding of the theory and practice of object-oriented programming

Intellectual Skills

• Understand and logically evaluate program requirements and specifications. Understand the complex ideas of programming solutions and relate them to particular problems

Professional Skills

• Ability to design and write object-oriented programs in Java

Transferable Skills

• The ability to solve problems using programming including mathematical problems, schedule and present their works and to retrieve additional learning materials

11. Weekly Programme

|Week |Lecture |

|No |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 and discussion of past exam papers |

12. Assessment details

Lab exercises (8*5%) 40%; Multiple choice questions 30%; Lab assessments (3*10%) 30%

13. Resources

Suggested primary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

|1 | | |Absolutely Java |4th | | |

| | | | | | | |

|2 |Bishop J.M. |2001 |Java Gently |3rd |Addison Wesley | |

Suggested secondary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name|ISBN |

|1 |Deitel, Harvey M. |2003 |Java: How to Program |5th |Prentice Hall | |

14. Web Link

To be provided by the module convenor.

1. Module Code

G51IAI

2. Title of Module

Introduction to Artificial Intelligence

3. Number of credits

10

4. Level

1

5. Taught Semester and Assessment Period

|Semester |Assessment |

|Spring |Assessed by end of Spring Semester |

6. Pre-requisites for admission to the module (if any)

None

7. Co-requisites for the module (if any)

None

8. Lecturer

Ho Sooi Hock (Mr)

|Contact No: |03-89248145 |

|Room No: |BB71 |

|E-mail: |ho.sooi-hock@nottingham.edu.my |

9. Summary of Content

This module aims to:

• give a broad overview of the fundamental theories and techniques of Artificial Intelligence

• allow the student to participate in informed AI debate on philosophical and ethical issues of AI

• give an insight into the history of AI and point to some of the key milestones in the area (e.g. The Turing Test, 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)

• introduce the student to principles of neural networks in general and learning by a percepton in particular.

10. Learning Outcomes

Knowledge and Understanding

• Knowledge of key AI techniques and their implementation

Intellectual Skills

• The ability to think independently while giving due weight to the arguments of others. The ability to analyse algorithms

Professional Skills

• The ability to evaluate available AI techniques and select those appropriate to a given problem

Transferable Skills

• The ability to solve problems and communicate effectively in writing

11. Weekly Programme

|Week |Lecture |

|No |Topic |

|1 |Introduction, overview and module contents |

|2 |Reasons for AI; History 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 |Tutorial on minimax application and alpha-beta pruning |

|9 |Introduction to neural networks |

|10 |Perceptron learning |

|11 |Revision and discussion of past exam papersl |

12. Assessment details

Written Examination 100%

13. Resources

Suggested primary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

|1 |Stuart J. Russell & |2010 |Artificial Intelligence :A |3rd |Prentice Hall |0-13-604259-7 |

| |Peter Norvig | |Modern Approach | | | |

Suggested secondary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

|1 |George F Luger |2008 |Artificial Intelligence:Structures |6th |Addison Wesley |0-321-54589-3 |

| | | |and strategies for Complex Problem | | | |

| | | |Solving | | | |

14. Web Link



1. Module Code

G51WPS

2. Title of Module

Web Programming and Scripting

3. Number of credits

10

4. Level

1

5. Taught Semester and Assessment Period

|Semester |Assessment |

|Spring |Assessed by end of Spring Semester |

6. Pre-requisites for admission to the module (if any)

G51PRG Programming

7. Co-requisites for the module (if any)

None

8. Lecturer

Dr. VP Kallimani

|Contact No: |03-89248141 |

|Room No: |BB59 |

|E-mail: |vp.kallimani@nottingham.edu.my |

9. 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 client-server paradigm, URLs, MIME types and HTTP. Then client side technologies will be studies (HTML, CSS, Java Script and XML), followed b an introduction to server side technologies (such as Perl and CGI, JSP, , PHP) with an emphasis on PHP. Guidelines for Web design and usability and case studies will also be provided.

10. Learning Outcomes

Knowledge and Understanding

• Broad basic knowledge of TCP/IP protocols, IP addresses and domain names, client-server paradigm, URLs and HTTP. Knowledge of the capabilities of technologies (both client-side and server side) that are used in the construction of a Web site.

Professional Skills

• Technical skills required to design and implement web sites, including HTML, stylesheets, Java Script, Java applets and PHP.

Transferable Skills

• To be able to solve problems in a variety of ways. The ability to structure and communicate ideas effectively.

11. Weekly Programme

|Week |Lecture |

|No |Topic |

|1 |Introduction, overview and module contents |

|2 |Networking Basics |

|3 |TCP/IP Protocols |

|4 |HTTP and Internet Tools |

|5 |HTML and Web Design |

|6 |CSS, XML |

|7 |Java Scripts |

|8 |Java Applets |

|9 |Server & Databases |

|10 |PHP Workshop (A guest lecture) |

|11 |Revision and discussion of past exam papers |

12. Assessment details

Coursework 25%; Written Examination 75%

13. Resources

Suggested primary texts

Not Available

Suggested secondary texts

Not Available

14. Web Link



1. Module Code

G52CCN

2. Title of Module

Computer Communications and Networks

3. Number of credits

10

4. Level

2

5. Taught Semester and Assessment Period

|Semester |Assessment |

|Autumn |Assessed by end of Spring Semester |

6. Pre-requisites for admission to the module (if any)

None

7. Co-requisites for the module (if any)

None

8. Lecturer

Mr KR. Selvaraj

|Contact No: |03-8924-8139 |

|Room No: |BB-60 |

|E-mail: |Kr.selvaraj@nottingham.edu.my |

9. Summary of Content

This module aims to:

• present a broad overview of computer communications and networks

• provide an overview of underlying technologies including data transmission techniques, Local Area Networks, Wide Area Networks, internet working and network applications.

• Give students an understanding of the Internet environment and the TCP/IP protocols.

10. Learning Outcomes

Knowledge and Understanding

• An understanding of the principle technologies within the area.

Intellectual Skills

• The ability to understand complex ideas and relate them to specific situations.

Professional Skills

• The ability to understand, evaluate and select appropriate network designs and protocols.

11. Weekly Programme

|Week |Lecture |

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

|8 - 10 |Part 3: Internetworking |

| |12. Protocols and layering |

| |13. Internetworking - concepts |

| |14. IP addressing |

| |15. IP datagrams |

| |16. Future IP |

| |17. Transport Control Protocol (TCP) |

|11-12 |Part 4: Applications |

| |18. Client-Server Interaction |

| |19. The Socket API |

| |20. Example applications |

| |21. Revision |

12. Assessment details

|Written Examination 100% | |

13. Resources

Suggested primary texts

|No |Name of Author(s) |Year of |Title of Book |Edition |Publisher’s Name |ISBN |

| | |Publication | | | | |

|1 |Douglas E. Comer |2004 |Computer Networks and Internets|4th |Prentice Hall |013123627X |

Suggested secondary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

|1 |Tanenbaum |2003 |Computer Networks |4th |Prentice Hall |0130661023  |

| |Stallings | |Data and Computer Communications | |Prentice Hall |0132381958 |

|2 | |2007 | |8th | | |

14. Web Link



1. Module Code

G52CON

2. Title of Module

Concepts of Concurrency

3. Number of credits

10

4. Level

2

5. Taught Semester and Assessment Period

|Semester |Assessment |

|Spring |Assessed by end of Spring Semester |

6. Pre-requisites for admission to the module (if any)

G51MCS Mathematics for Computer Scientists;

G51OOP Object-Oriented Programming (G51PRG 2009/10)

7. Co-requisites for the module (if any)

None

8. Lecturer

Chew Sze-Ker (Mr)

|Contact No: |03-89248140 |

|Room No: |BB72 |

|E-mail: |Chew.sze-ker@nottingham.edu.my |

9. Summary of Content

This module introduces the basic principles of concurrent programming and their use in computer programs design. It covers concurrency primitives for shared memory, 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 producer-consumer, the readers and writers, and client server problems. 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, synchronised methods, and monitors.

10. Learning Outcomes

Knowledge and Understanding

• Understanding of the concepts, problems and techniques of concurrent programming.

Intellectual Skills

• Ability to understand complex concepts in concurrency and relate them to specific situations.

Professional Skills

• Ability to write simple concurrent programs in Java, evaluate and select appropriate algorithms.

Transferable Skills

• The ability to solve problems.

11. Weekly Programme

|Week |Lecture |

|No |Topic |

|1 |Introduction, overview and module contents |

|2 |Introduction, Thread |

|3 |Synchornisation, Atomic Action |

|4 |Mutual Exclusion |

|5 |Semaphore |

|6 |Monitor |

|7 |Synchronisation in Java |

|8 |Message Passing, Remote Invocation |

|9 |Distributed Processing in Java |

|10 |Proving Correctness |

|11 |Revision and discussion of past exam papers |

12. Assessment details

Written Examination 100%

13. Resources

Suggested primary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

|1 |Andrews |2000 |Foundations of Multithreaded, Parallel| |Addison Wesley |0201357526 |

| | | |and Distributed Programming | | | |

| | | | | | | |

| | | |Concurrent Programming in Java: design| | | |

| | | |principles and patterns | |Addison Wesley |0201310090 |

|2 |Lea |1999 | |2nd | | |

Suggested secondary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name|ISBN |

|1 |Ben-Ari |2006 |Principles of Concurrent and Distributed |2nd |Prentice Hall |200018480X |

| | | |Programming | | | |

| | | | | |Addison Wesley |080530864 |

|2 |Andrews |1991 |Concurrent Programming: principles and | | | |

| | | |practice | | | |

14. Web Link

To be provided by the module convenor.

1. Module Code

G52MAL

2. Title of Module

Machine and their Languages

3. Number of credits

10

4. Level

2

5. Taught Semester and Assessment Period

|Semester |Assessment |

|Spring |Assessed by end of Spring Semester |

6. Pre-requisites for admission to the module (if any)

G51FUN Functional Programming; G51MCS Mathematics for Computer Scientists

G51PRG Programming

7. Co-requisites for the module (if any)

None

8. Lecturer

Dr. VP Kallimani

|Contact No: |03-89248141 |

|Room No: |BB59 |

|E-mail: |vp.kallimani@nottingham.edu.my |

9. 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.

10. Learning Outcomes

Knowledge and Understanding

• Understanding of the equivalence between machine and language types, the nature of formal languages and their specification by grammars and other notations, the practical and theoretical relevance of machines that process strings from an alphabet of symbols as models of computation and the fundamental limits on what is computable by any machine.

Intellectual Skills

• Apply and deploy mathematical ability, practices and tools; understand complex ideas and relate them to specific problems or questions.

Professional Skills

• Understanding and ability to apply techniques for language specification.

Transferable Skills

• The ability to use mathematics to solve problems

11. Weekly Programme

|Week |Lecture |

|No |Topic |

|1 |Introduction, overview and module contents |

|2 |Preliminaries |

|3 |Automata Theory; Deterministic Finite Automata (DFA) |

|4 |Non Deterministic Finite Automata (NFA) |

|5 |Subset Construction; Epsilon Transition |

|6 |Regular Language and Regular Expressions; Minimisation of Finite Automata |

|7 |Properties of Language, Proving Languages not to be Regular proving |

|8 |Introduction to Context free Grammar- Chomsky norms |

| |Regular grammar , Derivations |

|9 |Parse trees; Case Study - NLP |

|10 |Pushdown Automata (PDA) |

|11 |The Language of a PDA; Turing Machines and Decidability |

12. Assessment details

Coursework 25%; Written Examination 75%

13. Resources

Suggested primary texts

|No |Name of Author(s) |Year of |Title of Book |Edition |Publisher’s Name |ISBN |

| | |Publication | | | | |

| |John Hop Croft, Rajeev | |Introduction to Automata Theory, Languages |II |Addison Wesley | |

| |Motwani, Jeffrey.D.Ullman | |and computation | | | |

Suggested secondary texts

|No |Name of Author(s) |Year of Publicn |Title of Book |Ed |Publisher |ISBN |

|1 |Peter lenz, | |An introduction to formal languages and Automata |III |Jones and | |

| | | | | |Bartlett | |

|2 |A.M.Padma Reddy |2003 |Finite Automata and Formal Languages | |Sri Nandi | |

14. Web Link



1. Module Code

G52IIP

2. Title of Module

Introduction to Image Processing

3. Number of credits

10

4. Level

2

5. Taught Semester and Assessment Period

|Semester |Assessment |

|Spring |Assessed by end of Spring Semester |

6. Pre-requisites for admission to the module (if any)

G51MCS Mathematics for Computer Scientists

G51PRG Programming

7. Co-requisites for the module (if any)

None

8. Lecturer

Ho Sooi Hock (Mr)

|Contact No: |03-89248145 |

|Room No: |BB71 |

|E-mail: |ho.sooi-hock@nottingham.edu.my |

9. Summary of Content

This module includes the following topics:

• an overview of image processing and its applications, relations between image processing and other closely related fields such as computer vision, computer graphics, image analysis and digital photography

• fundamentals of digital images, elements of visual perception and human visual system, fundamentals of image formation and digital image acquisition

• digital image processing theory and practice, including point processing, spatial filtering, image transforms and frequency domain processing, edge detection, image segmentation, fundamentals of image coding and compression

• colour and colour imaging fundamentals, colour models and colour image processing

• emerging digital imaging technologies including high dynamic range photography and computational photography

10. Learning Outcomes

Knowledge and Understanding

• Experience implementing programs that manipulate images

• Awareness of limitations and appreciating the underlying mathematical principles

Intellectual Skills

• Apply knowledge of vision and image processing techniques to particular tasks

Professional Skills

• Develop a working knowledge of image processing algorithms and libraries

• Evaluate the applicability of various algorithms and operators to different tasks

Transferable Skills

• Address real problems and assess the value of their proposed solutions

• Retrieve and analyse information from a variety of sources and produce detailed written reports on the result

11. Weekly Programme

|Week |Lecture |

|No |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 |Image filtering in the frequency domain |

|7 |Colour model and colour image processing |

|8 |Image segmentation |

|9 |Image coding and image compression |

|10 |3D transformation |

|11 |Revision and discussion of past exam papersl |

12. Assessment details

Coursework 25%; Written Examination 75%

13. Resources

Suggested primary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

|1 |Gonzalez & Woods |2008 |Digital Image Processing |3rd |Prentice Hall |0-13-168728-X |

| | | | | | | |

Suggested secondary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

|1 |Efford |2000 |Digital Image Processing |1st |Addison-Wesley |0-20-159623-7 |

| | | |Using Java | | | |

14. Web Link



1. Module Code

G52CFJ

2. Title of Module

C/C++ for Java Programmers

3. Number of credits

10

4. Level

2

5. Taught Semester and Assessment Period

|Semester |Assessment |

|Spring |Assessed by end of Spring Semester |

6. Pre-requisites for admission to the module (if any)

G51OOP Object-Oriented Programming (G51PRG 2009/10)

7. Co-requisites for the module (if any)

None

8. Lecturer

Michael Chung (Mr)

|Contact No: |03-89248142 |

|Room No: |BB58 |

|E-mail: |michael.chung@nottingham.edu.my |

9. Summary of Content

Not Available

10. Learning Outcomes

Not Available.

11. Weekly Programme

|Week |Lecture |

|No |Topic |

|1 |Introduction, overview and module contents |

|2 |A fast summary of what is the same between Java and C/C++; Pointers and one-dimensional arrays |

|3 |Pointer arithmetic, char* and C-string; The stack, global and local variables, scope and visibility|

|4 |Introduction to the heap, dynamic memory allocation and structs; Input functions, dynamically |

| |growing arrays, file access functions |

|5 |Introduction to linked lists in C; More linked lists - insert and delete. Doubly linked lists. |

| |Pointers to pointers |

|6 |Quicksort and pointers to functions. Compilation and linking; Preprocessor. Header files. |

| |Multi-dimensional arrays. Const, volatile and register. Unions. Bitfields. Code style and structure|

|7 |Unions and packing. Starting on C++: C++ Classes. Encapsulation; Constructors. Basic classes. |

| |Inline functions. Initialisation lists |

|8 |References. Copy Constructor. Assignment operator; Inheritance and virtual functions |

|9 |Scoping, Polymorphism, const (again), C++ casts; Operator overloading. , namespaces and scoping. |

| |String class. Stream classes |

|10 |Conversion operators and constructors. Template functions and classes; Exceptions |

|11 |Multiple inheritance; Revision |

12. Assessment details

Coursework 40%; Written Examination 60%

13. Resources

Suggested primary texts

Not Available

Suggested secondary texts

Not Available

14. Web Link

To be provided by the module convenor.

1. Module Code

G52HCI

2. Title of Module

Human Computer Interaction

3. Number of credits

10

4. Level

2

5. Taught Semester and Assessment Period

|Semester |Assessment |

|Spring |Assessed by end of Spring Semester |

6. Pre-requisites for admission to the module (if any)

G52GUI

7. Co-requisites for the module (if any)

None

8. Lecturer

(Mr) TBA

|Contact No: |03-8924-TBA |

|Room No: |TBA |

|E-mail: |TBA@nottingham.edu.my |

9. Summary of Content

This 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.

10. Learning Outcomes

Knowledge and Understanding

• Understanding the importance of considering the human in the design of interactive computer systems, with its associated issues and problems

• Knowledge of different design and evaluation methods

Intellectual Skills

• The ability to understand and evaluate interface specifications

Professional Skills

• The ability to recognize good and bad usability characteristics.

• Knowledge of interdisciplinary working practices

Transferable Skills

• The ability to solve interface design problems and communicating in a structured and effective manner

11. Weekly Programme

|Week |Lecture |

|No |Topic |

|1 |Introduction, overview and module contents |

|2 |Understanding users - ethnography |

|3 |Understanding users – organizational context |

|4 |Understanding users - the cognitive perspective |

|5 |Understanding users – art and design perspective |

|6 |Requirements specifications |

|7 |Designing GUIs |

|8 |Participatory design and prototyping |

|9 |Evaluating interfaces |

|10 |The future of the interface |

|11 |Revision and discussion of past exam papersl |

12. Assessment details

Two Courseworks each worth 50%

13. Resources

Suggested primary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

|1 |Alan Dix, Janet Finlay, |2004 |Human Computer |3rd |Prentice Hall |0-13-046109-1 |

| |Gregory Abowd & Russell Beale | |Interaction | | | |

Suggested secondary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

|1 |Andrew Sears and Julie |2007 |The Human Computer |2nd |CRC Press |0-8058-5870-9 |

| |A. Jacko | |Interaction Handbook| | | |

| | | | | | | |

14. Web Link

TBA

1. Module Code

G53OPS

2. Title of Module

Operating Systems

3. Number of credits

10

4. Level

3

5. Taught Semester and Assessment Period

|Semester |Assessment |

|Spring |Assessed by end of Spring Semester |

6. Pre-requisites for admission to the module (if any)

G51PRG Programming

7. Co-requisites for the module (if any)

None

8. Lecturer

Mr KR. Selvaraj

|Contact No: |03-8924-8139 |

|Room No: |BB-60 |

|E-mail: |Kr.selvaraj@nottingham.edu.my |

9. Summary of Content

• to teach the theoretical background and practical implementation of traditional operating systems and to consider the history and development of OS

10. Learning Outcomes

Knowledge and Understanding

• knowledge of key issues in the practical implementation of operating systems

Intellectual Skills

• the ability to think independently while giving due weight to the arguments of others

• the ability to understand complex concepts and apply them to specific situations

Professional Skills

• enhanced programming skills

• the ability to evaluate and select appropriate algorithms and data structures

Transferable Skills

• the ability to solve OS design problems

11. Weekly Programme

|Week |Lecture |

|No |Topics |

|1 |Introduction and background |

| |In addition, the history of operating systems will be discussed and how they have developed in line with advances in |

| |hardware. |

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

12. Assessment details

Written Examination 100%

13. Resources

Suggested primary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

|1 |Andrew S. Tanenbaum |2001 |Modern Operating |2nd | Prentice Hall |0-13-031-358-0 |

| | | |Systems | |International | |

|2 |Abraham Silberschatz and Peter |2003 |Operating System |6th |John Wiley & |0-471-26272-2 |

| |Galvin and Greg Gagne | |Concepts |(or) |sons | |

| | | | |4th-5th are | | |

| | | | |OK | | |

Suggested secondary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

| |Abraham Silberschatz and| |Applied | |John Wiley & |0-471-263-14-1 |

|1 |Peter Galvin and |2003 |Operating System |1st |sons | |

| |Greg Gagne | |Concepts | | | |

|2 | H. M. Deitel |1990 |Operating Systems |2nd |Addison Wesley Longman |0-20-150939-3 |

| | | | | |Pubs. | |

14. Web Link



1. Module Code

G53SEC

2. Title of Module

Computer Security

3. Number of credits

10

4. Level

3

5. Taught Semester and Assessment Period

|Semester |Assessment |

|Spring |Assessed by end of Spring Semester |

6. Pre-requisites for admission to the module (if any)

G51WPS Web Programming and Scripting

OR G52IWS Internet and the Web Services (200910)

OR G52CCN Computer Communications and Networks

OR Equivalent Knowledge of Networks and Computer Systems.

7. Co-requisites for the module (if any)

None

8. Lecturer

Tomas Maul (Dr)

|Contact No: |03-89248232 |

|Room No: |BB64 |

|E-mail: |Tomas.Maul@nottingham.edu.my |

9. Summary of Content

The module covers the following topics: access control, reference monitors, security models, cryptography, cryptanalysis, network security, software security and nature inspired computer security methods.

10. Learning Outcomes

Knowledge and Understanding

• An understanding of security issues associated with networked computers.

• An appreciation of the strengths and weaknesses of available security techniques.

• Experience of the use of such techniques in a protected networked environment

Intellectual Skills

• The ability to think independently while giving due weight to the arguments of others.

• The ability to understand complex security issues and relate them to specific situations.

Professional Skills

• Enhanced systems programming skills.

• The ability to evaluate and select appropriate security techniques.

Transferable Skills

• The ability to work as part of a team to solve real security problems.

• An enhanced ability to produce detailed reports

11. Weekly Programme

|Week |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 |Nature Inspired Comp. |

|12 |Student Presentations & Discussions |

12. Assessment details

Written Examination 60%

Coursework 40%

13. Resources

Suggested primary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

|1 |Dieter Gollmann |2006 |Computer Security |2nd |Wiley |0470862939 |

Suggested secondary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

|1 |Ross Anderson |2008 |Security Engineering |2nd |Prentice-Hall |0470068523 |

14. Web Link



1. Module Code

G53NMD

2. Title of Module

New Media Design

3. Number of credits

10

4. Level

3

5. Taught Semester and Assessment Period

|Semester |Assessment |

|Spring |Assessed by end of Spring Semester |

6. Pre-requisites for admission to the module (if any)

None

7. Co-requisites for the module (if any)

None

8. Lecturer

Dr. Wang Wei

|Contact No: |03-89248721 |

|Room No: |BB63 |

|E-mail: |wang.wei@nottingham.edu.my |

9. Summary of Content

This is a practical course covering the critical elements of the principles of design. Such principles are applied to new media applications, with a particular focus on its use in the context of the web. It also aims to give students a hands on experience with emerging new media technologies. Technical issues such as colour, images, audio, video and animation will be introduced and discussed in addition to usability and interaction. Practical uses of multimedia authoring systems, content management systems, flash and HTML 5 will form part of this module. Such tools will be put into context with emerging paradigms and new media for mobile platforms.

10. Learning Outcomes

To be able to design and produce multimedia objects.

11. Weekly Programme

|Week |Lecture |

|No |Topic |

|1 |Introduction to Multimedia |

|2 |Multimedia Authoring Systems; Interaction and Methaphor in Multimedia Design |

|3 |Graphics and Still Images Representation; Colour Science and Color Models |

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

12. Assessment details

Group based development of a multimedia website and group report 75%; Individual Essay 25%

13. Resources

Suggested primary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

|1 |Barfield, L |2004 |Design for New Media: |1st |Pearson |978-0201596090 |

| | | |Interaction design for | |Addison-Wesley | |

| | | |multimedia and the web | | | |

|2 |Li, Z. & Drew,M. |2004 |Fundamentals of Multimedia |- |Pearson |978-0130618726 |

| | | | | |Prentice-Hall | |

Suggested secondary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

|1 |Vaughan, T. |2007 |Multimedia : Making |7th |McGraw-Hill |978-0072264517 |

| | | |It Work | | | |

| | | | | | | |

14. Web Link



1. Module Code

G53DSM

2. Title of Module

Decision Support Methodologies

3. Number of credits

10

4. Level

3

5. Taught Semester and Assessment Period

|Semester |Assessment |

|Spring |Assessed by end of Spring Semester |

6. Pre-requisites for admission to the module (if any)

G51MCS Mathematics for Computer Scientists

7. Co-requisites for the module (if any)

None

8. Lecturer

Dr. Siang Yew Chong

|Contact No: |03-89248148 |

|Room No: |BB57 |

|E-mail: |Siang-Yew.Chong@nottingham.edu.my |

9. 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.

10. Learning Outcomes

Knowledge and Understanding

• Knowledge of how to model a range of real-world problems suitable for analysis by Operational Research and Artificial Intelligence methods.

• Knowledge and understanding of a range of advanced Operational Research and Artificial Intelligence methods and their applicability to a variety of real-world decision making problems.

Intellectual Skills

• The ability to understand complex ideas and relate them to specific situations.

Professional Skills

• The ability to evaluate available Operational Research and Artificial Intelligence methods and select those appropriate to a given task.

Transferable Skills

• Understanding of the fundamental issues behind the development of intelligent decision support systems in different industrial and commercial environments.

11. Weekly Programme

|Week |Lecture |

|No |Topic |

|1 |Introduction. |

|2 |Decision Making. |

|3 |Strategic Decision Making. |

|4 |Decision Support Systems. |

|5 |Data Management and Modelling and Analysis. |

|6 |Expert Systems. |

|7 |Case-based Reasoning. |

|8 |Multiobjective Optimization. |

|9 |Fuzzy Systems. |

|10 |Revision. |

|11 |Coursework Discussion. |

12. Assessment details

Written Examination 75%, Coursework 25%

13. Resources

Suggested primary texts

|No |Name of Author(s) |Year of Publication |Title of Book |Edition |Publisher’s Name |ISBN |

|1 |Efraim Turban, Jay E. |2008 |Decision Support and |8th |Prentice Hall |978-0-131-98660-|

| |Aronson, Ting-Peng Liang, and| |Business Intelligence | | |2 |

| |Ramesh Sharda | |Systems | | | |

Suggested secondary texts

|No |Name of Author(s) |Year of |Title of Book |Edition |Publisher’s Name |ISBN |

| | |Publication | | | | |

|1 |Zbigniew Michalewicz, Martin |2009 |Adaptive Business |1st |Springer |978-3-642-06948-2 |

| |Schmidt, Matthew Michalewicz, | |Intelligence | | | |

| |and Constantin Chiriac | | | | | |

14. Web Link



Notes:

1. Module availability in any semester will depend on staff availability and enrollments from sufficient number of students.

2. The description 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. Computer Science (G400) students can take a module offered by other Schools as an optional module if appropriate approval has been obtained from the Course Director of the School of Computer Science and the module convenor of the offering School, and 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 found at Nottingham’s Module Catalogue web site:



................
................

In order to avoid copyright disputes, this page is only a partial summary.

Google Online Preview   Download