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 object-oriented 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 in-depth knowledge in technologies to develop multimedia-based 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 in-depth 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 level-1G 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.
Top-down 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 level-2G 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: | Lecture-demonstration, 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 web-based 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
N-queen 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
Breadth-first search in graph (AND-graph, OR-graph 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, entity-sets, relationship-sets, attributes. mapping constraints, keys, E-R diagrams, reduction of E-R diagrams to tables, design of an E-R 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: |
Semester-1
Semester-2
|
||
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 in-depth 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 in-depth 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 level-3G 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: | Lecture-demonstration 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 web-based 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, Gauss-Seidel 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, Runge-Kutta 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; computer-aided software engineering; environment: operating system layer, database layer, object management system,
Software Validation
Program verification and validation: top down, bottom-up 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 object-oriented 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: raster-scan 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, quad-tree storage.
Scan Conversion
Scan-converting 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, PC-DOS, 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 in-depth understanding of the design, implementation and administration features of database management systems to effectively develop, and manage medium to large-scale 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 in-depth 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 in-depth 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 in-depth 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 in-depth knowledge in image processing and computer vision techniques to solve real-world 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 in-depth 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 level-3M 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 in-depth 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 (4-6 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, LU-factorization, Doolittle, Crouts, Choleski Methods, iterative methods, Stein-Rosenbeg Theorem, Kahan Theorem, Ostrowski-Reich 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 Cuthill-Mckee 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, best-first search, problem reduction, constraints satisfaction, means-ends 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
Common-sense
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, Bit-Sliced 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 in-depth 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, e-based 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 in-depth knowledge of compiler components and principles involved in compiler design. | ||
Intended Learning Outcomes: |
|
||
Contents: |
|
||
Teaching/Learning Methods: | Lectures, Tutorial discussion, e-based teaching-learning, 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 data-driven problems and improving research skills in data science. | ||
Intended Learning Outcomes: |
|
||
Contents: |
|
||
Teaching/Learning Methods: | Lectures, Tutorials, Laboratory experiments, e-based teaching-learning, 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, e-based teaching-learning, 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, e-based teaching-learning, 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, problem-solving, 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 in-depth 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 in-depth 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 in-depth 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, Runge-Kutta methods, Predictor-Corrector 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 : Ritz-Galerkin 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; input-output, 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, context-free grammars, recognisers, parse trees, top-down parsing, recursive descent, ambiguity, left recursion, backtracking, Warshall’s algorithm, context clashes, Bottom-up parsing, operator precedence, operator grammars, constructing, precedence matrices producing abstract syntax trees and semantic actions. Symbol and type tables, syntax directed translation.
Storage Allocation : Run-time stack, heap, dope vectors, garbage collection
Code Generation : Stack machines, assemble Language, P-Code, 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, B-splines, beta-spline, Bezier curves and surfaces, spline patches.
Solid Models : Representation, combining operations, display.
Shading algorithms : Matt surfaces, specular reflections, Phong model, Torrence-Sparrow model, colour.
Raster algorithm : Halftoning, Flood-Fill 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, e-mail Service.