MSC-IT is a postgraduate Computer Science course. The M.Sc. Computer Science course is designed to equip you with the knowledge and skills to develop innovative solutions which the modern computing industry requires. Working with academic staff from our research centres, you will develop applications and solutions in innovative and ground breaking areas such as computer vision and surveillance, robotics, artificial intelligence and mobile devices. Master of Science in Computer Science is a two year program ideally aimed at training and churning out computer professionals who are have the knowledge of management and have also been trained for it. Minimum time to pass is two years. Great stress is given by the faculty towards application-oriented subjects, covering various methodologies to develop software products efficiently by utilizing advance networking technologies and application software. The syllabus for the course is divided into four semesters.

Sem. I (Advanced JAVA Programming Language)
Sections Subjects of Study
A 1. Review of Java Basics: Features, environment, class, inheritance, package, interface, applets, AWT, exception handling, multithreading, files.
2. Swing: Features, components, swing vs AWT, swing containers, controls, using Dialogs, sliders, progress bars, tables, creating user interface using swing.
B 3. Java Database Connectivity: Connectivity model, Java. SQL package, JDBC Exception classes, Database connectivity, Data manipulation and navigation.
4. Java RMI: Distributed object technologies, RMI architecture, creating RMI applications.
C 5. Java Servlets: Servelets vs CGI, Servlet lifecycle, creating and running servlets.
6. Networking: Networking basics, Java and the Net, TCP/IP client sockets, TCP/IP server sockets, Inet Address, URL, Datrgrams, creating networking applications.
D 7. Java Beans : Component architecture, what are Beans, Advantages of Beans, Bean Developer kit (BDK), JAR files, introspection, developing Beans, Using Bound properties, The Java Beans API.
Sem. I (Interactive Computer Graphics)
Sections Subjects of Study
A 1. Display Devices : Line and point plotting systems; Raster, vector, pixel and point plotters, Continual refresh and storage displays, Digital frame buffer, Plasma panel displays, Very high resolution devices, High – speed drawing, Display processors, Character generators, Color – display techniques (shadow mask and penetration CRT, color look-up tables, analog false colors, hard-copy color printers). Display Description; Screen coordinates, user co-ordinates; Graphical data structures (compressed incremental list, vector list, use of homogeneous coordinates); Display code generation; Graphical functions;
B 2. The view algorithm, Two – dimensional transformation, Line-drawing, Circle drawing algorithms.
3. Interactive Graphics : Pointing and positioning devices (cursor, lightpen, digitizing tablet, the mouse, track balls), Interactive graphical techniques; Positioning, (Elastic or Rubber Band lines, Inking, zooming, panning, clipping, windowing, scissoring),
C 4. Mouse Programming, Turbo-C, Graphic Languages : Primitives (Constants, actions, operators, variables), plotting and geometric transformations, display subroutines, Concept of Animation, Saving, Loading and Printing graphics images from/to disk. Animated algorithms for Sorting, Towers of Hanoi etc.
D 5. 3-D Graphics: Wire-frame, perspective display, Perspective depth, Projective Transformations, Hidden line and surface elimination, Transparent solids, Shading. 6. Programming Projects: Two dimensional Transformations, 3-dimensional transformations, Interactive Graphical Techniques. GUI. Turbo C/C++ (Graphics Routines) is to be used as the standard teaching tool.
Sem. I (Software Engineering & Management)
Sections Subjects of Study
A 1. Introduction: Software Engineering goals, Characteristics of well-engineered software, Software process Models: Waterfall, Prototyping, Spiral, Fourth Generation Techniques, S/w Inspection, and Communication skills for Software Engineer, Preview and Inspection Procedures, Composition of inspection team, Checklist, Human factors in Software Engineering.
2. Software Specifications: Software requirements, Definition, Software requirements specifications (SRS), Components of SRS.
B 3. Software Project Planning & Scheduling: Objectives, Decomposition techniques, Problem based estimation, Cost estimation models, COCOMO model, Risk in estimation.
4. System Analysis : Principles of structures Analysis, DFD, E-R-diagram, Data Dictionary
C 5. Software Metrics: Role of Metrices and Measurements, Types of Software Metrices.
6. Software design: Objectives, Principles, Concepts, Design Process, Design Methodologies, Structured design, Modular design, Object oriented design, Userinterface design, Features of a Modern GUI, Windows, icons, error messages etc.
D 7. System Administration and Training: User manual, Implementation, Documentation, Operation plan and Maintenance.
8. Hardware and Software Selection: Hardware acquisition, Benchmarking, Vendor selection, Software selection, Performance and acceptance criteria, Site preparation.
Sem. I (Algorithm Design and Analysis)
Sections Subjects of Study
A 1. Review of Algorithms and Data Structures: Analyzing algorithms; Stacks and Queues, Trees, Heaps and Heap sort; Sets, Find and Disjoint set union, Graphs, Hashing. Example of recursive programs; Converting recursive algorithms into iterative ones; Analyzing algorithms; Big Oh and Asymptotic notations.
2. Divide and Conquer: General method, Binary Search, Merge sort, Quick sort, Selection sort, Strassen’s matrix multiplication and analysis of these problems.
B 3. Greedy Method: General Method, Knapsack problem, Job sequencing with deadlines, Minimum spanning Trees, Single source Shortest path; analysis of these problems.
4. Dynamic Programming: General method, Optimal Binary Search Trees, 0/1 Knapsack, the travelling Salesperson problem.
C 5. Backtracking: General method, 8 queen’s problem, Graph colouring, Hamiltonian cycles.
6. Branch-And-Bound: Method, o/1 Knapsack and Travelling Salesperson problems, Efficiency considerations.
D 7. Lower-Bound Theory: Techniques for Algebraic problems, Some Lower Bounds on parallel Computation.
8. NP-hard and NP-complete problems: Basic concepts, Statement of Cook’s Theorem, Examples of NP-hard graph and NP-scheduling problems, some simplified NP-hard problems.
Sem. II (Operating System)
Sections Subjects of Study
A 1. Introduction to Operating System: OS, types of OS, Functions/Operations of OS, History of OS, and Users services/jobs.
2. Memory Management (I): Address protection, segmentation, virtual memory, paging, page replacement algorithms,
B 3. Memory Management (II): cache memory, hierarchy of memory types, associative memory.
4. Support for concurrent process: Mutual exclusion, shared data, critical sections, busy form of waiting, lock and unlock primitives, synchronization.
C 5. Scheduling: Process states, virtual processors, interrupt mechanism, scheduling algorithms- preemptive and non- preemptive scheduling.
D 6. System deadlock: Prevention, detection and avoidance.
7. Multiprogramming system: Queue management, File and directory systems, disk scheduling.
Sem. II (Electronic Commerce and Tools)
Sections Subjects of Study
A 1. Electronic Commerce Fundamentals: Introduction to E-commerce and its advantages & disadvantages; Traditional vs E-Commerce; Growth of E-Commerce in India vis-à-vis Other Nations; Prospects and limitations in the growth of E-commerce in Indian context; E-Commerce Framework; The anatomy of E-commerce Applications; E-commerce consumer & organization applications.
B 2. Internet as a Network infrastructure for E-commerce; Architecture and components of Internet; Internet Services; ISPs at Local/National/Global Level; Domain Name Registration; Internet Administration; Internet Protocol Suite. Architectural Framework for E-Commerce; WWW as the architecture; Hypertext Publishing; Technology behind the web; Security behind the web.
C 3. Consumer oriented applications; Mercantile Process Model; Mercantile Model from the Consumer’s perspective; Mercantile Model from the Merchant’s perspective. Electronic Data Interchange(EDI) and its applications in business; Legal, Security and Privacy issues in EDI; EDI software implementation; Internal Information Systems; ERP and Supply-Chain Management; The corporate digital library; Advertising and marketing on the internet; On-demand education and Digital copyrights.
D 4. Issues in E-commerce: The legal and policy environment of E-Commerce; Intellectual Property, advertising and consumer protection; Copyright Law; Patent Law; Network Security and Firewalls; Client-Server Network Security Threats; Data and Message Security; Encrypted Documents and E-mail; Principles of digital cryptography; Symmetric and Asymmetric Cryptosystems; Cryptographic standards e.g. Data Encryption Standard(DES); Digital Signatures; Public Key Certificates;
Sem. II (Artificial Intelligence and LISP)
Sections Subjects of Study
A 1. Artificial Intelligence (AI): Introduction and Applications: History of AI from Alan Turing and developments in AI, AI techniques, Criteria for success. Problem Solving Concepts and Methods.
2. State space representation, Problem Characteristics, Breadth -first Search and Depth-First Search methods, Heuristic Search Techniques – Hill Climbing, Best first Search, A*, Problem reduction, Ao, Constraint satisfaction and means-ends analysis techniques.
B 3. Knowledge Representation : Information and Knowledge, Knowledge Acquisition and Manipulation, Issues in knowledge representation, Knowledge Representation Methods, Propositional Logic and First Order Predicate Logic, Resolution Principle, Horn’s Clauses, Semantic networks, Partitioned Semantic Nets, Frames, Scripts and Conceptual Dependencies.
4. Game playing: Minimax Search Procedure, Adding Alpha-Beta Cutoffs
C 5. Expert Systems : Definition and Applications, Characteristics of Expert Systems, Architecture of a typical expert system, Expert system Shells, Building an Expert System, Knowledge Acquisition, Case studies of Expert Systems like MYCIN. Specific Application of AI.
6. Natural Language understanding and Processing: Complexity of the problem, Syntactic processing, Semantic Analysis, Pragmatic processing, Introduction to Perception and Action.
D 7. Introduction to LISP : Symbolic expressions, creating, Appending and modifying lists, Defining functions, Predicates, Conditionals, Recursion, Iteration, Lambda Expressions, Use of Advanced functions like MAPCAR, REMOVE-IF, COUNT-IF.
Sem. II (Trends in Computing)
Sections Subjects of Study
A 1. Parallel Computing: Parallel virtual machine (PVM) and message passing interface (MPI) libraries and calls. Advanced architectures. Today’s fastest computers and Supercomputers.
2. Data compression technology: Introduction, space/storage compression, Lossy versus lossless data compression, Graphics Metafiles, Classes of data encoding techniques, GIF, PNG, JPEG and MPEG compressions
B 3. Data Warehousing and data mining : characteristics of data warehousing, data modelling for data warehousing, steps to build a data warehouse, Applications of data mining, Association rules, classification, sequential patterns, clustering etc., commercial data mining tools
C 4. Mobile Computing : Mobile connectivity-Cells, Framework, wireless delivery technology and switching methods, mobile information access devices, mobile data internetworking standards, cellular data communication protocols, mobile computing applications. Mobile databases-protocols, scope, tools and technology. M-Business.
5. Intelligent Agent Technology: Introduction to agents, Intelligent software systems, applications, Intelligent architectures, components of intelligent agent based distributed systems, agent communication protocols – introduction to knowledge query and manipulation language (KQML). Case Study-Road Traffic Management System.
D 6. NET – evolution: Need and perspective in current scenario, .net framework over view structural diagram. XML: An overview of XML, use of XML, integrity of XML with databases, XML as the .NET Meta language
Sem. III (Software Testing and Quality Assurance)
Sections Subjects of Study
A 1. An overview of Testing Process: Software Testing, Objectives of Software Testing, Software Testing Process, Static and Dynamic Analysis, STEP Methodology, Elements of STEP and STEP Architecture.
2. Metrics for Software: Importance of Metrics to Software Project, Software Quality Metrics, Software Metrics: Product Metrics: Software Size Metrics, Control Complexity Metrics, Object-Oriented Metrics, Software Quality Metrics.
B 3. Software Testing Techniques: BBT & its Technique, Boundary Value Analysis, Cause- Effect Graph, white-Box Testing and its Techniques: Domain and Boundary Testing, Logic Based Testing, Data Flow Testing.
4. Software Testing Strategies: Characteristics, Integration Testing, Functional Testing, Object Oriented Testing, Alpha and Beta Testing, Overview of Testing Tools
C 5. Quality Assurance: Overview of Software Quality, Software Quality Attributes, Factors Affecting Software Quality, Building Software Quality Assurance Plan, Components of SQAP.
6. Quality Management & Quality Models: Software Quality System, Quality Management Principles, Essence of International Standards, ISO 9000 Quality Standard, SEI Capability Maturity Model.
D 7. Software Reliability: Factors Affecting Software Reliability, Software Reliability VS Hardware Reliability, Software Reliability Metrics.
8. System Configuration Management (SCM): Basic requirements for SCM system, SCM principles, Planning and organizing for SCM, Benefits of SCM, Change management, Version and release management.
Sem. III (Visual C++ Programming)
Sections Subjects of Study
A 1. Introduction to Developer Studio. Developer Studio wizards, Using AppWizard, Creating a basic application, Resource editors, The Gallery and the Info Viewer, The debugging environment.
2. Visual C++ Programming Visual C++ ‘s Program Structure, Variables, data-types, basic I/O, selection statements, repetition statements, arrays, pointers, dynamic memory allocation, functions, recursion, Visual C++ library of functions, inheritance, polymorphism, virtual functions, storing data in disk files, using disk files.
B 3. Win32 architecture and the Windows GUI The Win32 API, Architecture of a Win32 program, Elements of Windows GUI.
4. Windows Programming with MFC MFC fundamentals: The structure and usage of the MFC, The application framework, MFC support for multithreading, MFC class categories, The document/view architecture, Handling window messages, Managing handlers with Class Wizard, Errors and error handling, MFC diagnostic functions and macros, Exceptions and exception handling.
C 5. MFC and user interface programming: MFC classes and user interface elements, Commands and menus, Toolbars, Dialog bars and status bars, Creating dialog boxes, Standard windows controls and MFC classes, Dialog Data Exchange (DDX) and Dialog Data Validation (DDV), Using list boxes, Building an ActiveX control framework, MFC support for Context-sensitive help. Viewing and Storing Data: Form views, Control views, Splitter windows, Handling multiple views.
D 6. Database Creation Programming in Windows Data access with MFC: Introduction to data access, MFC database classes, Record sets and transactions. Developing database applications: Creating an ODBC application, Structure of a database application, Connecting the record set to controls, Creating a joined record set. Querying the database: Customizing a query, Querydefs and parameterized, queries, Seek and Find functions.
7. Application Deployment
The Registry and application setup, Linking, MFC and DLLs.
Sem. III (Linux Administration)
Sections Subjects of Study
A 1. Introduction to Linux: What is Linux, Linux’s History, Minimum System Requirements; Installing Linux: Working with Linux, Floppy-less Installation, Boot and Root Disks, Choosing Text or Graphics Installation, Setting up your Hard Drive, Formatting the Partitions, Setting up the Ethernet, Configuration X, Selecting packages to Install, Using LILO; Partitioning the Hard Disk : Linux Swap Space Partitions, Linux’s fdisk, Enabling the Swap Space for Installation, Creating the Linux File-system partition, Using LILO
2. Using Linux: Starting and Stopping your Linux System, Linux Shutdown Commands, Login, Passwords, Creating a New Login, Logging Out; Trying out your new Login: Linux Error Messages, Search Paths; who Command, Commands and Programs.
3. Basic Linux Commands: How Linux Commands Work, Command Options, Other Parameters, Input and Output Redirection, National conventions used to Describe Linux commands, Online help available in Linux, The Linux Man pages, Finding keywords in Man pages, The bash shell help facility; Wildcards:  and?, Environment Variables, Process and How to Terminate them, The process status Commands: ps, The process termination command: kill, the su command, the grep command.
B 4. Using the File System: Files Overview, Common types of files, filenames, Directories an Overview, Parent directories and sub-directories, The root directory, How directories are named, The home directory; Navigating the Linux file System : pwd command, Absolute and relative filenames; cd command, Creating and Deleting files : Cat, Creating Directories, Moving and Copying files, Moving and Copying with Wildcards, Moving Directories, Removing files and directories, Fear of Compression: The Zipless file, Important directories in the Linux file System : / , /home, /bin, /usr, /usr/bin, /usr/spool, /dev, /usr/bin, /sbin, /etc.
5. File and Directory Permissions: File and Directory ownership, User and ownership, Groups, Changing group ownership, File Permissions, UMASK Setting, Changing File Permission, Changing directory permissions; Bash: What is Shell? How the Shell gets Started, The most common Shells; The Bourne Shell: Command-line Completion, Wildcards, Command History, Aliases, Input Redirection, Output Redirection, Pipelines Shell, Prompts, Job control, Customizing bash, bash commands, bash variables.
C 6. Linux – tcsh : An Introduction to tcsh, Command completion, Wildcards, Command History, Aliases, Input and Output Redirection, Pipelines, Prompts, Job Control; Key Bindings, Correcting Spelling Errors, Pre-commands, Change directory Commands, Monitoring Logins and Logouts, Customizing tcsh, tcsh Command Summary, tcsh variables.
7. Shell Programming: Creating and Running Shell Programs, Using variables: Assigning a value to a variable, Accessing the value of a variable, Positional Parameters and other Built-In Shell Variables; The Importance of Quotation Marks: The test Command, The tcsh Equivalent of the test command, Conditional Statements: if Statement , case Statement; Iteration Statements : for Statement, while Statement, until Statement, shift Command, select Statement, repeat Statement, Functions.
8. Editing and Typesetting : Text Editors vi, The vi Editor, Starting vi, vi modes, Inserting Text, Quitting vi, Moving the Cursor, Deleting Text, Copying and Moving Text, Searching and Replacing Text, Setting Preferences.
D 9. PERL: Creating and Executing Perl Programs, Handling Data in Perl: Variables, Numbers, Strings, And File Operators: Arrays, Perl Programming Constructs: Statement Blocks, If Statements, unless Statements, for Statements, for each Statements, while Statements, until Statements, Functions: Passing Arguments to Functions, Using Return Values; Perl Operators.
10. Linux for System Administrators : System Administration Basics, The root Account, Starting and Stopping the System, Booting from a Floppy, Using LILO to Boot, Shutting Down Linux; Mounting File Systems : Mounting a Floppy, Creating a New file System, Un-mounting file Systems, Checking file Systems, Using a file as Swap Space; Compressing files with gzip and compress : Using tar, Backups, Setting up your System : Setting the System Name, Using a Maintenance Disk, Forgetting the root Password, Setting the Login Message.
11. Networking & Network Services: What is TCP/IP ? Hardware Requirements, Configuring Linux Files, Setting up the Dummy Interface, Configuration Files, Testing and Troubleshooting, The net stat Command, ping, Mail, News, NFS, NIS, www, FTP, DNS.
Sem. III (Systems Approach to Management and Optimization Techniques)
Sections Subjects of Study
A 1. Concepts of Computer Based Systems: Data, Information, Information Systems, Model of computer based information system; Introduction to Management Information System, Decision Support System and Knowledge Based Systems
2. Accounting Information System: Characteristics, sample system, subsystems for filling customer order, order replenishment stock, performing general ledger processes; features and use of Accounting Information System Package-Tally.
3. Marketing Information System: Basic concepts, model, subsystems including Marketing Research, Marketing Intelligence, Product, Place, Promotion and Pricing subsystems
B 4. Manufacturing Information System: Model and subsystems including Accounting Information, Industrial Engineering, Inventory, Quality and Cost Subsystems
5. Financial Information System: Model and Subsystems including Forecasting, Funds Management and Control Subsystems.
6. Human Resources Information Systems: Model and Subsystems including human resources research, human resources intelligence, HRIS Database, HRIS output
C 7 Basics of Operations Research (OR): Origin and Development of OR, Characteristics of OR, Models in OR, OR and Decision Making, Role of Computers in OR, Limitations of OR
8 Linear Programming: Mathematical Formulation, Graphical and Simplex method, Duality in Linear programming, Dual Simplex Method, The Revised Simplex Method, Sensitivity Analysis.
D 9 Special types of Linear Programming problems –Transportation and Assignment problems.
10. Integer Programming: Introduction, Branch and Bound Techniques, Binary Linear Programming, Assignment & Traveling salesman problems.
11. Dynamic Programming, Deterministic & Probabilistic Dynamic Programming