MASTER OF SCIENCE COMPUTER SCIENCE (MCS)
| Module Code | Module Name | Description |
|---|---|---|
|
MCS501
|
Advanced Data Structures & Algorithms
|
Topics include Algorithm analysis covering RAM model – notations, Recurrence analysis – Masters Theorem, Amortized analysis, Disjoint sets, Randomized Algorithms - n-queen problem. Sorting and Order Statistics covering -Heap Sort, Selection sort, Quick sort, Heap Structures, Min-Max Heaps, Leftist trees, Binomial Heaps, Fibonacci heaps. Search Structures covering OBST, AVL, 2-3 trees, Red-Black trees, B-trees, Digital trees, tries, Splay trees. Graph Algorithms covering Minimum spanning trees, Single source shortest path, All pairs shortest path, Maximum flow, Planar graph coloring. Advanced design and Analysis Techniques covering Dynamic Programming, Greedy Algorithms, Amortizes Analysis, Linear programming, Job Scheduling, TSP.NP-Hard and NP-complete: Non-deterministic algorithms, clique problem, Vertex cover problem, TSP. |
|
MCS502 |
Advanced Operating System Design |
Introduction and History of OS, OS Concepts, System Calls, OS Structure, PROCESSES: Process Concept, Interprocess Communication, Classical IPC Problems & Scheduling. Principles of I/O Hardware & I/O Software, Deadlocks, RAM Disks, Disks & Terminals. Basic Memory Management, Swapping, Virtual Memory, Page Replacement Algorithms, Design Issues for Paging Systems & Segmentation. Files, Directories, File System Implementation, Security & Protection Mechanisms. MINIX 3. Overview & implementation of processes, the system task & the clock task in minix 3. Overview & implementation of I/O, Block Devices, Process Manager, & File System in Minix3. |
|
MCS503 |
Advanced Security in Computing |
Security Concepts: Confidentiality, privacy, integrity, authentication, non-repudiation, availability, access control, defence in depth, least privilege, how these concepts apply in the cloud, what these concepts mean and their importance in PaaS, IaaS and SaaS. e.g. User authentication in the cloud; Cryptographic Systems- Symmetric cryptography, stream ciphers, block ciphers, modes of operation, public-key cryptography, hashing, digital signatures, public-key infrastructures, key management,X.509 certificates, OpenSSL. Multi-Tenancy Issues: Isolation of users/VMs from each other. How the cloud provider can provide this; Virtualization System Security Issues- e.g. ESX and ESXi Security, ESX file system security, storage considerations, backup and recovery; Virtualization System Vulnerabilities- Management console vulnerabilities, management server vulnerabilities, administrative VM vulnerabilities, guest VM vulnerabilities, hypervisor vulnerabilities, hypervisor escape vulnerabilities, configuration issues,malware (botnets etc). Virtualization System-Specific Attacks: Guest hopping, attacks on the VM (delete the VM, attack on the control of the VM, code or file injection into the virtualized file structure), VM migration attack, hyperjacking. Technologies For Virtualization-Based Security Enhancement: IBM security virtual server protection, virtualization-based sandboxing; Storage Security- HIDPS, log management, Data Loss Prevention. Location of the Perimeter. Legal And Compliance Issues: Responsibility, ownership of data, right to penetration test, local law where data is held, examination of modern Security Standards (eg PCIDSS), how standards deal with cloud services and virtualization, compliance for the cloud provider vs. compliance for the customer. |
|
MCS504 |
Database Engineering |
Relational Model Constraints, update operations, transactions, and dealing with constraint violations. Relational database design algorithms, MVDs and 4NF, JD and 5NF, inclusion dependencies, other dependencies and normal forms. Query Processing & Optimization Measures of Query Cost, Selection Operation, Sorting, Join Operation, Other Operations, Evaluation of Expressions Transformation of Relational Expressions, Estimating Statistics of Expression Results, Choice of Evaluation Plans, Materialized Views, Advanced Topics in Query Optimization. Object & Object-Relational Databases Concepts of Object databases, Object database standards, languages and design.Object-relational and Extended-Relational Systems. Security, Advanced Modeling Database Security Enhanced data models for advanced applications – active databases, temporal databases, spatial and multimedia databases, deductive databases. Advanced Transaction Processing - Transaction-Processing Monitors, Transactional Workflows, E-Commerce, Main-Memory Databases, Real-Time Transaction Systems, Long-Duration Transactions Case studies: PostgreSQL, IBM DB2, Oracle, Microsoft SQL server. |
|
MCS505 |
Research Methodologies in Computer Science |
Research – Qualities of Researcher – Components of Research Problem – Various Steps In Scientific Research – Types of Research – Hypotheses Research Purposes - Research Design – Survey Research – Case Study Research. Technical Research Paper Writing and Publication Data Collection – Sources of Data – Primary Data – Secondary Data - Procedure Questionnaire – Sampling Methods – Merits and Demerits – Experiments – Observation Method – Sampling Errors - Type-I Error & Type-II Error.Statistical Analysis – Introduction To Statistics – Probability Theories – Conditional Probability, Poisson Distribution, Binomial Distribution and Properties of Normal Distributions – Hypothesis Tests – One Sample Test – Two Sample Tests / Chi-Square Test, Association of Attributes - Standard Deviation – Co-Efficient of Variations . Statistical Applications – Correlation and Regression Analysis – Analysis of Variance – Partial and Multiple Correlation – Factor Analysis and Conjoint Analysis – Multifactor Evaluation – Two-Factor Evaluation Approaches. Research Reports – Structure and Components of Research Report – Types of Report, Characteristics of Good Research Report, Pictures and Graphs, Introduction to SPSS.nt Costs and other aspects, Budgeting for security audits, Selecting external Security Consultants, Key Success factors for security audits. |
|
MCS506 |
Natural Language Processing and Machine Learning |
The module is intended to combine the theory with the hands-on practice of solving modern industry problems with an emphasis on image processing and natural language processing. Topics include outlier detection, advanced clustering techniques, deep learning, dimensionality reduction methods, frequent item set mining, and recommender systems. Topics also considered include reinforcement learning, graph-based models, search optimization, and time series analysis. The module uses Python as the primary language, although later projects can include R and other languages. The module also introduces some industry standard tools to prepare students for artificial intelligence jobs. Software Security in the Era of AI. module equips students with skills to analyse text covering the following concepts; finding the structure of words syntax, semantic parsing, language modeling, recognizing textual entailment. |
|
MCS507 |
Software Architecture and Design Patterns |
This module approaches object-oriented software design from three perspectives: the software engineering principles that enable development of quality software, the modeling of software components using the Unified Modeling Language (UML), and the application of design patterns as a means of reusing design models that are accepted best practices. These patterns include both the original software patterns as well as more recent modularization patterns for software construction. Students are expected to write a detailed description of the design for each of their programs, incorporating UML models as appropriate. Students implement their programs in the Java programming language. In addition, there is at least one significant assignment that requires designing and documenting a software subsystem without implementation. |
|
MCS508 |
Optimization Techniques |
This course provides an in-depth study of optimisation techniques used to model and solve complex computational, engineering, and decision-making problems. It equips students with theoretical foundations and practical skills to formulate optimisation problems and apply classical, modern, and intelligent optimisation methods. Emphasis is placed on algorithm design, performance analysis, and real-world applications in computer science such as machine learning, networks, operations research, and artificial intelligence. This module covers the following areas; Introduction to Linear Programming, Duality Theory and Sensitivity Analysis, Dynamic Programming, Integer Programming, Nonlinear Programming and Queuing Theory. |
|
MCS509 |
Robotics Engineering |
This module covers the following areas; An overview of Robotics and its Applications, Manipulators, Sensing. Computer Vision, Current and Future Applications in Industry and Study of Research Aspects in Robotics. |
|
MCS510 |
Parallel and Distributed Algorithms |
Introduction and History of OS, OS Concepts, System Calls, OS Structure, PROCESSES: Process Concept, Interprocess Communication, Classical IPC Problems & Scheduling. Principles of I/O Hardware & I/O Software, Deadlocks, RAM Disks, Disks & Terminals. Basic Memory Management, Swapping, Virtual Memory, Page Replacement Algorithms, Design Issues for Paging Systems & Segmentation. Files, Directories, File System Implementation, Security & Protection Mechanisms. MINIX 3. Overview & implementation of processes, the system task & the clock task in minix 3. Overview & implementation of I/O, Block Devices, Process Manager, & File System in Minix3. |
|
MCS560 |
Dissertation |
The Final year dissertation involves an in-depth research in a particular area of interest in Information systems management. The research finding are expected to be published in peer reviewed journals or conference proceedings. Finally all the work should be presented in a thesis. |



