CSE (AIML) R22 II Year Syllabus
CSE (AIML) R22 II Year Syllabus
CSE (AIML) R22 II Year Syllabus
COURSE STRUCTURE
&
SYLLABUS
R22 REGULATIONS
CHOICE BASED CREDIT SYSTEM (CBCS)
II B.Tech.
CSE (Artificial Intelligence and Machine Learning)
Applicable to batches admitted in the First year
from 2022-23 onwards
VISION
MISSION
VISION
➢ Towards a Global Knowledge Hub, striving continuously in pursuit of
excellence in Education, Research, consultancy and Technological services
to the society.
MISSION
PEO3: Managerial skills: Graduates will possess managerial skills to face challenges
in the profession by working harmoniously in a team with effective
communication skills.
PEO4: Continuous learning: Graduates will continue to learn and adapt in a world of
constantly evolving technologies and pursue research towards academic
excellence.
PEO5: Adaptability: Graduates of Computer Science & Engineering will have soft skills
to adapt to the diverse global environment.
PSO 4: Industry Readiness: Use theoretical and practical concepts to realize new
ideas for pursuing research, entrepreneurship, employment and higher
studies.
CVR COLLEGE OF ENGINEERING
II B.Tech. CSE (Artificial Intelligence & Machine Learning)
I Semester Course Structure
Regulations: R22-CBCS With effect from the Academic Year 2023-24 Onwards
1
With effect from the academic year 2023-24
Course Objectives:
Basics of Java- History/Background of Java, Java Buzzwords, Java Virtual Machine and Byte
code, Java Environment setup, Java Program structure, Data Types, Variables- Scope and Life
Time, Operators, Expressions, Type Conversions and Type casting, Conditional statements and
Control statements, Simple Java Programs, javac and java command flags.
OOP Concepts –I: Encapsulation- Classes and Objects, Classes: Class structure, class
components, Objects: Object declaration, Reference variables, Constructors - default
Constructor, Parameterized Constructors, Constructor overloading, this keyword and its uses,
arrays concept, static modifier, access modifiers, Wrapper classes.
Methods -Passing parameters to methods – Passing primitive types and Passing Objects, getters
and setters, Method Overloading, Command line arguments, garbage collection-
java.lang.System.gc(), finalize(). String Handling - String class, String APIs, String Buffer and
String Builder classes.
Inheritance- Inheritance concept, super class and subclass relationship, Object class, principle
of substitution, effect of access modifiers on inheritance. Usage of super (field, method,
constructor) and final (field, class, method) keywords.
Polymorphism- method overriding, Dynamic method dispatch, Abstract classes and Interfaces
- Abstract classes - concept, usage, Interfaces – declaration, implementation, components of an
interface, extending interfaces.
Packages – package access, CLASSPATH, package access rules, sealed classes, hidden classes,
Introduction to Java standard library and Java documentation.
Java I/O–Byte streams, character streams, Scanner class, Console class, Serialization and
Serializable interface, File class.
2
With effect from the academic year 2023-24
Multithreading-Fundamentals, Thread Life Cycle, Ways of creating threads - Thread class and
Runnable interface, Thread priorities, creating multiple threads, core methods of Thread class,
Thread Synchronization, inter thread communication.
Annotations- Annotation Basics, specifying a Retention Policy, the Annotated Element Interface,
Using Default Values, Marker Annotations, Single – Member Annotations.
Modules: Module Basics-module, exports, require, transitive, java.base and the Platform
Modules, Unnamed Module, Specific Module.
AWT - Basics of GUI Programming, Event handling – Delegation event model, event sources,
event listeners, event classes, adapter classes: nested classes and interfaces, anonymous inner
classes handling keyboard and mouse events.
Swing- MVC Architecture, Containers, components, layout managers, frames and windows,
panels, buttons, checkboxes, radio buttons, combo boxes, lists, labels, color choosers, file
choosers, text fields, text areas, tool tips.
Course Outcomes:
Textbooks:
References:
1. Core Java Volume I- Fundamentals, Cay S. Horstmann and Gary Cornell, 9 th edition,
Prentice Hall, 2012.
2. Core Java Volume II- Advanced Features, Cay S. Horstmann and Gary Cornell, 9 th
edition, Prentice Hall, 2013.
3
With effect from the academic year 2023-24
Course Objectives:
Statements and notations, connectives, Well Formed Formulas, Truth tables, tautology,
equivalence implication, Normal forms, Predicative logic, Quantifiers, universal quantifiers, Free
& Bound variables.
Properties of binary Relations, Equivalence, Transitive closure, Compatibility & Partial ordering
Relations, Lattice and its properties, Hasse Diagram. Recursive functions, and Applications.
Algebraic systems Examples and general properties, semi-groups and Monoids, Groups,
subgroups, Homomorphism & Isomorphism, and Applications
The principle of inclusion and exclusion, Binomial Coefficients, Binomial & Multinomial theorems,
Pigeonhole principles, and its applications.
Basic Concepts, Isomorphism and Subgraphs, Planar Graphs, Euler’s Formula, Multi-graphs and
Euler Circuits, Hamiltonian Graphs, Chromatic Numbers, The Four-Color Problem.
Course Outcomes:
CO 1 : Apply formal logic proofs and/or informal, but rigorous, logical reasoning to
evolve theoretical proofs to real problems, such as predicting the behavior of
software or solving problems such as puzzles.
CO 2 : Apply the logical notations to define and reason about fundamental
mathematical concepts such as sets, and relations and exercise the guidelines
for constructing valid arguments. A representation of a partially ordered set such
as a lattice as a directed graph.
4
With effect from the academic year 2023-24
CO 3 : Define Group properties and construct simple functions that preserve the
algebraic structures over groups.
CO 4 : Solve counting problems efficiently by applying the principle of inclusion and
exclusion and solve recurrence relations.
CO 5 : Characterize edge preserving similarity between two graphs and verify the
Eulerian property of graphs.
Textbooks:
References:
1. Discrete Mathematics and its Applications, Kenneth H.Rosen, 7th edition, TMH, 2015.
2. Discrete and Combinatorial Mathematics- An Applied Introduction, Ralph P. Grimaldi, 5th
edition, Pearson Education, 2008.
3. Elements of Discrete Mathematics – A computer Oriented Approach, C L Liu, and D P
Mohapatra, 3rd edition, Tata McGraw-Hill, 2008.
5
With effect from the academic year 2023-24
Course Code:22HS204
1. To understand number theory basic concepts are useful for cryptography etc.
2. To learn how to apply Probability and Statistics to solve engineering problems
3. To show the applications of Probability and Statistics in engineering with examples
4. To learn how to apply testing of hypothesis techniques to make decisions in real-time
problems.
5. Stochastic process and Markov chains
Greatest Common Divisors and Prime Factorization: Greatest common divisors, The
Euclidean algorithm, The fundamental theorem of arithmetic, Factorization of integers, and the
Fermat numbers.
Random Variables: Concept of Random Variables, Univariate random variable, Probability mass
and density function of the random variables, Mathematical Expectations.
Testing of Hypothesis: Null hypothesis, Alternate hypothesis, Type I & Type II errors, Critical
region, Level of significance, Power of the test, One-tailed and Two-tailed Tests, Large sample
Tests: Test for a Single proportion, Single mean, Difference between two Proportions, Difference
between two Means.
Simple Linear Regression and Correlation: Introduction to Linear Regression, The Simple
Linear Regression Model, Inferences Concerning the Regression Coefficients, Simple Linear
Regression Case Study, Correlation coefficient, Rank correlation coefficient.
6
With effect from the academic year 2023-24
Course Outcomes: At the end of the course, the student should be able to
Textbooks:
1. Elementary number theory & its applications, Kenneth H. Rosen, 6 th edition, Addison-
Wesley, 2011.
2. Probability & Statistics for Engineers & Scientists, Ronald E. Walpole, Raymond H. Myers,
Sharon L. Myers, Keying Ye, 9th edition Pearson Publishers, 2011.
3. Operations Research, S.D. Sharma, Kedarnath and Ramnath Publishers, Meerut, Delhi,
2002.
References:
7
With effect from the academic year 2023-24
Course Objectives:
History of DBMS, Concepts and overview of DBMS, Data models - ERmodel, Relational model,
Levels of Abstraction in DBMS, Data base Languages, Architecture of DBMS, Data Base Users and
Administrators.
ER-Model
Data base design and ER model, ER modeling Constructs, Additional features of ER Model, Class
Hierarchies, Aggregation, Conceptual Design with ER model, Case study: ER design for Large
Enterprises.
Form of Basic SQL Query, Examples of Basic SQL Queries, Introduction to Nested Queries,
Correlated Nested Queries, Set Comparison Operator-Aggregate Operators, NULL values and
Comparison using Null values, Logical connectivity’s – AND, OR and NOT, OUTER Joins,
Disallowing NULL Values.
8
With effect from the academic year 2023-24
Schema Refinement
Transaction concept & state, Implementation of atomicity and durability, Concurrent executions
of transaction, Serializability and Recoverability, Implementation of Isolation, Testing for
serializability, Lock-Based Protocols, Graph Based Protocol, Timestamp-Based Protocols,
Validation-Based, Protocols, Multiple Granularity.
Data on External storage, File Organization and Indexing, Cluster Indexes, Primary and secondary
indexes, Index data structures, Hash based indexing - Static hashing and Extensible Hashing,
Tree based indexing - Indexed Sequential Access Methods (ISAM), B+ Trees: A Dynamic Index
structure.
Database Recovery
Recovery and Atomicity, Log-based Recovery, Recovery with the concurrent transaction.
Course Outcomes:
Textbooks:
References:
1. Fundamentals of Database Systems, Ramez Elmasri, Shamkant B.Navathe, 7th edition,
Pearson Education, 2008.
2. Database Systems: The Complete Book by Hector Garcia- Molina, Jeffery D.Ullman,
Jennifer Widom, 2nd Edition, Pearson Education, 2008.
3. Database Management System Oracle SQL and PL/SQL, P.K.Das Gupta, 2nd edition, PHI,
2013.
9
With effect from the academic year 2023-24
Course Objectives:
1. To impart basic properties of Various Digital Number systems, Logic Gates, Boolean
algebra and to simplify Boolean functions and the circuits Implementations.
Digital Systems, Binary Numbers, Number base conversions, Octal and Hexadecimal umbers,
complements, signed binary numbers, Binary codes – ASCII, Binary coded Decimal, Excess-3
Code and Gray Code.
Basic Definitions, Axiomatic definition of Boolean Algebra, Basic theorems and properties of
Boolean algebra, Boolean functions, canonical and standard forms, other logic operations, Digital
logic gates, Universal Building Blocks.
The Karnaugh map method, Two- variable map, Three – Variable map, Four-variable map, Don’t-
care conditions, Sum of Products simplification, Product of Sums simplification, Basic Gates
Implementations, NAND and NOR implementation, other Two-level implementations, Exclusive –
Or function & -NOR function.
Sequential circuits, latches, Binary Storage Devices, Flip-Flops (RS, D, JK & T) clocked
sequential circuits, Edge (Positive & Negative) Triggered circuits, Registers, shift Registers,
Counters - Ripple counters, synchronous counters, other counters.
Course Outcomes:
CO1: Master different number systems and realize the binary operations of Boolean
algebra using logic gates.
CO2: Simplification of Complex problems of gate-level circuits using K-Map and simple
circuit implementations.
CO3: Student has the knowledge about the design and functionalities of Combinational
circuits.
CO4: Design of Synchronous Sequential circuits and itsworking principles.
CO5: Explain the concepts of basic memory and programmablearray logics used in a
digital system.
10
With effect from the academic year 2023-24
Textbooks:
References:
11
With effect from the academic year 2023-24
Course Objectives:
Lab Problems:
12
With effect from the academic year 2023-24
References:
1. Java: The Complete Reference, Herbert Schildt, 10th edition, McGraw-Hill Education,
Oracle Press, 2017.
2. Head First Java, Kathy Sierra and Bert Bates, 2nd edition, O‘Reilly Media, 2005.
3. https://junit.org/junit5/docs/current/user-guide/#running-tests-junit-platform-runner.
13
With effect from the academic year 2023-24
Course Objectives:
Database Description: This lab enables the students to practice the concepts learnt in the
subject DBMS by developing a database for an example ― Boat reservation by the sailor ‖and
―employee data maintenance in an organization‖ whose description is as given below.
The student is expected to practice the designing, developing and querying a database in the
context of reserving a boat and employee data maintenance. Students are expected to use ―
MySql database.
"Boat reservation by the sailor" is a schema with several boats which could be reserved
depending on color and availability on a particular day. The sailor reserves the boat on a particular
day y registering himself with a rating. The sailor is identified by sailor id, boats are identified by
boat id and reservation is uniquely identified by sailor id, boat id and day.
1. E-R Model
Analyze the problem carefully and come up with the entities in it. Identify what data has to
be persisted in the database. This contains the entities, attributes etc. Identify the primary
keys for all the entities. Identify the other keys like candidate keys, partial keys, if any.
1. SAILORS
2. BOATS
3. RESERVES
PRIMARY KEY ATTRIBUTES:
1. SID (SAILOR ENTITY)
2. BID (BOATS Entity)
3. SID,BID,DAY (RESERVES ENTITY)
14
With effect from the academic year 2023-24
SAILORS
EMPLOYEE
4. Normalization
Database normalization is a technique for designing relationaldatabase tables to minimize
duplication of information and, in so doing, to safeguard the database against certain types
of logical or structural problems, namely data anomalies. For example, when multiple
instances of a given piece of information occur in a table, the possibility exists that these
instances will not be kept consistent when the data within the table is updated, leading to
a loss of data integrity. A table that is sufficiently normalized is less vulnerable to problems
of this kind, because its structure reflects the basic assumptions for when multiple instances
of the same information should be represented by a single instance only.
Perform do the second and third normal forms for sailors and Employee databases if
required.
15
With effect from the academic year 2023-24
7. Querying - I
In this week students are going to practice queries (along with sub queries) using ANY, ALL,
IN, Exists, NOT EXISTS, UNION, INTERSECT, Constraints etc.
8. Querying - II
Students are going to practice queries using Aggregate functions (COUNT, SUM, AVG, and
MAX and MIN), GROUP BY, HAVING and Creation and dropping of Views.
9. Triggers
In this week students are going to work on Triggers. Creation of insert trigger, delete trigger,
update trigger. Practice triggersusing the above database.
10. Procedures
In this session students will learn Creation of stored procedure, Execution of procedure and
modification of procedure. Practice procedures using the above database.
11. Cursors
In this week students will learn to declare a cursor that defines a result set. Open the cursor
to establish the result set. Fetchthe data into local variables as needed from the cursor, one
row at a time. Close the cursor when done.
Course Outcomes:
References:
1. Database Management Systems, Raghu Ramakrishnan, Johannes Gehrke, 3rd edition, TMH,
2003.
2. Introduction to SQL, Rick F.VanderLans, 4th edition, Pearsoneducation, 2007.
3. Oracle PL/SQL, B.Rosenzweig and E.Silvestrova, 2nd edition, Pearson education, 2002.
16
With effect from the academic year 2023-24
List of Programs:
2. Write predicates one converts centigrade temperatures to Fahrenheit, the other checks
if a temperature is below freezing.
4. WAP in turbo prolog for medical diagnosis and show the advantages and disadvantages
of green and red cuts.
8. Write simple Prolog functions such as the following. Take into account lists which are
too short.
-- remove the Nth item from the list. -- insert as the Nth item.
9. Assume the prolog predicate gt(A, B) is true when A is greater than B. Use this
predicate to define the predicate addLeaf(Tree, X, NewTree) which is true if NewTree
is the Tree produced by adding the item X in a leaf node. Tree and NewTree are binary
search trees. The empty tree is represented by the atom nil.
10. Write a Prolog predicate, countLists (Alist, Ne, Nl), using accumulators, that is true
when Nl is the number of items that are listed at the top level of Alist and Ne is the
number of empty lists. Suggestion: First try to count the lists, or empty lists, then
modify by adding the other counter.
11. Define a predicate memCount(AList, Blist,Count) that is true if Alist occurs Count times
within Blist. Define without using an accumulator. Use "not" as defined in utilities.pro,
to make similar cases are unique, or else you may get more than one count as an
answer.
Examples:
memCount(a,[
b,a],N). N = 1 ;
no
memCount(a,[b,[a,a,[a],c
],a],N). N = 4 ;
no
17
With effect from the academic year 2023-24
memCount([a],[b,[a,a,[a],
c],a],N). N = 1 ;
No
Reference:
18
With effect from the academic year 2023-24
Unit I
History of Making of the Indian Constitution: The meaning of constitutional Government, the
roots of the constituent Assemble of India, Composition of the proposed constituent Assembly.
History of Drafting Committee.
Unit II
Unit III
Unit IV
Unit V
Election Commission: Role and Functioning. Chief Election Commissioner and Election
Commissioners. State Election Commission: Role and Functioning. Institute and Bodies for the
welfare of SC/ST/OBC and women.
Course Outcomes: At the end of the course, the student should be able to
19
With effect from the academic year 2023-24
fundamental rights in proper sense at the same time identifies his responsibilities
in national building.
CO 3 : Analyze the organs of governance and District’s Administration head
CO 4 : Analyse the Local Administration: District’s and Village Administration
CO 5 : Understand Election Commission Process and Institutional Bodies for the welfare
of SC/ST/OBC and women.
Textbooks:
20
With effect from the academic year 2023-24
Course Objectives:
Generics: Introduction to Generics, simple Generics examples, Generic Types, Generic methods,
Bounded Type Parameters and Wild cards, Inheritance & Sub Types, Generic super class and sub
class, Type Inference, Restrictions on Generics.
Stream API: Stream basics, Stream Interface, Intermediate operations – map(), filter(),
distinct(), sorted(), limit(), skip(), Terminal operations – forEach(), reduce(), collect(), min(),
max(), count().
Dictionaries Implementation-I:
Linear List Representation: Basics of linear list, implementation of sorted list using user
defined generic classes and, LinkedList Collections class.
Hashing: basics, closed hashing – linear probing, quadratic probing, double hashing, rehashing,
extendible hashing and their implementation, open hashing-separate chaining and its
implementation using user defined generic classes.
21
With effect from the academic year 2023-24
AVL Tree: definition, the height of an AVL tree, representation, operations-rotations, insertion,
searching, deletion and, their implementation using Java’s Collection framework.
Red Black Binary search trees: definition, insertion, deletion, and search operations.
B-Tree: B-Tree of order m, the height of a B-Tree, searching, insertion, and deletion operations.
Priority Queue: definition, max and min heaps, realizing priority queues using heaps,
operations-insertion, deletion, and their implementation using user-defined generic classes, heap
sort and its implementation using user-defined generic classes.
Course Outcomes: At the end of the course, the student should be able to
Textbooks:
References:
1. Data Structures and Algorithms in Java, Michael T. Goodrich, Roberto Tamassia, Michael
H. Goldwasser, 6th edition, Wiley Publications, 2014.
2. Data Structures, Algorithms, And Applications in Java, Sartaj Sahni, 2 nd edition,
Universities Press, 2005.
3. Data Structures: Abstraction and Design Using Java, Elliot B. Koffman, Paul A.
T.Wolfgang. 2nd second Edition, Wiley publications, January 2010.
4. Head First Java, Kathy Sierra and Bert Bates, 2nd edition, OREILLY publications, 2005.
22
With effect from the academic year 2023-24
Course Objectives:
Introduction- Definition of algorithm, algorithmic problem solving, pseudo code for expressing
algorithms. Asymptotic notations- ο, Ω, and θ notations. Performance analysis: Time and space
complexity: count, tabular methods, examples on non-recursive, recursive algorithms. Recursive
algorithms and recurrence relations - ToH problem, Amortized analysis.
Control abstraction, binary search algorithm and its complexity, Merge sort, its complexity, quick
sort, its complexity. Graph traversals: Depth first search (dfs), breadth first search (bfs),
articulation points, bi-connected components.
Control abstraction, fractional knapsack problem, job sequencing problem, minimum cost
spanning tree: Prims algorithm, Kruskal’s algorithm, Djkstra’s algorithm.
Branch and Bound: General method, Applications: Travelling sales person problem, 0/1
knapsack problem, LC branch and bound solution, FIFO branch and bound solution, Game trees.
Course Outcomes: At the end of the course, the student should be able to
CO 1 : Analyze worst-case running times using asymptotic analysis of algorithms.
CO 2 : Describe the divide-and-conquer paradigm and Synthesize divide-and-conquer
algorithms.
CO 3 : Define optimization problems and solve them through various greedy policies
CO 4 : Describe the dynamic-programming paradigm and synthesize dynamic-
programming algorithms and analyze them.
CO 5 : Reduce the size of search space of the optimization problems by applying
backtracking and branch and bound tools. Appreciate the Non-Deterministic
modeling of algorithms.
23
With effect from the academic year 2023-24
Textbooks:
References:
1. R C T Lee, Hang and TT Sai, Introduction to Design and Analysis of Algorithms, A strategic
approach, TMH.
2. Allen Weiss, Data structures and Algorithm Analysis in C++, 2 nd edition, Pearson
Education
3. Aho, Ullman and Hopcroft, Design and Analysis of Algorithms, Pearson Education, 1974.
4. Richard Johnson Baugh, and Marcus Schaefer, Algorithms, Pearson Education.
24
With effect from the academic year 2023-24
Course Objectives:
1. The purpose of the course is to introduce principles of computer organization and the basic
architectural concepts, Basic levels of pipelining and vector processing Architecture.
2. It begins with basic organization, design, and programmingof a simple digital computer
and introduces simple register transfer language to specify various computer operations.
Control Unit, Hardwired & Micro programmed Control, CPU organization, instruction set
design
3. Topics include Various Data Formats, computer arithmetic & Algorithms, memory
organization and I/O systems, andStudy about multiprocessors Architecture.
Unit I
Unit II
Register Transfer Language and Micro operations: Register Transfer language, Register
Transfer, Bus and memory transfers, Arithmetic Micro operations, logic micro-operations, shift
micro operations, Arithmetic logic shift unit.
Basic Computer Organization and Design: Instruction codes, Computer Registers Computer
instructions, Timing and Control, Memory Reference Instructions, Input – Output and Interrupt.
Unit III
Control Unit: Hardwired Control, Micro programmed Control, Control memory, Address
sequencing, micro program example, design of control unit.
25
With effect from the academic year 2023-24
Unit IV
Data Representation: Data types, Complements, Fixed Point Representation, Floating Point
Representation.
Unit V
Memory Organization: Memory Hierarchy, Main Memory, Auxiliary memory, Associate Memory,
Cache Memory.
Course Outcomes:
Textbooks:
References:
26
With effect from the academic year 2023-24
Course Objectives:
1. To introduce the student to the evolution of process models in software engineering while discussing
the merits and demerits of each and every process model.
2. To employ Agile development and key methodologies including Scrum and XP.
3. To Understand configuration management; continuous integration deployment, delivery and
monitoring using DevOps tools such as Git, Jenkins, BitBucket, Crucible, Ansible etc.
4. To introduce the implementation of DevOps for cloud-based applications.
Defining Software, Software Application Domains, Legacy Software, The Changing Nature of Software.
Software Engineering: Defining the Discipline the Software Process, Software Engineering Practice, Process
Models: Prescriptive Process Models, The Unified Process. Agile Methodology, XP: Extreme Programming,
Agile Scrum Framework
Functional and non-functional requirements, user requirements, system requirements, interface specification,
the software requirements document. Requirements engineering process: Feasibility studies, requirements
elicitation and analysis, requirements validation, requirements management.
Metrics for Software Quality, software testing strategies A Strategic Approach to Software Testing, Strategic
Issues, Test Strategies for Conventional Software, Test Strategies for Object-Oriented Software, Context,
Validation Testing, System Testing, The Art of Debugging. RMMM Plan,
Introduction to DevOps: DevOps Principles and Practices, 7‟Cs of DevOps Life Cycle for Business Agility,
DevOps Implementation, Must Do Things for DevOps.
Deployment and Infrastructure Management: Liquibase, Chef, Puppet DevOps and Cloud Adoption, AWS,
DevOps Governance and Controls: Adopting DevOps: What is a DevOps Playbook? Developing a Playbook,
Implementing DevOps Playbook. DevOps Best Practices. DevOps Emerging Trends: Strategy Trends,
Technology Trends
Course Outcomes: At the end of the course, the student should be able to
CO 1: Master underlying principles of software engineering, and Evolution of various Software Process
models while analyzing the agile principles, practices.
CO 2: Apply Requirements planning and implement best practices in software development.
CO 3: Analyze continuous Integration and Continuous Deployment in Industrial Scenario.
CO 4: Apply various Tool Suits available for implementation of DevOps.
CO 5: Apply Tools used in DevOps to Cloud based Applications while understanding the future trends
and current best practices.
27
With effect from the academic year 2023-24
Textbooks:
References:
1. The DevOps Handbook, Gene Kim, Jez Humble, Patrick Debois, John Willis, 3rd edition, 2016.
2. Agile Software Development with Scrum, Ken Schawber and Mike Beedle, Pearson, 2001.
3. Continuous Delivery, Jez Humble and David Farley, Pearson Education, 2010.
28
With effect from the academic year 2023-24
Prerequisites:
Course Objectives:
Memory Management and Virtual Memory - Logical versus Physical Address Space,
Swapping, Contiguous Allocation, Paging, Segmentation, Segmentation with Paging, Demand
Paging, Page Replacement, Page Replacement Algorithms.
29
With effect from the academic year 2023-24
File System Interface and Operations -Access methods, Directory Structure, Protection, File
System Structure, Allocation methods, Disk scheduling algorithms, Free-space Management.
Usage of open, create, read, write, close, lseek, stat, ioctl system calls.
Course Outcomes: At the end of the course, the student will be able to
CO1 : Understand the role of Operating System with its function and services.
CO2 : Compare various algorithms used for CPU scheduling and apply various concepts
related to concurrency and synchronization to solve problems.
CO3 : Understand the inter process communication mechanism and resolve deadlock in
a multi-programmed environment.
CO4 : Understand the concepts of virtual memory and how it is realized in systems
CO5 : Differentiate and Demonstrate file systems, directory structures and their
implementation issues.
Textbooks:
1. Operating System Principles- Abraham Silberchatz, Peter B. Galvin, Greg Gagne 8th
edition, John Wiley.
2. Advanced programming in the UNIX environment, W.R. Stevens, Pearson education.
References:
1. Operating Systems- Internals and Design Principles, William Stallings, 5th edition–
2005, Pearson Education/PHI
2. Operating System A Design Approach- Croley, TMH.
3. Modern Operating Systems, Andrew S. Tanenbaum 2nd edition, Pearson/PHI
4. UNIX programming environment, Kernighan and Pike, PHI/ Pearson Education
30
With effect from the academic year 2023-24
Course Objectives:
Lab problems:
1. Write a java program to demonstrate the use of bounded type parameters and wild card
arguments.
2. Write a java program that returns the value of pi using the lambda expression.
3. Write a java program that takes a string as parameter and calculates the reverse of the string
using lambda expression.
4. Write a java program to implement iterators on Array List and LinkedList.
5. a) Implement a Generic stack to deal with Integer, Double and String data using user-
defined arrays and linked lists.
b) Implement a Generic queue to deal with Integer, Double and String data user-defined
arrays and linked lists.
6. a) Write a Java program to implement Generic stack using Array List Collection class.
b) Write a Java program to implement Generic stack using LinkedList Collection class.
7. a) Write a Java program to implement Generic queue using ArrayList Collection class.
b) Write a Java program to implement Generic queue using LinkedList Collection class.
8. Write a Java program to demonstrate the use of the following Collection classes.
a. HashSet b. LinkedHashSet c. TreeSet
9. Write a java program to create a class called Person with income, age, and name as its
members. Read set A of persons from a user and compute the following sets:
i) Set B of persons whose age > 60
ii) Set C of persons whose income < 10000 and iii) B Ո C
10. Write a Java program to demonstrate the use of the following Collection classes.
a. HashMap b. LinkedHashMap c. TreeMap
11. Create a class Product(id, name, price, type, rating) and perform the following operations
using stream:
i) Find all the products having rating between 4 and 5.
ii) Find first n products having price > 10000.
iii) Find the number of products under each type(map containing type and count).
iv) Find average rating of products with type = “Electronics”.
17. Implement priority queues with max Heap tree using Collection API.
18. Implement heap sort with max Heap tree using Collection API.
References:
1. Java: The Complete Reference, Herbert Schildt, 10th edition, McGraw-Hill Education,
Oracle Press, 2017.
2. Data Structures and Problem Solving Using Java, Mark A. Weiss, 4 th edition, Pearson
Education, 2009.
3. Data Structures and Algorithms in Java, Michael T. Goodrich, Roberto Tamassia, Michael
H. Goldwasser, 6th edition, Wiley Publications, 2014.
32
With effect from the academic year 2023-24
Course Objectives:
1. To introduce the student automation of test cases and importance of automated testing in industry.
2. To understand configuration management; continuous integration deployment, delivery and
monitoring using DevOps tools such as Git, Jenkins, Ansible etc.
3. To introduce the usage of Docker for developing, shipping and running applications.
LIST OF EXPERIMENTS
1. Use UML modelling to any system (ex. ATM system) and study its system specifications to develop the
following UML diagrams
a) use-case, b) class c) Sequence Diagram d) Collaboration Diagram
e) State Chart f) Activity Diagram g) Component Diagram h) Deployment Diagram
2. Take any system (ex. ATM system) and study its system specifications and report the various bugs.
3. Write test cases for any known application (ex. Banking Application).
7. Version Control-GIT: GIT Features, 3-Tree Architecture, GIT – Clone /Commit / Push,
9. Maven POM Builds (pom.xml), Maven Build Life Cycle, Maven Local Repository (.m2), Maven Global
Repository, Group ID, Artifact ID, Snapshot, Maven Dependencies, Maven Plugins
10. Ansible Server Configuration, Infrastructure Management, SSH Connection in Ansible Master, YAML
Scripts, Host Inventory, Host Variables, Group Variables, Host and Group Specific Data, Ad-hoc
Commands
11. Playbooks: Variables, Conditionals, Loops, Blocks, Handlers, Templates, Modules: Core Modules, Extra
Modules, Ansible Roles
12. Docker Installation, Docker Engine, Crating Containers with an Image, Working with Images
13. Docker Command Line Interface, Docker Compose, Docker Hub, Docker Trusted Registry, Docker
swarm, Docker attach, Docker File & Commands
Course Outcomes: At the end of the course, the student should be able to
References:
33
With effect from the academic year 2023-24
Course Objectives:
List of Experiments:
1. Write C programs to simulate the following CPU Scheduling algorithms a) FCFS b) SJF c)
Round Robin d) priority.
2. Write programs using the I/O system calls of UNIX/LINUX operating system (open, read,
write, close, fcntl, seek, stat, opendir, readdir)
3. Write a C program to simulate Bankers Algorithm for Deadlock Avoidance and Prevention.
4. Write a C program to implement the Producer – Consumer problem using semaphores
using UNIX/LINUX system calls.
5. Write C programs to illustrate the following IPC mechanisms a) Pipes b) FIFOs c) Message
Queues d) Shared Memory
6. Write C programs to simulate the memory management techniques Paging and
Segmentation
7. Write C programs to simulate Page replacement policies a) FCFS b) LRU c) Optimal
Course Outcomes: At the end of the course, the student will beable to
Textbooks:
1. Operating System Principles- Abraham Silberchatz, Peter B. Galvin, Greg Gagne 7th
edition, John Wiley.
2. Advanced programming in the Unix environment, W.R.Stevens, Pearson education.
References:
1. Operating Systems – Internals and Design Principles, William Stallings, 5th edition–
2005, Pearson Education/PHI.
2. Operating System - A Design Approach-Crowley, TMH.
3. UNIX Programming Environment, Kernighan and Pike, PHI/Pearson Education
4. UNIX Internals: The New Frontiers, U. Vahalia, Pearson Education.
5. Design of the UNIX Operating System, Maurice Bach, 1st edition, Pearson Education.
34
With effect from the academic year 2023-24
Course Description:
This course offers an introduction to Gender Studies, an interdisciplinary field that asks critical
questions about the meanings of sex and gender in society. The primary goal of this course is to
familiarize students with key issues, questions and debates in Gender Studies, both historical and
contemporary. It draws on multiple disciplines – such as literature, history, economics,
psychology, sociology, philosophy, political science, anthropology and media studies – to examine
cultural assumptions about sex, gender, and sexuality.
This course integrates analysis of current events through student presentations, aiming to
increase awareness of contemporary and historical experiences of women, and of the multiple
ways that sex and gender interact with race, class, caste, nationality and other social identities.
This course also seeks to build an understanding and initiate and strengthen programmes
combating gender-based violence and discrimination. The course also features several exercises
and reflective activities designed to examine the concepts of gender, gender-based violence,
sexuality, and rights. It will further explore the impact of gender-based violence on education,
health and development.
Course Objectives:
35
With effect from the academic year 2023-24
Domestic Violence: Speaking Out: Is Home a Safe Place? -When Women Unite [Film]. Rebuilding
Lives. Thinking about Sexual Violence Blaming the Victim-“I Fought for my Life….”
Gender and Film-Gender and Electronic Media-Gender and Advertisement-Gender and Popular
Literature- Gender Development Issues-Gender Sensitive Language-Gender and Popular
Literature - Just Relationships: Being Together as Equals
Mary Kom and Onler. Love and Acid just do not Mix. Love Letters. Mothers and Fathers. Rosa
Parks- The Brave Heart.
Course Outcomes: At the end of the course, the student should be able to
Textbook:
36