0% found this document useful (0 votes)
23 views43 pages

B SC - Hons - Computer-Science-Final-Copy-30 07 2018

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)
23 views43 pages

B SC - Hons - Computer-Science-Final-Copy-30 07 2018

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
You are on page 1/ 43

B.Sc.(Hons.

) Computer Science: Course Structure & Syllabi

BABU BANARASI DAS UNIVERSITY, LUCKNOW


B. Sc. (Hons.) Computer Science
COURSE STRUCTURE (Under CBCS)
Evaluation
Lab/Seminar Total
Teaching /
Course Code Title Theory Credits
Viva Voce/
Dissertation
L T P CIA ESE CIA ESE
Core BSC1101 Programming Fundamentals 4 - 4 40 60 20 30 150 6
using ‘C’
Core BSC1102 Computer System Architecture 5 1 - 40 60 - - 100 6
GE Generic Elective - I - - - - - - - - 6
AECC BSAE1101 Communicative English 2 - - 40 60 - - 100 2
GP BSGP11 General Proficiency - - - - - 100 - 100 1
21
SEMESTER – II
Core BSC1201 Data Structures 4 4 40 60 20 30 150 6
Core BSC1202 Discrete Structure 5 1 40 60 - - 100 6
GE Generic Elective - II - - - - - - - - 6
AECC BSAE1201 Environmental Studies 2 - - 40 60 - - 100 2
GP BSGP12 General Proficiency - - - - - 100 - 100 1
21
SEMESTER – III
Core BSC1301 Programming in JAVA 4 - 4 40 60 20 30 150 6
Core BSC1302 Operating Systems 4 - 4 40 60 20 30 150 6
Core BSC1303 Computer Networks 5 1 - 40 60 - - 100 6
GE Generic Elective - III - - - - - - - - 6
SEC BSSE1311 Skill Enhancement Course - I - - - - - - - - 2
GP BSGP13 General Proficiency - - - - - 100 - 100 1
27
SEMESTER – IV
Core BSC 1401 Design and Analysis of 5 1 40 60 - - 100 6
Algorithms
Core BSC 1402 Software Engineering 5 1 - 40 60 - - 100 6
Core BSC 1403 Database Management Systems 4 4 40 60 20 30 150 6
GE Generic Elective - IV - - - - - - - - 6
SEC BSSE1412 Skill Enhancement Course - II - - - - - - - - 2
GP BSGP14 General Proficiency - - - - - 100 - 100 1
27
SEMESTER – V
Core BSC 1501 Internet Technologies 4 - 4 40 60 20 30 150 6
Core BSC 1502 Theory of Computation 5 1 - 40 60 - - 100 6
DSE Discipline Specific Elective - I - - - - - - - - 6
DSE Discipline Specific Elective - II - - - - - - - - 6
Lab BSC S15 Seminar - - - - - 100 - 100 2
26
SEMESTER – VI
Core BSC 1601 Artificial Intelligence 4 - 4 40 60 20 30 150 6
Core BSC 1602 Computer Graphics 4 - 4 40 60 20 30 150 6
DSE Discipline Specific Elective - III - - - - - - - - 6
DSE Discipline Specific Elective - IV - - - - - - - - 6
Lab BSC V16 Vice Voce - - - - - - 100 100 2
26

Department of Mathematics & Computer Science, Babu Banarasi Das University, Lucknow
B.Sc.(Hons.) Computer Science: Course Structure & Syllabi

ELECTIVE COURSES – B. Sc. (Hons.) Computer Science


Evaluation
Lab/Seminar/
Teaching
Code Title Theory Viva Voce/ Credits
Total
Dissertation
L T P CIA ESE CIA ESE
Generic Elective – I
BSM 1101 Calculus 5 1 - 40 60 - - 100 6
BSE 1101 Basic Circuit Theory & Network
4 - 4 40 60 20 30 150 6
Analysis
Generic Elective – II
BSM 1202 Differential Equation 5 1 - 40 60 - - 100 6
BSE 1201 Semiconductor Devices 4 - 4 40 60 20 30 150 6
Generic Elective – III
BSM 1303 PDE and System of ODE 5 1 - 40 60 - - 100 6
BSE 1302 Digital Electronics 4 - 4 40 60 20 30 150 6
Generic Elective – IV
BSM 1401 Numerical Methods 5 1 - 40 60 - - 100 6
BSE 1402 Signal Systems 5 1 - 40 60 - - 100 6

Discipline Specific Elective – I


BSC 1551 Microprocessor 5 1 - 40 60 - - 100 6
BSC 1552 Data Mining 5 1 - 40 60 - - 100 6
BSC 1553 Big Data Analysis 5 1 - 40 60 - - 100 6
Discipline Specific Elective – II
BSC 1554 Network Programming 5 1 - 40 60 - - 100 6
BSC 1555 Cloud Computing 5 1 - 40 60 - - 100 6
BSC 1556 System Programming 5 1 - 40 60 - - 100 6
Discipline Specific Elective – III
BSC 1651 Information Security 5 1 - 40 60 - - 100 6
BSC 1652 Digital Image Processing 5 1 - 40 60 - - 100 6
BSC 1653 Soft Computing 5 1 - 40 60 - - 100 6
Discipline Specific Elective – IV
BSC 1654 Machine Learning 5 1 - 40 60 - - 100 6
BSC 1655 Introduction to Data Science 5 1 - 40 60 - - 100 6
BSC 1656 Project Work - - - - - 50 50 100 6

Skill Enhancement Course – I


BSSE1301 LaTeX and HTML 1 - 2 40 60 50 - 150 2
BSSE1311 Web Technologies 1 - 2 40 60 50 - 150 2
Skill Enhancement Course – II
BSSE1411 Linux / Unix Programming 1 - 2 40 60 50 - 150 2
BSSE1421 Programming in MATLAB 1 - 2 40 60 50 - 150 2

Department of Mathematics & Computer Science, Babu Banarasi Das University, Lucknow
B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

Course Name Programming Fundamental using C

Category: Core Code: BSC 1101 Credits: 6 L-4 T-0 P-2

Exam: Theory 3 Hrs, Practical 2 Hrs ESE: 60 Marks CIA: 40 Marks

SYLLABUS

Module I: Introduction to C; History of C, Overview of procedural programming, Structure of C


program, Compiling and executing simple programs in C, Key words Data types, Variables,
Constants, Operators and Basic I/O( printf, scanf, getchar, putchar, getc, getch, gets, puts)
Expressions, Conditional statements (if, else if , nested if , else if ladder, switch), Iterative
statements(do loop , while loop , for loop), Jump statements (break, continue and goto).

Module II: Functions and Arrays;Arrays, Derived data types: Structures and Unions, Declaring,
initializing and using simple structures and unions, Manipulating individual members of
structures and unions, Array of structures, Individual data members as structures, Structure with
union as members, Union with structures as members.String handling, Functions, Call by value,
Call by reference, Functions returning value, passing and returning structures from functions,
Recursion.

Module III: Pointers &Memory Allocation in C; Pointers in C, pointer to pointer, pointers to


structures, Problems with pointers, Passing pointers as function arguments, returning a pointer
from a function, using arrays with pointers, Passing arrays to functions. Static and dynamic
memory allocation, use of malloc(), calloc() and free() functions, storage of variables in static and
dynamic memory allocation.

Module IV: Preprocessor directives and File Handling in C; Understanding the Preprocessor
Directives (#include, #define, #error, #if, #else, #elif, #endif, #ifdef, #ifndef and #undef),
Macros.File I/O, Opening and closing a file, Reading and writing text files, Using put(), get(),
read() and write() functions, Random access in files,
Text Books:

1. E Balaguruswamy, Computer Concepts and Programming in C, TataMcGraw Hill


Publications
2. Yashavant P. Kanetkar, Let UsC , BPB Publications
Reference Books:

1. Jeri R. Hanly, Elliot B.Koffman, Problem Solving and ProgramDesign in C, Pearson


Addison-Wesley.
2. BehrouzA.Computer Science-A Structured Programming Approach Using C.

COMPUTER SCIENCE LAB (C-I): Programming Fundamentals using C Lab Practical:

Department of Mathematics & Computer Science, Babu Banarasi Das University, Lucknow
B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

1. WAP to print the sum and product of digits of an integer.


2. WAP to reverse a number.
3. WAP to compute the sum of the first n terms of the following series S =
1+1/2+1/3+1/4+……
4. WAP to compute the sum of the first n terms of the following series S =1-2+3-
4+5…………….
5. Write a function that checks whether a given string is Palindrome or not. Use this
function to find whether the string entered by user is Palindrome or not.
6. Write a function to find whether a given no. is prime or not. Use the same to generate the
prime numbers less than 100.
7. WAP to compute the factors of a given number.
8. Write a macro that swaps two numbers. WAP to use it.
9. WAP to print a triangle of stars as follows (take number of lines from user):
*
***
*****
*******
*********
10. WAP to perform following actions on an array entered by the user:
i) Print the even-valued elements
ii) Print the odd-valued elements
iii) Calculate and print the sum and average of the elements of array
iv) Print the maximum and minimum element of array
v) Remove the duplicates from the array
vi) Print the array in reverse order
The program should present a menu to the user and ask for one of the options. The menu should
also include options to re-enter array and to quit the program.
11. WAP that prints a table indicating the number of occurrences of each alphabet in the text
entered as command line arguments.
12.Write a program that swaps two numbers using pointers.

13.Write a program in which a function is passed address of two variables and then alter its
contents.
14.Write a program which takes the radius of a circle as input from the user, passes it to another
function that computes the area and the circumference of the circle and displays the value of area
and circumference from the main() function.
15. Write a program to find sum of n elements entered by the user. To write this program, allocate
memory dynamically using malloc() /calloc() functions or new operator.
16. Write a menu driven program to perform following operations on strings:
a) Show address of each character in string
b) Concatenate two strings without using strcat() function.
c) Concatenate two strings using strcat() function.
d) Compare two strings
e) Calculate length of the string (use pointers)
f) Convert all lowercase characters to uppercase
g) Convert all uppercase characters to lowercase
h) Calculate number of vowels
i) Reverse the string

17. Given two ordered arrays of integers, write a program to merge the two-arrays to get an
ordered array.
18. WAP to display Fibonacci series (i)using recursion, (ii) using iteration.

19. WAP to calculate Factorial of a number (i)using recursion, (ii) using iteration.
20. WAP to calculate GCD of two numbers (i) with recursion (ii) without recursion.

Department of Mathematics & Computer Science, Babu Banarasi Das University, Lucknow
B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

21. Create Matrix class using templates. Write a menu-driven program to perform following
Matrix operations (2-D array implementation): a) Sum b) Difference c) Product d) Transpose .
22. Create a structure Student containing fields for Roll No., Name, Class, Year and Total Marks.
Create 10 students and store them in a file.
23. Write a program to retrieve the student information from file created in previous question and
print it in following format:

Roll No. Name Marks


24. Copy the contents of one text file to another file, after removing all whitespaces.
25. Write a function that reverses the elements of an array in place. The function must accept only
one pointer value and return void
26. Write a program that will read 10 integers from user and store them in an array. Implement
array using pointers. The program will print the array elements in ascending and descending
order.
27. Write a Program to Create a File & Store Information
28. Write a C Program to Illustrate Reading of Data from a File
29. Write a C Program Delete a specific Line from a Text File
30.Write a C Program to Append the Content of File at the end of another.

Department of Mathematics & Computer Science, Babu Banarasi Das University, Lucknow
B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

Course Name Computer System Architecture


Category: Core Code: BSC 1102 Credits: L-5 T-1 P-0
6
Exam: Theory 3 Hrs ESE: 60 Marks CIA: 40 Marks

SYLLABUS

Module-I: Introduction;Logic gates, Boolean algebra, Combinational circuits, Circuit


simplification, Flip-flops, Decoders, Multiplexers, Registers, Counters and Memory units.

Module-II: Data Representation and Basic Computer Arithmetic II; Number system,
Complements, Fixed and Floating point representation, Addition, Subtraction, Magnitude
comparison, Multiplication algorithms for integers.
Module-III: Basic Computer Organization and Central Processing Unit Design; Computer
registers, Bus system, Instruction set, Timing and control, Instruction cycle, Memory reference,
Input-output and interrupt, Interconnection Structures, Bus Interconnection, Design of basic
computer.
Register organization, Arithmetic and logical micro-operations, Stack organization, Micro
programmed control. Instruction formats, Addressing modes, Instruction codes, RISC, CISC
architectures, Pipelining and Parallel architecture.
Module-IV: Memory; Cache memory, Associative memory, Mapping, Input/Output: External
Devices, I/O Modules, Programmed I/O, Interrupt -Driven I/O, Direct Memory Access.
Text Books:
1.M. Mano, Computer System Architecture, Pearson Education 1992
2. A. J. Dos Reis, Assembly Language and Computer Architecture using C++ and JAVA, Course
Technology, 2004
3. W. Stallings, Computer Organization and Architecture Designing for Performance, 8th Edition,
Prentice Hall of India,2009
4. M. Mano, Digital Design, Pearson Education Asia,2013
5. Carl Hamacher, Computer Organization, Fifth edition, McGrawHill, 2012.
Reference Books:
1.Patterson, “Computer Organization and Design”, Elsevier Publication
2. Tannenbaum, “Structured Computer Organization”,PHI
3.John P Hays, “Computer Organization”, McGraw Hill.
4.P Pal Chaudhary, “Computer Organization &Design”,PHI.

Department of Mathematics & Computer Science, Babu Banarasi Das University, Lucknow
B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

Course Name Data Structures

Category: Core Code: BSC1201 Credits: L-4 T-0 P-2

Exam: Theory 3 Hrs, Practical 2 Hrs ESE: 60 Marks CIA: 40 Marks

SYLLABUS

Module I: Introduction to data structures: Basic terminology, Algorithm and its complexity,
Arrays: Definition, Analysis of arrays, Address calculation, Single and multidimensional arrays,
Sparse Matrices (Array and Linked Representation). Stacks: Implementing single / multiple
stack/s in an Array; Prefix, Infix and Postfix expressions, Utility and conversion of these
expressions from one to another application of stack Limitations of Array representation of stack.
Module II: Link List; Singly, Doubly and circular lists (Array and Linked representation) Normal
and circularrepresentation of stack in lists, Self organizing lists. Recursion: Developing recursive
definition of simple problems and their implementation; Advantages and limitations of recursion.
Understanding what goes behind recursion (Internal Stack Implementation)
Module III: Queue;Array and linked representation of queue, De-queue, Priority queues
Introduction to tree as a data structure; Binary trees (Insertion, Deletion , Recursive and iterative
Traversals on binary search trees); Threaded binary trees (Insertion, Deletion, Traversals);
Height-Balanced Trees (Various operations on AVL Trees).
Module IV: Searching and sorting; Linear search, Binary search, Comparison of linear and
Binary search, Selection sort, Introduction to hashing, Deleting from hash table, Efficiency of
rehash methods, Hash table reordering, Resolving collusion by open addressing, Coalesced
hashing, Separate chaining, Dynamic and extendible hashing, Choosing a hash function, Perfect
hashing function.
Textbooks:

1. Data Structures Using C and C++ YddishLangsam, Moshe J.Augenstein and Aaron M.
Tanenbaum, Prentice Hall of India, IIndedition.
2. Data Structures, Algorithms and Applications with C++, SahaniMc-GrawHill.

Reference Books:
1. Jean Paul Trembley and Paul G. Sorenson, ―An Introduction to Data Structures with
applications‖, McGraw Hill.
2. R. Kruseetal, ―Data Structures and Program Designin C‖, Pearson Education 5.
Lipschutz,- Data Structures ‖, Schaum„s Outline Series, TMH.

COMPUTER SCIENCE LAB (C-V): Data Structures Lab

1. Write a program to search an element from a list. Give user the option to perform Linear
or Binary search. Use Template functions.
2. WAP using templates to sort a list of elements. Give user the option to perform sorting
using Insertion sort, Bubble sort or Selection sort.

Department of Mathematics & Computer Science, Babu Banarasi Das University, Lucknow
B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

3. Implement Linked List using templates. Include functions for insertion, deletion and
search of a number, reverse the list and concatenate two linked lists (include a function
and also overload operator +).
4. Implement Doubly Linked List using templates. Include functions for insertion, deletion
and search of a number, reverse the list.
5. Implement Circular Linked List using templates. Include functions for insertion, deletion
and search of a number, reverse the list.
6. Perform Stack operations using Linked List implementation.
7. Perform Stack operations using Array implementation. Use Templates.
8. Perform Queues operations using Circular Array implementation. Use Templates.
9. Create and perform different operations on Double-ended Queues using Linked List
implementation.
10. WAP to scan a polynomial using linked list and add two polynomials.
11. WAP to calculate factorial and to compute the factors of a given no. (i) using recursion,
(ii) using iteration
12. (i) WAP to display fibonacci series (ii)using recursion, (iii) using iteration
13. WAP to create a Binary Search Tree and include following operations in tree:
(a) Insertion (Recursive and Iterative Implementation)
(b) Deletion by copying
(c) Deletion by Merging
(d) Search a no. in BST
(e) Display its preorder, postorder and inorder traversals Recursively
(f) Display its preorder, postorder and inorder traversals Iteratively
(g) Display its level-by-level traversals
(h) Count the non-leaf nodes and leaf nodes
(i) Display height of tree
(j) Create a mirror image of tree
(k) Check whether two BSTs are equal or not
14. WAP to convert the Sparse Matrix into non-zero form and vice-versa.
15. WAP to reverse the order of the elements in the stack using additional stack.
16. WAP to reverse the order of the elements in the stack using additional Queue.
17. WAP to implement Lower Triangular Matrix using one-dimensional array.
18. WAP to implement Upper Triangular Matrix using one-dimensional array.
19. WAP to implement Symmetric Matrix using one-dimensional array.
20. WAP to create a Threaded Binary Tree as per inorder traversal, and implement operations
like finding the successor / predecessor of an element, insert an element, inorder traversal.

Department of Mathematics & Computer Science, Babu Banarasi Das University, Lucknow
B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

Course Name Discrete Structures


Category: Core Code: BSC 1202 Credits: 6 L-5 T-1 P-0
Exam: Theory 3 Hrs ESE: 60 Marks CIA: 40 Marks

SYLLABUS

Module I:Introduction;Sets - finite and infinite sets, uncountably infinite sets,functions, relations,
operations on relation, composite relations, equality of relations ,properties of binary relations,
closure, partial ordering relations, Counting - Pigeonhole principle, permutation and combination,
mathematical induction, principle of inclusion and exclusion.

Module II: Growth of Functions and Recurrences;Asymptotic notations, summation formulas


and properties, bounding summations, approximation by integrals,recurrence relations, generating
functions, linear recurrence relations with constant coefficients and their solution, substitution
method, recurrence trees, Master theorem.

Module III: Graph Theory; Basic terminology, models and types, multi-graphs and weighted
graphs, graph representation, graph isomorphism, graph homomorphism, connectivity, Euler and
Hamiltonian paths and circuits, planar graphs, bipartite graph, graph coloring, definition of trees,
binary tree traversal, binary search tree, spanning trees.
Module IV: Propositional Logic;Definitionof propositions, Well-formed formulas, tautologies,
satisfiability, contradiction, algebra of proposition, theory of inference.
Text Book:

1. Kenneth Rosen, Discrete Mathematics and Its Applications, Sixth Edition,McGraw Hill
2006.
Reference Books:

1. T.H. Coremen, C.E Leiserson, R. L Rivest, Introduction to algorithms, 3rd edition


Prentice Hall on India, 2009.

2. M. O. Albertson and J. P. Hutchinson, Discrete Mathematics with Algorithms, John


Wiley Publication, 1988.

3. J. L. Hein, Discrete Structures, Logic, and Computability, 3rd Edition, Jones and Bartlett
Publishers, 2009.

4. D.J. Hunter, Essentials of Discrete Mathematics, Jones and Bartlett Publishers, 2008.

5. C.L. Liu , D.P. Mahopatra, Elements of Discrete mathematics, 2nd Edition , Tata
McGraw Hill, 1985.

Department of Mathematics & Computer Science, Babu Banarasi Das University, Lucknow
B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

Semester Third
Course Name Programming in JAVA
Category: Core Code: BSC1301 Credits: 6 L-4 T-0 P-2
Exam: Theory 3 Hrs. Practical 2 Hrs. ESE: 60 Marks CIA: 40 Marks
SYLLABUS
Module I:Introduction to Java: Java Architecture and Features, semantic and syntax, differences
between C++ and Java, Compiling and Executing a Java Program, Variables, Constants, Keywords
Data Types, Operators (Arithmetic, Logical and Bitwise) and Expressions, Comments, Doing Basic
Program Output, Decision Making Constructs (conditional statements and loops) and Nesting, Java
Methods (Defining, Scope, Passing and Returning Arguments, Type Conversion and Type and
Checking, Built-in Java Class Methods)

Module II: Arrays, Strings, I/O and Object-Oriented Programming: Creating & Using single
Multi-dimensional Arrays, Referencing Arrays,Strings: The Java String class, Creating & Using
String Objects, Manipulating Strings, String Immutability & Equality, Passing Strings to &from
Methods, String Buffer Classes. Simple I/O using Scanner class, Byte and Character streams,
Reading/Writing from console and files. Principles of Object-Oriented Programming, Defining &
Using Classes, Controlling Access to Class Members, Class Constructors, Method Overloading,
Class Variables & Methods, Objects as parameters, final classes, Object class, Garbage Collection

Module III: Inheritance, Interfaces, Packages and Exceptionhandling: Inheritance:(Single


Level and Multilevel, Method Overriding, Dynamic Method Dispatch, Abstract Classes), Interfaces
and Packages, Extending interfaces and packages, Package and Class Visibility, Using Standard Java
Packages (util, lang, io, net), Wrapper Classes, Autoboxing/Unboxing, Enumerations and Metadata.
Exception types, Uncaught exceptions, Throw, Built-in exceptions, Creating your own exceptions.

Module IV: Multi-Threading, Networking Basics and Database Connectivity, Applets and
Event Handling: Multi-threading: Creating single and multiple threads, Thread prioritization,
Synchronization and communication, Suspending/resuming threads. Using java.net package.
Accessing and manipulating databases using JDBC. Java Applets: Introduction to Applets, Writing
Java Applets, Working with Graphics, Incorporating Images & Sounds. Event Handling
Mechanisms, Listener Interfaces, Adapter and Inner Classes.Design and Implementation of GUIs
using the AWT controls, Swing components of Java Foundation Classes such as labels, buttons, text
fields, layout managers, menus, events and listeners; Graphic objects for drawing figures such as
lines, rectangles, ovals, using different fonts. Overview of servlets.
Recommended Books:

Text Book:
1. Herbert Schildt, “Java: The Complete Reference”, Seventh Edition.
Reference Books:
1. Ken Arnold, James Gosling, David Homes, "The Java Programming Language", 4th Edition,
2005.
2. James Gosling, Bill Joy, Guy L Steele Jr, GiladBracha, Alex Buckley"The Java Language
Specification, Java SE 8 Edition (Java Series)", Published by Addison Wesley, 2014.
3. Joshua Bloch, "Effective Java" 2nd Edition,Publisher: Addison-Wesley, 2008.
4. Cay S. Horstmann, GaryCornell, "Core Java 2 Volume 1 ,9thEdition,Printice Hall.2012
5. Balaguruswamy, "Programming with Java", 4th Edition, McGraw Hill.2009.

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

COMPUTER SCIENCE LAB (C-VI): Programming in JAVA Lab

Practical: 60 Lectures:

1. To find the sum of any number of integers entered as command line arguments.
2. To find the factorial of a given number.
3. To learn use of single dimensional array by defining the array dynamically.
4. To learn use of .length in case of a two dimensional array.
5. To convert a decimal to binary number.
6. To check if a number is prime or not, by taking the number as input from the keyboard.
7. To find the sum of any number of integers interactively, i.e., entering every number from the
keyboard, whereas the total number of integers is given as a command line argument.
8. Write a program that show working of different functions of String and StringBufferclasses like
setCharAt(), setLength(), append(), insert(), concat()and equals().
9. Write a program to create a ―distanceǁ class with methods where distance is computed in terms of
feet and inches, how to create objects of a class and to see the use of this pointer
10. Modify the ―distance class by creating constructor for assigning values (feet and inches) to the
distance object. Create another object and assign second object as reference variable to another
object reference variable. Further create a third object which is a clone of the first object.
11. Write a program to show that during function overloading, if no matching argument is found,
then java will apply automatic type conversions(from lower to higher data type)
12. Write a program to show the difference between public and private access specifiers. The
program should also show that primitive data types are passed by value and objects are passed by
reference and to learn use of final keyword.
13. Write a program to show the use of static functions and to pass variable length arguments in a
function.
14. Write a program to demonstrate the concept of boxing and unboxing.
15. Create a multi-file program where in one file a string message is taken as input from the user and
the function to display the message on the screen is given in another file (make use of Scanner
package in this program).
16. Write a program to create a multilevel package and also creates a reusable class to generate
Fibonacci series, where the function to generate Fibonacci series is given in a different file
belonging to the same package.
17. Write a program that creates illustrates different levels of protection in classes/subclasses
belonging to same package or different packages
18. Write a program ―Divide byZerothat takes two numbers a and b as input, computes a/b, and
invokes Arithmetic Exception to generate a message when the denominator is zero.
19. Write a program to show the use of nested try statements that emphasizes the sequence of
checking for catch handler statements.
20. Write a program to create your own exception types to handle situation specific to your
application (Hint: Define a subclass of Exception which itself is a subclass of throwable).
21. Write a program to demonstrate priorities among multiple threads.
22. Write a program to demonstrate multithread communication by implementing synchronization
among threads (Hint: you can implement a simple producer and consumer problem).
23. Write a program to create URL object, create a URLConnection using the openConnection()
method and then use it examine the different components of the URLand content.
24. Write a program to implement a simple datagram client and server in which a message that is
typed into the server window is sent to the client side where it is displayed.
25. Write a program that creates a Banner and then creates a thread to scrolls the message in the
banner from left to right across the applet‘s window.
26. Write a program to get the URL/location of code (i.e. java code) and document(i.e. html file).

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

Semester Third
Course Name Operating System
Category: Core Code: BSC 1302 Credits: 6 L-4 T-0 P-2
Exam: Theory 3 Hrs, Practical 2 Hrs ESE: 60 Marks CIA: 40 Marks

SYLLABUS

Module I: Introduction:Definition of operating system (OS), Kernel, Shell, History of Operating


Systems, Single/Multi User and Single and Multitasking OS; types of operating systems–
multiprogramming systems, batch systems, time sharing systems, Distributed System, real time
systems;Functions of operating system: Memory management, process management, device
management, file management etc.
Module II: Operating System Organization:system calls and system programs. Process
Management:System view of the process and resources, process abstraction, process hierarchy,
threads; Process synchronization: concurrent processes, critical sections, methods for inter-process
communication; classical two process and n-process solutions, hardware primitives for
synchronization, semaphores, monitors, classical problems in synchronization (producer-consumer,
readers-writer, dining philosophers etc.).

Module III: Process Scheduling: non-pre-emptive and pre-emptive scheduling algorithms-FCFS,


SJF, SRTF, Round Robin etc., Semaphores. Memory Management: Memory address, Physical and
virtual address space; memory allocation strategies –fixed and variable partitions, Concept of paging,
segmentation,demand paging, virtual memory, page replacement algorithms, virtual memory

Module IV: Deadlocks: prevention and avoidance, detection and recovery.File and I/O
Management File concepts, Access methods, Directory structure, File system structure, files
operations, files allocation methods, device management, Protection and Security, Policy
mechanism, Authentication
Recommended Books:

Text Book:

1. A Silberschatz, P.B. Galvin, G. Gagne, Operating Systems Concepts, 8th Edition, John Wiley
Publications 2008.
Reference Books:

1. A.S. Tanenbaum, Modern Operating Systems, 3rd Edition, Pearson Education 2007.
2. G. Nutt, Operating Systems: A Modern Perspective, 2nd Edition Pearson Education 1997.
3. W. Stallings, Operating Systems, Internals & Design Principles , 5th Edition, Prentice Hall of
India. 2008.
4. M. Milenkovic, Operating Systems- Concepts and design, Tata McGraw Hill 1992.

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

COMPUTER SCIENCE LAB: Operating Systems Lab

Practical: 60 Lectures: C/ C++ programs

1. WRITE A PROGRAM (using fork() and/or exec() commands) where parent and child execute:
a) Same program, same code.
b) Same program, different code.
c) Before terminating, the parent waits for the child to finish its task.
2. Write a program to report behavior of Linux kernel including kernel version, CPU type and
model. (CPU information)
3. Write a program to report behavior of Linux kernel including information on configured
memory, amount of free and used memory. (Memory information)
4. Write a program to print file details including owner access permissions, file access time,
where file name is given as argument.
5. Write a program to copy files using system calls.
6. Write program to implement FCFS scheduling algorithm.
7. Write program to implement Round Robin scheduling algorithm.
8. Write program to implement SJF scheduling algorithm.
9. Write program to implement non-preemptive priority based scheduling algorithm.
10. Write program to implement preemptive priority based scheduling algorithm.
11. Write program to implement SRTF scheduling algorithm.
12. Write a program to implement first-fit, best-fit and worst-fit allocation strategies.

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

Semester Third
Course Name Computer Networks
Category: Core Code: BSC1303 Credits: 6 L-5 T-1 P-0
Exam: Theory 3 Hrs. ESE: 60 Marks CIA: 40 Marks

SYLLABUS

Module-I : Data Communication Fundamentals and Techniques : Analog and digital signal;
Data-rate limits; Digital to digital line encoding schemes; Pulse code modulation; Parallel and serial
transmission; Digital to analog modulation; Multiplexing techniques: FDM, TDM; transmission
media.
Computer Networks: Network definition; Network topologies; Network classifications; Network
protocol; Layered network architecture; OSI reference model

Module –II: TCP/IP Model and its protocol suite, Comparison of OSI and TCP/IP Models.
Networks Switching Techniques and Access mechanisms: Circuit switching; Packet switching-
Connectionless datagram switching, Connection-Oriented virtual circuit switching; Dial-up modems;
Digital subscriber line; Cable TV for data transfer.Data Link Layer Functions and Protocol : Error
detection and error correction techniques; Data-link control- Framing and Flow control; Error
recovery protocols- Stop and wait ARQ, Go-back-n ARQ; Point to Point Protocol on Internet.

Module –III: Multiple Access Protocol and Networks: CSMA/CD protocols; Ethernet LANS;
Connecting LAN and back-bone networks- Repeaters, Hubs, Switches, Bridges, Router and
Gateways;
Networks Layer Functions and Protocols: Routing, Routing algorithms: Distance Vector, Shortest
Path Routing Algorithm, Network layer protocols: IP protocol, Internet control Message
protocol,IGMP, ARP, RARP.

Module-IV: Transport Layer Functions and Protocols: Transport services- Error control and
Flow control, Reliability, TCP and UDP, Connection establishment and release: Three way
handshaking, Concept of Socket and ports; Application layer protocol: Overview of WWW, URL,
HTTP, SMTP, FTP, POP, TELNET. Domain Name System, Domain Name Servers, DNS Space.

Text Book:
1. B. A. Forouzan: Data Communications and Networking, Fourth edition, THM, 2007.
Reference Books

1.Computer Network and Internet by Douglas E Comer


2. A. S. Tanenbaum: Computer Networks, Fourth edition, PHI, 2002
3. William Stallings, “Data and Computer Communication”, Prentice Hall

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

Semester Fourth
Course Name Design and Analysis of Algorithms
Category: Core Code: BSC1401 Credits: 6 L-5 T-1 P-0
Exam: Theory 3 Hrs ESE: 60 Marks CIA: 40 Marks

SYLLABUS

Module I:Introduction: Algorithm Definition and Characteristics,Design and Analysis,Notion of


Algorithm, Analysis of algorithms, Designing of Algorithms, Growth of Functions, Master's
Theorem, Advanced Design and Analysis Techniques: Iterative techniques, Divide and Conquer,
Dynamic Programming: Matrix chain multiplication Problem, Optimal Binary search tree, Knapsack
0/1, Greedy Algorithms: Fractional Knapsack; Amortized Analysis

Module II: Searching and Sorting: Internal and External, Sorting Techniques, Elementary sorting
techniques–Bubble Sort, Insertion Sort, Merge Sort, Advanced Sorting techniques - Heap Sort, Quick
Sort, Sorting in Linear Time - Bucket Sort, Radix Sort and Count Sort, Searching Techniques: Linear
Search, Binary Search, complexity analysis.

Module III: Graph Algorithms and Advanced Data Structures: Terminology, Representation of
graph, Graph Algorithms– Breadth First Search, Depth First Search and Minimum Spanning Trees:
Prim’s and Kruskal’s, Shortest Path: Dijkastra’s Algorithm
Module IV: Advanced Data Structures:AVL Tree, Red-Black Trees, Binomial Heaps, Fibonacci
HeapsString Matching: String Matching Algorithms: Naïve, Rabin Karp, KMP.
Recommended Books:
Text Book:
1. Thomas H Cormen, Charles E Lieserson, Ronald L Rivest and Clifford Stein, Introduction to
Algorithms, Second Edition, MIT Press/McGraw-Hill, 2001.
2. UditAgarwal , Algorithms Design and Analysis, DhanpatRai& Co.
Reference Books:
1. Jon Kleinberg and ÉvaTardos, Algorithm Design, Pearson, 2005.
2. Michael T Goodrich and Roberto Tamassia, Algorithm Design: Foundations, Analysis, and
Internet Examples, Second Edition, Wiley, 2006

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

Semester Fourth
Course Name Software Engineering
Category: Core Code: BSC 1402 Credits: 6 L-5 T-1 P-0
Exam: Theory 3 Hrs ESE: 60 Marks CIA: 40 Marks

SYLLABUS

Module-I: Introduction: Introduction to System, Characteristics of System, System Development


Life Cycle, Evolution of Software, Software as System, Significance of Software, Software
characteristics, Changing nature of Software, Software Engineering as a Layered Technology,
Software process framework, Framework and umbrella activities, Process Capability Maturity Model
Integration (CMMI).

Module-II:Requirement Analysis & Specification: Software Requirement Analysis, Initiating


requirement engineering process, Requirement Analysis, and Modeling Techniques, Models,
Waterfall model, Prototyping, Flow Oriented Model, Need for SRS, Characteristics of SRS,
Components of SRS, Software project management, Software project planning, Software monitoring
and control, Estimation in project planning process, Project scheduling: Gantt chart, Pert/CPM.

Module-III: Risk Management Software Risks, Risk Identification, Risk Projection and Risk
Refinement, RMMM Plan, Quality Concepts, Software Quality Assurance, Software Reviews,
Metrics for Process and Projects,Identify IT Project Risk, Risk Analysis and Assessment, Risk
Strategies, Risk Monitoring and Control, Risk Response and Evaluation.

Module-IV: Software Design & Testing :Design Objectives, Design Concepts, Types of Design,
Architectural Design Elements, Software Architecture, Data Design at the Architectural Level and
Component Level, Mapping of Data Flow into Software Architecture, Modeling Component Level
Design. Software Testing Fundamentals, Strategic Approach to Software Testing, Functional Testing,
Structural Testing ,Test Strategies for Conventional Software, Validation Testing, System testing, Black-
Box Testing, White-Box Testing, Path Testing, Strategic issues in testing.
Recommended Books:

Text Book:
1. Roger S. Pressman, Software Engineering: A practitioner's approach, McGraw Hill.
Reference Books:

1. Rajib Mall, Fundamentals of Software Engineering, Prentice Hall India

2. I. Sommerville, Software Engineering (8th edition), Addison Wesley, 2006.

3. K.K. Aggarwal and Y. Singh, Software Engineering ( 2nd Edition), New Age International
Publishers, 2008

4. P. Jalote, An Integrated Approach to Software Engineering (2nd Edition), Narosa Publishing


House, 2003.

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

Semester Fourth
Course Name Database Management System
Category: Core Code: BSC 1403 Credits: 6 L-4 T-0 P-2
Exam: Theory 3 Hrs, Practical 2 Hrs ESE: 60 Marks CIA: 40 Marks

SYLLABUS

Module I:Introduction to DBMS (16 Lectures)

Introduction to Traditional File Oriented System, Disadvantages of File Oriented System, An overview of
the DBMS: Concept of database system, Advantages of DBMS over the File oriented System,
Components of DBMS, Database Administrator and Database Users, Structure of DBMS, Data
Independence, Data Abstraction, Three level Architecture of database system; Introduction to Data
Models: Hierarchical, Network and Relational Model. Comparison of Network, Hierarchical and
Relational Model.Database Languages and Interfaces.

Module II: Relational and E-R model: (14 Lectures)

Relational data model: Relational database, Codd’s Rulesof relational algebra. E-R Modeling: Entity
types, Entity set, Attribute and keys concept, Entity integrity and referential integrity, Relationships types,
Roles and structural constraints, Strong and weak entities. Data Modellingusing the Entity-Relationship
Model, Concepts, Notation for ER diagram, Mapping constraints, keys, Aggregation, Specialization and
Generalization, Relational Algebra.
Module III: Introduction to SQL queries: (17 Lectures)
Structured Query Language, SQL data types, Basic SQL Query, Nested Queries, JOIN, Aggregate
Operators, Null Values, Basic retrieval capability, Insert, Update commands, DDL, DML, Views. Data
Normalization: Functional dependencies, Armstrong rules, Closure of attributes, Normal form up to 3rd
Normal form, BCNF, Join dependencies, Decompositions.
Module IV: Database Protection & Distributed Database: (13 Lectures)

Transaction Processing Concepts, Introduction to Transaction Processing, Transaction states and State
Diagram, Transaction and System Concepts, Desirable Properties of Transactions, Schedules and
Recoverability, Serializability of Schedules, Concurrency Control Techniques, Locking Techniques for
Concurrency Control, Concurrency Control Based on Timestamp Ordering, Multiversion Concurrency
Control Techniques,
Text Books:

1. Abraham Silberschatz, Henry Korth, S. Sudarshan, “Database Systems Concepts”, 4 thEdition, McGraw
Hill, 1997
Reference Books:

1. Bipin Desai, “An Introduction to database Systems”, Galgotia Publications, 1991


2. Date, “Database Management Systems”, Pearson Education Asia.
3. Naveen Prakash, “Introduction to Database Management Systems”, Tata McGraw Hill.
4. Leon, and Leon, “SQL”, Tata McGraw Hill Pub. Co. Ltd.
5. Ivan Bayross, “Database Technologies”, Sybex Computer Books Inc.
6. Abbey and Corey, “Oracle 8”, Tata McGraw Hill Pub Co. Ltd.

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

COMPUTER SCIENCE LAB: Database Management System Lab


Q1. Create the following tables:
I) client_master
Column_name Datatype Constraints

client_no varchar2 Primary Key

Name varchar2

address1 varchar2

City varchar2

State varchar2

Pincode NUMBER Not Null

bal_due NUMBER

II)Product_master
Column_name Datatype Constraints

Product_no varchar2 Primary Key

Description varchar2

Profit_percen NUMBER

Unit_measure varchar2

Qty_on_hand NUMBER

Sell_pric NUMBER

Cost_price NUMBER

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

Q 2) Insert the following data into their respective tables:

I) Insert at least 6 rows in table client_master


client_no name address1 City State Pincode bal_due

001 IVAN NAGPUR Maharashtra 400054 15000

002 VANDANA CHENNAI Tamilnadu 780001 0

003 PRANAV NAGPUR Maharashtra 400057 5000

004 BASU NAGPUR Maharashtra 400056 0

005 RAVI LUCKNOW UP 226025 2000

006 ARTI LUCKNOW UP 226001 0

ii) Insert at least 10 rows in table Product_master.

Product_no Description Profit_percen Unit_measure Qty_on_hand Sell_pric Cost_price

P07865 1.22 floppies 5 piece 100 5 500

P00001 1.44floppies 5 Piece 100 525 50

P08865 1.22 Drive 5 Piece 2 1050 1000

P07975 1.44 Drive 5 Piece 10 1050 1000

P07965 540 HDD 4 Piece 10 8400 8000

P03453 Monitors 6 Piec 1 12000 1120

Q3:- On the basis of above two tables answer the following Queries:
i) Find out the names of all the clients.
ii) Retrieve the list of names and cities of all the clients.
iii) List the various products available from the product_master table.
iv) List all the clients who are located in Bombay.
v) Display the information for client no 0001 and 0002.
vi) Find the products with description as ‘1.44 drive’ and ‘1.22 Drive’.
vii) Find all the products whose sellprice is greater then 5000.
viii) Find the list of all clients who stay in in city ‘Nagpur’ or city ‘Delhi’ or ‘Chennai’.
ix) Find the product whose selling price is greater than 2000 and less than or equal to 5000.
x) List the name, city and state of clients not in the state of ‘Maharashtra’

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

Q4. To Manipulate the Operations on the table.

Using the table client master and product master answer the following:

(a) Change the selling priceof ‘1.44 floppy drive to Rs.1150.00


(b) Delete the record with client 0001 from the client master table.
(c) Change the city of client_no’0005’ to Mumbai.
(d) Change the bal_due of client_no ‘0001, to 1000.
(e) Find the products whose selling price is more than 1500 and also find the new selling price as
original selling price *15.
(f) Find out the clients who stay in acity whose second letter is a.
(g) Find out the name of all clients having ‘a’ as the second letter in their names.
(h) List the products in sortedorder of their description.
(i) Count the total number of orders x.
(j) Calculate the average price of all the products.
(k) Calculate the minimum price of products.
(l) Determine the maximum and minimum prices
(m) Rename the tittle as ‘max_price’andmin_price respectively.
(n) Count the number of products having price greater than or equal to 1500
Q5. To Implement the restrictions on the table.

(a) Create the following tables,with constraints:


SALES_MASTER
COLUMN NAME CONSTRAINT

Salesman_no Primary key

Not null
Sal_name
Not null
Address

City

State

Pincode
Not null
Sal_amt

Tgt_to_get Not null

Ytd_sales Not null

Remarks

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

b) SALES_ORDER
COLUMN NAME CONSTRAINT

S_order_no Primary/first letter must be 0

S_order_date Primary key reference clientnoofclient_master


table

Client_no

Dely_add

Salesman_no Foreign key references


salesman_noofsalesman_master table

Delivery part(p)/full(f)/default f
Dely_type

Billed_yn

Dely_date Can not be lessthans_order_date

Order_status Values (‘in


process’;’fulfilled’;backorder’;’cancel)

Q6. To Implement and manipulate the structure of the table.

Write SQL Queries to perform following operations.

(a) To change the name of any existing table.


(b) To change the name of column.
(c) To drop a column from the current table.
(d) To decrease the cardinality of a table if table data exist.
(e) To add a new column to the existing tables.
(f) To Drop a table from the database.
(g) To change the datatype of any column.
(h) To Add Primary key constraint.
(i) To Add Foreign key constraint.
(j) To Drop Primary key constraint.
(k) To DropForeign key constraint.

Q7. (a) To Implement the concept of joins.

(a) Write Sql queries to implement or Joint Multiple Table (Equi Join).
(b) Write Sql queries to implement Natural Join.
(c) Write Sql queries to implement Cartesian product.
(d) Write Sql queries to implementINNER JOIN.

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

(e) Write Sql queries to implementLEFT OUTER JOIN.


(f) Write Sql queries to implementRIGHT OUTER JOIN.
(g) Write Sql queries to implementFULL OUTER JOIN.
(b) Answer the following Queries
(a) Find out the product which has been sold to ‘Ivan Sayross.’
(b) Find out the product and their quantities that will have do delivered.
(c) Find the product_no and description of moving products.
(d) Find out the names of clients who have purchased ‘CD DRIVE’
(e) List the product_no and s_order_no of customers having qty ordered less than 5 from the order
details table for the product “1.44 floppies”.
(f) Find the products and their quantities for the orders placed by ‘VandanSaitwal ’ and “Ivan
Bayross”.
(g) Find the products and their quantities for the orders placed by client_no “ C00001” and “C00002”
(h) Find the order No,, Client No and salesman No. where a client has been received by more than
one salesman.
(i) Display the s_order_date in the format “dd-mm-yy” e.g. “12- feb-96”
(j) Find the date , 15 days after system date

Q8 To implement the concept of grouping of Data.


(a) Print the description and total quantity sold for each product.
(b) Find the value of each product sold.
(c) Calculate the average quantity sold for each client that has a maximum order value of 15000.
(d) Find out the products which has been sold to Ivan.
(e) Find the names of clients who have ‘CD Drive’.
(f) Find the products and their quantities for the orders placed by ‘Vandana’ and ‘Ivan’.
(g) Select product_no, total qty_ordered for each product.
(h) Select product_no, product description and qty ordered for each product.
(i) Display the order number and day on which clients placed their order.
(j) Display the month and Date when the order must be delivered.

Q9. To implement the concept of Subqueries.

(a) Find the product_no and description of non- moving products.


(b) Find the customer name, address, city and pincode for the client who has placed order no
“019001” .
(c) Find the client names who have placed order before the month of may 96.
(d) Find out if product “1.44 Drive” is ordered by only client and print the client_noname to whom it
was sold.
(e) find the names of client who have placed orders worth Rs.10000 or more.
(f) Select the orders placed by ‘Rahul Desai”
(g) Select the names of persons who are in Mr. Pradeep’s department and who have also worked on
an inventory control system.
(h) Select all the clients and the salesman in the city of Nagpur.

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

Semester Fifth
Course Name Internet Technologies
Category: Core Code: BSC 1501 Credits: 6 L-4 T-0 P-2
Exam: Theory 3 Hrs, Practical 2 Hrs ESE: 60 Marks CIA: 40 Marks

SYLLABUS

Module-I: Java and Java Script: Introduction to core java programming, Use of Objects,
Inheritance, Abstract classes and interfaces, Exception handling and multithreaded programming,
Packages and access modifiers, Handling string, Input output classes, Array and ArrayList class
JDBC: JDBC fundamentals, Establishing connectivity and working with connection interface,
Working with statements, Creating and executing SQL statements, Working with Result Set Objects.
Module-II:Scripting languages,Use of scripting,Validation and verification,Java Script
Introduction to Java Script, The Document Object Model, Managing Web Page Styles using
JavaScript and CSS, Data types, Operators, Functions, Control structures, Events and event handling.
Module-III: JSP:Introduction to JavaServer Pages, HTTP and Servlet basics, Problem with
Servlets, Anatomy of a JSP page, JSP Processing, JSP application design with MVC, Setting up the
JSP environment, Implicit JSP objects, Conditional processing, Displaying values, Using an
expression to set an Attribute, Declaring Variables and Methods, Error Handling and Debugging,
Sharing Data Between JSP Pages, Requests, and Users, Database Access.
Module-IV: Java Beans Java Beans fundamentals, JAR files, Introspection, Developing a simple
Bean, Connecting to Database, Enterprise Java Bean.
Recommended Books:

Text Book:
1. Ivan Bayross, Web Enabled Commercial Application Development Using Html,
Dhtml,javascript, Perl Cgi , BPB Publications, 2009.
2. Herbert Schildt , Java 7, The Complete Reference, , 8th Edition, 2009.
3. O'Reilly , Java Server Pages, Hans Bergsten, Third Edition, 2003.
Reference Books:
1. Jim Keogh ,The Complete Reference J2EE, TMH, , 2002.
2. C.L. Liu , D.P. Mahopatra, Elements of Discrete mathematics, 2nd Edition , Tata McGraw
Hill, 1985,
3. Dream Tech, Black Book “Java 8 programming”.

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

COMPUTER SCIENCE LAB (C-XI): Internet Technologies Lab

Create event driven program for following:

1. Print a table of numbers from 5 to 15 and their squares and cubes using alert.
2. Print the largest of three numbers.
3. Find the factorial of a number input by user.
4. Enter a list of positive numbers terminated by zero. Find the sum and average of these numbers.
5. A person deposits Rs. 1000 in a fixed account yielding 5% interest. Compute the amount in the
account at the end of each year for n years.
6. Read n numbers. Count the number of negative numbers, positive numbers and zeros in the list.

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

Semester Fifth
Course Name Theory of Computation
Category: Core Code: BSC 1502 Credits: 6 L-5 T-1 P-0
Exam: Theory 3 Hrs ESE: 60 Marks CIA: 40 Marks

SYLLABUS

Module-I: Languages: Alphabets, String, Language, Basic operations on language, Concatenation,


KleeneStar.

Module-II: Finite Automata and Regular Languages: Regular Expressions, Transition Graphs,
Deterministic and non-deterministic finite automata, NFA to DFA Conversion, Regular languages
and their relationship with finite automata, Pumping lemma and closure properties of regular
languages.
Module-III: Context Free Languages: Context Free Grammar’s, Parse trees, Ambiguities in
Grammars and Languages, Pushdown automata (Deterministic and Non-deterministic), Pumping
Lemma, Properties of context free languages, Normal forms.
Module-IV: Turing Machines and Models of Computation: Turing Machine as a model of
computation, Universal Turing Machine, Language acceptability, Decidability, Halting problem,
Recursively enumerable and recursive languages, UnsolvabilityProblems.
Recommended Books:

Text Book:
1. Hoperoft, Aho, Ullman, Introduction to Automata theory, Language & Computation –
3rdEdition, Pearson Education. 2006
Reference Books:

1. Daniel I.A.Cohen, Introduction to computer theory, John Wiley,1996


2. Lewis & Papadimitriou, Elements of the theory of computation , PHI 1997.
3. P. Linz, An Introduction to Formal Language and Automata 4th edition Publication Jones
Bartlett, 2006

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

Semester Fifth
Course Name Artificial Intelligence
Category: Core Code: BSC1601 Credits: 6 L-4 T-0 P-2
Exam: Theory 3 Hrs,Practical 2 Hrs ESE: 60 Marks CIA: 40 Marks

SYLLABUS

Module-I: Introduction: Introduction to Artificial Intelligence, AI- Definitions, Background and


Applications, Turing Test, Chinese Room Test and Rational Agent approaches to AI, Introduction to
Intelligent Agents and their structure, Behavior and environment, Agent function.

Module-II: Problem Solving and Searching Techniques: Problem Characteristics, Production


Systems, Control Strategies, Breadth First Search, Depth First Search, Hill climbing and its
Variations, Heuristics Search Techniques: Best First Search, A* algorithm, Constraint Satisfaction
Problem, Means-End Analysis, Introduction to Game Playing, Min-Max and Alpha-Beta pruning
algorithms.
Module-III: Knowledge Representation: Introduction to First Order Predicate Logic, Resolution
Principle, Unification, Semantic Nets, Conceptual Dependencies, Frames and Scripts, Production
Rules, Conceptual Graphs.
Functional Programming Languages-LISP/Programmable Logic (PROLOG) basic syntax rules and
programming

Module-IV:Dealing with Uncertainty and Inconsistencies and Understanding Natural


Languages: Truth Maintenance System, Default Reasoning, Probabilistic Reasoning, Parsing,
Parsing Techniques, Context-Free and Transformational Grammars, Recursive and Augmented
Transition Nets.

Recommended Books:

Text Book:
1.Artificial Intelligence: A Practical Approach- Rajiv Chopra, S. Chand Publication.
Reference Books:
1. DAN.W. Patterson, Introduction to A.I and Expert Systems – PHI, 2007.

2. Russell &Norvig, Artificial Intelligence-A Modern Approach, LPE, Pearson Prentice Hall, 2nd
edition, 2005.

3. Rich & Knight, Artificial Intelligence – Tata McGraw Hill, 2nd edition, 1991.

4. W.F. Clocksin and Mellish, Programming in PROLOG, Narosa Publishing House, 3rd edition,
2001.

5. Ivan Bratko, Prolog Programming for Artificial Intelligence, Addison-Wesley, Pearson Education,
3rd edition, 2000.

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

COMPUTER SCIENCE LAB: Artificial Intelligence Lab

1. Write a prolog program to calculate the sum of two numbers.

2. Write a prolog program to find the maximum of two numbers.

3. Write a prolog program to calculate the factorial of a given number.

4. Write a prolog program to calculate the nth Fibonacci number.

5. Write a prolog program, insert_nth(item, n, into_list, result) that asserts that result is the list into
list with item inserted as the nth element into every list at all levels.

6. Write a Prolog program to remove the nth item from a list.

7. Write a Prolog program, remove-nth(Before, After) that asserts the After list is the Before list with
the removal of every nth item from every list at all levels.

8. Write a Prolog program to implement append for two lists.

9. Write a Prolog program to implement palindrome (List).

10. Write a Prolog program to implement max(X,Y,Max) so that Max is the greater of two numbers
X and Y.

11. Write a Prolog program to implement maxlist(List,Max) so that Max is the greatest number in the
list of numbers List.

12. Write a Prolog program to implement sumlist(List,Sum) so that Sum is the sum of a given list of
numbers List.

13. Write a Prolog program to implement two predicates evenlength(List) and oddlength(List) so that
they are true if their argument is a list of even or odd length respectively.

14. Write a Prolog program to implement reverse(List,ReversedList) that reverses lists.

15. Write a Prolog program to implement maxlist(List,Max) so that Max is the greatest number in the
list of numbers List using cut predicate.

16. Write a Prolog program to implement GCD of two numbers.

17. Write a prolog program that implements Semantic Networks/Frame Structures.

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

Semester Sixth
Course Name Computer Graphics
Category: Core Code: BSC 1602 Credits: 6 L-4 T-0 P-2
Exam: Theory 3 Hrs, Practical 2 Hrs ESE: 60 Marks CIA: 40 Marks
SYLLABUS

Module I:Introduction to Computer Graphics, Graphic Displays,Lineand Circledrawing


algorithm: Introduction to computer graphics, Advantages and application of computer graphics,
Classification of computer graphics Graphic displays: Random scan displays, Raster scan displays,
Line drawing algorithms: DDA algorithm, Bresenham‘s algorithm, Circle drawing algorithm: DDA
circle drawing algorithm, Bresenham‘s circle drawing algorithm, Midpoint circle drawing algorithm

Module II: Transformations, Windowing and Clipping, 3-D TransformationBasic


transformation: Translation, Rotation, Scaling, Matrix representations, Homogenous coordinates,
Composite transformations Reflections and shearing transformations, Viewing pipeline, Viewing
transformations, Polygon filling, 2D Clipping algorithms, Cohen Sutherland line clipping algorithm,
Liang Barsky algorithm, Line clipping against non-rectangular clip windows, Polygon clipping,
Sutherland Hodgeman polygon clipping, Weiler and Atherton polygon clipping, Curve clipping and
Text clipping, 3-D Geometric primitives, 3-D Object representation, 3-D Transformation, 3-D
viewing and projections, 3-D clipping

Module III: Curvesand Surfaces, Hidden Linesand Surfaces: Introduction to Curves and Surfaces,
Quadric surfaces, Spheres, Ellipsoid, Introductory concepts of spline, B-spline and Bezier curves and
surfaces, Introduction to Hidden Lines and Surfaces, Back Face Detection algorithm, Depth buffer
method, A-buffer method, Scan line method, Painter’s algorithm.

Module IV: Basic Illumination Model: Light sources, Ambient light, Diffuse illumination,
Specular reflection and Phong model, Combined approach, Warn model, Intensity attenuation, Color
consideration, Transparency and Shadows
Recommended Books:

Text Book:
1. D.F.Rogers Procedural Elements for Computer Graphics, McGraw Hill 1997.
Reference Books:
1. TJ.D.Foley, A.Van Dan, Feiner, Hughes Computer Graphics Principles & Practice 2nd
edition Publication Addison Wesley 1990.

2. D.Hearn, Baker: Computer Graphics, Prentice Hall of India 2008.

3. D.F.Rogers, Adams Mathematical Elements for Computer Graphics, McGraw Hill 2nd
edition 1989.

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

COMPUTER SCIENCE LAB (C-VI): Computer Graphics Lab

1. Write a program to plot a point (pixel) on the screen.


2. Write a program to draw a straight line using DDA Algorithm.
3. Write a program to draw a straight line using Bresenham’s Algorithm.
4. Implementation of DDA circle generating Algorithm.
5. Implementation of Mid-point circle generating Algorithm.
6. Implementation of Bresenham’s circle generating Algorithm.
7. Implementation Cohen Sutherland line clipping algorithm.
8. Write a program to translate an object (line, triangle or rectangle) with translation parameters
in X and Ydirections.
9. Write a program to scale an object (line, triangle or rectangle) with scaling factors along X
and Y directions.
10. Write a program to rotate an object with a certain angle about origin.
11. Write a program to perform the rotation of an object with certain angle about an
arbitrary point.
12. Write a program to perform composite transformations of an object.
13. Write a program to perform the reflection of an object about major axis.

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

Semester Fifth
Subject Name Microprocessor
Category: DSE-I Code: BSC1551 Credits: 6 L-5 T-1 P-0
Exam: Theory 3 Hrs ESE: 60 Marks CIA: 40 Marks

SYLLABUS

Module-I: Introduction: Memory Unit: Primary Memory,Cache memory, Semiconductors


Technology for memory, Processing speed of computer,Evolution of Microprocessor and its types,
Microprocessor architecture: Internal architecture, System bus architecture.
Module-II:Microprocessor8085: 8085 Block diagram, Pin out diagram, Instruction set of 8085,
Fetching and executinginstructions of 8085, Idea of fetch execute overlap. Introduction to word
size,Addressing modes,Microprocessor communication and Bus timings.Register organization,
General purpose Register, Special purpose Register, Instruction formats, One word instruction, Two
word instruction, Three word instruction format.
Module-III: 8086Microprocessor: 8086 Block diagram, Functional units of 8086, Bus Interface
Unit, Execution Unit, Pin out diagram, Assembly language programming,Arithmetic,Logical branch
operations, Looping, Counting, Indexing, Programming techniques, Counters and Time delays.
Module-IV: Interfacing: Memory address decoding, Cache memory and Cache controllers,
Interfacing, I/O interface, Keyboard, Display, Timer, Interrupt controller, DMA controller, Video
controllers and Communication interfaces.
Recommended Books:

Text Book:
1. U.S. Shah "Introduction To Microprocessor" TechMax Publication, Pune

2. Gaonkar, Ramesh S “Microprocessor Architecture, Programming and Applications with


8085”, Penram International Publishing.
Reference Books:
1. Barry B. Brey : The Intel Microprocessors : Architecture, Programming and Interfacing.
Pearson Education, Sixth Edition,2009.

2. Walter A Triebel, Avtar Singh; The 8088 and 8086 Microprocessors Programming,
Interfacing, Software, Hardware, and Applications. PHI, Fourth Edition 2005.

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

Semester Fifth
Course Name Data Mining
Category: DSE-1 Code: BSC1552 Credits: 6 L-5 T-1 P-0
Exam: Theory 3 Hrs ESE: 60 Marks CIA: 40 Marks

SYLLABUS

Module I:Introduction to Data Mining: Introduction: Data mining, Functionalities, Classification,


Introduction to Data Warehousing, Data Preprocessing: Preprocessing the Data, Data cleaning, Data
Integration and Transformation, Data reduction.
Module II: Data Mining Primitives and Characterization and Comparison: Data Mining,
Primitives, Languages and System Architecture, Data Mining Query Language, Architectures of
Data mining Systems. Concept description, Characterization and Comparison: Concept Description,
Data Generalization and Summarization, Mining Class Comparison

Module III: Mining Association Rules: Basics Concepts, Single Dimensional Boolean Association
Rules from Transaction Databases, Multilevel Association Rules from Transaction Databases, Multi
dimension Association Rules from Relational Database and Data Warehouses.

Module IV: Classification and Prediction: Classification and Prediction: Introduction, Issues,
Decision Tree Induction, Bayesian classification. Classification based onConcepts from Association
Rule Mining, Other Methods. Prediction, Introduction, Classifier and Accuracy.
Recommended Books:
Text Book:
1. I.J.Han and M. Kamber, Data Mining Concepts and Techniques, Harcourt 2001

Reference Books:
1. K.P. Soman, ShyamDiwakar, V.Ajay, Insight into Data Mining Theory and Practice, Prentice
Hall of India, 2006
2. Mallach, “Data Warehousing System”, McGraw –Hill
3. M.H.Dunham, “Data Mining :Introductory and Advanced Topics” Pearson Education

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

Semester Fifth
Course Name Cloud Computing
Category: DSE-I Code: BSC1555 Credits: 6 L-5 T-1 P-0
Exam: Theory 3 Hrs ESE: 60 Marks CIA: 40 Marks

SYLLABUS

Module-I:Overview of Cloud Computing Paradigm: Recent trends in Computing: Grid


Computing, Cluster Computing, Distributed Computing, Utility Computing, Cloud Computing,
Introduction to Cloud Computing, History of Cloud Computing, Cloud service providers, Benefits
and limitations of Cloud Computing,
Module-II:Cloud Computing Architecture: Comparison with traditional computing architecture
(client/server), Services provided at various levels, Service Models- Infrastructure as a Service (IaaS),
Platform as a Service (PaaS), Software as a Service (SaaS), How Cloud Computing works, Deployment
Models- Public cloud, Private cloud, Hybrid cloud, Community cloud, Case study of NIST architecture.
Module-III: Information Storage in Cloud Computing: Introduction- Objectives, Storage as a
Service, Storage Providers- Amazon Simple Storage Service- Nirvanix- Google BigtableDatastore-
MobileMe- Live Mesh, Storage Security, Merits and Demerits of Storage, Public, Private, and Hybrid
Clouds – A Comparison, Examining the Economics of the private cloud.
Module-IV: Cloud Security: Infrastructure Security- Network level security, Host level security,
Application level security, Data security and storage- Data privacy and security issues, Jurisdictional
issues raised by data location, Authentication in cloud computing.

Text book:
1. Cloud Computing: Principles and Paradigms, Editors: RajkumarBuyya, James Broberg,
Andrzej M. Goscinski, Wile, 2011

Reference Books
1. Cloud Computing Bible, Barrie Sosinsky, Wiley-India, 2010
2. Cloud Computing: Principles, Systems and Applications, Editors: Nikos Antonopoulos, Lee
Gillam, Springer, 2012
3. Cloud Security: A Comprehensive Guide to Secure Cloud Computing, Ronald L. Krutz,
Russell Dean Vines, Wiley-India, 2010
4. GautamShroff, Enterprise Cloud Computing Technology Architecture Applications , Adobe
Reader ebooks available from eBooks.com,2010
5. Toby Velte, Anthony Velte, Robert Elsenpeter, Cloud Computing, A Practical Approach
,McGraw Hills, 2010.
6. Dimitris N. Chorafas, Cloud Computing Strategies ,CRC Press, 2010

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

Semester Fifth
Course Name Network Programming
Category: DSE-II Code: BSC 1554 Credits: 6 L-5 T-1 P-0
Exam: Theory 3 Hrs ESE: 60 Marks CIA: 40 Marks

SYLLABUS

Module–I: Introduction: Reference models, ISO-OSI model, Origin of TCP/IP and Internet,
Communication, Need of Protocol on Communication, Problems in Computer Communication,
Dealing with Incompatibility, TCP/IP model, TCP/IP protocol suite, TCP/IP Layer and Protocols,
Network Access Layer, Internet Layer, Need for lP Address, Classes of lP Address, Internet
Protocol,ARP, RARP,ICMP.
Module–II: Transport Layer: Overview of TCP, Transport Layer protocols, TCP, UDP and SCTP,
TCP Header, Connection Management in TCP, Connection oriented service and connectionless
services, Connection establishment and termination, Three Way handshaking, TCP Well known ports
and Empirical ports. , UNIX Standards Novell’s IPX/SPX Protocol Stack.
Module–III: Introduction to Socket, Socket family, Data types of Sockets, Socket Address
Structure, Types of Sockets, Active Sockets, Passive Sockets, Stream Socket, Datagram
SocketSocket System Calls , Reserved ports, Elementary TCP Socket , Client Server model,
Characteristics of Client and Server, Signal handling, I/O Multiplexing using Socket. UDP Client
Server Example, Address lookup using Socket.
Module–IV: Network Application: Remote Logging, Telnet, REXEC, RSH, E-mail: WWW, and
HTTP, FTP,DNS: Domain Name Space, Domain Name Servers, LAN Admistration: Linux and
TCP/IP, Networking: Network Management and Debugging: Configure TCP/IP, PING utility,
IPConfig, Inetd Daemon, Netstate, Tracing a connection, Net diagnosis, Pathping, NS-Lookup,
Hostname.
Recommended Books:
Text Book:
1. B. A. Forouzan: Data Communications and Networking, Fourth edition, THM Publishing
Company Ltd., 2003
2. Internetworking with TCP/IP; Volume I : Principles, Protocols, and Architecture
by Douglas E. Comer, Pearson.
Reference Books:

1. W. Richard Stevens, Bill Fenner, Andrew M. Rudoff, Unix Network Programming, The
Sockets Networking API, Vol. 1, 3rd Edition, PHI.2003
2. Nemeth Synder& Hein, Linux Administration Handbook, Pearson Education, 2nd
Edition,2010
3. R. Stevens, Unix Network Programming, PHI 2nd Edition,1990.

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

Semester Fifth
Course Name Big Data Analysis
Category: DSE-I Code: BSC 1553 Credits: 6 L-5 T-1 P-0
Exam: Theory 3 Hrs ESE: 60 Marks CIA: 40 Marks

SYLLABUS

MODULE-I:Introduction to Big Data:Introduction: distributed file system , Big Data and its importance,
Drivers for Big data, Big data analytics, Big data applications. Algorithms using map reduce, Matrix-
Vector multiplication by map reduce.

MODULE-II:Introduction to Hadoop: Big Data :Apache Hadoop&HadoopEcoSystem , Moving Data in


and out of Hadoop , Understanding inputs and outputs of MapReduce , Data Serialization.

MODULE-III:Hadoop Architecture:Hadoop Architecture, Hadoop Storage: HDFS, Common Hadoop


Shell commands , Anatomy of File Write and Read, NameNode, Secondary NameNode, and DataNode,
HadoopMapReduce paradigm, Map and Reduce tasks, Job, Task trackers, Cluster setup, SSH &Hadoop
Configuration, HDFS Administering , Monitoring & Maintenance.

MODULE-IV:Hadoop Ecosystem and Yarn:Hadoop ecosystem components, Schedulers, Fair and


Capacity, Hadoop 2.0 New Features NameNode,High Availability, HDFS Federation, MRv2, YARN,
Running MRv1 in YARN.

Text book:

1. Boris lublinsky, Kevin t. Smith, Alexey Yakubovich, “Professional Hadoop Solutions”, Wiley,
ISBN: 9788126551071, 2015.

Reference books

1. Chris Eaton, Dirk deroos et al. , “Understanding Big data ”, McGraw Hill, 2012.

2. Tom White, “HADOOP: The definitive Guide” , O Reilly 2012. 6 IT2015 SRM(E&T)

3. VigneshPrajapati, “Big Data Analytics with R and Haoop”, Packet Publishing 2013.

4. Tom Plunkett, Brian Macdonald et al, “Oracle Big Data Handbook”, Oracle Press, 2014.

5. JyLiebowitz, “Big Data and Business analytics”,CRC press, 2013.

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

Semester Fifth
Course Name System Programming
Category: DSE-II Code: BSC1556 Credits: 6 L-5 T-1 P-0
Exam: Theory 3 Hrs ESE: 60 Marks CIA: 40 Marks

SYLLABUS

Module-I: Overview of System Software:Introduction, Software, Software Hierarchy, Systems


Programming, Machine Structure, Interfaces, Address Space, Computer Languages, Tools, Life
Cycle of a Source Program, Different Views on the Meaning of a Program, System Software
Development, Recent Trends in Software Development, Levels of System Software. Overview of
Language ProcessorsProgramming Languages and Language Processors, Language Processing
Activities, Program Execution, Fundamental of Language Processing, Symbol Tables Data Structures
for Language Processing: Search Data Structures, Allocation Data Structures.
Module-II:Assemblers: Elements of Assembly Language Programming, Design of the Assembler,
Assembler Design Criteria, Types of Assemblers, Two-Pass Assemblers, One-Pass Assemblers,
Single pass Assembler. Linkers and Loaders: Introduction, Relocation of Linking Concept, Design
of a Linker, Self-Relocating Programs, Dynamic Linking, Loaders, Different Loading Schemes,
Sequential and Direct Loaders, Compile-and-Go Loaders, General Loader Schemes, Absolute
Loaders, Relocating Loaders, Practical Relocating Loaders, Linking Loaders, Relocating Linking
Loaders, Linkers v/s Loaders
Module-III:Scanning and Parsing: Programming Language Grammars, Classification of Grammar,
Ambiguity in Grammatic Specification, Scanning, Parsing, Top Down Parsing, Bottom up Parsing,
Language Processor Development Tools, LEX, YACC. Compilers: Causes of Large Semantic Gap,
Binding and Binding Times, Data Structure used in Compiling, Scope Rules, Memory Allocation,
Compilation of Expression, Compilation of Control Structure, Code Optimization

Module-IV:Interpreters & Debuggers: Benefits of Interpretation, Overview of Interpretation,Java


Language Environment, Java Virtual Machine, Types of Errors, Debugging Procedures,
Classification of Debuggers, Dynamic/Interactive Debugger

Text book:

1. SantanuChattopadhyaya, Systems Programming, PHI, 2011.

Reference Books

1. Alfred V. Aho, Monica S. Lam, Ravi Sethi, Jeffrey D. Ullman, Compilers: Principles, Techniques,
and Tools, 2nd edition, Prentice Hall, 2006.
2. D. M. Dhamdhere, Systems Programming, Tata McGraw Hill, 2011.
3. Leland Beck, D. Manjula, System Software: An Introduction to System Programming, 3rd
edition, Pearson Education, 2008.
4. Grune D, Van Reeuwijk . K, Bal H. E, Jacobs C J H, Langendoen K, Modern Compiler Design,
2nd edition, Springer, 2012
1

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

Semester Sixth
Course Name Information Security
Category: DSE-III Code: BSC1651 Credits: 6 L-5 T-1 P-0
Exam: Theory 3 Hrs ESE: 60 Marks CIA: 40 Marks

SYLLABUS

Module-I:Introduction and Cryptography:Security, Attacks, Computer Criminals, Security


Services, Security Mechanisms Cryptography: Substitution Ciphers, Transpositions Cipher,
Confusion, Diffusion, Symmetric, Asymmetric Encryption. DES Modes of DES, Uses of Encryption,
Hash function, Key exchange, Digital Signatures, Digital Certificates.
Module-II: Program Security and Threats: Secure programs, Non malicious program errors,
Malicious codes virus, Trap doors, Salami attacks, Covert channels, Control against program
Threats: Protection in OS: Memory and Address protection, Access control, File protection, User
Authentication.

Module-III: Database Security and Security in Networks: Requirements, Reliability, Integrity,


Sensitive data, Inference, Multilevel Security. Security in Networks: Threats in Networks, Security
Controls, Firewalls, Intrusion Detection Systems, Secure e-mails
Module-IV: Administrating Security: Security Planning, Risk Analysis,Organizational Security
Policy, Physical Security. Ethical issues in Security: Protecting Programs and data. Information and
law.
Text Books:
1. W. Stallings, Cryptography and Network Security: Principles and Practice, Seventh Edition
,Pearson.
2. AtulKahate, Cryptography and Network Security , Second Edition, Tata McGraw-Hill.
Reference Books:
1. C. P. Pfleeger, S. L. Pfleeger; Security in Computing, Prentice Hall of India, 2006
2. W. Stallings; Network Security Essentials: Applications and Standards, 4/E, 2010

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

Semester Sixth
Course Name Digital Image Processing
Category: DSE-III Code: BSC1652 Credits: 6 L-5 T-1 P-0
Exam: Theory 3 Hrs ESE: 60 Marks CIA: 40 Marks

SYLLABUS

Module-I: Introductionof Light, Brightness adaption and discrimination, Pixels, Coordinate


conventions, Imaging Geometry, Perspective Projection, Spatial Domain Filtering, Sampling and
Quantization. Spatial Domain FilteringIntensity transformations, Contrast stretching, Histogram
equalization, Correlation and convolution, Smoothing filters, Sharpening filters, Gradient and
Laplacian.

Module-II: Filtering in the Frequency Domain Fourier Transforms and properties, FFT (Decimation
in Frequency and Decimation in Time Techniques), Convolution, Correlation, 2-D sampling,
Discrete Cosine Transform, Frequency domain filtering. Image Restoration Basic Framework,
Interactive Restoration, Image deformation and geometric transformations, Image morphing,
Restoration techniques, Noise characterization, Noise restoration filters, Adaptive filters, Linear,
Position invariant degradations, Estimation of Degradation functions.

Module-III: Image Compression Encoder-Decoder model, Types of redundancies, Lossy and


Lossless compression, Entropy of an information source, Shannon's 1st Theorem, Huffman Coding,
Arithmetic Coding, Golomb Coding, LZW coding, Transform Coding, Sub-image size selection,
Blocking artifacts, DCT implementation using FFT, Wavelet based Image Compression: Expansion
of functions, Multi-resolution analysis, Scaling functions, MRA refinement equation, Wavelet series
expansion, 2-D wavelet Transform, JPEG-2000 encoding, Digital Image Watermarking.

Module-IV :Morphological Image Processing:Basics, SE, Erosion, Dilation, Opening, Closing, Hit-
or-Miss Transform, Boundary Detection, Hole filling, Connected components, Convex hull,
Thinning, Thickening, Skeletons, Pruning, Geodesic Dilation, Erosion, Reconstruction by dilation
and Erosion. .Image Segmentation: Boundary detection based techniques, Point, Line detection,
Edge detection, Edge linking, Local processing, Regional processing, Hough transform,
Thresholding, Iterative Thresholding, Otsu's method, Moving averages, Multivariable Thresholding,
Region-based segmentation, Watershed algorithm, Use of motion in segmentation

Text Book
1. R C Gonzalez , R E Woods, Digital Image Processing, 3rd Edition, Pearson Education.2008.

Reference Books
1. A K Jain, Fundamentals of Digital image Processing, Prentice Hall of India.1989.
2. K R Castleman, Digital Image Processing, Pearson Education.1996
3. Schalkoff, Digital Image Processing and Computer Vision, John Wiley and Sons.1989.
4. Rafael C. Gonzalez, Richard E. Woods, Steven Eddins,' Digital Image Processing using
MATLAB', Pearson Education, Inc., 2004.

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

Semester Sixth
Course Name Soft Computing
Category: DSE-III Code: BSC 1653 Credits: 6 L-5 T-1 P-0
Exam: Theory 3 Hrs ESE: 60 Marks CIA: 40 Marks

SYLLABUS

Module-I: Introduction: Soft Computing; Introduction of soft computing, Soft computing vs. Hard
computing, Various types of soft computing techniques; Artificial neural networks, Fuzzy logic,
Genetic Algorithms. Applications of soft computing.

Module-II: Neural Network, Structure of Biological neuron; Neuron, Nerve Structure and synapse.
Artificial neuron and its model. Activation functions. Neural network architecture; Single layer feed
forward networks, Multilayer feed forward networks. Various learning techniques; Perceptron
training algorithm; Linearseparability, Widrow&Hebb’s learning rule/Delta rule. ADALINE v/s
MADALINE.Introduction of MLP and BPN. Error back propagation algorithm (EBPA);
Characteristics and applications of ANN. Associative Memory and its characteristics.

Module-III: Fuzzy Logic: Basic concepts of fuzzy logic. Fuzzy sets versus Crisp sets. Fuzzy set
theory and operations. Properties of fuzzy sets and crisp sets.Fuzzy relations and Crisp
relations.Fuzzy to Crisp conversion. Membership functions. Fuzzyfications&Defuzzifications.Fuzzy
preposition.Fuzzy inference System.Fuzzy Rule Base.Fuzzy reasoning and decision making.Fuzzy
Logic Controller (FLC).Formation, Decomposition & aggregation of fuzzy rules.Industrial
applications of Fuzzy.

Module-IV: Genetic Algorithm: Introduction of Genetic Algorithm; Fundamentals of GA, Basic


concepts of GA, Working principle, Encoding, Fitness function, Reproduction. Genetic modeling:
Inheritance operator, Cross over Operators, Inversion & deletion, Mutation operator, Bitwise
operators. Generational Cycle of GA. Convergence of GA. Applications & advances in GA.
Differences&similarities between GA & other traditional methods.
Text Book:

1. S. Rajsekaran& G.A. VijayalakshmiPai, “Neural Networks, Fuzzy Logic and Genetic


Algorithm: Synthesis and Applications” Prentice Hall of India.
Reference Books:

1. Sivanandani, Deepa, “Principles of Soft Computing”, Wiley India (2007)


2. Jang J.S.R. Sun C.T. and Mizutani E., “Neuro-Fuzzy and Soft computing", Prentice Hall
3. Timothy J. Ross. “Fuzzy Logic with Engineering Applications", McGraw Hill
4. LaureneFausett. ‘Fundamentals of Neural Networks", Prentice Hall
5. D.E. Goldbery, “Genetic Algorithms: Search, Optimization and Machine Learning". Addison
Wesley.

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

Semester Sixth
Course Name Machine Learning
Category: DSE-IV Code: BSC 1654 Credits: 6 L-5 T-1 P-0
Exam: Theory 3 Hrs ESE: 60 Marks CIA: 40 Marks

SYLLABUS

Module-I : Introduction:Definition of learning systems. Goals and applications of machine


learning.Aspects of developing a learning system:Training data, Concept representation, Function
approximation. Inductive Classification:The concept learning task, Concept learning as search
through a hypothesis space, General-to-specific ordering of hypotheses, Finding maximally specific
hypotheses, Version spaces and the candidate elimination algorithm,Learning conjunctive
concepts,Importance of inductive bias.
Module-I I: Decision Tree Learning: Representing concepts as decision trees. Recursive induction
of decision trees,Picking the best splitting attribute: Entropy and information gain, Searching for
simple trees and computational complexity, Occam's razor,Overfitting,Noisy data and pruning.
Module-III: Rule Learning:Propositional and First-Order, Translating decision trees into rules,
Heuristic rule induction using separate and conquer and information gain, First-order Horn-clause
induction (Inductive Logic Programming) and Foil, Learning recursive rules, Inverse resolution,
Golem and Prolog.
Module-IV: Bayesian Learning:Probability theory and Bayes rule, Naive Bayes learning algorithm,
Parameter smoothing, Generative vs. Discriminative training,Logisitic regression, Bayes nets and
Markov nets for representing dependencies.

Text books:
1. EthemAlpaydin, "Introduction to Machine Learning" 2nd Edition, The MIT Press, 2009.
Reference books:
1. Tom M. Mitchell, "Machine Learning", First Edition by Tata McGraw-Hill Education, 2013.
2. Christopher M. Bishop, "Pattern Recognition and Machine Learning" by Springer, 2007.
3. Mevin P. Murphy, "Machine Learning: A Probabilistic Perspective" by The MIT Press, 2012.

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

Semester Sixth
Course Name Introduction to Data Science
Category: DSE-IV Code: BSC1655 Credits: 6 L-5 T-1 P-0
Exam: Theory 3 Hrs ESE: 60 Marks CIA: 40 Marks

SYLLABUS

Module-I:Introduction to Data Science: Role and Importance,Data science process, Types of data,
Example applications,Data Scientist's Tool Box: Turning data into actionable knowledge, Tools used
in building data analysis software: Version control, Markdown, git, Gitllub, R, and RStudio.

Module-II:R Programming Basics: Overview of R, R data types and objects, reading and writing
data, Controlstructures, Functions, Scoping rules, Dates and times, Loop functions, Debugging tools,
Simulation, code profiling. Getting and Cleaning Data: Sources of data, Data storage and
management , Using multiple data sources Obtaining data from the web, from APls, from databases
and from colleagues in various formats. Basics of data cleaning and making data -tidyl.

Module-III:Exploratory Data Analysis: Essential exploratory techniques for summarizing data,


Applied before formal modeling commences, Eliminating or sharpening potential hypotheses about
the world that can be addressed by the data, Common multivariate statistical techniques used to
visualize high-dimensional data.

Module-IV:Data Visualization: Basic principles, Ideas and tools for data visualization, Exercise:
Create your own visualization of a complex dataset, Data Science and Ethical Issues.Discussions on
Privacy, Security, Ethics.

Text Book :
1.RachelSchutt, Cathy O’Neil, “Doing Data Science: Straight Talk from the Frontiline” by
Schroff/O’Reilly, 2013.
Reference Books
1.Foster Provost, Tom Fawcett, “Data Science for Business" What You Need to Know About Data
Mining and Data-Analytic Thinking” by O’Reilly, 2013.
2.John W. Foreman, “Data Smart: Using data Science to Transform Information intoInsight" by John
Wiley & Sons, 2013.
3.lan Ayres, "Super Crunchers: why Thinking-by-Numbers Is the New way to Be Smart” 1st Edition
by Bantam, 2007.
4.EricSeigel, “Predictive Analytics: The Power to Predict who will Click, Buy, Lie, or Die”, is
Edition, by Wiley, 2013.
5.Matthew A. Russel, "Mining the Social web: Data mining Facebook, Twitter, Linkedln, Goole+,
GitHub, and More”, Second Edition, by O’Reilly Media, 2013.

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

Semester Third
Course Name LaTeX and HTML
Category: SEC-I Code: BSSE1301 Credits: 2 L-1 T-0 P-1
Exam: Theory 3 Hrs ESE: 60 Marks CIA: 40 Marks

SYLLABUS

Module-I: Elements of LaTeX: Basic syntax, Writing equations, Mathematical formulas,


Mathematical symbol, Arrays, Multiline formulas, Matrix and tables, Figure handling. Page layout:
Titles, Abstract, Chapters, Sections, References, Equations references, Citations. Packages: Hyperref,
amsmath, amssymb, algorithms, graphics, color. Classes: article, book, report, Beamer presentation.
(Chapter 9-11, 15[1])

Module-II: Introduction To HTML: Introduction, Objectives, HTML basics, Document tags,


Comment tags, Container and Empty tags. Working with HTML: Headings, Emphasizing text,
Appearance of text, Some special characters. Using list in Web documents, Using graphics and
links.More on HTML-table, Frames &Forms.Tools for web designing: Introduction, Objectives,
HTML Editors, Features of Web page design tools. Advantages of using web page designing
tools.Designing of frames and forms: Introduction, Objectives.

Practical
Six practical should be done by each student. The teacher can assign practical from the exercises
from [1] & [4]
References:
[1] Martin J. Erickson and Donald Bindner, A Student's Guide to the Study, Practice, and Tools
of Modern Mathematics, CRC Press, Boca Raton, FL, 2011.
[2] L. Lamport, LATEX: A Document Preparation System, User’s Guide and Reference Manual.
Addison-Wesley, New York, second edition, 1994.

[3] Mastering HTML, CSS &Javascript Web Publishing (English, Paperback, Lemay Colburn
Kyrnin)
[4] HTML & CSS: The Complete Reference, Fifth Edition Paperback – 1 Jul 2017by Thomas
Powell (Author)

Annexure-5
Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow
B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

Semester Third
Course Name Web Technologies
Category: SEC-I Code: BSSE1311 Credits: 2 L-1 T-0 P-1
Exam: Theory 3 Hrs ESE: 60 Marks CIA: 40 Marks

SYLLABUS

Module-I: Elements of Web Technologies & PHP:Elements of web page,Web protocols,


Development strategies, Web applications, Web project, Web team, Web forms handling,
Environment variables, File and directory handling, Identifying data origin and data validation,
Redirecting pages, Cookies, Session and user, PHP basics,PHP installation, PHPconfiguration
Loops, Functions in PHP, PHP E-mail , Function, Syntax, Structure, Strings, Numbers, Variables,
flow controls.

Module-II: PHP in depth: Arrays in PHP with attributes, Date, Time, Image Uploading, File
handling in PHP, Functions in PHP, Object oriented PHP introduction, PHP functions, Using
exceptions to handle errors, Errors handling in PHP. Exercise sets on every topic. Validating an
application using PHP, Web-services, Data handling and retrieving data fromMYSQL using PHP.
MYSQL: Data Types, Functions, Conversion, Creation of database table, Constraints etc.,
Importingand exporting database.
PHP-MYSQL: Communicating with MYSQL; Creating, Inserting, updating and deleting
fromdatabase using PHP.
Practical
Exercise sets should be done by each student. The teacher can assign practical from the exercises
from [1] to [4]
References:
1. Xavier, C, “ Web Technology and Design” , New Age International
2. Ramesh Bangia, “Internet and Web Design” , New Age International
3. PHP: The Complete Reference : Steven Holzner (McGraw-Hill)
4. PHP and MYSQL by Example: Ellie Quigley (PHI)

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow


B.Sc. (Hons.) Computer Science: Course Structure & Syllabi

Semester Fourth
Course Name Linux/Unix Programming
Category: SEC-II Code: BSSE1411 Credits: 2 L-1 T-0 P-1
Exam: Theory 3 Hrs ESE: 60 Marks CIA: 40 Marks

SYLLABUS

Module I: LINUX/UNIX Basics: Introduction to LINUX/UNIX, Features of LINUX/UNIX,


LINUX/UNIX system organization (the kernel and the shell), Files and directories, Basic UNIX
commands:ls, mkdir, chdir, rmdir,cmp, comm, cat, date, time, cal, echo, cp, mv, wc, cat,
chown,chgrp,chmod,gzip, tar,locate,find,grep,diff,mount, unmount , cut, paste, head, tail, sort, nl, tr
etc. Commands for performing arithmetic operations:bc,expr,let, factor etc. Disk related
utilities:dd, du, df,dfspace, fdisketc. Implementing the file security using chmod, umask and sticky
bit. Commands for Processes: ps, fg, bg, nice, kill, nohup, jobs, corn etc

Module II: Shell programing: Learning vi editor, Types of editors, Basic features, Modes of
execution in vi editor, Different commands to manage vi editor, Writing, Compiling and Running a C
program on Unix/Linux. Writing and executing shell script in Unix environment.

Some shell scripting programs:


1. Write a shell script that prints the even and odd numbers.
2. Write a shell script to display Prime numbers in a given range.
3. Write ashell script to print given numbers sum of all digit.
4. Write a shell script to print the Fibonacci series.
5. Write a shell script to say Goodmorning /Afternoon /Evening as you log in to system.
6. Write a shell script to find whether entered year is Leap or not.
7. Write ashell script to check whether a number is palindrome or not.
8. Write ashell script to count numbers of words in a file.
9. Write ashell script to check whether a character is vowel or not using Switch-case.
10. Write ashell script to Sort the given five numbers in ascending order.
11. Write a shell script to add two numbers supplied as command line args.
12. Write a shell script to calculating average of given numbers on command line args.
13. Writea shell script to find out biggest one from 3 numbers supplied as command line args.
14. Write a shell program to develop basic math calculator.
15. Write a shell programto print the patterns using for loop.
16. Write a shell programto calculating factorial of given number.

Department of Mathematics & Computer Science, BabuBanarasi Das University, Lucknow

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy