Curriculum 3 - 8 Semester July 2023 Admissions Onwards: Department of Computer Science and Engineering
Curriculum 3 - 8 Semester July 2023 Admissions Onwards: Department of Computer Science and Engineering
CURRICULUM
[Link]. in
COMPUTER SCIENCE AND ENGINEERING
I
VISION
To be recognized globally for imparting computer science education and research of high
distinction, both of value and relevance to society.
MISSION
M1: To impart contemporary knowledge and skill relevant to the field of Computer
Science and Engineering to maximize employability and potential.
M2: To strengthen multifaceted competence in the different core and allied areas of
Computer Science in order to nurture creativity, innovations and out-of-the-box
thinking.
M3: To promote research and expertise in Computer Science and Engineering in order
to serve the needs of Industry, Government and Society and motivate the students for 5
M4: To inculcate ethical, human, and social values through co-curricular and extra–
curricular activities for holistic nation building.
II
Program Educational Objectives
PEO-3: To make the students understand, design and implement the concepts in
multiple arenas.
PEO-4: To foster holistic growth of students that would provide ample E2 opportunities.
III
Program Outcomes
IV
Program Specific Outcomes
PSO-1: Analyse, design, develop, evaluate and apply mathematical basics, data
structures and algorithms for modeling computer hardware/software to solve real-world
and interdisciplinary research problems.
PSO-2: Demonstrate contemporary technologies, data analysis and computing skills for
effective interpretation and decision making in the sustainable development of the
society.
V
3rd Semester
Teaching
S. Course Load Course
Course Title Credit
No Code Type
L T P
1 CSDC0201 Data Structures and Algorithms 3 0 0 3 DC
2 CSDC0203 Object Oriented Programming 3 0 0 3 DC
3 CSDC0205 Computer Organization and Architecture 3 0 0 3 DC
4 CSDC0207 Data Visualization for Product Design 3 1 0 4 DC
5 CSDC0209 Probability and Statistics 3 1 0 4 DC
Business Economics and Financial
6 HMDC0201 3 0 0 3 DC
Accounting
Data Structures and Algorithms Laboratory
7 CSDC0231 0 0 3 2 DC
8 CSDC0233 Object Oriented Programming Laboratory 0 0 2 1 DC
Computer Organization and Architecture
9 CSDC0235 0 0 2 1 DC
Laboratory
Data Visualization for Product Design
10 CSDC0237 0 0 2 1 DC
Laboratory
TOTAL 18 2 9 25
4th Semester
Teaching
S. Course Load Course
Course Title Credit
No Code Type
L T P
1 CSDC0202 Database Management Systems 3 0 0 3 DC
2 CSDC0204 Design and Analysis of Algorithms 3 0 0 3 DC
3 CSDC0206 Computer Networks 3 0 0 3 DC
4 CSDC0208 Formal Language and Automata Theory 3 1 0 4 DC
5 ECDC0214 Microprocessor and Microcontroller 3 0 0 3 DC
6 PDFE0xxx Foundation Elective 1 0 0 1 FE3
Database Management Systems
7 CSDC0232 0 0 2 1 DC
Laboratory
Design and Analysis of Algorithms
8 CSDC0234 0 0 3 2 DC
Laboratory
9 CSDC0236 Computer Networks Laboratory 0 0 2 1 DC
Microprocessor and Microcontroller
10 ECDC0244 0 0 2 1 DC
Laboratory
TOTAL 16 1 9 22
6
Offered as Foundation Elective - 3
Offered to Biotechnology
Offered to ICE
Offered to EE
7
5th Semester
Teaching
S. Load Course
Course Course Title Credit
No Type
Code L T P
1 CSDC0301 Artificial Intelligence 3 0 0 3 DC
2 CSDC0303 Compiler Design 3 0 0 3 DC
3 CSDC0305 Operating Systems 3 0 0 3 DC
4 CSDC0307 Data Mining and Analytics 3 0 0 3 DC
5 CSDE03XX/ Department Elective – I/ 3 0 0 3 DE/GE
XXGE03XX Generic Elective - I
6 CSDC0333 Compiler Design Laboratory 0 0 2 1 DC
7 CSDC0335 Operating Systems Laboratory 0 0 2 1 DC
8 CSDC0337 Data Mining and Analytics Laboratory 0 0 2 1 DC
9 CSTR0300 Industrial Practical Training (after 4thSem) 0 0 0 2 TR
10 CSPR0301 Project-1 (Phase-I) 0 0 2 2 PR
TOTAL 15 0 8 22
6th Semester
Teaching
S. Load Course
Course Course Title Credit
No Type
Code L T P
Computer Graphics and Image
1 CSDC0302 3 0 0 3 DC
Processing
2 CSDC0304 Information Security Systems 3 0 0 3 DC
3 CSDC0306 Machine Learning 3 0 0 3 DC
4 CSDC0308 Software Engineering 3 0 0 3 DC
CSDE03XX/ Department Elective – 2/ Generic Elective -
5 3 0 0 3 DE/GE
XXGE03XX 2
Computer Graphics and Image
6 CSDC0332 0 0 2 1 DC
Processing Laboratory
7 CSDC0334 Information Security System Laboratory 0 0 2 1 DC
8 CSDC0336 Machine Learning Laboratory 0 0 2 1 DC
9 CSDC0338 Software Engineering Laboratory 0 0 2 1 DC
10 CSPR0302 Project-1 (Phase-II) 0 0 2 2 PR
TOTAL 15 0 10 21
8
List of Department Electives for 3rd year
S. Teaching Course
No Course Course Title Load Credit Type
Code L T P
1. CSDE0302 Advanced DBMS 3 0 0 3 DE
9
7th Semester
Teaching
S. Load Course
Course Code Course Title Credit
No Type
L T P
CSDE04XX/ Department Elective – 3/
1 3 0 0 3 DE/GE
XXGE04XX Generic Elective
CSDE04XX/ Department Elective – 4/
2 3 0 0 3 DE/GE
XXGE04XX Generic Elective
CSDE04XX/ Department Elective – 5/
3 3 0 0 3 DE/GE
XXGE04XX Generic Elective
Industrial Practical Training
4 CSTR0400 0 0 0 3 TR
(after 6th Sem)
5 CSPR0401 Project-2 0 0 8 4 PR
TOTAL 9 0 8 16
8th Semester
Teaching
S. Load Course
Course Code Course Title Credit
No Type
L T P
CSDE04XX/ Department Elective – 6/ Generic
1 3 0 0 3 DE/GE
XXGE04XX Elective
CSDE04XX/ Department Elective – 7/ Generic
2 3 0 0 3 DE/GE
XXGE04XX Elective
CSDE04XX/ Department Elective – 8/ Generic
3 3 0 0 3 DE/GE
XXGE04XX Elective
4 CSPR0402 Project-2 0 0 8 4 PR
TOTAL 9 0 8 13
10
List of Department Electives for 4th year
Teaching
S. No Specialization Course Code Course Title Load Credit
L T P
CSDE0401/ Computer Vision 3 0 0 3
1.
CSDC0309
CSDE0402/ Deep Learning 3 0 0 3
2. Artificial CSDC0310
3. Intelligence CSDE0403 Reinforcement Learning 3 0 0 3
4. CSDE0404 Modern AI tools 3 0 0 3
5. CSDE0406 Human-Computer Interaction 3 0 0 3
6. CSDE0407 Big data analytics 3 0 0 3
7. Data Analytics CSDE0408 Social Network Analysis 3 0 0 3
8. CSDE0409 Optimization Techniques 3 0 0 3
CSDE0410 Software Quality Assurance and 3 0 0 3
9. Automation Testing
Software
10. Engineering CSDE0411 Software Engineering Ethics and Tools 3 0 0 3
11. CSDE0412 Green Computing 3 0 0 3
CSDE0413 Evolution of Advanced Wireless 3 0 0 3
12. Networks
CSDE0414 5G Networks: Architecture,
13. Computer Technologies, and Applications 3 0 0 3
Networks
14. CSDE0415 Industry 4.0 3 0 0 3
15. CSDE0416 Blockchain Architecture & Use Cases 3 0 0 3
Information CSDE0417 Ethical Hacking and Penetration 3 0 0 3
16. Security Testing
17. Soft CSDE0418 Soft Computing Techniques 3 0 0 3
18. Computing CSDE0419 Evolutionary Algorithms 3 0 0 3
19. CSDE0421 Internet of Things Concepts 3 0 0 3
20. Internet of CSDE0422 Real-time systems 3 0 0 3
21. Things CSDE0423 Embedded Systems 3 0 0 3
22. CSDE0424 Intelligent Robotics 3 0 0 3
23. CSDE0425 Distributed Systems 3 0 0 3
24. Parallel and CSDE0426 Edge and Fog Computing 3 0 0 3
25. Distributed CSDE0427 Quantum Computing 3 0 0 3
26. Computing CSDE0428 High-Performance Computing 3 0 0 3
27. CSDE0429 Digital Marketing 3 0 0 3
28. CSDE0430 Computational Complexity 3 0 0 3
Other
29. CSDE0431 Drone Technology 3 0 0 3
11
List of Generic Electives for 4th year
Teaching
S. Load
Course Code Course Title Credit
No
L T P
CSGE0461 Computer Vision Concepts
1. 3 0 0 3
CSGE0462
2. Machine Learning Concepts 3 0 0 3
CSGE0463 Deep Learning Concepts
3. 3 0 0 3
12
3rd Semester
Teaching
S. Course Load Course
Course Title Credit
No Code Type
L T P
1 CSDC0201 Data Structures and Algorithms 3 0 0 3 DC
2 CSDC0203 Object Oriented Programming 3 0 0 3 DC
3 CSDC0205 Computer Organization and Architecture 3 0 0 3 DC
4 CSDC0207 Data Visualization for Product Design 3 1 0 4 DC
5 CSDC0209 Probability and Statistics 3 1 0 4 DC
Business Economics and Financial
6 HMDC0201 3 0 0 3 DC
Accounting
Data Structures and Algorithms Laboratory
7 CSDC0231 0 0 3 2 DC
8 CSDC0233 Object Oriented Programming Laboratory 0 0 2 1 DC
Computer Organization and Architecture
9 CSDC0235 0 0 2 1 DC
Laboratory
Data Visualization for Product Design
10 CSDC0237 0 0 2 1 DC
Laboratory
TOTAL 18 2 9 25
1
CSDC0201 Data Structures and Algorithms [3 0 0 3]
Course Contents
Course Outcomes
CO1: Understand the concepts of data structures, algorithm and analyse their time complexity.
CO2: Apply sequential data structures e.g. Array and Linked list to solve basic problems.
CO3: Apply and analyze stack and queue data structures to solve practical problems in real-life
scenarios.
CO4: Apply variety of data structures, including trees, graphs, and hashing techniques, to address
diverse and complex real-time computing problems.
2
Course
Programme Outcomes
Outcomes
PO PO PO PO PO PO PO PO PO PO PO PO PS PS
1 2 3 4 5 6 7 8 9 10 11 12 O1 O2
CO1 2 3 2 3 2 1 3 1
CO2 2 1 2 1 1 3
CO3 3 2 3 3 2 2 3 3 1
CO4 3 2 3 3 2 2 3 3 1
1 – Low, 2 – Medium, 3 – High
Recommended Books
1. Cormen, Thomas H., et al. Introduction to Algorithms. 4th ed., The MIT Press, 2022.
2. Tenenbaum, Aaron M., Yedidyah Langsam, and Moshe J. Augenstein. Data Structures Using
C. 1st ed., Pearson Education, 2019.
3. Forouzan, Behrouz A., and Richard F. Gilberg. C Programming and Data Structures. 3rd ed.,
Cengage Learning India Pvt. Ltd., 2022.
4. Horowitz, Ellis, and Sartaj Sahni. Fundamentals of Data Structures in C++. 2nd ed.,
Universities Press, 2008.
5. Lipschutz, Seymour. Data Structures. 2nd ed., McGraw Hill, 2014.
3
CSDC0203 Object Oriented Programming [3 0 0 3]
Course Contents
4
Course Outcomes
CO1: Understand the significance of object-oriented programming and distinguish it from
procedural programming.
CO2: Utilize C++ stream classes for various input and output operations effectively.
CO3: Analyze and implement functions and classes, including function prototyping and member
functions within classes.
CO4: Evaluate and implement constructors, destructors, and operator overloading techniques in
C++ programming.
CO5: Apply inheritance, polymorphism, and exception-handling concepts to solve complex
programming problems.
PO PO PO PO PO PO PO PO PO PO PO PO PSO PSO
1 2 3 4 5 6 7 8 9 10 11 12 11 12
CO1 1 1 1 2 2 2 1
CO2 2 2 2 2 1 1 1
CO3 2 2 3 2 2 1 1 3 1
CO4 2 2 2 2 3 1 1 2 2
CO5 2 2 3 3 1 2 2 1 1 2 2 3 2
Recommended Books
1. Balagurusamy, E. Programming in ANSI C++. 7th ed., Tata McGraw-Hill Education, 2019.
2. Lafore, Robert. Object-Oriented Programming in C++. 5th ed., Pearson Education, 2019.
3. Stroustrup, Bjarne. Programming: Principles and Practice Using C++. Pearson Education,
2014.
4. Lippman, Stanley B., Josée Lajoie, and Barbara E. Moo. C++ Primer. 5th ed., Addison-Wesley,
2013.
5. Meyers, Scott. Effective Modern C++: 42 Specific Ways to Improve Your Use of C++11 and
C++14. O'Reilly Media, 2014.
5
CSDC0205 Computer Organization and Architecture [3 0 0 3]
Course Contents
Unit 1: Introduction
Historical background, Architectural and Technological development, Performance measures.
Functional Units of a computer: CPU, Memory, Input-output subsystems, and Control Unit.
Unit 5: Input/Output
External devices, Input/Output function, Interrupts, Programmed Input/Output, Interrupt-Driven
Input/Output.
Course Outcomes
CO1: Understand the fundamentals of computer organization and its relevance to classical and
modern problems of computer design.
CO2: Understand the architecture and functionality of the central processing unit.
CO3: Analyze various caching and memory system architectures.
CO4: To understand how I/O devices communicate with the Processing Unit.
Course
Programme Outcomes
Outcomes
PO PO PO PO PO PO PO PO PO PO PO PO PS PS
1 2 3 4 5 6 7 8 9 10 11 12 O1 O2
CO1 3 1 2 1
CO2 3 1 2 1
CO3 3 2 2 2 2 1
CO4 3 2 2 2 2 1
1 – Low, 2 – Medium, 3 - High
6
Recommended Books
1. Hennessy, John L., and David A. Patterson. Computer Architecture: A Quantitative Approach.
7th ed., Morgan Kaufmann, 2025.
2. Stallings, William. Computer Organization and Architecture. 11th ed., Pearson Education,
2022.
3. Hamacher, V. Carl, Zvonko G. Vranesic, Safwat G. Zaky, and Naraig Manjikian. Computer
Organization. 6th ed., McGraw-Hill Education, 2012.
4. Shiva, Sajjan G. Computer Organization, Design, and Architecture. 5th ed., CRC Press, 2014.
5. Sarangi, S. R. Computer Organisation and Architecture. McGraw Hill India, 2014.
6. Mano, M. Morris. Computer System Architecture. 3rd ed., Pearson Education, 2017.
7
CSDC0207 Data Visualization for Product Design [3 1 0 4]
Course Contents
Unit 1: Introduction
Data Types: Nominal, Binary, Ordinal, Numeric, Discrete, and Continuous, Value for visualization,
Categorical, time series, and statistical data graphics, Introduction to Visualization Tools, Statistics of
Data, Similarity & Distance Measures.
Course Outcomes
CO1: Understand the key techniques and theory used in visualization, including data models,
graphical perception, and techniques for visual encoding and interaction.
CO2: Analyse several common data domains and corresponding analysis tasks, including multivariate
data, networks, text, and cartography.
CO3: Apply the gained knowledge to build and evaluate visualization systems.
8
Course
Programme Outcomes
Outcomes
PO PO PO PO PO PO PO PO PO PO PO PO PS PS
1 2 3 4 5 6 7 8 9 10 11 12 O1 O2
CO1 2 2
CO2 3 3 1 1 1 1
CO3 3 3 2 2 3 2 1 1
1 – Low, 2 – Medium, 3 – High
Recommended Books
1. Tufte, Edward R. The Visual Display of Quantitative Information. 2nd ed., Graphics
Press, 2001.
2. Healy, Kieran. Data Visualization: A Practical Introduction. Princeton University Press,
2019.
3. Wilke, Claus O. Fundamentals of Data Visualization: A Primer on Making Informative
and Compelling Figures. O’Reilly Publications, 2019.
4. Knaflic, Cole Nussbaumer. Storytelling with Data: A Data Visualization Guide for
Business Professionals. John Wiley & Sons, 2015.
5. Han, Jiawei, Jian Pei, and Hanghang Tong. Data Mining: Concepts and Techniques.
Morgan Kaufmann, 2022.
9
CSDC0209 Probability and Statistics [3 1 0 4]
Course Contents
10
Course Outcomes
CO1: To develop a solid foundation in probability theory and its applications in data analytics.
CO2: To understand the principles and properties of probability distributions and random variables.
CO3: To learn statistical techniques for data analysis, inference, and hypothesis testing.
CO4: To gain proficiency in applying probability theory to model uncertainty and make informed
decisions in data-driven contexts.
Course
Programme Outcomes
Outcomes
PO PO PO PO PO PO PO PO PO PO PO PO PS PS
1 2 3 4 5 6 7 8 9 10 11 12 O1 O2
CO1 2 2 1 1
CO2 1 2 2 2 2 2 2 3
CO3 1 3 2 1 2 3
CO4 2 2 3 3 2 3 3 2 3
1 – Low, 2 – Medium, 3 – High
Recommended Books
1. Walpole, Ronald E., et al. Probability & Statistics for Engineers & Scientists. 10th ed., Pearson,
2020.
2. Devore, Jay L. Probability and Statistics for Engineering and the Sciences. 9th ed., Cengage
Learning, 2015.
3. Blitzstein, Joseph K., and Jessica Hwang. Introduction to Probability. 2nd ed., CRC Press, 2019.
4. Wasserman, Larry. All of Statistics: A Concise Course in Statistical Inference. Springer, 2004.
5. Myers, Raymond H., Sharon L. Myers, and Keying Ye. Classical and Modern Regression with
Applications. 2nd ed., Duxbury Press, 2012.
11
HMDC0201 Business Economics and Financial Accounting [3 0 0 3]
Course Contents
Course Outcomes
CO1: Apply the concepts of business economics in decision-making.
CO2: Understand basic accounting concepts, such as double-entry bookkeeping, the
accounting equation, debits and credits, and accrual accounting.
CO3: Create the financial statements.
CO4: Analyze accounting statements to evaluate, compare, and contrast a company's financial
position, performance, and cash flow.
12
Course Programme Outcomes
Outcomes
PO PO PO PO PO PO PO PO PO PO PO PO PSO PS
1 2 3 4 5 6 7 8 9 10 11 12 1 O2
CO1 3 2 2
CO2 3
CO3 3 2
CO4 3 3 2 3 2
Recommended Books
1. Hirschey, Mark. Managerial Economics. 16th ed., Cengage Learning India, 2022.
2. McConnell, Campbell R., Stanley L. Brue, Sean M. Flynn, and B. R. Chaudhuri.
Economics. 22nd ed., McGraw Hill Education (India), 2021.
3. Arora, R. K. Financial Accounting: Fundamentals, Analysis and Reporting. 2nd ed., Wiley
India Pvt. Ltd., 2018.
4. Ramachandran, N., and R. K. Kakani. Financial Accounting for Management. McGraw Hill
Education.
5. Narayanswamy, R. Financial Accounting: A Managerial Perspective. 6th ed., PHI Learning,
2017.
13
CSDC0231 Data Structures and Algorithms Laboratory [0 0 3 2]
List of Experiments
1. Write a program to implement basic operations on 1D array e.g. Insertion, Deletion, Traversal, and
Searching. Write a program to rearrange the array so that all negative numbers come before positive
numbers.
2. Write a program to implement basic operations on 2D array/ Matrix e.g. Addition, Subtraction,
Multiplication, Transpose. Write a program to calculate inverse of matrix.
3. Write a program using dynamic variable & pointers to implement insertion and deletion operation
on a singly linked list consisting of the following information in each node. Student id (integer),
student name (character string) & semester (integer). Write a program to search the data in above
list using given student id.
4. Write a program to implement basic operations on doubly Linked List e.g. Insertion, Deletion,
Traversal, and Searching. Write a program to rotate a single linked list by n positions.
5. Write a program to implement push, pop, and display operations on stack of integers. The program
should print appropriate messages for stack overflow, stack Underflow & stack empty.
6. Write a c program to evaluate a valid postfix expression using a Stack, assume that the suffix
/postfix expression is read as a single line consisting of non-negative single digit operands & binary
arithmetic operands. The arithmetic operators are + (ADD), - (subtract), *(multiply) & / (divide).
7. Implementation of queue data structure using array and linked list with the basic functions of
Create(), IsEmpty(), Insert(), Delete() and IsFull().
8. Implementation of stack operations to convert a given infix expression into its equivalent postfix
expression. Implement the stack using an array. Write a program to implement basic operations of
stack using queue data structure.
9. Write a program to construct a binary search tree of integers and traverse the tree using all the
methods i.e. inorder, preorder & Postorder to display the elements in the tree.
10. Write a program to implement Breadth-First Search (BFS) and Depth-First Search (DFS)
algorithms.
11. Implementation of Kruskal and Prims Minimal Spanning Tree algorithms.
12. Write a modified version of DFS algorithm to print all the connected components of a graph.
13. Implement various advanced data structures such as min/max heaps and Hash tables.
14. Write a program to build a hash and map the values by incorporating collision resolution
techniques.
*Mini Project may also be planned & carried out throughout the semester to understand the
important various concepts of Data Structures and Algorithms.
*This is only the suggested list of Practical’s. Instructor may frame additional Practical’s relevant to
the course contents
14
Course Outcomes
CO1: Apply sequential data structures e.g. Array and Linked list to solve basic problems.
CO2: Apply and analyse stack and queue data structures to solve practical problems in real-life
scenarios.
CO3: Apply variety of data structures, including trees, graphs, and hashing techniques, to address
diverse and complex real-time computing problems.
Course
Programme Outcomes
Outcomes
PO PO PO PO PO PO PO PO PO PO PO PO PS PS
1 2 3 4 5 6 7 8 9 10 11 12 O1 O2
CO1 2 1 2 1 1 3
CO2 3 2 3 3 2 2 3 3 1
CO3 3 2 3 3 2 2 3 3 1
1 – Low, 2 – Medium, 3 – High
15
CSDC0233 Object Oriented Programming Laboratory [0 0 2 1]
List of Experiments
1. Write programs to demonstrate array manipulation, function usage, and structure implementation.
2. Experiment with manipulators, reference variables, and call-by-reference in C+ + programs.
3. Write programs to define, instantiate, and utilize classes and objects in C++.
4. Develop programs to showcase default, parameterized, and copy constructors, along with
destructors.
5. Write programs to demonstrate friend functions, friend classes, and the concept of an empty class.
6. Implement unary operator overloading using both member and friend functions for user-defined
classes.
7. Implement binary operator overloading using both member and friend functions for user-defined
classes.
8. Develop programs to demonstrate the conversion from basic to custom data types and vice versa.
9. Implement single inheritance to create derived classes that inherit attributes and behaviors from
a single base class.
10. Implement multiple inheritance and its complexities, including the use of virtual inheritance to
resolve ambiguities.
11. Hands-on exercises and coding sessions to implement inheritance relationships and utilize derived
classes in practical programs.
12. Implementing virtual functions in base and derived classes to demonstrate polymorphic behavior.
13. Explore try-catch blocks, throw statements, and exception specifications for robust error
management. Writing code to handle specific exceptions and ensure program stability.
14. Write programs to perform basic file operations in C+, including reading from files, writing to
files, appending data to files, and ensuring proper file closure, enabling effective data handling
and manipulation in real-world applications.
15. Write programs to create generic classes and functions using templates, and practical sessions
covering STL containers, algorithms, and iterators.
*Mini Project may also be planned & carried out throughout the semester to understand the
important various concepts of Object Oriented Programming.
*This is only the suggested list of Practical. The instructor may frame additional Practical relevant to
the course contents.
16
Course Outcomes
CO1: Understand basic and advanced C++ concepts, including efficient array, function, and
structure manipulation, alongside advanced language features such as manipulators, reference
variables, and call-by-reference, for effective programming.
CO2: Define, instantiate, and utilize classes and objects, including constructors and destructors.
CO3: Apply advanced C++ techniques, such as operator overloading, inheritance, and exception
handling.
CO4: Perform basic file operations in C++, ensuring proper data handling and manipulation.
CO5: Utilize templates and STL containers, algorithms, and iterators for generic programming
tasks.
Course
Programme Outcomes
Outcomes
PO PO PO PO PO PO PO PO PO PO PO PO PS PS
1 2 3 4 5 6 7 8 9 10 11 12 O1 O2
CO1 3 3 3 1 3 1
CO2 2 3 2 3 2 3 1
CO3 2 1 3 2
CO4 2 2 3 2 2 3
CO5 2 2 3 2
1 – Low, 2 – Medium, 3 – High
17
CSDC0235 Computer Organization and Architecture Laboratory [0 0 2 1]
List of Experiments
1. Verify various laws of Boolean Algebra. Implementation of a given Boolean function using logic
gates in both SOP and POS forms.
2. Realize NAND and NOR Gates as universal gates.
3. Implementation of Adders, Subtractors, Multiplexer, and Demultiplexer.
4. Construct different types of Flip-flops and verify their truth tables.
5. Design and verify 4-bit BCD adder.
6. Design and verify 2-bit magnitude comparator.
7. Implementation and verification of Decoder, and Encoder.
8. Demonstrate the working of a BCD-to-7 Segment decoder and to verify the truth table.
9. Design and implement shift registers.
10. Design and implement synchronous and asynchronous counters.
11. To study the operation of Arithmetic and logic Unit using 74181 IC.
12. Implement cache memory approaches in ParaCache Simulator.
* This is only the suggested list of Practical. The instructor may frame additional Practical
relevant to the course contents.
Course Outcomes
CO1: Realize the Boolean function using basic gates in both SOP/POS form.
CO2: Realize different combinational circuits with basic gates.
CO3: Analyse and design sequential digital circuits like flip-flops, registers, counters.
CO4: Explore the architecture and functionality of memory hierarchy.
Course
Programme Outcomes
Outcomes
PO PO PO PO PO PO PO PO PO PO PO PO PS PS
1 2 3 4 5 6 7 8 9 10 11 12 O1 O2
CO1 3 2 2 2 3 3 2
CO2 3 3 2 2 3 3 2
CO3 3 3 2 2 3 3 2
CO4 3 2 2 2 2 3 2
18
CSDC0237 Data Visualization for Product Design Laboratory [0 0 2 1]
List of Experiments
1. Introduction to data visualization using Excel, Python and R.
2. Installation and hands-on exploration of Data Analysis and visualization tools: Power BI,
Knime and Tableau.
3. Import a dataset from any repository and perform data cleaning. To Note: Add steps in
procedure explaining how a dataset has been imported, followed by the steps for data
cleaning.
4. Implement Exploratory Data Analysis techniques on a publicly available dataset.
5. Explore visualization tools for implementing basic plots: Box plot, histogram, heatmap,
Scatter plot.
6. Perform feature engineering: Normalization, Binning. Should contain brief explanations about
each function and their respective inference from the figures.
7. For features of a dataset, analyze the following values along with their inference:
a) correlation (chi-squared test and Pearson’s correlation coefficient)
b) covariance.
8. Demonstrate the following:
a) Analyze time series data using any data visualization tool.
b) Generate a tree map in the tool for any dataset and interpret it.
9. Import required libraries on any data visualization tool required for clustering and
classification.
10. Explain step wise how these libraries can be utilized for various ML algorithms.
11. Generate a data visualization dashboard
*This is only the suggested list of Practical. The instructor may frame additional Practical
relevant to the course contents.
Course Outcomes
CO1: Apply the key techniques and theory used in visualization, including data models, graphical
perception, and techniques for visual encoding and interaction.
CO2: Analyse several common data domains and corresponding analysis tasks, including multivariate
data, networks, text, and cartography.
CO3: Apply the gained knowledge to build and evaluate visualization systems.
Course
Programme Outcomes
Outcomes
PO PO PO PO PO PO PO PO PO PO PO PO PS PSO
1 2 3 4 5 6 7 8 9 10 11 12 O1 2
CO1 2 2
CO2 3 2 1 1 1 1 1
CO3 3 2 1 2 2 2 2 1
1 – Low, 2 – Medium, 3 – High
19
4th Semester
Teaching
S. Course Load Course
Course Title Credit
No Code Type
L T P
1 CSDC0202 Database Management Systems 3 0 0 3 DC
2 CSDC0204 Design and Analysis of Algorithms 3 0 0 3 DC
3 CSDC0206 Computer Networks 3 0 0 3 DC
4 CSDC0208 Formal Language and Automata Theory 3 1 0 4 DC
5 ECDC0214 Microprocessor and Microcontroller 3 0 0 3 DC
6 PDFE0xxx Foundation Elective 1 0 0 1 FE3
Database Management Systems
7 CSDC0232 0 0 2 1 DC
Laboratory
Design and Analysis of Algorithms
8 CSDC0234 0 0 3 2 DC
Laboratory
9 CSDC0236 Computer Networks Laboratory 0 0 2 1 DC
Microprocessor and Microcontroller
10 ECDC0244 0 0 2 1 DC
Laboratory
TOTAL 16 1 9 22
20
CSDC0202 Database Management Systems [3 0 0 3]
Course Contents
Unit 1: Introduction
An overview of the database management system, Database system Vs file system, Database system
concepts and architecture, Data models, Schema and instances, Data independence, Overall Database
Structure, ER model concepts, Notation for ER diagram, Mapping Constraints, Keys, Extended ER
model: Generalization, Specialization and Aggregation, Reduction of ER diagram to tables.
Course Outcomes
CO1: Learn data models, conceptualize, and depict a database system using ER diagram
CO2: Understand and use data manipulation language to query, update, and manage a database
CO3: Apply normalization on the database design to eliminate anomalies
CO4: Do the analysis of database transactions and control them by applying ACID properties
21
Course
Programme Outcomes
Outcomes
PO PO PO PO PO PO PO PO PO PO PO PO PS PS
1 2 3 4 5 6 7 8 9 10 11 12 O1 O2
CO1 2 3 1 2 2 1 2 3
CO2 3 3 2
CO3 3 2 2 2 2 2 3
CO4 2 1 3 3 2 2 2
1 – Low, 2 – Medium, 3 - High
Recommended Books
1. Elmasri, Ramez, and Shamkant B. Navathe. Fundamentals of Database Systems. 7th ed.,
Pearson Education, 2016.
2. Korth, Henry F., Abraham Silberschatz, and S. Sudarshan. Database System Concepts. 7th ed.,
McGraw Hill, 2021.
3. Date, C. J. An Introduction to Database Systems. 8th ed., Addison Wesley, 2020.
4. Desai, Bipin C. An Introduction to Database Systems. Galgotia Publication, 2015.
5. Ramakrishnan, Raghu, and Johannes Gehrke. Database Management Systems. 3rd ed.,
McGraw-Hill, 2002.
22
CSDC0204 Design and Analysis of Algorithms [3 0 0 3]
Course Contents
Course Outcomes
CO1: Understand the theoretical foundations of algorithm design and evaluate various techniques for
analyzing time and space complexity.
CO2: Analyse and apply various algorithm design paradigms and problem-solving techniques.
CO3: Analyse the efficiency and correctness of algorithms using mathematical methods and empirical
analysis.
CO4: Develop proficiency in implementing and evaluating algorithms for solving real-world
problems.
23
Course
Programme Outcomes
Outcomes
PO PO PO PO PO PO PO PO PO PO PO PO PS PS
1 2 3 4 5 6 7 8 9 10 11 12 O1 O2
CO1 3 3 3 1 1 3 3 2
CO2 2 3 3 3 2 1 2 2 3
CO3 2 2 2 2 2 1 3 2 2 3
CO4 2 3 3 3 2 1 3 3 3 3
1 – Low, 2 – Medium, 3 – High
Recommended Books
1. Cormen, Thomas H., Charles E. Leiserson, Ronald L. Rivest, and Clifford Stein. Introduction
to Algorithms. 4th ed., The MIT Press, 2022.
2. Kleinberg, Jon, and Éva Tardos. Algorithm Design. 1st ed., Pearson/Addison-Wesley, 2022.
3. Sedgewick, Robert, and Kevin Wayne. Algorithms. 5th ed., Addison-Wesley, 2021.
4. Levitin, Anany. The Design and Analysis of Algorithms. 3rd ed., Pearson, 2011.
5. Levitin, Anany, and Maria Levitin. Introduction to the Design and Analysis of Algorithms. 3rd
ed., Pearson, 2011.
24
CSDC0206 Computer Networks [3 0 0 3]
Course Contents
Course Outcomes
CO1: Understand the principles of computer networks, including network topologies, layering
models, and protocol functions.
CO2: Explain the functions and services of the network layer, including IP addressing, subnetting,
CIDR, and routing protocols.
CO3: Analyse IP addressing schemes and their role in efficient network design and optimization.
CO4: Evaluate TCP & UDP transport layer protocols for connection management, flow control,
congestion control, and reliability.
25
Course
Programme Outcomes
Outcomes
PO PO PO PO PO PO PO PO PO PO PO PO PS PS
1 2 3 4 5 6 7 8 9 10 11 12 O1 O2
CO1 3 2 2 2 2 1
CO2 3 1 2 2 1 2 2 2
CO3 2 3 3 1 2 1 3 2
CO4 3 3 1 2 2 1 2 2 2
1 – Low, 2 – Medium, 3 – High
Recommended Books
1. Forouzan, Behrouz A. Data Communications and Networking. 6th ed., McGraw Hill, 2022.
2. Stallings, William. Data and Computer Communications. 10th ed., Pearson Education, 2021.
3. Forouzan, Behrouz A. TCP/IP Protocol Suite. 4th ed., McGraw-Hill Higher Education, 2009.
4. Tanenbaum, Andrew S. Computer Networks. 6th ed., Pearson Education India, 2022.
5. Kurose, James F., and Keith W. Ross. Computer Networking: A Top-Down Approach. 9th ed.,
Addison-Wesley, 2025.
26
CSDC0208 Formal Language and Automata Theory [3 1 0 4]
Course Contents
Unit 1: Introduction
Languages and Grammars: Alphabets, Strings and their Properties, Language, Operation on Languages.
Languages and Automata. Grammar, Chomsky Classification of Formal Languages.
Unit 5: Decidability
Decidability, Undecidability, Closure Properties of Recursive and Recursively Enumerable Languages,
Rice’s Theorem, Enumerability, The Halting Problem.
Course Outcomes
CO1: Identify the core concepts in automata theory and formal languages.
CO2: Design automata and grammars for different language classes.
CO3: Analyze formal language classes and prove language membership properties.
CO4: Explain the power and the limitations of regular languages, context-free languages, Recursive,
and Recursive Enumerable Languages.
CO5: Measure analytically and intuitively for problem-solving situations in related areas of theory in
computer science.
27
Course
Programme Outcomes
Outcomes
PO PO PO PO PO PO PO PO PO PO PO PO PSO PSO
1 2 3 4 5 6 7 8 9 10 11 12 1 2
CO1 3 1 2
CO2 2 3 3 1 3 1
CO3 3 2 2 2 3 3
CO4 1 2 2 2 2
CO5 1 3 3 3 2 1 1 2 2
Recommended Books
1. Hopcroft, John E., and Jeffrey D. Ullman. Introduction to Automata Theory, Languages and
Computation. 3rd ed., Pearson Publishers, 2008.
2. Linz, Peter. An Introduction to Formal Languages and Automata. 7th ed., Jones & Bartlett
Learning, 2022.
3. Sipser, Michael. Introduction to the Theory of Computation. 3rd ed., Cengage Learning, 2013.
4. Krithivasan, Kamala. Introduction to Formal Languages, Automata Theory and Computation.
Pearson Education India, 2009.
5. Lewis, Harry R., and Christos H. Papadimitriou. Elements of the Theory of Computation. 2nd
ed., Prentice-Hall, 1997.
28
ECDC0214 Microprocessor and Microcontroller [3 0 0 3]
Course Contents
Unit 1: Number Systems
Computer Number Systems, Codes and Digital Devices: Review of computer number systems,
conversions and codes, Arithmetic operations on binary, HEX, and BCD numbers, Basic digital
devices.
Unit 2: Microprocessors
Computers, Microcomputers and Microprocessors: Computers and Microcomputers, Overview of
microcomputer structure and operation, Insights into 8085 Microprocessor Architecture and its
Programming, 8086 Microprocessor: its Architecture, its Functional diagram, its Register Organization
and Memory Segmentation, its Programming Model, its Memory addresses and Physical Memory
Organization, 8086 Pin Functions, 8086 Addressing Modes and its assembly language instruction set,
its string and flag Control Instructions and operations, Processor Control Instructions, Stack operations,
Programming Examples, Multitasking and Multiprogramming, MIN/MAX Modes.
Unit 4: Microcontrollers
Introduction to 8051 Microcontroller: its architecture and pin diagram, Registers, Flags, Special
Function Registers, Addressing Modes, Data types, assembly language instructions and programming,
Single –bit operations, Timer and Counter, Interrupts, Serial communication.
29
Course Outcomes
CO1: Apply the digital concepts in order to understand the architecture and organization of 16-
bit microprocessor along with instruction coding formats and interrupt applications.
CO2: Understand and write structured and well-commented programs in assembly language with
an ability to test and debug them.
CO3: Analyse the concept of software/ hardware interrupts and to perform I/O using handshaking
and interrupts.
CO4: Understand the architecture and programming model of 8051 microcontroller and its
interfacing applications.
Course
Programme Outcomes
Outcomes
PO PO PO PO PO PO PO PO PO PO PO PO PSO PS
1 2 3 4 5 6 7 8 9 10 11 12 1 O2
CO1 3 3 2 1 2
CO2 2 2 3 2 3 2 1
CO3 1 2 3 2
CO4 2 1 2 2
Recommended Books
30
CSDC0232 Database Management Systems Laboratory [0 0 2 1]
List of Experiments
1. Hands-on practice in creating and modifying database tables using Data Definition Language
(DDL) and Data Manipulation Language (DML) commands.
2. Implementation and enforcement of data integrity constraints such as Primary Key, Foreign Key,
Unique, and Not Null constraints.
3. Writing and executing SQL queries involving aggregate functions, grouping data, and sorting
results using Group By, Having, and Order By clauses.
4. Applying relational algebra operations like UNION, INTERSECT, and MINUS in SQL queries for
data manipulation.
5. Constructing SQL queries to retrieve data from multiple tables using various types of joins
including Equi-Join, Non-Equi-Join, and Outer Join.
6. Formulating SQL queries containing subqueries and nested queries for complex data retrieval.
7. Utilizing advanced SQL query techniques involving subqueries, set operators (ANY, ALL, IN),
and constraints for comprehensive data analysis.
8. Creating and managing database views, indexes, and sequences for efficient data access and
manipulation.
9. Practicing Data Control Language (DCL) and Transaction Control Language (TCL) commands for
managing database security and transactions.
10. Introduction to PL/SQL programming basics, including variables, control structures, and basic
query construction.
11. Writing PL/SQL code with CASE statements, loops, and exception handling mechanisms for
effective database programming.
12. Developing stored procedures and user-defined functions in PL/SQL for modular code reuse and
customization.
13. Designing and implementing database triggers for automatic actions in response to database events.
14. Understanding and utilizing cursors in PL/SQL for iterative processing of query results.
15. Integrating SQL statements within host programming languages for seamless database interaction.
* Students are advised to use Oracle/MySQL or other latest database software for above-listed
experiments.
* Mini Project may also be planned & carried out throughout the semester to understand the
important various concepts of Database.
* This is only the suggested list of Practical’s. Instructor may frame additional Practical’s relevant
to the course contents.
31
Course Outcomes
CO1: Apply DDL and DML commands proficiently, ensuring data integrity with various constraints.
CO2: Execute advanced SQL queries with aggregate functions and subqueries.
CO3: Design and implement database optimizations for performance and security using views,
indexes, and sequences.
CO4: Apply PL/SQL fundamentals for effective transaction management.
CO5: Utilize Embedded SQL in host languages, showcasing advanced database skills through a mini-
project.
Course
Programme Outcomes
Outcomes
PO PO PO PO PO PO PO PO PO PO PO PO PS PSO
1 2 3 4 5 6 7 8 9 10 11 12 O1 2
CO1 2 3 1 2 2 1 3 3 1
CO2 3 3 2 1 2
CO3 3 2 2 2 2 2 1
CO4 2 1 3 2 3 2 1 2
CO5 1 1 2 2 1 1 2 2
32
CSDC0234 Design and Analysis of Algorithms Laboratory [0 0 3 2]
List of Experiments
1. Implement and classical sorting algorithms (insertion sort, selection sort, bubble sort) and
advanced algorithms (merge sort, quick sort, heap sort).
2. Implement linear time sorting algorithms (counting sort, radix sort, bucket sort) and order
statistics algorithms (medians and order statistics).
3. Implement divide and conquer algorithms such as binary search, merge sort, quick sort, closest
pair problem, and Strassen's matrix multiplication algorithm.
4. Implement and analyze greedy algorithms including fractional Knapsack problem, Huffman
coding, Job scheduling, Dijkstra’s algorithm, optimal merge pattern, Articulation point.
5. Implement dynamic programming algorithms using memoization and tabulation techniques for
problems such as the 0-1 knapsack, longest common subsequence, convex hull and matrix chain
multiplication.
6. Implement backtracking algorithms for combinatorial problems such as graph coloring, set
generation, permutations, cliques, Hamiltonian cycles, and N Queen.
7. Implement branch and bound algorithms for optimization problems such as the 0/1 knapsack
problem, job assignment problem, and traveling salesman problem.
8. Study and analyze complexity theory concepts including P vs NP problem, NP-completeness,
NP-hardness, and reduction techniques such as Cook's theorem.
9. Implement various advanced data structures such as Red-Black trees, Binomial Heaps, and
Fibonacci Heaps. Perform operations like insertion, deletion, and search, and analyze their time
complexities.
*Mini Project may also be planned & carried out throughout the semester to understand the
important various concepts of Design and Analysis of Algorithms.
*This is only the suggested list of Practical’s. Instructor may frame additional Practical’s relevant to
the course contents.
Course Outcomes
CO1: Develop practical skills in implementing algorithms and data structures.
CO2: Understand the efficiency and correctness of algorithms through empirical analysis.
CO3: Develop experience in analyzing and evaluating algorithm performance using experimental
methods.
CO4: Apply algorithmic problem-solving techniques to solve real-world problems.
Course
Programme Outcomes
Outcomes
PO PO PO PO PO PO PO PO PO PO PO PO PS PS
1 2 3 4 5 6 7 8 9 10 11 12 O1 O2
CO1 3 3 3 1 1 3 3 2
CO2 2 3 3 3 2 1 2 2 3
CO3 2 2 2 2 2 1 3 2 2 3
CO4 2 3 3 3 2 1 3 3 3 3
1 – Low, 2 – Medium, 3 – High
33
CSDC0236 Computer Networks Laboratory [0 0 2 1]
List of Experiments
1. Hands-on with Network Physical Components (Network Cabling, cable pairing)
2. Introduction to Cisco Packet Tracer/GNS3/Wireshark/NetSim/Mininet/Network
Simulator/OPNET – Cover network devices, cables, and end-devices.
3. Connect a PC to another PC and design a network using a hub/switch. Assign IP addresses and
subnet masks. Implement network topologies.
4. Topology Implementation: Implement Bus, Ring, Mesh, and Hybrid topologies.
5. Implementation of error detection and correction techniques.
6. Implementation of ARQ protocols such as Stop-and-Wait, Go-Back-N and Selective Repeat.
7. Assign IP addresses and subnet masks, use the ping command for connectivity checks, and
observe message flow and configuration status.
8. Network Design Using Routers: Connect two separate networks using a router.
9. Route Configuration: Design static, dynamic, and default route configurations.
10. NAT and PAT Design: Configure Network Address Translation (NAT) and Port Address
Translation (PAT).
11. VLAN Configuration: Design and implement VLANs.
12. Real-world Network Infrastructure: Experience the setup and management of real-world network
infrastructure.
13. Network Programming – IP Handling, Sending Packets, and UDP/TCP Sockets
14. Client/Server Application Implementation
15. Packet Capturing and Analysis: Use monitoring tools for packet analysis.
16. Application Testing: Use network monitoring tools for application testing.
17. Scripting especially Linux/Unix environment may be encouraged.
* This is only the suggested list of practicals. The instructor may frame additional practicals relevant
to the course contents.
Course Outcomes
CO1: Understand the processes involved in setting up and configuring network devices, cables, and
end-end-devices using simulation tools
CO2: Apply routing configurations to connect separate networks and design route configurations,
including static, dynamic, and default routes.
CO3: Create comprehensive network designs that incorporate routers, NAT and PAT, and VLAN
configurations, and simulating real-world network infrastructures.
CO4: Apply knowledge of network programming (IP handling, sending packets, UDP/TCP sockets)
to develop and test network applications.
34
Course
Programme Outcomes
Outcomes
PO PO PO PO PO PO PO PO PO PO PO PO PS PS
1 2 3 4 5 6 7 8 9 10 11 12 O1 O2
CO1 3 3 2 3
CO2 3 3 2 3
CO3 3 3 3 3
CO4 2 3 2 3 3 3
1 – Low, 2 – Medium, 3 – High
35
ECDC0244 Microprocessor and Microcontroller Laboratory [0 0 2 1]
List of Experiments
I. Microprocessor 8086:
Course Outcomes
CO1: Understand and gain the knowledge of computer hardware to configure computer systems
CO2: Understand the concept of 8085 programming and write 8086 ALPs to design an I/O
application. Configure and do various port programming.
CO3: Design and configure 8051 based ALPs and perform port, timers etc. programming. To
implement assembly language programming for 8085, 8086 microprocessors.
CO4: Design 8051 based interfacing application to interface I/O devices.
36
Course
Outcomes Programme Outcomes
CO1 2 1 2 1
CO2 1 2 2 2 1
CO3 2 2 2 2 1 2
CO4 2 3 2 2 2
37
PDFE0201 Information Security [1 0 0 1]
Course Contents
Course Outcomes
CO1: Understand the fundamentals of information security and the CIA triad.
CO2: Identify various security threats and explain their preventive measures.
CO3: Analyze cyber laws and data protection regulations.
CO4: Differentiate cryptographic concepts, authentication methods, and network security principles.
Course
Programme Outcomes
Outcomes
PO PO PO PO PO PO PO PO PO PO PO PO PS PS
1 2 3 4 5 6 7 8 9 10 11 12 O1 O2
CO1 3 2 2 1 2 1
CO2 3 3 2 2 2 2
CO3 3 3 3 2 3 2
CO4 3 3 2 2 2 2 2
38
Recommended Books
1. Stallings, William. Cryptography and Network Security: Principles and Practice. 8th ed.,
Pearson Education, 2024.
2. Kahate, Atul. Cryptography and Network Security. 4th ed., McGraw-Hill, 2019.
3. Pfleeger, Charles P., and Shari Lawrence Pfleeger. Security in Computing. 6th ed., Addison-
Wesley Professional, 2023.
4. Stamp, Mark. Information Security: Principles and Practice. 3rd ed., Wiley, 2021.
5. Information Technology Act, 2000 (No. 21 of 2000) as amended by the Information
Technology (Amendment) Act, 2008 (No. 10 of 2009). Government of India Gazette, 27 Oct.
2009.
6. Digital Personal Data Protection Act, 2023 (No. 22 of 2023). Government of India Gazette, 11
Aug. 2023.
39
CSDC0261 Data Structures Laboratory [0 0 2 1]
List of Experiments
1. Write a program to implement basic operations on 1D array e.g. Insertion, Deletion, Traversal, and
Searching.
2. Write a program to implement basic operations on 2D array/ Matrix e.g. Addition, Subtraction,
Multiplication, Transpose.
3. Write a program using dynamic variable & pointers to implement insertion and deletion operation
on a singly linked list consisting of the following information in each node. Student id (integer),
student name (character string) & semester (integer).
4. Write a program to implement basic operations on doubly Linked List e.g. Insertion, Deletion,
Traversal, and Searching.
5. Write a program to implement push, pop, and display operations on stack of integers. The program
should print appropriate messages for stack overflow, stack Underflow & stack empty.
6. Write a c program to evaluate a valid postfix expression using a Stack, assume that the
suffix/postfix expression is read as a single line consisting of non-negative single digit operands
& binary arithmetic operands. The arithmetic operators are + (ADD), - (subtract), *(multiply) & /
(divide).
7. Implementation of queue data structure using array and linked list with the basic functions of
Create(), IsEmpty(), Insert(), Delete() and IsFull().
8. Write a program to construct a binary search tree of integers and traverse the tree using all the
methods i.e. inorder, preorder & Postorder to display the elements in the tree.
9. Write a program to implement Breadth-First Search (BFS) and Depth-First Search (DFS)
algorithms.
10. Implementation of Kruskal and Prims Minimal Spanning Tree algorithms.
11. Write a modified version of DFS algorithm to print all the connected components of a graph.
12. Write a program to sort a list of N integers using the merge sort, quick sort, insertion sort, Heap
sort algorithm.
* This is only the suggested list of practicals. The instructor may frame additional practicals relevant
to the course contents.
Course Contents
CO1: Apply sequential data structures e.g. Array and Linked list to solve basic problems.
CO2: Apply and analyze stack and queue data structures to solve practical problems in
real-life scenarios.
CO3: Apply variety of data structures, including trees, and graphs to address diverse and complex
real- time computing problems.
CO4: Evaluate different sorting algorithms and their applicability in various contexts. Assess and
select suitable data structures for specific applications.
40
Course
Outcomes Programme Outcomes
P P P P P P P P P P P P PS PS
O O O O O O O O O O O O O O
1 2 3 4 5 6 7 8 9 10 11 12 1 2
CO1 2 3 2 3 2 1 3 1
CO2 2 1 2 1 1 3
CO3 3 2 3 3 2 2 3 3 1
CO4 1 1 1 2 2 3 1
41
5th Semester
Teaching
S. Load Course
Course Course Title Credit
No Type
Code L T P
1 CSDC0301 Artificial Intelligence 3 0 0 3 DC
2 CSDC0303 Compiler Design 3 0 0 3 DC
3 CSDC0305 Operating Systems 3 0 0 3 DC
4 CSDC0307 Data Mining and Analytics 3 0 0 3 DC
5 CSDE03XX/ Department Elective – I/ 3 0 0 3 DE/GE
XXGE03XX Generic Elective - I
6 CSDC0333 Compiler Design Laboratory 0 0 2 1 DC
7 CSDC0335 Operating Systems Laboratory 0 0 2 1 DC
8 CSDC0337 Data Mining and Analytics Laboratory 0 0 2 1 DC
9 CSTR0300 Industrial Practical Training (after 4thSem) 0 0 0 2 TR
10 CSPR0301 Project-1 (Phase-I) 0 0 2 2 PR
TOTAL 15 0 8 22
42
CSDC0301 Artificial Intelligence [3 0 0 3]
Course Contents
Unit 1: Introduction to Artificial Intelligence
Definitions, The foundations of Artificial Intelligence, The History of Artificial Intelligence, The state
of the art. Intelligent: Agents and Environments, The concept of Rationality, The Nature of
Environments, The Structure of Agents.
Unit 2: Problem Solving
Solving Problems by Searching: Problem-Solving Agents, Example Problems, Searching for Solutions,
Uninformed Search, Informed (Heuristic Search), Heuristic Functions. Hill climbing search,
Adversarial search: Game Playing Optimal decision in Games, Mini-max search procedure, Alpha-beta
cut-offs, Constraint Satisfaction Problems.
Unit 3: Knowledge Representation
Logical Agents, Propositional Logic, First order Logic, Inference in First Order Logic: Unification and
Resolution.
Unit 4: Uncertain Knowledge and Reasoning
Quantifying Uncertainty- Acting under uncertainty, Inference using full joint Distributions,
Independence, Bayes Rule. Probabilistic reasoning, representing knowledge in uncertain domain, the
semantics of Bayesian networks, Exact Inference in Bayesian Networks, Approximate Inference in
Bayesian Networks
Unit 5: Case Studies & Trends in AI
Landmark AI case studies (AlphaFold, ChatGPT, AlphaGo, autonomous vehicles, AI in healthcare),
AI in industries (finance, marketing, cybersecurity, legal tech), ethical & societal issues (bias, XAI,
misinformation, privacy), and emerging trends (multimodal AI, neuroscience, sustainability, generalist
AI models.
Course Outcomes
CO1: Analyse and evaluate problems to determine their suitability for AI based solutions
CO2: Apply AI algorithms to formalize a given problem and represent knowledge using various
languages/frameworks
CO3: Understand the fundamental principles underlying various AI algorithms, such as standard
search algorithms or resolution
CO4: Analyse and apply modern tools and technologies to solve real-world problems
Course
Programme Outcomes
Outcomes
PO PO PO PO PO PO PO PO PO PO PO PO PS PS
1 2 3 4 5 6 7 8 9 10 11 12 O1 O2
CO1 3 2 3 3 3 2 2 2 1
CO2 2 3 2 2 3 1 2 2
CO3 2 3 2 1 1
CO4 2 3 3 3 2 1
1 – Low, 2 – Medium, 3 – High
43
Recommended Books
1. Russell, Stuart, and Peter Norvig. Artificial Intelligence: A Modern Approach. 4th ed., Prentice
Hall, 2020.
2. Michalski, Ryszard S., Jaime G. Carbonell, and Tom M. Mitchell. Machine Learning: An
Artificial Intelligence Approach. Morgan Kaufmann, 1983.
3. Alpaydin, Ethem. Introduction to Machine Learning. 2nd ed., MIT Press, 2010.
4. Mitchell, Tom. Machine Learning. 1st ed., McGraw Hill Education, 2017.
5. Biere, Armin, Marijn Heule, Hans van Maaren, and Toby Walsh, editors. Handbook of
Satisfiability. IOS Press, 2009.
44
CSDC0303 Compiler Design [3 0 0 3]
Course Contents
Unit 1: Introduction
Language Processors, Single and multi-pass compilers, Phases of a compiler, Applications of
compilers, Compiler Construction tools. Bootstrapping, Back patching.
Unit 2: Lexical Analysis and Syntax Analysis
Lexical Analysis: The role of lexical analyzer, Input Buffering, Specification of Tokens, Recognition
of Tokens, Lex, Finite Automata, RE to FA, Design of a Lexical-Analyzer Generator, Optimization of
DFA-based pattern matchers, Syntax Analysis: Parser, CFG, Writing a grammar (Eliminating
Ambiguity, Eliminating Left Recursion, Left Factoring), Top-down Parsing (Recursive-descent
parsing, LL(1) grammars, Non-recursive predictive parsing), Bottom-up parsing (Shift-reduce parsing,
LR-parsing algorithm, Construction of SLR parse tables for Ambiguous grammar. Canonical LR
parser, LALR parser, YACC, Parser Generators, Error Recovery in Top Down and Bottom up Parsing.
Unit 3: Syntax-Directed Translation and Intermediate Code Generation
Syntax-Directed Translation: Syntax-Directed Definitions, Syntax tree construction, bottom up and top
down evaluation of attributes, S-attributed and L-attributed definitions, Intermediate Code Generation:
Dependency graph, Postfix notation; Three address codes, quadruples, triples and indirect triples,
Control flow and translation of assignment statements, Case Statements, Boolean expression and
Procedure Calls, Type checking.
Unit 4: Code Optimization
Code Generation: Issues in the design of a code generator, The target language, Addresses in the target
code, Basic blocks and flow graphs, The Dag representation of basic block, Optimization of basic
blocks, Peephole optimization, Register allocation and assignment, Instruction selection by tree
rewriting, Optimal code generation for expressions, Dynamic programming code generation, Code
Optimization: Redundancy, Semantic-preserving transformations, Global common sub- expressions,
copy propagation, dead-code elimination, Code Motion, Induction Variables and Reduction in strength,
Data-flow analysis, Constant Propagation, Partial-redundancy Elimination, Loops in flow graphs,
Region-based analysis, Symbolic Analysis.
Course Outcomes
CO1: Understand the lexical, syntactic and semantic structures of advanced language features.
CO2: Analyze the lexical, syntactic and semantic analysis into meaningful phases for a compiler to
undertake language translation.
CO3: Create a scanner, parser, and semantic analyser without the aid of automatic generators.
CO4: Apply different techniques for intermediate code and machine code optimization
45
Course
Programme Outcomes
Outcomes
PO PO PO PO PO PO PO PO PO PO PO PO PS PS
1 2 3 4 5 6 7 8 9 10 11 12 O1 O2
CO1 3 1 2
CO2 2 3 3 1 3 1
CO3 3 2 2 2 3 3
CO4 1 2 2 2 2
1 – Low, 2 – Medium, 3 – High
Recommended Books
1. Aho, Alfred V., Monica S. Lam, Ravi Sethi, and Jeffrey D. Ullman. Compilers: Principles,
Techniques, and Tools. 2nd ed., Jan. 2023.
2. Louden, Kenneth C. Compiler Construction: Principles and Practice. 1st ed., Cengage Learning,
24 Jan. 1997.
3. Holub, Christopher. Compiler Design in C. 2nd ed., Prentice-Hall, 1993.
4. Bergmann, Seth D. Compiler Design: Theory, Tools, and Examples. Version 2, 17 May 2024,
Rowan Digital Works.
5. Mogensen, Torben Ægidius. Introduction to Compiler Design. 3rd ed., Springer, 2024.
46
CSDC0305 Operating Systems [3 0 0 3]
Course Contents
Unit 1: Operating Systems Objectives, Services, and Functions
Introduction to operating system, Types of operating systems and differences among them; Basic
Computer Architecture, OS as a virtual machine; User and Operating System View, System Calls,
System Services, Linkers and Loaders, Booting, OS as a resource manager, Interrupts and traps, System
calls, Limited direct execution, user versus kernel mode.
Unit 2: Processes and Deadlocks
Introduction to processes management, various process transition states, Introduction to Processor
scheduling, types of schedulers, Performance criteria in scheduling algorithms, FCFS scheduling
algorithm, Priority scheduling algorithm like SJF, Non-preemptive and Preemptive algorithms, Round-
robin scheduling algorithm, Concept of multi-level queues, feedback queues,, Real- Time CPU
Scheduling, Thread v/s process, Process and Thread APIs, Process Synchronization: Inter-process
communication and Processes: IPC in Shared-Memory Systems and Message-Passing Systems, Race
condition, mutual exclusion, The Critical Section Problem (CSP), Algorithmic solutions to CSP –
Dekker’s, Peterson’s, Lamport Bakery Solution; Hardware Support for Synchronization – Test and Set,
Compare and Swap; OS support for synchronization - Mutex Locks, Semaphores, Monitors; Condition
Variables; Classic Problems of Synchronization – Producer Consumer, Sleeping Barber; Dining
Philosopher’s Problem, Deadlocks: Deadlocks, issues related to its prevention, avoidance and detection
/ recovery,
Course Outcomes
CO4 2 3 3 3 3
CO5 3 3 3 2 2 1
1 – Low, 2 – Medium, 3 – High
Recommended Books
1. Peterson, Abraham, and Galvin Silberschatz. Operating System Concepts. 10th ed., Addison-
Wesley, 2023.
2. Tanenbaum, Andrew S. Modern Operating Systems. 5th ed., Pearson Education, 2024.
3. Stallings, William. Operating Systems. 9th ed., Pearson, 2018.
4. Dhamdhere, D. M. Introduction to Systems Software. 3rd ed., Tata McGraw-Hill, 2017.
5. Chauhan, N. Principles of Operating Systems. 1st ed., 2018.
48
CSDC0307 Data Mining and Analytics [3 0 0 3]
Course Contents
Course Outcomes
CO1: To explain core concepts of data mining and analytics, including data types, preprocessing,
statistics, and lifecycle.
CO2: To apply mining algorithms like Apriori and FP-Growth for pattern discovery and association
analysis.
CO3: To design data warehouse models and use tools like MongoDB and Hadoop for data analytics.
CO4: To evaluate ethical concerns, privacy issues, and emerging trends using case studies.
Course
Programme Outcomes
Outcomes
PO PO PO PO PO PO PO PO PO PO PO PO PS PS
1 2 3 4 5 6 7 8 9 10 11 12 O1 O2
CO1 3 2 2 2 2 2
CO2 3 3 2 2 2 3
CO3 3 3 2 3 3 3
CO4 3 3 2
1 – Low, 2 – Medium, 3 – High
49
Recommended Books
1. Han, Jiawei, Jian Pei, and Hanghang Tong. Data Mining: Concepts and Techniques. Morgan
Kaufmann, 2022.
2. Leskovec, Jure, Anand Rajaraman, and Jeffrey David Ullman. Mining of Massive Data Sets.
Cambridge University Press, 2020.
3. Acharya, Seema, and Subhashini Chellappan. Big Data and Analytics. Wiley, 2019.
4. Black, Ken. Business Statistics: For Contemporary Decision Making. John Wiley & Sons,
2023.
5. Russell, Matthew A. Mining the Social Web: Data Mining Facebook, Twitter, LinkedIn,
Google+, GitHub, and More. O'Reilly Media, 2013.
50
CSDC0333 Compiler Design Laboratory [0 0 2 1]
List of Experiments
1. Write a program to search the number of occurrences of any word, string and sub-sequence in
string.
2. Write a program to find the number of occurrences of any word in a file and replace that with
another word.
3. Implement the lexical analyser using Lex, Flex or other lexical analyser generating tools and
write the following programs using LEX:
- Count the number of characters, words, spaces, and lines in each input file.
- Count the number of comment lines in each C program. Also eliminate them and copy the
resulting program into a separate file.
- Recognize a valid arithmetic expression and the identifiers and operators present. Print them
separately.
- Recognize and count the number of identifiers in each input file.
4. Write a program to check whether a string belongs to the grammar or not. Also, generate a parse
tree.
5. Write programs to check for left recursion and left factoring. Also, implement removal of left
recursion and left factoring.
6. Write a program to implement FIRST and FOLLOW for a given grammar.
7. Write programs to implement Recursive-Descent and Non-recursive Predictive parser.
8. Write a program to check whether a given grammar is LL(1) or not.
9. Write a program to implement shift-reduce parsing algorithm.
10. Write a program to:
- Construct LR Parsing table and implement LR parsing algorithm,
- Construct CLR Parsing table and implement CLR parsing algorithm,
- Construct LALR Parsing table and implement LALR parsing algorithm.
11. Write YACC programs to recognize:
- A valid arithmetic expression using operators +, -, *, /
- Strings like 'aabb', 'abbb', 'ab', and 'a' using the grammar (aⁿbⁿ, n ≥ 10)
12. Write a program to:
- Implement the syntax-directed definition of 'if E then S1' and 'if E then S1 else S2'
- Implement a Symbol Table with functions to create, insert, modify, search and display
* This is only the suggested list of Practical’s. Instructor may frame additional Practicals relevant to
the course contents.
Course Outcomes
CO1: Design a Lexical analyser for a given language using C and LEX tools.
CO2: Design and convert BNF rules into YACC form to generate various parsers.
CO3: Generate the intermediate code.
CO4: Generate machine code from the intermediate code forms.
CO5: Implement Symbol table and compiler design aspects.
51
Course
Programme Outcomes
Outcomes
PO PO PO PO PO PO PO PO PO PO PO PO PS PS
1 2 3 4 5 6 7 8 9 10 11 12 O1 O2
CO1 3 2 2 2
CO2 2 3 2 3 3 2 3
CO3 3 3
CO4 2 3 2 2
CO5 2 3 3 2
52
CSDC0335 Operating Systems Laboratory [0 0 2 1]
List of Experiments
1. Installation and working with GCC on Linux
2. Write a shell script that performs the following tasks:
a) File manipulation: Create, delete, copy, and move files and directories.
b) Text processing: Search for specific patterns in files and perform text transformations.
c) System monitoring: Retrieve system information like CPU usage, memory utilization, and disk
space.
d) Automation: Automate a repetitive task on your Linux system using a shell script.
3. Develop a program that interacts with the Linux file system. Your program should enable users to:
a) Create files and directories.
b) Navigate through directories and display their contents.
c) Copy or move files and directories.
d) Change file permissions and ownership.
4. Implement a program in Linux that demonstrates the following process management concepts:
a) Process creation: Create child processes using the fork() system call.
b) Process termination: Terminate processes using the exit() system call.
c) Process synchronization: Synchronize processes using semaphores, mutexes, or other
synchronization mechanisms.
d) Signal handling: Handle signals like SIGINT or SIGTERM in your program
5. Simulation of the CPU scheduling algorithms such as Round Robin, SJF, FCFS, Priority
6. Simulation of MUTEX and SEMAPHORES.
7. Simulation of Bankers Deadlock Avoidance and Prevention algorithms.
8. Implementation of Process Synchronization (Reader-Writer, Sleeping Barber and Dining
Philosopher’s Problem)
9. Simulation of page Replacement Algorithms such as FIFO, LRU, and Optimal
10. Simulation of paging techniques of memory management.
11. Simulation of Disk Scheduling Algorithms such as SSTF, SCAN, LOOK etc.
12. Simulation of file allocation Strategies like Sequential, Indexed, Linked
13. Simulation of file organization techniques such as Single Level Directory, Two Level,
Hierarchical, DAG.
* This is only the suggested list of Practicals. Instructor may frame additional relevant Practical
Course Outcomes
CO1: Analyse the working of an operating system and its components and define and analyse the
synchronization process.
CO2: Identify the working methodology of multithreaded applications.
CO3: Compare and analyse different file systems being used in different operating systems.
CO4: Design and implement main memory and secondary memory systems.
53
Course
Programme Outcomes
Outcomes
PO PO PO PO PO PO PO PO PO PO PO PO PS PS
1 2 3 4 5 6 7 8 9 10 11 12 O1 O2
CO1 2 3 2 2 2
CO2 2 3 1 2
CO3 2 3 2 2 1
CO4 1 1 2 2 1 1
1 – low, 2 – Medium, 3 - High
54
CSDC0337 Data Mining and Analytics Laboratory [0 0 2 1]
List of Experiments
Course Outcomes
CO1: Understand and implement data pre-processing and exploratory data analysis techniques,
enabling effective visualization and identification of patterns in data for insightful analytics.
CO2: Understand descriptive statistics, including measures of central tendency and dispersion, and
master basic and advanced statistical analysis techniques.
CO3: Apply machine learning algorithms for predictive modeling and data mining.
Course
Programme Outcomes
Outcomes
PO PO PO PO PO PO PO PO PO PO PO PO PS PS
1 2 3 4 5 6 7 8 9 10 11 12 O1 O2
CO1 3 3 3 2 3
CO2 2 3 1 3
CO3 3 2 3 3 3
55
6th Semester
Teaching
S. Load Course
Course Course Title Credit
No Type
Code L T P
Computer Graphics and Image
1 CSDC0302 3 0 0 3 DC
Processing
2 CSDC0304 Information Security Systems 3 0 0 3 DC
3 CSDC0306 Machine Learning 3 0 0 3 DC
4 CSDC0308 Software Engineering 3 0 0 3 DC
CSDE03XX/ Department Elective – 2/ Generic
5 3 0 0 3 DE/GE
XXGE03XX Elective - 2
Computer Graphics and Image
6 CSDC0332 0 0 2 1 DC
Processing Laboratory
7 CSDC0334 Information Security System Laboratory 0 0 2 1 DC
8 CSDC0336 Machine Learning Laboratory 0 0 2 1 DC
9 CSDC0338 Software Engineering Laboratory 0 0 2 1 DC
10 CSPR0302 Project-1 (Phase-II) 0 0 2 2 PR
TOTAL 15 0 10 21
56
CSDC0302 Computer Graphics and Image Processing [3 0 0 3]
Course Contents
Unit 1: Overview of Graphics Systems
Overview of Hardware & Software, Input & Output Technology, Application areas of Computer
Graphics, raster-scan systems, video display devices, Graphics imaging pipeline, Rasterization, CRT
displays, Random scan display, Raster scan display, Raster Scan Basics.
Unit 2: Transformations
Drawing algorithms, Bresenham’s algorithm &DDA algorithms for line drawing, circle, ellipse
algorithms, parabola and hyperbola. Polygon filing, Scan line polygon fill algorithm, boundary-fill and
flood-fill algorithms, polygon filling, 2D Transformations, Translations and Homogeneous
Coordinates, Rotation, Reflection, Scaling, Combined Transformation, Transformation of Points, 2-D
viewing pipeline, viewing coordinate reference frame, window to view-port coordinate
transformation.3D transformations, Parallel projection, Perspective projection, Vanishing points,
Viewing Transformation, Stages in 3D viewing.
57
Course
Programme Outcomes
Outcomes
PO PO PO PO PO PO PO PO PO PO PO PO PS PS
1 2 3 4 5 6 7 8 9 10 11 12 O1 O2
CO1 2 1 2
CO2 3 2 1 1 2 1
CO3 3 1 1 2 2 2 2
CO4 2 2 2 2 3 2 1 2
1 – low, 2 – Medium, 3 – High
Recommended Books
1. Hearn, Donald, and M. Pauline Baker. Computer Graphics (C Version). 2nd ed., Pearson
Education, 2004.
2. Pratt, William K. Digital Image Processing. 3rd ed., John Wiley, 2002.
3. Jain, Anil K. Fundamentals of Digital Image Processing. 1st ed., Prentice Hall, 2015.
4. Gonzalez, Rafael C., and Richard E. Woods. Digital Image Processing. 3rd ed., Pearson, 2014.
5. Foley, James D., et al. Computer Graphics: Principles and Practice in C. 2nd ed., Addison
Wesley, 1997.
58
CSDC0304 Information Security Systems [3 0 0 3]
Course Contents
Unit 1: Introduction to Computer Security and Information Security
Computer Security: Introduction to Computer Security, Computer Security Technology and Principles,
Software Security and Trusted Systems, Networking and Distributed System Security, Information
Security: History and Evolution of Cryptography, OSI Security Architecture, A Model for Network
Security, Classical Encryption Techniques: Symmetric Cipher Model, Substitution Techniques,
Transposition Techniques, Steganography, Block Ciphers and Data Encryption Standard: Block Cipher
Principles, Simplified DES, Data Encryption Standard, Strength of DES, Block Cipher Modes of
Operation, confusion and diffusion & their measurement.
Unit 5: Cryptanalysis
Cryptanalysis: Time-Memory Trade-off Attack, Cryptanalysis of the Substitution Cipher,
Cryptanalysis of the Hill Cipher, Cryptanalysis of the LFSR Stream Cipher, Cryptanalysis on Stream
Cipher, Modern Stream Ciphers, Shamir’s Secret Sharing, Differential and Linear Cryptanalysis.
59
Course Outcomes
CO1: Understand fundamental principles of cryptography, including Integrity, Confidentiality,
authentication, and Non-repudiation, to secure communication systems.
CO2: Analyse security issues and vulnerabilities in networks and cryptographic systems
CO3: Assess network security threats and develop effective countermeasures, implementing secure
network architectures using cryptographic techniques.
CO4: Evaluate security mechanisms, including key ciphers and hash functions, using rigorous
mathematical and computational approaches for cryptographic security.
Course
Programme Outcomes
Outcomes
PO PO PO PO PO PO PO PO PO PO PO PO PS PS
1 2 3 4 5 6 7 8 9 10 11 12 O1 O2
CO1 3 3 1 1 1 2 1 2
CO2 2 2 1 1 1 1 2
CO3 2 1 3 2 2 2 2 2 2
CO4 1 2 2 2 1 2
1 – Low, 2 – Medium, 3 - High
Recommended Books
1. Stallings, William. Cryptography and Network Security: Principles and Practice. 8th ed.,
Pearson Education, 2024.
2. Forouzan, Behrouz A., and Debdeep Mukhopadhyay. Cryptography and Network Security. 3rd
ed., Tata McGraw-Hill, 2015.
3. Boneh, Dan, and Victor Shoup. A Graduate Course in Applied Cryptography. Version 0.6, Jan.
2023.
4. Stinson, Douglas R., and Maura Paterson. Cryptography: Theory and Practice. 4th ed.,
Chapman & Hall/CRC, 2018.
5. Menezes, Alfred J., Paul Van Oorschot, and Scott Vanstone. Handbook of Applied
Cryptography. CRC Press, 2018.
6. Gupta, Prakash C. Cryptography and Network Security. 1st ed., PHI Learning, 2015.
60
CSDC0306 Machine Learning [3 0 0 3]
Course Contents
Course Outcomes
CO1: Understand fundamental machine learning concepts and their real-world applications.
CO2: Implement and analyze machine learning algorithms, including regression, classification,
clustering, and reinforcement learning.
CO3: Evaluate machine learning models using metrics like accuracy, precision, recall, and F1-score.
CO4: Apply machine learning techniques to real-world problems, optimize models, and interpret
results for better decision-making.
61
Course
Programme Outcomes
Outcomes
PO PO PO PO PO PO PO PO PO PO PO PO PSO PSO
1 2 3 4 5 6 7 8 9 10 11 12 1 2
CO1 3 2 1 1 1 2 2
CO2 3 3 3 3 2 3 1
CO3 2 2 1 3 1 3 2 2 2
CO4 2 2 2 2 1 3 2 1
1 – Low, 2 – Medium, 3 - High
Recommended Books
62
CSDC0308 Software Engineering [3 0 0 3]
Course Contents
Course Outcomes
CO1: Describe the concepts of software development and software engineering.
CO2: Differentiate between various software engineering process models and explain their
applicability.
CO3: Implement testing and debugging techniques and evaluate their effectiveness.
CO4: Assess software risks, apply risk management strategies, and analyze software quality and
reliability based on international quality standards.
63
Course
Programme Outcomes
Outcomes
PO PO PO PO PO PO P PO PO PO PO PS PS
PO8
1 2 3 4 5 6 O7 9 10 11 12 O1 O2
CO1 1 2 2 1 1
CO2 2 3 2 2
CO3 3 2 3 2 2
CO4 3 3 3 2 3 3 3 3
1 – Low, 2 – Medium, 3 - High
Recommended Books
1. Peters, James F., and Witold Pedrycz. Software Engineering: An Engineering Approach. 1st
ed., John Wiley & Sons, 2000.
2. Jawadekar, Waman S. Software Engineering: Principles and Practice. 1st ed., McGraw-Hill
Education, 2004.
3. Pressman, Roger S., and Bruce R. Maxim. Software Engineering: A Practitioner's Approach.
9th ed., McGraw-Hill Education, 2019.
4. Sommerville, Ian. Software Engineering. 10th ed., Pearson Education, 2015.
5. Jalote, Pankaj. Software Engineering: A Precise Approach. John Wiley & Sons, 2010.
6. Fox, Armando, David A. Patterson, and Samuel Joseph. Engineering Software as a Service: An
Agile Approach Using Cloud Computing. Strawberry Canyon LLC, 2013.
64
CSDC0332 Computer Graphics and Image Processing Laboratory [0 0 2 1]
List of Experiments
1. Develop a program to draw a line using Bresenham’s line drawing technique.
2. Develop a program to demonstrate basic geometric operations on the 2D object.
3. Develop a program to demonstrate basic geometric operations on the 3D object.
4. Develop a program to demonstrate 2D transformation on basic objects.
5. Develop a program to demonstrate 3D transformation on 3D objects.
6. Develop a program to demonstrate Animation effects on simple objects.
7. Write a Program to read a digital image. Split and display image into 4 quadrants, up, down, right
and left.
8. Write a program to show rotation, scaling, and translation on an image.
9. Read an image and extract and display low-level features such as edges, textures using filtering
techniques.
10. Write a program to blur and smoothing an image.
11. Write a program to contour an image.
12. Write a program to detect a faces in an image.
* This is only the suggested list of practical. The instructor may frame additional Practical relevant to
the course contents.
Course Outcomes
CO1: Develop skills to draw lines, circle and ellipses using different algorithms.
CO2: Apply knowledge to clip lines as per problem statement.
CO3: Analyses various transformations on 2D and 3D images.
CO4: Apply basic image processing capabilities.
Course
Programme Outcomes
Outcomes
PO PO PO PO PO PO P PO PO PO PO PS PS
PO8
1 2 3 4 5 6 O7 9 10 11 12 O1 O2
CO1 1 1 2
CO2 2 2 2 1
CO3 3 1 2 2 2 2 1 2
CO4 1 1 2 2 2 3 1
1 – Low, 2 – Medium, 3 - High
65
CSDC0334 Information Security System Laboratory [0 0 2 1]
List of Experiments
1. Implementation of various transposition ciphers.
2. Implementation of various substitution ciphers.
3. Implementation of S-DES algorithm for data encryption.
4. Implementation of S-AES algorithm for data encryption.
5. Implementation of Symmetric Encryption Scheme – Mode of operations and RC4.
6. Implementation of Chinese remainder theorem.
7. Implementation of RSA cryptosystem.
8. Implementation of Rabin cryptosystem.
9. Implementation of ElGamal cryptosystem.
10. Implementation of various Secure Hash algorithms.
11. Implementation of MAC algorithm.
12. Implementation of RSA digital signatures.
13. Implementation of Rabin digital signatures.
14. Implementation of ElGamal digital signatures.
15. Implementation of Diffie-Hellman key exchange algorithms
* This is only the suggested list of Practical’s. Instructor may frame additional Practicals relevant to
the course contents.
Course Outcomes
CO1: Understanding of various information security threats.
CO2: Understanding of security measures to encounter threats.
CO3: Implementation and understanding of encryption techniques.
Course
Programme Outcomes
Outcomes
PO PO PO PO PO PO P PO PO PO PO PS PS
PO8
1 2 3 4 5 6 O7 9 10 11 12 O1 O2
CO1 1 3 2 2 1 1 1 2
CO2 2 1 2 3 2 2 2
CO3 1 2 3 2 2 1 1 2 3
1 – low, 2 – Medium, 3 - High
66
CSDC0336 Machine Learning Laboratory [0 0 2 1]
List of Experiments
1. Programs based on Numpy, Pandas, Visualization based python libraries.
2. Implementation of regression and logistic regression for classification purpose.
3. Implementation of Decision Tree for solving regression as well as classification problems,
4. Solving classification and regression problems with application of Support Vector Machines
(SVM) in Data Analytics.
5. Implement Dimensionality reduction using Principle Component Analysis (PCA) method,
6. Implement Naïve Bayes Classification in Python, Build KNN Classification model for a given
dataset.
7. Implement various ensemble methods on a given dataset,
8. Implement Random Forest ensemble method on a given dataset,
9. Implement Boosting ensemble method on a given dataset.
10. Implementation of clustering techniques, such as, K-Means clustering Algorithm.
11. Estimate the accuracy of decision classifier on breast cancer dataset using 5-fold cross-validation
12. Develop a machine learning method to Cluster gene expression data, how to modify existing
methods to solve the problem better.
13. Select two datasets. Each dataset should contain examples from multiple classes. For training
purposes assume that the class label of each example is unknown (if it is known, ignore it).
Implement the K-means algorithm and apply it to the data you selected. Evaluate performance by
measuring the sum of Euclidean distance of each example from its class center. Test the
performance of the algorithm as a function of the parameter k.
14. Implement the EM algorithm assuming a Gaussian mixture. Apply the algorithm to your datasets
and report the parameters you obtain. Evaluate performance by measuring the sum of Mahalanobis
distance of each example from its class center. Test performance as a function of the number of
clusters.
* This is only the suggested list of Practicals. Instructor may frame additional Practical’s relevant to
the course contents.
Course Outcomes
CO1: Develop hands-on knowledge of methods and theories in the field of machine learning for
learning principles, techniques, and applications of machine learning.
CO2: Design and Implement Regression for real-world problems.
CO3: Design and implement various classification techniques.
Course
Programme Outcomes
Outcomes
PO PO PO PO PO PO PO PO PO PO PO PO PS PS
1 2 3 4 5 6 7 8 9 10 11 12 O1 O2
CO1 3 3 2
CO2 3 2 3 3
CO3 3 2 2 2 1
67
CSDC0338 Software Engineering Laboratory [3 0 0 3]
List of Experiments
1. Introduction and project definition
2. Introduction to project management software (e.g., Trello, Jira)
3. Software process overview (Waterfall, Agile, Scrum, DevOps)
4. Project planning (WBS, Gantt charts, risk management)
5. Software Requirements Specification (SRS)
6. Introduction to UML and use case diagrams
7. Flow of events and activity diagrams
8. Object-oriented analysis: discovering classes and class diagrams
9. Interaction diagrams: sequence and collaboration diagrams
10. Software design: architecture and object-oriented design
11. Effort and cost estimation using COCOMO
12. State transition diagrams
13. Component and deployment diagrams
14. Issue tracking systems (e.g., GitHub, Bitbucket, GitLab)
15. Software configuration management tools (e.g., Git, SVN, CVS)
16. Software testing (Unit, integration, system, acceptance testing)
17. Continuous integration and delivery tools (e.g., Jenkins, GitHub Actions)
18. Writing test cases and using test management tools (e.g., TestLink)
19. Code review practices and tools (e.g., GitHub pull requests)
* This is only the suggested list of Practicals. Instructor may frame additional Practical’s relevant to
the course contents.
Course Outcomes
CO1: Apply project planning techniques and tools in software project management.
CO2: Use SDLC models and project management software effectively.
CO3: Create UML diagrams and SRS for software requirements.
Course
Programme Outcomes
Outcomes
PO PO PO PO PO PO P PO PO PO PO PS PS
PO8
1 2 3 4 5 6 O7 9 10 11 12 O1 O2
CO1 3 2 2 2 2 3 3 1
CO2 2 3 2
CO3 3 3 2 2 3
1 – Low, 2 – Medium, 3 - High
68