Courses
Course units effective from academic year 2016/2017 to date
Course Code:  CSC101G3  
Course Title:  Foundations of Computer Science  
Credit Value:  03  
Core/Optional:  core  
Hourly Breakdown:  Theory  Practical  Independent Learning 
45  —  105  
Objectives:  Provide logical and mathematical foundations of computer science, and illustrate the use of formal languages in computer science  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Use of chalkboard, Vocabulary drills, Flowcharts, Recitation oral questions, Timelines, Photographs, Tutorial discussions  
Assessment Strategy: 


References: 

Course Code:  CSC102G3  
Course Title:  Computer Programming I  
Credit Value:  03  
Core/Optional:  core  
Hourly Breakdown:  Theory  Practical  Independent Learning 
—  135  165  
Objectives:  Provide fundamentals of programming concepts in Java and introduce the concepts of objectoriented programming  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Laboratory experiments, Supervised study, Practical records, Tutorial discussions  
Assessment Strategy: 


References: 

Course Code:  CSC103G2  
Course Title:  Multimedia Technologies  
Credit Value:  02  
Core/Optional:  core  
Hourly Breakdown:  Theory  Practical  Independent Learning 
30  —  70  
Objectives:  Provide indepth knowledge in technologies to develop multimediabased contents  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Lectures, recitation of oral questions, use of chalkboard and multimedia presentations  
Assessment Strategy: 


References: 

Course Code:  CSC104G2  
Course Title:  Design of Algorithms  
Credit Value:  02  
Core/Optional:  core  
Hourly Breakdown:  Theory  Practical  Independent Learning 
30  —  70  
Objectives:  Provide indepth knowledge in different algorithmic approaches for problem solving  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Lectures, class discussions, textbook assignments, laboratory practical  
Assessment Strategy: 


References: 

The level1G syllabi can be downloaded here
Course units effective from academic year 2013/2014 to 2016/2017
Course Code  CSC111GC3 
Course Title  Foundations of Computer Science 
Academic Credits  03 (45 Hours of lectures and tutorials) 
Prerequisite/s  None 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Recommended Readings: 

Course Code  CSC112GC3 
Course Title  Computer Programming I 
Academic Credits  03 (135 Hours of practical and assignments) 
Prerequisite/s  None 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Recommended Readings: 

Course Code  CSC113GC2 
Course Title  Data Structures and Algorithms I 
Academic Credits  02 (30 hours of lectures and tutorials) 
Prerequisite/s  None 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Recommended Readings: 

Course units effective from academic year 2003/2004 to 2013/2014
Course Code  CSC101GC2 
Course Title  Foundations of Computer Science 
Academic Credits  02 (30 hours of lectures and tutorials) 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Course Code  CSC102GC2 
Course Title  Object Oriented Programming 
Academic Credits  02 (30 hours of lectures and tutorials) 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Course Code  CSC104GC2 
Course Title  Practical Computing I 
Academic Credits  02 (90 hours of Practical) 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Course Code  CSC105GC2 
Course Title  Computer Networks and Internet Computing 
Academic Credits  02 (30 hours of lectures and tutorials) 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Course unit effective from academic Year 2003/2004 to 2010/2011
Course Code  CSC103GC2 
Course Title  Computer Networks and Internet Computing 
Academic Credits  02 (30 hours of lectures and tutorials) 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Course units before academic year 2003/2004
Introduction to Computing: Functional parts of computer, Representation of information in a of computers, Concept of Programming and Programming languages, Input and output devices, An overview of computer Applications, Classification of computers and Computer Systems, Concepts of Algorithms.
Pascal Programming: Basic concept of data and data types, standard types in Pascal, Type statement, Variable declaration, Input/output statement in Pascal, Control structure in Pascal, Array declaration, Sub Program declaration, in Pascal.
Topdown design, Modular design, Stepwise refinement structure Charts, Writing structured programming using Pascal.
Mathematical Reasoning, Set theory, Propositional logic, Boolean algebra, Number systems, Relations and functions, Combinatorial circuits, Difference equation, Linear algebra, Coordinate Geometry and coordinate transformation, Probability theory, Graph theory, Automata languages, Turing machines, Algorithm analysis.
Computer System Organisation: Representation of data, Internal Architecture of CPU instruction sets and addressing, principles of data 1/0, microprocessor systems.
Assembly Language Programming: Detail of an instruction set of a microprocessor and writing simple program.
Computer Input/Output System: Secondary storage, I/O interfaces peripheral devices, Computer communications, Principles and Techniques.
(Prerequisites: CSG 11, CSG12)
Arrays, Lists, Stacks, Ques, Trees, Graphs, Files and their Applications in Computer Science, Recursion.
Sorting Algorithms: Elementary methods such as Selection sort, Bubble sort, etc., advanced sorting methods such as Tree sort, Quick sort, Heap sort, etc., Study their computation complexity.
(Prerequisites: CSG 11, CSG12)
Course units effective from the academic year 2016/2017 to date
Course Code:  CSC201G2  
Course Title:  Database Systems Concepts and Design  
Credit Value:  02  
Core/Optional:  core  
Hourly Breakdown:  Theory  Practical  Independent Learning 
30  —  70  
Objectives:  Introduce database system concepts and fundamentals necessary for designing, implementing, and manipulating databases.  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Lectures, Recitation oral questions, Guided learning, Tutorial discussions  
Assessment Strategy: 


References: 

Course Code:  CSC202G2  
Course Title:  Computer Programming II  
Credit Value:  02  
Core/Optional:  core  
Hourly Breakdown:  Theory  Practical  Independent Learning 
—  90  110  
Objectives:  Develop proficiency in writing programs to solve computational problems using suitable data structures.  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Lectures, Laboratory practicals, Guided learning, Assignments, Continuous practical recordings  
Assessment Strategy: 


References: 

Course Code:  CSC203G2  
Course Title:  Operating Systems  
Credit Value:  02  
Core/Optional:  core  
Hourly Breakdown:  Theory  Practical  Independent Learning 
30  —  70  
Objectives:  Provide fundamental concepts and functionalities of operating systems.  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Lectures, Case studies, Use of chalkboard, Simulation, Recitation oral questions, Guided learning, Tutorial discussions  
Assessment Strategy: 


References: 

Course Code:  CSC204G2  
Course Title:  Data Structures & Algorithms  
Credit Value:  02  
Core/Optional:  core  
Hourly Breakdown:  Theory  Practical  Independent Learning 
30  —  70  
Objectives:  Introduce common data structures and standard algorithms for solving various types of problems.  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Lecture, class discussions, tutorial discussions, Assignments  
Assessment Strategy: 


References: 

Course Code:  CSC205G2  
Course Title:  Software Engineering  
Credit Value:  02  
Core/Optional:  core  
Hourly Breakdown:  Theory  Practical  Independent Learning 
30  —  70  
Objectives:  Introduce all phases of the life cycle of a software system including requirements analysis and specification, design, construction, testing, deployment, operation, and maintenance.  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Lecture, case studies, Recitation oral questions, small groups discussions, Guided learning  
Assessment Strategy: 


References: 

The level2G syllabi can be downloaded here
Course units effective from academic year 2014/2015 to 2017/2018
Core Course Units
Course Code:  CSC231GC2 
Course Title:  Software Engineering 
Academic Credits:  02 (30 Hours of Lectures and Tutorials) 
Prerequisite/s:  None 
Objectives:  This course aims to provide fundamental knowledge and skills to carry out the fundamental activities in Software Engineering. 
Intended Learning Outcomes: 

Contents: 

Teaching Methods:  Lecture by teacher, class discussion, recitation oral, lecture demonstration, small groups discussions, use of slides, textbook assignments, case studies 
Assessment/ Evaluation Details: 

Recommended Readings: 

Course Code:  CSC232GC2 
Course Title:  Computer Programming II 
Academic Credits:  02 (90 Hours of practical and assignments) 
Prerequisite/s:  None 
Objectives:  This course aims to introduce the object oriented programming paradigms. 
Intended Learning Outcomes: 

Contents: 

Teaching Methods:  Laboratory experiments, Supervised study, Practical records, Tutorial discussions by Instructors 
Assessment/ Evaluation Details: 

Recommended Readings: 

Course Code:  CSC233GC2 
Course Title:  Database Management Systems 
Academic Credits:  02 (30 Hours of Lectures and Tutorials) 
Prerequisite/s:  None 
Objectives:  This course aims to introduce the fundamental concepts necessary for designing, using, and implementing database systems and applications. 
Intended Learning Outcomes: 

Contents: 

Teaching Methods:  Use of diagrams and tables, Vocabulary drills, Recitation oral questions, Tutorial discussions by Instructors 
Assessment/ Evaluation Details: 

Recommended Readings: 

Course Code:  CSC234GC2 
Course Title:  Operating Systems 
Academic Credits:  02 (30 Hours of Lectures and Tutorials) 
Prerequisite/s:  None 
Objectives:  This course aims to provide fundamental concepts and functionalities of an operating system. 
Intended Learning Outcomes: 

Contents: 

Teaching Methods:  Case studies, Simulation, Use of chalkboard, Recitation oral questions, Tutorial discussions by Instructors 
Assessment/ Evaluation Details: 

Recommended Readings: 

Elective Course Units
Course Code:  CSC235GE2 
Course Title:  Group Project I 
Academic Credits:  2 (15 hours of mentoring and 100 hours of project development) 
Prerequisite/s:  None 
Objectives:  This course aims to provide an opportunity to improve the skills and knowledge of students to develop software as a team using software engineering principles. 
Intended Learning Outcomes: 

Contents: 

Teaching Methods:  Lecture by teacher, recitation of oral questions, lecture demonstration, textbook assignments, small group discussions, case studies, class projects, coaching. 
Assessment/ Evaluation Details: 

Course Code:  CSC236GE2 
Course Title:  Data Structures and Algorithms II 
Academic Credits:  02 (30 Hours of Lectures and Tutorials) 
Prerequisite/s:  CSC113GC2 
Objectives:  This course aims to introduce more complex data structures for the manipulation of data by using complex algorithms, evaluate solution methods and choose most appropriate solution. 
Intended Learning Outcomes: 

Contents: 

Teaching Methods:  Lecture by teacher, class discussions, textbook assignments, laboratory exercises 
Assessment/ Evaluation Details: 

Recommended Readings: 

Course Code:  CSC237GE2 
Course Title:  Numerical Methods 
Academic Credits:  02 (30 Hours of Lectures and Tutorials) 
Prerequisite/s:  CSC111GC3 
Objectives:  This course aims to enable the students to develop their programming skill in solving a variety of numerical problems. 
Intended Learning Outcomes: 

Contents: 

Teaching Meth  Lecture – demonstration, tutorial discussions, recitation of oral questions, use of chalkboard and presentations 
Assessment/ Evaluation Details: 

Recommended Readings: 

Course Code:  CSC238GE2 
Course Title:  Information Security Management 
Academic Credits:  02 (30 Hours of Lectures and Tutorials) 
Prerequisite/s:  CSC112GC3 
Objectives:  This course aims to introduce computer security, including network security, platform security, and familiarize defense mechanisms to handle attacks. 
Intended Learning Outcomes: 

Contents: 

Teaching Meth  Lecture by teacher, recitation of oral questions, lecture demonstration, textbook assignments, small group discussions, use of slides, use of recordings, use of motion pictures, case studies, class projects. 
Assessment/ Evaluation Details: 

Recommended Readings: 

Course Code:  CSC239GE2 
Course Title:  Multimedia Technologies 
Academic Credits:  2 (30 hours of lectures and tutorials) 
Prerequisite/s:  None 
Objectives:  This course aims to bring awareness regarding the numerous resources available in the area of multimedia and to discuss the relevance and underlying infrastructure of the multimedia. 
Intended Learning Outcomes: 

Contents: 

Teaching Methods:  Lecturedemonstration, recitation of oral questions, use of chalkboard and multimedia presentations 
Assessment/ Evaluation Details: 

Recommended Readings: 

Course Code:  CSC241GE2 
Course Title:  Bioinformatics 
Academic Credits:  2 (30 hours of lectures and tutorials) 
Prerequisite/s:  CSC112GC3 
Objectives:  This course aims to provide theoretical and practical knowledge in Bioinformatics methods including accessing the major public sequence databases, use of different computational tools to find sequences, analysis of protein and nucleic acid sequences by various webbased tools. 
Intended Learning Outcomes: 

Contents: 

Teaching Methods:  Class discussion, recitation oral questions, vocabulary drills, simulations. 
Assessment/ Evaluation Details: 

Recommended Readings: 

Course units effective from academic year 2004/2005 to 2014/2015
Core Course Units
Course Code  CSC201GC2 
Course Title  Data Structures and Algorithms 
Academic Credits  02 (30 hours of lectures and tutorials) 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Course Code  CSC202GC2 
Course Title  Database Management Systems 
Academic Credits  02 (30 hours of lectures and tutorials) 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Course Code  CSC203GC2 
Course Title  Software Engineering 
Academic Credits  02 (30 hours of lectures and tutorials) 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Course Code  CSC204GC2 
Course Title  Practical Computing – II 
Academic Credits  02 (90 hours of Practical) 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Course Code  CSC221GE2 
Course Title  Numerical Computing 
Academic Credits  02 (30 hours of lectures and tutorials) 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Course Code  CSC113GC2 
Course Title  Data Structures and Algorithms I 
Academic Credits  02 (30 hours of lectures and tutorials) 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Course units before academic year 2004/2005
Handling of Errors
Fixed point and Floating point arithmetic, implication of finite precision, errors in numerical computation.
Interpolation
Polynomial and interpolations.
Approximations
Uniform approximation, discrete least squares approximation, polynomial approximation, Fourier’s approximation, Chebyshev economisation.
Numerical Integration and Differentiation
Interpolatory numerical quadrature, Gaussian quadrature, adaptive integration, Romberg integration, numerical differentiation.
Solutions of Non – Linear Equations
Bisection method, fixed point iteration, Newton’s method, Aitken’s process, rates of convergence of the various methods.
Algorithms
Algorithms to implement the above methods in a computer using Pascal, C or FORTRAN.
(Prerequisites CSG 11).
Introduction
Definition as a methodology introduced by a mathematician named Abuja’far Mohammed ibn Musa al Khowarizmi: characteristics of algorithms; designing, devising and expressing algorithms, use and removal of recursion; validation, analysis, testing and profiling.
Greedy Method
Graph algorithms such as finding spanning tree and single source shortest path etc. Knapsack problem, job sequencing, etc.
Divide and Conquer
Binary search; merge sort; quick sort, etc.
Backtracking
Nqueen problem; sum of subsets, graph colouring; Hamiltonian cycle; knapsack problem.
Dynamic Programming
All pairs shortest paths; optimal binary search trees; Knapsack problem; travelling sales person problem.
Branch and Bound
Knapsack problem; travelling sales person problem.
Graph / Tree Algorithm
Breadthfirst search in graph (ANDgraph, ORgraph etc.); tree traversal on binary, threaded AVL and game trees, handling Btree and disk memory management.
Symbol Table Algorithm
Dynamic tree tables, Hash tables.
(Prerequisites CSG 14)
Introduction to Predicate Calculus
Syntax and semantic of predicate calculus, existential and universal quantifiers and variables; first `order predicate calculus; matching of predicate calculus expressions: binding and unification of variables; inference rules: Sound, complete rules: modus ponens, modus tolens, and – elimination, and – introduction, universal instantiation, and resolution etc.
Resolution Procedure
Conversion of predicate calculus expressions into clause forms, horn clauses; resolution refutation and theorem proving.
Prolog Programming
Introduction to prolog as a declarative language as well as a procedural language, syntax of prolog; representation of facts, rules, and queries; predicates, clauses, goals; flow of control; variable binding, unification and backtracing, cut fail, efficiency.
Introduction to Expert Systems
A brief introduction to Artificial Intelligence (A1), its techniques and to expert systems (ES); various definitions of ES, components of ES:” knowledge acquisition and representation;
inference mechanism; forward and backward chaining; handling uncertainty; examples of expert systems and expert system shell/tools.
(Prerequisites CSG 12)
Introduction
Definition as a centralised storage of database; prevention of redundancy and inconsistency; data independence; data abstraction; data models; data definition and data manipulation language (DDL and DML); database manager, administrator, users; overall system structure: Indexing and hashing.
Entity Model – Relationship Model
Entities, relationships, entitysets, relationshipsets, attributes. mapping constraints, keys, ER diagrams, reduction of ER diagrams to tables, design of an ER database scheme.
Relational Model
Structure of relational database, relational algebra and calculus;
Normalisation and Relational Database Design
Relational database design and its pitfalls; normalisation (First second, and third) using functional dependencies and multivalued functional dependencies.
Query Processing
SQL, query – by – example, Quell; Query interpretation, equivalence of expressions
Recovery and Concurrency
Transaction recovery, system media recovery, concurrency problems, locking, timestamping.
Security and integrity
General considerations and violations, security specification in SQL; other aspects of security (encryption etc.).
Case Study
Construction and manipulation of database using dBASE III+, dBASE IV, ACCESS or ORACLE etc. and SQL or alike.
(Prerequisite CSG 14.)
Course units to be effective from the academic year 2018/2019
Course Code:  CSC301G3  
Course Title:  Rapid Application Development  
Credit Value:  03  
Core/Optional:  core  
Hourly Breakdown:  Theory  Practical  Independent Learning 
45  —  105  
Objectives:  Provide knowledge, skills, and attitudes to rapidly develop software applications by choosing suitable approaches and best practices  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Lectures, Tutorial discussions, Case studies, Assignments, Guided Learning  
Assessment Strategy: 


References: 

Course Code:  CSC302G2  
Course Title:  Computer Programming III  
Credit Value:  02  
Core/Optional:  core  
Hourly Breakdown:  Theory  Practical  Independent Learning 
—  90  110  
Objectives:  Provide hands on practice in network socket programming, computer graphics, rapid application development, and network & server management  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Lectures, Use of multimedia presentations, Laboratory experiments, Tutorial discussions, Assignments  
Assessment Strategy: 
Semester1
Semester2


References: 

Course Code:  CSC303G2  
Course Title:  Data Communication and Computer Networks  
Credit Value:  02  
Core/Optional:  core  
Hourly Breakdown:  Theory  Practical  Independent Learning 
30  —  70  
Objectives:  Provide indepth understanding of architectures, algorithms, and standards in data communication  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Lectures, Recitation oral questions, Tutorial discussions, Supplementary reading  
Assessment Strategy: 


References: 

Course Code:  CSC304G3  
Course Title:  Team Software Project  
Credit Value:  03  
Core/Optional:  core  
Hourly Breakdown:  Theory  Practical  Independent Learning 
20  —  280  
Objectives:  Provide an opportunity to improve the skills and knowledge of students to develop software as a team using software engineering principles  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Mentoring, Small group discussions, Case studies, Presentations, Demonstrations  
Assessment Strategy: 

Course Code:  CSC305G2  
Course Title:  Graphics and Visual Computing  
Credit Value:  02  
Core/Optional:  core  
Hourly Breakdown:  Theory  Practical  Independent Learning 
30  —  70  
Objectives:  Provide indepth knowledge in the core concepts of computer graphics including object modelling, transformations, and rendering  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Lectures, Tutorial discussions, Assignments, Guided learning  
Assessment Strategy: 


References: 

The level3G syllabi can be downloaded here
Course units effective from academic year 2015/2016 to 2018/2019
Course Code:  CSC311GC3 
Course Title:  Graphics and Visual Computing 
Academic Credits:  03 (30 hours of lectures and 45 hours of practical) 
Aim:  Provide knowledge in computer graphics, and to introduce a standard Application Programming Interface for computer graphics 
ILOs: 

Contents: 

Teaching Methods:  Lecturedemonstration by Lecturer, Recitation of oral questions, Use of multimedia presentations, Assignments 
Assessment/ Evaluation Details: 

Recommended Readings: 

Course Code:  CSC312GC1 
Course Title:  Computer Programming III 
Academic Credits:  01 (45 hours of practical) 
Aim:  Introduce Prolog for programming in logic, and .Net framework for developing standalone and webbased applications 
ILOs: 

Contents: 

Teaching Methods:  Demonstration by Lecturer and Instructors, Use of multimedia presentations, Write practical records, Assignments 
Assessment/ Evaluation Details: 

Recommended Readings: 

Course Code:  CSC313GC2 
Course Title:  Rapid Application Development 
Academic Credits:  02 (30 Hours of lectures and Tutorials) 
Aim:  Provide knowledge, skills, attitudes to develop a software application rapidly by choosing suitable approaches and best practices 
ILOs: 

Contents: 

Teaching Methods:  Lecture by Lecturer, Demonstration, Group discussions, Vocabulary drills, Construction of summaries by students 
Assessment/ Evaluation Details: 

Recommended Readings: 

Course Code:  CSC314GC2 
Course Title:  Group Project II 
Academic Credits:  02 (15 hours of mentoring and 100 hours of project development) 
Aim:  Provide knowledge, skills and attitude to develop a software application rapidly using best practices for a given context 
ILOs: 

Contents: 

Teaching Methods:  Mentoring, Group discussion, Presentation, Demonstration, Use of Slides and Video 
Assessment/ Evaluation Details: 

Recommended Readings: 

Elective Course Units
Course Code:  CSC315GE2 
Course Title:  Knowledge Representation and Programming in Logic 
Academic Credits:  02 (30 Hours of lectures and Tutorials) 
Aim:  Introduce different knowledge representation paradigms and algorithmic techniques for logical reasoning 
ILOs: 

Contents: 

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

Recommended Readings: 

Course Code:  CSC316GE2 
Course Title:  Introduction to Systems and Network Administration 
Academic Credits:  02 (15 hours of lectures and 30 hours of practical) 
Aim:  Introduce theoretical and practical knowledge required to implement and administer a Local Area Network with Web, File and Proxy servers for Small/Medium Enterprises 
ILOs: 

Contents: 

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

Recommended Readings: 

* This unit is compulsory for those offering Special Degree in Computer Science.
Course units effective from academic year 2010/2011 to 2015/2016
Course Code  CSC303GC2 
Course Title  Operating Systems 
Academic Credits  02 (30 hours of lectures and tutorials) 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Course Code  CSC322GE2 
Course Title  Multimedia Technologies 
Academic Credits  02 (30 hours of lectures and tutorials) 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Course units effective from academic year 2005/2006 to 2010/2011
Course Code  CSC301GC2 
Course Title  Rapid Application Development 
Academic Credits  02 (30 hours of lectures and tutorials) 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Course Code  CSC302GC2 
Course Title  Internet Programming 
Academic Credits  02 (30 hours of lectures and tutorials) 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Course Code  CSC304GC2 
Course Title  Practical Computing – III 
Academic Credits  02 (90 hours of Practical) 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Course Code  CSC321GE2 
Course Title  Computer Graphics 
Academic Credits  02 (30 hours of lectures and tutorials) 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Course units before academic year 2005/2006
Solving System of Linear Equations
Direct method – Gaussian elimination, direct factorisation methods.
Error Analysis and Norms
Vector norms and matrix norms, condition numbers and error estimates, iterative improvement of solutions.
Iterative Methods
Jacobi method, GaussSeidel method, SQR method, criteria for convergence of these methods.
Solving Ordinary Differential Equations
Taylor series method, Euler’s method with local and global error analysis, RungeKutta method, predictor corrector method, automatic error monitoring change of step size and order, stability.
Algorithms
Algorithms to implement the above methods in a computer using Pascal, C or FORTRAN.
(prerequisite: CSG 25)
Introduction
Well engineered software, software process and evolution, software reliability, knowledge processing, group working, ergonomics.
Software Specification
Requirements and its evolution; system modelling; context, analysis, model description, real – time system modelling, data modelling; requirements definition and specification; requirements validation and prototyping, formal, algebraic and model – based specification.
Software Design
Top – down design, systems design, design decomposition, quality, design description language; object oriented design: objects, object classes, inheritance; function – oriented design: data flow diagrams, structure charts; user interface design: objective, metaphors, user guidance; quality assurance.
Programming Techniques
Data abstraction: abstract data typing; portability and reuse; computeraided software engineering; environment: operating system layer, database layer, object management system,
Software Validation
Program verification and validation: top down, bottomup testing, scheduling, debugging; testing techniques, verification.
Software Management:
Management activities, structures, programmer productivity; project planning and scheduling; software cost estimation, maintenance, documentation, quality assurance.
Case Study
Application on objectoriented design using Pascal, C++, or Visual BASIC.
(Prerequisite CSG 14)
Graphics Devices
Input devices: Keyboard, trackball, joystick, mouse, light pen, stylus tablet, sonic tablet, digitizing camera, output devices: rasterscan cathode ray tube (CRT), memory – tube display, plasma display, liquid crystal display, plotters, printers;
Image Storage
Image – 0nly storage, display memory storage, compressed storage, information storage, run length encoded storage, quadtree storage.
Scan Conversion
Scanconverting of a point, a straight line a circle, an ellipse, arcs and sectors, a rectangle; region filling; interior defined and boundary defined regions and filling algorithms; boundary block transfer.
Two – Dimensional graphics
Windows and view ports; clipping algorithms: midpoint algorithms, Sutherland – Hodgman algorithm; introduction to homogeneous coordinates and transformation of object: translation, scaling, rotation, mirror image;
Three – Dimensional Graphics
Parallel and perspective projections; clipping algorithms, transformation of objects; hidden line and hidden surface removal
Graphics Models
Mathematical models for two – dimensional and three dimensional curves and curved – surfaces (Bezier curves and B splines etc.)
GKS
introduction to graphics kernel systems (GKS) and the counter parts in Turbo Pascal / C/ BASIC, Visual BASIC, QBASIC
(Prerequisite CSG 14)
Introduction
Definition and history of operating systems; structure of an operating system; parallel and distributed computation.
Process Management
Concept of process, semaphores, concurrent process and programming, deadlock: prevention avoidance, detection, recovery and postponements
Storage Management
Real and virtual storage management: basic concepts contiguous and non – contiguous storage allocation: fixed and variable partition multiprogramming, storage swapping, paging/segmentation systems;
Processor Management
Job and processor scheduling; distributed computation view. Auxiliary Storage Management Disk performance optimisation; file and database systems
Performance
performance coprocessors , reduced instruction set computing (RISC), data flow; analytic modelling: queuing theory, Markov process
Networks and Security
Distributed computing – open systems interconnection view, operating systems security.
Compilers
Introduction to compilers, lexical analysis, syntax analysis and code generation.
Case Study
MS – DOS, PCDOS, OS/2, UNIX.
(Prerequisite: CSG 13, CSG 26)
Course units to be effective from the academic year 2018/2019
Course Code:  CSC301M3  
Course Title:  Advanced Database Design and Systems  
Credit Value:  03  
Core/Optional:  core  
Hourly Breakdown:  Theory  Practical  Independent Learning 
45  —  105  
Objectives:  Provide indepth understanding of the design, implementation and administration features of database management systems to effectively develop, and manage medium to largescale databases  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Lectures, Tutorial discussions, Assignments, Guided learning  
Assessment Strategy: 


References: 

Course Code:  CSC302M3  
Course Title:  Advanced Topics in Computer Networks  
Credit Value:  03  
Core/Optional:  core  
Hourly Breakdown:  Theory  Practical  Independent Learning 
45  —  105  
Objectives:  Provide indepth knowledge in advanced and emerging trends in network virtualisation and software defined networks  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Lectures, Recitation of oral questions, Supplementary reading, Practical demonstration  
Assessment Strategy: 


References: 

Course Code:  CSC303M3  
Course Title:  Artificial Intelligence  
Credit Value:  03  
Core/Optional:  core  
Hourly Breakdown:  Theory  Practical  Independent Learning 
30  30  140  
Objectives:  Provide indepth knowledge on design and analysis of intelligent systems for solving problems that are difficult or impractical to resolve using traditional approaches  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Lectures, Tutorial discussions, Guided learning, Assignments  
Assessment Strategy: 


References: 

Course Code:  CSC304M3  
Course Title:  High Performance Computing  
Credit Value:  03  
Core/Optional:  core  
Hourly Breakdown:  Theory  Practical  Independent Learning 
30  30  140  
Objectives:  Provide indepth knowledge on the computational aspects of high performance computing and methods of parallel programming  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Lectures, Practical demonstration, Assessments, Tutorial discussions, Guided learning  
Assessment Strategy: 


References: 

Course Code:  CSC305M3  
Course Title:  Image Processing and Computer Vision  
Credit Value:  03  
Core/Optional:  core  
Hourly Breakdown:  Theory  Practical  Independent Learning 
30  30  140  
Objectives:  Provide indepth knowledge in image processing and computer vision techniques to solve realworld problems, and develop skills for research in these fields  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Lectures, Assignments, Poster presentation, Guided learning  
Assessment Strategy: 


References: 

Course Code:  CSC306M3  
Course Title:  Machine Learning  
Credit Value:  03  
Core/Optional:  core  
Hourly Breakdown:  Theory  Practical  Independent Learning 
30  30  140  
Objectives:  Provide knowledge on the concepts of machine learning techniques for data analysis and modelling  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Lectures, Vocabulary drills, Assignments, Laboratory experiments, Guided learning  
Assessment Strategy: 


References: 

Course Code:  CSC307M3  
Course Title:  Mobile Computing  
Credit Value:  03  
Core/Optional:  core  
Hourly Breakdown:  Theory  Practical  Independent Learning 
45  —  105  
Objectives:  Provide indepth understanding of the concepts in mobile computing and the state of the art trends in mobile computing research  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Lectures, Assignments, Tutorial discussions, Guided learning  
Assessment Strategy: 


References: 

The level3M syllabi can be downloaded here
Course units effective from academic year 2015/2016 to 2018/2019
Course Code:  CSC311MC3 
Course Title:  Advanced Database Design and Systems 
Academic Credits:  03 (45 Hours of lectures and tutorials) 
Aim:  Provide knowledge and skills on advanced concepts of database design and management 
ILOs: 

Contents: 

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

Recommended Readings: 

Course Code:  CSC312MC4 
Course Title:  Data Communications and Computer Networks 
Academic Credits:  04 (60 Hours of lectures and tutorials) 
Aim:  Provide an indepth understanding of the architectures, algorithms and implementations of computer networks, and latest advancements in data communications 
ILOs: 

Contents: 

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

Recommended Readings: 

Course Code:  CSC313MC3 
Course Title:  Digital Image Processing 
Academic Credits:  03 (45 Hours of lectures and tutorials) 
Aim:  Provide principles and techniques of image processing together with skills in the design and implementation of computer vision programs 
ILOs: 

Contents: 

Teaching Methods:  Use of chalkboard, Vocabulary drills, Reading assignments in journals, poster presentation by students, Recitation of oral questions 
Assessment/ Evaluation Details: 

Recommended Readings: 

Course Code:  CSC314MC8 
Course Title:  Industrial Training 
Academic Credits:  08 (46 months of Industrial Training) 
Aim:  Provide experience, skills and attitude to work in an industrial environment 
ILOs: 

Contents: 

Assessment/ Evaluation Details: 

Course units effective from academic year 2005/2006 to 2015/2016
Course units before academic year 2005/2006
Systems of Linear Equations :
Gaussion Elimination, LUfactorization, Doolittle, Crouts, Choleski Methods, iterative methods, SteinRosenbeg Theorem, Kahan Theorem, OstrowskiReich Theorem.
Condition number and relative errors, iterative refinement. Sparse matrix techniques, storage schemes, graph representation of matrices, reducing the band width of a matrix. Cuthill and Mckee algorithm, reverse CuthillMckee algorithm, pivoting strategies for the local minimization of fill in, Markowitz algorithm.
Conjugate gradient method for large sparse matrices.
Eigen value computation :
Gerschgorin circle theorem, Power method, inverse power method, Householder’s methods, Jacobi and given – rotation, QL method, shifting techniques, deflation.
Introduction :
The AI problems, assumptions, criteria for success.
Problems and Problem Space :
Defining the problem as a state space search.
Problem characteristics.
Search techniques :
Issues in the Design of Search programs.
Heuristic search techniques :
Generate and test, hill climbing, bestfirst search, problem reduction, constraints satisfaction, meansends analysis.
Introduction to LISP Language :
Application Areas :
Game Playing
Expert Systems
Natural Language Processing
Perception and Action
Learning and Understanding
Planning
Parallel and distributed AI
Connectionist models
Commonsense
Basics of computer architecture and computer organization, CPU architecture, memory architecture, cache structure and design, virtual memory structure, pipeline processor architecture, pipeline memory structure, parallel architectures, RISC Vs CISC architecture, buses and system concept, CPU interface and memory system design, I/O interfacing, interrupt, DMA and multiprocessor configuration, segmentation and memory management mechanism, BitSliced Microprocessor architecture and microprogramming.
Study of some Representative Microprocessors.
Data models and Data analysis, file organization, B+ trees.
Relational model : Relations, ordering, attributes and domains, Cartesian products; keys, normal forms, functional dependence, relational algebra and calculus, views, null values, data normalisation into first, second and third normal forms, Boyce Codd normal form.
Relational database manipulation : SQL, QUEL, QBE, Query processing.
+Recovery, concurrency, security, integrity and control, Distributed and deductive databases.
Course units effective from academic year 2019/2020 to date
Course Code:  CSC401M3  
Course Title:  Advanced Algorithms  
Credit Value:  03  
Hourly Breakdown:  Theory  Practical  Independent Learning 
45  —  105  
Objectives:  Provide indepth knowledge for designing efficient algorithms using appropriate data structures and a variety of advanced computational techniques.  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Lectures, Tutorial discussion, ebased teaching, Open Educational Resources, Assignments, Guided learning  
Assessment Strategy: 


References: 

Course Code:  CSC402M3  
Course Title:  Compiler Design  
Credit Value:  03  
Hourly Breakdown:  Theory  Practical  Independent Learning 
45  —  105  
Objectives:  Provide indepth knowledge of compiler components and principles involved in compiler design.  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Lectures, Tutorial discussion, ebased teachinglearning, Open Educational Resources, Assignments, Guided Learning  
Assessment Strategy: 


References: 

Course Code:  CSC403M3  
Course Title:  Data Science  
Credit Value:  03  
Hourly Breakdown:  Theory  Practical  Independent Learning 
30  30  90  
Objectives:  Provide theoretical and practical knowledge on data science for solving datadriven problems and improving research skills in data science.  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Lectures, Tutorials, Laboratory experiments, ebased teachinglearning, take home exercises, Simulations, Use of Open Educational Resources, Guided Learning  
Assessment Strategy: 


References: 

Course Code:  CSC404M3  
Course Title:  Information Systems Security  
Credit Value:  03  
Hourly Breakdown:  Theory  Practical  Independent Learning 
45  —  105  
Objectives:  Provide knowledge to identify various security threats and propose suitable approaches to protecting Information Systems.  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Lectures, ebased teachinglearning, Tutorial discussion, Assignments, Simulations, Use of Open Educational Resources, Guided Learning  
Assessment Strategy: 


References: 

Course Code:  CSC405M3  
Course Title:  Systems and Network Administration  
Credit Value:  03  
Hourly Breakdown:  Theory  Practical  Independent Learning 
15  60  75  
Objectives:  Provide theoretical and practical knowledge required to manage and maintain hosts, network connectivity devices, and various networked servers.  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Lectures, Practical, ebased teachinglearning, Open Educational Resources, Assignments, Online based training, Simulation, Guided Learning  
Assessment Strategy: 


References: 

Course Code:  CSC406M6  
Course Title:  Research Project  
Credit Value:  06  
Hourly Breakdown:  Mentoring  Practical  Independent Learning 
20  —  580  
Objectives:  Develop capability of carrying out scientific research in the computing domain for solving real world problems.  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Reading assignments in journals, Research seminars, Open Educational Resources, Documentation  
Assessment Strategy: 

Course Code:  CSC407M6  
Course Title:  Industrial Training  
Credit Value:  06  
Hourly Breakdown:  Mentoring  Practical  Independent Learning 
20  —  580  
Objectives:  Provide an opportunity to develop skills and attitude, and gain experience in finding IT solutions to problems in an industrial environment.  
Intended Learning Outcomes: 


Contents: 


Teaching/Learning Methods:  Mentoring, Weekly recording of training diaries, Code reviews, Progress meetings, Supervised study  
Assessment Strategy: 

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
Course Code  CSC401MC4 
Course Title  Advanced Algorithms 
Academic Credits  04 (60 hours of lectures and tutorials) 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Course Code  CSC402MC2 
Course Title  Artificial Intelligence – II 
Academic Credits  02 (30 hours of lectures and tutorials) 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Course Code  CSC403MC4 
Course Title  Numerical Linear Algebra and Solutions of Differential Equations 
Academic Credits  02 (60 hours of lectures and tutorials) 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Course Code  CSC404MC4 
Course Title  Project 
Academic Credits  04 (minimum 200 hours) 
Objectives: 

Assessment/ Evaluation Details: 

Course Code  CSC405MC3 
Course Title  Parallel Computing 
Academic Credits  03 (45 hours of lectures and tutorials) 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Course Code  CSC406MC3 
Course Title  System Design, Analysis and Project Management 
Academic Credits  03 (45 hours of lectures and tutorials) 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Course Code  CSC407MC4 
Course Title  Data Mining and Machine Learning 
Academic Credits  04 (60 hours of lectures and tutorials) 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Elective Course Units
Course Code  CSC421ME3 
Course Title  Compiler Design 
Academic Credits  03 (45 hours of lectures and tutorials) 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

Course Code  CSC422ME3 
Course Title  Mobile Computing 
Academic Credits  03 (45 hours of lectures and tutorials) 
Objectives: 

Contents: 

Assessment/ Evaluation Details: 

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.