0% found this document useful (0 votes)
485 views35 pages

R23 B.Tech CSE Syllabus Overview

The document outlines the R23 regulations for the B.Tech in Computer Science & Engineering program, detailing the curriculum for each semester across four years. It includes course titles, credit distributions, and objectives for various subjects such as Digital Logic, Data Structures, and Machine Learning. Additionally, it specifies mandatory internships and community service projects, along with textbooks and online resources for further learning.

Uploaded by

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

R23 B.Tech CSE Syllabus Overview

The document outlines the R23 regulations for the B.Tech in Computer Science & Engineering program, detailing the curriculum for each semester across four years. It includes course titles, credit distributions, and objectives for various subjects such as Digital Logic, Data Structures, and Machine Learning. Additionally, it specifies mandatory internships and community service projects, along with textbooks and online resources for further learning.

Uploaded by

Sandhya
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

[Link].– II Year I Semester


[Link]. Category Title L T P Credits
1 Basic Sciences Discrete Mathematics & Graph 3 0 0 3
Theory
2 HSMC Universal Human Values– 2 1 0 3
Understanding Harmony & Human
Ethical Conduct
3 Engineering Science Digital Logic & Computer 3 0 0 3
Organization
4 Professional Core Advanced Data Structures & 3 0 0 3
Algorithm Analysis
5 Professional Core Object Oriented Programming 3 0 0 3
Through Java
6 Professional Core Advanced Data Structures and 0 0 3 1.5
Algorithm Analysis Lab
7 Professional Core Object Oriented Programming 0 0 3 1.5
Through Java Lab
8 Skill Enhancement Python Programming 0 1 2 2
Course
9 Audit Course Environmental Science 2 0 0 -
Total 16 2 8 20
[Link].– II Year II Semester
[Link] Catego Title L T P Credit
. ry s
1 Management Managerial Economics and 2 0 0 2
Elective- I Financial Analysis /
Business Environment /
Organizational Behavior
2 Basic Science Probability & Statistics 3 0 0 3

3 Professional Core Operating Systems 3 0 0 3

4 Professional Core Database Management Systems 3 0 0 3

5 Professional Core Software Engineering 2 1 0 3

6 Professional Core Operating Systems Lab 0 0 3 1.5

7 Professional Core Database Management Systems 0 0 3 1.5


Lab
8 Skill Enhancement Full Stack Development –I 0 1 2 2
Course
Design Thinking
9 BS&H 1 0 2 2
& Innovation
Total 14 2 10 21
Mandatory Community Service Project Internship of 08 weeks duration during
summer vacation

1
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

[Link]. – III Year I Semester

[Link] Category Title L T P Credit


. s
1 Professional Core Machine Learning 3 0 0 3

2 Professional Core Computer Networks 3 0 0 3


3 Professional Core Formal Languages and 3 0 0 3
Automata Theory
4 Professional Elective-I 1. Object Oriented 3 0 0 3
Analysis and Design
2. Artificial Intelligence
3. Microprocessors &
Microcontrollers
4. Data Warehousing &
Data Mining
5. 12 week MOOC
Swayam/NPTEL course
recommended by the
BoS
5 Open Elective-I 3 0 0 3
6 Professional Core Machine Learning Lab 0 0 3 1.5

7 Professional Core Computer Networks Lab 0 0 3 1.5


8 Skill Enhancement course Full Stack Development - 0 1 2 2
II
9 Engineering Science Tinkering Lab 0 0 2 1
10 Evaluation of Community - - - 2
Service Internship
Total 15 1 10 23

2
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

[Link]. – III Year II Semester


[Link] Category Title L T P Credit
. s
1 Professional Core Compiler Design 3 0 0 3
2 Professional Core Cloud Computing 3 0 0 3
3 Professional Core Cryptography & Network 3 0 0 3
Security
4 Professional Elective-II 1. Software Testing 3 0 0 3
Methodologies
2. Cyber Security
3. DevOps
4. Embedded Systems
5. 12 week MOOC
Swayam/NPTEL
course
recommended by the
BoS
5 Professional Elective-III 1. Software Project 3 0 0 3
Management
2. Mobile Adhoc
Networks
3. Natural Language
Processing
4. Distributed
Operating System
5. 12 week MOOC
Swayam/NPTEL
course
recommended by
the BoS
6 Open Elective – II 3 0 0 3
7 Professional Core Cloud Computing Lab 0 0 3 1.5
8 Professional Core Cryptography & Network 0 0 3 1.5
Security Lab
9 Skill Enhancement Soft skills 0 1 2 2
course OR
IELTS
10 Audit Course Technical Paper Writing 2 0 0 -
& IPR
Total 20 1 08 23
Mandatory Industry Internship of 08 weeks duration during summer vacation

3
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

[Link]. – IV Year I Semester


[Link] Category Title L T P Credit
. s
1 Professional Core Deep Learning 2 1 0 3
2 Management Course- II Human Resource 2 0 0 2
Management
3 Professional Elective-IV 1. Software Architecture 3 0 0 3
& Design Patterns
2. Blockchain
Technology
3. Augmented Reality &
Virtual Reality
4. Internet of Things
5. 12 week MOOC
Swayam/NPTEL
course recommended
by the BoS
4 Professional Elective-V 1. Agile methodologies 3 0 0 3
2. Metaverse
3. Computer Vision
4. Cyber Physical
Systems
5. 12 week MOOC
Swayam/NPTEL
course recommended
by the BoS
5 Open Elective-III 3 0 0 3
6 Open Elective-IV 3 0 0 3
7 Skill Enhancement Prompt Engineering 0 1 2 2
Course
8 Audit Course Gender Sensitization 2 0 0 -
9 Internship Evaluation of Industry - - - 2
Internship
Total 18 2 02 21

[Link] – IV Year II Semester

[Link] Category Title L T P Credit


. s
1 Internship & Full semester 0 0 24 12
Project Work Internship &
Project Work

Open Electives

Open Electives, offered to other department students:

4
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING
Open Elective I: Java Programming
Open Elective II: Operating Systems
Open Elective III: Data Base Management Systems
Open Elective IV: Computer Networks

II Year I Digital Logic & Computer L T P C


Semester Organization 3 0 0 3

Course Objectives:
The main objectives of the course is to
 Provide students with a comprehensive understanding of digital
5
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

logic design principles and computer organization fundamentals


 Describe memory hierarchy concepts
 Explain input/output (I/O) systems and their interaction with the
CPU, memory, and peripheral devices
Course Outcomes:
After completion of the course, students will be able to
1. Differentiate between combinational and sequential circuits based
on their characteristics and functionalities. (L2)
2. Demonstrate an understanding of computer functional units. (L2)
3. Analyze the design and operation of processors, including
instruction execution, pipelining, and control unit mechanisms, to
comprehend their role in computer systems. (L3)
4. Describe memory hierarchy concepts, including cache memory,
virtual memory, and secondary storage, and evaluate their impact
on system performance and scalability. (L3)
5. Explain input/output (I/O) systems and their interaction with the
CPU, memory, and peripheral devices, including interrupts, DMA,
and I/O mapping techniques. (L3)

UNIT – I:
Data Representation: Binary Numbers, Fixed Point Representation.
Floating Point Representation. Number base conversions, Octal and
Hexadecimal Numbers, components, Signed binary numbers, Binary codes
Digital Logic Circuits-I: Basic Logic Functions, Logic gates, universal
logic gates, Minimization of Logic expressions. K-Map Simplification,
Combinational Circuits, Decoders, Multiplexers

UNIT – II:
Digital Logic Circuits-II: Sequential Circuits, Flip-Flops, Binary counters,
Registers, Shift Registers, Ripple counters
Basic Structure of Computers: Computer Types, Functional units, Basic
operational concepts, Bus structures, Software, Performance,
multiprocessors and multi computers, Computer Generations, Von-
Neumann Architecture

UNIT – III:
Computer Arithmetic: Addition and Subtraction of Signed Numbers,
Design of Fast Adders, Multiplication of Positive Numbers, Signed-operand
Multiplication, Fast Multiplication, Integer Division, Floating-Point Numbers
and Operations
Processor Organization: Fundamental Concepts, Execution of a
Complete Instruction, Multiple-Bus Organization, Hardwired Control and
Multi programmed Control

UNIT – IV:
The Memory Organization: Basic Concepts, Semiconductor RAM
Memories, Read-Only Memories, Speed, Size and Cost, Cache Memories,

6
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

Performance Considerations, Virtual Memories, Memory Management


Requirements, Secondary Storage

UNIT – V:
Input/Output Organization: Accessing I/O Devices, Interrupts,
Processor Examples, Direct Memory Access, Buses, Interface Circuits,
Standard I/O Interfaces

Textbooks:
1. Computer Organization, Carl Hamacher, Zvonko Vranesic, Safwat
Zaky, 6th edition, McGraw Hill
2. Digital Design, 6th Edition, M. Morris Mano, Pearson Education.

Reference Books:
1. Computer Organization and Architecture, William Stallings,
11thEdition, Pearson.
2. Computer Systems Architecture, [Link] Mano, 3 rdEdition,
Pearson
3. Computer Organization and Design, David A. Paterson, John L.
Hennessy, Elsevier
4. Fundamentals of Logic Design, Roth, 5thEdition, Thomson

Online Learning Resources:


1. [Link]

7
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

II Year I Advanced Data Structures & L T P C


Semester Algorithm Analysis 3 0 0 3

Course Objectives:
The main objectives of the course is to
 provide knowledge on advance data structures frequently used in
Computer Science domain
 Develop skills in algorithm design techniques popularly used
 Understand the use of various data structures in the algorithm
design
Course Outcomes:
After completion of the course, students will be able to
1. Illustrate the working of the advanced tree data structures and their
applications (L2)
2. Understand the Graph data structure, traversals and apply them in
various contexts. (L2)
3. Use various data structures in the design of algorithms (L3)
4. Recommend appropriate data structures based on the problem
being solved (L5)
5. Analyze algorithms with respect to space and time complexities (L4)

UNIT – I:
Introduction to Algorithm Analysis, Space and Time Complexity analysis,
Asymptotic Notations.
AVL Trees – Creation, Insertion, Deletion operations and Applications
B-Trees – Creation, Insertion, Deletion operations and Applications

UNIT – II:
Heap Trees (Priority Queues) – Min and Max Heaps, Operations and
Applications
Graphs – Terminology, Representations, Basic Search and Traversals,
Connected Components and Biconnected Components, applications
Divide and Conquer: The General Method, Quick Sort, Merge Sort,
Strassen’s matrix multiplication, Convex Hull

UNIT – III:
Greedy Method: General Method, Job Sequencing with deadlines,
Knapsack Problem, Minimum cost spanning trees, Single Source Shortest
Paths
Dynamic Programming: General Method, All pairs shortest paths, Single
Source Shortest Paths– General Weights (Bellman Ford Algorithm),
Optimal Binary Search Trees, 0/1 Knapsack, String Editing, Travelling
Salesperson problem

8
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

UNIT – IV:
Backtracking: General Method, 8-Queens Problem, Sum of Subsets
problem, Graph Coloring, 0/1 Knapsack Problem
Branch and Bound: The General Method, 0/1 Knapsack Problem,
Travelling Salesperson problem

UNIT – V:
NP Hard and NP Complete Problems: Basic Concepts, Cook’s theorem
NP Hard Graph Problems: Clique Decision Problem (CDP), Chromatic
Number Decision Problem (CNDP), Traveling Salesperson Decision
Problem (TSP)
NP Hard Scheduling Problems: Scheduling Identical Processors, Job Shop
Scheduling

Textbooks:
1. Fundamentals of Data Structures in C++, Horowitz, Ellis; Sahni,
Sartaj; Mehta, Dinesh, 2nd Edition Universities Press
2. Computer Algorithms in C++, Ellis Horowitz, Sartaj Sahni,
Sanguthevar Rajasekaran, 2nd Edition University Press

Reference Books:
1. Data Structures and program design in C, Robert Kruse, Pearson
Education Asia
2. An introduction to Data Structures with applications, Trembley &
Sorenson, McGraw Hill
3. The Art of Computer Programming, Vol.1: Fundamental Algorithms,
Donald E Knuth, Addison-Wesley, 1997.
4. Data Structures using C & C++: Langsam, Augenstein & Tanenbaum,
Pearson, 1995
5. Algorithms + Data Structures & Programs:, [Link], PHI
6. Fundamentals of Data Structures in C++: Horowitz Sahni & Mehta,
Galgottia Pub.
7. Data structures in Java:, Thomas Standish, Pearson Education Asia

Online Learning Resources:


1. [Link]
2. [Link]
3. [Link]

9
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

II Year I Object Oriented Programming L T P C


Semester through Java 3 0 0 3

Course Objectives:

The learning objectives of this course are to:


 identify Java language components and how they work together in
applications
 Learn the fundamentals of object-oriented programming in Java,
including defining classes, invoking methods, using class libraries.
 learn how to extend Java classes with inheritance and dynamic
binding and how to use exception handling in Java applications
 understand how to design applications with threads in Java
 understand how to use Java APIs for program development
Course Outcomes:
After completion of the course, students will be able to
1. Analyze problems, design solutions using OOP principles, and
implement them efficiently in Java. (L4)
2. Design and implement classes to model real-world entities, with a
focus on attributes, behaviours, and relationships between objects
(L4)
3. Demonstrate an understanding of inheritance hierarchies and
polymorphic behaviour, including method overriding and dynamic
method dispatch. (L3)
4. Apply Competence in handling exceptions and errors to write robust
and fault-tolerant code. (L3)
5. Perform file input/output operations, including reading from and
writing to files using Java I/O classes, graphical user interface (GUI)
programming using JavaFX. (L3)
UNIT I
Object Oriented Programming: Basic concepts, Principles,
Program Structure in Java: Introduction, Writing Simple Java Programs,
Elements or Tokens in Java Programs, Java Statements, Command Line
Arguments, User Input to Programs, Escape Sequences Comments,
Programming Style.
Data Types, Variables, and Operators :Introduction, Data Types in Java,
Declaration of Variables, Data Types, Type Casting, Scope of Variable
Identifier, Literal Constants, Symbolic Constants, Formatted Output with
printf() Method, Static Variables and Methods, Attribute Final,
Introduction to Operators, Precedence and Associativity of Operators,
Assignment Operator ( = ), Basic Arithmetic Operators, Increment (++)
and Decrement (- -) Operators, Ternary Operator, Relational Operators,
Boolean Logical Operators, Bitwise Logical Operators.
Control Statements: Introduction, if Expression, Nested if Expressions,
if–else Expressions, Ternary Operator?:, Switch Statement, Iteration
Statements, while Expression, do–while Loop, for Loop, Nested for Loop,
For–Each for Loop, Break Statement, Continue Statement.

10
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

UNIT II
Classes and Objects: Introduction, Class Declaration and Modifiers,
Class Members, Declaration of Class Objects, Assigning One Object to
Another, Access Control for Class Members, Accessing Private Members of
Class, Constructor Methods for Class, Overloaded Constructor Methods,
Nested Classes, Final Class and Methods, Passing Arguments by Value and
by Reference, Keyword this.
Methods: Introduction, Defining Methods, Overloaded Methods,
Overloaded Constructor Methods, Class Objects as Parameters in Methods,
Access Control, Recursive Methods, Nesting of Methods, Overriding
Methods, Attributes Final and Static.

UNIT III
Arrays: Introduction, Declaration and Initialization of Arrays, Storage of
Array in Computer Memory, Accessing Elements of Arrays, Operations on
Array Elements, Assigning Array to Another Array, Dynamic Change of
Array Size, Sorting of Arrays, Search for Values in Arrays, Class Arrays,
Two-dimensional Arrays, Arrays of Varying Lengths, Three-dimensional
Arrays, Arrays as Vectors.
Inheritance: Introduction, Process of Inheritance, Types of Inheritances,
Universal Super Class-Object Class, Inhibiting Inheritance of Class Using
Final, Access Control and Inheritance, Multilevel Inheritance, Application of
Keyword Super, Constructor Method and Inheritance, Method Overriding,
Dynamic Method Dispatch, Abstract Classes, Interfaces and Inheritance.
Interfaces: Introduction, Declaration of Interface, Implementation of
Interface, Multiple Interfaces, Nested Interfaces, Inheritance of Interfaces,
Default Methods in Interfaces, Static Methods in Interface, Functional
Interfaces, Annotations.

UNIT IV
Packages and Java Library: Introduction, Defining Package, Importing
Packages and Classes into Programs, Path and Class Path, Access Control,
Packages in Java SE, [Link] Package and its Classes, Class Object,
Enumeration, class Math, Wrapper Classes, Auto-boxing and Auto-
unboxing, Java util Classes and Interfaces, Formatter Class, Random Class,
Time Package, Class Instant ([Link]), Formatting for Date/Time
in Java, Temporal Adjusters Class, Temporal Adjusters Class.
Exception Handling: Introduction, Hierarchy of Standard Exception
Classes, Keywords throws and throw, try, catch, and finally Blocks,
Multiple Catch Clauses, Class Throwable, Unchecked Exceptions, Checked
Exceptions.
Java I/O and File: Java I/O API, standard I/O streams, types, Byte
streams, Character streams, Scanner class, Files in Java(Text Book 2)

UNIT V

11
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

String Handling in Java: Introduction, Interface Char Sequence, Class


String, Methods for Extracting Characters from Strings, Comparison,
Modifying, Searching; Class String Buffer.
Multithreaded Programming: Introduction, Need for Multiple Threads
Multithreaded Programming for Multi-core Processor, Thread Class, Main
Thread-Creation of New Threads, Thread States, Thread Priority-
Synchronization, Deadlock and Race Situations, Inter-thread
Communication - Suspending, Resuming, and Stopping of Threads.
Java Database Connectivity: Introduction, JDBC Architecture, Installing
MySQL and MySQL Connector/J, JDBC Environment Setup, Establishing
JDBC Database Connections, ResultSet Interface
Java FX GUI: Java FX Scene Builder, Java FX App Window Structure,
displaying text and image, event handling, laying out nodes in scene
graph, mouse events (Text Book 3)

Text Books:
1) JAVA one step ahead, Anitha Seth, [Link], Oxford.
2) Joy with JAVA, Fundamentals of Object Oriented Programming,
Debasis Samanta, Monalisa Sarma, Cambridge, 2023.
3) JAVA for Programmers, Paul Deitel, Harvey Deitel, 4 th Edition,
Pearson.

References Books:
1) The complete Reference Java, 11th edition, Herbert Schildt, TMH
2) Introduction to Java programming, 7th Edition, Y Daniel Liang,
Pearson

Online Resources:
1) [Link]
2) [Link]
lex_auth_012880464547618816347_shared/overview

12
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

L T P C
II Year I Advanced Data Structures &
Semester
1.
Algorithm Analysis Lab 0 0 3
5

Course Objectives:
The objectives of the course is to
 acquire practical skills in constructing and managing Data structures
 apply the popular algorithm design methods in problem-solving
scenarios
Course Outcomes:
After completion of the course, students will be able to
1. Design and develop programs to solve real world problems
with the popular algorithm design methods. (L5)
2. Demonstrate an understanding of Non-Linear data structures
by developing implementing the operations on AVL Trees, B-
Trees, Heaps and Graphs. (L2)
3. Critically assess the design choices and implementation
strategies of algorithms and data structures in complex
applications. (L5)
4. Utilize appropriate data structures and algorithms to optimize
solutions for specific computational problems. (L3)
5. Compare the performance of different of algorithm design
strategies (L4)

Experiments covering the Topics:


 Operations on AVL trees, B-Trees, Heap Trees
 Graph Traversals
 Sorting techniques
 Finding Biconnected components in a graph
 Shortest path algorithms using greedy Method
 0/1 Knapsack Problem using Dynamic Programming and Backtracking
 Travelling Salesperson problem using Branch and Bound
 N-Queens Problem using Backtracking
 Job Sequencing using Branch and Bound

Sample Programs:
1. Construct an AVL tree for a given set of elements which are stored in
a file. And implement insert and delete operation on the constructed
tree. Write contents of tree into a new file using in-order.
2. Construct B-Tree an order of 5 with a set of 100 random elements
stored in array. Implement searching, insertion and deletion
operations.
3. Construct Min and Max Heap using arrays, delete any element and
display the content of the Heap.
4. Implement BFT and DFT for given graph, when graph is represented
by
a) Adjacency Matrix b) Adjacency Lists

13
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

5. Write a program for finding the biconnected components in a given


graph.
6. Implement Quick sort and Merge sort and observe the execution
time for various input sizes (Average, Worst and Best cases).
7. Compare the performance of Single Source Shortest Paths using
Greedy method when the graph is represented by adjacency matrix
and adjacency lists.
8. Implement Job Sequencing with deadlines using Greedy strategy.
9. Write a program to solve 0/1 Knapsack problem Using Dynamic
Programming.
10. Implement N-Queens Problem Using Backtracking.
11. Use Backtracking strategy to solve 0/1 Knapsack problem.
12. Implement Travelling Sales Person problem using Branch and Bound
approach.

Reference Books:
1. Fundamentals of Data Structures in C++, Horowitz Ellis, Sahni
Sartaj, Mehta, Dinesh, 2nd Edition, Universities Press
2. Computer Algorithms/C++ Ellis Horowitz, Sartaj Sahni, Sanguthevar
Rajasekaran, 2nd Edition, University Press
3. Data Structures and program design in C, Robert Kruse, Pearson
Education Asia
4. An introduction to Data Structures with applications, Trembley &
Sorenson, McGraw Hill

Online Learning Resources:


1. [Link]
2. [Link]

14
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

Object Oriented L T P C
II Year I
Semester Programming through Java 0 0 3
1.
Lab 5

Course Objectives:
The aim of this course is to
 Practice object-oriented programming in the Java programming
language
 Implement Classes, Objects, Methods, Inheritance, Exception,
Runtime Polymorphism, User defined Exception handling mechanism
 Illustrate inheritance, Exception handling mechanism, JDBC
connectivity
 Construct Threads, Event Handling, implement packages, Java FX
GUI
Course Outcomes:
After completion of the course, students will be able to
1. Demonstrate a solid understanding of Java syntax, including data
types, control structures, methods, classes, objects, inheritance,
polymorphism, and exception handling. (L2)
2. Apply fundamental OOP principles such as encapsulation,
inheritance, polymorphism, and abstraction to solve programming
problems effectively. (L3)
3. Familiar with commonly used Java libraries and APIs, including the
Collections Framework, Java I/O, JDBC, and other utility classes. (L2)
4. Develop problem-solving skills and algorithmic thinking, applying
OOP concepts to design efficient solutions to various programming
challenges. (L3)
5. Proficiently construct graphical user interface (GUI) applications
using JavaFX (L4)
Experiments covering the Topics:
 Object Oriented Programming fundamentals- data types, control
structures
 Classes, methods, objects, Inheritance, polymorphism,
 Exception handling, Threads, Packages, Interfaces
 Files, I/O streams, JavaFX GUI

Sample Experiments:

Exercise – 1:
a) Write a JAVA program to display default value of all primitive data type
of JAVA
b) Write a java program that display the roots of a quadratic equation
ax2+bx=0. Calculate the discriminate D and basing on value of D, describe
the nature of root.

15
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

Exercise - 2
a) Write a JAVA program to search for an element in a given list of
elements using binary search mechanism.
b) Write a JAVA program to sort for an element in a given list of elements
using bubble sort
c) Write a JAVA program using StringBuffer to delete, remove character.

Exercise - 3
a) Write a JAVA program to implement class mechanism. Create a class,
methods and invoke them inside main method.
b) Write a JAVA program implement method overloading.
c) Write a JAVA program to implement constructor.
d) Write a JAVA program to implement constructor overloading.

Exercise - 4
a) Write a JAVA program to implement Single Inheritance
b) Write a JAVA program to implement multi level Inheritance
c) Write a JAVA program for abstract class to find areas of different shapes

Exercise - 5
a) Write a JAVA program give example for “super” keyword.
b) Write a JAVA program to implement Interface. What kind of Inheritance
can be achieved?
c) Write a JAVA program that implements Runtime polymorphism

Exercise - 6
a) Write a JAVA program that describes exception handling mechanism
b) Write a JAVA program Illustrating Multiple catch clauses
c) Write a JAVA program for creation of Java Built-in Exceptions
d) Write a JAVA program for creation of User Defined Exception

Exercise - 7
a) Write a JAVA program that creates threads by extending Thread class.
First thread display “Good Morning “every 1 sec, the second thread
displays “Hello “every 2 seconds and the third display “Welcome” every 3
seconds,(Repeat the same by implementing Runnable)
b) Write a program illustrating is Alive and join ()
c) Write a Program illustrating Daemon Threads.
d) Write a JAVA program Producer Consumer Problem

Exercise – 8
a) Write a JAVA program that import and use the user defined packages
b) Without writing any code, build a GUI that display text in label and
image in an ImageView (use JavaFX)
c) Build a Tip Calculator app using several JavaFX components and learn
how to respond to user interactions with the GUI

References Books:
16
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

1. P. J. Deitel, H. M. Deitel, “Java for Programmers”, Pearson Education,


PHI, 4th Edition, 2007.
2. P. Radha Krishna, “Object Oriented Programming through Java”,
Universities Press, 2nd Edition, 2007
3. Bruce Eckel, “Thinking in Java”, Pearson Education, 4th Edition,
2006.
4. Sachin Malhotra, Saurabh Chaudhary, “Programming in Java”,
Oxford University Press, 5th Edition, 2010.
Online Learning Resources:
[Link]
[Link]

II Year I Python Programming L T P C

17
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

Semester (Skill Enhancement Course) 0 1 2 2

Course Objectives:
The main objectives of the course are to
• Introduce core programming concepts of Python programming
language.
• Demonstrate about Python data structures like Lists, Tuples, Sets
and dictionaries
• Implement Functions, Modules and Regular Expressions in Python
Programming and to create practical and contemporary
applications using these
Course Outcomes:
After completion of the course, students will be able to
1. showcase adept command of Python syntax, deftly utilizing
variables, data types, control structures, functions, modules, and
exception handling to engineer robust and efficient code solutions.
(L4)
2. apply Python programming concepts to solve a variety of
computational problems (L3)
3. understand the principles of object-oriented programming (OOP) in
Python, including classes, objects, inheritance, polymorphism, and
encapsulation, and apply them to design and implement Python
programs (L3)
4. become proficient in using commonly used Python libraries and
frameworks such as JSON, XML, NumPy, pandas (L2)
5. exhibit competence in implementing and manipulating fundamental
data structures such as lists, tuples, sets, dictionaries (L3)
UNTI-I:
History of Python Programming Language, Thrust Areas of Python,
Installing Anaconda Python Distribution, Installing and Using Jupyter
Notebook.
Parts of Python Programming Language: Identifiers, Keywords, Statements
and Expressions, Variables, Operators, Precedence and Associativity, Data
Types, Indentation, Comments, Reading Input, Print Output, Type
Conversions, the type () Function and Is Operator, Dynamic and Strongly
Typed Language.
Control Flow Statements: if statement, if-else statement, if...elif…else,
Nested if statement, while Loop, for Loop, continue and break Statements,
Catching Exceptions Using try and except Statement.

Sample Experiments:
1. Write a program to find the largest element among three Numbers.
2. Write a Program to display all prime numbers within an interval
3. Write a program to swap two numbers without using a temporary
variable.
4. Demonstrate the following Operators in Python with suitable
examples.
i) Arithmetic Operators ii) Relational Operators iii) Assignment
18
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

Operators iv) Logical Operators v) Bit wise Operators vi) Ternary


Operator vii) Membership Operators viii) Identity Operators
5. Write a program to add and multiply complex numbers
6. Write a program to print multiplication table of a given number.

UNIT-II:
Functions: Built-In Functions, Commonly Used Modules, Function Definition
and Calling the function, return Statement and void Function, Scope and
Lifetime of Variables, Default Parameters, Keyword Arguments, *args and
**kwargs, Command Line Arguments.
Strings: Creating and Storing Strings, Basic String Operations, Accessing
Characters in String by Index Number, String Slicing and Joining, String
Methods, Formatting Strings.
Lists: Creating Lists, Basic List Operations, Indexing and Slicing in Lists,
Built-In Functions Used on Lists, List Methods, del Statement.

Sample Experiments:
7. Write a program to define a function with multiple return values.
8. Write a program to define a function using default arguments.
9. Write a program to find the length of the string without using any
library functions.
10. Write a program to check if the substring is present in a given string or
not.
11. Write a program to perform the given operations on a list:
i. additionii. insertioniii. slicing
12. Write a program to perform any 5 built-in functions by taking any list.

UNIT-III:
Dictionaries: Creating Dictionary, Accessing and Modifying key:value Pairs
in Dictionaries, Built-In Functions Used on Dictionaries, Dictionary
Methods, del Statement.
Tuples and Sets: Creating Tuples, Basic Tuple Operations, tuple() Function,
Indexing and Slicing in Tuples, Built-In Functions Used on Tuples, Relation
between Tuples and Lists, Relation between Tuples and Dictionaries, Using
zip() Function, Sets, Set Methods, Frozenset.

Sample Experiments:
13. Write a program to create tuples (name, age, address, college) for at
least two members and concatenate the tuples and print the
concatenated tuples.
14. Write a program to count the number of vowels in a string (No
control flow allowed).
15. Write a program to check if a given key exists in a dictionary or not.
16. Write a program to add a new key-value pair to an existing
dictionary.
17. Write a program to sum all the items in a given dictionary.

UNIT-IV:
19
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

Files: Types of Files, Creating and Reading Text Data, File Methods to Read
and Write Data, Reading and Writing Binary Files, Pickle Module, Reading
and Writing CSV Files, Python os and [Link] Modules.
Object-Oriented Programming: Classes and Objects, Creating Classes in
Python, Creating Objects in Python, Constructor Method, Classes with
Multiple Objects, Class Attributes Vs Data Attributes, Encapsulation,
Inheritance, Polymorphism.

Sample Experiments:
18. Write a program to sort words in a file and put them in another file.
The output file should have only lower-case words, so any upper-
case words from source must be lowered.
19. Python program to print each line of a file in reverse order.
20. Python program to compute the number of characters, words and
lines in a file.
21. Write a program to create, display, append, insert and reverse the
order of the items in the array.
22. Write a program to add, transpose and multiply two matrices.
23. Write a Python program to create a class that represents a shape.
Include methods to calculate its area and perimeter. Implement
subclasses for different shapes like circle, triangle, and square.

UNIT-V:
Introduction to Data Science: Functional Programming, JSON and XML in
Python, NumPy with Python, Pandas.
Sample Experiments:
24. Python program to check whether a JSON string contains complex
object or not.
25. Python Program to demonstrate NumPy arrays creation using array
() function.
26. Python program to demonstrate use of ndim, shape, size, dtype.
27. Python program to demonstrate basic slicing, integer and Boolean
indexing.
28. Python program to find min, max, sum, cumulative sum of array
29. Create a dictionary with at least five keys and each key represent
value as a list where this list contains at least ten values and convert
this dictionary as a pandas data frame and explore the data through
the data frame as follows:
a) Apply head () function to the pandas data frame
b) Perform various data selection operations on Data Frame
30. Select any two columns from the above data frame, and observe
the change in one attribute with respect to other attribute with
scatter and plot operations in matplotlib

Reference Books:
1. Gowri shankar S, Veena A., Introduction to Python Programming,
CRC Press.
20
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

2. Python Programming, S Sridhar, J Indumathi, V M Hariharan, 2 nd


Edition, Pearson, 2024
3. Introduction to Programming Using Python, Y. Daniel Liang,
Pearson.

Online Learning Resources/Virtual Labs:


1. [Link]
2. [Link]
specialization=python#syllabus

II Year II L T P C
Operating Systems
Semester 3 0 0 3

21
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

Course Objectives:
The main objectives of the course is to make student
 Understand the basic concepts and principles of operating systems,
including process management, memory management, file systems,
and Protection
 Make use of process scheduling algorithms and synchronization
techniques to achieve better performance of a computer system.
 Illustrate different conditions for deadlock and their possible
solutions.
Course Outcomes:
After completion of the course, students will be able to
1. Describe the basics of the operating systems, mechanisms of OS
to handle processes, threads, and their communication. (L1)
2. Understand the basic concepts and principles of operating
systems, including process management, memory management,
file systems, and Protection. (L2)
3. Make use of process scheduling algorithms and synchronization
techniques to achieve better performance of a computer system.
(L3)
4. Illustrate different conditions for deadlock and their possible
solutions. (L2)
5. Analyze the memory management and its allocation policies. (L4)

UNIT - I
Operating Systems Overview: Introduction, Operating system functions,
Operating systems operations, Computing environments, Free and Open-
Source Operating Systems
System Structures: Operating System Services, User and Operating-
System Interface, system calls, Types of System Calls, system programs,
Operating system Design and Implementation, Operating system
structure, Building and Booting an Operating System, Operating system
debugging

UNIT - II
Processes: Process Concept, Process scheduling, Operations on processes,
Inter-process communication.
Threads and Concurrency: Multithreading models, Thread libraries,
Threading issues.
CPU Scheduling: Basic concepts, Scheduling criteria, Scheduling
algorithms, Multiple processor scheduling.

UNIT – III
Synchronization Tools: The Critical Section Problem, Peterson’s Solution,
Mutex Locks, Semaphores, Monitors, Classic problems of Synchronization.
Deadlocks: system Model, Deadlock characterization, Methods for
handling Deadlocks, Deadlock prevention, Deadlock avoidance, Deadlock
detection, Recovery from Deadlock.

22
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

UNIT - IV
Memory-Management Strategies: Introduction, Contiguous memory
allocation, Paging, Structure of the Page Table, Swapping.
Virtual Memory Management: Introduction, Demand paging, Copy-on-
write, Page replacement, Allocation of frames, Thrashing
Storage Management: Overview of Mass Storage Structure, HDD
Scheduling.

UNIT - V
File System: File System Interface: File concept, Access methods,
Directory Structure; File system Implementation: File-system structure,
File-system Operations, Directory implementation, Allocation method, Free
space management; File-System Internals: File-System Mounting,
Partitions and Mounting, File Sharing.
Protection: Goals of protection, Principles of protection, Protection Rings,
Domain of protection, Access matrix.

Text Books:
1. Operating System Concepts, Silberschatz A, Galvin P B, Gagne G,
10th Edition, Wiley, 2018.
2. Modern Operating Systems, Tanenbaum A S, 4th Edition, Pearson ,
2016

Reference Books:
1. Operating Systems -Internals and Design Principles, Stallings W, 9 th
edition, Pearson, 2018
2. Operating Systems: A Concept Based Approach, D.M Dhamdhere, 3 rd
Edition, McGraw- Hill, 2013

Online Learning Resources:


1. [Link]
2. [Link]

DATABASE MANAGEMENT L T P C
II Year II Semester
SYSTEMS 3 0 0 3

Course Objectives:
The main objectives of the course is to
23
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

 Introduce database management systems and to give a good formal


foundation on the relational model of data and usage of Relational
Algebra
 Introduce the concepts of basic SQL as a universal Database
language
 Demonstrate the principles behind systematic database design
approaches by covering conceptual design, logical design through
normalization
 Provide an overview of physical design of a database system, by
discussing Database indexing techniques and storage techniques
Course Outcomes:
After completion of the course, students will be able to
1. Understand the basic concepts of database management systems
(L2)
2. Analyze a given database application scenario to use ER model for
conceptual design of the database (L4)
3. Utilize SQL proficiently to address diverse query challenges (L3).
4. Employ normalization methods to enhance database structure (L3)
5. Assess and implement transaction processing, concurrency control
and database recovery protocols in databases. (L4)

UNIT I:
Introduction: Database system, Characteristics (Database Vs File System),
Database Users, Advantages of Database systems, Database applications.
Brief introduction of different Data Models; Concepts of Schema, Instance
and data independence; Three tier schema architecture for data
independence; Database system structure, environment, Centralized and
Client Server architecture for the database.
Entity Relationship Model: Introduction, Representation of entities,
attributes, entity set, relationship, relationship set, constraints, sub
classes, super class, inheritance, specialization, generalization using ER
Diagrams.

UNIT II:
Relational Model: Introduction to relational model, concepts of domain,
attribute, tuple, relation, importance of null values, constraints (Domain,
Key constraints, integrity constraints) and their importance, Relational
Algebra, Relational Calculus. BASIC SQL: Simple Database schema, data
types, table definitions (create, alter), different DML operations (insert,
delete, update).

UNIT III:
SQL: Basic SQL querying (select and project) using where clause,
arithmetic & logical operations, SQL functions(Date and Time, Numeric,
String conversion).Creating tables with relationship, implementation of
key and integrity constraints, nested queries, sub queries, grouping,
aggregation, ordering, implementation of different types of joins,
view(updatable and non-updatable), relational set operations.
24
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

UNIT IV:
Schema Refinement (Normalization): Purpose of Normalization or schema
refinement, concept of functional dependency, normal forms based on
functional dependency Lossless join and dependency preserving
decomposition, (1NF, 2NF and 3 NF), concept of surrogate key, Boyce-
Codd normal form (BCNF), MVD, Fourth normal form(4NF), Fifth Normal
Form (5NF).

UNIT V:
Transaction Concept: Transaction State, ACID properties, Concurrent
Executions, Serializability, Recoverability, Implementation of Isolation,
Testing for Serializability, lock based, time stamp based, optimistic,
concurrency protocols, Deadlocks, Failure Classification, Storage,
Recovery and Atomicity, Recovery algorithm.
Introduction to Indexing Techniques: B+ Trees, operations on B+Trees,
Hash Based Indexing:

Text Books:
1) Database Management Systems, 3rd edition, Raghurama Krishnan,
Johannes Gehrke, TMH (For Chapters 2, 3, 4)
2) Database System Concepts,5th edition, Silberschatz, Korth,
Sudarsan, TMH (For Chapter 1 and Chapter 5)

Reference Books:
1) Introduction to Database Systems, 8thedition, C J Date, Pearson.
2) Database Management System, 6th edition, Ramez Elmasri,
Shamkant B. Navathe, Pearson
3) Database Principles Fundamentals of Design Implementation and
Management, 10th edition, Corlos Coronel, Steven Morris, Peter
Robb, Cengage Learning, 2022

Web-Resources:
1) [Link]
2) [Link]
lex_auth_01275806667282022456_shared/overview

25
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

Software Engineering L T P C
II Year II Semester
2 1 0 3

Course Objectives:
The objectives of this course are to introduce
 Software life cycle models, Software requirements and SRS
document.
 Project Planning, quality control and ensuring good quality software.
 Software Testing strategies, use of CASE tools, Implementation
issues, validation & verification procedures.
Course Outcomes:
After completion of the course, students will be able to
1. Perform various life cycle activities like Analysis, Design,
Implementation, Testing and Maintenance (L3)
2. Analyse various software engineering models and apply methods for
design and development of software projects. (L4)
3. Develop system designs using appropriate techniques. (L3)
4. Understand various testing techniques for a software project. (L2)
5. Apply standards, CASE tools and techniques for engineering
software projects (L3)
UNIT I:
Introduction: Evolution, Software development projects, Exploratory
style of software developments, Emergence of software engineering,
Notable changes in software development practices, Computer system
engineering.
Software Life Cycle Models: Basic concepts, Waterfall model and its
extensions, Rapid application development, Agile development model,
Spiral model.

UNIT II:
Software Project Management: Software project management
complexities, Responsibilities of a software project manager, Metrics for
project size estimation, Project estimation techniques, Empirical
Estimation techniques, COCOMO, Halstead’s software science, risk
management.
Requirements Analysis And Specification: Requirements gathering
and analysis, Software Requirements Specification (SRS), Formal system
specification, Axiomatic specification, Algebraic specification, Executable
specification and 4GL.

UNIT III:
Software Design: Overview of the design process, How to characterize
a good software design? Layered arrangement of modules, Cohesion and
Coupling. approaches to software design.
Agility: Agility and the Cost of Change, Agile Process, Extreme
Programming (XP), Other Agile Process Models, Tool Set for the Agile
Process (Text Book 2)
26
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

Function-Oriented Software Design: Overview of SA/SD methodology,


Structured analysis, Developing the DFD model of a system, Structured
design, Detailed design, and Design Review.
User Interface Design: Characteristics of a good user interface, Basic
concepts, Types of user interfaces, Fundamentals of component-based
GUI development, and user interface design methodology.

UNIT IV:
Coding And Testing: Coding, Code review, Software documentation,
Testing, Black-box testing, White-Box testing, Debugging, Program
analysis tools, Integration testing, Testing object-oriented programs,
Smoke testing, and Some general issues associated with testing.
Software Reliability And Quality Management: Software reliability.
Statistical testing, Software quality, Software quality management system,
ISO 9000. SEI Capability maturity model. Few other important quality
standards, and Six Sigma.

UNIT V:
Computer-Aided Software Engineering (Case): CASE and its scope,
CASE environment, CASE support in the software life cycle, other
characteristics of CASE tools, Towards second generation CASE Tool, and
Architecture of a CASE Environment.
Software Maintenance: Characteristics of software maintenance,
Software reverse engineering, Software maintenance process models and
Estimation of maintenance cost.
Software Reuse: reuse- definition, introduction, reason behind no reuse
so far, Basic issues in any reuse program, A reuse approach, and Reuse at
organization level.

Text Books:
1. Fundamentals of Software Engineering, Rajib Mall, 5 th Edition, PHI.
2. Software Engineering A practitioner’s Approach, Roger S. Pressman,
9th Edition, Mc-Graw Hill International Edition.

Reference Books:
1. Software Engineering, Ian Sommerville,10th Edition, Pearson.
2. Software Engineering, Principles and Practices, Deepak Jain, Oxford
University Press.

e-Resources:
1) [Link]
2) [Link]
lex_auth_01260589506387148827_shared/overview
3) [Link]
lex_auth_013382690411003904735_shared/overview

II Year II Operating Systems Lab L T P C


27
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

1.
Semester 0 0 3
5

Course Objectives:
The main objectives of the course are to
 Provide insights into system calls, file systems, semaphores,
 Develop and debug CPU Scheduling algorithms, page replacement
algorithms, thread implementation
 Implement Bankers Algorithms to Avoid the Dead Lock
Course Outcomes:
After completion of the course, students will be able to
1. Trace different CPU Scheduling algorithms (L2).
2. Implement Bankers Algorithms to Avoid the Dead Lock (L3).
3. Evaluate Page replacement algorithms (L5).
4. Illustrate the file organization techniques (L4).
5. Illustrate Inter process Communication and concurrent execution of
threads (L4)

Experiments covering the Topics:


 UNIX fundamentals, commands & system calls
 CPU Scheduling algorithms, thread processing
 IPC, semaphores, monitors, deadlocks
 Page replacement algorithms, file allocation strategies
 Memory allocation strategies

Sample Experiments:
1. Practicing of Basic UNIX Commands.
2. Write programs using the following UNIX operating system calls
fork, exec, getpid, exit, wait, close, stat, opendir and readdir
3. Simulate UNIX commands like cp, ls, grep, etc.,
4. Simulate the following CPU scheduling algorithms
a) FCFS b) SJF c) Priority d) Round Robin
5. Control the number of ports opened by the operating system with
a) Semaphore b) Monitors.
6. Write a program to illustrate concurrent execution of threads using
pthreads library.
7. Write a program to solve producer-consumer problem using
Semaphores.
8. Implement the following memory allocation methods for fixed
partition
a) First fit b) Worst fit c) Best fit
9. Simulate the following page replacement algorithms
a) FIFO b) LRU c) LFU
10. Simulate Paging Technique of memory management.
11. Implement Bankers Algorithm for Dead Lock avoidance and
prevention
12. Simulate the following file allocation strategies
a) Sequential b) Indexed c) Linked
28
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

Reference Books:
1. Operating System Concepts, Silberschatz A, Galvin P B, Gagne G, 10 th
Edition, Wiley, 2018.
2. Modern Operating Systems, Tanenbaum A S, 4 th Edition, Pearson,
2016
3. Operating Systems -Internals and Design Principles, Stallings W, 9 th
edition, Pearson, 2018
4. Operating Systems: A Concept Based Approach, D.M Dhamdhere, 3 rd
Edition, McGraw- Hill, 2013

Online Learning Resources:


1. [Link]
2. [Link]

29
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

L T P C
Database Management Systems
II Year II Semester 1.
Lab 0 0 3
5

Course Objectives:
This Course will enable students to
 Populate and query a database using SQL DDL/DML Commands
 Declare and enforce integrity constraints on a database
 Writing Queries using advanced concepts of SQL
 Programming PL/SQL including procedures, functions, cursors and
triggers
Course Outcomes:
After completion of the course, students will be able to
1. Utilizing Data Definition Language (DDL), Data Manipulation
Language (DML), and Data Control Language (DCL) commands
effectively within a database environment (L3)
2. Constructing and execute queries to manipulate and retrieve data
from databases. (L3)
3. Develop application programs using PL/SQL. (L3)
4. Analyze requirements and design custom Procedures, Functions,
Cursors, and Triggers, leveraging their capabilities to automate
tasks and optimize database functionality (L4)
5. Establish database connectivity through JDBC (Java Database
Connectivity) (L3)
Experiments covering the topics:
 DDL, DML, DCL commands
 Queries, nested queries, built-in functions,
 PL/SQL programming- control structures
 Procedures, Functions, Cursors, Triggers,
 Database connectivity- ODBC/JDBC

Sample Experiments:
1. Creation, altering and droping of tables and inserting rows into a
table (use constraints while creating tables) examples using SELECT
command.
2. Queries (along with sub Queries) using ANY, ALL, IN, EXISTS,
NOTEXISTS, UNION, INTERSET, Constraints. Example:- Select the roll
number and name of the student who secured fourth rank in the
class.
3. Queries using Aggregate functions (COUNT, SUM, AVG, MAX and
MIN), GROUP BY, HAVING and Creation and dropping of Views.
4. Queries using Conversion functions (to_char, to_number and
to_date), string functions (Concatenation, lpad, rpad, ltrim, rtrim,
lower, upper, initcap, length, substr and instr), date functions
(Sysdate, next_day, add_months, last_day, months_between, least,
greatest, trunc, round, to_char, to_date)
5.
30
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

i. Create a simple PL/SQL program which includes declaration


section, executable section and exception –Handling section
(Ex. Student marks can be selected from the table and printed
for those who secured first class and an exception can be
raised if no records were found)
ii. Insert data into student table and use COMMIT, ROLLBACK and
SAVEPOINT in PL/SQL block.
6. Develop a program that includes the features NESTED IF, CASE and
CASE expression. The program can be extended using the NULLIF
and COALESCE functions.
7. Program development using WHILE LOOPS, numeric FOR LOOPS,
nested loops using ERROR Handling, BUILT –IN Exceptions, USE
defined Exceptions, RAISE- APPLICATION ERROR.
8. Programs development using creation of procedures, passing
parameters IN and OUT of PROCEDURES.
9. Program development using creation of stored functions, invoke
functions in SQL Statements and write complex functions.
10. Develop programs using features parameters in a CURSOR, FOR
UPDATE CURSOR, WHERE CURRENT of clause and CURSOR
variables.
11. Develop Programs using BEFORE and AFTER Triggers, Row and
Statement Triggers and INSTEAD OF Triggers
12. Create a table and perform the search operation on table using
indexing and non-indexing techniques.
13. Write a Java program that connects to a database using JDBC
14. Write a Java program to connect to a database using JDBC and
insert values into it
15. Write a Java program to connect to a database using JDBC and
delete values from it

Reference Books:
1. Oracle: The Complete Reference by Oracle Press
2. Nilesh Shah, "Database Systems Using Oracle”, PHI, 2007
3. Rick F Vander Lans, “Introduction to SQL”, Fourth Edition, Pearson
Education, 2007
4. RamezElmasri, Shamkant, B. Navathe, “Database Systems”, Pearson
Education, 6th Edition, 2013.
5. Database Principles Fundamentals of Design Implementation and
Management, 10th edition, Corlos Coronel, Steven Morris, Peter
Robb, Cengage Learning, 2022

Online Learning Resources:


1. [Link]
2. [Link]

31
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

II Year II L T P C
Semest Full Stack Development – 1
er (Skill Enhancement Course) 0 1 2 2

Course Objectives:
The main objectives of the course are to
 Make use of HTML elements and their attributes for designing static
web pages
 Build a web page by applying appropriate CSS styles to HTML elements
 Experiment with JavaScript to develop dynamic web pages and validate
forms
Course Outcomes:
1. Design Websites. (L6)
2. Apply Styling to web pages. (L3)
3. Make Web pages interactive. (L3)
4. Design Forms for applications. (L6)
5. Choose Control Structure based on the logic to be implemented. (L4)

Experiments covering the Topics:


 Lists, Links and Images
 HTML Tables, Forms and Frames
 HTML 5 and Cascading Style Sheets, Types of CSS
 Selector forms
 CSS with Color, Background, Font, Text and CSS Box Model
 Applying JavaScript - internal and external, I/O, Type Conversion
 JavaScript Conditional Statements and Loops, Pre-defined and User-
defined Objects
 JavaScript Functions and Events

Sample Experiments:

1. Lists, Links and Images


a. Write a HTML program, to explain the working of lists.
Note: It should have an ordered list, unordered list, nested lists and
ordered list in an unordered list and definition lists.
b. Write a HTML program, to explain the working of hyperlinks using <a>
tag and href, target Attributes.
c. Create a HTML document that has your image and your friend’s image
with a specific height and width. Also when clicked on the images it
should navigate to their respective profiles.
d. Write a HTML program, in such a way that, rather than placing large
images on a page, the preferred technique is to use thumbnails by
setting the height and width parameters to something like to 100*100
pixels. Each thumbnail image is also a link to a full sized version of the
image. Create an image gallery using this technique

2. HTML Tables, Forms and Frames


32
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

a. Write a HTML program, to explain the working of tables. (use tags:


<table>, <tr>, <th>, <td> and attributes: border, rowspan, colspan)
b. Write a HTML program, to explain the working of tables by preparing a
timetable. (Note: Use <caption> tag to set the caption to the table &
also use cell spacing, cell padding, border, rowspan, colspan etc.).
c. Write a HTML program, to explain the working of forms by designing
Registration form. (Note: Include text field, password field, number field,
date of birth field, checkboxes, radio buttons, list boxes using
<select>&<option> tags, <text area> and two buttons ie: submit and
reset. Use tables to provide a better view).
d. Write a HTML program, to explain the working of frames, such that page
is to be divided into 3 parts on either direction. (Note: first frame 
image, second frame  paragraph, third frame  hyperlink. And also
make sure of using “no frame” attribute such that frames to be fixed).

3. HTML 5 and Cascading Style Sheets, Types of CSS


a. Write a HTML program, that makes use of <article>, <aside>,
<figure>, <figcaption>, <footer>, <header>, <main>, <nav>,
<section>, <div>, <span> tags.
b. Write a HTML program, to embed audio and video into HTML web page.
c. Write a program to apply different types (or levels of styles or style
specification formats) - inline, internal, external styles to HTML
elements. (identify selector, property and value).

4. Selector forms
a. Write a program to apply different types of selector forms
i. Simple selector (element, id, class, group, universal)
ii. Combinator selector (descendant, child, adjacent sibling, general
sibling)
[Link]-class selector
iv. Pseudo-element selector
v. Attribute selector

5. CSS with Color, Background, Font, Text and CSS Box Model
a. Write a program to demonstrate the various ways you can reference a
color in CSS.
b. Write a CSS rule that places a background image halfway down the
page, tilting it horizontally. The image should remain in place when the
user scrolls up or down.
c. Write a program using the following terms related to CSS font and text:
i. font-size ii. font-weight iii. font-style
iv. text-decoration v. text-transformation vi. text-alignment
d. Write a program, to explain the importance of CSS Box model using
i. Content ii. Border iii. Margin iv. padding

6. Applying JavaScript - internal and external, I/O, Type


Conversion

33
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

a. Write a program to embed internal and external JavaScript in a web


page.
b. Write a program to explain the different ways for displaying output.
c. Write a program to explain the different ways for taking input.
d. Create a webpage which uses prompt dialogue box to ask a voter for his
name and age. Display the information in table format along with either
the voter can vote or not

7. JavaScript Pre-defined and User-defined Objects


a. Write a program using document object properties and methods.
b. Write a program using window object properties and methods.
c. Write a program using array object properties and methods.
d. Write a program using math object properties and methods.
e. Write a program using string object properties and methods.
f. Write a program using regex object properties and methods.
g. Write a program using date object properties and methods.
h. Write a program to explain user-defined object by using properties,
methods, accessors, constructors and display.

8. JavaScript Conditional Statements and Loops


a. Write a program which asks the user to enter three integers, obtains
the numbers from the user and outputs HTML text that displays the
larger number followed by the words “LARGER NUMBER” in an
information message dialog. If the numbers are equal, output HTML text
as “EQUAL NUMBERS”.
b. Write a program to display week days using switch case.
c. Write a program to print 1 to 10 numbers using for, while and do-while
loops.
d. Write a program to print data in object using for-in, for-each and for-of
loops
e. Develop a program to determine whether a given number is an
‘ARMSTRONG NUMBER’ or not. [Eg: 153 is an Armstrong number, since
sum of the cube of the digits is equal to the number i.e.,13 + 53+ 33 =
153]
f. Write a program to display the denomination of the amount deposited
in the bank in terms of 100’s, 50’s, 20’s, 10’s, 5’s, 2’s & 1’s. (Eg: If
deposited amount is Rs.163, the output should be 1-100’s, 1-50’s, 1-
10’s, 1-2’s & 1-1’s)

9. JavaScript Functions and Events


a. Design a appropriate function should be called to display
i. Factorial of that number
ii. Fibonacci series up to that number
iii. Prime numbers up to that number
iv. Is it palindrome or not
b. Design a HTML having a text box and four buttons named Factorial,
Fibonacci, Prime, and Palindrome. When a button is pressed an
appropriate function should be called to display
34
R23 REGULATIONS

DRAFT COPY
[Link]. - COMPUTER SCIENCE & ENGINEERING

i. Factorial of that number


ii. Fibonacci series up to that number
iii. Prime numbers up to that number
iv. Is it palindrome or not
c. Write a program to validate the following fields in a registration page
i. Name (start with alphabet and followed by alphanumeric and the
length should not be less than 6 characters)
ii. Mobile (only numbers and length 10 digits)
iii. E-mail (should contain format like xxxxxxx@[Link])

Text Books:
1. John Dean, Web Programming with HTML5, CSS and JavaScript, Jones &
Bartlett Learning, 2019.
Reference Books:
1. Programming the World Wide Web, 7 th Edition, Robet W Sebesta, Pearson,
2013.
2. Pro MERN Stack: Full Stack Web App Development with Mongo, Express,
React, and Node, Vasan Subramanian, 2 nd edition, APress, O’Reilly.

Online Learning Resources:

1. [Link]
2. [Link]
3. [Link]
4. [Link]
5. [Link]

35

Common questions

Powered by AI

JavaFX allows developers to build GUI applications with rich user interactions, which are fundamental concepts in user interface design highlighted in software engineering. By integrating JavaFX components, such as buttons, text fields, and image views, alongside event-driven programming, developers can create intuitive interfaces that respond to user actions effectively. This emphasis on interaction is critical for modern software engineering, which aims to enhance user experience by creating responsive and accessible applications .

Understanding inheritance is crucial as it allows for the creation of a new class based on an existing class, promoting code reusability and reducing errors in both Java and Python. In Java, inheritance allows classes to share behaviors and structure, leading to more maintainable and scalable software. In Python, inheritance also supports dynamic features such as multiple inheritance, which can further enhance flexibility in design. Overall, proper use of inheritance leads to better-designed software that can adapt to changes more easily .

Object-oriented programming (OOP) principles like encapsulation, inheritance, polymorphism, and abstraction encourage modular thinking and reuse of code, which are essential for solving complex problems. By applying these principles, programmers can break down a problem into smaller, manageable components (encapsulation), leverage existing solutions through inheritance, and handle different data types and functions generically through polymorphism. This leads to more efficient and robust problem-solving strategies in Java .

Multithreading in Java allows multiple threads to run concurrently, effectively utilizing CPU resources and enhancing performance, especially for I/O-bound and network-related tasks. By enabling simultaneous execution of threads, Java applications can handle multiple tasks with reduced wait times, such as processing user inputs, performing background computations, and managing networks operations concurrently. This parallelism increases responsiveness and efficiency, making applications more capable of performing complex operations without significant delays .

Exception handling in Java improves program reliability by allowing developers to anticipate and manage runtime errors, preventing the program from crashing unexpectedly. By using try-catch blocks, developers can gracefully handle errors and provide alternative execution paths or informative error messages to users. This not only prevents data corruption and loss but also enhances user trust in the software’s ability to handle unforeseen situations robustly. Additionally, custom exceptions can provide meaningful context to errors, improving debugging and maintenance .

Process scheduling algorithms, such as First-Come-First-Serve, Shortest Job First, and Round Robin, play a critical role in determining system performance and resource utilization. These algorithms dictate how processes are prioritized and executed by the CPU, influencing both throughput and latency. A well-chosen algorithm can optimize processor use, reduce wait times, and increase overall system efficiency. For instance, Shortest Job First minimizes average wait time, whereas Round Robin ensures fair sharing of CPU time among processes, crucial for time-sharing systems. Evaluating and selecting the appropriate algorithm based on the workload can greatly impact system performance .

Python's dynamic typing allows variables to be assigned without explicit type declarations, enhancing flexibility and reducing development time by allowing functions to handle different data types and structures seamlessly. This can accelerate prototyping and testing phases, enabling rapid iteration of code. However, it also demands greater diligence in testing as type-related errors may only surface at runtime. Compared to statically typed languages, which catch type-related errors at compile-time, Python offers greater versatility at the cost of potential runtime errors, necessitating comprehensive testing and validation of code .

Lists and dictionaries are fundamental data structures in Python that facilitate the organization and storage of data. Lists allow for ordered collections of items, providing flexibility in storing and manipulating sequences of data using operations like slicing and concatenation. Dictionaries, with their key-value pairs, enable efficient data retrieval and manipulation based on unique keys, which is essential in many computational problems, such as implementing databases and handling configuration settings. These data structures improve problem-solving efficiency by simplifying data handling and manipulation .

Applying Six Sigma principles in software quality management aims to systematically improve processes by eliminating defects and ensuring high-quality outputs with minimal variation. These principles focus on understanding customer requirements, measuring current processes, and identifying key areas for improvement through data analysis. In software engineering, Six Sigma can lead to more efficient development cycles, increased reliability of software products, and reduced error rates. By emphasizing a data-driven approach to quality control, Six Sigma fosters a culture of continuous improvement and excellence in software development practices .

Memory management strategies like paging and swapping are crucial for optimizing system performance and ensuring efficient use of resources in operating systems. Paging allows for non-contiguous memory allocation, reducing fragmentation by switching pages in and out of physical memory as needed. Swapping enables processes to be moved in and out of main memory, making room for others and ensuring that high-demand processes have immediate access to resources. These strategies help maximize the throughput and responsiveness of systems by effectively balancing workload demands and resource availability .

You might also like