Level – 4M
Course units effective from academic year 2016/2017 to date
Course Code:  CSC411MC0 
Course Title:  Research Seminar 
Academic Credits:  0 (15 Hours of Discussion and Presentations) 
Objectives:  To provide research experience that emphasises on creative thinking, problemsolving, analytical thinking, communication and presentation skills, scientific writing and integration of findings. 
ILOs: 

Contents: 

Teaching Methods:  Reading assignments in journals, Small group discussions, Demonstration by instructors, Recitation oral questions. 
Assessment/ Evaluation Details: 

Recommended Readings: 

Course Code:  CSC412MC3 
Course Title:  Artificial Intelligence 
Academic Credits:  03 (45 Hours of Lectures and Tutorials) 
Objectives:  To provide indepth knowledge on design and analysis of intelligent systems for solving problems that are difficult or impractical to resolve using traditional approaches. 
ILOs: 

Contents: 

Teaching Methods:  Lecture by Lecturer, Recitation oral questions 
Assessment/ Evaluation Details: 

Recommended Readings: 

Course Code:  CSC413MC3 
Course Title:  Advanced Algorithms 
Academic Credits:  03 (45 Hours of Lectures and Tutorials) 
Objectives:  To provide indepth knowledge for designing efficient algorithms using appropriate data structures and a variety of advanced computational techniques. 
ILOs: 

Contents: 

Teaching Methods:  Lecture by lecturer, Recitation oral questions, Tutorial discussions by instructors 
Assessment/ Evaluation Details: 

Recommended Readings: 

Course Code:  CSC414MC3 
Course Title:  High Performance Computing 
Academic Credits:  03 (45 Hours of Lectures and Tutorials) 
Objectives:  To provide an introduction and overview to the computational aspects of high performance computing and methods of parallel programming. 
ILOs: 

Contents: 

Teaching Methods:  Lecture by lecturer, Vocabulary drills, Recitation oral questions, Practical demonstration. 
Assessment/ Evaluation Details: 

Recommended Readings: 

Course Code:  CSC415MC3 
Course Title:  Mobile Computing 
Academic Credits:  03 (45 Hours of Lectures and Tutorials) 
Objectives:  To provide an indepth understanding of the fundamental concepts in mobile computing and the state of the art trends in mobile computing research. 
ILOs: 

Contents: 

Teaching Methods:  Lecture by lecturer, Vocabulary drills, Recitation oral questions, Tutorial discussions by instructors 
Assessment/ Evaluation Details: 

Recommended Readings: 

Course Code:  CSC416MC6 
Course Title:  Research Project 
Academic Credits:  06 (600 Notional hours of Project Development) 
Prerequisite:  CSC411SC0 
Objectives:  To develop capability of doing scientific research for solving real world problems in computing domain. 
ILOs: 

Contents: 

Assessment/ Evaluation Details: 

Course Code:  CSC417MC3 
Course Title:  Data Mining and Machine Learning 
Academic Credits:  03 (45 Hours of Lectures and Tutorials) 
Objectives:  To provide knowledge on the concepts behind various machine learning techniques and ability to use adaptive techniques for learning from data as well as data analysis and modelling 
ILOs: 

Contents: 

Teaching Methods:  Use of chalkboard, Vocabulary drills, Recitation oral questions, Laboratory experiments 
Assessment/ Evaluation Details: 

Recommended Readings: 

Course Code:  CSC418MC3 
Course Title:  Compiler Design 
Academic Credits:  03 (45 Hours of Lectures and Tutorials) 
Objectives:  To provide knowledge in components of a compiler and principles involved in compiler design. 
ILOs: 

Contents: 

Teaching Methods:  Lecture by Lecturer, Vocabulary drills, Recitation oral questions, Tutorial discussions by Instructors 
Assessment/ Evaluation Details: 

Recommended Readings: 

Course Code:  CSC419MC3 
Course Title:  Numerical Linear Algebra and Solutions of Differential Equations 
Academic Credits:  03 (45 Hours of Lectures and Tutorials) 
Objectives:  To provide knowledge in numerical methods for solving large systems of linear equations and an understanding on underlying mathematical concepts of computer aided numerical algorithms 
ILOs: 

Contents: 

Teaching Methods:  Lectures and demonstration by Teacher, Group tutorial discussions 
Assessment/ Evaluation Details: 

Recommended Readings: 

Course Code:  CSC421MC3 
Course Title:  Systems Analysis, Design and Project Management 
Academic Credits:  03 (45 Hours of Lectures and Tutorials) 
Objectives:  To provide fundamental concepts in the phases of analysis, design, development and maintenance of an information system and efficient project management. 
ILOs: 

Contents: 

Teaching Methods:  Lecture by lecturer, Case studies, Vocabulary drills, Construction of summaries by students 
Assessment/ Evaluation Details: 

Recommended Readings: 

Course Code:  CSC422ME2 
Course Title:  Systems and Network Administration 
Academic Credits:  02 (15 hours of Lectures and 30 hours of Practical) 
Objectives:  To provide theoretical and practical knowledge required to implement and administer network and servers in small and medium sized enterprises. 
ILOs: 

Contents: 

Teaching Methods:  Lecture by lecturer, Use of Slides and Videos, Demonstration, Case studies 
Assessment/ Evaluation Details: 

Recommended Readings: 

Course units effective from academic year 2006/2007 to 2016/2017
Core Course Units
Elective Course Units
Course units before academic year 2006/2007
Ordinary Differential Equations
Initial value Problem : single step, multi step methods, RungeKutta methods, PredictorCorrector methods, truncation error estimation, convergence and stability analysis, stiff equations, step control policy, practical implementation of ordinary differential equation solver : Gear’s method.
Boundary Value Problem : Difference methods, shooting methods, truncation error estimation, convergence and stability.
Partial Differential Equations
Finite Difference Method : Derivation of methods for Parabolic Elliptic and Hyperbolic equations, Alternating Direction Implicit (ADI) methods, Direchlet Neumann problems, convergence and stability analysis.
Finite Elements Method : RitzGalerkin method, boundary value problem in two dimensions, triangular and rectangular elements, element matrices, basis functions, curved elements and isoparametric transformations, assembly of element equations, error estimation and convergence, implementation details, applications.
Definitions, Examples, Difference from conventional programs,
Knowledge Representation and Logical inference
Computational approach to Representation and control :
Production Rules
Semantic Nets
Frames
Scripts
Building an Expert System:
Programming language for expert systems application knowledge engineering languages
System building aids – shells, tools environments knowledge acquisition from human expert criteria for choosing tool
Future developments.
Multitasking operating systems, concurrent processes including process interaction mechanisms : locks, semaphores, message passing and monitors; system nucleus; first level interrupt handler and dispatcher; memory management; inputoutput, filing system; drivers, scheduling and resource allocation.
Case Studies : UNIX, MS/DOS, OS/2 operating systems
Formal Languages : Language definition, grammers, finite state automata, regular expressions, lexical analysis.
Syntax analysis : BNF, contextfree grammars, recognisers, parse trees, topdown parsing, recursive descent, ambiguity, left recursion, backtracking, Warshall’s algorithm, context clashes, Bottomup parsing, operator precedence, operator grammars, constructing, precedence matrices producing abstract syntax trees and semantic actions. Symbol and type tables, syntax directed translation.
Storage Allocation : Runtime stack, heap, dope vectors, garbage collection
Code Generation : Stack machines, assemble Language, PCode, generating code for some typical constructs, machine code generation and optimisation.
Error recovery and Diagnostics : Types of errors, lexical errors, bracket errors, syntax errors, type errors, runtime errors.
Compiler construction tools : Yacc, Lex
Parallel models and architectures : SIMD, MIMD, shared memory and interconnection models, Hypercube multicomputers, perfect shuffle, systolic arrays.
Parallel algorithms :Searching, merging, sorting, prefix sums, broadcasting, routing algorithms for numerical and optimisation problems, matrix problems : tri diagonal system; triangular and banded system. FFT, Graph algorithms.
Three Dimensional Graphics : Transformations, Projections, Hidden line removal; object space algorithms, imagespace algorithms, line scan algorithms.
Interpolation methods : Polynomial interpolation, Bsplines, betaspline, Bezier curves and surfaces, spline patches.
Solid Models : Representation, combining operations, display.
Shading algorithms : Matt surfaces, specular reflections, Phong model, TorrenceSparrow model, colour.
Raster algorithm : Halftoning, FloodFill and Boundary fill
Graphics standard : The core system, GKS; CGI; CGM; PHIGS.
Image Processing : Digitisers, Display and recording devices, Digital image fundamentals; sampling and quantization, relationships between pixels, connectivity.
Image Enhancement : Histogram Equalization, smoothing, sharpening, Noise removal.
Image Segmentation : Edge detection, boundary detection, thresholding representation and description; chain codes, signature boundary descriptors, regional descriptions.
Data Communications : Technologies available, Communications hardware, File transfer protocols, XMODEM, Kermit protocols, XON/XOFF protocols, CRC calculation.
Wide area Network (WAN) : Network Topology, protocols, OSI model and ISO Layers, Datalink Level protocol, Data transparency sliding window protocols, routing, Datagram/Virtual circuits, Connection initialization, cryptograph, X.25, SNA, DNA Architecture and DECNET, ARPANET Networks.
Local Area Network : Ethernet, IBM token ring, Cambridge ring, CSMA/CD Nowell’s Netware,3Com’s 3+ Open and Banyan’s VINES.
Internetworking : TCP/IP protocols, Gateways, Bridges, email Service.