0% found this document useful (0 votes)
73 views39 pages

BCA Computer Appliations Compressed

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

BCA Computer Appliations Compressed

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

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.

You might also like