0% found this document useful (0 votes)
12 views194 pages

Syllabus 2023batch Updated 19aug2024 PDF

The document outlines the courses and syllabi for the Bachelor of Technology in Computer Science and Engineering at the National Institute of Technology, Srinagar, starting from the 2023 batch. It details the course structure, credit requirements, evaluation methods, and grading system, along with a comprehensive list of proposed courses for each semester. The program includes interdisciplinary courses and open electives from various departments, ensuring a well-rounded education in computer science.

Uploaded by

hi Me
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
12 views194 pages

Syllabus 2023batch Updated 19aug2024 PDF

The document outlines the courses and syllabi for the Bachelor of Technology in Computer Science and Engineering at the National Institute of Technology, Srinagar, starting from the 2023 batch. It details the course structure, credit requirements, evaluation methods, and grading system, along with a comprehensive list of proposed courses for each semester. The program includes interdisciplinary courses and open electives from various departments, ensuring a well-rounded education in computer science.

Uploaded by

hi Me
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 194

National Institute of Technology

Srinagar
Hazratbal, Srinagar, Kashmir, 190006 India

COURSES & SYLLABI


(Batch 2023 onwards)

Department of Computer Science and Engineering


1
Department of Computer Science
& Engineering
The Department of Computer Science & Engineering started functioning from 2007. It offers four
year B.Tech degree course in Computer Science & Engineering. The initial intake in 2007 was 40
and has now increased to 90.
The degree is awarded after completion of a minimum of 160 credits. Common courses for 42
credits are offered to students of all branches in a common first year spread over 2 semesters.
Courses for the remaining credits are offered to students during a span of three years spread over 6
semesters. Students need to complete 180 credits (Including Honors Electives) to get B.TECH
Honors in Computer Science and Engineering,
The scheme of courses has been designed as per the required credit breakup (see page no. 11), such
that at least 50% of the courses are offered by Department of Computer Science & Engineering.
The remaining 50% courses are interdisciplinary and are offered by Departments of Information
Technology, Department of Electronics & Communication Engineering, Electrical Engineering,
Physics, Chemistry Mathematics and Humanities Departments.
Other main features of the scheme are:-
1. Courses offered are 1 credit , 2 credits, and or 3 credits
2. One hour lecture/tutorial has been assigned 1 credit weightage.
3. Two hour laboratory per week has also been assigned 1 credit weightage.
4. A continuous evaluation scheme is used to evaluate the students for each course. The
evaluation is as under:
Midterm 26marks
Assignment 8 marks
Quiz 8 marks
Attendance 8 marks
Major Exam 50 marks
5. Grades are allotted to the students as per the following scheme:
Marks Grades Points
0 to 39 F 4
40 to 50 C 5
51 to 60 C+ 6
61 to 70 B 7
71 to 80 B+ 8
81 to 90 A 9
91 to 100 A+ 10

6. At the end of each semester a cumulative grade point average (CGPA) is calculatedfor
the courses taken by a student.

2
Table of Contents

Title Page No.


Course Structure Batch 4

Courses offered to other Departments as Open Electives 8

List of Electives 9

Required Credit Breakup 11

Credit breakup for CSE 12

Detailed Syllabi Semester 3rd 14

Detailed Syllabi Semester 4th 30

Detailed Syllabi Semester 5th 47

Detailed Syllabi Semester 6th 63

Detailed Syllabi Semester 7th 77

Detailed Syllabi Electives 83

3
PROPOSED SCHEME OF COURSES FOR FIRST SEMESTER
S. No Course Course Title Department Credit Contact Hours
Code Offering
L T P Total
B11 HST101 Basic English and Humanities 3 2 1 0 3
Communication
Skills
B12 MAT101 Mathematics I Mathematic 3 2 1 0 3
s
B13 MET101 Elements of Mechanical Mechanical 3 2 1 0 3
Engineering
B14 PHT101 Engineering Physics Physics 3 2 1 0 3
B15 CHT102 Environmental Studies Chemistry 3 2 1 0 3
B16 CVT102 Engineering Mechanics Civil 3 2 1 0 3
B17 HSL101 English Language Laboratory Humanities 1 0 0 2 2
B18 PHL101 Engineering & Applied Physics Physics 1 0 0 2 2
Laboratory
B19 WSL101 Workshop Practice Workshop 2 0 0 4 4
Total 22 12 6 8 26

PROPOSED SCHEME OF COURSES FOR 2ND SEMESTER


S. No Course Course Title Department Credit Contact Hours
Code Offering
L T P Total
B21 HST102 Advanced English and Comm. Humanities 3 2 1 0 3
Skills
B22 MAT102 Mathematics II Mathematic 3 2 1 0 3
s
AB23 EET101 Basic Electrical Engineering Electrical 3 2 1 0 3
B24 ITT101 Computer Programming Information 3 2 1 0 3
Technology
B25 CHT101 Engineering Chemistry Chemistry 3 2 1 0 3
B26 CVT102 Engineering Drawing Civil 3 1 0 4 5
B27 CHL101 Chemistry Laboratory Chemistry 1 0 0 2 2
B28 ITL101 Computer Programming Information 1 0 0 2 2
Laboratory Technology
A10 NBA101 Fundamental Knowledge of NBA Instt. 0 2 0 0 2
Accreditation** Cell
Total 20 13 5 8 26

** Compulsory Audit Course

4
PROPOSED SCHEME OF COURSES FOR 3RD SEMESTER
S. Course Course Title Department Credit Contact Hours
No. Code Offering L T P Total
1 CST201 Object Oriented CSE 3 2 1 0 3
Programming
2 CSL202 Object Oriented CSE 1 0 0 2 2
Programming -Lab
4 CST203 Database Management CSE 3 2 1 0 3
Systems
5 CSL204 Database Management CSE 1 0 0 2 2
Systems - Lab
6 CST205 Software Engineering CSE 3 2 1 0 3
7 ECT205 Electronic Devices and ECE 3 2 1 0 3
Circuits
8 ECL206 Electronic Devices and ECE 1 0 0 2 2
Circuits Lab
9 MAT207 Discrete Mathematics Mathematics 3 2 1 0 3
10 HST006 Entrepreneurship Humanities 3 3 0 0 3
Development
Total 21 24

PROPOSED SCHEME OF COURSES FOR 4TH SEMESTER


S. Course Course Title Department Credit Contact Hours
No. Code Offering L T P Total
1 CST250 Data Structures CSE 3 2 1 0 3
2 CSL251 Data Structures – Lab CSE 1 0 0 2 2
3 CST252 Internet & Web CSE 3 1 1 2 4
Technologies
4 CST253 Theory of Computation CSE 3 3 0 0 3
5 ECT251 Digital Electronics & ECE 3 2 1 0 3
Logic Design
6 ECL255 Digital Electronics & ECE 1 0 0 2 2
Logic Design – Lab
7 MAT217 Probability & 3 3 0 0 3
Statistics Mathematics
8 HST058 Project Management Humanities 3 2 1 0 3
Total 20 23

5
PROPOSED SCHEME OF COURSES FOR 5TH SEMESTER
S. Course Course Title Department Credit Contact Hours
No. Code Offering
L T P Total
1 CST306 Design & Analysis of CSE 3 2 1 0 3
Algorithms
2 CST307 Microprocessor CSE 3 3 0 0 3
3 CSL308 Microprocessor - Lab CSE 1 0 0 2 2
4 CST309 Operating Systems CSE 3 2 1 0 3
5 CST310 Python Programming CSE 3 2 1 0 3
6 CSL311 Python Programming - Lab CSE 1 0 0 2 2
7 CST312 Compiler Design CSE 3 2 1 0 3
9 ECT307 Communication Systems ECE 3 2 1 0 3
10 ECL308 Communication Systems Lab ECE 1 0 0 2 2
Total 21 24
10 - Honors Elective I - 3 3 0 0 3

PROPOSED SCHEME OF COURSES FOR 6TH SEMESTER


S. Course Course Title Department Credit Contact Hours
No. Code Offering L T P Total
1 CST354 Artificial Intelligence CSE 3 2 1 0 3
2 CSL355 Artificial Intelligence - Lab CSE 1 0 0 2 2
3 CST356 Computer Networks CSE 3 2 1 0 3
4 CSL357 Computer Networks - Lab CSE 1 0 0 2 2
5 CST358 Computer Organization & CSE 3 3 0 0 3
Architecture
6 CST359 Java Programming CSE 3 3 0 0 3
7 CSL360 Java Programming Lab CSE 1 0 0 2 2
8 - Open Elective-I - 3 3 0 0 3
9 CSI361 Industrial Training or CSE 1 0 0 0 0
internship
10 CST0XX Elective-I CSE 3 3 0 0 3
Total 22 24
11 - Honors Elective II - 3 3 0 0 3

6
PROPOSED SCHEME OF COURSES FOR 7TH SEMESTER
S. Course Course Title Department Credit Contact Hours
No. Code Offering L T P Total
1 CST414 Network Security CSE 3 2 1 0 3
2 CSL415 Network Security - Lab CSE 1 0 0 2 2
3 CSP416 Pre-Project CSE 2 0 0 4 4
4 CSS417 Seminar CSE 1 0 0 2 2
5 - Open Elective-II - 3 3 0 0 3
6 CST0XX Elective-II CSE 3 3 0 0 3
7 CST0XX Elective-III CSE 3 2 1 0 3
8 CST0XX Elective-IV CSE 3 2 1 0 3
Total 19 25
9 - Honors Elective III - 3 3 0 0 3
9 - Honors Elective IV - 3 3 0 0 3

PROPOSED SCHEME OF COURSES FOR 8TH SEMESTER


S. Course Course Title Department Credit Contact Hours
No. Code Offering L T P Total
1 CST0XX Elective V* CSE 3 3 0 0 3
2 CST0XX Elective VI* CSE 3 3 0 0 3
3 CST0XX Elective VII* CSE 3 3 0 0 3
4 CSP464 Project CSE 6 0 0 6 6
Total 15 15
5 - Honors Elective V* - 3 3 0 0 3
9 - Honors Elective VI* - 3 3 0 0 3
7 - Honors Comprehensive - 2 2 0 0 2
Viva*
*Electives can be taken as swayam/self-study/ online/ hybrid courses from the list of Electives, anytime during the final year.

7
COURSES OFFERED TO OTHER DEPARTMENTS AS OPEN ELECTIVES
S. Course Course Title Credit Contact Hours
No. Code L T P Total
1. CST203 Database Management Systems 1 0 0 2 2

2. CST250 Data Structures 3 2 1 0 3

3. CST306 Design & Analysis of Algorithms 3 2 1 0 3

4. CST414 Network Security 3 2 1 0 3

5. CST051 Machine Learning 3 2 1 0 3

8
LIST OF ELECTIVES

S.No. Subject Code L-T-P-Credits

1. Simulation & Modeling CST001 3-0-0-3


2. Graph Theory CST002 3-0-0-3
3. Digital Signal Processing CST003 3-0-0-3
4. Multimedia Technology CST004 3-0-0-3
5. Logic Programming CST005 3-0-0-3
6. Embedded Systems CST006 3-0-0-3
7. Advanced Java & Android Programming CST007 3-0-0-3
8. System on Chip (SoC) CST008 3-0-0-3
9. Advanced Internet Technologies CST009 3-0-0-3
10. Wireless Communication CST010 3-0-0-3
11. Fault Tolerant Computing CST011 3-0-0-3
12. Image Processing CST012 3-0-0-3
13. System Design using HDL CST013 3-0-0-3
14. Real Time Systems CST014 3-0-0-3
15. Unix & Shell Programming CST015 3-0-0-3
16. High Speed Networks CST016 3-0-0-3
17. Advanced Algorithms CST017 3-0-0-3
18. Reconfigurable Computing CST018 3-0-0-3
19. Computer Vision CST019 3-0-0-3
20. Advanced Computer Networks CST020 3-0-0-3
21. Advanced Computer Graphics CST021 3-0-0-3
22. Advanced DBMS CST022 3-0-0-3
23. Advanced Computer Architecture CST023 3-0-0-3
24. Advanced Compilation Techniques CST024 3-0-0-3
25. Principles of Cryptography CST025 3-0-0-3
26. Neural Networks CST026 3-0-0-3
27. Pervasive Computing CST027 3-0-0-3
28. Distributed and Parallel Computing CST028 3-0-0-3
29. Cloud Computing CST029 3-0-0-3
30. Software Project Management CST030 3-0-0-3
31. Big Data CST031 3-0-0-3
32. Cyber laws and Forensics CST032 3-0-0-3
33. Expert Systems CST033 3-0-0-3
34. Mobile Computing CST034 3-0-0-3
35. Green Computing CST035 3-0-0-3
36. Introduction to Robotics CST036 3-0-0-3
37. Data Analytics CST037 3-0-0-3
38. Computational Biology CST038 3-0-0-3
39. Special topics in Computer Science CST039 3-0-0-3
40. System & Network Administration CST040 3-0-0-3
9
41. Pattern Recognition CST041 3-0-0-3
42. Natural Language Processing CST042 3-0-0-3
43. Quantum Computing CST043 3-0-0-3
44. Deep Learning CST044 3-0-0-3
45. Introduction to Data Science CST045 3-0-0-3
46. Internet of Things CST046 3-0-0-3
47. Advanced Cryptography CST047 3-0-0-3
48. Data Mining CST048 3-0-0-3
49. Advanced Graph Algorithms CST049 3-0-0-3
50. Advanced Java CST050 3-0-0-3
51. Machine Learning CST051 3-0-0-3
52. Computer Graphics CST052 3-0-0-3
53. Advanced Data Structures CSTO53 3-0-0-3
54. Numerical Methods MTH707 3-0-0-3
55. Operations Research MAT-02 3-0-0-3

10
REQUIRED CREDIT BREAKUP
S. Credits
Category Courses/ Subjects
No. Minimum Maximum
Humanities, Social Science Theory = 04
1 13
and Management courses Lab =. 01
Basic Science Courses Maths Theory = 4-
2 23 29
including Mathematics 6
Mathematics. 12 – 18 Chemistry : T=2,
Chemistry. 4 L=01
Physics. 4 Physics: T=01,
Environmental Studies. 3 L=01
3 Basic Engineering Courses 18
Engineering Drawing. 3
Elements of Mechanical
Theory =05
Engineering. 3
Workshop =01
Basic Electrical Engineering 3
Lab =01
Engineering Mechanics 3
Workshop Practice 2
Computer Programming 4 (3+1)
Institute Open Electives
4 (Compulsory for all 06 Theory = 02
students)
Professional Electives
5 21 45 Theory = 07-15
relevant to branch
Professional core courses Theory = 17-19;
6 63 69
relevant to branch Lab = 9-12
Project. = 06
Project (8th semester)
Pre-Project = 02
Pre-project (7th semester)
Seminar = 01
Seminar (6th semester)
Industrial
7 Compulsory industrial 4
Training or
training/ internship 8 weeks
internship = 01
to be done after 5th semester
Sub-total of
(6th semester)
credits = 10
B.Tech. Requirements = 160 credits
Total Minimum
B.Tech. with Honors = 180 credits

11
CREDIT BREAKUP FOR CSE
S. Category Course Name (Credits) Semeste Credits
No. r Covered
1 Humanities, Social Basic English and Communication Skills (3) First 13
Science and English Language Laboratory (1) First
Management Advanced English Communication Skills 2nd
& Organisational Behaviour (3)
Entrepreneurship Development (3) 3rd
Project Management (3) 4th
2 Mathematics Mathematics-I (3) First 23
(12) Mathematics-II (3) 2nd
Discrete Mathematics (3) 3rd
Probability & 4th
Basic Science Statistics (3)
Courses including Engineering Chemistry (3) 2nd
Mathematics Chemistry Laboratory (1)
Engineering Physics (3) First
Engineering & Applied Physics
Laboratory (1)
Environmental Studies (3) First
3 Engineering Drawing (3) 2nd 18

Elements of Mechanical Engineering (3) First


Basic Basic Electrical Engineering (3) 2nd
Engineering First
Engineering Mechanics (3)
Courses
Workshop Practice (2) First
Computer Programming (3) 2nd
Computer Programming Laboratory (1) 2nd
4 Open Elective-I (3), Preferably Signals 6th 6
Institute Open and Systems taught by the Department of
Electives Electronics and Communications
(Compulsory for Open Elective-II (3), Preferably Control 7th
all students) Systems taught by the Department of
Electrical Engineering
5 Elective-I 6th 21
Elective-II 7th
Professional Elective-III 7th
Electives relevant Elective-IV 7th
to branch Elective-V 8th
Elective-VI 8th
Elective-VII 8th
6 Object Oriented Programming (3) 3rd 69
Electronic Devices and Circuits (3) 3rd
Professional core
Database Management Systems (3) 3rd
courses relevant
Software Engineering (3) 3rd
12
to branch (63-69) Internet & Web Technologies (3) 4th
Data Structures (3) 4th
Digital Electronics and Logic Design (3) 4th
Theory of Computation (3) 4th
Compiler Design (3) 5th
Design Analysis and Algorithms (3) 5th
Microprocessor (3) 5th
Operating Systems (3) 5th
Communication Systems (3) 4th
Python Programming (3) 5th
Artificial Intelligence (3) 6th
Computer Networks (3) 6th
Computer Organization and Architecture (3) 6th
Java Programming (3) 6th
Network Security (3) 7th
Object Oriented Programming Lab (1) 3rd
Electronic Devices and Circuits Lab (1) 3rd
Database Management Systems Lab (1) 3rd
Data Structures Lab (1) 4th
Digital Electronics and Logic Design Lab (1) 4th
Communication Systems Lab (1) 5th
Microprocessor Lab (1) 5th
Python Programming Lab (1) 5th
Artificial Intelligence Lab (1) 6th
Computer Networks Lab (1) 6th
Java Programming Lab (1) 6th
Network Security Lab (1) 7th
7 Project (06) 8th 10
th
Project (8
semester)
Pre-project (7th
Pre-Project (2) 7th
semester)
Seminar (6th
semester)
Compulsory
Seminar (1) 7th
industrial
training/
internship 8
weeks to be done Industrial Training or internship (1) 6th
after 5th semester
(6th semester)

Total Credits 160


Total Minimum B.Tech. Requirements = 160 credits
Required B.Tech. with Honors = 180 credits

13
National Institute of Technology
Srinagar

SEMESTER 3RD

Department of Computer Science and Engineering

14
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
2nd Year (3rd Semester) Object Oriented CST201 2-1-0-3
Programming
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: Computer Programming (ITT101)

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Use C++ basic primitives to solve programming problems. 3
CO2 Translate real-world constructs into object-oriented solutions using 4
abstraction and encapsulation, implementing these designs in C++.
CO3 Design software applications using object-oriented design principles 5
with polymorphism and inheritance.
CO4 Handle file operations and demonstrate problem-solving skills 5
using standard template library.

Detailed Syllabus:

Module No Contents Hours


Module 1 Tokens, Expressions and Control Structures: Tokens, Keywords,
Identifiers & Constants, Basic Data types, User-defined Data types,
Derived Data Types, Manipulators, Expressions, Control Structures,
storage classes (auto, static, extern, register).
Functions in C++: Main function, function prototyping, call by
reference, inline functions, default parameters, function overloading.
10
Pointers: Declare a pointer, Passing pointers to function, Pointer
arithmetic, function pointer, Dynamic memory allocation.
Arrays: Initialization of Arrays, 1-D, 2-D arrays, passing array to a
function, pointers to arrays, Use of new and delete operator.
Strings: Creating and manipulating string objects, accessing characters in
strings, comparing and swapping, in-built string functions.
Module 2 Introduction: Object Oriented thinking: Need for OOP Paradigm,
Procedural oriented programming vs Object Oriented Programming,
object oriented concepts - abstraction, encapsulation, polymorphism,
12
inheritance. Benefits, Languages and Applications of OOPs.
Abstraction & Encapsulation: Specifying a class, defining member
functions, static members, Access Specifiers, memory allocation for
15
objects, arrays of objects, scope resolution operator, objects as function
arguments, returning objects, pointers to members, nested classes, Friend
class and friend functions, const member functions, mutable storage class,
Pointer to class members of class.
Constructors & Destructors: Type of constructors: default,
parameterized and copy constructor, constructor overloading, constructor
with default parameter, this pointer, dynamic initialization of objects,
destructor.
Module 3 Static Polymorphism: Definition & Rules of overloading Operators,
Overloading Unary and Binary Operators, Function call operator, type
conversion.
Inheritance: Base and derived classes, visibility modes. Types of
Inheritance: single, multiple, multilevel, hierarchical and hybrid
inheritance.
10
Runtime Polymorphism: Method overriding, Pointers to Objects and
derived classes, Early vs. late binding, virtual functions, pure virtual
functions, Virtual base class and abstract class, Virtual Table and Virtual
pointer, Virtual destructors, Object slicing.
Exception Handling: Exceptions, handling various types of Exceptions
(try, throw, catch), User defined exception.
Module 4 File and Stream Handling: Classes for file stream operations, opening
and closing files, File opening modes, file Pointers, Error handling during
file operations, File I/O with Member Functions, Overloading the
Extraction and Insertion Operators, memory as a Stream Object command
line arguments.
10
Templates: Class templates, function templates.
Standard Template Library (STL): Overview of STL, Containers,
Algorithms, Container classes, General Theory of Operation, Other STL
Elements: Vectors, Iterators, Lists, Stacks, Queues, Pairs, Sets, Maps.
Other STL: Count, find, unique, reverse and transform.

References Books:
1. Stroustrup, Bjarne (2013), "Programming: Principles and Practice Using C++", Addison-Wesley
Professional.
2. Lafore, Robert (2008), "Object-Oriented Programming in C++" , Sams Publishing.
3. Schildt, Herbert (2011), "C++: The Complete Reference", McGraw-Hill Education.
4. Horton, Ivor (2018), "Beginning C++ 17: From Novice to Professional", 5th Edition, Apress.
5. Balagurusamy (2020), ―Object Oriented programming with C++‖, Tata McGraw Hill.

16
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
2nd Year (3rd
Object Oriented Programming Lab CSL202 0-0-2-1
Semester)
Continuous Assessment End Term
Evaluation Policy
60 Marks 40 Marks
Pre-requisites: ITL101
Course Outcomes: At the end of the course, the student will be able to:

Bloom’s
CO No. Course Outcomes Taxonom
y Level
CO1 Use C++ basic primitives to solve programming problems. 3
CO2 Model real-world problems into object-oriented solutions using abstraction 4
and encapsulation in C++.
CO3 Design software applications in C++ using object-oriented design principles 5
with polymorphism and inheritance.
CO4 Implement file operations and demonstrate problem-solving skills using 6
standard template library in C++.

Lab details:
S. No Particulars
1 Switching from C to C++ Programming - C++ Programs to print various patterns –
2 C++ Programs using I/O, variables, data types, operators, and control flow statements.
C++ Programs using scope and lifetime, functions, recursion, arrays, Math library <cmath>,
3
strings <string>, and string manipulations.
4 Function Overloading, default arguments in C++
5 Simple class design and object creations in C++
Use of Constructors, default copying, Array of Objects, passing/returning objects, and
6
static members
Use of friend class, friend function, const object & member function, and mutable
7
storage class
8 Use of Inheritance Concept in C++
9 Exception Handling and Operator Overloading in C++
10 Runtime Polymorphism in C++
11 Use of Templates and Standard Template Library (STL) in C++
12 File Handling in C++

17
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
2nd Year (3rd Semester) Database Management CST203 2-1-0-3
Systems
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Design robust conceptual database systems using entity- 3
relationship modeling.
CO2 Use relational algebra, SQL, PL/SQL, query optimization, and 5
database normalization, ensuring efficient database design and
management.
CO3 Handle crucial database operations using indexing methods, 4
transaction management, concurrency control,
CO4 Practice effective data management using database recovery, 4
security, data transformation, and emerging technologies in data
mining and warehouse modeling.

Detailed Syllabus:

Module No Contents Hours

Module 1 Conceptual Database Design: Characteristics of the Database, DBMS 12


Architecture & Data Independence, Database Languages & Interfaces.
Data Models - Hierarchical model, Network Model, CODD Rules,
Relational Database Management Systems (RDBMS).
Data Modelling: Entity-Relationship Model – Entities, Attributes and
Relationships, Cardinality of Relationships, Strong and Weak Entity Sets,
Generalization, Specialization, and Aggregation, Converting ER Model
into Relational Model, Integrity constraints over relationship.
Relational Database Model: Terminologies: relation, tuple, attribute,
domain, relational schema, degree of relation. Relational constraints:
Domain constraints, Key constraints, Entity integrity constraints,
Referential integrity constraints.
Module 2 Relational Algebra: Basic relational algebra, tuple calculus 10
Normalization: Functional Dependencies (FDs), Closure set of attributes,
Determining candidate keys, Equivalence of FDs, Lossless
18
Join, Dependency preserving Decomposition, Normal forms - 1NF, 2NF,
3NF, BCNF.
Structured Query Language (SQL) - Creating a table and constraints,
Referential triggered actions, Aliasing, Data Definition Language (DDL),
Data Manipulation Language (DML), set operations, ORDER BY, IN,
ANY, ALL, SOME clauses. Nested correlated queries: EXISTS, NOT
EXISTS, JOINS, and aggregate functions. PL/SQL: Cursors, Triggers.
Query Processing and Optimization: Overview of Query Evaluation,
operator evaluation, Algorithms for relational operations.
Module 3 File Organisation & Indexing: File organization, Types of Indexing: 10
primary, secondary and clustered indexing, multi-level indexing.
Introduction to B trees and B+ trees, Database properties of B trees,
Insertion and deletion on B tree.
Transaction and Concurrency Control: ACID properties, transactions,
schedules and concurrent execution of transactions, Concurrency control-
lock based protocol, Serializability, recoverability, dealing with deadlocks
and Concurrency control without locking.
Transaction Control Language (TCL): Commit, Save point, Roll back,
Set transaction, Data Control Language (DCL): grant and revoke.
Module 4 Database Recovery: Failure classification, Recovery and atomicity, Log- 10
based recovery shadow paging and Advanced Recovery Techniques.
Security and Authorization, Access control, Direct access control and
Mandatory access control, Role of DBA.
Data transformation techniques: Normalization, Discretization,
Sampling, Compression.
Emerging Technologies: Datamining, Knowledge Discovery in
Database, Data Warehouse Modelling: Schema for multidimensional data
models, Concept hierarchies, Measures: Categorization and
Computations.

Reference Books:
1. Silberschatz, A., Korth, H. F., & Sudarshan, S. (2011). Database system concepts. McGraw-Hill.
2. Ramez Elmasri, S. B. N., Navathe, D. V. L. N., & Somayajulu, S. G. (2010). Fundamentals of
Database Systems. Pearson Education.
3. Ramakrishnan, R., Gehrke, J., (2003). Database management systems (Vol. 3). New York:
McGraw-Hill.

19
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
2nd Year (3rd Semester) Database Management CST204 0-0-2-1
Systems Lab
Continuous Assessment End Term
Evaluation Policy 60 Marks 40 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Understand RDBMS Architecture and learn about different data 4
types supported by SQL and their practical implementation.
CO2 Implement creating, managing SQL tables using Data Definition 5
Language (DDL) and relational and logical operators in SQL queries.
CO3 Understand Data Manipulation Language (DML) commands, 4
implement various constraints and perform various types of joins.
CO4 Implement security by assigning privileges to database users using 6
Data Control Language (DCL) commands and understand the
implementation of Transaction Control Language (TCL) commands.

Lab Details:

S. No. Particulars
Introduction to SQL, RDBMS.
1 Visualizing the architecture of RDBMS.
Different data types and its implementation.
SQL commands:
Implementation of Creating and managing SQL tables.
2
DDL (Data definition language): Implementation of Create, Alter, drop, rename, truncate,
comment.
Basic Parts of speech in SQL
Implementation of Relational operators.
3 Implementation of Logical operators (ALL, AND, ANY, BETWEEN, EXISTS, IN,
LIKE, NOT, OR, SUM)
SQL functions: ( SUM, MAX, AVERAGE, LIKE)
Changing of Data in tables
4 DML (Data manipulation Language): Understanding the implementation of Select, Insert,
Update, Delete, and merge.

20
Retrieval of data from the table: Understanding implementation of simple queries on
single table only.
Implementation of constraints: Not null, Primary Key, Unique, Check, Foreign key)
Combining Tables and execution of queries on such tables:
5 o Perform Join, inner join, outer join, natural join and subtypes of each.
o Implementation of Advanced queries, sub query and grouping (Group by and
having clause).
Understanding the dependence in queries, correlated queries using Existential quantifiers
6 Understanding the difference in replacing IN with OUTER JOIN, EXISTS and NOT
EXISTS.
Implementation of Security by assigning Privileges to database users
DCL: (Data control Language): Understanding the implementation of Grant, Revoke and
7 views.
TCL: (Transaction control Language): Understanding the implementation of Begin,
Commit, Rollback and Save point in transaction.
8 Lab Project: Students are required to submit a case study

Books Recommended:
1. Oppel, A. J., Groff, J. R., & Weinberg, P. N. (2010). SQL: The Complete Reference. McGraw-Hill.
2. McLaughlin, M., & Harper, J. (2010). Oracle Database 11g PL/SQL Programming Workbook.
McGraw-Hill, Inc.

21
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
2nd Year (3rd Semester) Software Engineering CST205 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 To understand diverse software process models: Waterfall, 3
Incremental, RAD, Evolutionary, Unified, Agile (SCRUM and
KANBAN methodologies).
CO2 To learn requirements engineering tasks: feasibility studies, 4
elicitation techniques, use case development, and requirement
analysis.
CO3 To understand software design concepts: modularity, architectural 4
design, user interface design, and project planning aspects.
CO4 To acquire software testing strategies, validation techniques, 5
debugging methodologies, maintenance models, and quality
management practices.

Detailed Syllabus:

Module No Contents Hours

Module 1 Software Process: The Evolving role of Software, Defining Software, 14


Software Myths, Legacy software, A generic view of process, A layered
Technology, Process Framework, Capability Maturity Model Integration
(CMMI), Process Assessment, Personal and Team Process Models,
Product and Process, Process Models – Build and fix model, The
Waterfall Model, Incremental Process Model, RAD Model, Evolutionary
Process Models, Unified Process

Agile Methodology: Agile Manifesto, Waterfall model vs Agile,


Problems solved by Agile, Introduction to SCRUM and Kanban, What is
a Sprint, SCRUM Events (Sprint Planning, Stand-ups, Sprint Review and
Sprint Retrospective and their differences), SCRUM Roles (Scrum
master, Product Owner, Engineering Team, Engineering Manager,
Service Manager, Service Owner), Commonly used Terminologies
(Issues and their types, Project, Workflows, Versions ), Estimation (How
22
to estimate story points), Sprint Backlog, Sprint Velocity Calculation,
Intro to Jira and Confluence

Module 2 Requirements and Tools: Software Engineering Practice, Requirements 9


Engineering tasks, Types of requirements, Feasibility studies, Initiating
the requirements engineering process, Eliciting Requirements,
Developing Use cases, Requirement Analysis, Documentation and
validation, Building the Analysis Model, Elements of the Analysis Model
Module 3 Analysis Modeling And Project Planning: Requirements Analysis, 10
Analysis Modeling approaches, data modeling concepts, Object oriented
Analysis, Scenario based modeling, Flow oriented Modeling, Class based
modeling, creating a behavior model. Planning: Size estimation, Cost
estimation, COCOMO, Software risk management.
Design & Implementation: Design Engineering, Design Concepts,
Modularity, Strategy of Design, Function oriented Design, Architectural
Design, Detailed Design, Design process, Design Quality, Design model,
User interface Design, Implementation, issues in implementation.
Software metrics, SCM.
Module 4 Testing & Maintenance: Testing strategies, Testing Tactics and 9
terminologies, functional testing, structural testing, levels of testing,
validation testing, system testing, Art of debugging. Software
maintenance, maintenance models, Regression testing, Reverse
Engineering, ReEngineering, evolution, Quality Management, Process
Improvement, Risk Management.

Books Recommended:
1. Pressman R., ―Software Engineering‖, 7th Ed., McGraw-Hill. 2000
2. Sommerville, I., ― Software E ngineering‖, 6 th Ed., P earson 2007 Education.
3. Dfleeger, S. L., ―Software Engineering‖, Pearson Education.

References:
1. Richard Fairley, "Software Engineering Concepts", McGraw Hill.
2. Stephan Schach, ―Software Engineering‖, Tata McGraw Hill.
3. Pfleeger and Lawrence,―Software Engineering: Theory and Practice‖, Pearson Education.

23
Department of Computer Science & Engineering
National Institute of Technology Srinagar

Year (Semester) Course Title Course Code L-T-P-Credits


2nd Year (3rd Semester) Electronic Devices ECT206 2-1-0-3
and Circuits
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: None.
Objectives: To understand basics of semiconductors, Diodes, Transistors, Operational amplifiers and their
application.Course Outcomes: At the end of the course, the student will be able to:
CO No. Course Outcomes Bloom’s Taxonomy
Level
CO1 Understand the basics of semiconductor physics, PN junction diode and I
list of diode applications.
CO2 Explain the construction, basics of operation and performance analysis of II
the devices like BJT, MOSFET.
CO3 Develop knowledge of OPAMP and its negative feedback applications III
CO4 Analyze various feedback amplifiers and positive feedback applications of IV
OPAMP such as oscillators.

Details of the Syllabus:


Module No. Particulars Hours
Introduction to Semiconductors and P-N junction diode: Band theory of
Module 1 Insulators, semiconductors and metals, Intrinsic and extrinsic semiconductors,
Current components and IV characteristics of diode, Breakdown, diode circuits: half 10
wave, full wave rectifiers, Filter and regulator circuits, clipping and clamping
circuits.
Transistors: Construction and characteristics of bipolar junction transistors (BJTs)-
Module 2 Common Base, Common emitter, Common Collector configuration, DC load line,
Transistor as a switch and Amplifier. Low frequency, h-parameter model, Analysis 12
and design of transistor amplifier circuits using h-parameters., Biasing and stability
techniques, MOSFET construction and characteristics.
Operational Amplifiers: Introduction to Op-amp, Inverting and non-inverting
10
Module 3 configuration, Applications–adder, subtractor, integrator, differentiator.
Amplifiers And Oscillators: Classification of amplifiers, concept of feedback,
Module 4 types of feedback, general characteristics of feedback amplifiers, Single stage RC
10
coupled amplifier. Oscillators – Criterion for Oscillation, type of oscillators, Power
amplifiers.

Recommended Books:

1. Semiconductor Physics and Devices by Donald A. Neamen


2. Microelectronics by Sedra & Smith
3. Millman's Electronic Devices and Circuits by Millman Halkias Satiyabrata Jit

24
Department of Computer Science & Engineering
National Institute of Technology Srinagar

Year (Semester) Course Title Course Code L-T-P-Credits


2nd Year (3rd Semester) Electronic devices and ECL207 0-0-2-1
circuits Lab
Evaluation Policy Internal Assessment External Assessment
60 Marks 40 Marks

Pre-requisites: Electronic devices and circuits.


Objectives: To acquire knowledge and become familiar with the different characterization techniques to analyse,
synthesize basic electronic networks to get desired output.

Course Outcomes: At the end of the course, the student will be able to:
CO No. Course Outcomes Bloom’s Taxonomy
Level
CO1 Select and explain the working of different electronic equipment used in 1,2
Electronics laboratories.
CO2 Experimental measures on different types of electronic circuit and analyse 4,5
their operation under different operating conditions.
CO3 Classify relevant information to supplement the Electronic devices and 2
circuits course.
CO4 Examine the characterization of diodes, BJT, and OP-AMP for different 2,3
applications.

Details of the Syllabus:


Exp. No. Particulars
1 Study of CRO-Measurement of voltage frequency and phase of a given waveform.
2 To obtain V-I characteristics of PN Junction diodes.
3 To assemble a half wave and a full wave rectifier and to study their performance.
4 To study Clipping and Clamping circuits with some examples.
Comparison of Zener diode and Avalanche diode characteristics and to use Zener diode as a voltage
5
regulator.
To obtain transistor characteristics in the following configurations. a) Common base b) Common
6
emitter.
7 To assemble a CE amplifier and observe its performance.
8 Study characteristics of OP-AMP as inverting and non-inverting amplifier.
9 Study applications of OP-AMP as integrator and differentiator.
To measure the following parameters of a typical OP-AMP.
a. I/P Impedance.
10 b. O/P Impedance.
c. Slew rate.
d. CMRR.
Feedback
11 a. To assemble current series feedback amplifier and study its performance.
b. To assemble a voltage shunt feedback amplifier and study its performance.
12 To assemble an RC phase shift oscillator.
25
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
2nd Year (3rd Semester) Discrete Mathematics MAT207 3-0-0-3
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: A student should have basic knowledge of Set Theory.


Course Outcomes: At the end of the course, a student should be able to:

CO No. Course Outcome Bloom’s


Taxonomy
Level
CO1 Apply the concepts of mathematical logic and counting in engineering 3
problems
CO2 Determine ordered sets and lattices 5
CO3 Apply concepts of graph theory in computer science and engineering 3
CO4 Apply concepts of group theory in engineering problems 3
Syllabus:

Module No. Contents Hours


Mathematical Logic and Combinatorics: Fundamentals of Mathematical Logic,
Propositions and compound propositions, Basic Logical operations, truth tables,
Module 1 Tautologies and contradictions, Conditional and biconditional statements. Basic 15
counting principles, Permutations and Combinations, Pigeon hole principle with
applications, Inclusion-exclusion principle, Homogenous and non-homogenous
recurrence relations.
Ordered sets, Lattices: Ordered sets, Diagram of Partially ordered sets,
Module 2 Supremum and Infimum, well-ordered sets, Lattices, Bounded and 10
complemented lattice, Distributive Lattice.
Graph Theory: Introduction to graphs, Basic concepts, Isomorphism, Operations
Module 3 in graphs, Degree sequences, Trees and their properties, Matrices associated to 10
graphs and matrix tree theorem.

26
Algebra: Groups, semi group, order of a group, Abelian group,
Module 4 subgroup, Cosets, Lagrange's Theorem, order of an element of a group, cyclic 7
groups.

Recommended Books:
1. J. A. Gallian, Contemporary Abstract Algebra, 9th Edition, Cengage India Private Limited, (2019).

2. K. H. Rosen, Discrete Mathematics and its Applications, 8th Edition, Mc-Graw Hill Publication,
(2007).

27
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
2nd Year (3rd Semester) Entrepreneurship HST006 2-1-0-3
Development

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

COURSE OUTCOMES:
After completing this course, the student must demonstrate the knowledge and ability to:

CO1 Apply the concepts of entrepreneurship and innovation. BTL 3

CO2 Analyze entrepreneurship considering various theories and models. BTL4

CO3 Appraise Training Programme to inculcate Entrepreneurial BTL5


acumen.

CO4 Develop Entrepreneurship Development Skills. BTL6

Detailed Syllabus:
Module-1 Entrepreneurship: Importance and growth, Characteristics of 10 Hrs
entrepreneurs, Ethical and social responsibilities of entrepreneurs,
Challenges and opportunities of different forms of
entrepreneurship, Entrepreneurial motivation.
Module-2 Theories of entrepreneurship, Schumpeter‘s Theory of 10 Hrs
Innovation, Economic Theory of Entrepreneurship, Resource
based, Opportunity based, psychological and Sociological
theories of entrepreneurship.

28
Module-3 Designing Appropriate Training Programme to inculcate 10 Hrs
Entrepreneurial Spirit, Training for New and Existing
Entrepreneurs, Feedback and Performance of Trainees, Training
entrepreneurs for creative problem solving.
Module-4 Entrepreneurship Development Skills: Meaning of 10 Hrs
Entrepreneurship skill, Types of Entrepreneurship Skills: Business
managementskills, Teamwork and leadership skills,Time
management and organizational skills

Books Recommended:
1. Kumar, A. (2012). Entrepreneurship: Creating and Leading an Entrepreneurial Organization.
Pearson Education India.
2. Rao, T., & Kuratko, D. (2012). Entrepreneurship. Cengage learning India.
3. Ramachandran, K. (2012). Entrepreneurship Development. McGraw Hill Education India.
4. Roy, R. (2020). Entrepreneurship (Ed. 3rd). Oxford University Press India.
5. Chole, R. R., Kapse, P. S., & Deshmukh, P. R. (2012). Entrepreneurship Development and
Communication Skills. Scientific Publisher.

29
National Institute of Technology
Srinagar

SEMESTER 4TH

Department of Computer Science and Engineering


30
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
2nd Year (4th Semester) Data Structures CST250 2-1-0-3

Mid-Term Internal Assessment End-Term


Evaluation Policy
26 Marks 24 Marks 50 Marks

Pre-requisites: Computer Programming (ITT101)

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Apply the concept of Abstract Data Types and implement suitable 3
algorithms to solve problems of searching and sorting
CO2 Design stack and queue data structures using linear and linked 4
representation for various applications
CO3 Construct tree data structures using linear and linked representation 4
for various applications
CO4 Apply hash tables and graph data structure to solve computational 5
problems efficiently

Detailed Syllabus:
Module No Contents Hours

Module 1 Introduction:
Primitive Structures: Arrays, Structures, Self-Referential Structures
Strings, Pointers, Dynamic Memory Allocation.
Searching Techniques: Linear and Binary Search
Sorting Algorithms: Stability and In Place Properties, Insertion Sort,
Merge Sort, Quick Sort, Lower Bound for Comparison Based Sorting 11
Algorithms, Counting Sort, Radix Sort, Bucket Sort
Recursion: Recursion, Recursion and Stacks. Expression evaluation
using stacks.
Other: Kadane‘s Algorithm

Module 2 Linear Data Structures and Abstract Data Types (ADTs):


Stacks: Array/Static implementation of Stacks. Prefix, Postfix and Infix
Expressions. Infix to postfix conversion. Expression evaluation and
11
expression trees, Applications of Stacks.
Queues: Array/Static implementation of Queues, Applications of Queues,
Types of Queues.
31
Linked Lists: Linked List vs Arrays, Types of Linked lists: Singly,
Doubly, Circular, Multiple Linked Lists. Linked List basic operations:
Insertion, Deletion, Searching, and Traversing. Applications and
Limitations of Linked lists, Dynamic Implementation of Stacks and
Queues. Floyd‘s Tortoise and Hare Algorithm and its Applications.

Module 3 Non-Linear Data Structures:


Trees: Introduction to Trees, Implementation of Trees, Binary Trees,
Tree Traversals with an Application, Binary Search Trees (BSTs),
Operations on BST: Traversal, Insert, delete, and search. Static and
dynamic implementation. Balanced BST: AVL Trees, Red Black Trees. 10
Heaps: Definition and Implementation of Max and Min Heap. Priority
Queue, Binary Heap Implementation and Applications of Priority Queues.
Heap Sort.

Module 4 Hash Tables: Hashing, Direct Address Table, Hash Function, Collisions
resolution techniques in Hashing: Chaining, Open Addressing - linear
probing, quadratic probing, double hashing.
Graph Algorithms: Graphs and their Representations, Graph Traversal
Techniques: Breadth First Search (BFS) and Depth First Search (DFS), 10
Applications of BFS and DFS, Search vs. Traversal, BFT and DFT.
Minimum Spanning Trees (MST): Prim‘s and Kruskal‘s algorithms.
Dijkstra‘s Algorithm for Single Source Shortest Paths.

Books and References:


1. Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest and Clifford Stein (2009),
Introduction to Algorithms, Third Edition, MIT Press.
2. Bhagat Singh, Thomas L. Naps (1985). Introduction to Data Structures. Thomson Learning
3. Sartaj Sahni (1998), ―Data structures, Algorithms and Applications in C++ ―, McGraw Hill.
4. E. Horowitz, S. Sahni (2008), ―Fundamentals of Data Structures‖, Computer Science Press
5. Narasimha Karumanchi (2016), Data Structures and Algorithms Made Easy: Data Structure and
Algorithmic Puzzles, Second Edition, Career Monk publisher.
6. Seymour Lipschutz (2017), ―Data Structures with C‖, (Schaum's Outline Series), McGraw Hill.

32
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
2nd Year (4th
Data Structures Lab CSL251 0-0-2-1
Semester)
Continuous Assessment End Term
Evaluation Policy
60 Marks 40 Marks
Pre-requisites: ITL101
Course Outcomes: At the end of the course, the student will be able to:

Bloom’s
CO No. Course Outcomes Taxonom
y Level
CO1 Apply the concept of Abstract Data Types (ADTs) and implement suitable 3
algorithms to solve problems of searching and sorting
CO2 Design stack and queue ADTs using linear and linked representation for 4
various applications
CO3 Construct tree data structures using linear and linked representation for 4
various applications
CO4 Apply hash tables and graph data structure to solve computational problems 5
efficiently

Lab Programming Exercises:


S. No List of Experiments
1 Use of Arrays and Structures
2 Implementation of Searching Algorithms
3 Implementation of Sorting Algorithms – Part 1
• Bubble Sort
• Insertion Sort
• Selection Sort
• Counting Sort
• Radix Sort
4 Implementation of Sorting Algorithms – Part 2
• Merge Sort
• Quick Sort
5 Implementation of operations on Single Linked List.
6 Implementation of operations on Stack and Queue ADTs.
7 Implementation of various applications of Stack data structures.
8 Implementation of various applications of Queue data structures.
9 Implementation of tree traversals.
• Pre-order
• In-order

33
• Post-order
10 Implementation of Binary Search Tree operations.
• Insert
• Delete
• Search
11 Implementation of Priority queue using Heap.
12 Implementation of Hashing Techniques.
• Chaining
• Linear Probing
13 Implementation of Breadth First Search (BFS) and Depth First Search (DFS) on a graph.
14 Solve the single-source shortest path problem using Dijkstra‘s algorithm.

34
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
2nd Year (4th Semester) Internet & Web CSL252 1-1-2-3
Technologies
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 To understand the basics of the Internet, World Wide Web, and 3
modern web technologies.
CO2 To learn HTML and CSS, for creating structured and styled web 4
pages.
CO3 To acquire proficiency in JavaScript programming, including 4
advanced form validation and jQuery usage.
CO4 To gain expertise in server-side scripting with Node.JS 5

Detailed Syllabus:

Module No Contents Hours

Module 1 Web Basics and Overview: Introduction to Internet, World Wide Web, 4
Web Browsers, URL, MIME, HTTP, Web Programmers Toolbox.

Web 2.0: Concepts, technologies, and trends shaping the modern web.
Module 2 HTML (Hypertext Markup Language): Basics of HTML, including 8
tags, attributes, and document structure.
CSS (Cascading Style Sheets): Fundamentals of CSS for styling HTML
elements and web pages.
Module 3 Introduction to Javascript Programming: Basics of JavaScript syntax 15
and variables, Data types and operators in JavaScript, Control structures:
if-else statements, switch statements, loops, Functions in JavaScript:
declaration, invocation, parameters, return values, JavaScript events:
handling user interactions and browser events, DOM manipulation with
JavaScript: accessing and modifying HTML elements, Error handling and
debugging in JavaScript, Introduction to ES6 features: let and const,
arrow functions, template literals, Advanced Form Validation, jQuery for
DOM manipulation and event handling

35
Module 4 Introduction to Server-Side Scripting with Node.js: Understanding the 15
Node.js environment, event-driven architecture, and non-blocking I/O
model. Exploring the Node.js event loop and its role in asynchronous
programming.

Basics of Node.js: Familiarizing with Node.js syntax, variables, data


types, control structures, and error handling. Understanding the use
of require for module importing.

Functions in Node.js: Deep dive into Node.js callback functions,


promises, and async/await for handling asynchronous operations.
Understanding closures and higher-order functions in JavaScript.

Node.js Modules and Package Management: Understanding built-in


and custom modules in Node.js. Learning to manage third-party packages
with npm (Node Package Manager).

Creating Dynamic Web Pages with Node.js: Learning to use the


Express.js framework to set up a server, define routes, and render
dynamic views.

Data Exchange between Client and Server: Learning to handle HTTP


requests and responses. Understanding RESTful APIs and building one
using Express.js. Working with form data and file uploads.

Connecting Node.js to Databases: Understanding how to connect


Node.js to relational databases (like MySQL or PostgreSQL) using an
ORM like Sequelize. Learning to connect to non-relational databases (like
MongoDB) using Mongoose. Performing CRUD operations and
understanding data modeling in both types of databases.

Books Recommended:
1. Dietel & Dietel ―Internet & Web Designing‖.
2. John Duckett. ―JavaScript and Jquery: Interactive Front-end Web Development‖.

References:
1. Greenlaw R and Hepp E ―Fundamentals of Internet and www‖.
2. B. Underdahle and K.Underdahle, ―Internet and Web Page / WebSite Design‖, IDG Books
India (P) Ltd.
3. D. Comer, ―The Internet Book‖, Prentice Hall of India.
4. David Flanagan. ―JavaScript: The Definitive Guide‖.

36
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
2nd Year (4th Semester) Theory of Computation CST253 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Classify machines by their power to recognize languages. 5
CO2 Employ finite state machines to solve problems in computing. 4
CO3 Design grammars and recognizers for different formal languages 6
CO4 Comprehend the hierarchy of computing problems arising in the 4
theoretical computer science.

Detailed Syllabus:

Module No Contents Hours

Module 1 Introduction and Deterministic Finite Automata: Complexity of 12


computations, Automata, Mathematical notations and terminology,
Definitions, Theorems and proofs, Types of proofs, Families of Formal
Languages, Deterministic Finite Automata (DFA), Construction of
minimal DFA, Union, Concatenation, Cross product, Complementation,
Reversal of DFA, Minimization of DFA - Myhill–Nerode theorem.
Module 2 Non-Deterministic Finite Automata and Regular Languages: 10
Introduction to NFA, Examples of NFA, Conversion of NFA to DFA,
Complementation of NFA, Epsilon-NFA and conversion of epsilon-NFA
to NFA, Regular expressions, Regular language, Regular Grammar,
Moore Machine, Mealy Machine and its conversion. Conversion of Finite
automata to Regular Expression and vice versa, Testing whether a
language is regular or not - Pumping lemma for regular languages,
Properties of Regular Languages, Decidable problems on Regular
Languages.
Module 3 Context free languages: context free grammar (CFG), Types of CFG - 10
CNF and GNF, Pre-processing of CFGs, Parsing algorithm for context-
free grammars - CYK, Pushdown automata (PDA), Non deterministic
PDA - Non-context free languages, Equivalences, Closure properties of
CFLs, Testing CFG or not - Pumping Lemma for CFLs, Decidable
37
problems on CFLs.

Module 4 Turing Machines and Computability theory: Turing machines, 10


Variants of Turing machines, Non-Halting TM, Turing or church thesis,
Linear Bounded Automata (LBA) - context sensitive grammars,
Recursively enumerable and recursive languages, Theorems on recursive
and recursively enumerable languages, Definition of Algorithm,
Countability, Computability, Decidability, Reducibility.
Complexity theory - Undecidability, Turing Machine halting problem,
Undecidable problems - Post Correspondence problem, P and NP
problems.

Books and References:


1. J.E. Hopcroft and J.D. Ullman (2011). ―Introduction to Automata Theory, Languages and
Computation‖, Pearson Education India
2. Alfred V. Aho, Monica S. Lam, Ravi Sethi, and Jeffrey D. Ullman. (2006) "Compilers:
Principles, Techniques, and Tools". Pearson Education.
3. Peter Linz (2016), ―An Introduction to Formal Languages and Automata‖, Jones & Bartlett
4. K.L.P. Mishra, ―Theory of Computer Science‖, Prentice Hall of India

38
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
2nd Year (4th Digital Electronics ECT251 2-1-0-3
Semester) and Logic Design
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: None.
Objectives: The course will focus on introducing the concepts of logic design and how those concepts can be
applied to come up with methodologies that allow the design of digital circuits. The course takes a concrete
bottom-up approach starting from the basic number theory and Boolean laws and then building incrementally the
design process through logic gates, flip-flops, registers etc. This should allow the student to develop a solid
understanding of the basic design process in the digital paradigm. By the end of this course a student will have a
more relevant view of the modern digital design field, and a better understanding of how the modern computers
and other digital devices function.
Course Outcomes: At the end of the course, the student will be able to:
CO No. Course Outcomes Bloom’s
Taxonomy Level
CO1 Understand the concepts of logic design and apply those concepts to 1, 2, 3
formulate design problems as Boolean functions.
CO2 Analyze the functionality of the formulated design problems at the gate level 4
to avoid any hazards, thereby ensuring a complete timing closure of the
intended circuit.
CO3 Choose a proper circuit realization for a given problem and analyzing and 4, 5, 6
evaluating the resultant performance in terms of some basic parameters.

CO4 Create alternate circuit realizations for a given problem by exploiting the 4, 5
inherent redundancies and analyzing different target elements and platforms.

Details of the Syllabus:


Module No. Particulars Hours
Number System & Boolean Algebra: Binary Number system,
Conversion of bases, Complements, Weighted and Non-weighted codes,
Binary Arithmetic, Boolean Laws and Logic Gates, Boolean functions-
Module 1 12
Canonical and Standard forms, Simplification of Boolean Functions, Gate
Implementations, Hazards and Glitches, Hazard detection and Hazard free
implementations.
Combinational Logic Design: Design procedure, Adders and
Subtractors, Encoders and Decoders, Multiplexers/De-multiplexers and
Module 2 10
their use in combinational logic design, Digital Comparators, Timing
response in Combinational networks.
Sequential Logic Design: Latches and Flip-flops, Finite State Machines
Module 3 and Controllers, FSM based design- Counters, Sequence detectors, Signal 10
generators, Moore and Mealy machines, Timing in state machines,
39
Registers.
Digital Logic families: RTL, DCTL, DTL, TTL, ECL, CMOS logic
Module 4 6
families.
Module 5 Programmable Logic devices: PLAs, PALs, CPLDs, FPGAs. 4

Recommended Books:
1. Digital Principles and Applications by Donald P. Leach, Albert Paul Malvino and Goutam Saha
2. Digital Logic and Computer Design by M. Morris Mano
3. Modern Digital Electronics by R.P. Jain
4. Digital Design by Frank Vahid
5. Contemporary Logic Design by Randy H. Katz and Gaetano Borriello

40
Department of Computer Science & Engineering
National Institute of Technology Srinagar

Year (Semester) Course Title Course Code L-T-P-Credits


2nd Year (4th Semester) Digital Electronics & ECL255 0-0-2-1
Logic Design Lab
Evaluation Policy Internal Assessment Final Assessment Total
60 Marks 40 Marks 100 Marks

Prerequisite: Digital Electronics & Logic Design.


Objectives: To acquire knowledge and become familiar with the different characterization
techniques to analyze, and synthesize the digital logic, combinational and sequential circuits.

Course Outcomes: At the end of the course, the student will be able to:
CO No. Course Outcomes Bloom’s
Taxonomy Level
CO1 Identify relevant information to supplement the Digital I, II
Electronics & logic Design course.
CO2 Develop competence in Combinational Logic III
Problem identification and solution.
CO3 Develop design capability in the field of combinatorial III
logic
using gates and blocks.
CO4 Analysis and design of synchronous and IV, VI
asynchronous sequential circuits.

Details of the Syllabus:


Exp. No. Particulars
To verify the truth table of following logic
1 gates: AND, OR, NOT, NAND, NOR, XOR
and XNOR.
2 To implement XOR and XNOR using universal logic gates.
a. To verify DeMorgans law using logic gates.
3 b. To implement typical Boolean expressions and check their equality.
To design and realize: -
4 a. Half adder and verify its truth table.
b. Full adder and verify its truth table.
To design and realize: -
5 a. Half subtractor and verify its truth table.
b. Full subtractor and verify its truth table.
6 To design a multiplexer/demultiplexer using two input NAND gates.
7 To design a 4-bit binary to decimal converter.
8 To design a 4-bit binary to gray code converter.
9 To design a modulo-10 counter.
41
10 Given a frequency f obtain the waveforms with frequencies f/2, f/5 & f/10.
Design and realize the following flip-flops using logic gates.
a. RS flip-flop.
11 b. JK flip-flop.
c. D flip-flop.
d. T flip-flop.
Use PLL as:
12 a. Frequency multiplier.
b. Frequency demodulator.

42
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
nd th
2 Year (4 Semester) Probability and
MAT-217 3-0-0-3
Statistics
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: A student should have basic knowledge of Set Theory.

Course Outcomes: At the end of the course, the student will be able to:
Blooms
CO
Course Outcome Taxonomy
No.
Level
Analyse various concepts of statistics and apply to various engineering 4
CO1
problems
CO2 Evaluate various engineering problems using concepts of probability 3
Solve various engineering problems related to discrete and continuous 3
CO3
distributions
CO4 Analyse sampling theory and apply it to various engineering problems 4

Detailed Syllabus:
Module No. Contents Hours
Introduction to basic Statistics, moments, correlation, regression, methods of
Module 1 10
least square, curve fitting (polynomials, exponentials).
Basic definitions of probability, conditional probability with standard results,
Bays theorem with examples. Discrete and Continuous Random variables,
Module 2 12
Distribution functions, Expectation and Variance of Probability distribution,
and Moment Generating function, Moments and properties.
Discrete distributions: Binomial, Poisson and Geometric distributions and
their applications. Continuous distribution: Uniform, Exponential and
Module 3 10
Normal distributions, Normal approximation to Binomial distribution and
their applications.
Introduction to sampling theory, types of sampling, purposive sampling,
Module 4 random sampling, simple sampling, stratified sampling, test of significance, 10
null and alternate hypothesis, errors in sampling.

43
Recommended Books:

1. Spiegel, M. R., Schiller, J. and Srinivasan, R. A., Probability and Statistics, 3rd Edition, Tata
Mc-Graw Hill, (2010).

2. S. C. Gupta and V. K. Kapoor, Fundamentals of Mathematical Statistics, 12th Edition, Sultan Chand
& Sons
Publications, (2020).

44
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
nd th
2 Year (4 Semester) Project Management HST058 0-0-2-1
Evaluation Policy Mid-Term Internal End-Term
Assessment
26 Marks 24 Marks 50 Marks

COURSE OUTCOMES:
After completing this course, the student must demonstrate the knowledge and ability to:

CO1 Apply the project management skills. BTL 3

CO2 Analyze the project planning and costs. BTL4

CO3 Appraise various project monitoring strategies BTL5

CO4 Evaluate the various aspects of projects BTL6

Detailed Syllabus:
Module-1 Introduction to project management and project selection: Objectives of 10 Hrs
Project Management- Importance of Project Management- Types of
Projects Project Management Life Cycle- Project Selection – Feasibility
study: Types of feasibility Steps in feasibility study.
Module-2 Project planning and implementation: Project Scope- Estimation of 10 Hrs
Project cost – Cost of Capital – Project Representation and Preliminary
Manipulations - Basic Scheduling Concepts - Resource Levelling –
Resource Allocation.
Module-3 Project monitoring and control: Setting a base line- Project management 10 Hrs
Information System – Indices to monitor progress. Importance of
Contracts in projects- Teamwork in Project Management - Attributes of
a good project team – Formation of effective teams – stages of team
formation.
Module-4 Project evaluation- Project Auditing – Phases of project Audit- Project 12 Hrs
closure reports Guidelines for closeout reports. Computers, e-markets
and their role in Project management- Risk management-
Environmental Impact Assessment. Case studies in Project
management.

45
Books Recommended:
1. Nokes, S. (2015). The definitive guide to project management. Pearson Education
India.
2. Newell, M., & Grashina, M. (2003). The project management question and answer
Text book. Amacom.
books 3. Berkun, Scott (2005), The Art of Project Management, O‘Reilly Media: Cambridge,
MA.
4. Cook, Curtis R. (2004), Just Enough Project Management, McGraw-Hill: Boston,
MA.
Reference 5. Crowe, Andy (2006), Alpha Project Managers: What the Top 2% Know that
books Everyone Else Does Not, Velociteach: Kennesaw, GA.
6. Berkun, Scott (2008), Making Things Happen: Mastering Project Management,
O‘Reilly Media: Cambridge, MA.

46
National Institute of Technology
Srinagar

SEMESTER 5TH

Department of Computer Science and Engineering


47
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
3rd Year (5th Semester) Design & Analysis of CST306 2-1-0-3
Algorithms
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: Data Structures (CST250)

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 To understand asymptotic notations to analyze the performance of 4
algorithms.
CO2 To understand and apply various problem solving techniques such 5
as divide and conquer, greedy algorithm, dynamic programming,
etc.
CO3 To solve given problem by selecting the appropriate algorithm 6
design technique and justify the selection
CO4 To know the concepts of P, NP, NP-hard and NP-complete 4
problems and some important contemporary algortithms.

Detailed Syllabus:
Module No Contents Hours

Module 1 Analysis of Algorithms: Algorithm Design paradigms, motivation. 12


Review of algorithmic strategies, asymptotic analysis: upper and lower
complexity bounds. Identifying differences among best, average and
worst Case Behaviours. Big O, little O, omega and theta notations,
Standard complexity classes. Empirical measurements of performance.
Time and space trade-offs in algorithms. Analysing recursive algorithms
using recurrence relations.
Divide & Conquer: Structure of divide and conquer algorithms:
examples, Binary search, Quick sort, analysis of divide and conquer
runtime recurrence relations.
Module 2 Greedy Algorithms: Overview of the greedy paradigm, examples of 10
exact optimization solutions (minimum cost spanning tree), approximate
solution (Knapsack problem), single source shortest paths.
Dynamic Programming: Overview, difference between dynamic
programming and divide and conquer, Memoization vs. Tabulation,
applications: longest increasing subsequence, shortest path in graph,
48
matrix multiplication, travelling salesperson problem, longest common
sequence.

Module 3 Graph Algorithms: Graphs and their Representations, Graph Traversal 9


Techniques: Breadth First Search (BFS) and Depth First Search (DFS),
Applications of BFS and DFS, Minimum Spanning Trees (MST), Prim‘s
and Kruskal‘s algorithms for MST, Connected Components, Dijkstra‘s
Algorithm for Single Source Shortest Paths, Floyd‘s Algorithm for All-
Pairs Shortest Paths Problem.
Back Tracking: Overview, 8-Queens problem and Knapsack problem.
Module 4 Branch & Bound: LC searching, bounding, FIFO branch and bound, 11
Applications: 0/1 Knapsack problem, Travelling salesperson problem.
Computational complexity: Complexity measures, Polynomial vs non-
polynomial time complexity; NP hard and NP complete classes,
Examples.

Other Important Algorithms: Rabin Karp Algorithm, Knuth-Morris-


Pratt Algorithm (KMP), Union Find Algorithm, Z Algorithm, Boruvka's
Algorithm, Johnson's Algorithm, Kosaraju's Algorithm,
Tarjan's Algorithm

Books and References:


1. Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest and Clifford Stein (2009),
―Introduction to Algorithms‖, MIT Press, Cambridge
2. Ellis Horowitz, Sartaj Sahni and Sanguthevar Rajasekaran (2011), ―Fundamentals of Computer
Algorithms‖, Second Edition, Universities Press
3. The Design and Analysis of Computer Algorithms by A.V. Aho, J.E. Hopcroft and J.D. Ullman,
Addison Wesley.
4. Mark Allen Weiss (2006), ―Data Structures and Algorithm Analysis in C++‖, Third Edition,
Pearson Education

49
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
3rd Year (5th Semester) Microprocessor CST307 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Understand the basic structure and operations of a microcomputer. 3
CO2 Familiarize basic architecture of 8085 microprocessors and 4
program 8085 Microprocessor using Assembly Level Language.
CO3 Understand the System bus structure and its different operations. 4
CO4 Understand interfacing of 16 bit microprocessor with memory and 5
peripheral chips involving system design and to familiarize basic
architecture of 8051 microcontroller

Detailed Syllabus:

Module No Contents Hours

Module 1 Microcomputer Structure and Operations: Basic Microcomputer 10


Elements, Typical Microcomputer Structure, CPU, Memory System,
Input Output.

Module 2 Microprocessors and Memory: Typical 8, 16 and 32 bit 12


Microprocessors, 8085, Microprocessor Specification, Memory
Technologies.

Assembly Language Programming: Programming Model of 8085,


Registers, Fetch, Execute Operation of CPU, Instruction Set, Addressing
Modes, Basic Operations, Microprocessor Arithmetic, Program Flow,
Control Using Looping and Branching, Stack, Subroutines, Interrupts,
Resets
Module 3 Bus System: System Bus Structure, Bus Operations, Cycle by Cycle 10
Operations, Timing and Control, Priority Management, Address
50
Decoding

Module 4 Microprocessors Interfacing: Interfacing concepts, Parallel Input 10


Output, Memory Interfacing, Direct Memory Access. The Serial
Subsystems. Programmable Peripheral Interface, Analog Converter
Subsystem.

Introduction to 8051 Microcontroller: Main features, architecture, and


addressing modes, comparison with Microprocessors.

Books Recommended:
1. Gaonkar, R. S. (2000). The Z-80 Microprocessor: Architecture, Interfacing, Programming, and
Design. Prentice Hall PTR.
2. Hall, D. V. (1992). MICROPROCESSORS AND INTERFACING.
3. Fundamentals of microprocessor and microcontroller by B. RAM, Dhanpat Rai Publications.

References:
1. Uffenbeck, J. E. (1987). The 8086/8088 family: design, programming, and interfacing. Prentice-
Hall, Inc...

51
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
3rd Year (5th Semester) Microprocessor Lab CSL308 0-0-2-1
Continuous Assessment End Term
Evaluation Policy 60 Marks 40 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Become familiar with the architecture and Instruction set of Intel 4
8085 microprocessor.
CO2 Expose students to the operation of typical 8085 microprocessor 3
trainer kit.
CO3 Provide practical hands-on experience with Assembly Language 5
Programming.
CO4 Develop and test assembly language programs to use instructions 6
of 8085 and get familiarized with interfacing of various peripheral
devices with 8085 using 8279 chip.

Lab Details:

S. No. Particulars
Develop a program to add two double byte numbers.
1
Develop a subroutine to add two floating point quantities.
Develop program to multiply two single byte unsigned numbers, giving a 16 bit
2
product.
3 Develop a subroutine which will multiply two positive floating point numbers.
4 Write a program to divide a 4 byte number by another 4 byte number.
Write a program to divide an 8 bit number by another 8 bit number up to a fractional
5
quotient of 16 bit.
Write a program for adding first N natural numbers and store the results in memory
6
location X.
Write a program which decrements a hex number stored in register C. The Program
7
should half when the program register reads zero.
To find the factorial of a given number and searching the smallest number in a given
8
array in 8085 microprocessors.
9 Write a program to introduce a time delay of 100 ms using this program as a

52
subroutine display numbers from 01H to OAH with the above calculated time delay
between every two numbers.
N hex numbers are stored at consecutive memory locations starting from X. Find the
10
largest number and store it at location Y.
Interface a display circuit with the microprocessor either directly with the bus or by
11 using I/O ports. Write a program by which the data stored in a RAM table is
displayed.
Design and interface a circuit to read data from an A/D converter, using the 8255 A
12
in the memory mapped I/O.
Design and interface a circuit to convert digital data into Analog signal using the
8255 A in the memory mapped I/O.
13
Interface a keyboard with the microprocessor using 8279 chip and transfer the output
to the printer.
Design a circuit to interface a memory chip with a microprocessor with a given
14
memory map.
15 Interfacing 8051 with seven segment display.

Books Recommended:
3. Gaonkar, R. S. (2000). The Z-80 Microprocessor: Architecture, Interfacing, Programming, and
Design. Prentice Hall PTR.
4. Hall, D. V. (1992). MICROPROCESSORS AND INTERFACING.

References:
1. Uffenbeck, J. E. (1987). The 8086/8088 family: design, programming, and interfacing. Prentice-
Hall, Inc...

53
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
3rd Year (5th Semester) Operating System CST309 2-1-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Understand the structure and organization of the file system, 3
services provided by and the design of an operating system.
CO2 Understand what a process is and how processes are synchronized 5
and scheduled.
CO3 Analyse different approaches to memory management. 4
CO4 Understand the system calls for managing processes, memory, file 4
system and the data structures and algorithms used to implement
an OS.

Detailed Syllabus:
Module No Contents Hours

Module 1 Introduction: Operating system and function, Evolution of operating 10


system, Batch, Interactive, Time Sharing and Real Time System, System
protection.

Operating System Structure: System Components, System structure,


Operating System Services.
Module 2 Concurrent Processes: Process concept, Principle of Concurrency, 12
Producer Consumer Problem, Critical Section problem, Semaphores,
Classical problems in Concurrency, Inter Process Communication,
Process Generation, Process Scheduling.

CPU Scheduling: Scheduling Concept, Performance Criteria Scheduling


Algorithm, Evolution, Multiprocessor Scheduling.

Deadlock: System Model, Deadlock Characterization, Prevention,


Avoidance and Detection, Recovery from deadlock combined approach.
54
Module 3 Memory Management: Base machine, Resident monitor, 10
Multiprogramming with fixed partition, Multiprogramming with variable
partition, Multiple base register, Paging, Segmentation, Virtual memory
concept, Demand paging, Performance, Paged replaced algorithm,
Allocation of frames, Thrashing, Cache memory, Organization, Impact on
performance.
Module 4 I/O Management & Disk Scheduling: I/O devices and organization of 10
I/O function, I/O Buffering, Disk I/O, Operating System Design Issues.

File System: File Concept, File Organization and Access Mechanism,


File Directories, File Sharing, Implementation Issues.

Books Recommended:
1. Silberschatz, A., Peterson, J. L., & Galvin, P. B. (1991). Operating system concepts. Addison-
Wesley Longman Publishing Co., Inc...
2. Andrew, S. T., & Herbert, B. (2015). Modern operating systems. Pearson Education.
3. Stallings, W. (1998). Operating systems internals and design principles. Prentice-Hall, Inc...

References:
1. Romero, F. (2009). Operating Systems. A concept-based approach. Journal of Computer Science
and Technology, 9(2), 112.
2. Bhatt, P. C. P. (2019). An Introduction to Operating Systems: Concepts and Practice
(GNU/Linux and Windows). PHI Learning Pvt. Ltd...
3. Deitel, H. M., Deitel, P. J., & Choffnes, D. R. (2004). Operating systems. Pearson/Prentice Hall.

55
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
3rd Year (5th Semester) Python Programming CST310 2-1-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: Object Oriented Programming (CST201)

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 To learn Syntax, Semantics and create Functions and to handle 4
strings and files in Python.
CO2 To implement OOP concepts & to understand Lists, Dictionaries, 3
and Regular Expressions in Python.
CO3 To develop skills in networked programming, utilize web services, 4
and interact with databases using SQL in Python.
CO4 To learn data manipulation, analysis, and visualization using NumPy, 6
Pandas, and Matplotlib in Python.

Detailed Syllabus:

Module No Contents Hours

Module 1 Why should you learn to write programs, Variables, expressions and 12
statements, Conditional execution, Functions, Iteration, Strings, Files
Lists, Dictionaries, Tuples, Regular Expressions
Module 2 Classes and objects, Classes and functions, Classes and methods , operator 10
overloading

Module 3 Networked programs, Using Web Services, Using databases and SQL. 08
Module 4 NumPy: Arrays, Creation, Manipulation, Indexing, Operations, Aggregation, 12
Statistics.
Pandas: Series, DataFrames, Ingestion, Exploration, Manipulation,
Indexing, Cleaning, Missing Data, Grouping, Aggregation.
Matplotlib: Pyplot Interface, Basic Plots, Customization, Subplots,
Categorical Data, Annotations, Saving Plots.

Books and References:

56
1. Charles R. Severance (2016), ―Python for Everybody: Exploring Data Using Python 3‖, 1st
Edition, CreateSpace Independent Publishing Platform.
2. Allen B. Downey (2015), "Think Python: How to Think Like a Computer Scientist‖, 2ndEdition,
Green Tea Press.
3. Mark Lutz (2011), ―Programming Python‖, 4th Edition, O‘Reilly Media

57
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
3rd Year (5th Python Programming Lab CSL311 0-0-2-1
Semester)
Continuous Assessment End Term
Evaluation Policy 60 Marks 40 Marks

Pre-requisites: Object Oriented Programming (CST201)


Course Outcomes: At the end of the course, the student will be able to:

Bloom’s
CO No. Course Outcomes Taxonom
y Level
CO1 Gain practical experience in Python programming language. 4
CO2 Explore Python syntax, data types, control structures, and functions. 5
CO3 Develop skills in implementing algorithms and solving problems using 6
Python.
CO4 Apply Python programming concepts to develop scripts, applications, and 3
projects in various domains.

Lab details:
S. No Particulars
1 Create a calculator program
2 Explore string functions
3 Implement Selection Sort, Bubble sort, Insertion sort, Merge sort, Quick sort and
Heap sort
4 Implement Stack
5 Read and write into a file
6 Demonstrate usage of basic regular expression
7 Demonstrate use of advanced regular expressions for data validation.
8 Demonstrate use of Tuple, List and Dictionaries .
9 Create Comma Separate Files (CSV), Load CSV files into internal Data Structure
10 Write script to work like a SQL SELECT statement for internal Data Structure made
in earlier exercise
11 Write script to work like a SQL Inner Join for an internal Data Structure made in
earlier exercise
12 Write a script to implement server and client and exchange messages.
13 Write a program to make 1D and 2D arrays using numpy and perform Array Shape,
Array Reshape, Array Iterating, Join, Split, Array filter.
14 Write a program to make Series and DataFrames using pandas and perform basic
operations.
15 Draw Labels, Grid, Subplot, Scatter, Bars, Pie charts using matplotlib
58
Department of Computer Science & Engineering
National Institute of Technology Srinagar

Year (Semester) Course Title Course Code L-T-P-Credits


3rd Year (5th Semester) Compiler Design CST312 2-1-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Analyse and implement various parsing techniques. 4

CO2 Understand and analyse semantic analysis. 4

CO3 Understand and analyse intermediate code. 4

CO4 Realize the importance of code optimization and code generation. 5

Detailed Syllabus:

Module No Contents Hours

Module 1 Compiler structure: analysis-synthesis model of compilation, various 10


phases of a compiler, tool based approach to compiler construction.

Lexical analysis: Interface with input, parser and symbol table, token,
lexeme and patterns. Difficulties in lexical analysis, Error reporting and
Implementation. Regular definition, Transition diagrams, LEX.

Syntax analysis: CFGs, ambiguity, associativity, precedence, top down


parsing, recursive descent parsing, transformation on the grammars,
predictive parsing, bottom up parsing, operator precedence grammars, LR
parsers (SLR, LALR, LR), YACC.
Module 2 Syntax directed definitions: inherited and synthesized attributes, 12
dependency graph, evaluation order, bottom up and top down evaluation
of attributes, L- and S-attributed definitions.

Type checking: type system, type expressions, structural and name


59
equivalence of types, type conversion, overloaded functions and
operators, polymorphic functions.

Run time system: storage organization, activation tree, activation record,


parameter passing, symbol table, dynamic storage allocation.
Module 3 Intermediate code generation: intermediate representations, translation 10
of declarations, assignments, control flow, Boolean expressions and
procedure calls and Implementation issues.
Module 4 Code generation and instruction selection: issues, basic blocks and 10
flow graphs, register allocation, code generation, dag representation of
programs, code generation from DAGs, peep hole optimization, code
generator generators, specifications of machine.

Books Recommended:
1. Hoe, A. V., Sethi, R., & Ullman, J. D. (1986). Compilers—principles, techniques, and tools.
2. Fischer, C. N., & LeBlanc Jr, R. J. (1991). Crafting a Compiler with C. Benjamin-Cummings
Publishing Co., Inc...

References:
1. Appel, A. W. (2004). Modern compiler implementation in C. Cambridge university press.
2. Holub, A. I. (1990). Compiler design in C (pp. I-XVIII). Englewood Cliffs, NJ: Prentice Hall.
3. Fraser, C. W., & Hanson, D. R. (1995). A retargetable C compiler: design and implementation.
Addison-Wesley Longman Publishing Co., Inc...

60
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
3rd Year (5th Semester) Communication ECT307 2-1-0-3
Systems
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: Signals and systems.


Objectives: To analyze various analog and digital modulation & demodulation schemes, and their
receivers
Course Outcomes: At the end of the course, the student will be able to:
CO No. Course Outcomes Bloom’s
Taxonomy Level
CO1 Understand the basic principles of communication system and 2
Fourier analysis of standard signals.
CO2 Analyze various Analog modulation and demodulation schemes. 4
CO3 Understand the conversion of analog signal to digital signal via 4
sampling theorem, quantization and pulse code modulation
CO4 To analyze the modulator and demodulator for various digital 5
modulation schemes

Details of the Syllabus:


Module No. Particulars Hours
Introduction to Amplitude Modulation: Principles of Amplitude
Modulation Systems- DSB, SSB and VSB modulations, Frequency
Module 1 10
discriminator, Demodulation of AM, Diode detector, Super heterodyne
receiver.
Angle Modulation: Basic definitions, Frequency Modulation: Narrow
Band FM, Wide Band FM, Spectral characteristics of angle modulated
Module 2 12
signals, Transmission bandwidth of FM Signals, Generation of FM
Signals, Demodulation of FM Signals.
Analog to Digital Conversion: Digital Communication; Benefits of
Module 3 digital communication, Sampling, quantization, PCM, Delta 10
Modulation
Digital Modulation Schemes: Introduction to digital modulation
Module 4 techniques, BPSK, M-PSK, QPSK, M-QAM and FSK. Modulator and 10
demodulator for these modulations in absence of noise.

Books Recommended:

1. Communication systems by Simons Haykin


2. Modern Analog and Digital Communication Systems by B P Lathi
61
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
3rd Year (5th Semester) Communication ECL308 0-0-2-1
Systems- Lab
Internal Assessment Final Assessment
Evaluation Policy 60 Marks 40 Marks

Objectives: Familiarize the students with analog communication systems. Integration of


communication systems theory with experimental and simulation techniques.
Course Outcomes: At the end of the course, the student will be able to:
CO No. Course Outcomes Bloom’s Taxonomy
Level
CO1 Test and understand working of different electronic equipment 6
used in communication systems
CO2 Choose testing and experimental procedures on different types of 6
communication circuits and systems; and analyze their operation
under different operating conditions
CO3 Analyze and simulate error performance of various digital 4
modulation schemes in the presence of noise.
CO4 Analyze and design of communication receivers under different 4
noise conditions.

Details of the Syllabus:


Exp. No. Particulars
1 To study the generation of standard signals.
2 To study the spectrum Analysis of standard signals
3 To study the generation and detection of AM signals.
4 To study the generation of DSBSC amplitude modulated signals.
5 To study the detection of DSBSC amplitude modulated signals.
6 To study the generation of frequency modulated signals.
7 To study the detection of frequency modulated signals.
8 To measure sensitivity, selectivity, and fidelity of a radio receiver.
9 To measure the noise figure of AM and FM System.
10 To study zero crossing and PLL receivers of FM signals.
11 To simulate various analog modulation schemes in MATLAB.

62
National Institute of Technology
Srinagar

SEMESTER 6TH

Department of Computer Science and Engineering


63
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
3rd Year (6th Semester) Artificial Intelligence CST354 2-1-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 To understand the fundamentals of computational intelligence 2
CO2 To know about the various knowledge representation methods 3
CO3 To understand the features of neural network and its implementation 4
CO4 To gain knowledge of various data clustering methods, evolutionary 4
computation and neuro – fuzzy systems

Detailed Syllabus:

Module No Contents Hours

Module 1 Introduction to Al And Production Systems : Introduction to AI- 10


Problem formulation, Problem Definition - Production systems, Control
strategies, Search strategies. Problem characteristics, Production system
characteristics - Specialized production system- Problem solving methods
- Problem graphs, Matching, Indexing and Heuristic functions - Hill
Climbing-Depth first and Breadth first, Constraints satisfaction - Related
algorithms, Measure of performance and analysis of search algorithms.
Module 2 Representation of Knowledge: Game playing - Knowledge 10
representation, Knowledge representation using Predicate logic,
Introduction to predicate calculus, Resolution, use of predicate calculus,
Knowledge representation using other logic-Structured representation of
knowledge.
Module 3 Knowledge Inference: Knowledge representation -Production based 10
system, Frame based system. Inference - Backward chaining, Forward
chaining, Rule value approach, Fuzzy reasoning - Certainty factors,
Bayesian Theory-Bayesian Network-Dempster - Shafer theory.
Module 4 Planning and Machine Learning: Basic plan generation systems - Strips 12
-Advanced plan generation systems – K strips - Strategic explanations -
Why, Why not and how explanations. Learning- Machine learning,

64
adaptive Learning.
Expert Systems: Expert systems - Architecture of expert systems, Roles
of expert systems - Knowledge Acquisition – Meta knowledge,
Heuristics. Typical expert systems - MYCIN, DART, XOON, Expert
systems shells.

Books and References:

1. Deepak Khemani (2013). A First Course in Artificial Intelligence‖, McGraw Hill Education (India)
2. Stuart Russell and Peter Norvig (2010), ―ArtificialIntelligence: A Modern Approach‖, 3rd Edition,
Prentice Hall.

65
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
3rd Year (6th Artificial Intelligence Lab CSL355 0-0-2-1
Semester)
Continuous Assessment End Term
Evaluation Policy 60 Marks 40 Marks

Pre-requisites: None
Course Outcomes: At the end of the course, the student will be able to:

Bloom’s
CO No. Course Outcomes Taxonom
y Level
CO1 Gain practical experience in implementing artificial intelligence (AI) 4
algorithms and techniques.
CO2 Explore AI concepts such as search algorithms, machine learning, natural 5
language processing, and computer vision.
CO3 Develop skills in using AI libraries and frameworks such as TensorFlow, 6
scikit-learn, and NLTK.
CO4 Apply AI techniques to solve real-world problems, analyse data, and 3
create intelligent systems and applications.

Lab details:
S. No Particulars
1 Study of PROLOG.
2 Write a program to solve 8 queens‟ problem
3 Solve any problem using depth first search.
4 Solve any problem using the best first search.
5 Solve 8-puzzle problem using best first search
6 Solve Robot (traversal) problem using means End Analysis
7 Solve traveling salesman problems.
8 Implementation of Linear and Logistic regression.
9 Implementing classifiers on MNIST Data set.

66
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
3rd Year (6th Semester) Computer Networks CST356 2-1-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Understand network models and architectures. 4
CO2 Specify and identify deficiencies in existing protocols, and then 6
formulate new and better protocols.
CO3 Analyse, specify and design the topological and routing strategies 6
for an IP based networking infrastructure.
CO4 Explain concepts and theories of networking and apply them to 3
various situations, classifying networks.

Detailed Syllabus:

Module No Contents Hours

Module 1 Basic concept of network: Advantages and applications, Types of 10


networks (LAN, MAN and WAN), Different network topologies like star,
ring, hybrid, tree.

Network Protocol Architecture: OSI Reference model, Layers of the


OSI model. Physical, Data-link, Network, Transport, Session,
Presentation and Application layer.
Module 2 Network Switching Techniques: Circuit switched, message switching 10
and packet switched networks, Datagram and virtual circuit services,
Frame relay, ATM.

Flow and Error Control: Stop and wait flow control, Sliding window
flow control, error control protocols, ARQ techniques, Stop-&-wait ARQ,
Go back by N ARQ, Selective repeat ARQ.
Module 3 Routing algorithms: Routing tables, features of a routing algorithm, 12
classification, optimality principle, sink tree, shortest path algorithm,

67
Dijkstra algorithm, flooding, fixed routing, random routing, adaptive
routing, distance vector and link state algorithm.

Medium Access Control Protocols: TDMA, FDMA, CDMA, ALOHA,


Slotted ALOHA, CSMA, CSMA/CD, Ethernet, Token Ring network.
Congestion Control: Congestion in networks and quality of service.
Module 4 Network security: Need for network data security, plaintext, cipher text, 10
encryption techniques, substitution, transposition, DES encryption
standard, Private key, public key, Authentication.

Internetworking and Internet fundamentals: Network


Interconnections, Bridges, Routers, Internet Concepts, Brief concepts
about common Channel signalling and Integrated Digital Networking.

Books Recommended:
1. Stallings, W. (2007). Data and computer communications. Pearson Education India.
2. Tanenbaum, A. S. Computer Networks, ‗Networks. Networks," PHI.
3. Peterson, L. L., & Davie, B. S. (2007). Computer networks: a systems approach. Elsevier.

References:
1. Sklar, B. (2021). Digital communications: fundamentals and applications. Pearson.
2. Keizer, “Local Area Networks” McGraw Hill.
3. Lin, Y. D., Baker, F., & Hwang, R. H. (2011). Computer Networks: An Open Source Approach.
McGraw Hill.

68
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
3rd Year (6th Semester) Computer Networks Lab CSL357 0-0-2-1
Continuous Assessment End Term
Evaluation Policy 60 Marks 40 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Gain a firm understanding of networking concepts learned in the 4
course work by practical demonstration.
CO2 Have working knowledge of the protocols to be used at various 3
levels of the architecture
CO3 Learn principles and methodologies for designing efficient and 6
scalable computer networks.
CO4 Explore VPN technologies for secure remote access and site-to-site 6
connectivity.

Lab Details:

S. No. Particulars
1 Introduction & Network Wire Crimping.
2 Ethernet.
3 Token Ring.
4 Switched LANs.
5 Network Design.
6 ATM.
7 RIP: Routing Information Protocol.
8 OSPF: Open Shortest Path First.
9 TCP: Transmission Control Protocol.
10 Queuing Disciplines.
11 RSVP: Resource Reservation Protocol.
12 Firewalls and VPN.
13 Applications.

Books Recommended:
1. Stallings, W. (2007). Data and computer communications. Pearson Education India.
2. Tanenbaum, A. S. Computer Networks, ‗Networks. Networks," PHI.
69
3. Peterson, L. L., & Davie, B. S. (2007). Computer networks: a systems approach. Elsevier.

References:
1. Sklar, B. (2021). Digital communications: fundamentals and applications. Pearson.
2. Keizer, “Local Area Networks” McGraw Hill.
3. Lin, Y. D., Baker, F., & Hwang, R. H. (2011). Computer Networks: An Open Source Approach.
McGraw Hill.

70
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
3rd Year (6th Semester) Computer Organization & CST358 3-0-0-3
Architecture
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Understand the basics of computer organization: structure and 4
operation of computers and their peripherals.
CO2 Describe arithmetic and logical operations with integer and 3
floating-point operands and their representation in computers and
implement the Hardware for Arithmetic Operations.
CO3 Study basic processing unit and organization of simple processor, 4
concept of pipelining and other large computing systems.
CO4 Study hierarchical memory systems including cache memories, 4
virtual memory and different ways of communicating with I/O
devices and standard I/O interfaces.

Detailed Syllabus:

Module No Contents Hours

Module 1 Introduction: Overview of basic digital building blocks; basic structure 10


of a digital computer. Basic Performance Equation, Clock Rate,
Performance Measurement. Logical operation, hardware implementation,
Real numbers - fixed and floating point, IEEE754 representation.
Module 2 CPU Sub block: Data path - ALU, Registers, CPU buses; Control path – 12
microprogramming (only the idea), hardwired logic; External interface.
Various addressing modes. Concept of subroutine and subroutine call.
Use of stack for handling subroutine call and return, instruction
interpretation and execution.
Module 3 Memory Sub block: Memory organization; concepts of semiconductor 10
memory, CPU memory interaction, organization of memory modules,
cache memory and related mapping and replacement policies, virtual
memory.
Module 4 Pipelining: Introduction to pipelining, Instruction pipeline, Arithmetic 10
pipeline, Data hazards, instruction hazards, performance considerations.
71
I/O Sub block: I/O techniques - interrupts, polling, DMA; Synchronous
vs. Asynchronous I/O; Controllers.

Books Recommended:
1. Hamacher, V. C., Vranesic, Z. G., Zaky, S. G., Vransic, Z., & Zakay, S. (1996). Computer
organization (pp. 224-238). McGraw-Hill.
2. Pedroni, V. A. (2020). Circuit design with VHDL. MIT press.

References:
1. Heuring, V. P., Jordan, H. F., & Murdocca, M. (1997). Computer systems design and
architecture (pp. 519-520). Addison-Wesley.
2. Chapman, B., Jost, G., & Van Der Pas, R. (2007). Using OpenMP: portable shared memory
parallel programming. MIT press.
3. Siegel, H. J. (1985). Interconnection networks for large-scale parallel processing: theory and
case studies. Lexington books.

72
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
3rd Year (6th Semester) Java Programming CST359 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: Object Oriented Programming (CST201)

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 To learn Syntax, Semantics and create functions, classes and their 4
objects
CO2 Learn and implement principles and concepts of Object 4
Orientation such as Abstraction, Data Hiding, and Polymorphism.
CO3 Develop programs by using inbuilt libraries and importing 5
Packages.
CO4 The students will learn to create and handle threads, interfaces and 3
applets.

Detailed Syllabus:

Module No Contents Hours

Module 1 Overview of Basic OOP Concepts: Need for object-oriented paradigm: 12


Agents, responsibility, messages, methods, classes and instances, class
hierarchies (Inheritance), method binding, datatype, variables, scope and
lifetime of variables, arrays, operators, expressions, control statements,
type conversion and casting, classes and objects, constructors, methods,
access control, this keyword, garbage collection, overloading methods
and constructors, parameter passing, recursion, string handling,
inheritance, super keyword, polymorphism- method overriding, abstract
classes.
Module 2 Packages and Interfaces: Defining, Creating and Accessing a Package, 12
Understanding CLASSPATH, importing packages, differences between
classes and interfaces, defining an interface, implementing interface,
applying interfaces, variables in interface and extending interfaces.
Exploring packages – Java.io, Java.util.
Exception handling and multithreading: Concepts of exception
handling, benefits of exception handling, Termination or resumptive
models, exception hierarchy, usage of try, catch, throw, throws and
73
finally, built in exceptions, creating own exception sub classes.
Differences between multithreading and multitasking, thread life cycle,
creating threads, synchronizing threads, daemon threads, thread groups.
Module 3 Event Handling: Events, Event sources, Event classes, Event Listeners, 10
Delegation event model, handling mouse and keyboard events, Adapter
classes, inner classes. The AWT class hierarchy, user interface
components- labels, button, canvas, scrollbars, text components, check
box, checkbox groups, choices, lists panels – scrollpane, dialogs,
menubar, graphics, layout manager – layout manager types – boarder,
grid, flow, card and grib bag.
Applets: Concepts of Applets, differences between applets and
applications, life cycle of an applet, types of applets, creating applets,
passing parameters to applets.
Module 4 Swing: Introduction, limitations of AWT, MVC architecture, 8
components, containers, exploring swing-JApplet, JFrame and
JComponent, Icons and Labels, text fields, buttons – The JButton class,
Check boxes, Radio buttons, Combo boxes, Tabbed Panes, Scroll Panes,
Trees, and Tables.
JDBC: JDBC Drivers, JDBC API,Executing statements, prepared
statements and callable statements

Books and References:


1. R. Nageswara Rao (2016), ―Core Java: An Integrated Approach‖, Dreamtech Press
2. An Introduction to programming and OO design using Java, J.Nino and F.A. Hosch, John wiley &
sons.
3. Y. Daniel Liang, ―Introduction to Java programming‖, 6th edition, Pearson education.

74
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
3rd Year (6th Java Programming Lab CSL360 0-0-2-1
Semester)
Continuous Assessment End Term
Evaluation Policy 60 Marks 40 Marks

Pre-requisites: CSL202
Course Outcomes: At the end of the course, the student will be able to:

Bloom’s
CO No. Course Outcomes Taxonom
y Level
CO1 Gain hands-on experience in the Java programming language. 4
CO2 Explore Java syntax, data types, control structures, and object-oriented 5
concepts.
CO3 Develop skills in implementing algorithms, data structures, and 6
applications in Java.
CO4 Apply Java programming concepts to develop projects, solve problems, 3
and create reusable software components.

Lab details:
S. No Particulars
1 Basic OOP Concepts: Write a Java program demonstrating the concept of class and
object. Create a class representing a 'Person' with attributes like name and age, and
instantiate objects to display their details.
2 Inheritance and Polymorphism: Implement a Java program illustrating inheritance
and method overriding. Create a base class 'Shape' with methods to calculate area and
perimeter, and derive subclasses like 'Circle' and 'Rectangle' to calculate their specific
areas.
3 Packages and Interfaces: Create a package named 'utilities' and define an interface
'Sortable' with a method 'sort'. Implement this interface in a class 'BubbleSort' to sort an
array of integers. Demonstrate the usage of this package in another class.
4 Exception Handling and Multithreading: Develop a Java program that reads an
integer from the user and handles exceptions such as InputMismatchException and
ArithmeticException. Use multithreading to perform a time-consuming task
concurrently while waiting for user input.
5 Event Handling: Build a Java GUI application to handle mouse events. Implement
functionalities to display coordinates when the mouse is clicked and change the color of

75
a component when the mouse hovers over it.
6 Applets: Create a Java applet that displays a simple animation (e.g., moving shapes).
Implement the applet lifecycle methods such as init(), start(), stop(), and paint() to
manage the animation.
7 Swing Components: Design a Java Swing application for a basic calculator. Utilize
components such as JTextFields, JButtons, and JLabels to perform arithmetic operations
(addition, subtraction, multiplication, division).
8 JDBC: Write a Java program to connect to a MySQL database using JDBC. Execute
SQL statements to create tables, insert data, and perform queries. Demonstrate the usage
of PreparedStatement to prevent SQL injection attacks.
9 Advanced OOP Concepts: Implement a Java program illustrating method overloading
and constructor chaining. Create a class 'MathOperations' with overloaded methods to
perform addition with different parameter types (int, double). Chain constructors to
initialize objects with default values.
10 Advanced Swing Components: Develop a Java Swing application for a simple address
book. Use components like JTable to display contact information (name, phone number,
email) and provide functionalities to add, edit, and delete contacts

76
National Institute of Technology
Srinagar

SEMESTER 7TH

Department of Computer Science and Engineering


77
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
4th Year (7th Semester) Network Security CST414 2-1-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Understand important security goals in the networks 3
Confidentiality, Integrity, Authenticity, Non-repudiation and
Availability and cryptographic techniques to implement these
security goals.
CO2 Provide a necessary review of mathematical concepts to 4
implement different cryptographic techniques to achieve the
network security goals.
CO3 Provide a deeper dive to the field of cryptography- symmetric and 5
asymmetric key cryptography and methods to implement them.
CO4 Explore the security implementations in different network layers- 4
application, transport and network.

Detailed Syllabus:
Module No Contents Hours

Module 1 Introduction: Review of Layered Architecture of the Network - the OSI 10


Reference Model, Computer Security Concepts, The OSI Security
Architecture, Security - Attacks, Services and Mechanisms.

Cryptography Introduction-Classical Encryption Techniques:


Techniques for Implementing Security Goals: An Overview of
Cryptography and Steganography, A brief recap of cryptographic
principles and motivations for secure network, General thoughts on
breaking the cryptosystems.
Module 2 Review & Self Study - Mathematics for Symmetric Key 10
Cryptography: Review of important mathematical concepts: Divisibility,
Modular Arithmetic, Groups and Rings. Classical Encryption Techniques
- Substitution and Transposition

78
Random Number (PRN) Generation and Stream Cipher: Random
Numbers, True Random Number Generators, Pseudo Random Numbers -
principles and generators, Cryptographically Secure Random Number
Generators, One Time Pad, Stream Cipher- RC4.
Block Cipher Operations: Modes of Operations, Electronic Code Book
Mode, Cipher Block Chaining Mode, Output Feedback Mode, Cipher
Feedback Mode, Counter Mode, Enhancing the Security of Block
Ciphers: Multiple Encryption, 3DES and DESX, Meet-in-the Middle
Attack.
Module 3 Block Ciphers - Data Encryption Standard (DES) and Advanced 12
Encryption Standard (AES): Block Cipher Structure, Introduction to
Data Encryption Standard, Triple DES - introduction, structure &
implementation, Fields, Finite Fields - GF (p), GF (2n) and polynomial
arithmetic. Advanced Encryption Standard (AES) - Introduction, structure
& implementation.
Data Integrity: Introduction & Motivation, Hash Functions from Block
Cipher, Message Digest (MD) Hash Family, Secure Hash Algorithm
(SHA-1 and SHA-3), Message Authentication Codes (MAC).
Review & Self Study - Mathematics for Asymmetric Key
Cryptography: Review of important mathematical concepts used in
asymmetric key cryptography – Euclidean and Extended Euclidean
Algorithm, Euler‘s Phi Function, Prime Numbers and Primality Testing,
Euler's and Fermat's Theorem.
Asymmetric Key Cryptography: Introduction & Principles of
Asymmetric Key Cryptography, Different Public Key Algorithms,
Introduction to RSA, RSA in Practice and Attacks, Diffie-Hellman Key
Exchange.
Digital Signatures: Introduction & Motivation, Principles and
Applications, RSA based Digital Signature, RSA Probabilistic Signature
Scheme.
Module 4 Mutual Trust - Key Management and User Authentication: 10
Introduction and challenges in key distribution, Symmetric Key
Distribution and Agreement, Public Key Distribution, Principles of user
authentication, User Authentication Protocol – Kerberos, Public-Key
Infrastructure.

Security at the Application Layer: Application Layer Security -


Objectives, Issues and Need, Email Security, Pretty Good Privacy,
Secure/Multipurpose Internet Mail Extension, Domain Keys Identified
Mail.
Security at the Transport Layer: Web Security-Threats and Challenges,
Securing Web-based transactions at the transport layer, Secure Socket
Layer, Transport Layer Security, HTTPS, Combining HTTP and
SSL/TLS - the secure HTTPS, Remote login, Challenges, One Possible
79
Solution Approach – SSH, Wireless Security – TLS and WAP End-to-
End Security.

Security at the Network Layer: IP Security- Overview and Policy,


Encapsulating Security Payload, Combining Security Associations,
Internet Key Exchange, Cryptographic Suites.
System Security: Malwares – Virus, Worms, etc, Malicious Software
and Anti-malwares, Distributed Denial of Service Attacks, Intruders and
Intrusion Detection, Firewall Need and Characteristics, Types of
Firewalls and Biasing, Firewall Location and Configurations.

Books Recommended:
1. Stallings, W., & Tahiliani, M. P. (2014). Cryptography and network security: principles and
practice, vol. 6. Editor: Pearson London.

References:
1. Paar, C., & Pelzl, J. (2009). Understanding cryptography: a textbook for students and
practitioners. Springer Science & Business Media.
2. Schneier, B. (2007). Applied cryptography: protocols, algorithms, and source code in C. john
wiley & sons.
3. Kurose, J. F. (2005). Computer networking: A top-down approach featuring the internet, 3/E.
Pearson Education India.

80
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
4th Year (7th Semester) Network Security Lab CSL415 0-0-2-1
Continuous Assessment End Term
Evaluation Policy 60 Marks 40 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Understand principles of web security. 4
CO2 Guarantee a secure network by monitoring and analysing the 6
nature of attacks through cyber/computer forensics software/tools.
CO3 Exhibit knowledge to secure corrupted systems, protect personal 3
data, and secure computer networks in an Organization.
CO4 Ability to compare merits and demerits of different Cryptographic 4
techniques and take decisions while securing a network.

Lab Details:

S. No. Particulars
1 Setting Up the System for testing purpose: Learning Basic Commands.
Software Requirements. Security Attacks: ARP Attacks (ARP Cache Poisoning,
2
ARP Man in the Middle Attack).
3 IP Attacks (IP Fragmentation Attack, IP Teardrop Attack).
ICMP Attacks (Ping of Death, Smurf Attack, ICMP Destination Unreachable, ICMP
4
Redirect, ICMP Source Quench).
5 TCP Attacks (SYN Flooding Attack, TCP RST Attack), UDP Attack.
Understand the Tools and Techniques: IEXPRESS 2.0, CAY KARAT, Damm Web
6 Application Vulnerabilities (DWAV), WebGoat, ProRat Trojan, Key Logger,
Steganographer etc.
Nmap Port Scanning: TCP Port Scanning (TCP Connect () Scanning, TCP SYN
7
Scan, TCP FIN Scan, XMAS Scan, TCP NULL Scan).
8 UDP Port Scanning, Performing Stealth Scan of a Selected Computer.

Books Recommended:
6. Stallings, W., & Tahiliani, M. P. (2014). Cryptography and network security: principles and
practice, vol. 6. Editor: Pearson London.

81
References:
1. Paar, C., & Pelzl, J. (2009). Understanding cryptography: a textbook for students and
practitioners. Springer Science & Business Media.
2. Schneier, B. (2007). Applied cryptography: protocols, algorithms, and source code in C. john
wiley & sons.
3. Kurose, J. F. (2005). Computer networking: A top-down approach featuring the internet, 3/E.
Pearson Education India.

82
National Institute of Technology
Srinagar

Electives

Department of Computer Science and Engineering


83
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Simulation and CST001 3-0-0-3
Modelling
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Introduce students to the simulation and modelling techniques. 3
CO2 Understand the fundamental concepts of optimization, gain 4
proficiency in basic probability concepts and explore local
stability theory in the context of dynamical systems.
CO3 Provide students with opportunities to develop basic simulation 6
and modelling skills with respect to carrying out research projects
using any simulation method on the computer.
CO4 Gain insight into real-world problems encountered in engineering 6
and biological sciences domains.

Detailed Syllabus:

Module No Contents Hours

Module 1 Mathematical Model: Types of Mathematical models and properties 10

Procedure of modelling: Graphical method: Barterning model


Module 2 Basic optimization, Basic probability: Monte-Carlo simulation , 10
Approaches to differential equation: Heun method , Local stability theory:
Bernoulli Trials, Classical and continuous models
Module 3 Simulation: General techniques for simulating continuous random 12
variables , simulation from Normal and Gamma distributions , Simulation
from discrete probability distributions, Simulating a non – homogeneous
Poisson Process and queuing system

Module 4 Case Studies: Case studies in problems of engineering and biological 10


sciences

84
Books Recommended:
1. Giordano, F. R., Weir, M. D., & Fox, W. P. (2003). Mathematical modelling. Thomson-
Brookes/Cole.
2. Law, A. M., Kelton, W. D., & Kelton, W. D. (2007). Simulation modelling and analysis (Vol. 3).
New York: McGraw-Hill.

References:
1. Fowler, A. C. (1997). Mathematical models in the applied sciences (Vol. 17). Cambridge
University Press.
2. S.M. Ross, Simulation, India Elsevier Publication.

85
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Graph Theory CST002 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Learn the basic terminology and results concerning graphs. 4
CO2 Learn proof techniques and algorithms involving graphs. 4
CO3 Learn how to apply computer programs to study graphs and open 5
problems in graph theory
CO4 Provide an acquaintance with mathematical notation used to 5
express physical and natural laws.

Detailed Syllabus:

Module No Contents Hours

Module 1 Introduction: Graph Terminology, Incidence and Degree, Isolated 10


vertex, pendant vertex and Null Graph, Isomorphism, Walks, Paths and
Circuits, Connected Graphs, Disconnected graphs and Components, Euler
Graphs, Operations on graphs, Hamiltonian paths and circuits, The
Travelling salesman problem, Konigsberg bridge problem, Three utility
problem.
Module 2 Trees: Properties of Trees, Distance and Centres in a tree, Rooted and 12
Binary Trees, Spanning Trees. Algorithms for finding minimal spanning
tree: Kruskal algorithm, Prim‘s algorithm.

Cut-sets and Cut-Vertices: Cut-sets, All cut-sets in a graph,


Fundamental Circuits and cut-sets, connectivity and separability, Network
Flows, 1-isomorphism, 2-isomorphism.
Module 3 Planar and Dual Graphs: Planar Graphs, Kuratowski‘s two graphs, 10
Kuratowski's Theorem, Detection of planarity, Geometric dual,
Combinatorial dual.
86
Matrix Representation of Graphs: Incidence matrix, Circuit matrix,
Cut-set matrix, path matrix and Adjacency matrix.
Module 4 Coloring, Covering, and Partitioning: Chromatic number, Chromatic 10
partitioning, Chromatic polynomial, Matching, Coverings, The Four
Color problem.

Directed Graphs: Types of digraphs, Euler Digraphs, Trees with directed


edges, Matrix representation of digraphs, Tournaments, Acyclic digraphs
and decyclization.

Graph theoretic Algorithms: Shortest path algorithms, Dijkstra


algorithm, Warshall - Floyd algorithm, Depth-First search in a graph,
Breadth – first search in a graph.

Books Recommended:
1. Narsingh, D. (1974). Graph theory with applications to engineering and computer science.
Prentice-Hall.
2. R.J. Wilson, Introduction to Graph Theory, Fourth Edition, Pearson Education, 2003.

References:
1. West, D. B. (2001). Introduction to graph theory (Vol. 2). Upper Saddle River: Prentice hall.
2. Even, S. (2011). Graph algorithms. Cambridge University Press.

87
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Digital Signal CST003 3-0-0-3
Processing
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Develop methods for processing discrete-time signals. 6
CO2 Understand the processes of A-D and D-A conversion. 4
CO3 Acquire some familiarity with digital filters in terms of design and 4
implementation and to become familiar with how various types of
filters affect signal characteristics.
CO4 Understand the Discrete Fourier Transform and Discrete Spectral 5
Analysis and become familiar with some applications of digital
processing

Detailed Syllabus:
Module No Contents Hours

Module 1 Discrete Time Signals And Systems :Representation of discrete time 10


signal – classifications – Discrete time – system – Basic operations on
sequence – linear – Time invariant – causal – stable – solution to
difference equation – convolution sum – correlation – Discrete time
Fourier series – Discrete time Fourier transform.
Module 2 Fourier And Structure Realization: Discrete Fourier transform 10
properties – Fast Fourier transform – Z-transform – structure realization –
Direct form – lattice structure for FIR filter – Lattice structure for IIR
Filter.
Module 3 Filters: FIR Filter – windowing technique – optimum equiripple linear 10
phase FIR filter – IIR filter – Bilinear transformation technique – impulse
invariance method – Butterworth filter – Tchebycheff filter.
Module 4 Multistage Representation: Sampling of band pass signal – anti aliasing 12
filter – Decimation by an integer factor – interpolation by an integer
factor – sampling rate conversion – implementation of digital filter banks
– sub-band coding – Quadrature mirror filter – A/D conversion –
88
Quantization – coding – D/A conversion – Introduction to wavelets.

Digital Signal Processors: Fundamentals of fixed point DSP architecture


– Fixed point number representation and computation – Fundamentals of
floating point DSP architecture – floating point number representation
and computation – study of TMS 320 C 54XX processor – Basic
programming – addition – subtraction – multiplication – convolution –
correlation – study of TMS 320 F2XXX processor – Basic programming
– convolution – correlation.

Books Recommended:
1. Proakis, J. G. (2007). Digital signal processing: principles, algorithms, and applications, 4/E.
Pearson Education India.
2. Salivahanan, S., Vallavaraj, A., & Gnanapriya, C. (2001). Digital Signal Processing, McGraw-
Hill.
3. Hu, Y. H. (Ed.). (2001). Programmable Digital Signal Processors: Architecture: Programming,
and Applications. CRC Press.

References:
1. Rabiner, L. R., & Gold, B. (1975). Theory and application of digital signal
processing. Englewood Cliffs: Prentice-Hall.
2. Ludeman, L. C. (1986). Digital Signal Processing. Addison-Wesley Longman Publishing Co.,
Inc...

89
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Multimedia CST004 3-0-0-3
Technology
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Understand the architecture and components of multimedia 4
systems and gain knowledge of audio and speech processing
techniques.
CO2 Learn about image acquisition, representation, compression 5
techniques and understand the fundamentals of data
communication and networking related to multimedia application.
CO3 Learn about hypermedia authoring and publishing techniques. 4
CO4 Provide programming training in multimedia computing, 6
multimedia system design and implementations

Detailed Syllabus:

Module No Contents Hours

Module 1 Introduction to Multimedia Systems: Architecture and components, 10


multimedia distributed processing model, synchronization, orchestration
and quality of service architecture.

Audio and Speech: Data acquisition, sampling and quantization, human


speech production mechanism, digital model of speech Production,
analysis and synthesis, psycho-acoustics, low bit rate speech compression,
MPEG audio compression.

Module 2 Images and Video: Image acquisition and representation, composite 12


video signal, NTSC, PAL and SECAM video standards; Bi-level image
compression standards, JPEG and MPEG.

Multimedia Communication: Fundamentals of data communication and


networking, bandwidth requirements of different media; Real time
constraints: Audio latency, video data rate; Multimedia over LAN and
90
WAN, multimedia conferencing.

Module 3 Hypermedia Presentation: Authoring and publishing, linear and 10


nonlinear presentation, structuring information, different approaches of
authoring hypermedia documents, hypermedia data models and standards.
Module 4 Multimedia Information Systems: Operating system support for 10
continuous media applications, limitations of OS, new OS support, media
stream protocol, file system support for continuous media, data models
for multimedia and hypermedia information, content based retrieval of
unstructured data.

Books Recommended:
1. Li, Z. N., Drew, M. S., & Liu, J. (2004). Fundamentals of multimedia (pp. 253-265). Upper
Saddle River (NJ): Pearson Prentice Hall.
2. Hillman, D. (1998). Multimedia technology and applications. (No Title).

References:
1. Steinmetz, R., & Nahrstedt, K. (2012). Multimedia: computing, communications and
applications. Pearson Education India.
2. Koegel Buford, J. F. (Ed.). (1994). Multimedia systems.

91
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Logic Programming CST005 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Develop an understanding of basic knowledge and practical 4
experience in logic programming.
CO2 Learn about the formal concepts used as a theoretical basis for 4
logic programming.
CO3 Interpret problems in a style that suits logic programming. 3
CO4 Understand principles of declarative specification, and its relation 4
to procedural realisations.

Detailed Syllabus:

Module No Contents Hours

Module 1 Proposition Logic: Introduction of logic and functional paradigm, 10


propositional concepts, semantic table, problem solving with semantic
table.

Natural Deduction and Axiomatic Propositional Logic: Rules of


natural deduction, sequent calculus, axiomatic systems, Meta theorems.
Important properties of AL (Axiomatic Logic), resolution, resolving
arguments.
Module 2 Introduction to Predicate Logic: Objects, predicates and quantifiers, 12
functions, first order language, quantifiers, scope and binding,
substitution. An axiomatic system for first order predicate logic,
soundness and completeness, Axiomatic semantics and programming.

Semantic Tableaux & Resolution in Predicate Logic: Semantic


tableaux, instantiation rules, problem-solving in predicate logic, normal

92
forms. Herbrand universes and H-interpretation, resolution, unification,
resolution as a computing tool.

Module 3 Prolog Concepts: Programming in Prolog (overview), Meta level 10


programming and Meta interpreters. Nondeterministic programming,
incomplete data structure, second order programming in Prolog. Logic
grammars: definite clause grammar, A grammar interpreter.
Module 4 Lazy and Eager Evaluation Strategies: Evaluation strategies, Lazy 10
evaluation: evaluation order and strictness of function, programming with
lazy evaluation, interactive functional program, delay of unnecessary
computation, infinite data structure, eager evaluation and reasoning.

Books Recommended:
1. Kelly, J. J. (1997). The essence of logic. Pearson Education India.
2. Kaushik, S. (2007). Logic and prolog programming. New Age International.
3. Hagiya, M., & Wadler, P. (Eds.). (2006). Functional and Logic Programming: 8th International
Symposium, FLOPS 2006, Fuji-Susono, Japan, April 24-26, 2006, Proceedings (Vol. 3945).
Springer.

References:
1. Chang, C. L., & Lee, R. C. T. (2014). Symbolic logic and mechanical theorem proving.
Academic press.

93
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Embedded Systems CST006 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Develop a comprehensive understanding of microcontrollers, 3
embedded processors, and their applications in various industries,
including their role in controlling and monitoring embedded
systems.
CO2 Gain insight into the internal architecture of microcontrollers and 4
learn how to interface them with different peripheral devices such
as sensors, actuators, displays, and communication modules.
CO3 Develop proficiency in writing programs for microcontrollers 5
using programming languages such as C, assembly language, or
embedded-specific languages, and understand the principles of
embedded software development.
CO4 Gain familiarity with the design concepts and methodologies used 4
in embedded system development.

Detailed Syllabus:
Module No Contents Hours

Module 1 Introduction: Concept of Real time Systems, Challenges in Embedded 10


System Design. Introduction to Microcontrollers and Embedded
Processors, Microcontrollers survey, four bit, eight bit, sixteen bit, thirty
two bit Microcontrollers, Comparing Microprocessors and
Microcontrollers, Overview of the 8051 family.
Module 2 The 8051 Architecture: Hardware, Oscillator and clock, program 10
counter, data pointer, registers, stack and stack pointer, special function
registers.

Memory organization: Program memory, data memory, Input / Output


Ports, External memory counter and timer, serial data Input / output,
Interrupts.
94
Module 3 8051 Assembly Language Programming: Structure of Assembly 12
language Assembling and running an 8051 program, Addressing modes,
Accessing memory using various addressing modes.

Instruction set: Arithmetic operations and Programs, Logical operations


and Programs, Jump and Call instructions and Programs, I /O Port
Programs, Single bit instructions and Programs, Timer and counter and
Programs.
Module 4 8051 Serial Communication: Connection to RS-232, Serial 10
Communication Programming, Interrupts Programming.

Microcontroller Interfacing: Key Board, Displays, Pulse Measurement,


D / A and A/D conversion, Stepper Motor

Basic concept of PIC microcontroller: Microcontroller Architecture,


PIC16F.

Books Recommended:
1. Mazidi, M. A., & Mazidi, J. G. (1999). The 8051 Microcontroller and Embedded Systems with
Disk. Prentice Hall PTR.
2. Ayala, K. J. (1995). The 8051 microcontroller. Penram, India.

95
epartment of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Advanced Java & CST007 3-0-0-3
Android Programming
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Develop an understanding of the Java Collections Framework. 4
CO2 Learn the basics of networking and socket programming in Java, 4
including creating client-server applications, handling TCP/IP
communication, and implementing protocols.
CO3 Gain proficiency in database connectivity using JDBC (Java 3
Database Connectivity).
CO4 Gain familiarity with Android development using Java, including 6
setting up the Android development environment, creating user
interfaces, handling events, and deploying apps to Android
devices.

Detailed Syllabus:

Module No Contents Hours

Module 1 Collections: Collection Interfaces, Concrete Collections, Collections 10


Framework Multithreading: Creating thread and running it, Multiple
Thread acting on single object, Synchronization, Thread communication,
Thread group, Thread priorities, Daemon Thread, Life Cycle of Thread.
Module 2 Networking: Internet Addressing, Inet, Factory Methods, Instance 10
Methods, TCP/IP Client Sockets, URL, URL Connection, TCP/IP Server
Sockets, Datagram.
Enterprise Java Bean: Preparing a Class to be a JavaBean, Creating a
JavaBean, JavaBean Properties, Types of beans, Stateful Session bean,
Stateless Session bean, Entity bean.

Module 3 Java Database Connectivity (JDBC): Merging Data from Multiple 10


Tables: Joining, Manipulating Databases with JDBC, Prepared
Statements, Transaction Processing, Stored Procedures C. Servlets:
96
Servlet Overview and Architecture, Interface Servlet and the Servlet Life
Cycle, Handling HTTP get Requests, Handling HTTP post Requests,
Redirecting Requests to Other Resources, Session Tracking, Cookies,
Session Tracking with Http Session.
Module 4 Introduction Smart Phone Application Development: Android 12
Architecture, User Interface Architecture, Activities and Intents, Threads,
Services, Receivers and Alerts, User Interface layouts, user interface
events, UI Widgets, Notification and Toast, Menus, Dialogs, Lists,
Locations and Maps.

Hardware interface-Camera, Sensors, Telephony, Bluetooth, Near Field


communication, Working with Data Storage, Using Google maps,
Animation and Content Providers. Network Communication, Services,
Publishing your App.

Books Recommended:
1. Deitel, P. J., & Deitel, H. M. (2014). Java SE 8 for programmers (Vol. 8). Pearson Education.
2. Griffiths, D., & Griffiths, D. (2021). Head First Android Development. ―O‘Reilly Media, Inc.".

References:
1. Deitel, H. M. (2001). Advanced Java 2 platform How to program.
2. Goncalves, A. (2009). Beginning Java EE 6 Platform with GlassFish 3: from novice to
professional. Apress.
3. Horton, J. (2015). Android programming for beginners. Packt Publishing Ltd.

97
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
System on Chip CST008 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Understand the fundamentals of SoC design, including its 4
architecture, components, and integration of various hardware and
software elements.
CO2 Gain an understanding of embedded systems and their role in SoC 4
design, including microcontrollers, microprocessors, sensors,
actuators, and communication interfaces.
CO3 Learn about hardware/software co-design methodologies for 5
developing SoCs, including hardware/software partitioning,
interface design, and co-simulation.
CO4 Apply the knowledge and skills acquired throughout the course to 6
design, implement, and evaluate an application-specific SoC
project, incorporating design constraints, performance
requirements, and design trade-offs.

Detailed Syllabus:

Module No Contents Hours

Module 1 Introduction: Architecture of the present-day SoC - Design issues of 10


SoC- Hardware-Software Code sign – Core Libraries – EDA Tools.

Design Methodology for Logic Cores: SoC Design Flow – guidelines


for design reuse – Design process for soft and firm cores – Design process
for hard cores – System Integration.

Design Methodology for Memory and Analog Cores: Embedded


memories – design methodology for embedded memories – Specification
of Analog circuits – High speed circuits.
98
Module 2 Design Validation: Core-Level validation – Core Interface verification - 10
SoC design validation.

Core and SoC Design Examples: Microprocessor Cores – Core


Integration and On-chip bus – Examples of SoC.
Module 3 Configurable Processors: A Software View: Processor 12
Hardware/Software Cogeneration, The Process of Instruction Definition
and Application Tuning. The Basics of Instruction Extension d. The
Programmer‘s Model .Processor Performance Factors. Example: Tuning a
Large Task, Memory-System Tuning h. Long Instruction Words.

Configurable Processors: A Hardware View: Application


Acceleration: A Common Problem. Introduction to Pipelines and
Processors. Hardware Blocks to Processors d. Moving from Hardwired
Engines to Processors. Designing the Processor Interface. Novel Roles for
Processors in Hardware Replacement, Processors, Hardware
Implementation, and Verification Flow

Module 4 Advanced Topics in SOC Design: Pipelining for Processor Performance, 10


Inside Processor Pipeline Stalls, Optimizing Processors to Match
Hardware d. Multiple Processor Debug and Trace and Issues in Memory
Systems.

Books Recommended:
1. Rajsuman, R. (2000). System-on-a-chip: Design and Test. Artech.
2. Furber, S. B. (2000). ARM system-on-chip architecture. Pearson Education.
3. Black, D. C., & Donovan, J. (Eds.). (2004). SystemC: From the ground up. Boston, MA:
Springer US.

References:
1. Reis, R., & Jess, J. (2004). Design Of system on a chip devices and components.
2. Wang, L. T., Stroud, C. E., & Touba, N. A. (2007). System-on-chip test architectures: nanometer
design for testability (systems on silicon).
3. Harris, D., & Harris, S. (2010). Digital design and computer architecture. Morgan Kaufmann.
4. Chu, P. P. (2006). RTL hardware design using VHDL: coding for efficiency, portability, and
scalability. John Wiley & Sons.

99
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Advanced Internet CST009 3-0-0-3
Technologies
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Gain a brief overview of the Internet, understand the basics of web 4
server administration and markup languages.
CO2 Learn about the Document Object Model (DOM) for manipulating 5
HTML and XML documents dynamically, including accessing
and modifying document elements using JavaScript.
CO3 Understand the concept of Web Forms in ASP.NET and to learn 6
the process of creating and hosting websites using ASP.NET.
CO4 Understand the architecture and components of the .NET 6
Framework and to gain familiarity with creating Windows
applications using .NET.

Detailed Syllabus:

Module No Contents Hours

Module 1 Introduction to the Internet: Brief overview of Internet, Internet and 10


routing protocols, Web Server administration, Client Sever
implementation, Cyber law, Search Engine Optimization Techniques,
Web Based Systems.

Web 2.0: Search, content networks, user-generated content, blogging,


social networking, social media, tagging, social bookmarking, rich
Internet applications, web services, location based services, Web 2.0
monetization and business models, future of the Web.

Mark up Languages (HTML, XHTML): HTML, dynamic HTML,


XHTML syntax, headings, linking, images, special characters and
horizontal rules, lists, tables, forms, internal linking, Meta elements.

Cascading Style Sheets (CSS): Separation of content and presentation,


100
inline styles, embedded style sheets, conflicting styles, linking external
style sheets, positioning elements, backgrounds, element dimensions, box
model and text flow, media types, building a CSS drop-down menu, user
style sheets.
Module 2 JavaScript: Client side scripting, control statements, functions, arrays, 10
objects, events.

Document object model: Objects and collections, Extensible Mark-up


Language (XML) and RSS: Advantages and applications, structuring
data, XML namespaces, Document Type Definitions (DTDs), XML
vocabularies, RSS. Other advanced internet technologies: including
HTML5, JSON and JQuery.
Module 3 Introduction to .NET: Overview of the .NET Framework - Common 12
Language Runtime – Framework Class Library - Understanding the C#
Compiler.

Basics of C#: Working with Variables - Making Decisions. Classes and


Objects: Methods – Properties - Interface- Partial class- Null and Casting
Handling Exceptions.

Windows and Dialogs: MDI – Dialogs, Lists: List Box - Tree view
control - Menus and Toolbars – Delegates and Events Generics.
Data Access With .Net: ADO.NET overview - Commands - Data Reader
- XML Schemas - Populating a dataset. .Net Programming with SQL
Server: Reading and writing streamed Xml - converting ADO.Net to Xml
data.

Module 4 ASP.NET Web Forms and Controls: Web Forms Controls -Data 10
Binding and Data Source Controls – Validation, Controls-Master and
Content pages. The Asp.Net Application Environment: Configuration
Files - ASP.NET, Application Security -Caching.

Website Creation: Creation and hosting of websites including data


connectivity.

Books Recommended:
1. HM Deitel-Deitel & Associates, Inc. (2007). Internet & World Wide Web: how to program.
Pearson Education India.
2. Stepp, M., Miller, J., & Kirst, V. (2012). Web Programming Step by Step. Step by Step
Publishing.
3. Perry, S. C. (2006). Core C# and. NET.
4. Wright, H. (2006). Beginning Visual C# 2005 Express Edition: From Novice to Professional.
Apress.

101
References:
1. Rodriguez, A., Gatrell, J., Karas, J., & Peschke, R. (2002). TCP/IP Tutorial and Technical
overview. Saddle River, New Jersey: Prentice Hall.
2. Liebeherr, J., & Zarki, M. E. (2003). Mastering Networks: An Internet Lab Manual. Addison-
Wesley Longman Publishing Co., Inc...
3. http://www2.sta.uwi.edu/~anikov/comp6350/links.htm
4. http://www.cs.utsa.edu/~cs4413
5. http://www2.sta.uwi.edu/~anikov/comp3500/lectures.htm

102
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Wireless CST010 3-0-0-3
Communication
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Understand the fundamentals of cellular communication systems, 4
including the evolution from 2G to 5G, and the key technologies
and standards driving each generation.
CO2 Learn essential cellular concepts such as frequency reuse, co- 4
channel and adjacent channel interference, carrier-to-interference
ratio (C/I), handoff mechanisms, blocking probability, and Erlang
capacity.
CO3 Explore the effects of wireless propagation, including multipath 5
fading, shadowing, and the various channel models used to
characterize wireless communication environments.
CO4 Understand advanced wireless technologies and their applications 6
in improving spectral efficiency and data rates in cellular systems.

Detailed Syllabus:
Module No Contents Hours

Module 1 Cellular Systems: Overview of Cellular Systems and evolution 10


2g/3G/4G/5G.

Module 2 Cellular Concepts: Frequency reuse, Co-channel and Adjacent channel 10


Interference, C/I, Handoff, Blocking, Erlang Capacity.

Module 3 Channel Models: Multipath fading, Shadowing, Fading margin, 12


Shadowing margin.

Wireless propagation: Link budget, Free-space path loss, Noise figure of


receiver, Antenna Diversity.
Module 4 Wireless Channel Capacity: Signal-to-noise ratio (SNR), modulation 10

103
schemes.

Wireless technologies: Code Division Multiple Access (CDMA),


Multiple Input Multiple Output (MIMO), and Orthogonal Frequency
Division Multiplexing (OFDM).

Books Recommended:
1. Rong, Z., & Rappaport, T. S. (1996). Wireless communications: Principles and practice,
solutions manual. Prentice Hall.
2. Goldsmith, A. (2005). Wireless communications. Cambridge university press.

References:
1. John, G. (1995). Proakis, Digital Communications, McGraw-Hill. 3rd edition.
2. Haykin, S. S., & Moher, M. (2011). Modern wireless communications. Pearson Education India.
3. Molisch, A. F. (2012). Wireless communications (Vol. 34). John Wiley & Sons.

104
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Fault Tolerant CST011 3-0-0-3
Computing
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Examine the concepts and techniques for redundant designs, 4
which can make a system fault tolerant.
CO2 Discuss the importance of fault tolerance in the design of safety 3
critical systems.
CO3 Examine testing techniques and algorithms in hardware, software 4
and communications
CO4 Explore recent advancements and emerging topics in fault-tolerant 6
systems, and understand their implications for designing resilient
systems.

Detailed Syllabus:

Module No Contents Hours

Module 1 Fundamental Concepts: Definitions of fault tolerance, fault 10


classification, fault tolerant attributes and system structure.

Module 2 Fault-Tolerant Design Techniques: Information redundancy, hardware 10


redundancy, and time redundancy.

Dependability Evaluation Techniques: Reliability and availability


models: (Combinatorial techniques, Fault-Tree models, Markov models),
Performability Models.
Module 3 Architecture of Fault-Tolerant Computers (Case Study): General- 12
purpose systems, high-availability systems, long-life systems, critical
systems.

Software Fault Tolerance: Software faults and their manifestation,


design techniques, reliability models.

105
Fault Tolerant Parallel/Distributed Architectures: Shared bus and shared
memory architectures, fault tolerant networks.
Module 4 Recent topics in fault tolerant systems: Security, fault tolerance in 10
wireless/mobile networks and Internet.

Books Recommended:
1. Koren, I., & Krishna, C. M. (2020). Fault-tolerant systems. Morgan Kaufmann.

References:
1. Johnson, B. W. (Ed.). (1988). Design & analysis of fault tolerant digital systems. Addison-
Wesley Longman Publishing Co., Inc...

106
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Image Processing CST012 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Gain an overview of digital image processing, including its 4
definition, scope, and applications in various fields.
CO2 Learn about different image enhancement techniques, and 4
understand the process of image restoration and reconstruction.
CO3 Explore color image processing techniques, image compression 5
and segmentation and understand their applications in analyzing
and interpreting color images.
CO4 Gain an introduction to pattern recognition. 4

Detailed Syllabus:
Module No Contents Hours

Module 1 Introduction: Digital Image Processing, Steps in Digital Image 10


Processing, Components of image processing System, Image sensing and
acquisition, sampling and quantization, relationships between pixels.
Module 2 Image enhancement techniques: Spatial domain, Frequency domain 12
and using Fuzzy techniques. Intensity Transformation Functions,
Histogram Processing, Fundamentals of Spatial Filtering, Smoothing
Spatial Filters, Sharpening Spatial Filters. Filtering in the Frequency
Domain.

Image Restoration and Reconstruction: A Model of the Image


Degradation/Restoration Process, Noise Models, Restoration in the
Presence of Noise Only-Spatial Filtering, Periodic Noise Reduction by
Frequency Domain Filtering Linear, Position Invariant Degradations,
Inverse Filtering, Wiener Filtering, Constrained Least Squares Filtering,
Geometric Mean Filter.
Module 3 Color Image Processing: Color Models, Color Transformations, Image 10
Segmentation Based on Color. Wavelets and Multi-resolution Processing:
107
Background, Multi-resolution Expansions, Wavelet Transforms in One
Dimension
Image Compression and Segmentation: Fundamentals, Image
Compression Models, Compression Methods, Point, Line, and Edge
Detection, Thresholding, Region-Based Segmentation.
Module 4 Pattern Recognition: Introduction, importance, Features, Feature 10
vectors, and classifiers, Supervised, unsupervised and semi-supervised
Learning, Bayes Decision Theory, Bayesian classification for Normal
Distributions, The Naive - Bayes Classifier, The Nearest Neighbor Rule.

Books Recommended:
1. Gonzalez, R. C. (2009). Digital image processing. Pearson education India.
2. Koutroumbas, K., & Theodoridis, S. (2008). Pattern recognition. Academic Press.

References:
1. Pratt, W. K. (2007). Digital image processing: PIKS Scientific inside (Vol. 4). Hoboken, New
Jersey: Wiley-interscience.
2. Anil K. Jain, ―Fundamentals of Digital Image Processing‖, Prentice-Hall India, 2007.

108
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
System Design using CST013 3-0-0-3
HDL
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Gain proficiency in VHDL for describing combinational networks, 4
modeling flip-flops, multiplexers, and counters, and understand
compilation and simulation processes for VHDL code.
CO2 Understand state machine charts for digital design, including their 4
derivation, realization, and implementation in VHDL, and apply
them to design and implement digital systems like the dice game.
CO3 Explore different types of PLDs such as read-only memories 5
(ROMs), programmable logic arrays (PLAs), and design
methodologies for sequential PLDs, and apply them in designing a
keypad scanner.
CO4 Explore advanced topics in VHDL and develop VHDL models for 5
memories to understand their applications in digital system design.

Detailed Syllabus:
Module No Contents Hours

Module 1 Introduction: VHDL description of combinational networks, Modeling 10


flip-flops using VHDL, VHDL models for a multiplexer, Compilation and
simulation of VHDL code, Modeling a sequential machine, Variables,
Signals and constants, Arrays, VHDL operators, VHDL functions, VHDL
procedures, Packages and libraries, VHDL model for a counter.
Module 2 Digital Design with SM Charts: State machine charts, Derivation of 10
SM charts, Realization of SM charts. Implementation of the dice game,
Alternative realization for SM charts using microprogramming, Linked
state machines.

Designing With Programmable Gate Arrays And Complex


Programmable Logic Devices: Xlinx 3000 series FPGAs, Designing
with FPGAs, Xlinx 4000 series FPGAs, using a one- 2 106 hot state
109
assignment, Altera complex programmable logic devices (CPLDs), Altera
FELX 10K series COLDs.

Module 3 Designing With Programmable Logic Devices: Read-only memories, 12


Programmable logic arrays (PLAs), Programmable array logic (PLAs),
Other sequential programmable logic devices (PLDs), Design of a keypad
scanner.

Design Of Networks For Arithmetic Operations: Design of a serial


adder with accumulator, State graphs for control networks, Design of a
binary multiplier, Multiplication of signed binary numbers, Design of a
binary divider.

Floating - Point Arithmetic: Representation of floating-point numbers,


Floating-point multiplication, and Other floating-point operations.

Module 4 Additional Topics In VHDL: Attributes, Transport and Inertial delays, 10


Operator overloading, Multi-valued logic and signal resolution, IEEE-
1164 standard logic, Generics, Generate statements, Synthesis of VHDL
code, Synthesis examples, Files and Text IO.

VHDL Models For Memories And Buses: Static RAM, A simplified


486 bus

Books Recommended:
1. Roth, C. H. (1998). Digital systems design using VHDL. Wadsworth Publ. Co...
2. Ashenden, P. J. (2008). The student's guide to VHDL. Elsevier.

References:
1. Brown, S. (2005). Fundamentals of digital logic with VHDL design.

110
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Real Time Systems CST014 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Explain the fundamental principles underlying the programming 4
of real-time systems, including the concepts of time and resource
constraints, and the importance of meeting deadlines in real-time
applications.

CO2 Understand the design principles and functionalities of real-time 4


operating systems (RTOS), including task scheduling algorithms,
interrupt handling mechanisms, resource management, and
synchronization mechanisms to ensure timely and deterministic
execution of tasks.
CO3 Demonstrate proficiency in using real-time system programming 5
languages and real-time operating systems for developing real-
time applications.
CO4 Analyze real-time systems with regard to meeting time and 4
resource restrictions, including performance analysis, profiling,
and debugging techniques to identify bottlenecks, latency issues,
and resource contention in real-time applications.

Detailed Syllabus:

Module No Contents Hours

Module 1 Real Time Systems: Concept of Real Time System, Performance 10


measures of Real Time System, Real Time Application. Real time
computing - Concepts; Structure of a real time system – Characterization
of real time systems and tasks - Hard and Soft timing constraints - Issues
in real time computing, Design Challenges - Performance metrics -
Prediction of Execution Time : Source code analysis, Micro-architecture
level analysis, Cache and pipeline issues- Programming Languages for
Real-Time Systems.

111
Module 2 Task Assignment and Scheduling: Different task model, Scheduling 12
hierarchy, Offline versus Online Scheduling, Clock Drives. Model of
Real Time System,

Scheduling: Hierarchy scheduling of Periodic Task - Assumptions, fixed


versus dynamic priority algorithms, schedulability test for fixed priority
task with arbitrary deadlines. Scheduling of A-periodic and Sporadic
Tasks. Scheduling for applications having flexible constrains, Scheduling
Real Time Tasks in Multiprocessor and Distributed Systems.
Module 3 Resources and Resource Access Control: Handling Resource sharing 10
and dependency among real time tasks - Assumptions on resources and
their usage, resource contention, resource access control (Priority Ceiling
Protocol, Priority Inheritance protocol, Slack Based Priority Ceiling
Protocol, Pre-emption Ceiling Protocol).

Module 4 Communication and Databases: Real Time Communication (hard and 10


soft real time communication, traffic scheduling disciplines, QoS
guarantees), Real Time Databases (Optimistic vs Pessimistic concurrency
control protocols).

Books Recommended:
1. C.M. Krishna, Kang G. Shin, Real Time Systems, International Edition, McGraw Hill
Companies.
2. Liu, J. W. (2006). Real-time systems. Pearson Education India.

References:
1. Laplante, P. A. (2004). Real-time systems design and analysis (p. xxi). New York: Wiley.

112
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Unix & Shell CST015 3-0-0-3
Programming
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Understand the basics of file and directory structure in Unix, 4
including file permissions, directory hierarchy, and devices, and
learn common commands for file and directory manipulation.
CO2 Learn about command line structure, meta characters, creating 4
new commands, shell variables, input/output redirection, loops,
conditional expressions, and shell attributes for customizing
command line behaviour.
CO3 Develop proficiency in customizing commands, program 6
arguments and writing shell scripts for automating tasks, including
functions, loops, traps for handling interrupts, file manipulation,
and program development using Unix system calls.
CO4 Learn the basics of program development in Unix, including 5
writing simple programs using built-in functions, and performance
evaluation techniques and explore document preparation
techniques.

Detailed Syllabus:
Module No Contents Hours

Module 1 File and common commands - Shell - More about files Directories- 10
Unix system - Basics of file Directories and filenames - Permissions -
modes - Directory hierarchy - Devices – the grep family - Other filters -
the stream editor sed - the awk pattern scanning and processing language
- files and good filters.
Module 2 Command line structure: Meta characters - Creating new commands - 10
Command arguments and parameters - program output as arguments –
Shell variables - More on I/O redirection - loop in shell programs -
Bundle - Setting shell attributes, Shift command line parameters - Exiting
a command or the shell, evaluating arguments - Executing command
113
without invoking a new process - Trapping exit codes – Conditional
expressions.

Module 3 Customizing the cal command: Functions of command, While and Until 12
loops - Traps - Catching interrupts - Replacing a file Overwrite - Zap -
Pick command – News command - Get and Put tracking file changes.
Standard input and output: Program arguments - file access - A screen
at a time printer - On bugs and debugging - Examples Zap pick -
Interactive file comparison program - Accessing the environment - Unix
system calls – Low level I/O, File system Directories and modes,
Processors, Signal and Interrupts.
Module 4 Program development: Four function calculator - Variables and error 10
recovery – Arbitrary variable names, Built in functions, Compilation into
a machine, Control flow and relational operators, Functions and
procedures - Performance evaluation Ms macro package – Troff level –
Tbl and eqnpreprocessors Manual page - Other document preparation.

Books Recommended:
1. Maurice, J. (1986). The Design of the Unix Operating System. Prentice Hall.
2. Forouzan, B. A., & Gilberg, R. F. (2003). UNIX and Shell programming: a textbook.
3. Das, S. (2005). Your UNIX: The ultimate guide. McGraw-Hill, Inc...

References:
1. Glass, G., & Ables, K. (1999). UNIX for Programmers and Users. Prentice Hall.
2. Kernighan, B. W., & Pike, R. (1984). The UNIX programming environment (Vol. 270).
Englewood Cliffs, NJ: Prentice-Hall.
3. Rosen, K. H., Host, D. A., Klee, R., & Rosinski, R. R. (2006). UNIX: the complete reference.
McGraw-Hill, Inc...

114
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
High Speed Networks CST016 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Develop an understanding of the basics of high speed networking 4
technologies.
CO2 Gain an overview of LAN technologies. 4
CO3 Learn about queuing models and their characteristics, explore 3
congestion control mechanisms and traffic management
techniques in high-speed networks.
CO4 Understand the principles of TCP and ATM congestion control 4
mechanisms.

Detailed Syllabus:
Module No Contents Hours

Module 1 High speed networks: Frame Relay Networks, Asynchronous transfer 10


mode, ATM Protocol Architecture, ATM logical connection, ATM Cell,
ATM Service Categories, AAL.
Module 2 High Speed LANs: Overview of LAN technologies, Evolution of high- 10
speed LANs, Importance and applications of high-speed LANs.

Module 3 Queuing Models: Single Server Queues, Effects of Congestion, 12


Congestion Control, Traffic Management, Congestion Control in Packet
Switching Networks, Frame Relay Congestion Control.
Module 4 TCP and ATM congestion control: Integrated and Differentiated 10
services, Integrated services architecture approach, components, services,
queuing, protocols for QoS support.

Books Recommended:
1. Forouzan, B. A. (2007). Data communications and networking. Huga Media.

115
2. Stallings, W. (1999). ISDN and Broadband ISDN with Frame Relay and ATM. Pearson
Education India.

References:
1. Tanenbaum, A. S. (2003). Computer Networks Forth Edition. Vrije Universiteit.
2. Sheldon, T. (2001). McGraw-Hill's Encyclopedia of Networking and Telecommunications.
McGraw-Hill Professional.

116
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Advanced Algorithms CST017 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Gain a foundational understanding of algorithms as problem- 4
solving techniques and learn the importance of algorithmic
efficiency and correctness in solving computational problems.
CO2 Explore various algorithm design paradigms and how to apply 3
different algorithmic strategies to solve different types of
problems.
CO3 Understand the concept of approximation algorithms and their 4
applications.
CO4 Learn the basics of linear programming, including initial basic 4
feasible solutions, feasibility of systems and explore the concepts
of NP-hard and NP-complete classes in computational complexity
theory.

Detailed Syllabus:

Module No Contents Hours

Module 1 Analysis of Algorithms: Review of algorithmic strategies, asymptotic 10


analysis: upper and lower complexity bounds. Identifying differences
among best, average and worst case behaviours. Big O, little O, omega
and theta notations, Standard complexity classes. Empirical
measurements of performance. Time and space trade-offs in algorithms.
Analysing recursive algorithms using recurrence relations.
Module 2 Fundamental Computing Algorithms: Numerical algorithms, 12
Sequential and binary search algorithms. Quadratic sorting algorithms and
O (n log n) sorting algorithms. Algorithms on graphs and their
complexities using Greedy Approach for – Prim‘s and Kruskal Algorithm
for minimum spanning tree, Single source shortest path Algorithm, all
pair shortest paths in Graph – Bellman Ford Algorithm, Floyd Warshall
117
Algorithm.

Module 3 Approximation Algorithms: Introduction, Approximation Algorithms 10


for – Vertex Cover, Sum of Subsets, TSP, Job scheduling, Knapsack
Problems. Probabilistically good algorithms, Polynomial Time
Approximation.
Module 4 Linear Programming: Introduction, initial basic feasible solution. 10
Feasibility of a system, Simplex Algorithm. Standard and Slack forms,
Formulation of problems as linear programs, Checking Feasibility of
System using B – Rule Algorithm. Optimization. KKT Algorithm.
Expectations: Introduction, Moments, Expectations of functions of more
than one random variable.

Computational complexity: Complexity measures, Polynomial versus


non-polynomial time complexity; NP hard and NP complete classes.

Books Recommended:
1. Trivedi, K. S. (2008). Probability & statistics with reliability, queuing and computer science
applications. John Wiley & Sons.
2. Leiserson, C. E., Rivest, R. L., Cormen, T. H., & Stein, C. (1994). Introduction to
algorithms (Vol. 3). Cambridge, MA, USA: MIT press.

References:
1. Skiena, S. S. (1998). The algorithm design manual (Vol. 2). New York: springer.
2. Knuth, D. E. (2007). Computer programming as an art. In ACM Turing award lectures (p. 1974).
3. Goodrich, M. T., & Tamassia, R. (2001). Algorithm design: foundations, analysis, and internet
examples. John Wiley & Sons.

118
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Reconfigurable CST018 3-0-0-3
Computing
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Gain knowledge of device architecture in reconfigurable 4
computing.
CO2 Learn how to program FPGA applications using Hardware 3
Description Languages (HDLs) and techniques for technology
mapping in reconfigurable computing.
CO3 Explore instance-specific design techniques for reconfigurable 4
computing.
CO4 Study real-world case studies of FPGA applications. 5

Detailed Syllabus:

Module No Contents Hours

Module 1 Reconfigurable Computing Hardware: Device Architecture, 10


Reconfigurable Computing Architectures, Reconfigurable Computing
Systems, Reconfiguration Management.
Module 2 Programming Reconfigurable Systems: Compute Models and System 12
Architectures, Programming FPGA Applications in VHDL, Compiling C
for Spatial Computing, Stream Computations Organized for
Reconfigurable Execution, Programming Data Parallel FPGA
Applications Using the SIMD/Vector Model, Operating System Support
for Reconfigurable Computing.

Mapping Designs to Reconfigurable Platforms: Technology Mapping,


FPGA Placement for General-purpose FPGAs, Data-path Composition,
Specifying Circuit Layout on FPGAs, Retiming, Re-pipelining, and C-
slow Retiming, Configuration Bit-stream Generation, Fast Compilation
Techniques.
119
Module 3 Application Development: Implementing Applications with FPGAs, 10
Instance-specific Design, Precision Analysis for Fixed-point
Computation, Distributed Arithmetic, CORDIC Architectures for FPGA
Computing, Hardware/Software Partitioning.
Module 4 Case Studies of FPGA Applications: SPIHT Image Compression, 10
Automatic Target Recognition Systems on Reconfigurable Devices,
Boolean Satisfiability: Creating Solvers Optimized for Specific Problem
Instances, Multi-FPGA Systems: Logic Emulation, Finite Difference
Time Domain: A Case Study Using FPGAs, Network Packet Processing
in Reconfigurable Hardware.

Books Recommended:
1. Hauck, S., & DeHon, A. (2010). Reconfigurable computing: the theory and practice of FPGA-
based computation. Elsevier.

References:
1. Bobda, C., & Hartenstein, R. (2007). Introduction to reconfigurable computing: architectures,
algorithms, and applications (Vol. 1, No. 1.5). Netherlands: Springer.
2. Nurmi, J. (Ed.). (2007). Processor design: system-on-chip computing for ASICs and FPGAs.
Springer Science & Business Media.

120
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Computer Vision CST019 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Introduce students the fundamentals of image formation. 4
CO2 Introduce students the major ideas, methods, and techniques of 3
computer vision and pattern recognition.
CO3 Develop an appreciation for various issues in the design of 5
computer vision and object recognition system.
CO4 Provide the student with programming experience from 6
implementing computer vision and object recognition applications.

Detailed Syllabus:

Module No Contents Hours

Module 1 Introduction: History about computer vision, introduction to vision, 10


computer graphics, image processing, human and computer vision.

Image Formation Models: Monocular imaging system, Orthographic &


Perspective Projection, Camera model and Camera calibration, Binocular
imaging systems.

Recognition Methodology: Conditioning, Labeling, Grouping,


Extracting and Matching.

Module 2 Morphological Image Processing: Introduction, Dilation, Erosion, 10


Opening, Closing, Hit-or-Miss transformation, Morphological algorithm
operations on binary images, Morphological algorithm Operations on
gray-scale images, Thinning, Thickening, Region growing, region
shrinking.

Image Representation and Description: Representation schemes,


Boundary descriptors, Region descriptors.
121
Binary Machine Vision: Thresholding, Segmentation, Connected
component labeling, Hierarchal segmentation, spatial clustering, Split &
merge, Rule-based Segmentation, Motion based segmentation.
Module 3 Area Extraction: Concepts, Data-structures, Edge, Line Linking, Hough 10
transform, Line fitting, Curve fitting (Least square fitting).

Region Analysis: Region properties, External points, spatial moments,


mixed spatial gray-level moments, Boundary analysis: Signature
properties, Shape numbers.

Facet Model Recognition: Labeling lines, Understanding line drawings,


Classification of shapes by labeling of edges, Recognition of shapes,
Consisting labeling problem, Backtracking Algorithm Perspective
Projective geometry, Inverse perspective Projection, Photogrammetry -
from 2D to 3D.
Module 4 Image matching: Intensity matching of ID signals, Matching of 2D 12
image, Hierarchical image matching, 2D representation, Global vs. Local
features.

General Frame Works for Matching: Distance relational approach,


ordered structural matching, View class matching, Models database
organization.

Knowledge Based Vision: Knowledge representation, Control strategies,


Information Integration.

Object recognition: Hough transforms and other simple object


recognition methods, Shape correspondence and shape matching Principal
component analysis, Shape priors for recognition.

Books Recommended:
1. Haralick, R. M., & Shapiro, L. G. (1992). Computer and robot vision (Vol. 1). Reading, MA:
Addison-wesley.
2. Forsyth, D. A., & Ponce, J. (2002). Computer vision: a modern approach. Prentice hall
professional technical reference.
3. Trucco, E., & Verri, A. (1998). Introductory techniques for 3-D computer vision (Vol. 201, pp.
10-5555). Englewood Cliffs: Prentice Hall.

References:
1. Sonka, M., Hlavac, V., & Boyle, R. (2013). Image processing, analysis and machine vision.
Springer.
2. Horn, B. (1986). Robot vision. MIT press.

122
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Advanced Computer CST020 3-0-0-3
Network
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Review fundamental concepts of computer networks and the 4
principles of layered communication and how different layers
interact in network communication.
CO2 Explore Transport and Application layer protocols. 4
CO3 Learn about wireless links and wireless network architectures. 3
CO4 Understand protocols for real-time interactive applications and 5
gain an understanding of basic cryptographic concepts including
symmetric and public-key algorithms.

Detailed Syllabus:

Module No Contents Hours

Module 1 Introduction to Computer Networks: Review – Computer networks 10


and layered architecture. Asynchronous Transfer Mode: ATM layered
model, switching and switching fabrics, network layer in ATM, QOS, and
LAN emulation.
Module 2 Transport Layer: Elements of transport protocols; Internet transport 10
protocols: TCP and UDP, TCP connection management, congestion
control.
Application Layer: Network application architectures: Client-server,
P2P and hybrid; Application layer protocols: DNS, FTP, TFTP, TELNET,
HTTP and WWW, SMTP and electronic mail; Network management and
SNMP.
Module 3 Wireless and Mobile: Wireless and Mobile Networks: Wireless links and 10
network characteristics, 802.11 wireless LANs, mobility management,
addressing and routing, mobile IP, WAP, mobility in cellular networks.
Module 4 Multimedia Networking: Streaming audio and video, RTSP, jitter 12
removal and recovery from lost packets; Protocols for real-time
interactive applications: RTP, RTCP, SIP, H.323; Content distribution
123
networks; Integrated and differentiated services, RSVP.

Introduction to Network Security: Cryptography, symmetric and


public-key algorithms, digital signatures, communication security,
authentication protocols, Email security, PGP and PEM.

Books Recommended:
1. Kurose, J. F., & Ross, K. W. Computer Networking.

References:
1. Comer, D. (2004). Computer networks and internets: with internet applications (Vol. 1). Pearson
Education India.
2. Walrand, J., & Varaiya, P. P. (2000). High-performance communication networks. Morgan
Kaufmann.

124
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Advanced Computer CST021 3-0-0-3
Graphics
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Understand the basics of geometry processing. 4
CO2 Understand and work with advanced rendering methods. 4
CO3 Design programs for advanced animation methods. 6
CO4 Understand issues of modern graphics research. 4

Detailed Syllabus:
Module No Contents Hours

Module 1 Advanced Rendering Techniques: Photorealistic rendering, Global 10


Illumination, Participating media rendering, Ray tracing, Monte Carlo
algorithm, Photon mapping.
Module 2 Texture Synthesis and Image Processing: Environmental mapping, 10
Texture synthesis, anisotropic image smoothing.

Module 3 Volume Rendering: Volume graphics overview, Marching cubes, Direct 10


volume rendering.
Module 4 Surfaces and Meshes: Subdivision, Distance fields and level sets. 12

Physically-based Modeling: Stable fluid solver, Lattice Boltzmann


method.

Books Recommended:
1. Foley, J. D., & Van Dam, A. (1996). Steven K. Feiner, and John F. Hughes. Computer Graphics:
Principles and Practice, Addison-Wesley Publishing Company, Reading, Massachesetts.
2. Alan, W., & Mark, W. (1992). Advanced animation and rendering techniques. Theory and
Practice Wokingham, 339-368.

125
References:
1. Humphreys, G., & Pharr, M. (2004). Physically Based Rendering. Morgan Kaufmann.
2. Moller, T., Haines, E., Hoffman, N., Pesce, A., Iwanicki, M., & Hillaire, S. (2002). Real-Time
Rendering, AK Peters.

126
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Advanced Database CST022 3-0-0-3
Management Systems
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Gain a solid understanding of the fundamental concepts 4
underlying physical database systems.
CO2 Learn about concepts of transaction processing in database 4
systems.
CO3 Gain an understanding of semi-structured data and explore XML- 4
related technologies.
CO4 Understand the motivation behind exploring emerging trends in 3
database technologies and learn techniques for optimizing the
performance of database applications.

Detailed Syllabus:

Module No Contents Hours

Module 1 Physical Database Design & Tuning: Database workloads, physical 10


design and tuning decisions, Need for Tuning Index selection: Guideline
for index selection, Clustering & Indexing Tools for index selection
Database Tuning: Tuning indexes, Tuning Conceptual schema Tuning
Queries &views, Impact of Concurrency, Benchmarking.
Module 2 Advanced Transaction Processing: Transaction Processing Monitors, 10
Transactional Workflow, Real time transaction System, Long duration
Transactions, Transaction Management in Multi-databases, Distributed
Transaction Management, Main Memory Databases, and Advanced
Transaction Models.
Module 3 Semi-Structured Data and XML: Semi-Structured Data, Introduction to 10
XML, XML hierarchical Model, DTD & XML schema, XML
Namespace, XML query & Transformation: Xpath, XSLT, XQuery,
Storage of XML data, XML Technologies: DOM &SAX Interfaces X
pointer, Xlink, XHTML, SOAP, WSDL, UDDI, XML database
Application.
127
Module 4 Emerging Trends in Databases: Introduction, Motivation, Temporal 12
databases, Spatial & geographic databases, Multimedia Databases,
Mobility & personal Databases.

Advanced Application Development: Performance Tuning,


Performance Benchmarks, Standardization, E-Commerce, Legacy
Systems, Large-scale Data Management with HADOOP, Semi structured
database COUCHDB: Introduction, Architecture and principles, features.

Books Recommended:
1. Silberschatz, A. (1999). Henry F. Korth. Sudarsham, 《 Database System Concept》, McGraw--
Hill.
2. Ceri, S., & Pelagatti, G. (1984). Distributed databases principles and systems. McGraw-Hill,
Inc...
3. Connolly, T. M., & Begg, C. E. (2005). Database systems: a practical approach to design,
implementation, and management. Pearson Education.

References:
1. Abiteboul, S., Manolescu, I., Rigaux, P., Rousset, M. C., & Senellart, P. (2011). Web data
management. Cambridge University Press.
2. Ramakrishnan, R., Derstadt, J. G. J., Selikoff, S., & Zhu, L. (2006). Database Management
Systems Solutions Manual. University of Winconsin, USA.

128
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Advanced Computer CST023 3-0-0-3
Architecture
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Learn basic understanding of Modern Computer Architecture. 4
CO2 Gain a solid understanding of the Multi-Threading and Multi-Core 4
programming concepts.
CO3 Identify cache and memory related issues in multi-processors. 4
CO4 Learn about the various techniques used to obtain performance 3
improvement and power savings in current processors

Detailed Syllabus:

Module No Contents Hours

Module 1 Modern Computer Architectures: Introduction, Fundamentals of RISC, 10


CISC, Instruction Level Parallelism (ILP) – Concepts and Challenges,
Branching with Prediction, Dynamic Scheduling: Hazards and Solutions,
Measuring Performance of ILP, Limitations of ILP.
Module 2 Thread Level Parallelism & Multi-Core Architecture: Thread Level 10
Parallelism, Simultaneous Multi-Threading, Multi-Processor
Architecture: Types, Limitations; Evolution of Multi-Core, Architecting
with Multi-Core: Homogenous and heterogeneous cores, Shared
recourses, shared busses, and optimal resource sharing strategies,
Performance Evaluation of Multi-Core Processors.
Module 3 Memory Module Design: Conceptual view of memory cell, Memory 10
address map, Memory connections to CPU, Cache memory-Cache
memory management techniques. Types of cache‘s: Look through, look
aside, write through, write around, unified Vs. Split, multilevel, cache
levels. Shared memory multiprocessors, Synchronization, small-scale
symmetric multiprocessors on a snoopy bus, cache coherence on snoopy
buses, Scalable multiprocessors, Directory based cache coherence,
Interconnection network, Memory consistency models, Software

129
distributed shared memory.

Module 4 Multi-Threading Concepts: Fundamentals of Multi-threaded 12


programming, Concurrency vs. Parallelism, Threading design concepts
for developing an application, Correctness Concepts: Critical Region,
Mutual exclusion, Synchronization, Race Conditions. Performance
Concepts: Simple Speedup, Computing Speedup, Efficiency, Granularity,
Load Balance. Multithreading in hardware, Chip multiprocessing, current
research and future trends.

Multi-Core Programming: Introduction to OpenMP, OpenMP


directives, Parallel constructs, Work-sharing constructs, Data
environment constructs, Synchronization constructs, Extensive API
library for finer control, benchmarking multi-core architecture: Bench
marking of processors. Comparison of processor performance for specific
application domains.

Books Recommended:
1. Hennessy, J. L., & Patterson, D. A. (1990). Computer architecture.
2. Akhter, S., & Roberts, J. (2006). Multi-core programming (Vol. 33). Hillsboro, Oregon: Intel
press.

References:
1. Heuring, V. P., Jordan, H. F., & Murdocca, M. (1997). Computer systems design and
architecture (pp. 519-520). Addison-Wesley.
2. Chapman, B., Jost, G., & Van Der Pas, R. (2007). Using OpenMP: portable shared memory
parallel programming. MIT press.
3. H. J. Siegel. Interconnection Network for Large Scale Parallel Processing, McGraw Hill, 1990.

130
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Advanced Compilation CST024 3-0-0-3
Techniques
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Understand the structure and architecture of compilers, including 4
their components and phases.
CO2 Learn about basic blocks and loops in control and data flow 4
analysis techniques and explore scalar optimization techniques.
CO3 Analyse instruction scheduling techniques for pipelined 4
architecture, delayed-load architectures and understand
performance evaluation techniques for compilers.
CO4 Explore loop transformations and learn about automatic memory 5
management techniques such as garbage collection and their
impact on data locality.

Detailed Syllabus:

Module No Contents Hours

Module 1 Introduction: Compiler structure, architecture and compilation, sources 10


of improvement.

Module 2 Control flow analysis: Basic blocks & loops. Data flow analysis and 10
optimizations: bit vectors, iterative frameworks, interval analysis,
reaching definitions, liveness, common sub expression elimination,
constant propagation. Control flow analysis: dominators, control
dependence.

Static-single assignment: Static-single assignment, constant propagation.


Scalar optimization: loop invariant code motion, common sub
expression elimination, strength reduction, dead code elimination, loop
optimizations, etc.

131
Module 3 Instruction scheduling: Pipelined architectures, delayed-load 12
architectures, list scheduling.

Register allocation: coloring, allocation, live range splitting.

Performance evaluation: Interprocedural analysis: side effects, flow-


insensitive, flow-sensitive, constants, inlining.

Alias analysis: alias analysis, method resolution. Searching, indexing,


and their implications to memory management. Information extraction
and feature selection. Points-to Analysis Supervised, unsupervised-
learning, and stream mining.
Module 4 Data dependence analysis: Dependence testing, dependence graphs. 10

Loop transformations: Interchange, tiling, fusion, distribution, splitting


Just-in-time compilation: fast global optimization.

Garbage collection: Automatic memory management and data locality.


Optimal Integrated Code Generation with OPTIMIST.

Books Recommended:
1. Alfred, V., Monica, S., Ravi, S., & Jeffrey D, U. (2007). Compilers Principles, Techniques.
2. Masthan, G. B. (1993). Mapping and Compilation-Methods and Techniques. Geological Society
of India, 42(4), 423-423.

References:
1. http://www.ece.cmu.edu/~ece447/s13/lib/exe/fetch.php?...advancedcaching...ppt
2. Bacon, D. F., Graham, S. L., & Sharp, O. J. (1994). Compiler transformations for high-
performance computing. ACM Computing Surveys (CSUR), 26(4), 345-420.
3. Padua, D. A., & Wolfe, M. J. (1986). Advanced compiler optimizations for
supercomputers. Communications of the ACM, 29(12), 1184-1201.

132
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Principles of Cryptography CST025 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Provide a basic introduction to central aspects of symmetric and 4
asymmetric cryptography.
CO2 Gain proficiency in fundamental mathematical concepts relevant 3
to cryptography.
CO3 Explore classical cryptosystems and their vulnerabilities and learn 5
about stream ciphers, block ciphers, cryptographic hash functions
and message authentication codes (MACs) for data integrity and
authentication.
CO4 Analyse the public key cryptography and its relevance in modern 4
cryptographic algorithms.

Detailed Syllabus:
Module No Contents Hours

Module 1 Introduction to Cryptography: Basics of Symmetric Key 10


Cryptography, Basics of Asymmetric Key Cryptography, Hardness of
Functions.
Module 2 Mathematical Background for Cryptography: Number Theory, GCD, 10
Groups, Rings, Fields, Properties, Chinese Remainder Theorem.

Module 3 Classical Cryptography: Introduction to Some simple cryptosystems 10


and their Cryptanalysis. Shannon's Theory, Secret vs. Public Key
Cryptography.

Stream ciphers and Block Ciphers: DES and Alternatives, AES,


Cryptographic Hash Functions and MAC.
Module 4 Public Key Cryptography: RSA Cryptosystem and Factoring Integers. 12

Discrete Logarithm Problems: Discrete Logarithm Problem in Prime


133
Fields, Generalized Discrete Logarithm Problem. Attacks against Discrete
Logarithm Problem. Public Key Cryptosystems based on the Discrete
Logarithm Problem.
Elliptic Curve Cryptography: Elliptic Curve Cryptosystems. Digital
Signatures.

Books Recommended:
1. Delfs, H., Knebl, H., & Knebl, H. (2002). Introduction to cryptography (Vol. 2). Heidelberg:
Springer.
2. Mao, W. (2003). Modern cryptography: theory and practice. Pearson Education India.

References:
1. Boneh, D., & Shoup, V. (2020). A graduate course in applied cryptography. Draft 0.5.
2. Katz, J., & Lindell, Y. (2007). Introduction to modern cryptography: principles and protocols.
Chapman and hall/CRC.
3. Katz, J., & Lindell, Y. (2007). Introduction to modern cryptography: principles and protocols.
Chapman and hall/CRC.
4. Goldrech, O. (2001). Foundations of Cryptography Teaching Notes.

134
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Neural Networks CST026 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Introduce major deep learning algorithms, the problem settings, 4
and their applications to solve real world problems.
CO2 Understand the role of neural networks in engineering, artificial 4
intelligence, and cognitive modelling.
CO3 Provide knowledge in developing the different algorithms for 3
neural networks
CO4 Design and implement Neuro evolution algorithms to evolve 6
neural networks for solving complex tasks and optimizing
performance in various domains.

Detailed Syllabus:
Module No Contents Hours

Module 1 Introduction to neural networks: Biological and Artificial neurons, 10


McCulloch Pitts Neuron, Thresholding Logic, Perceptron‘s, Perceptron
Learning Algorithm and Convergence, Multilayer Perceptron‘s (MLPs),
Representation Power of MLPs, Network Architectures.
Module 2 Multilayer networks: Sigmoid Neurons, Gradient Descent(GD) , Feed 10
forward Neural Networks, Representation Power of Feed forward Neural
Networks, Back propagation (BP) , Momentum Based GD, Nesterov
Accelerated GD, Stochastic GD, Recurrent networks and unsupervised
learning, Hopfield network - energy; stability; capacity, Boltzmann
machine, Kohonen‟sself organizing feature maps.

Module 3 Associative memory: Auto associative memories, Hetero associative 12


memories, performance measures, associative memory models,
Applications of associative memories.

Convolutional Neural Networks: Visualizing Convolutional Neural


135
Networks, Guided Back propagation, Fooling Convolutional Neural
Networks.
Module 4 Neuro Evolution: Introduction to Neuro evolution, Weight evolution, 10
Topology evolution, Learning rule evolution, Deep Neuro Evolution.
Neuro evolution uses and introduction to evolutionary algorithms to build
Neural networks

Books Recommended:
1. Fu, L. (1994). Neural networks in computer intelligence. McGraw-Hill, Inc.

References:
1. Freeman, J. A., & Skapura, D. M. (1991). Neural networks: algorithms, applications, and
programming techniques. Addison Wesley Longman Publishing Co., Inc.
2. Du, K. L., & Swamy, M. N. (2013). Neural networks and statistical learning. Springer Science
& Business Media.

136
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Pervasive Computing CST027 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Understand pervasive computing concepts, including ubiquitous 2
computing and context-awareness.
CO2 Explore pervasive technologies and architectures, such as sensor 4
networks and IoT devices.
CO3 Develop practical skills in designing and implementing context- 5
aware applications for pervasive environments.
CO4 Evaluate the performance, usability, and security of pervasive 5
systems, considering societal impact and ethical considerations.

Detailed Syllabus:

Module No Contents Hours

Module 1 Introduction to Pervasive Computing: 10


Past, present, future; the pervasive computing market, m- Business,
Challenges and future of Pervasive Computing, Application Examples of
Pervasive Computing: Retail, Airline Check-in and booking, Sales force
automation, Healthcare, Tracking, Car Information Systems, Email
Access via WAP and voice
Module 2 DeviceTechnology for PervasiveComputing : 12
Hardware, Human-machine interfaces, Biometrics, Operating Systems,
Java for pervasivedevices, Outlook
Device Connectivity: Protocols, Security, Device Management
Developing WML Applications:
Developing WML Applications: WML documents, developing a WML
application, WML tags, registration WML listing and WML script.
Module 3 MIDP Programming: 12
MIDP Programming: J2ME MIDP user interface, MIDP application,
developing a MIDP application, MIDP Classes: MIDlet class, MIDP GUI
classes, MIDlet high-level events, low- level APIs and event handling.
137
Advanced MIDP Programming :
Network programming, MIDP database programming, MIDlet
provisioning, Bluetooth application.

Module 4 Developing VoiceXML Applications Developing VoiceXML 8


Applications: VoiceXML applications, VoiceXML TAGS,
ECMAScript – Java Card Application: Java card VM, APDUs, java card
API, host applications.

Books and References:


1. Guruduth S. Banavar, Norman H. Cohen, ChandraNarayanaswami (2012), ―Pervasive Computing:
An Application-Based Approach‖, Wiley Interscience.
2. Jochen Burkhardt, Dr. Horst Henn, Stefan Hepper (2005), ―Pervasive Computing Technology and
Architecture of Mobile Internet Applications‖, Pearson Education.
3. Stefen Poslad (2010), ―Ubiquitous Computing: Smart Devices, Environments and Interactions‖,
Wiley Student Edition.

138
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Distributed and Parallel CST028 3-0-0-3
Computing
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: None

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Understand fundamental concepts of distributed and parallel 2
computing.
CO2 Explore distributed computing architectures, algorithms, and 3
protocols.
CO3 Develop practical skills in designing and implementing parallel 4
algorithms and systems.
CO4 Evaluate the performance, scalability, and fault tolerance of 5
distributed and parallel computing systems.

Detailed Syllabus:
Module No Contents Hours

Module 1 An overview of parallel computing, Languages and programming 12


environments, Message passing computing, Partitioning and divide-and-
conquer strategies, Pipelined computations, Synchronous computations,
Load balancing and termination detection, Programming with shared
memory.
Algorithms and applications Components of distributed systems,
Communication technologies, communication services.
Module 2 Distributed algorithms and protocols: examples of distributed algorithms, 12
clock synchronization, logical and vector clocks, election algorithms,
consensus algorithms, proof of correctness, complexity analysis.
Distributed operating systems: system models, file services, name
services, process synchronization and coordination, case studies.
Module 3 Distributed shared memory: algorithms for implementing DSM, 10
Coherence protocols.
Distributed resource management: load sharing, load balancing, resource
monitoring

139
Module 4 Failure recovery and fault tolerance: check-pointing, recovery, Fault- 8
tolerant models and protocols.
Research issues in distributed systems, real-time protocols,
Standardization issues, cluster and grid computing.

Books and References:


1. George Coulouris, Jean Dellimore and Tim KIndberg (2017), ―Distributed Systems: Concepts
and Design‖, Pearson Education.
2. Tanenbaum, Maarten van Steen ( 2017), "Distributed Systems: Principles and Paradigms",
Pearson
3. Vijay K. Garg (2016), ―Elements of Distributed Computing‖,Wiley

140
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Cloud Computing CST029 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Understand the fundamentals of Cloud computing, services and 2
deployment models.
CO2 Learn the concept of Cloud infrastructure model and techniques to 3
access the Cloud.
CO3 Understand the concept of Cloud Security and Cloud storage 3
standards
CO4 Understand the key technical and organizational challenges for 4
developing Cloud applications

Detailed Syllabus:

Module No Contents Hours

Module 1 Cloud Computing Basics: 12


Cloud Computing Overview; Characteristics; Applications; Internet and
Cloud; Benefits; Limitations; Challenges.
Cloud Computing Services and Deployment Models: Infrastructure as
a Service; Platform as a Service; Software as a Service; Private Cloud;
Public Cloud; Community Cloud; Hybrid
Cloud
Module 2 Cloud Computing vs Other Computing Technologies: Overview of 10
Grid, Peer-to-Peer, Pervasive and Utility Computing technologies; their
characteristics and comparison between them
Accessing the Cloud:
Hardware and Infrastructure requirements; Access Mechanisms: Web
Applications, Web APIs, Web Browsers.
Virtualisation, Difference between Virtual Machines and Cloud PCs

141
Module 3 Cloud Storage and Cloud Standards: 10
Overview; Storage as a Service; Cloud Storage Issues; Challenges;
Standards

Security Issues:
Securing the Cloud, Securing Data, Establishing identity and presence.
Identity Access Management (IAM Roles and IAM Policies), Security
Groups, NACLs (with respect to AWS), IGW vs VPN gateway
Module 4 Developing Applications: 10
Major Players in Cloud Business; Overview of Service Oriented
Architecture; Tools for developing cloud services and applications.

Deploying Applications:
What is Infrastructure as a Code, AWS Cloudformation, Analysis of a
simple Cloudformation Template, Serverless Application Model (SAM)

Practice Cloud IT Model:


Analysis of Case Studies when deciding to adopt cloud computing
architecture. How to decide if the cloud is right for your requirements.
Cloud based service, applications and development platform deployment
so as to improve the total cost of ownership (TCO).

Books and References:


1. Erl, Thomas; Puttini, Ricardo; Mahmood, Zaigham (2013), "Cloud Computing: Concepts,
Technology & Architecture", Prentice Hall
2. Buyya, Rajkumar; Broberg, James; Goscinski, Andrzej M. (2011), "Cloud Computing: Principles
and Paradigms", Wiley
3. Miller, Michael (2018), "Cloud Computing: Web-Based Applications That Change the Way You
Work and Collaborate Online", Que Publishing
4. Reese, George (2013), "Cloud Application Architectures: Building Applications and
Infrastructure in the Cloud", O'Reilly Media
5. Bahga, Arshdeep; Madisetti, Vijay (2014), "Cloud Computing: A Hands-On Approach", Morgan
Kaufmann

142
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Software Project CST030 3-0-0-3
Management
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: None

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Understand principles and practices of software project 2
management.
CO2 Explore methodologies, frameworks, and tools used in software 4
project management.
CO3 Develop skills in project planning, scheduling, and resource 4
allocation.
CO4 Apply project management techniques to successfully initiate, 3
plan, execute, monitor, and close software projects.

Detailed Syllabus:

Module No Contents Hours

Module 1 Project Management: The management spectrum, the people, the 12


product, the process, the project, the W5HH principle, critical practices.
Metrics for Process and Project: Metrics in the process and project
Domains, software measurements, metrics for software quality,
integrating metrics within software process, metrics for small
organizations, establishing a software metrics program.
Module 2 Estimation: Observations, Project planning Process, software scope and 10
feasibility, resources, software project estimation, decomposition
techniques, empirical estimation models, estimation for object oriented
projects, estimation for Agile development and web engineering projects,
the make/buy decision.
Project Scheduling: Basic concepts, project scheduling, defining a task
set and task network, scheduling, earned value analysis.
Risk Management: Reactive V/S proactive Risk Strategies, software
risks, Risk identification, Risk projection, risk refinement, risk mitigation,
monitoring and management, the RMMM plan.

143
Module 3 Quality Planning: Quality Concepts, Procedural Approach to Quality 10
Management, Quantitative Approaches to Quality Management,
Quantitative Quality Management Planning, Setting the Quality Goal,
Estimating Defects for Other Stages, Quality Process Planning, Defect
Prevention Planning.
Quality Management: Quality Concepts, Software Quality assurances,
software reviews, formal technical reviews, Formal approaches to SQA,
Statistical Software Quality assurances.
Module 4 Change Management: Software Configuration Management, The SCM 10
repository, SCM Process, Configuration Management for Web
Engineering.
Project Execution And Closure: Reviews. The Review Process,
Planning, Overview and Preparation, Group Review Meeting, Rework
and Follow-up, One-Person Review, Guidelines for Reviews in Projects,
Data Collection, Analysis and Control Guidelines, Introduction of
Reviews and the NAH Syndrome.
Project Monitoring and Control: Project Tracking, Activities Tracking,
Defect Tracking, Issues Tracking, Status Reports, Milestone Analysis,
Actual Versus Estimated Analysis of Effort and Schedule, Monitoring
Quality, Risk-Related Monitoring.
Project Closure: Project Closure Analysis.

Books and References:


1. Schwalbe, Kathy (2021), "Information Technology Project Management", Cengage Learning
2. Hughes, Bob; Cotterell, Mike (2012), "Software Project Management", McGraw-Hill Education
3. Kugler, Hans-Jürgen (2014), "Software Project Management: A Process-Driven Approach",
Springer
4. Henry, Joel (2018), "Software Project Management For Dummies", For Dummies
5. Stellman, Andrew; Greene, Jennifer (2014), "Head First PMP: A Learner's Companion to
Passing the Project Management Professional Exam", O'Reilly Media

144
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Big Data CST031 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Examine data for applying a suitable data analytic approach using 4
Hadoop
CO2 Demystify large-scale unstructured data and processing using 4
Hadoop MapReduce.
CO3 Assess and utilize the big data storage and analytic patterns and 4
use NoSQL databases.
CO4 Realize the emerging technologies aligned with big data analytics 5
and work with Pig, Hive

Detailed Syllabus:

Module No Contents Hours

Module 1 Data Analytics types – Example applications, Big Data - Characteristics, 10


Limitations. Introduction to Hadoop – Key characteristics, RDBMS vs.
Hadoop, Hadoop Components, Hadoop Ecosystem, Cluster modes, Data
loading techniques and tools, Cluster architecture, Resource Management,
Use cases.
Module 2 Hadoop Distributed File System (HDFS) – Architecture, YARN, 12
Daemons, Anatomy of File Read and Write, Replica placement strategy,
Working with HDFS commands, Processing data with Hadoop. Map
Reduce Programming – Mapper, Reducer, Combiner, Partitioner. YARN
MR Application Execution Flow
Module 3 Ingestion and Streaming Pattern, Storage Patterns, Access Patterns, 10
Discovery and Analysis Patterns, Visualization Patterns, Deployment
Patterns. NoSQL – Types of NoSQL databases, Use cases, SQL vs.
NoSQL, Hadoop vs. SQL. Case study: Providing Structure to
Unstructured Data, Identification, De- identification and Re-
identification, Immutability and Immortality Application Architecture.

145
Module 4 Big Data Non-Functional Requirements (NFRs), Data Privacy and Ethics, 10
The privacy landscape, Preferences, Personalization and Relationships,
Rights and Responsibility. Need of distributed computing for Big Data,
Virtualization, Cloud and Big Data, Traditional Business Intelligence (BI)
vs. Big Data, Introduction to tools used for big data – Pig and Hive.

Reference Books:

1. White, Tom (2015), "Hadoop: The Definitive Guide", O'Reilly Media


2. Seema Acharya, Subhashini Chellappan (2019). Big Data and Analytics, 2nd Edition, Wiley
India.
3. Marz, Nathan; Warren, James (2015), "Big Data: Principles and best practices of scalable real-
time data systems", Manning Publications.
4. Nitin Sawant and Himanshu Shah (2014). Big Data Application Architecture Q&A - A Problem
Solution Approach, Apress.

146
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Cyber Laws & CST032 3-0-0-3
Forensics
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: None

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Understand the legal frameworks and regulations governing 2
cybersecurity and digital forensics.
CO2 Explore cybercrime types, threats, and attack vectors. 4
CO3 Develop skills in digital evidence collection, preservation, and 4
analysis.
CO4 Apply forensic techniques and tools to investigate cyber incidents 3
and support legal proceedings.

Detailed Syllabus:

Module No Contents Hours

Module 1 Introduction to Forensics and Cyber Crime: Fundamentals of 12


computer, Internet Technology, E-Governance & E-Business, crime,
criminology, origin, source, recent trends. Emergence of information
based society, economic, administration, social, dependence of use of
information, accession, threats, civil society and global society, Overview
of computer forensics and Investigative Techniques, Computer forensic
tools, activities of forensic investigations and testing methodology.
Types and Categories of Cyber Crime: Personal, Business, Financial,
Office Security, Cyber Crime – Complete transparency, hacking/cracking,
denial of service, IP piracy, phrasing, hetaerism etc. Cyber Attack – cyber
attackers.
Module 2 Role of Computers and Internet in Cyber crime, penetration testing 12
and auditing : Computer as witness, evidence, act, defining evidence,
computer forensics, computer storage, media of electric record for use of
course of law. Customers and legal agreements, Router penetration
testing, Firewalls penetration testing, Intrusion detection system
penetration testing, Wireless networks penetration testing, Password
cracking penetration testing, Social engineering penetration testing,
147
Application penetration testing, Policies and controls testing. Penetration
testing report and documentation writing, Policies and procedures
Security Policies-checklist.
Module 3 Cyber Security: The concept of cyber security , meaning, scope and the 8
frame work, basic structure development and management, Rules,
Regulations, Act, Legislation - Meaning, Scope, Difference between
Rules.
Module 4 Need for a Cyber Act: The Indian Context, Need for a Cyber Act, 10
Information Technology Act, Scope and further Development,
Information Technology Act (Amendment), coverage of Cyber Security
and Cyber Crime Indian cyber Laws vs. cyber laws of U.S.A, similarities,
scope and coverage, Effectiveness.
Laboratory work: Consists of gathering information, evidence with tools
like WinHex, Metasploit and Social Engineering toolkit.

Books and References:


1. Shavers, Brett (2016), "Cyber Forensics: A Field Manual for Collecting, Examining, and
Preserving Evidence of Computer Crimes", Syngress
2. Walden, Ian (2019), "Computer Crimes and Digital Investigations", Oxford University Press
3. Rajewski, Jonathan; Ramsay, J. (2019), "Cybercrime and Digital Forensics: An Introduction",
Routledge
4. Sammons, John (2019), "Digital Forensics: Threatscape and Best Practices", Syngress
5. Krause, Jonathan (2019), "Cybersecurity and Cyberwar: What Everyone Needs to Know®",
Oxford University Press

148
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Expert Systems CST033 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Understand the principles and components of expert systems. 2
CO2 Explore knowledge representation techniques, such as rules, 4
frames, and semantic networks.
CO3 Develop skills in building and maintaining expert systems using 4
tools like CLIPS or Prolog.
CO4 Apply expert systems in various domains, including healthcare, 3
finance, and engineering, to provide intelligent decision support.

Detailed Syllabus:

Module No Contents Hours

Module 1 Overview: Background, general introduction. Forward and backward 12


chaining, conflict resolution. Uses: structured selection, configuration,
diagnosis and business rules.
Rule-based expert systems: Logic and Inferences: Propositional Logic,
First Order Logic, Soundness and Completeness, Forward and backward
chaining. Uncertainty, fuzzy logic and belief nets.
Expert System Shells.
Module 2 Other expert system paradigms: PIES example system (Pan and 10
Tenenbaum) OOPs, frames, Case-based reasoning and help desks,
Recommender systems (CDNow Case Study). Scheduling
(Steelmaking example: Dorn and Slany).
Module 3 Building expert systems: CLUES example system (Talebzadeh, 10
Mandutianu and Winner), Building expert systems Discussion of shells.
Knowledge Management (Wiki web case study)

Module 4 Machine learning and data-base mining: AI-Agents. State Space 10


Search: Depth First Search, Breadth First Search, DFID. Heuristic Search:
149
Best First Search, Hill Climbing, Beam Search. Randomized Search:
Simulated Annealing. Data Mining Decision Trees, Neural Networks,
Text Mining, Web mining, Current trends in AI.

Books and References:


1. Jackson, Peter; Jackson, Tom (2004), "Introduction to Expert Systems", Pearson Education
2. Giarratano, John; Riley, Gary (2003), "Expert Systems: Principles and Programming", PWS
Publishing Company
3. Schwartz, Daniel G. (1990), "Expert Systems: Applications for Structural, Transportation, and
Environmental Engineering", McGraw-Hill Education
4. Quinlan, J. R. (1993), "C4.5: Programs for Machine Learning", Morgan Kaufmann

150
Department of Computer Science & Engineering
National Institute of Technology Srinagar

Year (Semester) Course Title Course Code L-T-P-Credits


Mobile Computing CST034 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Understand the principles and technologies underlying mobile 2
computing.
CO2 Explore mobile device architectures, operating systems, and 4
networking protocols.
CO3 Develop skills in mobile application development for various 4
platforms (iOS, Android, etc.).
CO4 Apply mobile computing concepts to design and implement 3
responsive, secure, and efficient mobile applications.

Detailed Syllabus:

Module No Contents Hours

Module 1 Mobile Computing (MC): Introduction to MC, novel applications, 12


limitations, and architecture.
GSM: Mobile services, System architecture, Radio interface, Protocols,
Localization and calling, Handover, Security, and New data services.

Module 2 Wireless Medium Access Control: Motivation for a specialized 10


MAC (Hidden and exposed terminals, Near and far terminals), SDMA,
FDMA, TDMA, CDMA.
Mobile Network Layer: Mobile IP (Goals, assumptions, entities and
terminology, IP packet delivery, agent advertisement and discovery,
registration, tunnelling and encapsulation, optimizations), Dynamic Host
Configuration Protocol (DHCP).
Module 3 Mobile Transport Layer: Traditional TCP, Indirect TCP, Snooping 10
TCP, Mobile TCP, Fast retransmit/fast recovery, Transmission /time-out
freezing, Selective retransmission, Transaction oriented TCP.
Database Issues: Hoarding techniques, caching invalidation mechanisms,
151
client server computing with adaptation, power aware and context-aware
computing, transactional models, query processing, recovery, and quality
of service issues.

Module 4 Data Dissemination: Communications asymmetry, classification of new 10


data delivery mechanisms, pushes based mechanisms, pull-based
mechanisms, hybrid mechanisms, selective tuning (indexing) techniques.
Mobile Ad hoc Networks (MANETs): Wireless Application Protocol-
WAP.

Books and References:


1. Saha, Amit Kumar (2013), "Mobile Computing: Technology, Applications, and Service
Creation", McGraw-Hill Education
2. Salkintzis, Apostolis K. (2009), "Mobile Computing: Technology, Applications, and Service
Creation", Wiley
3. Talukdar, Anupam (2015), "Mobile Computing: Theory and Practice", Oxford University Press
4. Kumar, Asoke; Talukdar, Anupam (2011), "Mobile Computing: Theory and Practice", Oxford
University Press
5. Padhy, Niranjan (2013), "Mobile Computing: Principles, Designing, and Programming", Oxford
University Press

152
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Green Computing CST035 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Understand the principles and objectives of green computing. 2
CO2 Explore energy-efficient computing technologies and practices. 4
CO3 Develop skills in optimizing hardware, software, and 4
infrastructure for energy conservation.
CO4 Apply green computing principles to reduce carbon footprint, 3
minimize environmental impact, and promote sustainability in IT
operations.

Detailed Syllabus:

Module No Contents Hours

Module 1 Origins, Regulations and industry initiatives-Government, Industry. 10


Approaches.
Virtualization: Green maturity model for virtualization, Virtualization
level: Level 0, Level 1, Level 2, Level 3.

Module 2 Terminal servers, Power management, Operating system support, Power 10


supply, Storage, video card, Display. Web, temporal and spatial data
mining materials recycling, Tele- computing. Thin clients: Introduction of
thin clients, Characteristics of thin clients, Thin client variants.
Module 3 Middleware support for green computing, Tools for monitoring, HPC 10
computing, Green Mobile, Embedded computing and networking,
Management frameworks, Standards and metrics for computing green.
Environmentally Sustainable Infrastructure Design: Sustainable
technology, Sustainable intelligence, decomposing infrastructure
environment.
Profiling Energy Usages for Efficient Consumption: Profiling energy
usages for the application. Profiling energy usages for the operating
153
system and Extra energy usages profile.

Module 4 Green Networking: Where to save energy in wired networking, 12


Taxonomy of green networking research: Adaptive link rate, Interface
proxying, Energy ware infrastructure, Energy ware application.
Efficient-Efficient Data Canters: Reason for over power consumption
in data centers, Data center management architecture in greener
perspective.
Green Cellular Networking: Survey, Measuring greenness metrics,
Energy saving in base stations, Research issues, Challenges, Future
generation wireless systems, Wireless sensor network for green
networking.

Books and References:


1. Murugesan, San (2017), "Harnessing Green IT: Principles and Practices", Wiley
2. Qi, Jiayin (2017), "Green Communications: Principles, Concepts and Practice", CRC Press
3. Urgaonkar, Bhuvan; Sivasubramaniam, Anand; Wood, Timothy; Kant, Krishna (2016), "Green
Cloud Computing: Balancing Energy in Computation, Storage, and Transport", Morgan
Kaufmann
4. Stojmenovic, Ivan; Milutinovic, Veljko (2015), "Green Mobile Devices and Networks: Energy
Optimization and Scavenging Techniques", Cambridge University Press
5. Lago, Patricia; Gómez, Jorge; Naranjo, David (2019), "Sustainable Software Engineering for
Green Information Systems", Springer

154
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Introduction to Robotics CST036 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Understand the fundamentals of robotics, including robot 2
components and applications.
CO2 Explore robot design principles, kinematics, and dynamics. 4
CO3 Develop skills in programming robots for various tasks and 4
environments.
CO4 Apply robotics concepts to design, build, and control robotic 3
systems for real-world applications.

Detailed Syllabus:

Module No Contents Hours

Module 1 Basic Concepts : 10


Brief history-Types of Robot–Technology-Robot classifications and
specifications-Design and control issues- Various manipulators – Sensors
- work cell - Programming languages.

Module 2 Direct And Inverse Kinematics: 12


Mathematical representation of Robots - Position and orientation
– Homogeneous transformation-Various joints- Representation using the
DenavitHattenberg parameters -Degrees of freedom- Direct kinematics-
Inverse kinematics- SCARA robots- Solvability – Solution methods-
Closed form solution.
Module 3 Manipulator Differential Motion And Statics : 10
Linear and angular velocities-Manipulator Jacobian-Prismatic and rotary
joints–Inverse -Wrist and arm singularity - Static analysis - Force and
moment Balance.
Module 4 Path Planning : 12
Definition-Joint space technique-Use of p-degree polynomial- Cubic
polynomial-Cartesian space technique - Parametric descriptions - Straight
155
line and circular paths - Position and orientation planning.
Dynamics And Control:
Lagrangian mechanics-2DOF Manipulator-Lagrange Euler formulation-
Dynamic model – Manipulator control problem- Linear control schemes-
PID control scheme-Force control of robotic manipulator.

Books and References:


1. Craig, John J. (2004), "Introduction to Robotics: Mechanics and Control", Pearson
2. Niku, Saeed B. (2010), "Introduction to Robotics: Analysis, Systems, Applications", Wiley
3. Murphy, Robin R. (2010), "Introduction to AI Robotics", MIT Press
4. Poole, Harry H. (2017), "Introduction to Robotics: Mechanics and Control", Pearson
5. Addison Wesley (2008), "Introduction to Robotics", Pearson

156
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Data Analytics CST037 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Perform intense exploratory data analytics using statistical and 3
data visualization tools.
CO2 Apply principles of sample spaces, probability axioms, conditional 4
probabilities, and key probability distributions
CO3 Apply Central Limit Theorem to estimate population parameters, 4
analyze sample statistics, and use Chi-square distribution to
evaluate sample proportion and time-series analytics.
CO4 Perform hypothesis testing, comparing z-tests and t-tests, 5
addressing errors, plotting distributions, and exploring chi-square
tests

Detailed Syllabus:

Module No Contents Hours

Module 1 Applied Statistics and Data visualization: Statistical Analytics vs. 10


Algorithmic Analytics, Engineering data science and analytics system,
descriptive statistics, Different types of data – Qualitative and
Quantitative data, Describing relationship between variables,
Characteristics of Measures of Centrality, Effect of Transformations,
Measures of Spread, data standardization, Distribution of a categorical
variable, Joint distribution of two variables.
Module 2 Sample spaces, Probability and Random Variables: Experiments and 12
sample spaces, Events of an Experiment, Axioms and properties of
Probability, Designing probability functions, conditional probabilities –
Total probability theorem, Bayes‘ theorem, Independent events. Random
Variables – Probability Mass functions, Discrete distribution, Bernoulli
Distribution, Binomial Distribution, Geometric distribution, Uniform
Distribution, Properties of Expectation, variance, Normal distributions.

157
Module 3 Inferential Statistics: Distribution of Sample statistics, Estimate 10
Population parameters, Random Sample, Probability space. Central Limit
Theorem – Implications of CLT, Likelihood of Sample mean,
Approximating Distributions. Chi-square distribution – Expectation of
Proportion, Variance of Proportion. Example Estimation with Time series
Analytics.
Module 4 Hypothesis Testing: Effect of η, σ, α, z-test vs. t-test, hypothesis testing 12
proportion, type 1 and type 2 errors, Two-tailed and one-tailed z-test,
Two-tailed and one-tailed t-test, Plotting Distribution, chi-square test of
independence, Case studies.

Books and References:


1. Paul Newbold, William L. Carlson, Betty M. Thorne. Statistics for Business and Economics, 7th
Edition, 2009, Prentice Hall.
2. Prem S. Mann, Introductory Statistics, 7th Edition, 2010, Wiley.
3. Murray R. Spiegel, Larry J. Stephens. Schaum's Outline of Statistics, 2018, 6 th Edition, Schaum
Outline Series, Tata McGraw Hill.
4. Lander, Jared P. (2013), "R for Everyone: Advanced Analytics and Graphics", 1st Edition,
Addison-Wesley Professional.

158
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Computational Biology CST038 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Understand the integration of computational techniques in 2
biological research.
CO2 Explore algorithms for sequence analysis, structural prediction, 4
and systems biology.
CO3 Develop skills in bioinformatics tools and databases for biological 4
data analysis.
CO4 Apply computational methods to address biological questions, 3
model biological processes, and analyse genomic data.

Detailed Syllabus:

Module No Contents Hours

Module 1 Systems biology: Self-organization, emergence, modularity and abstraction, 10


feedback, control analysis, Enzyme Kinetics and Thermodynamics: The
Law of Mass Action; Reaction Kinetics, Rate Equation, Michaelis-Menten
Equation, Hill Equation, Interaction networks overview- Gene Regulatory
Network, Protein – Protein Interaction Network, Signaling Pathways,
Metabolic path-ways; network motifs, Systems Biology tools and
standards: Matlab Systems Biology toolbox; SBML; SBGL (Systems
Biology Graphical Language); KEGG; Tools for systems Biology- Cell
designer; Cytoscape.
Module 2 Synthetic Biology: Engineering Biology; design and construction of novel 10
biological systems; Abstraction hierarchy-Part, Device, Systems; Bio-Bricks
- a standard for (physical) DNA composition, Designing a biological system
from Bio-bricks; iGEM; SBOL, Computational Synthetic biology: Codon
optimization; AND gate and OR gate in biology; Operons; Switches and
clocks; Re-pressilator; Applications- Environment, Energy, Pharmaceutical
needs, Ethical issues of Synthetic Biology.

159
Module 3 Niche areas in Genomics: Toxic-genomics, Pharmacogenomics, Pharmaco- 10
genetics, SNP, Personalized medicine, Meta-genomics, Comparative
genomics, Functional genomics, structural genomics, QTL, HGP.
Next Generation Sequencing methods, Overview of data compression, Need
for compression, Scope of NGS data compression.
Module 4 Advanced topics in CADD: Molecular dynamics simulations, Force fields, 12
Energy minimization, pharmacodynamics & pharmacokinetics, 2D and 3D
screening, Identification of targets in silico, GPCRs, Peptides as drugs,
introduction to Ayur- informatics.
Metabolomics: Metabolism, metabolomite, metabolome, metabolomic
separation and analysis techniques, metabolic profiling, metabolic
fingerprinting, Metabolome informatics.
Resources/databases of metabolomics, Applications; Epigenetics

Books and References:


1. Pevzner, Pavel A.; Shamir, Ron (2011), "Bioinformatics for Biologists", Cambridge University
Press
2. Waterman, Michael S. (1995), "Introduction to Computational Biology: Maps, Sequences and
Genomes", Chapman and Hall/CRC
3. Westhoff, Jakob (2020), "Introduction to Computational Biology: An Evolutionary Approach",
Springer
4. Istrail, Sorin; Pevzner, Pavel; Waterman, Michael (2009), "Computational Biology: A Practical
Introduction to BioData Processing and Analysis with Linux, MySQL, and R", O'Reilly Media
5. Wünschiers, Röbbe (2017), "Systems Biology: A Textbook", Wiley-VCH

160
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Special Topics in CST039 3-0-0-3
Computer Science
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: None

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Gain in-depth knowledge of advanced topics in artificial 2
intelligence (AI), machine learning (ML), data mining, and data
visualization.
CO2 Explore cutting-edge techniques and algorithms used in 4
recommendation systems and predictive analytics.
CO3 Develop practical skills in implementing AI and ML models for 6
solving real-world problems.
CO4 Apply data visualization techniques to communicate insights and 3
patterns extracted from large datasets effectively.

Detailed Syllabus:

Module No Contents Hours

Module 1 Introduction: Introduction to Data Science, Steps in doing 12


data Science, Skills needed to do data Science, Datafication
Statistical Inference Populations and samples, Statistical modelling,
probability distributions, fitting a model, Intro to R
Exploratory Data Analysis and the Data Science Process - Basic tools
(plots, graphs and summary statistics) of EDA, Philosophy of EDA, The
Data Science Process, Case Study: RealDirect (online real estate firm)
Module 2 Introduction to Machine Learning: Linear Regression ,K- Nearest 10
Neighbors (K-NN), k-means, Motivating application: Filtering Spam ,
Why Linear Regression and k-NN are poor choices for Filtering Spam ,
Naive Bayes and why it works for Filtering Spam , Data Wrangling: APIs
and other tools for scrapping the Web
Feature Generation and Feature Selection (Extracting Meaning From
Data) - Motivating application: user (customer) retention Feature
Generation (brainstorming, role of domain expertise, and place for
imagination), Feature Selection algorithms – Filters; Wrappers; Decision
161
Trees; Random Forests.

Module 3 Recommendation Systems: Building a User-Facing Data Product, 10


Algorithmic ingredients of a Recommendation Engine, Dimensionality
Reduction, Singular Value Decomposition, Principal Component
Analysis, Exercise: build your own recommendation system
Mining Social-Network Graphs: Social networks as graphs, Clustering
of graphs, Direct discovery of communities in graphs, Partitioning of
graphs, Neighbourhood properties in graphs.
Module 4 Data Visualization Basic principles, ideas and tools for data 10
visualization, Examples of inspiring (industry) projects, Exercise: create
your own visualization of a complex dataset.
Data Science and Ethical Issues: Discussions on privacy, security,
ethics, A look back at Data Science , Next-generation data scientists

Books and References:


1. Russell, Stuart J.; Norvig, Peter (2009), "Artificial Intelligence: A Modern Approach", Pearson
2. Hastie, Trevor; Tibshirani, Robert; Friedman, Jerome (2009), "The Elements of Statistical
Learning: Data Mining, Inference, and Prediction", Springer
3. Witten, Ian H.; Frank, Eibe; Hall, Mark A.; Pal, Christopher J. (2016), "Data Mining: Practical
Machine Learning Tools and Techniques", Morgan Kaufmann
4. Fry, Ben (2008), "Visualizing Data", O'Reilly Media
5. Aggarwal, Charu C. (2015), "Recommender Systems: The Textbook", Springer

162
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
System & Network CST040 3-0-0-3
Administration
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: CST308, CST355

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Analyse the operating system design concerning scalability and 4
security.
CO2 Develop a design for a local area network with the necessary 5
application level services.
CO3 Develop and Configure an IP addressing scheme with the 5
necessary network level services.
CO4 Analyse the storage and security implications in the system 4
administration.

Detailed Syllabus:

Module No Contents Hours

Module 1 Unix Operating System – Unix features, the shell, A portable, 12


multitasking, multiuser system. File Systems and Storage models –
Network Attached Storage, Storage Area Networks, Cloud Storage. Disk
Devices and Interfaces – RAID, File system types. Windows Server and
Unix File System.
Module 2 System Components, Networked Communities, Host Management, User 10
Management, Models of Network and System Administration,
Configuration and Maintenance, Application Level Services.
Module 3 Introduction to Networks, OSI reference model, topologies, Network 12
protocols, Routing and switching, LAN/WAN, Configuring and
managing firewalls, Managing VPNs. Configuring and managing routers,
Monitoring network performance, Analyzing network traffic. Datacenters
Overview - Running a Datacenter. Network Level Services.
Module 4 Principles of Security, Security Implications, Analytical System 10
Administration. Planning and implementing disaster recovery procedures
– Data storage, Backup and Restore, Web and cloud Services

163
Books and References:
1. Maurice J. Bach, The Design of the UNIX Operating System, Prentice Hall Software series,
Pearson. 1986.
2. Burgess, Mark (2009), "Principles of Network and System Administration", Wiley.
3. Limoncelli, Thomas A.; Hogan, Christina J.; Chalup, Strata R. (2016), "The Practice of System
and Network Administration", Addison-Wesley Professional
4. Dittner, Paul M. (2018), "Networking for Systems Administrators", O'Reilly Media
5. Joseph Davies, Understanding IPv6: Your Essential Guide to IPv6 on Windows Networks, 3rd
Edition, 2012, Microsoft Press.
6. Jean Andrews, A+ Guide to Managing and Maintaining Your PC, 8th Edition, 2013, Cengage
Learning.

164
Department of Computer Science & Engineering
National Institute of Technology Srinagar

Year (Semester) Course Title Course Code L-T-P-Credits


Pattern Recognition CST041 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Understand the principles and techniques of pattern recognition. 2
CO2 Explore algorithms and methods for feature extraction, 4
classification, and clustering.
CO3 Develop skills in designing and implementing pattern recognition 4
systems for various applications.
CO4 Apply pattern recognition techniques to analyse and interpret 3
complex data patterns in fields such as image processing, speech
recognition, and bioinformatics.

Detailed Syllabus:

Module No Contents Hours

Module 1 Introduction to patterns and pattern recognition application development: 12


Supervised pattern detection I (Bayes classifiers) Feature extraction -
multivariate data Feature extraction - image data Supervised pattern
detection II (linear classifiers) Unsupervised pattern detection I
(clustering) Supervised pattern detection III (non-linear classifiers, neural
networks, support vector machines) Supervised pattern detection IV (rule-
based classifiers) Unsupervised pattern detection II (self-organization,
competitive learning)
Basics of Probability, Random Processes and Linear Algebra (recap):
Probability: independence of events, conditional and joint probability,
Bayes theorem Random Processes: Stationary and non-stationary
processes, Expectation, Autocorrelation, Cross-Correlation, spectra.
Module 2 Bayes Decision Theory: Minimum-error-rate classification. Classifiers, 10
Discriminant functions, Decision surfaces. Normal density and
discriminant functions. Discrete features.
Parameter Estimation Methods: Maximum-Likelihood estimation:
165
Gaussian case. Maximum a Posteriori estimation. Bayesian estimation:
Gaussian case. Unsupervised learning and clustering - Criterion functions
for clustering. Algorithms for clustering: K-Means, Hierarchical and other
methods. Cluster validation. Gaussian mixture models, Expectation-
Maximization method for parameter estimation. Maximum entropy
estimation. Sequential Pattern Recognition. Hidden Markov Models
(HMMs). Discrete HMMs. Continuous HMMs. Nonparametric
techniques for density estimation. Parzen-window method. K- Nearest
Neighbor method
Module 3 Dimensionality reduction: Principal component analysis - it relationship 10
to eigen analysis. Fisher discriminant analysis - Generalized eigen
analysis. Eigen vectors/Singular vectors as dictionaries. Factor Analysis,
Total variability space - a dictionary learning methods. Non-negative
matrix factorization - a dictionary learning method.
Linear discriminant functions: Gradient descent procedures,
Perceptron, Support vector machines - a brief introduction.
Module 4 Artificial neural networks: Multilayer perceptron - feedforward neural 10
network. A brief introduction to deep neural networks, convolutional
neural networks, recurrent neural networks.
Non-metric methods for pattern classification: Non-numeric data or
nominal data. Decision trees: Classification and Regression Trees
(CART).

Books and References:


1. Bishop, Christopher M. (2006), "Pattern Recognition and Machine Learning", Springer
2. Duda, Richard O.; Hart, Peter E.; Stork, David G. (2012), "Pattern Classification", Wiley
3. Theodoridis, Sergios; Koutroumbas, Konstantinos (2009), "Pattern Recognition", Academic
Press
4. Gose, Earl; Johnsonbaugh, Richard; Jost, Steve (2010), "Pattern Recognition and Image
Analysis", Prentice Hall
5. Jähne, Bernd (2005), "Digital Image Processing: Concepts, Algorithms, and Scientific
Applications", Springer

166
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Natural Language CST042 3-0-0-3
Processing
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: None

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Utilize tokenization, stemming, and lemmatization, apply 3
word2vec, evaluate N-gram models.
CO2 Build and evaluate text classification and sentiment analysis 4
system
CO3 Design named entity recognition systems for classifying text and 5
improving search algorithms.
CO4 Apply NLP techniques to analyse and understand unstructured 4
textual data.

Detailed Syllabus:

Module No Contents Hours

Module 1 Introduction to NLP - NLP tasks, challenges, Tokenization, 12


Lemmatization, Stemming, Sentence segmentation, Phrase identification,
Regular Expressions, Text Normalization, Edit distance. Word Sense
Disambiguation (WSD), Word Vector Representations - word2vec,
Parsing. N-grams – Estimating N-gram probabilities, Learning N-grams
models – Evaluation of N-gram Models and Perplexity.
Module 2 Text Classification – Naïve Bayes - Formalizing the classifier, learning, 10
relationship to Language Modeling, Multinomial Naïve Bayes, Evaluation
metrics – Precision, Recall and F-measure. Sentiment Analysis –
Sentiment Lexicons, Learning sentiment lexicons – Turney‘s algorithm,
WordNet approach, Domain specific.
Module 3 Named Entity Recognition – Applications of NER, Challenges, 10
Annotation, Evaluation. Approaches for NER – List lookup, Shallow
parsing, Shallow parsing with context, Learning based Approaches for
NER. Sequence Models for Named Entity Recognition, Maximum
Entropy Sequence Models.

167
Module 4 Applications of NLP- Next Word Prediction, Spell-correction, Text 12
summarization – extractive and abstractive, Information Retrieval using
language models - Vector space model, term weighting, improving user
queries, Information Extraction, Machine Translation using sequence
modeling.

References Books:

1. Pushpak Bhattacharyya, Aditya Joshi. Natural Language Processing, Wiley, Dec 2023, ISBN:
978-9357462389.
2. Jurafsky, Dan; Martin, James H. (2013), " Speech and Language Processing: An Introduction to
Natural Language Processing, Computational Linguistics and Speech Recognition", 2 nd Edition,
Pearson Education India.
3. Eisenstein, Jacob (2019), "Introduction to Natural Language Processing", MIT Press.
4. Manning, Christopher D.; Schütze, Hinrich (1999), "Foundations of Statistical Natural Language
Processing", MIT Press.
5. Jurafsky, Daniel; Martin, James H. (2008), " Speech and Language Processing: International
Edition", 2nd edition, Pearson
6. Aaron Courville, Ian Goodfellow, Yoshua Bengio (2016), "Deep Learning (Adaptive
Computation and Machine Learning series)", MIT Press.

168
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Quantum Computing CST043 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Understand the principles and fundamentals of quantum 2
computing.
CO2 Explore quantum algorithms, quantum gates, and quantum circuit 4
design.
CO3 Develop skills in programming and simulating quantum 4
algorithms using quantum computing frameworks.
CO4 Apply quantum computing concepts to solve problems in 3
cryptography, optimization, and machine learning.

Detailed Syllabus:

Module No Contents Hours

Module 1 Introduction and Background: Overview, Computers and the Strong 12


Church–Turing Thesis, The Circuit Model of Computation, A Linear
Algebra Formulation of the Circuit Model, Reversible Computation, A
Preview of Quantum Physics, Quantum Physics and Computation.
Linear Algebra and The Dirac Notation: The Dirac Notation and
Hilbert Spaces, Dual Vectors, Operators, The Spectral Theorem,
Functions of Operators, Tensor Products, The Schmidt Decomposition
Theorem, Some Comments on the Dirac Notation.
Qubits and The Framework of Quantum Mechanics: The State of a
Quantum System, Time-Evolution of a Closed System, Composite
Systems, Measurement, Mixed States and General Quantum Operations.
Module 2 A Quantum Model of Computation: The Quantum Circuit Model, 12
Quantum Gates, Universal Sets of Quantum Gates, Efficiency of
Approximating Unitary Transformations, Implementing Measurements
with Quantum Circuits.
Superdense Coding and Quantum Teleportation: Superdense Coding,
Quantum Teleportation, An Application of Quantum Teleportation.
169
Introductory Quantum Algorithms: Probabilistic Versus Quantum
Algorithms, Phase Kick-Back, The Deutsch Algorithm, The Deutsch–
Jozsa Algorithm, Simon‘s Algorithm.
Module 3 Algorithms With Superpolynomial Speed-Up: Quantum Phase 9
Estimation and the Quantum Fourier Transform, Eigenvalue Estimation,
Finding-Orders, Finding Discrete Logarithms, Hidden Subgroups, Related
Algorithms and Techniques.
Algorithms Based on Amplitude Amplification: Grover‘s Quantum
Search Algorithm, Amplitude Amplification, Quantum Amplitude
Estimation and Quantum Counting, Searching Without Knowing the
Success Probability, Related Algorithms and Techniques
Module 4 Quantum Computational Complexity Theory and Lower Bounds: 9
Computational Complexity, The Black-Box Model, Lower Bounds for
Searching in the Black-Box Model: Hybrid Method, General Black-Box
Lower Bounds, Polynomial Method, Block Sensitivity, Adversary
Methods.
Quantum Error Correction: Classical Error Correction, The Classical
Three-Bit Code, Fault Tolerance, Quantum Error Correction, Three- and
Nine-Qubit Quantum Codes, Fault-
Tolerant Quantum Computation.

Books and References:


1. Nielsen, Michael A.; Chuang, Isaac L. (2010), "Quantum Computation and Quantum
Information", Cambridge University Press
2. Rieffel, Eleanor G.; Polak, Wolfgang H. (2011), "Quantum Computing: A Gentle Introduction",
MIT Press
3. Mermin, N. David (2007), "Quantum Computer Science: An Introduction", Cambridge
University Press
4. Van Meter, Rod; Brun, Todd A. (2016), "Quantum Networking", Wiley
5. Johnston, Eric R.; McMahon, Paul J. L.; Lapata, Mirella (2019), "Quantum Computing for
Computer Scientists", Cambridge University Press

170
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Deep Learning CST044 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None

Course Outcomes: At the end of the course, the student will be able to:

Bloom’s
CO No. Course Outcomes
Taxonomy Level
CO1 Exposed to basics of neural network models & algorithms for deep 3
neural networks.
CO2 Characterize of optimization algorithms and non-linear activation 3
functions.
CO3 Learn various initialization methods and regularization techniques. 5
CO4 Build convolutional networks and use them to classify images. 5

Detailed Syllabus:

Module No Contents Hours

Module 1 Introduction to Neural Networks: 6 elements of machine learning/deep 8


learning – Data, task, model, loss function, learning algorithm, evaluation.
MP Neuron, Perceptron, Sigmoid Neuron, Gradient Descent, Feedforward
Neural networks, Back propagation algorithm. Loss functions: Squared Error
loss, Cross Entropy.
Module 2 Optimization algorithms and activation functions: Gradient Descent 10
(GD), Momentum based GD, Nesterov‗s accelerated GD, stochastic GD,
mini-batch GD, Adagrad, RMSProp, Adam. Epochs, Learning rate.
Activation functions: sigmoid, ReLU, tanh.
Module 3 Initialization techniques and regularization: Initialization techniques: 10
Xavier and He initialization. Analyzing the behaviour of the simple and
complex models, Bias and Variance, Overfitting in deep neural networks,
Hyper parameter tuning, L2 regularization, data augmentation and early
stopping.
Module 4 Convolutional Neural Networks (CNN): Convolution operation 14
(1D/2D), 2D convolution with 3D filter, Padding and Stride. Convolution
operation related to Neural Network, Sparse Connectivity and Weight
Sharing, Max Pooling and NonLinearities, Training CNNs. CNN
architectures: AlexNet, ZFNet, VGGNet, GoogleNet, ResNet. Batch
171
Normalization, Dropout.
Recurrent Neural Networks (RNN): Sequence Learning problems,
Intuition behind RNN, sequence classification, sequence labelling, Model,
Loss function, Learning algorithm, Evaluation. Vanishing and Exploding
gradient. LSTMs and 3 GRUs, Encoder Decoder models, Attention
mechanism.

Books and References:

1. Aaron Courville, Ian Goodfellow, Yoshua Bengio (2016), "Deep Learning (Adaptive
Computation and Machine Learning series)", MIT Press.
2. Bengio, Yoshua, Ian J. Goodfellow, and Aaron Courville. "Deep learning." An MIT Press book
in preparation. (2015)
3. Bengio, Yoshua. "Learning deep architectures for AI." Foundations and trends in Machine
Learning 2.1 (2009): 1127.
4. Nithin Buduma, Nikhil Buduma, Joe Papa (2022), "Fundamentals of Deep Learning ", 2nd
Edition, O'Reilly Media, Inc.
5. Géron, Aurélien (2019), "Hands-On Machine Learning with Scikit-Learn, Keras, and
TensorFlow", O'Reilly Media, Inc.
6. Haykin, Neural Networks and Learning Machines, 3rd Edition, Pearson Education India, 2016.
7. John D. Kelleher, Deep Learning (The MIT Press Essential Knowledge series), Illustrated
Edition, The MIT Press, 2019.
8. Hochreiter, Sepp, and Jargen Schmidhuber. "Long short-term memory." Neural computation 9.8
(1997): 17351780.

172
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Introduction to Data CST045 3-0-0-3
Science
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: None

Course Outcomes: At the end of the course, the student will be able to:

Bloom’s
CO No. Course Outcomes
Taxonomy Level
CO1 Pipeline the data collection and data visualization using either R or 3
Python for data science projects.
CO2 Analyze data types, explore statistical distributions, compute 4
probabilities, and apply confidence intervals and hypothesis testing
for inference.
CO3 Discover data patterns with association rules, regression, 5
classification and clustering, outlier detection, and apply data
warehousing and OLAP operations.
CO4 Apply pattern recognition techniques and explore data science case 6
studies to solve real-world problems using data-driven approaches.

Detailed Syllabus:

Module No Contents Hours


Module 1 Data Collection: planning and data collection tools. Web scraping, Graph 10
data repositories, IoT and Sensor Data collection.
Data Visualization: Exploratory Data Analysis (EDA), guidelines for
good plot, Business Intelligence and Visualization tools - Plotting Large
Data, Visualizing Graph Data.
R for Data Science: Introduction to R, Data Transformation, EDA with
R, Tidy data, Relational data, Strings, Factors, Functions, Vectors,
Iterators, and Visualizing models.
Module 2 Descriptive statistics: Different types of data - Qualitative and 12
Quantitative data, Describing relationship between variables,
Characteristics of Measures of Centrality.
Probability and Statistics: Events, Sample Space, Simple Probability,
Joint Probability, Conditional Probability, Bayes theorem. Probability and
statistics distribution – binomial distribution, poisson distribution, normal
distribution, Central Limit Theorem, Confidence Intervals, Hypothesis
173
Testing.

Module 3 Data Mining: Knowledge Discovery in Databases, Frequent patterns, 10


association rules, support and confidence, Apriori, FP Growth.
Regression, Classification, Clustering, Outlier analysis - outlier detection
methods – Proximity-based methods, clustering-based methods,
classification-based Methods, Outlier Detection for high dimensional
data. Data Warehousing: OLTP vs. OLAP, Data Warehouse
Architecture, data cube measures and computation, OLAP operations.
Module 4 Pattern Recognition: Pattern representation, Feature Extraction – 10
Fisher‘s Linear Discriminant, Principal Component Analysis (PCA),
Feature selection, Hidden Markov Models. Data Science case studies:
Customer Segmentation for Marketing, Healthcare Analytics, Fraud
Detection in Finance, Environmental Data Analysis.

Books and References:


1. Hadley Wickham, Garrett Grolemund, (2016) R for Data Science - Import, Tidy, Transform,
Visualize, and Model Data, O'Reilly Media Inc.
2. Jiawei Han, Micheline Kamber, Jian Pei Professor, (2011) Data Mining: Concepts and
Techniques (The Morgan Kaufmann Series in Data Management Systems), 3rd Edition, Morgan
Kaufmann.
3. Christopher M. Bishop, (2016) Pattern Recognition and Machine Learning, Springer.
4. Grus, Joel (2019), "Data Science from Scratch: First Principles with Python", 2nd Edition,
O'Reilly Media Inc.
5. VanderPlas, Jake (2016), "Python Data Science Handbook", O'Reilly Media Inc.

174
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Internet Of Things CST046 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Understand the concepts and components of the Internet of Things 2
(IoT).
CO2 Explore IoT architectures, communication protocols, and sensor 4
technologies.
CO3 Develop skills in designing and implementing IoT applications 4
and systems.
CO4 Apply IoT concepts to create connected devices, monitor and 3
control remote assets, and collect and analyze data for smart
decision-making.

Detailed Syllabus:

Module No Contents Hours

Module 1 What is The Internet of Things? Overview and Motivations, Examples of 10


Applications, IPV6 Role, Areas of Development and Standardization,
Scope of the Present Investigation. Internet of Things Definitions and
frameworks-IOT Definitions, IOT Frameworks, Basic Nodal Capabilities.
Internet of Things Application Examples-Overview, Smart
Metering/Advanced Metering Infrastructure-Health/Body Area Networks,
City Automation, Automotive Applications, Home Automation, Smart
Cards, Tracking, Over-The-Air-Passive Surveillance/Ring of Steel,
Control Application Examples, Myriad Other Applications.
Module 2 Fundamental IOT Mechanism and Key Technologies- Identification of 10
IOT Object and Services, Structural Aspects of the IOT, Key IOT
Technologies. Evolving IOT Standards- Overview and Approaches, IETF
IPV6 Routing Protocol for RPL Roll, Constrained Application Protocol,
Representational State Transfer, ETSI M2M,Third Generation Partnership
Project Service Requirements for Machine-Type Communications,
CENELEC, IETF IPv6 Over Low power WPAN, Zigbee IP(ZIP),IPSO
175
Module 3 Layer ½ Connectivity: Wireless Technologies for the IOT- 10
WPAN Technologies for IOT/M2M, Cellular and Mobile Network
Technologies for IOT/M2M, Layer 3 Connectivity: IPv6 Technologies for
the IOT: Overview and Motivations. Address Capabilities, IPv6 Protocol
Overview, IPv6 Tunnelling, IPSec in IPv6, Header Compression
Schemes, Quality of Service in IPv6, Migration Strategies to IPv6.

Module 4 Case Studies illustrating IOT Design-Introduction, Home Automation, 12


Cities, Environment, Agriculture, Productivity Applications.
Data Analytics for IOT –Introduction, Apache Hadoop, Using Hadoop
Map Reduce for Batch Data Analysis, Apache Oozie, Apache Spark,
Apache Storm, Using Apache Storm for Real- time Data Analysis,
Structural Health Monitoring Case Study.

Books and References:


1. Schwartz, Marco; Manickum, Oliver (2018), "Building the Internet of Things: Implement New
Business Models, Disrupt Competitors, Transform Your Industry", McGraw-Hill Education
2. Buyya, Rajkumar; Dastjerdi, Amir Vahid (2016), "Internet of Things: Principles and Paradigms",
Elsevier
3. Waher, Peter (2017), "Learning Internet of Things", Packt Publishing
4. Doukas, Charalampos (2016), "Building the Internet of Things: Implement New Business
Models, Disrupt Competitors, Transform Your Industry", Springer
5. O'Reilly, Tim (2016), "Designing for the Internet of Things", O'Reilly Media

176
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Advanced Cryptography CST047 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Gain an in-depth understanding of advanced cryptographic 2
techniques and protocols.
CO2 Explore cryptographic algorithms for encryption, digital 4
signatures, and key exchange.
CO3 Develop skills in cryptographic analysis, cryptanalysis, and 4
protocol design.
CO4 Apply advanced cryptography concepts to secure data 3
transmission, authentication, and privacy protection in various
applications and systems.

Detailed Syllabus:

Module No Contents Hours

Module 1 Introduction :Attacks on computers and computer security, need for 10


security, approaches , principles, types of attacks ,operational model of
network security Cryptography concepts and techniques, substitution,
transposition, encryption and decryption, symmetric, Asymmetric key
cryptography, key range size, possible type of attacks.
Mathematics of cryptography and DES Block ciphers modes, feistel ciphers
DES. Working of DES, cracking DES, problems on DES, 2DES, 3DES, DES
design ,Side channel attacks, Differential cryptanalysis.
Module 2 Symmetric-Key Cryptography: Glosis field theory, AES, overview of 12
Rijndael - comparison with others. Symmetric ciphers, Blowfish in practice
,RC4, RC5,RC6,IDEA, RSA
Asymmetric-Key Cryptography RSA, Elliptic curve cryptography ECC,
Digital certificates and PK

177
Module 3 Cryptographic Hash Functions Hashing schemes SHA-family, MAC, Digital 12
Signature RSA El Gomel , DSS DSA, Authentication Protocols , applications
Kerberos, X.509,Directory services
Network Security Internet security protocols , SSL,TLS TSP WAP security,
SET Hashing Authentication & Signature Schemes E-mail security, Email
architecture SSL, PGP, MIME, S/MIME Internet Protocol Security ( IPSec)
IPSec architecture, IPSec verses other layers security Mobile IPSec, VPN,
Web security SSL, TLS, SET etc

Module 4 System Security Intruders, types of attacks, protecting against Intruders 8


honeypots, scanning and analysis tools, Viruses and worms, types of viruses,
protection, Firewall architecture implementing firewalls, xml firewalls,
trusted systems, trusted system applications, multi-level security, trusted
products. Security implementation, wireless security, securities in Adhoc-
networks.

Books and References:


1. William Stallings (2014), ―Cryptography And Network Security Principles and Practices‖,
Prentice Hall
2. Schneier, Bruce (2015), "Applied Cryptography: Protocols, Algorithms, and Source Code in C",
Wiley
3. Katz, Jonathan; Lindell, Yehuda (2014), "Introduction to Modern Cryptography: Principles and
Protocols", CRC Press
4. Paar, Christof; Pelzl, Jan (2010), "Understanding Cryptography: A Textbook for Students and
Practitioners", Springer
5. Stinson, Douglas R. (2005), "Cryptography: Theory and Practice", CRC Press

178
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Data Mining CST048 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Understand the principles and methodologies of data mining. 2
CO2 Explore data pre-processing, pattern discovery, and predictive 4
modelling techniques.
CO3 Develop skills in using data mining algorithms and tools for 4
knowledge discovery.
CO4 Apply data mining concepts to extract valuable insights, identify 3
patterns, and make data-driven decisions across various domains.

Detailed Syllabus:
Module No Contents Hours

Module 1 Introduction to Data Mining: Introduction: Scope of Data Mining: What 12


is Data Mining; How does Data Mining Works, Predictive Modelling:
Data Mining and Data Warehousing: Architecture for Data Mining:
Profitable Applications: Data Mining Tools
Business Intelligence: Introduction, Business Intelligence, Business
Intelligence tools, Business Intelligence Infrastructure, Business
Intelligence Applications, BI versus Data Warehouse, BI versus Data
Mining, Future of BI.
Module 2 Data Pre-processing: Introduction, Data Pre-processing Overview, Data 12
Cleaning, Data Integration and Transformation, Data Reduction,
Discretization and Concept Hierarchy Generation.
Data Mining Techniques- An Overview: Introduction, Data Mining, Data
Mining Versus Database Management System,
Data Mining Techniques- Association rules, Classification, Regression,
Clustering, Neural networks.

179
Module 3 Clustering: Introduction, Clustering, Cluster Analysis, Clustering 10
Methods- K means, Hierarchical clustering, Agglomerative clustering,
Divisive clustering, clustering and segmentation software, evaluating
clusters.
Web Mining: Introduction, Terminologies, Categories of Web Mining –
Web Content Mining, Web Structure Mining, Web Usage Mining,
Applications of Web Mining, and Agent based and Data base approaches,
Web mining Software.
Module 4 Applications of Data mining: Introduction, Business Applications Using 8
Data Mining- Risk management and targeted marketing, Customer
profiles and feature construction, Medical applications (diabetic
screening), Scientific Applications using Data Mining, Other
Applications.

Books and References:


1. Han, Jiawei; Kamber, Micheline; Pei, Jian (2011), "Data Mining: Concepts and Techniques",
Morgan Kaufmann
2. Witten, Ian H.; Frank, Eibe; Hall, Mark A. (2016), "Data Mining: Practical Machine Learning
Tools and Techniques", Morgan Kaufmann
3. Aggarwal, Charu C. (2015), "Data Mining: The Textbook", Springer
4. Dunham, Margaret H. (2011), "Data Mining: Introductory and Advanced Topics", Pearson
5. Tan, Pang-Ning; Steinbach, Michael; Kumar, Vipin (2005), "Introduction to Data Mining",
Pearson

180
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Advanced Graph CST049 3-0-0-3
Algorithms
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: None

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Understand advanced graph theory concepts and graph algorithms. 2
CO2 Explore algorithms for graph traversal, shortest paths, and network 4
flow problems.
CO3 Develop skills in analyzing and optimizing graph algorithms for 4
efficiency and scalability.
CO4 Apply advanced graph algorithms to solve complex problems in 3
network analysis, social networks, and optimization.

Detailed Syllabus:
Module No Contents Hours

Module 1 Basics: Introduction, Machine Model, Graph Data Structures, Bipartite 12


Graphs, Eulerian Graphs, Circuits & Trails, Fleury's Algorithm,
Hierholzer's Algorithm
Connectivity: Top. Sort, Detecting Strong Components, 2- Connectivity /
2-Edge-Connectivity, (Open) Ear Decompositions, Strong Orientations,
Testing 2-(Edge- )Connectivity in Linear Time, Bipolar Orientations, s-t-
Numberings + Algorithm
Module 2 Matchings: Definitions, Hopcroft–Karp algorithm, Edmonds algorithm, 10
Hall's Theorem, Hungarian Method for Bipartite Weighted Matchings,
Weighted Matchings in General Graphs, Some approximate approach
Dynamic Algorithms: Dynamic Connectivity and Spanning Trees in
Amortized Poly-log time, Dynamic Connectivity in Worst-case O(n½)
time
Module 3 Planar Graphs: Planar Separator Theorem and its Applications, 10
Embeddings (combinatorial + planar), Euler's Formula, Kuratowski's
Theorem, Detour to Platonic Solids, Dual Graphs, Interdigitating Trees,
Half-Edge Data Structure, Decremental Dynamic Adjacency Queries,

181
Max-Cut in polynomial time, Minimum Spanning Trees in linear time,
Shortest Paths with Matrix Multiplication.

Module 4 NP-Hard Problems: Intro (FPT). Vertex Cover: FPT algorithm, Buss' 10
kernel. Feedback Vertex Set: FPT algorithm, Kernels for Vertex Cover by
Matching and for Feedback Vertex Set, Hamiltonian Path Problem, k-
Path, Chromatic number, FPT Cut Problems: Important separators,
Multiway Cut, Treewidth: Tree decompositions, Algorithmic use
(dynamic programming), Introduction to Bidimensionality, Planar
Graphs: Linear Kernels, Bidimensionality, Subexponential Time
Parameterized Algorithms, Problems on Restricted Graph Classes,
Combinatorial Algorithms for Linear Fisher Markets

Books and References:


1. Eppstein, David (2002), "Graph Algorithms", Cambridge University Press
2. Kleinberg, Jon; Tardos, Éva (2006), "Algorithm Design", Pearson
3. Cormen, Thomas H.; Leiserson, Charles E.; Rivest, Ronald L.; Stein, Clifford (2009),
"Introduction to Algorithms", MIT Press
4. Abiteboul, Serge; Manolescu, Ioana; Rigaux, Philippe; Rousset, Marie-Christine; Senellart,
Pierre (2011), "Web Data Management", Cambridge University Press
5. Havel, Václav (2008), "Computational Graph Theory", Springer

182
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Advanced Java CST050 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Gain a deeper understanding of advanced Java concepts and 2
features.
CO2 Explore topics such as generics, multithreading, and concurrency 4
in Java.
CO3 Develop skills in using advanced Java libraries and frameworks. 4
CO4 Apply advanced Java techniques to design and implement robust, 3
scalable, and efficient applications.

Detailed Syllabus:

Module No Contents Hours

Module 1 Collections: Collection Interfaces, Concrete Collections, The Collections 13


Framework
Multithreading: Creating thread and running it, Multiple Thread acting
on single object, Synchronization, Thread communication, Thread group,
Thread priorities, Daemon Thread, Life Cycle of Thread.
Networking: Internet Addressing, InetAddress, Factory Methods,
Instance Methods, TCP/IP Client Sockets, URL, URL Connection,
TCP/IP Server Sockets, Datagrams
Module 2 Enterprise Java Bean: Preparing a Class to be a JavaBean, Creating a 10
JavaBean, JavaBean Properties, Types of beans, Stateful Session bean,
Stateless Session bean, Entity bean.
Java Database Connectivity (JDBC): Merging Data from Multiple
Tables: Joining, Manipulating Databases with JDBC, Prepared
Statements, Transaction Processing, Stored Procedures C.
Module 3 Servlets: Servlet Overview and Architecture, Interface Servlet and the 11
Servlet Life Cycle, Handling HTTP get Requests, Handling HTTP post
Requests, Redirecting Requests to Other Resources, Session Tracking,
Cookies, Session Tracking with HttpSession.
183
JavaServer Pages (JSP): Introduction, JavaServer Pages Overview, A
First JavaServer Page Example, Implicit Objects, Scripting, Standard
Actions, Directives, Custom Tag Libraries
Remote Method Invocation: Defining the Remote Interface,
Implementing the Remote Interface, Compiling and Executing the Server
and the Client.
Module 4 Common Object Request Broker Architecture (CORBA): 8
Technical/Architectural Overview, CORBA Basics, CORBA services.
Introduction Smart Phone Application Development: Introduction to
android platform, Creating application template, adding activity, intent,
services to application, receivers and alerts.

Books and References:


1. Bloch, Joshua (2008), "Effective Java", Addison-Wesley Professional
2. Horstmann, Cay S.; Cornell, Gary (2017), "Core Java Volume II - Advanced Features", Pearson
3. Arnold, Ken; Gosling, James (2006), "Java™ Programming Language, The, Fourth Edition",
Addison-Wesley Professional
4. Oaks, Scott (2014), "Java Performance: The Definitive Guide", O'Reilly Media

184
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Machine Learning CST051 2-1-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: Artificial Intelligence (CST352)

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Understand the foundational concepts, algorithms, and techniques 2
of machine learning.
CO2 Apply various machine learning algorithms to solve real-world 3
problems and analyze their performance.
CO3 Explore advanced topics in machine learning, including deep 4
learning, reinforcement learning, and ensemble methods.
CO4 Learn how to deploy machine learning models effectively and 5
consider ethical implications in AI deployment. .

Detailed Syllabus:

Module No Contents Hours

Module 1 Introduction to Machine Learning (ML): Supervised, Semi supervised, 10


unsupervised machine learning, Types of datasets, Introduction to
classification. Decision trees - Hunt‘s algorithm, GINI index, ID3, C4.5,
Tree pruning. KNN, Naïve Bayes (Multinomial NB, Gaussian NB).

Module 2 SVMs and Ensemble Learning: SVM – Linear classifier, Margin of SVM, 10
SVM parameter tuning, handling class imbalance in SVM. Ensemble
Learning – Majority voting, Bagging, Random forest, Boosting,
Stacking. Gradient boosted machines (GBM).
Module 3 Artificial Neural Networks (ANNs): MP Neuron, Perceptron, Sigmoid 14
neuron, decision boundary for a single neuron, 6 elements of ML – Data,
task, model, loss function, learning algorithm, evaluation. Feed forward
Neural Networks, Back propagation. Optimization algorithms: GD,
Momentum based GD, SGD, Mini-batch GD
Linear regression and Logistic Regression: Linear regression: regression
task, regression vs. classification. Multiple linear regression. Ridge
regularization, Lasso regularization, Elastic net regularization, evaluation
185
metrics and practical considerations for regression. Logistic regression:
regression for classification. decision boundary.
Module 4 Clustering, Dimensionality Reduction and ML case studies: Clustering: 8
K-means, hierarchical agglomerative clustering, applications of
clustering, evaluation of cluster quality, ensemble methods for clustering.
Dimensionality Reduction: PCA, LDA

Books and References:


1. Harrington, Peter (2012), ―Machine learning in action‖, Manning Publications Co.
2. Tom Mitchell, Machine Learning, McGraw Hill, 1997
3. Sergios Theodoridis, Konstantinos Koutroumbas, Pattern Recognition, Academic Press, 2009.
4. Hastie, Tibshirani, Friedman, The Elements of Statistical Learning, Springer, 2001.
5. E them ALPAYDIN (2004), ―Introduction to Machine Learning‖, The MIT Press.
6. Bishop, C. M. (2007), ―Pattern recognition and machine learning‖, New York: springer.

186
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Computer Graphics CST052 2-1-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None.

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Demonstrate an understanding of contemporary graphics hardware 4
and of basic terminology, scope and techniques of Computer
Graphics.
CO2 Demonstrate and implement the 2D primitive drawing algorithms. 3
CO3 Demonstrate area filling algorithms, line/ Polygon clipping along 3
with various 2D transformations 2D viewing and Coordinate
representations.
CO4 Understand the 3D graphic primitives along with various 5
Transformations and Other algorithms and Projection Techniques
for representing 3D graphic objects

Detailed Syllabus:

Module No Contents Hours

Module 1 Introduction: Coordinate representation, Pixel, Raster Scan & Random 10


Scan methods, colour CRT Raster scan basics, video basics, interactive
devices, graphics input and output devices, mouse, track ball, light pen,
digitizer, thumb wheel, raster scan graphics.
Module 2 Graphics Primitives: 2D Primitives - Output primitives – Line, Circle 10
and Ellipse drawing algorithms - Attributes of output primitives – Two
dimensional Geometric transformation - Two dimensional viewing –Line,
Polygon, Curve and Text clipping algorithms.
Module 3 Parallel and Perspective projections: Three dimensional object 12
representation –Polygons, Curved lines, Splines, Quadric Surfaces-
Visualization of data sets - 3D transformations – Viewing -Visible surface
identification. Basic Raster Graphics Algorithms. Geometric Modelling in
3- D. Viewing in 3-D. Concept of Synthetic Camera. Dialogue Design.

187
Graphics User Interfaces. Windowing Systems.

Rendering: Introduction to Shading models – Flat and Smooth shading –


Adding texture to faces – Adding shadows of objects – Building a camera
in a program – Creating shaded objects – Rendering texture – Drawing
Shadows, Graphical Modelling of Discrete events.
Module 4 Introduction to Picture Synthesis and Analysis: Conceptual 10
Framework of an Interactive Graphical Simulation System. Simulation of
Discrete Event Displays, Animation Techniques, Basic Rules for
Animation. Graphical Simulation of continuous motion. Role of Virtual
Reality in Graphical Simulation.

Books Recommended:
1. Hearn, D. (1997). Computer graphics, C version. Pearson Education India.
2. Preparata, F. P., & Shamos, M. I. (2012). Computational geometry: an introduction. Springer
Science & Business Media.

References:
1. Rogers, D. F. (1986). Procedural elements for computer graphics. McGraw-Hill, Inc...
2. Rogers, D. F., & Adams, J. A. (1989). Mathematical elements for computer graphics. McGraw-
Hill, Inc.
3. Blandford, A. E. (1987). Computer graphics: Roy A. Plastock and Gordon Kalley. McGraw-Hill,

188
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Advanced Data CST053 2-1-0-3
Structures
Mid-Term Internal Assessment End-Term
Evaluation Policy
26 Marks 24 Marks 50 Marks

Pre-requisites: Data Structures (CST250)

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Apply the concept of Abstract Data Types, Mathematical 3
preliminaries and other performance measures for data structures.
CO2 Explore tree data structures and applications of various tree data 4
structures.
CO3 Review of Heap and its types and corresponding properties . 4
CO4 Understanding of Disjoint Set Data Structures and Amortized 5
Analysis

Detailed Syllabus:

Module No Contents Hours

Module 1 Introduction: Abstract data types; Data Representation; Elementary data 8


types; Basic concepts of data Structures; Mathematical preliminaries -
big-Oh notation; efficiency of algorithms; notion of time and space
complexity; performance measures for data structures. Skip Lists.

Module 2 Tree data structures: Binary Trees, Application of Binary Trees 12


(Huffman Coding).Understanding Binary Search Trees, Balanced Trees,
AVL Trees, Red Black Trees, m-way search trees, B-Tree, 2-3 Trees, 2-3-
4 Trees.

Introduction to Splay Trees, Leftist Trees. Tries and pattern matching,


Suffix Trees, k-d trees, Segment trees and their application.
Module 3 Heaps: Review of Heap and Heap Properties. Introduction to different 10
types of Heaps and their properties: Binomial Heaps, Fibonacci Heaps,
Leftist Heaps, Deaps, Treaps. Binomial Queues.
Module 4 Disjoint Set Data Structure 4
Module 5 Amortized Analysis 8

189
Books and References:
1. Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest and Clifford Stein (2009),
Introduction to Algorithms, Third Edition, MIT Press.
2. Bhagat Singh, Thomas L. Naps (1985). Introduction to Data Structures. Thomson Learning
3. Sartaj Sahni (1998), ―Data structures, Algorithms and Applications in C++ ―, McGraw Hill.
4. E. Horowitz, S. Sahni (2008), ―Fundamentals of Data Structures‖, Computer Science Press
5. Narasimha Karumanchi (2016), Data Structures and Algorithms Made Easy: Data Structure and
Algorithmic Puzzles, Second Edition, Career Monk publisher.
6. Seymour Lipschutz (2017), ―Data Structures with C‖, (Schaum's Outline Series), McGraw Hill.

190
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Numerical Methods MTH707 3-0-0-3

Evaluation Policy Mid-Term Internal Assessment End-Term


26 Marks 24 Marks 50 Marks

Pre-requisites: None

Course Outcomes: At the end of the course, the student will be able to:

CO No. Course Outcomes Bloom’s


Taxonomy Level
CO1 Understand the principles and techniques of numerical analysis. 2
CO2 Explore numerical methods for solving equations, interpolation, 4
and numerical integration.
CO3 Develop skills in implementing numerical algorithms using 4
computational tools.
CO4 Apply numerical methods to solve mathematical problems and 3
simulate real-world phenomena accurately and efficiently.

Detailed Syllabus:

Module No Contents Hours

Module 1 Linear Algebra: Matrices, Matrics decomposition: LU decomposition, 12


Cholesky decomposition, spectral decomposition, Matrix Eigen-value
problem, Gerchgorin‘s theorem, Eignen value by iteration, generalized
inverse of a matrix, solution of linear system by decomposition method,
Jacobi method.
Module 2 Nonlinear system of equations: Newton‘s method, Powel Hybrid method. 10
Differential equations: Generalised characteristic value problems, phase
plane and critical points, stability and phase plane methods in nonlinear
equations. Boundary value problems, mixed boundary conditions,
boundary conditions at infinity, nonlinear boundary value problems,
linear eigen value problems.
Module 3 Differential Equations: Taylor series method, Euler method, Runge-Kutta 10
method. Numerical solutions to Partial Differential Equations: Second
order quasi-linear equations, numerical solutions.

Module 4 Approximate Analytic methods: Variational methods, weighted residual 10


methods – Galerkin‘s method, collocation method, Functional, quadratic
191
functionals. Numerical Integration – Gauss Legendre, Quadrature, Error
Analysis, Convergence of solution. Finite element and Boundary element
method.

Books and References:


1. Chapra, Steven C.; Canale, Raymond P. (2014), "Numerical Methods for Engineers", McGraw-
Hill Education
2. Quarteroni, Alfio; Saleri, Fausto (2014), "Scientific Computing with MATLAB and Octave",
Springer
3. Kincaid, David; Cheney, Ward (2002), "Numerical Mathematics and Computing", Cengage
Learning
4. Heath, Michael T. (2002), "Scientific Computing: An Introductory Survey", McGraw-Hill
Education
5. Trefethen, Lloyd N.; Bau, David (1997), "Numerical Linear Algebra", SIAM

192
Department of Computer Science & Engineering
National Institute of Technology Srinagar
Year (Semester) Course Title Course Code L-T-P-Credits
Operations Research MAT-002 3-0-0-3
Evaluation Policy Mid-Term Internal Assessment End-Term
26 Marks 24 Marks 50 Marks

Pre-requisites: A student should have basic knowledge of Matrix Theory.


Course Outcomes: At the end of the course, a student should be able to:
CO Course Outcome Blooms
No. Taxonomy
Level
CO1 Formulate LPP‘s and apply various optimization methods for solving these. 6
CO2 Solve transportation problems using different optimization methods. 3
CO3 Solve assignment problems using different optimization techniques. 3
CO4 Solve problems related to game theory. 3

Syllabus

Module No. Contents Hours

Module 1 Introduction to Operations Research: Basics definitions, Scope, 10


Objectives, Linear Programming Problem (LPP), Formulation of LPP,
Graphical solution of LPP, Simplex Method, Artificial variables, Big-M
method, Two-phase method, degeneracy and unbounded solutions.
Module 2 Transportation Problem. Formulation, balanced solution and unbalanced 10
Transportation problems. Finding basic feasible solutions – Northwest
corner rule, Least cost method and Vogel‘s approximation method.
Optimality test: the stepping stone method and MODI method.
Module 3 Assignment problem, Formulation, Hungarian method for optimal 12
solution. Solving unbalanced problem. Travelling salesman problem and
assignment problem, Sequencing models, Solution of Sequencing
Problem – Processing n Jobs through 2 Machines – Processing n Jobs
through 3 Machines – Processing 2 Jobs through m machines.
Replacement model

193
Module 4 Game Theory: Introduction to Game theory, Two-person zero sum 10
games. Dominance, Graphical method for ( and games,
Matrix methods for games.

Recommended Books:
1. S. D. Sharma, Operations Research, 17th Edition, KNRN publishers, (2014).
2. H. A. Taha, Operations Research-An Introduction, 10th Edition, Pearson Education India, (2017).

194

You might also like