ANDHRA PRADESH STATE COUNCIL OF HIGHER EDUCATION
(A Statutory body of the Government of Andhra Pradesh)
3%\44 and S* floors, Neeladri Towers,Sri Ram Nagar. 6" Battalion Road,
‘Atmakur(V),Mangalagiri(M), Guntur-522 503, Andhra Pradesh,
‘Web: wow apsche.org Email: acapsche@ gmail.com
REVISED SYLLABUS OF B.Sc. (COMPUTER SCIENCE/ INFORMATION
TECHNOLOGY) UNDER CBCS FRAMEWORK WITH EFFECT FROM 2020-2021
PROGRAMM!
(B.Sc, Computer Seience/ Information Technology (IT))
HRI
AR
(With Learning Outcomes, Unit-wise Syllabus, References, Co-curricular Activities &
Model Q.P.)
For Fifteen Courses of 1, 2, 3 & 4 Semesters)
(To be Implemented from 2020-21 Academic Year)Programme: B.Sc.
Discipline: Computer Science
uter mation Technol
Computer Science as one of the Core Subjects.
Elo
9 3
Year | Semester | Paper Code | Subject z ®igisigie
Rs \e =
1 le Problem Solving in C 4 | 3 [25] 75 | 100
First 1 [cre Problem Solving inCLab | 2 | 2 50 | 50
tex [a Data Structures using C 4 [3 [2575 | 100
1 lop Data Souter ning | | Paes
m |c3 coe —— 4 | 3 | 25} 75 | 100
Database Management
m csp poe ate 50 | 50
Object Oriented
2
Second wu ‘Se Programming using Java 4 3 -| 2 | 73: | 0
‘Year ‘Object Oriented
woe Programming using Java | 2 | 2 50 | 50
Lab
Iv cs Operating Systems | 4 3 | 25 | 75 | 100
1
aes Operating Syatemstab |. | 5 ole
using C/Java |
Slabs APProved
labus AV TSO"
03/10/4040 3
BieberPROBLEM SOLVING IN C
Sp
Semester | Course Code Course Title Hours | Credits
1 cr PROBLEM SOLVING INC 60 3
Objectives:
This course aims to provide exposure to problem-solving through programming. It introduces
the concepts of the C Programming language.
Course Learning Outcomes:
Upon successful completion of the course, a student will be able to:
1. Understand the evolution and functionality of a Digital Computer.
Apply logical skills to analyse a given problem
Develop an algorithm for solving a given problem.
Understand °C” language constructs like Iterative statements, Array processing,
Pointers, ete.
5. Apply “C’ language constructs to the algorithms towrite a *C’ language program.
UNITI
General Fundamentals: Introduction to computers: Block diagram of a computer,
characteristics and limitations of computers, applications of computers, types of computers,
computer generations.
Introduction to Algorithms and Programming Languages: Algorithm — Key features of
Algorithms, Flow Charts, Programming Languages - Generations of Programming
Languages ~ Structured Programming Language- Design and Implementation of Correct,
Efficient and Maintainable Programs
UNIT HL
Introduction to C: Introduction — Structure of C Program — Writing the first C Program —
File used in C Program ~ Compiling and Executing C Programs ~ Using Comments ~
Pde
03/!9 Q é BitesKeywords — Identifiers - Basic Data Types in C — Variables ~ Constants ~ /O Statements in
C- Operators in C- Programming Examples.
Decision Control and Looping Statements: Introduction to Decision Control Statements~
Conditional Branching Statements — Iterative Statements ~ Nested Loops - Break and
Continue Statement ~ Goto Statement
UNIT HL
Arrays: Introduction - Declaration of Arrays — Accessing elements of the Array ~ Storing
Values in Aray- Operations on Arrays — one dimensional, two dimensional and multi
dimensional arrays, character handling and strings,
UNIT IV
Functions: Introduction — using functions - Function declaration/ prototype — Function
definition — function call — return statement — Passing parameters — Scope of variables
Storage Classes — Recursive functions.
Structure, Union, and Enumerated Data Types: Introduction — Nested Structures — Arrays
of Structures ~ Structures and Funetions~ Union ~ Arrays of Unions Variables — Unions
inside Structures - Enumerated Data Types.
UNITV
Pointers: Understanding Computer Memory — Introduction to Pointers ~ declaring Pointer
Variables ~ Pointer Expressions and Pointer Arithmetic — Null Pointers - Passing Arguments
to Functions using Pointer ~ Pointer and Arrays - Memory Allocation in C Programs —
Memory Usage ~ Dynamic Memory Allocation ~ Drawbacks of Pointers
Files: Introduction to Files — Using Files in C — Reading Data from Files — Writing Data to
Files — Detecting the End-of-file — Error Handling during File Operations — Accepting
Command Line Arguments.
Splols Apoved
03M) 23 \t>l20rBOOKS
1, E Balagurusamy ~ Programming in ANSIC - Tata McGraw-Hill publications.
Brain W Kernighan and Dennis M Ritchie - The *C’ Programming language” -
Pearson publications.
3. Ashok N Kamthane: Programming with ANSI and Turbo C, Pearson Edition
Publications.
4, YashavantKanetkar - Let Us °C’ - BPB Publications.
RECOMMENDED CO-CURRICULAR ACTIVITIES:
(Co-curricular activities shall not promote copying from textbook or from others work and
shall encourage self/independent and group learning)
Measurable
1, Assignments (in writing and doing forms on the aspects of syllabus content and
outside the syllabus content. Shall be individual and challenging)
2. Student seminars (on topics of the syllabus and related aspects (individual activity)
3. Quiz (on topics where the content can be compiled by smaller aspects and data
(Individuals or groups as teams))
4, Study projects (by very small groups of students on selected local real-time problems
pertaining to syllabus or related areas. The individual participation and contribution of
students shall be ensured (team activity
B. General
1. Group Discussion
2. Try to solve MCQ’s available online.
3. Others:
RECOMMENDED CONTINUOUS ASSESSMENT METHODS:
Some of the following suggested assessment methodologies could be adopted:
1. The oral and written examinations (Scheduled and surprise tests),
2. Closes-book and open-book tests,
G Vobus 3. Problem-solving exercises,
bepie 4._ Practical assignments and laboratory reports,
ved
oO ne peeObservation of practical skills,
Individual and group project reports like “Creating Text Editor in C”.
Efficient delivery using seminar presentations,
Viva voce interviews,
‘Computerized adaptive testing, literature surveys and evaluations,
10. Peers and self-assessment, outputs form individual and collaborative work
Semester | Course Code Course Title Hours | Credits
1 CLP PROBLEM SOLVING INCLAB | 30 2
Problem solving in C LAB
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 refection of parameters in swapping of two integer
values using Call by Value&Call by Address
6. Write a program that uses functions to add two matrices
7. Write a program to calculate factorial of given integer value using recursive functions
8. Write a program for multiplication of twoN X N matrices.
9. Write a program to perform various string operations,
10. Write a program to search an element in a given list of values.
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 Basie Pay
b. HRA is 15% of Basic Pay
©. Deduction is 10% of (Basic Pay + DA)
d. Gross Salary = Basic Pay + DA+ HRA.
€. Net Salary = Gross Salary - Deduction
13, Write a program to illustrate pointer arithmetic.
ode
5 a Rlvlzere14, Write a program to read the data character by character from a file
15. Write a program to ereateBook (ISBN,Title, Author, Price, Pages,
Publisher)structureand 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
4d. Delete book details for a given ISBN and display list of remaining Books
a3/lo/doko Avedie?ibe
DATA STRUCTURES USING C
coved.
ps i aa
Semester | Course Code Course Title Hours | Credits
1 a DATA STRUCTURES USING C |" 60 3
Course Objectives
To introduce the fundamental concept of data structures and fo emphasize the importance of
various data structures in developing and implementing efficient algorithms.
Course Learning Outcomes:
Upon successful completion of the course, a student will be able to:
1. Understand available Data Structures for data storage and processing
2. ComprehendData Structure and their real-time applications - Stack, Queue, Linked
List, Trees and Graph
3. Choose a suitable Data Structures for an application
4. Develop ability to implement different Sorting, and Search methods
5. Have knowledge onData Structures basic operations like insert, delete, search, update
and traversal
6. Design and develop programs using various data structures
7. Implement the applications of algorithms for sorting, pattern matching ete
UNIT=1:
Introduction to Data Structures: Introduction to the Theory of Data Structures, Data
Representation, Abstract Data Types, Data Types, Primitive Data Types, Data Structure and
Structured Type, Atomic Type, Difference between Abstract Data Types, Data Types, and
Data Structures, Refinement Stages
Principles of Programming and Analysis of Algorithms: Software Engineering, Program
Design, Algorithms, Different Approaches to Designing an Algorithm, Complexity, Big ‘O°
Notation, Algorithm Analysis, Structured Approach to Programming, Recursion, ‘Tips and
Techniques fpr Writing Programs in ‘C”UNIT =I:
Arrays: Introduction to Linear and Non- Linear Data Structures, One- Dimensional Arrays,
Array Operations, Two- Dimensional arrays, Multidimensional Arrays, Pointers and Arrays,
an Overview of Pointers
Linked Lists: Introduction to Lists and Linked Lists, Dynamic Memory Allocation, Basic
Linked List Operations, Doubly Linked List, Circular Linked List, Atomic Linked List
Linked List in Arrays, Linked List versus Arrays
INIT 10:
Stacks: Introduction to Stacks, Stack as an Abstract Data Type, Representation of Stacks
through Arrays, Representation of Stacks through Linked Lists, Applications of Stacks,
Stacks and Recursion
Queues: Introduction, Queue as an Abstract data Type, Representation of Queues, Circular
Queues, Double Ended Queues- Deques, Priority Queues, Application of Queues
UNIT-IV:
Binary Trees: Introduction to Non- Linear Data Structures, Introduction Binary Trees, Types
of Trees, Basic Definition of Binary Trees, Properties of Binary Trees, Representation of
Binary Trees, Operations on a Binary Search Tree, Binary Tree Traversal, Counting Number
of Binary Trees, Applications of Binary Tree
UNIT-V:
Searching and sorting: Sorting — An Introduction, Bubble Sort, Insertion Sort, Merge Sort,
Searching — An Introduction, Linear or Sequential Search, Binary Search, Indexed Sequential
Search
Graphs: Introduction to Graphs, Terms Associated with Graphs, Sequential Representation
of Graphs, Linked Representation of Graphs, Traversal of Graphs, Spanning Trees, Shortest
Path, Application of Graphs,
BOOKS:
1. “Datg Structures using C”, ISRD group Second Edition, TMH
Arde
oF olor2. “Data Structures through C”, YashavantK anetkar, BPB Publications
3. “Data Structures Using C” Balagurusamy E. TMH
RECOMMENDED CO-CURRICULAR ACTIVITIES:
(Co-curricular activities shall not promote copying from textbook or from others work and
shall encourage selflindependent and group learning)
A. Measurable
1. Assignments (in writing and doing forms on the aspects of syllabus content and
outside the syllabus content. Shall be individual and challenging)
2. Student seminars (on topics of the syllabus and related aspects (individual activity)
3. Quiz (on topies where the content can be compiled by smaller aspects and data
(Individuals or groups as teams))
4. Study projects (by very small groups of students on selected local real-time problems
pertaining to syllabus or related areas. The individual participation and contribution of
students shall be ensured (team activity)
B. General
1. Group Discussion
2. Others
RECOMMENDED CONTINUOUS ASSESSMENT METHODS:
Some of the following suggested assessment methodologies could be adopted;
The oral and written examinations (Scheduled and surprise tests),
Closed-book and open-book tests,
Programming exercises,
Practical assignments and laboratory reports,
Observation of practical skills,
Individual and group project reports.
Efficient delivery using seminar presentations,
Viva voce interviews,
eens
Computerized adaptive testing, literature surveys and evaluations,
10. Pees and self-assessment, outputs form individual and collaborative work
WHedlod
q a ogole™Semester | Course Code Course Title Hours | Credits
W CLP DATA STRUCTURES USING C 30 2
LAB
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 begging of an array
b. Insert an element at given index of array
c. Update a clement using a values and index
d. Delete an existing element
2. Write a program using stacks to convert a given
a. postfix expression to prefix
b. prefix expression to postfix
._ infix expression to postfix
Write Programs to implement the Stack operations using an array
Write Programs to implement the Stack operations using Liked List.
Write Programs to implement the Queue operations using an array
Write Programs to implement the Queue operations using Liked List
Write a program for arithmetic expression evaluation.
Write a program for Binary Search Tree Traversals
Cera awe
Write a program to implement dequeue using a doubly linked list
10, Write a program to search an item in a given list using the following Searching
Algorithms
a, Linear Search
b. Binary Search
11. Write a program for implementation of the following Sorting Algorithms
a. Bubble Sort
b. Insertion Sort
©. Quick Sort
12. Write a program for polynomial addition using single linked list
13, Write a program to find out shortest path between given Source Node and Destination.
Node in a given graph using Dijkstrar’s algorithm.
lo wBldexro14. Write a program to implement Depth First Search graph traversals algorithm
15. Write a program to implement Breadth First Search graph traversals algorithm
SMobus Modbe?
Ape od ePtexo Os saleee
“i
I)DATABASE MANAGEMENT SYSTEMS
Semester | Course Code Course Title Hours | Credits
1 Cc DATABASE MANAGEMENT 60 3
SYSTEMS |
Course Objective:
The objective of the course is to introduce the design and development of databases with
special emphasis on relational databases.
Course Learning Outcomes:
On completing the subject, students will be able to:
1. Gain knowledge of Database and DBMS.
2. Understand the fundamental concepts of DBMS with special emphasis on relational
data model
3. Demonstrate an understanding of normalization theory and apply such knowledge to
the normalization of a database
4, Model databaseusing ER Diagrams and design database schemas based on the model.
Create a small database using SQL.
6. Store, Retrieve data in database
UNITI
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 IT
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 (BER
Me : Ogio.
Imodel), generalization and specialization, IS A relationship and attribute inheritance,
multiple inheritance, constraints on specialization and generalization, advantages of ER
modelling.
UNIT HL
Relational Mod
Introduction, CODD Rules, relational data model, concept of key,
relational integrity, relational algebra, relational algebra operations, advantages of relational
algebra, limitations of relational algebra, relational caleulus, tuple relational calculus, domain
relational Calculus (DRC), Functional dependencies and normal forms upto 3° normal form.
UNITIV
Structured Query Language: Introduction, History of SQL Standard, 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.
UNITY
PL/SQL: Introduction, Shortcomings of SQL, Structure of PL/SQL, PL/SQL Language
Elements, Data Types, Operators Precedence, Control Structure, Steps to Create a PL/SQL,
Program, Iterative Control, Procedure, Function, Database Triggers, Types of Triggers.
Malis. Append
o5/te/A0r0 Hirer
13BOOKS:
1
when
Database System Concepts by Abraham Silberschatz, Henry Korth, and S. Sudarshan,
McGrawhill
Database Management Systems by Raghu Ramakrishnan, MeGrawhill
Principles of Database Systems by J. D, Ullman
Fundamentals of Database Systems by R. Elmasri and $. Navathe
SQL: The Ultimate Beginners Guide by Steve Tale.
RECOMMENDED CO-CURRICULAR ACTIVITIES:
(Co-curricular activities shall not promote copying from textbook or from others work and
shall encourage selffindependent and group leaming)
A. Measurable
1
Assignments (in writing and doing forms on the aspects of syllabus content and
‘outside the syllabus content, Shall be individual and challenging)
Student seminars (on topics of the syllabus and related aspects (individual activity)
Quiz (on topics where the content can be compiled by smaller aspects and data
(Individuals or groups as teams)
Study projects (by very small groups of students on selected local real-time problems
pertaining to syllabus or related areas. The individual participation and contribution of
students shall be ensured (team activity
General
Group Discussion
Try to solve MCQ’s available online.
Others
RECOMMENDED CONTINUOUS ASSESSMENT METHODS:
Some of the following suggested assessment methodologies could be adopted;
1.
2
3
Lhd. 4,
Ippved
‘The oral and written examinations (Scheduled and surprise tests),
Closed-book and open-book tests,
Practical assignments and laboratory reports,
Observgtion of practical skills,
& omiolzo®ew ae
Individual and group project reports like Create your college database for placement
purpose.
Efficient delivery using seminar presentations,
Viva voce interviews.
‘Computerized adaptive testing, literature surveys and evaluations,
Peers and self-assessment, outputs form individual and collaborative work
Qe, tolyoro AMedhor
pF lie\202Semester | Course Code Course Title Hours | Credits
ML C3-P TABASE MANAGEMENT 30 2
SYSTEMS LAB
1. Draw ER diagram for hospital administration
2. Creation of college database and establish relationships between tables
3. Relational database schema of a company is given in the following figure.
Relational Database Schema - COMPANY
MGRSTARTOATE.
onan
sex | BoATE RELATIONSHIP
‘Questions to be performed on above schema
1. Create above tables with relevant Primary Key, Foreign Key and other constraints
2. Populate the tables with data
3. Display al the details of all employees working in the company.
Display ssn, Iname, fname, address of employees who work in department no 7
oe
je i
03;
Hl 1b oewane
u
12
B
M4,
1s,
16.
17.
18,
Retrieve the Birthdate and Address of the employee whose name is ‘Franklin T
Wong’
Retrieve the name and salary of every employee
Retrieve all distinct salary values
Retrieve all employee names whose address is in “Bellaire”
Retrieve all employees who were born during the 1950s
Retrieve all employees in department 5 whose salary is between 50,000 and
60,000(inclusive)
Retrieve the names of all employees who do not have supervisors
Retrieve SSN and department name for all employees
Retrieve the name and address of all employees who work for the ‘Research’
department
For every project located in ‘Stafford’, list the project number, the controlling
department number, and the department manager's last name, address, and birth date.
For each employee, retrieve the employee's name, and the name of his or her
immediate supervisor
Retrieve all combinations of Employee Name and Department Name
Make a list of all project numbers for projects that involve an employee whose last
name is ‘Narayan’ either as a worker or as a manager of the department that controls
the project.
Increase the salary of all employees working on the ‘ProductX’ project by 15%,
Retrieve employee name and increased salary of these employees.
. Retrieve a list of employees and the project name each works in, ordered by the
employee's department, and within each department ordered alphabetically by
employee first name
Select the names of employees whose salary does not match with salary of any
employee in department 10
Retrieve the employee numbers of all employees who work on project located in
Bellaire, Houston, or Stafford
. Find the sum of the salaries of all employees, the maximum salary, the minimum
salary, and the average salary. Display with proper headings.
Find the sum of the salaries and number of employees of all employees of the
“Marketing” department, as well as the maximum salary, the minimum salary, and the
average salary in this department.
Ip oS lie\ WR24, Select the names of employees whose salary is greater than the average salary of all
‘employees in department 10.
25, Delete all dependents of employee whose ssn ix ‘123456789°
26. Perform a query using alter command to drop/add field and a constraint in Employee
table.
pode Appel ANodbo
23/lo/quxo oglie|20%
18OBJECT ORIENTATED PROGRAMMING THROUGH JAVA
Semester | Course Code ‘Course Title Hours | Credits
Vv C4 OBJECT ORIENTATED 60 3
PROGRAMMING THROUGH
JAVA
Objectives
To introduce the fundamental concepts of Object-Oriented programming and to design &
implement object oriented programming concepts in Java.
Course Learning Outcomes: At the end of this course student will:
1, Understand the benefits of a well-structured program
2. Understand different computer programming paradigms
3. Understand underlying principles of Object-Oriented Programming in Java
4. Develop problem-solving and programming skills using OOP concepts
5. Develop the ability to solve real-world problems through software development in
high-level programming language like Java
UNIT=1
Introduction to Java: Features of Java, The Java virtual Machine, Parts of Java
Naming Conventions and Data Types: Naming Conventions in Java, Data Types in Java,
Literals
Operators in Java: Operators, Priority of Operators
else Statement, do... while Statement, while Loop, for
Control Statements in Jays
Loop, switch Statement, break Statement, continue Statement, return Statement
Input and Output: Accepting Input from the Keyboard, Reading Input with
Java.util.Scanner Class, Displaying Output with System.out.printft), Displaying Formatted
Output with String.format()
Arrays: Types of Arrays, Three Dimensional Arrays (3D array), arrayname.length,
‘Command Line Arguments
Stabs Appoowd i Hoch
rere ee @3/o/#0?0 os tl2o
12UNIT -IL
Strings: Creating Strings, String Class Methods, String Comparison, Immutability of Strings
Introduction to OOPs: Problems in Procedure Oriented Approach, Features of Object-
Oriented Programming System (OOPS)
Classes and Objects: Object Creation, Initializing the Instance Variables, Access Specifiers,
Constructors
Methods in Java:Method Header or Method Prototype, Method Body, Understanding
Methods, Static Methods, Static Block, The keyword ‘this’, Instance Methods, Passing
Primitive Data Types to Methods, Passing Objects to Methods, Passing Arrays to Methods,
Recursion, Factory Methods
Inheritance: Inheritance, The keyword ‘super’, The Protected Specifier, Types of
Inheritance
Polymorphism: Polymorphism with Variables, Polymorphism using Methods,
Polymorphism with Static Methods, Polymorphism with Private Methods, Polymorphism
with Final Methods, final Class
‘Type Casting: Types of Data Types, Casting Primitive Data Types, Casting Referenced Data
Types, The Object Class
Abstract Classes: Abstract Method and Abstract Class,
Interfaces: Interface, Multiple Inheritance using Interfaces
Packages: Package, Different Types of Packages, The JAR Files, Interfaces in a Package,
Creating Sub Package in a Package, Access Specifiers in Java, Creating API Document
Exception Handling: Errors in Java Program, Exceptions, throws Clause, throw Clause,
‘Types of Exceptions, Re — throwing an Exception
UNIT-IV
Streams: Stream, Creating a File using FileOutputStream, Reading Data from a File
uingFileInputStream, Creating a File using FileWriter, Reading a File using FileReader,
Zipping and Unzipping Files, Serialization of Objects, Counting Number of Characters in a
File, File Copy, File Class
‘Threads: Single Tasking, Multi Tasking, Uses of Threads, Creating a Thread and Running i
Terminating the Thread, Single Tasking Using a ‘Thread, Multi Tasking Using Threads,
Multiple Threads (Acting on Single Object, Thread Class Methods, Deadlock of Threads,
Avod~
ae
0 z og ele‘Thread Communication, Thread Priorities, thread Group, Daemon Threads, Applications of
‘Threads, Thread Life Cycle
UNIT-V
Applets: Creating an Applet, Uses of Applets,