VIKRAMA SIMHAPURI UNIVERSITY, NELLORE
MINUTES OF THE BOARD OF STUDIES (Computer Applications) FOR UNDER
GRADUATE PROGRAMMES MEETINGS
As per the E-mails received from the Dean, CDC, VSU, Nellore dated 28-08-25 and 29-
08-25, a meeting was held with the Vice-Chancellor, VSU, Nellore on 30-08-25 at Sri C.V.
Raman Seminar Hall, VSU, Nellore in the forenoon session. In the afternoon session, another
meeting was held with the attended members of BoS, to discuss about the syllabus at the
Department of Computer Science, VSU, Nellore. After that day, some discussions and
clarifications regarding the syllabus were made through telephonic conversations and WhatsApp
groups. The list of members participated in the discussions/meetings and the resolutions made
are specified below.
Agenda:
1. Approval of the course structure and first year syllabus of BCA (Computer Applications)
Honours.
2. Approval of the APSCHE-prescribed syllabus of Skill Enhancement Course (SEC) – AI
Fundamentals, as per the oral instructions received from the O/o the Dean, CDC, VSU,
Nellore.
3. Framing of course structures of eight programs, as per the proceedings of the Vice-
Chancellor, VSU, Nellore, with the No. VSU/CDC/Academic/UG/BoS/2025, dated
25.08.2025.
4. Discussion about the first semester Major syllabus of allotted eight programs.
5. Any other matters.
The following members of the Board of Studies (UG) in Computer Applications have
participated in the meetings and discussions.
[Link] Name and Designation
Smt. Lakshmi Bheemavarapu,
Lecturer in Computer Applications,
1. S.K.R. Govt. Degree College, Gudur. Chairperson
Phone No. 789320474l
Email : [Link]@[Link]
1
Smt. V. Sarvani
Lecturer in Computer Applications,
PRR & VS Govt. Degree College,
2. Vidavaluru Member
Phone No.9441871765
Email: [Link]@[Link]
Smt. N. Lakshmi Chaitanya,
Lecturer in Computer Science,
Visvodaya Govt. Degree College,
3. Venkatagiri Member
Phone No. 8143306332
Email : laxmi.chaitu27@[Link]
Sri Chevuru Madhu Babu
Lecturer in Computer Science
SVSSC Government Degree College,
4. Sullurpet. Member
Phone No. 8500132525
Email: chevurumadhubabu@[Link]
Smt. Md. Sameera
Lecturer in Computer Science
DK Government Degree College for Women
5. Nellore. Member
Phone No. 8500618899
Email: samee2016@[Link]
Smt. Shaik Mymoon
Lecturer in Computer Science
SKR Government Degree College
6. Gudur. Member
Phone No. 8977365344
Email: mymoon549@[Link]
2
Resolutions:
As per the instructions received through E-mail messages, oral instructions received from
the higher authorities of VSU, Nellore during the meeting and after the meeting, the
following resolutions were made by the members of UG BoS of Computer Applications.
It is resolved to approve the APSCHE-prescribed syllabus of Skill Enhancement Course
(SEC) – AI Fundamentals without any modifications.
It is resolved to frame the course structure and first year syllabus of the following
programs as soon as possible.
BCA Big Data Major
BCA Artificial Intelligence Major
BCA Artificial Intelligence and Data science Major
BCA Cloud Computing Major
BCA Data science Major
[Link]. Artificial Intelligence Major
[Link]. Machine Learning Major
[Link]. Cloud Computing Major
It is resolved to frame the course structure and syllabus of the following Minor subjects
after completion of Major subjects’ related work.
BCA Big Data Minor
BCA Artificial Intelligence Minor
BCA Artificial Intelligence and Data science Minor
BCA Cloud Computing Minor
BCA Data science Minor
[Link]. Artificial Intelligence Minor
[Link]. Machine Learning Minor
[Link]. Cloud Computing Minor
Computer Applications Minor
It is resolved to approve the course structure and first year APSCHE-prescribed syllabus of
BCA Honours Major with suggested modifications.
3
Course Structure
No. of Max. Max.
No. of
Year Semester Course Title of the Course Hrs Internal External
Credits
/Week Marks Marks
Computer Fundamentals and Office
3 3 30 70
Automation
1
Computer Fundamentals and Office
I 2 1 - 50
Automation-Practical
Problem Solving Using C 3 3 30 70
2
I Problem Solving Using C-Practical 2 1 - 50
Data Structures using C 3 3 30 70
3
Data Structures using C-Practical 2 1 - 50
II
Database Management System 3 3 30 70
4
Database Management System-Practical 2 1 - 50
OOPS Through JAVA 3 3 30 70
5
OOPS Through JAVA-Practical 2 1 - 50
III Computer Organisation 3 3 30 70
6
Computer Organisation-Practical 2 1 - 50
7 Probability and Statistics 4 4 30 70
II Operating Systems 3 3 30 70
8
Operating Systems-Practical 2 1 - 50
Python Programming 3 3 30 70
IV 9
Python Programming-Practical 2 1 - 50
Software Engineering 3 3 30 70
10
Software Engineering-Practical 2 1 - 50
Data Mining 3 3 30 70
11
Data Mining-Practical 2 1 - 50
III V
Web Interface Design Technologies 3 3 30 70
12 A Web Interface Design Technologies-
2 1 - 50
Practical
OR
4
Computer Networks 3 3 30 70
12 B
Computer Networks Lab-Practical 2 1 - 50
Web Application Development using PHP
& 3 3 30 70
13 A MySQL
Web Application Development using PHP
2 1 - 50
& MySQL-Practical
OR
Cyber Security 3 3 30 70
13 B
Cyber Security-Practical 2 1 - 50
Mobile Application Development 3 3 30 70
14 A Mobile Application Development-
2 1 - 50
Practical
OR
14 B Cloud Fundamentals and Security 4 4 30 70
VI
MERN Stack 3 3 30 70
15 A
MERN Stack-Practical 2 1 - 50
OR
Digital Forensics 3 3 30 70
15 B
Digital Forensics-Practical 2 1 - 50
Modifications suggested by the BoS in Course 1 to Course 4 :
a. Course 1: Computer Fundamentals and Office Automation Theory and Practical
Removed the topics-XLOOKUP, INDEX, MATCH from Unit 4.
Removed 10.d and 10.e from practical exercise with number 10.
Removed practical exercise with number 14.
5
b. Course 2: Problem Solving Using C Theory and Practical
Changed the name of Unit 4 from Functions to Pointers and Functions.
Since the syllabus is appropriate, no modifications have been made.
c. Course 3: Data Structures using C Theory and Practical
As the syllabus is appropriate, no modifications were deemed necessary.
d. Course 4: Database Management System Theory and Practical
As the syllabus is appropriate, no modifications were deemed necessary.
6
VIKRAMA SIMHAPURI UNIVERSITY:: NELLORE
Syllabus for 4-Year UG Honours in B.C.A. (Computer Applications) as Major in
consonance with Curriculum framework w.e.f. AY 2025-26
COURSE STRUCTURE (for Semester I to VI)
No. of Max. Max.
No. of
Year Semester Course Title of the Course Hrs Internal External
Credits
/Week Marks Marks
Computer Fundamentals and Office
3 3 30 70
Automation
1
Computer Fundamentals and Office
I 2 1 - 50
Automation-Practical
Problem Solving Using C 3 3 30 70
2
I Problem Solving Using C-Practical 2 1 - 50
Data Structures using C 3 3 30 70
3
Data Structures using C-Practical 2 1 - 50
II
Database Management System 3 3 30 70
4
Database Management System-Practical 2 1 - 50
OOPS Through JAVA 3 3 30 70
5
OOPS Through JAVA-Practical 2 1 - 50
III Computer Organisation 3 3 30 70
6
Computer Organisation-Practical 2 1 - 50
7 Probability and Statistics 4 4 30 70
II Operating Systems 3 3 30 70
8
Operating Systems-Practical 2 1 - 50
Python Programming 3 3 30 70
IV 9
Python Programming-Practical 2 1 - 50
Software Engineering 3 3 30 70
10
Software Engineering-Practical 2 1 - 50
Data Mining 3 3 30 70
III V 11
Data Mining-Practical 2 1 - 50
No. of Max. Max.
No. of
Year Semester Course Title of the Course Hrs Internal External
Credits
/Week Marks Marks
Web Interface Design Technologies 3 3 30 70
12 A Web Interface Design Technologies-
2 1 - 50
Practical
OR
Computer Networks 3 3 30 70
12 B
Computer Networks Lab-Practical 2 1 - 50
Web Application Development using PHP
& 3 3 30 70
13 A MySQL
Web Application Development using PHP
2 1 - 50
& MySQL-Practical
OR
Cyber Security 3 3 30 70
13 B
Cyber Security-Practical 2 1 - 50
Mobile Application Development 3 3 30 70
14 A
Mobile Application Development-Practical 2 1 - 50
OR
14 B Cloud Fundamentals and Security 4 4 30 70
VI
MERN Stack 3 3 30 70
15 A
MERN Stack-Practical 2 1 - 50
OR
Digital Forensics 3 3 30 70
15 B
Digital Forensics-Practical 2 1 - 50
Note: In the III Year (during the V and VI Semesters), students are required to select a pair of
electives from one of the Two specified domains. For example: if set ‘A’ is chosen,
courses 12 to 15 to be chosen as 12 A, 13 A, 14 A and 15 A. To ensure in-depth
understanding and skill development in the chosen domain, students must continue
with the same domain electives in both the V and VI Semesters.
SEMESTER-I
COURSE 1: COMPUTER FUNDAMENTALS AND OFFICE AUTOMATION
Theory Credits: 3 3 hrs/week
Course Objectives
1. Understand foundational computing concepts, including number systems, the evolution
of computers, block diagrams, and generational progress.
2. Develop knowledge of computer architecture, focusing on system organization and
networking fundamentals.
3. Acquire practical skills in document creation, formatting, and digital presentations
using word processing tools.
4. Gain proficiency in spreadsheet operations, such as data entry, formulas, functions, and
charting techniques.
5. Introduce data visualization and basic modelling principles, fostering analytical
thinking in structuring and interpreting data sets.
Course Outcomes
1. At the End of the Course, The Students will be able to explain different number systems,
the historical evolution of computers, and identify key components in a block diagram.
2. Learners will demonstrate basic blocks of a computer and fundamental networking
knowledge.
3. Learners will create professional-level documents and design visually appealing
presentations using word processing software and presentation software.
4. Learners will manipulate data within spreadsheets, apply formulas, and generate accurate
summaries and visualizations.
5. Learners will apply data modelling techniques to analyse, organize, and represent data
effectively in various scenarios.
Unit 1. Number Systems, Evolution, Block Diagram and Generations:
Number Systems: Binary, Decimal, Octal, Hexadecimal; conversions between number systems.
Evolution of Computers: History from early mechanical devices to modern-day systems.
Block Diagram of a Computer: Components like Input Unit, Output Unit, Memory, CPU (ALU
+ CU).
Generations of Computers: First to Fifth Generation – technologies, characteristics, examples.
Unit 2. Basic organisation and N/W fundamentals:
Computer Organization: Functional components – Input/Output devices, Storage types, Memory
hierarchy.
Types of Computers: Micro, Mini, Mainframe, and Supercomputers.
Networking Fundamentals: Definition, need for networks, types (LAN, WAN, MAN), topology
(Star, Ring, Bus).
Internet Basics: IP Address, Domain Name, Web Browser, Email, WWW.
Unit 3. Word Processing and presentations:
Word Processing Basics: Using MS Word/Google Docs – formatting, styles, tables, mail merge.
Presentation Tools: Using PowerPoint/Google Slides – slide design, animations, transitions.
Applications: Creating resumes, reports, brochures, and presentations.
Keyboard Shortcuts
Unit 4. Spreadsheet Basics:
Spreadsheet Concepts: Understanding rows, columns, cells in tools like MS Excel/Google
Sheets.
Functions and Formulas: SUM, AVERAGE, IF, COUNT.
Charts and Graphs: Creating visual representations
Data Handling: Sorting, filtering, conditional formatting.
Text Functions: LEFT, RIGHT, MID, LEN, TRIM, CONCAT, TEXTJOIN
Advanced Functions: Logical: IF, AND, OR, IFERROR, Lookup: VLOOKUP, HLOOKUP.
Unit 5. Data Modelling:
Conditional Formatting: Custom rules, Color scales, Icon sets, Data bars
Data Analysis Tools: Pivot Tables and Pivot Charts, Data Validation (Drop-downs, Input
Messages, Error Alerts), What-If Analysis: Goal Seek, Scenario Manager, Data Tables
Charts and Dashboards: Creating Interactive Dashboards, Using slicers with Pivot Tables,
Combo Charts and Sparklines
Productivity Tips: Using Named Ranges, Freeze Panes, Split View
Textbooks:
1. Fundamentals of Computers, Reema Thareja, Oxford University Press, Second Edition
2. Fundamentals of Computers, V. Rajaraman – PHI Learning
3. Introduction to Computers by Peter Norton – McGraw Hill
4. Microsoft Office 365 In Practice by Randy Nordell – McGraw Hill Education
References:
1. Excel 2021 Bible by Michael Alexander, Richard Kusleika – Wiley
2. Networking All-in-One for Dummies by Doug Lowe – Wiley
3. Microsoft Official Docs and Training: [Link]
4. Google Workspace Learning Center: [Link]
Activities:
Outcome: At the End of the Course, The Students will be able to explain different number
systems, the historical evolution of computers, and identify key components in a block diagram.
Activity: Create a digital poster or infographic comparing number systems (binary, decimal, octal,
hexadecimal) and illustrating the timeline of computer generations with key innovations.
Evaluation Method: Rubric-based assessment of the poster presentation on a 10-point scale
focusing on:
● Accuracy of number system conversions
● Correct identification of block diagram components
● Visual organization and creativity
Outcome: Learners will demonstrate basic blocks of a computer and fundamental networking
knowledge.
Activity: Design a concept map showing the internal architecture of a computer and types of
networks (LAN, WAN, MAN), including devices and topologies.
Evaluation Method: Checklist-based peer review and instructor validation:
● Completeness of the map
● Correctness of networking concepts
● Use of appropriate terminology
● Logical flow and structure of the map
Outcome: Learners will create professional-level documents and design visually appealing
presentations using word processing software and presentation software.
Activity: Prepare a formal report (e.g., project proposal) in a word processor and present it using a
slide deck with transitions, embedded media, and design elements.
Evaluation Method: Performance-based evaluation using a 10-point scoring scale:
● Formatting and structure of the document
● Presentation aesthetics and clarity
● Communication skills during presentation
Outcome: Learners will manipulate data within spreadsheets, apply formulas, and generate
accurate summaries and visualizations.
Activity:Analyse a dataset (e.g., student scores or sales data) using spreadsheet software. Apply
formulas (SUM, AVERAGE, IF, VLOOKUP) and create relevant charts.
Evaluation Method: Practical test with a rubric:
● Correct use of formulas
● Accuracy of data summaries
Outcome: Learners will apply data modelling techniques to analyze, organize, and represent
data effectively in various scenarios.
Activity: Prepare an interactive dashboard for a given data set using EXCEL.
Evaluation Method: Evaluation of the dashboard on a 10-point scoring scale:
● Presentation aesthetics and clarity
● Interactiveness
● Communication skills during presentation
SEMESTER-I
COURSE 1: COMPUTER FUNDAMENTALS AND OFFICE AUTOMATION
Practical Credits: 1 2 hrs/week
List of Experiments:
1. Demonstration of Assembling and Dessembling of Computer Systems.
2. Identify and prepare notes on the type of Network topology of your institution.
3. Prepare your resume in Word.
4. Using Word, write a letter to your higher official seeking 10-days leave.
5. Prepare a presentation that contains text, audio and video.
6. Using a spreadsheet, prepare your class Time Table.
7. Using a Spreadsheet, calculate the Gross and Net salary of employees (Min 5) considering
all the allowances.
8. Generate the class-wise and subject-wise results for a class of 20 students. Also generate
the highest and lowest marks in each subject.
9. Using IF, AND, OR, and IFERROR to Automate Grade Evaluation.
a. Create a table of student scores in different subjects.
b. Use IF to assign grades (A/B/C/Fail).
c. Use IFERROR to handle missing scores or invalid data.
10. Employee Database Search Using VLOOKUP, HLOOKUP.
a. Create a database of employees (Name, ID, Department, Salary).
b. Implement VLOOKUP to search by employee ID.
c. Use HLOOKUP to extract department heads by role.
11. Sales Report Analysis Using Pivot Tables and Charts
a. Use a dataset of product sales (Product, Region, Date, Quantity, Revenue).
b. Create Pivot Tables to summarize data by region/product.
12. Designing a Data Entry Form with Drop-downs and Input Rules
a. Create a student registration form.
b. Add drop-down lists for course selection using Data Validation.
c. Add input messages to guide users.
d. Add error alerts for wrong entries.
13. Monthly Budget Planning using Goal Seek and Scenario Manager
a. Create a simple personal budget (income, expenses, savings).
b. Use Goal Seek to determine income needed to save a desired amount.
c. Use Scenario Manager to compare different budgeting scenarios (best/ worst/
realistic case).
d. Create a one-variable Data Table to analyse how different expenses affect savings.
SEMESTER-I
COURSE 2: PROBLEM SOLVING USING C
Theory Credits: 3 3 hrs/week
Course Objectives:
1. Understand the fundamentals of computer programming, apply structured problem-solving
approaches using algorithms, flowcharts, and C programming constructs.
2. Develop efficient logic using decision-making, loop, and jump control statements.
3. Utilize derived data types like arrays and strings for modular program design.
4. Design and implement modular solutions using functions, recursive logic, pointer
operations, and dynamic memory management.
5. Handle complex data structures including structures, unions, and text file operations.
Course Outcomes:
At the End of the Course, The Students will be able to:
1. Understand basic computing concepts, programming paradigms and write structured C
programs.
2. Apply control flow statements to solve logical and repetitive tasks in C.
3. Implement arrays and string operations to manage and manipulate data efficiently.
4. Design modular code using functions, recursion, and appropriate parameter passing.
5. Utilize pointers and memory operations for effective data handling. Demonstrate
competence in dynamic memory allocation and text file processing.
Unit 1. Introduction to computer programming:
Introduction, Types of software, Compiler and interpreter, Concepts of Machine level, Assembly
level and high-level programming, Flowcharts and Algorithms, Fundamentals of C: History of C,
Features of C, C Tokens-variables and keywords and identifiers, constants and Data types, Rules
for constructing variable names, Operators, Structure of C program, Input /output statements in C-
Formatted and Unformatted I/O.
Unit 2. Control statements:
Decision making statements: if, if else, else if ladder, switch statements. Loop control statements:
while loop, for loop and do-while loop. Jump Control statements: break,continue and goto.
Unit 3. Derived data types in C:
Arrays: One Dimensional arrays - Declaration, Initialization and Memory representation; Two
Dimensional arrays -Declaration, Initialization and Memory representation. Strings: Declaring &
Initializing string variables; String handling functions, Character handling functions
Unit 4. Pointers &Functions:
Pointers: Pointer data type, Pointer declaration, initialization, accessing values using pointers.
Pointer arithmetic, Pointers and arrays.
Function Prototype, definition and calling. Return statement. Nesting of functions. Categories of
functions. Recursion (Basic Concept only). Parameter Passing by address & by value. Local and
Global variables. Storage classes: automatic, external, static and register.
Unit 5. Dynamic Memory Management:
Introduction, Functions-malloc, calloc, realloc, free Structures: Basics of structure, structure
members, accessing structure members, nested structures, array of structures, structure and
functions, structures and pointers. Unions - Union definition; difference between Structures and
Unions. Working with text files - modes: opening, reading, writing and closing text files.
Text Books:
[Link] in ANSI C, E. Balagurusamy, Tata McGraw Hill, 6 thEdn,
[Link] fundamentals and programming in C, Reema Theraja, Oxford University Press
Reference Books:
1. Let us C, Y Kanetkar, BPB publications
2. Head First C: A Brain-Friendly Guide, David Griffiths, Dawn Griffiths
Activities:
Outcome: Understand basic computing concepts, programming paradigms and write structured C
programs.
Activity: Create a concept map of computing fundamentals and programming paradigms
(procedural, structured, object-oriented). Then, they write a structured C program (e.g., a
calculator or student grade system) using proper syntax, indentation, and modular design.
Evaluation Method: Rubric-based Code Review & Viva to check the
○The correctness of the concept map
○Correct use of structure (main + functions)
○Identification of paradigm used
○Code readability and documentation
Outcome: Apply control flow statements to solve logical and repetitive tasks in C.
Activity: Implement a program that solves a logic puzzle (e.g., number guessing game, pattern
generation, or prime number finder) using if, switch, for, while, and do-while.
Evaluation Method: Automated Test Cases + Peer Review to check the
○Correct use of control statements
○Logical correctness of output
○Efficiency and edge case handling
○Peer feedback on clarity and logic
Outcome: Implement arrays and string operations to manage and manipulate data efficiently.
Activity: Build a program that stores and arranges student marks in ascending and descending
order using arrays and performs string operations like concatenation, comparing, and formatting
names.
Evaluation Method: Functional Demonstration + Code Walkthrough to check the
○Correct array and string usage
○Memory efficiency
○Handling of invalid inputs
○Explanation of sorting/searching logic Activity:
● Recursive Problem Solver
Students write a modular program to solve a recursive problem (e.g., factorial, Fibonacci,
or Tower of Hanoi) using functions with parameters and return values. Evaluation Method:
● Code Trace + Written Quiz
○Correct function decomposition
○Proper parameter passing (by value/reference)
○Recursion depth and base case handling
○Quiz on tracing recursive calls
Outcome: Utilize pointers and memory operations for effective data handling. Demonstrate
competence in dynamic memory allocation and text file processing.
Activity: Create a program that dynamically stores user input (e.g., survey responses) using
pointers and writes/reads the data to/from a text file.
Evaluation Method: Memory Debugging + File I/O Assessment to check the
○Proper use of malloc, calloc, realloc, and free
○Pointer arithmetic and dereferencing
○File creation, reading, writing, and error handling
○Use of tools like Valgrind or manual memory trace (Optional for Unix flavours)
SEMESTER-I
COURSE 2: PROBLEM SOLVING USING C
Practical Credits: 1 2 hrs/week
List of Experiments:
1. Write a program to check whether the given number is Armstrong or not.
2. Write a program to find the sum of individual digits of a positive integer.
3. Write a program to generate the first n terms of the Fibonacci sequence.
4. Write a program to find both the largest and smallest number in a list of integer values
5. Write a program to demonstrate change in parameter values while swapping two integer
variables using Call by Value & Call by Address
6. Write a program to perform various string operations.
7. Write a program to search an element in a given list of values.
8. Write a program that uses functions to add two matrices.
9. Write a program to calculate factorial of given integer value using recursive functions
10. Write a program for multiplication of two N X N matrices.
11. Write a program to sort a given list of integers in ascending order.
12. Write a program to calculate the salaries of all employees using Employee (ID, Name,
Designation, Basic Pay, DA, HRA, Gross Salary, Deduction, Net Salary) structure.
a. DA is 30 % of Basic Pay
b. HRA is 15% of Basic Pay
c. Deduction is 10% of (Basic Pay + DA)
d. Gross Salary = Basic Pay + DA+ HRA
e. Net Salary = Gross Salary - Deduction
13. Write a program to read / write the data from / to a file.
14. Write a program to reverse the contents of a file and store in another file.
15. Write a program to create Book (ISBN,Title, Author, Price, Pages, Publisher)structure and
store book details in a file and perform the following operations
a. Add book details
b. Search a book details for a given ISBN and display book details, if available
c. Update a book details using ISBN
d. Delete book details for a given ISBN and display list of remaining Books
SEMESTER-II
COURSE 3: DATA STRUCTURES USING C
Theory Credits: 3 3 hrs/week
Course Objectives:
1. Understand the fundamentals of computer programming, Apply structured problemsolving
approaches using algorithms, flowcharts, and C programming constructs.
2. Develop efficient logic using decision-making, loop, and jump control statements.
3. Utilize derived data types like arrays and strings for modular program design.
4. Design and implement modular solutions using functions, recursive logic, pointer
operations, and dynamic memory management.
5. Handle complex data structures including structures, unions, and text file operations.
Course Outcomes:
At the End of the Course, The Students will be able to:
1. Understand basic computing concepts, programming paradigms and write structured C
programs.
2. Apply control flow statements to solve logical and repetitive tasks in C.
3. Implement arrays and string operations to manage and manipulate data efficiently.
4. Design modular code using functions, recursion, and appropriate parameter passing.
5. Utilize pointers and memory operations for effective data handling. Demonstrate
competence in dynamic memory allocation and text file processing.
Unit 1. Basic Concepts:
Algorithm: Definition and characteristics, Complexity analysis: Space Complexity, Time
Complexity, Asymptotic Notations.
Introduction to Data structures: Definition, Types of Data structures, Abstract Data Types (ADT),
Introduction to Linked Lists, Representation of linked lists in Memory, Comparison between
Linked List and Array.
Unit 2. Linked Lists:
Types of Linked Lists - Singly Linked list, Doubly Linked list, Circularly Singly Linked list,
Circularly Doubly Linked list; Implementation of Single Linked List ADT: Creating a List,
Traversing a linked list, Searching in linked list, Insertion and deletion into linked list (At first
Node, Specified Position, Last node).
Unit 3. Stacks and Queues:
Introduction to stack ADT, Implementation of stacks using array and Linked List, Application of
stacks - Polish Notations - Converting Infix to Post Fix Notation - Evaluation of Post Fix
Notation.
Queues: Introduction to Queue ADT, Implementation of Queues using array and Linked List,
Application of Queues Types of Queues- Circular Queues, De-queues, Priority Queue, Heaps.
Unit 4. Searching and Sorting:
Linear or Sequential Search, Binary Search, Hashing and collision resolution.
Sorting: Selection Sort, Bubble Sort, Insertion Sort, Quick Sort and Merge Sort
Unit 5. Trees and Graphs:
Tree Terminology, Binary Tree Representation, Traversal techniques, Expression Tree, Binary
Search Tree- Definition, Operations on a Binary Search Tree: Creation, Search, Insertion &
deletion.
Graphs: Introduction to Graphs, Terminology, Representation (Adjacency Matrix, Adjacency
List), Traversal of Graphs (DFS, BFS), Applications of Graphs, Concept of Shortest Path
Problems, Concept of Minimum Cost Spanning Tree
Textbooks:
[Link] Structures Using C, Balagurusamy E. Tata MCGraw Hill
[Link] Structures using C, Reema Thareja, Third Edition, Oxford University Press
Reference Books:
[Link] Structures, Lipschutz, Schaum’s Outline Series, Tata Mcgraw-hill
[Link] Structures Using C, Ch. Vijay Kumar, Pen Press International
Activities:
Outcome: Explain algorithm characteristics, time and space complexity, and asymptotic notations
with clarity
Activity: Create a comparative chart of algorithms with different notations related to time and
space complexities.
Evaluation Method: Rubric-based assessment of the chart for correctness, clarity, and depth of
explanation on a 10-point scale.
Outcome: Implement and analyze different types of linked lists, including insertion, deletion, and
traversal operations
Activity: Code a menu-driven program in C to implement single linked lists with all basic
operations.
Evaluation Method: Practical lab assessment with test cases and Viva-style questioning to
explain pointer manipulation.
Outcome: Develop stack and queue data structures using arrays and linked lists, and apply them
in expression evaluation
Activity: Build a program to convert infix expressions to postfix and evaluate them using stacks;
Implement queues using both arrays and linked lists with enqueue/dequeue operations.
Evaluation Method: Code review and execution of programs for sample cases and evaluation
based on correctness and efficiency.
Outcome: Apply efficient searching and sorting algorithms to solve computational problems and
evaluate performance trade-offs
Activity: Implement and compare sorting algorithms (e.g., selection sort and bubble sort) and
searching algorithms (e.g., Linear vs. Binary Search) on datasets of varying sizes. Record number
of swaps and iterations for preparing a chart to assimilate the results.
Evaluation Method: Performance report with graphs and analysis. Oral presentation or peer
review discussing trade-offs and algorithm selection rationale.
Outcome: Construct and traverse tree and graph structures, using them to solve problems like
shortest path and spanning trees
Activity: Implement binary trees and graphs using adjacency lists/matrices.
Evaluation Method: Lab demo with sample inputs and visual output (e.g., tree traversal order,
graph paths).
SEMESTER-II
COURSE 3: DATA STRUCTURES USING C
Practical Credits: 1 2 hrs/week
List of Experiments
1. Write a program to read ‘N’ numbers of elements into an array and also perform the
following operation on an array
a. Add an element at the beginning of an array
b. Insert an element at given index of array
c. Update an element using a value and index
d. Delete an existing element
2. Write a program to implement Single Linked List with insertion, deletion and traversal
operations
3. Write a program to implement Doubly Linked List with insertion, deletion and traversal
operations
4. Write a program to implement the Stack operations using Arrays and Linked Lists.
5. Write a program to convert a given infix expression to a postfix expression using stacks.
6. Write a program to implement the Queue operations using Arrays and Linked Lists.
7. Write a program to implement the Circular Queue operations using Arrays.
8. Write a program for Binary Search Tree Traversals
9. Write a program to search an item in a given list using the following Searching Algorithms
a. Linear Search
b. Binary Search.
10. Write a program for implementation of the following Sorting Algorithms a. Bubble Sort
b. Insertion Sort
c. Quick Sort
d. Merge Sort
SEMESTER-II
COURSE 4: DATABASE MANAGEMENT SYSTEMS
Theory Credits: 3 3 hrs/week
Course Objectives:
1. To understand the fundamentals of data, information, and the evolution from file-based
systems to modern database management systems.
2. To develop the ability to design conceptual data models using Entity-Relationship (ER)
and Enhanced ER diagrams.
3. To explore relational model principles, such as keys, integrity constraints, relational
algebra and calculus, and normalization.
4. To perform data definition and manipulation using SQL commands including queries,
joins, subqueries, views, and set operations.
5. To apply procedural logic using PL/SQL, incorporating control structures, functions,
procedures, and database triggers. Course Outcomes:
At the End of the Course, The Students will be able to:
1. Describe the fundamentals of data, database systems, and the differences between
filebased and database approaches. Compare and classify various DBMS architectures,
data models, and their components, including the three-schema architecture.
2. Design conceptual data models using Entity-Relationship and Enhanced ER diagrams,
applying generalization, specialization, and constraints.
3. Apply relational model concepts, including CODD rules, relational algebra, relational
calculus, and normalization techniques.
4. Construct and execute SQL queries for data definition, manipulation, aggregation,
joining, and subqueries, including views and set operations.
5. Develop PL/SQL programs incorporating control structures, procedures, functions, and
triggers to manage database behavior effectively.
Unit 1. Overview of Database Management System:
Introduction to data, information, database, database management systems, file-based system,
Drawbacks of file-Based System, database approach, Classification of Database Management
Systems, advantages of database approach, Various Data Models, Components of Database
Management System, three schema architecture of data base, costs and risks of database approach.
Unit 2. Entity-Relationship Model:
Introduction, the building blocks of an entity relationship diagram, classification of entity sets,
attribute classification, relationship degree, relationship classification, reducing ER diagram to
tables, enhanced entity-relationship model (EER model), generalization and specialization, IS A
relationship and attribute inheritance, multiple inheritance, constraints on specialization and
generalization, advantages of ER modeling.
Unit 3. Relational Model:
Introduction, CODD Rules, relational data model, concept of key, relational integrity, relational
algebra, relational algebra operations, advantages of relational algebra, limitations of relational
algebra, Functional dependencies and normal forms.
Unit 4. Structured Query Language:
Introduction, Commands in SQL, Data Types in SQL, Data Definition Language, Selection
Operation, Projection Operation, Aggregate functions, Data Manipulation Language, Table
Modification Commands, Join Operation, Set Operations, View, Sub Query.
Unit 5. PL/SQL:
Introduction, Shortcomings of SQL, Structure of PL/SQL, PL/SQL Language Elements, Data
Types, Operators Precedence, Control Structures, Steps to Create a PL/SQL, Program, Iterative
Control, Procedures, Functions.
Textbooks:
1. Database System Concepts, Avi Silberschatz,Henry F. Korth,S. Sudarshan, Seventh
Edition, McGraw-Hill
2. Database Management Systems by Raghu Ramakrishnan, McGrawhillReference
Books:
1. Fundamentals of Database Systems, Elmasri Navathe Pearson Education
2. An Introduction to Database systems, C.J. Date, [Link], [Link] Nadhan, Pearson
Activities:
Outcome: Describe the fundamentals of data, database systems, and the differences between
filebased and database approaches. Compare and classify various DBMS architectures, data
models, and their components, including the three-schema architecture.
Activity: Create a comparative presentation or infographic illustrating:
○File-based vs. DBMS approaches
○Types of DBMS architectures (1-tier, 2-tier, 3-tier)
○Data models and the three-schema architecture
Evaluation Method: Rubric-based assessment of the presentation covering clarity, accuracy, and
depth of comparison. Include a short quiz to test conceptual understanding.
Outcome: Design conceptual data models using Entity-Relationship and Enhanced ER diagrams,
applying generalization, specialization, and constraints.
Activity: Model a university or hospital database using ER and Enhanced ER diagrams that
shows:
○Entity sets, relationships
○Generalization/specialization
○Participation and cardinality constraints
Evaluation Method: Diagram submission with peer review and instructor feedback. Use a
checklist to assess completeness, correctness, and notation usage.
Outcome: Apply relational model concepts, including CODD rules, relational algebra, relational
calculus, and normalization techniques.
Activity: Normalize a given unstructured dataset up to 3NF. Then, write relational algebra
expressions for sample queries.
Evaluation Method: Written assignment graded on:
○Correctness of normalization steps
○Accuracy of relational algebra expressions
○Short-answer questions on CODD rules and relational calculus
Outcome: Construct and execute SQL queries for data definition, manipulation, aggregation,
joining, and subqueries, including views and set operations.
Activity:
○Create tables using DDL (CREATE TABLE) for Students, Courses, Enrollments,
Faculty.
○Fetch aggregated data (e.g., average marks, total students).
○Perform joins (e.g., list students enrolled in each course).
○Execute subqueries (e.g., students scoring above average).
○Create and use views (e.g., StudentCourseSummary).
○Use set operations (UNION, INTERSECT) for combined results.
Evaluation Method:
○Appropriate use of data types, primary & foreign keys, normalization.
○Correct syntax and execution of table creation and data insertion.
○Use of GROUP BY, JOIN, and multi-table queries with accurate output.
○Correct implementation of UNION, INTERSECT, EXCEPT.
○Writing correlated/un-correlated subqueries and reusable views.
SEMESTER-II
COURSE 4: DATABASE MANAGEMENT SYSTEMS
Practical Credits: 1 2 hrs/week
Experiment 1: Database: Inventory Management
Table 1: Products
Structure:
Column Name Data Type Constraints
product_id INT PRIMARY KEY
product_name VARCHAR(50) NOT NULL
price DECIMAL(10,2) CHECK(price > 0)
stock_qty INT CHECK(stock_qty>= 0)
Sample Data:
product_id product_name price stock_qty
1 Pen 10.00 100
2 Notebook 50.00 200
3 Stapler 120.00 50
4 Marker 25.00 80
5 File Folder 60.00 150
Table 2: Suppliers
Structure:
Column Name Data Type Constraints
supplier_id INT PRIMARY KEY
supplier_name VARCHAR(50) NOT NULL
contact_no VARCHAR(20) UNIQUE
product_id INT FOREIGN KEY
REFERENCES
Products(product_id)
Sample Data:
supplier_id supplier_name contact_no product_id
101 StationeryMart 9876543210 1
102 PaperWorld 9876500000 2
103 OfficeSupplies 9876512345 3
104 MarkerHub 9876522222 4
105 FileDepot 9876533333 5
Section A: DDL (Data Definition Language)
1. Create a database called InventoryDB.
2. Create a table Products and table Suppliers with the specified columns and constraints:
Section B: DML (Data Manipulation Language)
4. Insert at least 5 rows into the Products table.
5. Insert at least 5 rows into the Suppliers table.
6. Update the stock quantity of product ‘Pen’ to 120.
7. Delete a supplier with a specific supplier_id.
8. Write a query to rename ‘Notebook’ to ‘NoteBook A4’
Section C: DQL (SELECT Queries)
9. Display all records from the Products table.
10. Display only product_name and price of all products.
11. List all products that have a stock quantity less than 100.
12. Show all products between 20 and 100 price range.
13. Find all suppliers whose contact number starts with ‘98765’.
14. Find the average price of products.
15. Display the total number of products in the inventory.
16. Show the maximum and minimum stock quantities.
17. Count how many suppliers supply each product.
18. Show all products where price > 50 AND stock_qty> 100.
19. Show all products where price < 20 OR stock_qty< 80.
20. Display suppliers whose supplier_name contains the word ‘Mart’ 21. List all
suppliers along with the product they supply (use INNER JOIN).
22. Display suppliers whose name starts with ‘S’.
23. Find products whose name has exactly 5 characters
24. Find suppliers who supply products costing more than 100.
Experiment 2: ONLINE BOOKSTORE DB
An online book store wants to implement a BOOKSTORE DB for managing their online
transactions by using the following tables.
Authors Table
Column Name Data Type Constraints
author_id INTEGER PRIMARY KEY
first_name VARCHAR NOT NULL
last_name VARCHAR NOT NULL
nationality VARCHAR NULL allowed
Books Table
Column Name Data Type Constraints
book_id INTEGER PRIMARY KEY
Title VARCHAR NOT NULL
author_id INTEGER FOREIGN KEY REFERENCES Authors
publication_year INTEGER
Price DECIMAL
Customers Table
Column Name Data Type Constraints
customer_id INTEGER PRIMARY KEY
first_name VARCHAR NOT NULL
last_name VARCHAR NOT NULL
Email VARCHAR UNIQUE, NOT
NULL
Address VARCHAR NOT NULL
Orders Table
Column Name Data Type Constraints
order_id INTEGER PRIMARY KEY
customer_id INTEGER FOREIGN KEY REFERENCES Customers
book_id INTEGER FOREIGN KEY REFERENCES Books
order_date DATE NOT NULL
quantity INTEGER NOT NULL
SAMPLE DATA SET for BOOKSTORE DB
Authors Table
author_id first_name last_name nationality
1 Jane Austen British
2 George Orwell British
3 Gabriel Garcia Marquez Colombian
4 Toni Morrison American
5 Mark Twain American
6 Harper Lee American
7 Fyodor Dostoevsky Russian
Books Table
book_id Title author_id publication_year price
101 Pride and Prejudice 1 1813 12.99
102 1984 2 1949 9.50
103 One Hundred Years of Solitude 3 1967 15.00
104 Beloved 4 1987 11.25
105 Animal Farm 2 1945 8.75
106 Adventures of Huckleberry Finn 5 1884 10.50
107 To Kill a Mockingbird 6 1960 14.00
Customers Table
customer_id first_name last_name Email address
201 Alice Smith alice.s@[Link] 12 Oak St, London
202 Bob Johnson bob.j@[Link] 45 Pine Ave, Oxford
203 Charlie Brown charlie.b@[Link] 78 Maple Rd, Bristol
204 Diana Prince diana.p@[Link] 34 Queen St, York
205 Edward Norton edward.n@[Link] 22 River Ln, Leeds
206 Fiona Hall fiona.h@[Link] 56 Lake Dr, Bath
207 Greg Miller greg.m@[Link] 89 Park Ave,
Glasgow
Orders Table
order_id customer_id book_id order_date Quantity
301 201 101 2025-07-20 1
302 202 102 2025-07-21 2
303 201 105 2025-07-22 1
304 203 103 2025-07-23 1
305 204 106 2025-07-24 1
306 205 107 2025-07-25 3
307 206 104 2025-07-26 2
Section A: DDL (Schema Design & Constraints)
1. Write SQL statements to create all 4 tables (Authors, Books, Customers, Orders)
with:
Primary Keys
Foreign Keys
Appropriate data types
NOT NULL constraints where
necessary.
2. Alter the Books table to add a constraint that price must be greater than 0.
3. Add a new column phone_number to the Customers table (VARCHAR(15)) and
ensure it is unique.
4. Drop the phone_number column from the Customers table.
Section B: DML (Data Manipulation)
5. Insert at least 7 records for each table (use sample dataset above).
6. Update the price of the book titled Animal Farm by increasing it by 10%.
7. Delete all orders made before 2025-07-21.
8. Change the nationality of Gabriel Garcia Marquez to “Latino-American”.
Section C: SELECT Queries (Data Querying)
9. List all books published between 1900 and 2000.
10. Find all customers whose email contains “[Link]”.
11. Retrieve books whose price is between 10 and 15 and published before 1950.
12. Show authors who are either ‘British’ or ‘American’.
13. Find books that have a price less than 10 or are published after 1980.
14. Display all orders placed after 2025-07-22.
15. List all books written by author with author_id = 2.
16. Find customers whose last name starts with B.
17. Show all books with a price NOT between 9 and 13.
18. Display books whose publication_year is in (1813, 1945, 1987).
19. Find authors whose nationality is NOT ‘British’.
20. List customers whose address contains the word Park.
21. Show all books sorted by price in descending order.
22. List authors in alphabetical order by last_name.
23. Display orders sorted by order_date (latest first).
Use of Date Functions
24. Show all orders placed in July 2025.
25. Show all orders with an estimated delivery date (5 days after order date).
26. Show customers who placed an order on a weekend.
27. Calculate how many days have passed since the last order was placed.
Aggregate Functions (COUNT, SUM, AVG, MIN, MAX)
28. Count the total number of books in the database.
29. Find the average price of all books.
30. Show the highest-priced book.
31. Count how many orders each customer has placed.
32. Calculate the total sales (price × quantity) for each customer.
GROUP BY and HAVING
33. Count how many books are written by each author.
34. Group orders by customer_id and display total quantity ordered.
35. Show customers who have ordered more than 2 books in total (use HAVING).
36. Find the total number of books sold per author (GROUP BY author).
Experiment 3: EMPLOYEE DB
An enterprise wants to automate its employee management process by implementing an Employee
[Link] goal is to replace manual record-keeping with a centralized system that stores
employee, department, and project details. Use the following table structures and data set to
implement Employee DB.
EmployeeDB – Table Structures
1. Departments Table
Column Type Constraints
dept_id INT PRIMARY KEY
dept_name VARCHAR UNIQUE, NOT NULL
location VARCHAR NOT NULL
2. Employees Table
Column Type Constraints
emp_id INT PRIMARY KEY
first_name VARCHAR NOT NULL
last_name VARCHAR NOT NULL
email VARCHAR UNIQUE, NOT NULL
phone VARCHAR CHECK (phone LIKE '--____')
hire_date DATE NOT NULL
job_title VARCHAR NOT NULL
salary DECIMAL CHECK (salary > 0)
dept_id INT FOREIGN KEY REFERENCES Departments(dept_id)
manager_id INT
FOREIGN KEY REFERENCES Employees(emp_id)
(selfreferential)
3. Projects Table
Column Type Constraints
project_id INT PRIMARY KEY
project_name VARCHAR NOT NULL
start_date DATE NOT NULL
end_date DATE NULL
dept_id INT FOREIGN KEY REFERENCES
Departments(dept_id)
4. Employee_Project Table (Many-to-Many)
Column Type Constraints
emp_id INT
FOREIGN KEY REFERENCES Employees(emp_id), PRIMARY
KEY(emp_id, project_id)
project_id INT FOREIGN KEY REFERENCES Projects(project_id)
hours_allocated INT CHECK (hours_allocated> 0)
Sample Data Set
Departments Table
dept_id dept_name Location
1 HR New York
2 IT San Francisco
3 Finance Chicago
4 Marketing Boston
5 Operations Seattle
6 Legal Washington D.C.
7 Sales Dallas
8 R&D Austin
9 Procurement Denver
10 Customer Care Miami
2. Employees Table
emp_id first_name last_name Email phone hire_da job_title salary dept_id manager_i
te d
101 Alice Johnson alice.j@corp. 123- 2020- HR 75000 1 NULL
com 4567890 03-15 Manager
102 Bob Smith bob.s@corp. 234- 2019- IT 65000 2 104
com 5678901 05-20 Analyst
103 Charlie Brown charlie.b@co [Link] 345- 2021- Finance 58000 3 106
6789012 01-10 Executive
104 Diana Prince diana.p@cor [Link] 456- 2018- IT 90000 2 NULL
7890123 07-12 Manager
105 Ethan Hunt ethan.h@cor [Link] 567- 2022- Marketing 62000 4 NULL
8901234 02-25 Lead
106 Fiona Hall fiona.h@cor [Link] 678- 2017- Finance 85000 3 NULL
9012345 11-01 Manager
107 Greg Miles greg.m@cor [Link] 789- 2023- IT 45000 2 104
0123456 04-15 Support
108 Hannah White hannah.w@[Link] 890- 2021- HRExecutive 50000 1 101
123-4567 09-05
109 Ian Scott [email protected] om 901- 2020- Operation s 56000 5 NULL
2345678 11-20 Analyst
110 Julia Adams julia.a@corp .com 012- 2019- Legal 70000 6 NULL
3456789 12-18 Advisor
3. Projects Table
project_id project_name start_date end_date dept_id
201 Payroll System 2023-01-01 NULL 3
202 Website Upgrade 2023-02-10 NULL 2
203 Recruitment Drive 2023-03-05 NULL 1
204 Ad Campaign 2023-05-20 NULL 4
205 New CRM Tool 2023-04-15 NULL 7
206 Compliance Portal 2023-06-10 NULL 6
207 Inventory System 2023-07-01 NULL 5
208 AI Research 2023-08-05 NULL 8
209 Customer Feedback 2023-09-10 NULL 10
210 Procurement System 2023-10-01 NULL 9
4. Employee_Project Table
emp_id project_id hours_allocated
102 202 120
104 202 80
103 201 100
106 201 150
101 203 50
105 204 70
107 202 60
109 207 90
110 206 110
108 203 40
Section A: DDL (Schema Creation & Modification)
1. Write SQL statements to create the above tables with the specified constraints 2.
Alter the Employees table to add a column bonus DECIMAL(8,2) with default value0.
3. Drop the column bonus from Employees.
Section B: DML (Insert, Update, Delete)
4. Insert at least 10 rows into Departments, Employees, Projects, and
Employee_Project.(use the above data set)
5. Try inserting an employee with a negative salary (should fail due to CHECK
constraint).
6. Update the salary of the employee with emp_id = 103 by 15%.
7. Delete an employee record who has resigned (choose any emp_id).
8. Increase all employees’ salaries in the IT department by 5%.
9. Change the department of an employee to "Research".(should fail due to FK
constraint)
Section C: DQL (Select Queries)
10. List all employees and their details.
11. Show all employees in the "HR" department.
12. Find employees with salaries between 50,000 and 80,000.
13. Retrieve employees hired after 2020.
14. Show employees who are in either the IT or Finance department.
15. Find employees whose email ends with "@[Link]".
16. List all employees with salary > 60,000 AND located in "New York".
17. Display employees in descending order of salary.
18. Count the number of employees in each department.
19. Show the average salary of employees department-wise.
20. Display departments where the average salary is greater than 70,000.
21. Find the number of employees in each project.
22. Display departments with more than 3 employees.
23. Show the sum of all salaries department-wise.
24. List all distinct department IDs from the Employees table.
25. Show employee names with the year they were hired.
26. Show employees grouped by the year of hire.
27. List employees hired in the last 90 days.
28. List the no of years of experience of all the employees
Section D: Joins
29. List all employees with their department names (INNER JOIN).
30. Display all departments along with employees, including those departments without
employees (LEFT JOIN).
31. Show employees and the projects they are working on (JOIN 3 tables: Employees,
Employee_Project, Projects).
32. List projects along with total hours allocated by employees.
33. Write a query to find employees who are working on more than one project.
34. Show all projects handled by the 'Finance' department.
Section E: PL/SQL Programming
1. Write a procedure GetEmpInfo that takes emp_id as input and displays name, salary,
and department.
2. Write a PL/SQL block that checks if an employee’s salary is above 50,000. If yes,
print "High Salary" ;Otherwise print "Standard Salary".
3. Write a PL/SQL program to display the top 10 rows in the Emp table based on their
job and salary
4. Write a stored procedure GiveBonus that takes department ID and a designation as
input, along with a bonus amount, and updates the salary of all employees in that
department who have the specified designation by adding the bonus amount to their
current salary.
5. Create a trigger to prevent inserting employees with a salary less than 30,000.
6. Create a trigger to avoid any transactions (insert, update, delete) on EMP table on
Saturday & Sunday.