Revised - Syllabus - Computer - Science - BSC - 2023
Revised - Syllabus - Computer - Science - BSC - 2023
Siddharthnagar
Syllabus
of
Computer Science
As Major for
B.Sc. Programme
in
Choice Based Credit System (CBCS)
based on
Policy 2020
National Education Policy-2020
[Revised videe Academic Council on 2 25.07.2023]
(Common Minimum Syllabus for all U.P. State Universities and Colleges)
2021
COMPUTER SCIENCE_NEP-UG-2020
2020 Page 1
Year wise Structure of B.Sc. (Computer Science)
This course shall be offered in B.Sc. programme as a major subject along with two other major
subjects and combinations available for the students of B.Sc. programme. Computer Science shall be
one major subject along with other two major subjects which may be opted by the students as per the
combinations offered by the University/College under CBCS.
1 Dr. Ashwini Kumar Srivastava Asst. Professor & Dept. of Shivharsh Kisan P.G. College,
Head Computer Basti
Application
Subject prerequisites
To study the Computer Science, a student must have had the subject(s) computer science
OR Mathematics in class/12th.
Programme outcomes (POs): Students taking admission to B.Sc. program are expected to get
prepared with following outcomes:
PO 1 Explaining the basic scientific principles and methods.
PO 2 Inculcating scientific thinking and awareness among the student.
Programme specific outcomes (PSOs)
PEO 1 To prepare students for career in computer science and its applications in professional
career
PEO 2 To develop the student to cope up with the advancements in respective science field
PEO 3 The student will determine the appropriate level of technology for use in:
a) experimental design and implementation,
b) analysis of experimental data, and
c) numerical and mathematical methods in problem solutions.
PEO 4 Investigate and apply mathematical problems and solutions in a variety of contexts related
to science, technology, business and industry, and illustrate these solutions using symbolic,
numeric, or graphical methods
Credits
Year Sem Paper 1 credit Paper 2 credit Paper3 credit Paper 4 credit of the
. Theory Theory Practical Practical subject
I
using Python
Computer
1
Database 4 -- Database 2 Nil Nil 6
Manage Manageme
II
ment ntSystems
Systems Lab
Operating 4 -- Operating 2 Nil Nil 6
Computer
Diploma in
Total Credits: 48
Suggested Readings:
1. P. K. Sinha & Priti Sinha , “Computer Fundamentals”, BPB Publications, 2007.
2. Dr. Anita Goel, Computer Fundamentals, Pearson Education, 2010.
3. T. Budd, Exploring Python, TMH, 1st Ed, 2011
4. Python Tutorial/Documentation www.python.or 2010
5. Allen Downey, Jeffrey Elkner, Chris Meyers , How to think like a
computerscientist : learning with Python , Freely available online.2012
Suggestive digital platforms web links-
https://www.pearsoned.co.in/prc/book/anita-goel-computer-fundamentals-1e-
1/9788131733097
http://docs.python.org/3/tutorial/index.html
http://interactivepython.org/courselib/static/pythonds
http://www.ibiblio.org/g2swap/byteofpython/read/
7. Input initial velocity and acceleration, and plot the following graphs depicting equations
of motion:
I. velocity wrt time (v=u+at)
II. distance wrt time ( s=u*t+0.5*a*t*t)
III. distance wrt velocity ( s=(v*v-u*u)/2*a )
Course outcomes:
After the completion of the course the students will be able to:
1. Understands the basic concepts of data base management systems.
2. Design E-R diagrams for real world applications.
3. Formulate relational algebraic expressions using relational data models and languages.
4. Apply normalization transaction properties and concurrency control to design database.
5. Analyze the security algorithms for database protection.
Credits: 4 Core Compulsory
Max. Marks: 25+50 Min. Passing Marks: As per UGC/University CBCS norm
Total No. of Lectures-Tutorials-Practical (in hours per week): 4-0-0
No. of
Unit Topic Lectures
Introduction: Database System Concepts, File system vs. database system,
Database system architecture, Data models and their types, Data base scheme
I
and instances, Data independence, Database 7
Languages and Interfaces.
Data Modeling Concepts
II ER model concepts: Notations for ER diagram, Extended E-R diagram,
Extended E-R model, E-R model design issues, constraints, and keys:Weak 8
entity set strong entity set, Relationships of higher degree.
III Relational model concepts: code rules, constraints, RelationalAlgebra 7
operations, Extended relational algebra operations, Relational
Calculus, Tuple and Domain relational calculus.
Database Design
Functional dependencies, Normal forms, First, second, and third 8
IV
normal forms, BCNF, Multi-valued dependencies and Fourth Normalform,
Join Dependencies and Fifth Normal form.
Transaction, Query Processing
Transaction and system concepts: transaction states, ACID properties of 7
V transactions, concurrent execution schedules and Recoverability, Serializability
of schedules. Query Processing and Optimization: Measures of Query cost,
Cost, Evaluation of expression. Optimization: Transformation of relational
expression, Choice of evaluation plan.
VI Concurrency Control: Concurrency Control Techniques: Two phase 8
Locking Techniques for Concurrency Control; Time stamping in
Concurrency control.
VII Introduction to SQL
Basic Structure of SQL Query, Set operators, SELECT, UNION,
INTERSECT, and EXCEPT, Nested queries, Aggregate function, Null values, 8
Derived Relations, Modification of the Database, Joined
relations and up-dates in SQL.
List of Experiments
3. Retrieve the birthdate and address of the employee whose name is 'Franklin T.
Wong'
4. Retrieve the name and salary of every employee
5. Retrieve all distinct salary values
13. For each employee, retrieve the employee's name, and the name of his or her
immediate supervisor.
14. Retrieve all combinations of Employee Name and Department Name
15. 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.
16. Increase the salary of all employees working on the 'ProductX' project by 15%.
Retrieve employee name and increased salary of these employees.
17. 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.
18. Select the names of employees whose salary does not match with salary of any
employee in department 10.
19. Retrieve the name of each employee who has a dependent with the same first name
and same sex as the employee.
20. Retrieve the employee numbers of all employees who work on project located in
Bellaire, Houston, or Stafford.
21. Find the sum of the salaries of all employees, the maximum salary, the minimum
salary, and the average salary. Display with proper headings.
22. 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.
23. Select the names of employees whose salary is greater than the average salary of all
employees in department 10.
24. For each department, retrieve the department number, the number of employees in
the department, and their average salary.
25. For each project, retrieve the project number, the project name, and the number of
employees who work on that project.
COMPUTER SCIENCE_NEP-UG-2020 Page 13
26. Change the location and controlling department number for all projects
having more than 5 employees to ‘Bellaire’ and 6 respectively.
27. For each department having more than 10 employees, retrieve the department
no, no of employees drawing more than 40,000 as salary.
28. Insert a record in Project table which violates referential integrity constraint
with respect to Department number. Now remove the violation by making
necessary insertion in the Department table.
29. Delete all dependents of employee whose ssn is ‘123456789’.
30. Delete an employee from Employee table with ssn = ‘12345’( make sure that
this employee has some dependents, is working on some project, is a manager
of some department and is supervising some employees). Check and display
the cascading effect on Dependent and Works on table. In Department table
MGRSSN should be set to default value and in Employee table SUPERSSN
should be set to NULL
31. Perform a query using alter command to drop/add field and a constraint in
Employee table.
Note: The instructors should design detailed experiments based on above suggested experiments.
Course outcomes:
After the completion of the course the students will be able:
1. Understand role, responsibilities, features, and design of operating system.
2. Analyze memory management schemes and process scheduling algorithms.
3. Apply process synchronization techniques to formulate solution for critical section
problems.
4. Illustrate concept of disk scheduling.
5. Evaluate process deadlock handling techniques.
Credits: 4 Core Compulsory
Max. Marks: 25+50 Min. Passing Marks: As per UGC/University CBCS norm
VIII What is shell script, Writing and executing the shell script, Shell variable 8
(user defined and system variables)
System calls, Using system calls, Pipes and Filters, Decision making in Shell
Scripts (If else, switch), Loops in shell, Functions, Utility programs (cut,
paste, join, tr , uniq utilities), Pattern matching utility
(grep)
Suggested Readings:
1. Andrew S. Tanenbaum and Herbert Bos,"Modern Operating Systems," Fourth Edition,
Pearson, 2014.
2. Abraham Silberschatz, Greg Gagne, and Peter B. Galvin, "Operating System Concepts,"
Tenth Edition, Wiley, 2018.
3. William Stallings, "Operating Systems: Internals and Design Principles," Seventh Edition,
Prentice Hall, 2011.
4. Dhanjay Dhamdhere, "Operating Systems," First Edition, McGraw-Hill, 2008
5.
Course outcomes:
The student will be able to understand the basic arithmetic of a Computer System; how the data is
represented, how the various operation are performed on the data, the basic circuits to perform
these operations, how instructions are formatted and how these instructions are executed to
accomplish a particular operation. Student can also learn the organization of the peripheral
devices, the interface between these devices to the system. Student can also understand the
architecture of a basic computer, its registers, bus system and the interaction flow among them.
Credits: 4 Core Compulsory
F80
AND 0xxx CLA E800 INP 0
F40
ADD 2xxx CLE E400 OUT 0
ISZ Cxxx INC E020
ii) Create the micro operations and associate with instructions as given in the
chapter (except interrupts). Design the register set, memory and the instruction
set. Use this machine for the assignments of this section.
iv) Simulate the machine to determine the contents of AC, E, PC, AR and IR
registers in hexadecimal after the execution of each of following register
reference instructions:
a. ADD f. BSA
b. AND g. ISZ
c. LDA
d. STA
e. BUN
6. Simulate the machine for the memory-reference instructions referred in above
question with I= 1 and address part = 082. The instruction to be stored at address 026
in RAM. Initialize the memory word at address 082 with the value 298. Initialize the
memory word at address 298 with operand B8F2 and AC with A937. Determine the
contents of AC, DR, PC, AR and IR in hexadecimal after the execution.
7. Modify the machine created in Practical 1 according to the following instruction format:
a. The instruction format contains a 3-bit opcode, a 1-bit addressing mode and a
12-bit address. There are only two addressing modes, I = 0 (direct addressing)
and I = 1 (indirect addressing).
b. Create a new register I of 1 bit.
c. Create two new microinstructions as follows :
i. Check the opcode of instruction to determine type of instruction (Memory
Reference/Register Reference/Input-Output) and then jump accordingly.
ii. Check the I bit to determine the addressing mode and then jumpaccordingly.
Course Code: B070501T Course Title: Analysis of Algorithm and Data Structures
Course outcomes:
CO 1: Understand that various problem solving categories exist such as; iterative technique,
divide and conquer, dynamic programming, greedy algorithms, and understand various
searching and sorting algorithms
CO 2: Employ a deep knowledge of various data structures when constructing a program..
CO 3: Design and construct simple object-oriented software with an appreciation for data
abstraction and information hiding.
CO 4: Effectively use software development tools including libraries, compilers, editors,
linkers and debuggers to write and troubleshoot programs.
Credits: 4 Core Compulsory
1. Cormen T.H., Leiserson Charles E., Rivest Ronald L., Stein Clifford, Introduction
to Algorithms, PHI Learning Pvt. Ltd., 2009, 3rd Edition.
2. Basse Sara & A.V. Gelder, Computer Algorithm: Introduction to Design and
Analysis, Pearson, 2000, 3rd Edition.
3. Drozdek Adam, "Data Structures and algorithm in C++", Cengage Learning, 2012,
Third Edition.
4. Tenenbaum Aaron M., Augenstein Moshe J., Langsam Yedidyah, "Data Structures
Using C and C++, PHI, 2009, Second edition.
5. Kruse Robert L., "Data Structures and Program Design in C++", Pearson.
6. Suggestive digital platforms web links or online course-
https://www.oercommons.org/authoring/14873-data-structure/view
https://www.oercommons.org/courses/data-structure-and-algorithms
https://onlinecourses.swayam2.ac.in/cec19_cs04/preview (online course)
Suggested equivalent online courses:
1 https://nptel.ac.in/courses/106/102/106102064/
Suggested Readings:
1. S. Rajsekaran& G.A. VijayalakshmiPai, “Neural Networks,Fuzzy Logic and Genetic
Algorithm:Synthesis and Applications” Prentice Hall of India,2003
2. Anderson, James, “Introduction to Neural Networks”, PHI Publication, Delhi, India
3. N.P.Padhy,”Artificial Intelligence and Intelligent Systems” Oxford University Press, USA,
2005.
4. Simon Haykin,”Neural Netowrks and Learning Machines ”Prentice Hall of India, 2005,
Third Edition.
Suggested equivalent online courses:
https://www.classcentral.com/course/swayam-introduction-to-soft-computing-10053
Further Suggestions:
List of Programs in Soft Computing with Python:
Course Code: B070503P Course Title: Lab on Algorithms and Data Structures with C++ based
on Course code B070501T)
Course outcomes:
CO 1: Optimize the solution with respect to time complexity & memory usage
CO 2: Assess how the choice of data structures and algorithm design methods impacts the
performance of programs.
CO 3: Choose the appropriate data structure and algorithm design method for a specified
application.
CO 4: Solve problems using data structures such as linear lists, stacks, queues, binary trees,
binary search trees and writing programs for these solutions
Credits: 2 Max. Marks: 25 Min. Passing Marks: As per
UGC/University CBCS norm
Total No. of Lectures-Tutorials-Practical (in hours per week): 0-0-4
3. Write a program that uses stack operations to convert a given infix expression into its
postfix Equivalent, implement the stack using an array.
9. Write program to implement Insertion Sort (The program should report the number of
comparisons)
10. Write program implement Merge Sort(The program should report the number of
comparisons)
11. Write program implement Heap Sort (The program should report the number of
comparisons)
12. Write program implement Randomized Quick sort (The program should report
the number of comparisons)
13. Write program for creation and traversal of Binary Search Tree.
Course Code: B070504P Course Title: Viva-voce examination conducted by external examiner at
the end of the Session based on Course code B070502T
Course outcomes:
CO 1: Understand the soft computing techniques and their applications.
CO 2: Understand the various neural network architectures.
CO 3: Understand the fuzzy systems.
CO 4: Understand the genetic algorithm concepts and their applications.
Course Code: B070601T Course Title: Data Communication and Computer Network
Course outcomes:
After the completion of the course the students will be able:
1. To develop understanding of computer networks and communication basics.
2. To understand design issues and services at different layers of reference models.
3. To learn various error detection/correction techniques, routing protocols, congestion
control algorithms, and connection establishment/release.
4. To describe and analyze related technical, administrative, and social aspects of
networking.
Credits: 4 Core Compulsory
Course Code: B070602T Course Title: Cyber Security & Cyber Laws
Course outcomes: After the completion of the course the students will be able to:
1. Understand types of information, cyber threats, and national/international cyber security
standards.
2. Do mathematical modeling and development of security techniques and information
system.
3. Develop understanding of legal issues related to cyber security.
4. Apply ethical principles/responsibilities in cyber practices.
Credits: 4 Core Compulsory
Suggested Readings:
1. Michael E. Whitman and Herbert J. Mattord, "Principles of Information Security," Sixth
Edition, Cengage Learning, 2017.
2. Douglas J. Landoll, "Information Security Policies, Procedure, and Standards: A
Practitioner's Reference," CRC Press, 2016.
3. Harold F. Tipton, and Micki Krause, "Hand book of information security management," Sixth
Edition, Archtech Publication, 2007.
4. William Stallings, "Cryptography and Network Security: Principles and Practice," Sixth Edition,
Pearson, 2014.
Course Code: B070604P Course Title: Viva-voce examination conducted by external examiner at
the end of the Session based on Course code B070602T
Course outcomes:
CO 1: Understand the various information system and need of their security.
CO 2: Understand the various information system models.
CO 3: Understand the various security policies.
CO 4: Understand the legal issues related to cyber security.
Viva-voce will be based on Course code B070602T (Cyber Security & Cyber Laws).
Teacher-in-Charge shall design some problems/case study on information system, security
policies and legal issues related to cyber security. The students shall be required to
systematically work out the solution of those problems.