NIT Delhi CSE Syllabus Part I

NIT Delhi CSE Syllabus Part I

 

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING

SYLLABI OF COURSES FOR B.Tech (CSE)

CS 201

Discrete Mathematics

 

Sets, Relations, Functions – Fundamentals of Logic – Quantified propositions – mathematical Induction – Combinations and Permutations – Enumerations – Recurrence Relations – Generating Functions – Binary Relations – Lattices – Directed Graphs – Graphs – Spanning Trees – Planar Graphs – Euler Circuits – Hamiltonian Graphs
Text Books – Mott, Kandel, Baker, Discrete Mathematics for Computer Scientists and Mathematicians, II Ed, PHI, 2001.
CS 202
Data Structures and Algorithms
3 – 1 – 0
4
Prerequisites – CS 105
Algorithm Analysis – Ordered Lists – Stacks, Queues – Trees – Search Trees – BST, AVL – Hashing – Hash Tables – Priority Queues – Sorting – Internal, External – Disjoint Sets – Graph Algorithms – Shortest Paths – Spanning Trees
Text Books: Mark Allen Weiss, “Data Structures and Algorithm Analysis in C++”, Pearson, II Ed, 2004
CS 203
File Structures Lab
0 – 0 – 3
2
Prerequisites – CS 105
Fundamental File Processing Operations – Object Oriented Support for Indexed, Entry-Sequenced Files of Data Objects – Sorting – Merging – Sort-Merging packages – Paged Binary Trees – B-Trees – B(+)-Trees – Multi list and Inverted Files – Indexed Sequential File Access – Hashing and Extendible Hashing
CS 204
Data Structures Lab
0 – 0 – 3
2
Pre/Par requisites: CS 202 Prerequisites – CS 102
Implementation of ordered lists – Generic Queues – conversion of expressions, evaluation, expression trees – Search Trees – BST – AVL Trees – Splaying – Sorting algorithms – Graph traversals – Shortest paths – Spanning Trees
CS 251
Computer Architecture
4 – 0 – 0
4
Prerequisite – EC 211
Basic Structure – Functional units – Bus structure – Addressing Methods – Machine program Sequence – 68000 example – Instructions – Assembly language program – Flow Control – Power PC example – Processing Unit – Hardwired control – Micro programmed Control – Memory – Performance Considerations – Arithmetic and Branching Conditions – Computer Peripherals – I/O – Interrupts – DMA – Synchronous and asynchronous busses – Standard I/O Interfaces
Text Books – Hamacher, Vranesic, Zaky, “ Computer Organization”, MGH, IV Ed
CS 252
Programming Languages
3 – 1 – 0
4
Prerequisites – CS 101, CS 202
Abstraction – Computational paradigms – Imperative languages –Symbol table – Scope – Side effects, aliasing – Data Types – Type constructs – Parameter Passing Mechanisms – Procedure environments – Abstract Data Types – Object Oriented languages – Classes and Methods – Design issues – implementation – Functional Programming – Delayed Evaluation – Recursive functions – Lambda Calculus
Text Books – Kenneth C. Louden, Programming Language Principles and Practices, II Ed, Thomson 2003
CS 253
Systems Programming
3 – 1 – 0
4
Pc Hardware – Assembly Language Basics – Program Logic and Control – Keyboard and Screen Processing – Macro definitions and Linking – Advanced Screen and Keyboard Processing – Disk Processing – DOS Memory Management – Assemblers – Macro processors – Linkers – Loaders
Text Books – Peter Abel, IBM PC Assembly Language and Programming, V Ed., Pearson Education, 2003.
CS 254
Object Oriented Programming Lab
0 – 0 – 3
2
Prerequisites: CS 204
CRC Case studies – Inheritance – Implementation of java AWT Classes – Exception Handling in Java
CS 255
Systems Programming Lab
0 – 0 – 3
2
Pre/par requisites – CS 253
Fixed Point Arithmetic – Text Processing – Keyboard and screen processing – Macro writing – Disk Processing – Memory Resident Programs – DOS file Management – Copy Protection schemes – Implementation of a simple editor – Construction of Assemblers, Macro processors – Adding Syntax directed facilities to an editor
CS 301
Theory of computation
3 – 1 – 0
4
Prerequisites – CS 201
Finite Automata – Deterministic, non-deterministic – Regular expressions – equivalence – Properties – Pumping Lemma – Context Free Grammars – Push Down Automata – Context Free Languages – Properties – Turing Machines – Computable Functions – Undecidability
Text Books – John E. Hopcroft, Rajeev Motwani, Jeffrey D Ullman, Introduction to Automata Theory, Languages and Computation, II Ed, Pearson, 2001
CS 302
Operating Systems
3 – 1 – 0
4
Prerequisite – CS 253
Batch, iterative, time sharing and real-time systems – operating system structure – concurrent processes – synchronization – CPU scheduling – Deadlocks – Memory management – Virtual memory – secondary storage management – file systems – I/O systems – Mass-storage structure – Protection – Security
Text Books: A. Silberschatz, Galvin, Gagne, “Operating System Concepts”, John Wiley & Sons, Inc publishers, 2006
CS 303
Database Management Systems
3 – 1 – 0
4
Prerequisites – CS 202 (DSA)
Entity Relationship model, Relational model – structure and operations, query languages – relational algebra – relational calculus – Mapping ER model to relation form. Features of SQL. Functional Dependencies – normalization process. Multi valued dependencies. Query optimization Transaction processing concepts. Concurrency Control and recovery. Security and Authorization
Text Books: Elamsri , Navathe, Somayajulu and Gupta: Database Concepts, Pearson Edition, 2006
CS 304
Operating Systems Lab
0 – 0 – 3
2
Pre/par requisites – CS 302 Prerequisites – CS 255
Study of race conditions – Use of semaphores to solve concurrency problems – Implementation of critical region construct, monitor – comparison of different scheduling algorithms – Implementation of Dekker’s algorithm – Implementation of memory manager
CS 305
Database Management Systems Lab
0 – 0 – 3
2
Pre/par requisites – CS 303 Prerequisites – CS 204
Familiarization of Oracle RDBMS. Features of SQL*Plus. Design and development database using Oracle, implementation of application with GUI. Implementation of relational operators using C/C++. DSL. Front end development. Case study/project.
CS 351
Language Processors
3 – 1 – 0
4
Prerequisites – CS 301
Phases of Compilers – Compiler Construction Tools – Bootstrapping – lexical analyzer – Parsing – Top-down – Operator precedence – LR Parsing – Ambiguous Grammars – Storage Allocation – Symbol Table – Syntax Directed Translation – Intermediate Code – Code Generation – Simple Code Generator – DAG – Peephole Optimization
Text Books – Aho, Ravi Sethi, Ullman, “Compilers – Principles Techniques and Tools”, Pearson, 2002
CS 352
Computer Networks
3 – 1 – 0
4
Network structures – Network Architecture – OSI model – LAN protocols – IEE standard 802 – Ethernet – Token Bus and Token Ring – Error Detection and Correction – Sliding Window protocols – Routing algorithms – Congestion control algorithms – Internetworking – Network Layer in Internet IP – Transport Layer in Internet – UDP, TCP – Remote Procedure Call – Implementation and semantics of RPC – E-mail Protocol and File Transfer Protocol.
Text Books: A S Tanenbaum, Computer Networks, PHI, IV Ed, 2003.
CS 353
Data Warehousing and Data Mining
3 – 1 – 0
4
Prerequisites – CS 303, CS 305
Data Warehousing and OLAP technologies – Multi Dimensional modeling, data warehouse architecture, Data warehouse implementation – Data preprocessing – Concept description, characterization and comparison – Data Mining techniques – classification, clustering – prediction and mining Association rules – Advanced mining methods
Text Books: Jiawei Han and Kamber, M: Data Mining Concepts and techniques, 2nd Edition, Elsevier Publications, 2006.
CS 354
Language Processors Lab
0 – 0–3
2
Lex and Yacc – Generation of Intermediate Code for Expression Grammar – Construction of Predictive Parsing Table – LR Parsing Tables – Parsing Actions
CS 355
Computer Networks Lab
0 – 0–3
2
Pre/par requisites – CS 352
Error Correction and Detection – IP address Conversion functions – Client Server example using Pipes, FIFOs, Message Queues, Shared Memory – Connection Oriented Client Server with TCP – Connectionless Client Server with UDP – Concurrent Server – Multi-protocol Server – Internet Super Server – Chat Server – Mail Server.
CS 356
Knowledge Engineering Lab
0– 0–3
2
Pre/Par requisites – CS 353 Prerequisites – CS 303, CS 305
This laboratory provides hands on exposure on building of warehouse, analyzing the data using OLAP tools, and implementation of mining techniques using mining tools like SPSS, Weka etc.
CS 401
Software Engineering
3 – 1 – 0
4
Introduction to Software Engineering – A generic view of process – Process models – Software Engineering Practice – System Engineering – Requirements Engineering – Building the Analysis model – Design Engineering – Creating an Architectural Design – Modeling Component level design – Testing Strategies – Testing –Tactics – Product Metrics – Project Management Metrics for Process and projects – Estimation – Project Scheduling – Risk Management – Quality Management – Change Management
Text Books – Roger S. Pressman, “Software Engineering – A Practitioner’s Approach”, sixth edition, Mc Graw Hill
CS 402
Network Programming
3 – 1 – 0
4
Prerequisites – CS 352
Advanced Socket System Calls – Reserved Ports, Stream Pipes, Asynchronous I/O, I/O Multiplexing, Remote Procedure Calls – Doors – Sun RPC – Advanced I/O Functions, Unix Domain Protocols – Passing File Descriptors – Routing Sockets – Broadcasting – Multicasting – Signal Driven I/O – Raw Sockets – Data Link Access – STREAMS
Text Books: W.Richard Stevens, Unix Network Programming Volume 1 & Volume 2, PHI, 2005
CS 403
CASE Tools Lab
0 – 0 –3
2
Pre/par requisites – CS 401
Problem Analysis and Project Planning – Software Requirement Analysis – Modeling – Software Developments and Debugging – Software Testing
CS 404
Network Programming Lab
0 – 0 –3
2
Pre/par requisites – CS 402
Advanced Socket I/O Functions – Asynchronous I/O – Passing File Descriptors – Routing Algorithms – IP Spoofing – IP Tunneling – libpcap functions usage – Email Gateways – Protocol Conversions – Policy Control Table Implementation
CS 405
Soft Computing Lab
0 – 0 – 3
2
Pre/Par requisite – CS 412
Artificial Neural Networks – Genetic Algorithms – Rule Learning – back-propagation
CS 451
Network Security
3 – 1 – 0
3
Prerequisites – CS 352, CS 402
Network Security – Attacks Services and Mechanisms – Conventional Encryption – Classical Techniques, Modern Techniques – Simplified DES – Block cipher Design Principles – Encryption algorithms – placement of encryption function – traffic confidentiality – The Data Encryption Standard (DES) – Public Key Encryption – The RSA algorithm – Diffie – Hellman Key Exchange – Key Management – Message Authentication – Authentication Requirements – Authentication Functions – Message Authentication Codes – Digital Signatures and Authentication Protocols – Digital Signatures – Digital Signature Standard (DSS) – Electronic Mail Security – S/MIME – IP Security – IP security Overview – IP Security Architecture – Authentication Header (AH) – Encapsulating Security Payload (ESP) – Firewalls – Firewall Design Principles – Trusted Systems.
Text Books: William Stallings, Cryptography and Network Security, the Principles and Practice, Pearson Education, II Ed, 2002
CS 452
Component Based Computing Lab
0 – 0 – 3
2
COM/DCOM : COM Interfaces – COM library – Type libraries – Registering Type Libraries – Active template library – Threading models and apartments – multithreaded components – Dll surrogates – security models
CORBA : OMG’s object management architecture – CORBA services – CORBA business objects – 3-Tier client-server-object-style – Accessing distributed objects using applets – dynamic CORBA – multithreaded client-server programming
CS 261
Object Oriented Programming and Operating Systems
3 – 0 – 3/2
4
Prerequisite – CS 202
Object Oriented Programming: Introduction to object oriented features of C++ – Classes – Friend functions – function and operator overloading – Dynamic object creation, constructors and destructors – Inheritance, types of inheritance – Virtual functions – Abstarct classes – Templates – Exception handling
Operating Systems : Batch, iterative, time sharing and real-time systems – operating system structure – concurrent processes – synchronization – Deadlocks – Memory management – Secondary storage management – File systems
Text Books: Ira Pohl, “Object oriented programming using C++”, AW.
A. Silberschatz, Galvin, Gagne, “Operating System Concepts”, John Wiley & Sons, Inc publishers, 2006

Leave a Comment