Subject : Master of Computer Application (MCA) (Six Semester Course)
Department of Computer Science
Semester-wise Distribution of Courses and Credits
SEMESTER I
CAM101 : Introduction to Computer Programming through C
CAM102 : Discrete Mathematical Structures
CAM103 : Operating System Concepts
CAM104M : Minor Elective: Business Accounting (only for computer science and computer application students)
CAM105 : Lab. Exercises based on course CAM101
CAM106 : PC Software Laboratory
SEMESTER II
CAM201 : Computer Organization and Architecture
CAM202 : Database Management Systems
CAM203 : Data and File Structures
Minor Elective: Any one of the following courses(only for computer science and computer application students)
CAM204M : E-commerce
CAM205M : Numerical Computing
CAM206 : Lab. Exercises based on courses CAM201 (Credit : 1) and CAM202(Credit:2)
CAM207 : Lab. Exercises based on course CAM203
SEMESTER III
CAM301 : Design Methods and Analysis of Algorithms
CAM302 : Object Oriented Programming through JAVA
CAM303 : Data Communication and Computer Networks
CAM304M : Minor Elective: Theory of Computation (only for computer science and computer application students)
CAM305 : Lab. Exercises based on course CAM301
CAM306 : Lab. Exercises based on course CAM302
SEMESTER IV
CAM401 : Compiler Design
CAM402 : Computer Graphics
CAM403 : Artificial Intelligence
CAM404 : Software Engineering
CAM405 : Technical Writing and Research Seminar
CAM406 : Lab. Exercises based on course CAM401
CAM407 : Lab. Exercises based on course CAM402
SEMESTER V
CAM501 : Parallel Computing
CAM502 : Internals of UNIX OS and Network Programming
CAM503(A-F) : | Elective Course I: Any one of the following |
CAM504(A-F) : | Elective Course II: Any one of the following CAM504A: Bioinformatics Algorithms CAM504B: Simulation and Modeling CAM504C: Operation Research CAM504D: Quantum Computing CAM504E: Introduction to Cryptography CAM504F: Advanced course in Software Engineering |
CAM505 : Lab. Exercises based on course CAM501
CAM506 : Lab. Exercises based on course CAM502
SEMESTER VI:
CAM601 : Dissertation
CAM602 : Comprehensive Viva
SEMESTER I
CAM101 : Introduction to Computer Programming through C (Credits: 4)
Basic Programming Concepts: Introduction to the basic ideas of problem solving and programming using principles of top-down modular design, Flowcharts, Abstraction Mechanisms, Stepwise Refinement.
Syntactic Elements of a Language, General Syntactic Criterion, Formal Definition of Syntax, Semantics, Storage Management, Static Storage Management, Stack-Based Storage Management, Heap Storage Management, Operating and Programming Environment.
Introduction to Programming Language C: Data Types, Instruction and its Types, Storage Classes, Operators and Hierarchy of Operations, Expressions in C, Control and Repetitive Statements, break, continue, Functions: User Defined Functions and Library Functions, Local and Global Variables, Parameter Passing, Pointers, Arrays, Strings, C Preprocessors, Structures, Input and Output in C, C-Library.
Introduction to the Major Programming Paradigms: Imperative Language, Object Oriented Languages, Functional Languages, Logic Languages, Parallel Languages etc.
CAM102 : Discrete Mathematical Structures (Credits: 4)
Sets, Relations & Functions: Property of binary relations, equivalence, compatibility, partial ordering relations, hasse diagram, functions, inverse functions, composition of functions, recursive functions.
Mathematical Logic: Logic operators, Truth tables, Theory of inference and deduction, mathematical calculus, predicate calculus, predicates and quantifiers.
Groups & Subgroups: Group axioms, Monoids , semi groups, Isomorphism, homomorphism , automorphism. Lattices & Boolean Algebra: Truth values and truth tables, the algebra of propositional functions, Boolean algebra of truth values.
Combinatorics & Recurrence Relations: Permutation, Combination, Principle of Inclusion and Exclusion, Recurrence Relations, Generating Functions
Graph theory: Basic Concepts of Graphs and Trees, Adjacency and Incidence Matrices, Spanning Tree, Transitive Closure, Shortest Path, Planar Graphs, Graph Coloring, Eularian and Hamiltonian graphs, Applications of Graph Theoretic Concepts to Computer Science.
CAM103 : Operating System Concepts (Credits: 4)
Introduction: Definition, Design Goals, Evolution; Concept of User, job and Resources; Batch processing, Multi-programming, Time sharing; Structure and Functions of Operating System.
Process Management: Process states, State Transitions, Process Control Structure, Context Switching, Process Scheduling, Threads.
Memory Management: Address Binding, Dynamic Loading and Linking Concepts, Logical and Physical Addresses, Contiguous Allocation, Fragmentation, Paging, Segmentation, Combined Systems, Virtual Memory, Demand Paging, Page fault, Page replacement algorithms, Global Vs Local Allocation, Thrashing, Working Set Model, Paging.
Concurrent Processes: Process Interaction, Shared Data and Critical Section, Mutual Exclusion, Busy form of waiting, Lock and unlock primitives, Synchronization, Classical Problems of Synchronization, Semaphores, Monitors, Conditional Critical Regions, System Deadlock, Wait for Graph, Deadlock Handling Techniques:
Prevention, Avoidance, Detection and Recovery.
File and Secondary Storage Management: File Attributes, File Types, File Access Methods, Directory Structure, File System Organization and Mounting, Allocation Methods, Free Space management; Disk Structure, Logical and Physical View, Disk Head Scheduling, Formatting, Swap Management. Protection & Security.
UNIX/ LINUX and WINDOWS as example systems.
CAM104M : Minor Elective: Business Accounting (only for computer science and computer application students) (Credits: 3)
Introduction, Definition, Concepts and Conventions of Accounting, Principles of Double Entry System, Recording, Classification and Summarization of business transactions, Preparation of Cash Book and Bank Reconciliation statement.
Final Accounts: Final Accounts of Sale proprietary concern, Partnership and Joint Stock Companies.
Cost Accounting: Definition, objectives and significance of cost Accounting, cost Accounting vs. Financial Accounting, Classificvation of costs, Preparation of Cost sheet.
CAM105 : Lab. Exercises based on course CAM101 (Credits: 3)
This paper consists of programming exercises based on course CAM101, Introduction to Computer
Programming through C.
CAM106 : PC Software Laboratory (Credits: 3)
MS-Office Package: MS Word, MS-Excel, MS-Powerpoint, MS Access and Latex.
SEMESTER II
CAM201 : Computer Organization and Architecture (Credits: 4)
Basic Organization : Von Neumann Machine (IAS Computer), Operational flow chart (Fetch, Execute), Instruction Cycle, Organization of Central Processing Unit, Hardwired & micro programmed control unit, Single Organization, General Register Organization, Stack Organization, Addressing modes.
Memory Organization : Memory Hierarchy, Main memory (RAM/ROM chips), Auxiliary memory, Associative memory, Cache memory, Virtual Memory, Memory Management Hardware, hit/miss ratio, magnetic disk and its performance, magnetic Tape etc.
I/O Organization : Peripheral devices, I/O interface, Modes of Transfer, Priority Interrupt, Direct Memory Access, Input-Output Processor, and Serial Communication. I/O Controllers, Asynchronous data transfer, Strobe Control, Handshaking.
Instruction Formats, Op Codes Mnemonics, Data Transfer, Arithmetic, Branch, Loop, Logical, Shift and Rotate Instructions, String Instructions and Text Processing.
Stacks, Calls, Returns, Near and Far Procedures, Interrupts and Their Routines, Directives, Pseudo-ops, Macros and Conditional Machine Instructions, Disk File Handling, Input and Output Instructions, Device Drivers.
CAM202 : Database Management Systems (Credits: 4)
Database Systems, View of Data Models, Database Languages, DBMS Architecture, Database Users and Data Independence.
ER Modeling, relation types, role and Structural Constraints, Extended ER Modeling Features, Design of an ER Database Schema, Reduction of ER Schema to Tables. Relational Model: Relational Model Concepts, Relational Algebra, Relational Calculus.
Introduction to SQL: SQL data types and literals, Types of SQL commands, SQL operators, Tables, views and indexes, Queries and sub queries, Aggregate functions, Cursors in SQL.
Relational Database Design: Functional and multi-valued Dependencies, Desirable Properties of Decomposition, Normalization up to 5 NF.
Concept and Design of Object Oriented Database.
Selected Database Issues: Security, Transaction Management, Basic Algorithms to Query Processing and Query Optimization, Concurrency Control, Recovery Techniques. Case Study: Oracle/MS-SQL.
CAM203 Data and File Structures (Credits: 4)
Basic Data Structures : Arrays, Linked Lists, Stack, Queue, Dequeue, Tree, Heap, Hashing, Hash Table and Collision resolution, Representation of Graphs and Applications. Basic algorithms for Creation, Manipulation and Applications of Data Structures. Algorithm Complexity and Time-Space trade-off.
Internal Sorting Algorithms : Selection, Bubble, Insertion, Heap, Quick Sort. External Sorting Algorithms: Merge Sort.
File Structures: Primary File Organization: Sequential, Direct, Indexed Sequential, Multi-list File Organization, Inverted Files.
CAM204M : Minor Elective: (only for computer science and computer application students) E-commerce (Credits: 3)
Introduction, Definition, Objectives, Advantages and disadvantages, Forces driving E-Commerce, Traditional commerce Vs. E-Commerce, E-Commerce opportunities for industries, Growth of E-Commerce.
E-Commerce Models: Business to consumer, Business to Business, Consumer to Consumer, other models – Brokerage Model, Aggregator Model, Info-mediary Model, Community Model and value chain Model.
Electronic Payment Systems: Special features required in payment systems, Types of E-payment systems, ECash, E-cheque, credit card, Smart Card, Electronic Purses.
E-Marketing, E-Customer Relationship Management, E-Supply Chain Management.
Security Issues in E-Commerce: Security risk of E-Commerce, Types of threats, Security tools and risk management approach. Cyber laws, Business Ethics, IT Acts.
CAM205M : Minor Elective:: Numerical Computing (only for computer science and computer application students (Credits: 3)
Note : Emphasis is on computational methods
Errors in Computer Arithmetic, Normalization.
Bisection, Falsiposition and Newton-Raphson methods for solution of nonlinear equations. Errors in the solutions, Convergence of Solutions.
Gauss, Gauss-Siedel and Iterative methods for system of linear equations. Ill conditioned system, Pivotal Condensation, Matrix Inversion, Eigen-values, Eigen-vector, Diagonalization of Real Symmetric Matrix by Jacobi's Method.
Introduction to Finite Differences.
Polynomial Interpolation using Newton's and Lagrange's formulae.
Numerical Differentiation. Numerical Integration : Trapezoidal Rule, Simpson's Rule, Weddle's Rule, Gauss Quadrature Formula. Error in numerical Integration.
Numerical Solution of differential Equations: Picards Method, Taylor’s Series Method, Euler’s Method, Modified Euler’s Method, Runge-Kutta Method, Predictor-Corrector Method.
CAM206 : Lab. Exercises based on courses CAM201 and CAM202 (Credits: 3)
This paper consists of lab exercises based on course: CAM201 (Credit: 1): Computer Organization and Architecture and CAM202 (Credit: 2), Database Management Systems.
CAM207 : Lab. Exercises based on course CAM203 (Credits: 3)
This paper consists of programming exercises based on paper: CAM203, Data and File Structures.
SEMESTER III
CAM301 Design Methods and Analysis of Algorithms (Credits: 4)
Elementary Data Structures, Basic Computational Models.
Simple Algorithms. Analyzing Algorithms, Asymptotic Notation, Recurrence relations. Design Methods : General Consideration, Algorithm design paradigms and representative problems: Divide and Conquer (Binary search, Merge Sort, Quick Sort, Arithmetic with Large integers, etc.), Greedy Method (Minimal Spanning Tree, Shortest Paths, Knapsack, etc.), Dynamic Programming (Chained Matrix Multiplication, Optimal Storage on Tapes, Shortest Paths, Optimal Search Trees, etc.), Backtracking (8-queens problem, Graph Colouring, Hamiltonian Cycles, etc.), Branch and Bound (0/1
Knapsack problem, Travelling Salesperson, etc.), Approximation (Graph Colouring, Task Scheduling, Bin Packing, etc.), Probabilistic Algorithms (Numerical Integration, Primality Testing, etc.).
Graph Algorithms: BFS, DFS and its applications.
Polynomial Evaluation and Interpolation, Fast Fourier transforms.
Intractable Problems : Basic Concepts, Nondeterministic Algorithms, NP Completeness, Cook's Theorem, Examples of NP-Hard and NP-Complete problems. Problem Reduction.
Lower Bound Techniques: Comparison tree, Reduction, Adversary argument.
CAM302 : Object Oriented Programming through JAVA (Credits: 4)
Object Oriented Analysis and Design Concepts: Object Modeling Technique; General Concepts: Object, Class, Data Abstraction and Encapsulation, Inheritance, Polymorphism, Dynamic Binding, Message Passing; Benefits of OOP, Object-oriented Languages.
Object oriented Programming using JAVA:
Language Basics- Variables Primitive Data Types Operators Expressions, Statements, and Blocks Control Flow Statements Arrays, Classes and Objects, Constructors and Destructors, Operator Overloading, Type Conversions, Inheritance, Interfaces, Packages, Threads, Exception handling, colors, fonts and graphics, Applets, working with input/output.
CAM303 : Data Communication and Computer Networks (Credits: 4)
Introduction, Networks models – OSI model, Internet model.
Physical layer : Signals - Analog, Digital, Digital transmission - Coding, Sampling, Analog Transmission - Modulation of Digital and analog signals, Multiplexing, Switching, Transmission Media.
Data link layer : Error detection and Correction, Data link control and protocol, Point to point access, Multiple access , LANS- Traditional Ethernet, Fast Ethernet, Gigabit Ethernet, Wireless LAN’s - IEEE 802.11, Blue tooth, Connecting LANs - Connecting devices, Satellite networks.
Network layer : Internetworking, Addressing, Routing, Networks layer protocols – ARP , IP, ICMP, Ipv6, Routing- Introduction, Routing Algorithms & Protocols.
Transport layer : UDP, TCP, Congestion and Control, Quality of service ( QOS ) and techniques to improve QOS.
Application layer : DNS, Electronic mail, SMTP, File transfer, FTP, HTTP, World wide web, Network Security, Network Management Protocol.
CAM304M : Minor Elective: Theory of Computation (only for computer science and computer application students) (Credits: 3)
A brief review of Finite Automata, Regular expressions, Regular languages, Deterministic and nondeterministic computations. Pumping Lemma for Regular languages, Context free languages, Pushdown automaton, Pumping Lemma for Context free languages, Grammar types and Chomsky Hierarchy. Turing Machines (TM), Variations of TM’s, Universal Turing Machines (UTM), Church-Turing Thesis, Relation of Languages to Automata. Turing computable functions, Halting problem, Solvability, Undecidability and Computability.
CAM305 : Lab. Exercises based on course CAM301 (Credits: 3)
This paper consists of programming exercises based on course CAM301: Design Methods and Analysis of Algorithms.
CAM306 : Lab. Exercises based on course CAM302 (Credits: 3)
This paper consists of programming exercises based on course CAM302: Object Oriented Programming through JAVA.
SEMESTER IV
CAM401 : Compiler Design (Credits: 4)
Compilers and Translators, Syntactic and lexical structure of a language.
Finite Automata and design of lexical analyzer, Context free grammars and derivation of parse trees, basic parsing techniques: shift-reduce, operator-precedence, top-down, predictive. Disambiguation of grammar.
Automatic construction of efficient parsers: LR parser, construction of parsing tables. Syntax Directed Translation, L-attributed and S-attributed Definitions.
Code Generation and Code Improvement.
Symbol table organization, Run time storage management, Error detection and recovery.
CAM402 : Computer Graphics (Credits: 4)
Introduction to Computer Graphics, Display Technologies, Random and Raster Scan, frame buffer, bit plane, Input Devices, Graphics Standards, Graphics Hardware.
Line and Circle Drawing Algorithms, Scan Conversion, filling algorithms, clipping, Two and Three Dimensional transformations, Homogeneous Coordinates, Rigid Body and Affine transformations, Parallel and perspective projections, vanishing points, viewing transformation, Hidden line removal method, Curve and Surface: Cubic Spline, Bezier curve, B-Spline Curves, Parametric Surface, Surface of revolution, Sweep surface, Fractal Curves and surfaces.
CAM403 : Artificial Intelligence (Credits: 4)
Introduction: Definitions and approaches, Foundations of A.I., History of AI, Areas and state of the art in A.I., A.I. Programming languages, Concept of Intelligent Agents.
Problem Solving: Problem solving as state space search, production system, control strategies and problem characteristics; Search techniques: Breadth First and Depth-first, Hill-climbing, Heuristics, Best-First Search, A* algorithm, Problem reduction and AO* algorithm, Constraints satisfaction, Means Ends Analysis, Game Playing.
Knowledge Representation and Reasoning: Syntactic and Semantic representations, Predicate and prepositional logic, Resolution, Unification, Deduction and theorem proving, Question answering; Forward versus backward reasoning, Matching, Indexing; Ontological Engineering, Formal Theory of Beliefs, Semantic Net, Frames, Conceptual Dependencies and Scripts, Truth Maintenance Systems.
Selected Topics and Applications: Philosophical issues, Introduction to Natural Language Processing, Expert Systems and Multiagent Systems.
CAM404 : Software Engineering (Credits: 4)
Introduction to Software Engineering: Definition; Software development and life-cycle models, CMM, Software Quality, role of metrics and measurement.
Requirements Analysis and Specification: SRS Building Process, Specification Languages, Validation of SRS, metrics, monitoring and control, Object Oriented analysis.
Software Project Planning: Software Cost Estimation Techniques, Project Scheduling & Tracking, Project Team Standards, software configuration management, management.
Software Design and Implementation: Design Concepts and Notations, Functional & Object Oriented Design Concepts, Design Strategies, Design specification and verification, Metrics, Design Translation Process.
Testing Strategies & Techniques, Debugging, Software Maintenance, Metrics and Models: Design Metrics, Complexity Metrics, Software Reliability and Availability Models, etc.
Software Reengineering, Cleanroom Approach, Software Reuse.
Introduction to IEEE Standards, Case Studies.
CAM405 : Technical Writing and Research Seminar (Credits: 4)
Students will be required to write a Paper on a topic approved by the department and to give a presentation based on it.
CAM406 : Lab. Exercises based on course CAM401 (Credits: 3)
This paper consists of programming exercises based on course CAM401: Compiler Design.
CAM407 : Lab. Exercises based on course CAM402 (Credits: 3)
This paper consists of programming exercises based on course CAM402: Computer Graphics.
SEMESTER V
CAM501 : Parallel Computing (Credits: 4)
Introduction to Parallel Computing: Supercomputers and grand challenge problems, Modern Parallel Computers, Data Dependence Graph, Data Parallelism, Functional Parallelism, Pipelining and Data Clustering.
Interconnection Networks: Switch Network Topologies, Direct and Indirect Network Topology, Bus, Star, Ring, Mesh, Tree, Binary Tree Network, Hyper Tree Network, Hybrid, Hypercube, Perfect Shuffle Network, Torus and Butterfly Network.
Performance Analysis: Introduction, Execution Time, Speedup, Linear and Superlinear Speedup, Efficacy and Efficiency, Amdahl’s Law and Amdahl Effect, Gustafson-Barsis’s Law, Minsky's Conjecture, The Karp-Flatt Metric, The Isoefficiency Metric, Isoefficiency Relation, Cost and Scalability.
Parallel Computational Models: Flynn’s Taxonomy, PRAM, EREW, CREW, ERCW, CRCW, Simulating CRCW, CREW & EREW, PRAM algorithms.
Introduction to Parallel Algorithms: Parallel Programming Models, PVM, MPI Paradigms, Parallel Programming Language, Brent’s Theorem, Simple parallel programs in MPI environments, Parallel algorithms on network, Addition of Matrices, Multiplication of Matrices.
CAM502 : Internals of UNIX OS and Network Programming (Credits: 4)
The general overview, Unix Kernel, Internal representation of files, Buffering, System calls, Process structure and control, Process scheduling, memory management, I/O subsystem, Shell Programming , IPC, Distributed UNIX systems.
The UNIX model, Inter-process communication,, Communication protocols, Berkeley sockets, Transport layer interface, Library and other routines, Security issues, FTP, Line printer spoolers, Remote login, remote execution, Remote procedure calls, Remote drive access.
CAM503A : Advanced Computer Architecture (Credits: 4)
Architectural Abstraction, Classification schemes, Parallelism: Pipelining, Multiprocessing. Issues in Branch performance, Synchronization in Multiprocessing, High Performance Processor Design Issues: Pipeline design, Memory system design, I/O design.
Instruction level parallelism, Thread and process level parallelism, Data parallelism.
Vector machines, Dependency Analysis, Vectorization, Optimization in Vector Processing, Vector Chaining , Example systems. Associative Processors and Algorithms Super-scalar and VLIW processors, Example systems and main issues in design.
Multiprocessors: Shared Memory, Distributed Memory Architectures; Multiprocessor Interconnections, Memory systems for Multiprocessors, Example systems; Cache Memory, coherence issues, protocols. Multiprocessor Simulation and Measurement.
CAM503B : Soft Computing Techniques (Credits: 4)
Introduction to Genetic Algorithm, Genetic Operators and Parameters, Genetic Algorithms in Problem Solving, Theoretical Foundations of Genetic Algorithms, Implementation Issues.
Neural Model and Network Architectures, Perceptron Learning, Supervised Hebbian Learning, Backpropagation, Associative Learning, Competitive Networks, Hopfield Network, Computing with Neural Nets and applications of Neural Network.
Introduction to Fuzzy Sets, Operations on Fuzzy sets, Fuzzy Relations, Fuzzy Measures, Applications of Fuzzy Set Theory to different branches of Science and Engineering.
CAM503C : Information Retrieval and Web Mining (Credits: 4)
Information Retrieval Concepts and Models, Introduction to World Wide Web, Hypertext Data, Search Engines, Crawling the Web.
Indexing and Search: Boolean Queries and Inverted Index, Relevance ranking, Similarity search, Web directories, Combining Searching with Browsing, Metasearchers, Web Query Languages, Dynamic Search and Software Agents.
Clustering and Classification, Social network analysis, Measuring and Modeling the Web, Question answering, Semantic Web.
CAM503D : Distributed Systems (Credits: 4)
Distributed Systems, Communication in distributed systems, processes and processors in distributed systems. Threads, systems Models, Process allocation, scheduling in distributed systems, fault tolerance, real-time distributed systems.
Theoretical issues in distributed systems: Logical clock, mutual exclusion, deadlock detection, agreement protocols, resource security and protection, concurrency control.
Distributed File System: Design and implementation, trends.
Distributed shared Memory, consistency models, page-based distributed shared memory, shared variable distributed shared memory, object-based distributed shared memory.
Multiprocessor OS, Database OS: General features and theoretical issues.
Case Studies: Amoeba, Mach, chorus, DCE, etc.
Multimedia Operating Systems: Process scheduling, File system, caching, Disk scheduling for multimedia.
CAM503E : Science of Programming (Credits: 4)
Propositions, Precedence rules for operators, Tautologies, Propositions as set of states, Equivalence Transformations, Deductive proofs, Reference Rules, Proofs and Sub-proofs Quantification, Free and bound variables, Substitution, Assertions, Proof Outlines, Language Semantics of a Simple Language, Programming as a Goal-Oriented Activity, Loop Invariants, Developing invariants, Efficiency Considerations, Bound Function, Program Inversion.
CAM503F : Advanced DBMS (Credits: 4)
Design Theory for Relational Database: Functional Dependencies, Decomposition of Relation schemes, Normal Forms for Relations. Schemes, Multivalued and other kinds of Dependencies.
Query Optimization: Basic Optimization Strategies, Algebraic Manipulation, Optimization of Selections in System, Exact Optimization for a Subset of Relational Queries, Optimization under Weak Equivalence.
Database Protection: Integrity, Constraints in Query-by-Example, Security, Security in query-by-Example, Security in Statistical Databases.
Concurrent Operations on the Database: Basic Concepts, A simple Transaction Model, Model with Read- and Write-Locks, Read-only, Write-only Model, Concurrency for Hierarchically Structured Items, Protection against Crashes, Optimistic Concurrency Control.
Principles of Distributed Data Bases, Framework for distribution. Translation of global queries into fragment queries. Query optimization and management of distributed transaction. Concurrency control and reliability in distributed databases.
Administration of Distributed Data Bases. Example Systems.
CAM504A : Bioinformatics Algorithms (Credits: 3)
Biological Algorithms versus Computer Algorithms, Algorithmic Notations, Algorithm Design Techniques: Exhaustive Search, Greedy Algorithm, Dynamic Programming, Branch-and-Bound Algorithms, Randomized Algorithms, Machine Learning, Tractable versus Intractable Problems, Introductory Molecular Biology, DNA Analysis, Regulatory Motifs in DNA Sequences, Finding Motifs, Greedy Approach to Motif finding, Longest Common Subsequences, Global and Local Sequence Alignments, Multiple Alignment, Gene Prediction, Constructing Algorithms in sub quadratic time, Shortest Superstring Problem, Sequencing by Hybridization, Protein Sequencing and Hybridization, Spectrum Graphs, Spectral Convolution, Repeat Finding, Hash Tables, Keyword Trees, Suffix Trees and its Applications, Approximate Pattern Matching, Hierarchical Clustering, Evolutionary Trees, Parsimony Problem, Hidden Markov Models, Applications of HMM.
CAM504B : Simulation and Modeling (Credits: 3)
Simulation and its uses, Definition of System, Types of Systems, Simulation Experiments and Field Experiments, Random Number Generators from Uniform and other Continuous and Discrete Distributions, Tests of Randomness and Goodness of Fit.
Modeling Process and Concepts of Mathematical Models, Differential, Partial Differential and Difference Equation Models, Modeling through Graphs, Stochastic Models, Monte-Carlo Integration, Simulation of Single Server System, Inventory System, Time Sharing Computer System, and Ethernet Model. Verification, Validation and Comparison of Real System and Simulation Experiments Data, Variance Reduction Techniques, Simulation Languages: SIMULA, SIMSCRIPT and GPSS.
CAM504C : Operation Research (Credits: 3)
Network Analysis: Terminology of network, shortest route problem, minimal spanning tree problem, maxflow problem.
Project Scheduling by PERT, CPM: Diagram, representation, critical path calculation, construction of time chart and resource labeling, probability and cost consideration in project scheduling, project control.
Linear Programming: Simplex Method, Revised simplex method, Duality in Linear programming, Application of Linear Programming to Economic and Industrial Problems.
Nonlinear Programming: The Kuhn-Tucker conditions, Quadratic programming, Convex programming.
Replacement Models: Introduction, Replacement policies for items whose efficiency deteriorates with time, Replacement policies for items that fail completely.
Sequencing Model: Classification of self problems, processing of n jobs through two machines, three machines, processing of two jobs through m machines.
CAM504D : Quantum Computing (Credits: 3)
Introduction to Quantum Computing, Moore’s Law, Limits from Bits to Qubits, Powers of Quantum Computing-Some Algorithms and Applications.
Qubits, Quantum Mechanics and Computer Science Perspectives. Quantum Gates, Applications of Quantum Computing, Shor’s Algorithm and Quantum Fourier Transform, Quantum Search Algorithms, Physical Realization of Quantum Computers.
CAM504E Introduction to Cryptography (Credits: 3)
Divisibility, Euclidean Algorithm, Congruence’s, Finite Fields, Quadratic Residues and Reciprocity, One-way and Trapdoor Functions, Stream Ciphers, Pseudo-Random Number Generators, Block Ciphers and Modes of Operations, Data Encryption Standard, Private Key Encryption, Public Key Encryption, RSA Cryptosystem, Rabin’s Public Key Cryptosystem, Knapsacks, Message Authentication and Hash Functions, Digital Signatures, RSA Digital Signature Scheme, El Gamal’s Scheme, Rabin’s Scheme, Key Distribution, Diffie-Hellman Secret Key Exchange, Two-Party and Multi-Party Protocols, Simultaneous Secret Exchange Protocol, Secret Sharing.
CAM504F : Advanced course in Software Engineering (Credits: 3)
Software Metrics: Surveys, Experiment, Case studies, Internal and external software metrics, Reliability and quality metrics, Software management metrics.
Unified Modeling Language: Structure Diagrams: Class Diagram, Object Diagram, Component Diagram, Composite Structure Diagram, Package Diagram, and Deployment Diagram. Behavior Diagrams: Use Case Diagram (used by some methodologies during requirements gathering); Activity Diagram, and State Machine Diagram. Interaction Diagrams:Sequence Diagram, Communication Diagram, Timing Diagram, and Interaction Overview Diagram.
Software Reuse: Design patterns, Frameworks: development methodology, instantiation, CBSE.
Extreme Software Engineering approaches: Problems of traditional approaches, An agile process, Models of agile processes, Pair programming, Planning in an agile process, Testing in an agile process.
Software architecture: Architecture styles, Architecture Description Languages, Architecture frameworks
CAM505 : Lab. Exercises based on course CAM501 (Credits: 3)
This paper consists of programming exercises based on course CAM501: Parallel Computing.
CAM506 : Lab. Exercises based on course CAM502 (Credits: 3)
This paper consists of programming exercises based on course CAM502: Internals of UNIX OS and Network
Programming.
SEMESTER VI
CAM601 Dissertation (Credits: 18 )
Students will be required to pursue a dissertation allotted to them in accordance with their preference subject to their supervisor’s approval. They will have to submit the dissertation done by them during the semester.
CAM602 Comprehensive Viva (Credits: 7)
A Comprehensive Viva to judge students’ overall academic attainments during the program.
Index Post Graduate Course Syllabus: Click Here