0% found this document useful (0 votes)
28 views

B.SC Computer Science W.E.F 2022

Uploaded by

drashti.1647
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
28 views

B.SC Computer Science W.E.F 2022

Uploaded by

drashti.1647
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 54

Gujarat University

B. Sc. Computer Science


Semester-1 Syllabus
EFFECTIVE FROM ACADEMIC YEAR - 2022-2023

B. Sc. Computer Science SEM-I

CODE Titles Theory Practical

COM-101 Computer Fundamentals & 4


Web Designing

COM-102 Computer Basics, Internet & 3


Web page Development
(Practical)

Teaching Scheme
Unit Computer Fundamentals & Computer Basics,
Web Designing Internet & Web page
Development (Practical)

COM – 101 COM – 102

4 Credit 3 Credit

Total 100 Marks Total 100 Marks

Internal 30 Marks Internal 30 Marks

External 70 Marks External 70 Marks

4 hrs/Week 4 hrs/Week

I Computer
Fundamentals Consist of
Practical Exercises
II Internet Concept and
Application, Number *As per Gujarat University
system Ordinance for CBCS BSc
Programme - O.B.Sc.9, the 4
III Introduction to HTML Hrs/week practical will be of 3
credits.

IV Introduction to Photoshop

1
Course Code: COM – 101
Course Name: Computer Fundamentals & Web Designing:

Unit – 01:
1.1 Computer Fundamentals: Same as existing syllabus

Unit – 02:
Internet Concept and Applications; Number Systems:
2.1 Various number system (Binary, Octal, Decimal, Hexadecimal) 2.1.1
Addition and Subtraction
2.1.2 Conversion
2.2 Introduction of Parity scheme & ASCII character code 2.3 Logical gates
(AND, OR, NOT, NAND, NOR, XOR, XNOR)

Unit – 03:
3.1 Introduction of HTML
3.2 HTML tags & attributes
3.2.1 Basic tags
New Structure, New Form Elements and Attributes, Browser support
Defining HTML Markup Basic structure of HTML Document, The
Element, The Element, The Element, The <title> element, The <body>
element Modifying the background of an HTML webpage, Adding
Background color, Adding Background Image Specifying Metadata
about an HTML webpage, Introduction to HTML 5
3.2.2 Working with text and list tags
3.2.3 Working with tables and frames ta
3.2.4 Working with Hyperlinks, Images, Multimedia, Forms and Controls
4.1 Introduction of HTML & SGML
4.2 Skeleton of HTML
4.3 Tools required for HTML
4.4 HTML tags and attributes – Basics, Formatting, List & Hyperlinks,
Images and Image map in HTML
4.5 Tables, Frames and floating frames, forms, Audio & Video in HTML
4.6 Introduction of Dynamic HTML, Difference between HTML & DHTML

Unit – 04:
5.1 Introduction to Photoshop
5.2 Short keys & Commands
5.3 Introduction of Photoshop tools
5.4 Editing of Photo

Reference Books:
1. Computer Fundamentals, V. Rajaraman, Prentice Hall of India.
2. HTML in 21 days. Sams Publication.
3. How to Create Webpages using HTML, By K Laudon, Tata McGraw Hill.
4. Internet Technology and Web design, ISRD Group, Tata McGraw Hill.

2
Course Code: COM - 102
Course Name: Computer Basics, Internet & Web page Development (Practical)

List of Practicals:

1. Practicals related to HTML formatting tags and <div> tab.


● Creating and saving simple HTML documents. And opening in a web
browser.
● Modifying the background of HTML web pages (with colors & images).
● Insert a link break in web page content. (use of <BR>).
● Creating headings on web pages (<h1></h1> to <h6></h6>).
● Creating a paragraph (Using <p>....... </p>).
● Creating a horizontal ruler (using <hr>.....</hr>).
● Demonstrate use of subscript, super script, align tag.
● Format the text by using formatting tags like bold italic and underline.
● Create a web page which demonstrates the use of font tag.
● Create a web page with <div> tag.
2. Practicals related to <span>, <blockquote>, <marquee>, special characters and
list tag
● Create a web page with <span> tab.
● Create a web page with <blockquote> tag.
● Demonstrate the use of Marquee tag. (in more than three web pages).
● Write an HTML program to insert special characters and comment.
● Write an HTML program to create a simple order list.
● Write an HTML program to create a simple unordered list.
● Write an HTML program to create a definition list.
3. Practicals related to <Table> and <Frame>.

3
4.. Practical related to Cascading Style Sheet
● Write HTML program which contains cascaded style sheet for p, h2, h3,
body and font attribute; Inline style sheet for <p>, <h1> and <body> tags;
External style sheet with user defined classes.
● Write an HTML program which contains External style sheet with background
attributes, text attributes of style sheet; cascaded style sheet with border
attributes and margin attributes of style sheet.
5. Practice of Tools & Basic image editing & drawing & cropping.

4
Gujarat University
B. Sc. Computer Science [S. F.]
Semester – 2 Syllabus

CODE Titles Theory Practical

COM-103 Programming in C (Theory) 4

COM-104 Programming in C (Practical) 3

Teaching Scheme
Unit Programming in C (Theory) Programming in C
(Practical)

COM – 103 COM – 104

4 Credit 3 Credit

Total 100 Marks Total 100 Marks

Internal 30 Marks Internal 30 Marks

External 70 Marks External 70 Marks

4 hrs/Week 4 hrs/Week

I Introduction to Programming: Consist of 37 Numbers


Algorithms & Flow charts of Practical
Experiments
II Basics of C, Control Statements
*As per Gujarat University Ordinance
III Arrays & String, Functions for CBCS BSc Programme -
O.B.Sc.9, the 4 Hrs/week practical
IV Pointer, Structures & Unions will be of 3 credits.

5
Course Code: COM-103
Course Name: Programming in C (Theory)

Unit - 01:
1. Introduction to programming: Algorithms & Flowcharts
Programs & Programming, Programming Languages, Compiler, Interpreter,
Loader & Linker, Process of compilation, Classification of Programming
Languages, Concepts of Algorithm and Flowcharts

Unit - 02:
2. Basics of C
Introduction, Basic Structure of C & Simple Programs, C Tokens, Data Type,
Printf & Scanf, Variable, Constants, Operators and Expression, Precedence and
Associativity of Operators, Type Conversions
3. Control Statements
Test Condition for selection & Iteration, Writing Test Expression, Conditional
execution and selection, Iteration and Repetitive Executions, Switch Statement,
Looping Statements, Goto Statements, Nested loops

Unit - 03:
4. Arrays & Strings:
Introduction to contiguous data types, One dimensional arrays
Multidimensional arrays, Array as strings, Multidimensional character arrays,
Operations on strings

5. Functions:
Concept of modular programming, The concept of Function, User Defined with it’s
types & Library, Functions Using functions, Recursion

Unit - 04:
6. Pointer:
Understanding Memory Addresses, Overview of Pointer, Use of Pointers, Array,
String with pointer, Passing Pointers to a Function, Dynamic Memory Allocation

7. Structures and Unions:


Defining a Structure, Processing a Structure o Copy and Compare Structure
Variables, Operations on individual members, Array and Structures, Structures
and Pointers, Passing Structures to Functions, Self-referential Structures Unions

Reference Book(s):
1. Programming in ANSI C, by Balagurusamy, Tata McGraw Hill.
2. Programming with C, Byron S. Gottfried, Tata McGraw Hill.
3. Programming in C, by Pradip Dey & Manas Ghosh, Oxford
4. Mastering C, by Venugopal & Prasad, Tata McGraw Hill.
5. Let us C, by Yashwant Kanitkar, BPB Publication
6. Schaum's Outline of Programming with C, by Byron Gottfried, Schaum Series.
7.. Programming in C, by Juneja & Seth, CENGAGE Learning

6
Course Code: COM-104
Course Name: Programming in C (Practical)

Contents:
• Basic C Programs
• Programs based on constants, variable and diff data types.
• Programs based on Operator and Expression
• Programs based on Decision Making and Branching
• Use of Do While loop, for loop, while loop, if loop, if else if ladder, switch, go to
• Programs based on one dimensional and two dimensional array.
• Programs based on character array and String manipulation functions. • Programs
based on user-defined functions

List of Practical (Sample Guideline):


1. Write a program to print “Hello World” message.
2. Write a program to print Name, Address and Birth Date.
3. Write a program to add, multiply and divide two integers and float numbers.
4. Write a program to accept the number of days and print year, month and
remaining days.
5. Write a program to determine the maximum of given 3 Numbers.
6. Write a program to check whether the entered number is prime or not.
7. Admission to a professional course is subject to the following conditions:
a. Marks in mathematics >= 60
b. Marks in physics >= 50
c. Marks in chemistry >= 40
d. Total in all three subjects >= 200 or total in mathematics and physics >=
150 Given the marks in the three subjects, write a program to process
the applications to list an eligible candidate.
8. Write a program to calculate the area of circle/rectangle/triangle. Determine
whose area is to be calculated by accepting the code from the user. Use switch
case where c indicate circle, r indicates rectangle,t indicates triangle.
9. Use symbolic constant to define the value of pie.
10. Write a program to swap the values of two variables. Print the following triangle.
abcde
abcd
abc
ab
a
11. Generate the following "pyramid" of digits, using nested loops
1
232
34543
4567654
567898765
67890109876
7890123210987
890123454321098
90123456765432109

7
12. Write a program to generate the following
ABCDEFGHGFEDCBA
ABCDEFG GFEDCBA
ABCDEF FEDCBA
ABCDE EDCBA
ABCD DCBA
ABC CBA
AB BA
AA
13. Write a program to find the smallest divisor of an integer.
14. Write a program to find the greatest common divisor of two integers.
15. Write a program to add first n natural numbers.
16. Write a program to generate Fibonacci series.
17. Write a program to print the multiplication table.
18. Write a program to find a factorial of the entered number.
19. Write a program to print all the numbers and sum of all the integers that are
greater than 100 and less than 200 and are divisible by 7.
20. Write a program to sort a given array in ascending order.
21. Given the two 1-D arrays A and B, which are sorted in ascending order. Write a
program to merge them into a single sorted array C that contains every item
from arrays A and B, in ascending order.
22. Write a program to find string length.
23. Write a program that appends one string to another string.
24. Write a program that finds a given word in a string.
25. Write a program to evaluate f(x) = x – x3/3! + x5/5! – x7/7! + ……
26. Write a function which returns 1 if the given number is palindrome otherwise
returns 0.
27. Write a function that will scan a character string passed as an argument and
convert all lower-case characters into their upper-case equivalent.
28. Write a function to reverse the string.
29. Write a 'c' program that reads in two matrices and multiply them. Display The
resultant matrix.
30. Write a 'c' program that reads in two matrices and add them. Display the
resultant matrix.
31. Write a program to remove the duplicates from an ordered array.
32. Write a program to use a pointer variable in function and perform operation on
pointers.
33. Write a program to use a pointer with a single dimensional array.
34. Write a program to use pointers with multi-dimensional arrays.
35. Write a program to define structure and access to it.
36. Write a program which uses structure with functions.
37. Write a program to define the Union.
***** ***** *****

8
Gujarat University Ahmedabad
B. Sc. Semester – III
Syllabus for Computer Science Theory & Practical
(Academic Year 2022 – 23)

B. Sc. Computer Science SEM-III

CODE Titles Theory Practical

COM-201 Object oriented Programming using 4 Hours/week


C++ and Data Structure

COM-202 ASP. NET 4 Hours/week

COM-203 Practicals (Based on Object oriented 6 Hours/week


programming using C++, Data
structure and ASP.net)

Teaching Scheme
Unit Object oriented ASP. NET Practicals (Based on
Programming using Object oriented
C++ and Data programming using
Structure C++, Data structure
and ASP.net)

COM – 201 COM – 202 COM – 203

4 Credit 4 Credit 2.5 Credit

Total 100 Marks Total 100 Marks Total 100 Marks

Internal 30 Marks Internal 30 Marks Internal 30 Marks

External 70 Marks External 70 Marks External 70 Marks

4 hrs/Week 4 hrs/Week 6 hrs/Week

I Object oriented ASP.NET - I Practical


Programming - I Exercises

II Object oriented ASP.NET - II *As per Gujarat University


Programming - II Ordinance for CBCS BSc
Programme, O.B.Sc.9, the 6
III Data Structure - I ASP.NET - III Hrs/week practical will be of
2.5 credits.
IV Data Structure - I ASP.NET - IV

9
Course Code: COM 201
Course Name: Object oriented Programming using C++ and Data Structure

Unit – 1
1. Introduction
▪ Object oriented programming and procedure Basic concept of Object oriented
programming ▪ Advantages of Object oriented programming ▪ Application of Object
oriented programming ▪ Basic structure of C++ ▪ Library files in C++ o ios, conio,
math, stdlib ▪ Input /Output operators ▪ Data types o Basic data type o User defined
data type o Derived data type ▪ Declaration of variable with memory concept ▪
Variables o Reference variable o Dynamic variable ▪ Basic operators in C++ ▪ Scope
resolution operator ▪ Memory management operator and manipulators ▪ Memory
reference operator ▪ Type casting

2. Classes and Objects.


▪ Difference between class and structure ▪ Implementation of class ▪ Creating object of
class ▪ Memory allocation for object ▪ Data member and member function ▪ Access
modifier ∙ Public ∙ Private ∙ Protected ▪ Static data member and function ▪ Array of
object ▪ „this‟ keyword ▪ Namespaces ▪ Function Return type ▪ Function prototype ▪
Call by value ▪ Call by reference ▪ Call by address ▪ Different types of function o Inline
function Recursive function o Friend function o Types of argument
o Default argument ▪ Constant value as a argument ▪ Constructor destructors

3. Function overloading, copy constructors and Default arguments.


▪ Function overloading. ▪ Overloading constructor functions ▪ Copy constructors ▪
Default function arguments

Unit – 2
4. Operator overloading
▪ Creating a member Operator Function ▪ Operator overloading using friend functions.
▪ Overloading new and delete ▪ Overloading some special Operators.
5. Inheritance
▪ Base class Access control ▪ Inheritance and protected members ▪ Inheriting multiple
base classes. ▪ Constructor destructors and inheritance
▪ Virtual base class
6. Virtual functions and polymorphism
▪ Pure virtual Functions ▪ Pointer to Objects ▪ Virtual Functions
7. Working with File
▪ Streams and stream classes. ▪ formatted I/O ▪ File I/O ▪ Opening and closing files. ▪
Reading and writing text files. ▪ Unformatted and binary I/O
8. Templates
▪ Introduction of Templates ▪ Class and Function Templates ▪ Class and Function with
Multiple Parameters ▪ Overloading of Template Functions. ▪ Member Function.
9. Exception Handling
▪ Exception Handling Mechanism ▪ Throwing , Catching Mechanism

10
Unit – 3:
10. Introduction to Data Structure.
▪ Data Management Concepts.
▪ Data Types-Primitive and Non-Primitive.
▪ Types of Data Structures-Linear and Non Linear.

11. Linear Data Structure.


Arrays ▪ Single and multidimensional array. ▪ Storage Representation. ▪ Operations
Stack ▪ Stack-Definition & Concepts ▪ Operations on Stacks ▪ Applications of Stacks
▪ Polish Expression and Reverse Polish Expression ▪ Recursion ▪ Tower of Hanoi
Queue ▪ Types of Queue. ▪ Operation on Queue. ▪ Applications of Queue.
Linked List ▪ Types of Linked List. ▪ Operations on Linked List. ▪ Applications of
Linked List.

Unit – 4
12. Non-Linear Data Structure.
Tree ▪ Properties of trees ▪ Binary search trees ▪ Binary tree traversal - Inorder,
Postorder, Preorder
Graph ▪ Basic Concept of Graph Theory and its Properties ▪ Elementary Graph
▪ Operations, Breadth First Search, Depth First Search, ▪ Spanning Trees, Shortest
path, Minimal spanning tree

13. Sorting & Searching


Sorting
▪ Bubble Sort ▪ Selection Sort ▪ Insertion Sort ▪ Quick Sort
Searching
▪ Linear Search. ▪ Binary Search.

Recommended Reference Books:-


∙ The complete reference C++ : Herbert Schildt, TMH.
∙ Object Oriented Programming in C++ - Addition Wesley.
∙ Object Oriented Programming in C++ - Balaguruswamy.
∙ An Introduction to Data Structures with Applications. by Jean-Paul Tremblay & Paul G. Sorenson
Publisher-Tata McGraw Hill.
∙ Fundamentals of Data Structures in C++-By Sartaj Sahani.
∙ Aho A.V., Hopcroft and Ullman, Data Structure and Algorithms , Addison-Wesley.

11
Course Code: COM 202
Course Name: ASP. NET

Unit : 1
1. Overview of Microsoft.NET Framework
▪ What is.NET Framework and it‟s benefits
▪ .NET Framework Components (CLR, CLS, CTS, MSIL, NameSpace, JIT,
▪ MetaData,FCL,Assembly, GC, Memory Management)
▪ The. NET Framework class Library
▪ NET Web Services.
▪ Introduction to Ms Visual Studio. NET

2. ASP.NET Programming Language.


▪ Building Web Sites
o Set up of work environment, start page, the menu system, toolbars,
the new project dialog box, graphical designer, code designer.
▪ Data Types, Type Conversion Functions, Operators and Expressions.
▪ Variable Declaration: Levels, Lifetime, Scope and Accessibility.
▪ Array: Multidimensional, Jagged Array.
▪ Collections, User-Defined Data Types.
▪ Decision Structures
▪ Loop Structures: While, Do.. Loop, For.. Next, For Each…Next, with… End
With. ▪ Nested Control Statements, Exit & End Statements
▪ Procedures.

Unit : 2
3. Develop simple web page using built in Objects
▪ Adding Controls to the Web Page
▪ Types of ASP.NET Files
▪ Page Life Cycle
▪ Web Form Processing Stages (Roundtrip)
▪ ASP.Net In-Built Objects (Response, Request, Server, Trace Objects)

Unit : 3
4. Web Server Controls
▪ Button, Check Box, Check Box List, Drop Down List, HyperLink, Image, Image
Button, Label, Link Button, List Box, List Item, Panel, Place Holder, Radio
Button, Radio Button List, Text Box
▪ Working with Control Properties and Events
▪ Validation Controls (Required Field Validator, RangeValidator Control, Compare
Validator, RegularExpression Validator, CustomValidator, Validation Summary)

12
5. Apply Styles, themes and Master pages in ASP.NET Web applications.
Styles
▪ Creating Style Sheets
▪ Applying Style Sheet Rules
Themes
Master Page
▪ Basics of Master page
▪ How Master page and Content pages are connected

Unit : 4

6. Develop programs using session management and user’s preference in


ASP.NET ▪ View State
▪ The Query String
▪ Cross-Page Posting and Validation
▪ Cookies (create, set, add and expire cookie)
▪ Session State
▪ Application State
▪ ASP.NETConfiguration
▪ TheWeb.conf File
▪ Storing Custom Settings in the web.config file

7. Connecting Database with ADO.NET

▪ ADO.NET Architecture
▪ DataProvider
▪ Connection Object
▪ Command Object
▪ DataReader Object
▪ DataAdapter Object
▪ DataSet
▪ DataView
▪ Data Binding
▪ SQL Data Source
▪ Selecting, Updating and Deleting Records

Reference Books
1. ASP.NET Bible By MridulaParihar, et al. – IDG Books India.
2. ASP.NET: The Complete Reference Books Matthew Macdonald McGraw Hill
education.
3. ASP.NET Black Book By Kogent Solutions Inc. – Dreamtech Press
4. Building XML Web Services for ASP.NET By Bill Evjen – Wiley Dreamtech.

13
Course Code: COM 203
Course Name: Practicals (Based on Object oriented programming using C++, Data
structure and ASP.net)

List of Practicals:
C++ Practical List

1. Create a class called Temperature. Users can give temperature in either Celsius or
Fahrenheit. Output must be in both the forms.
2. Write a program that contains a function to exchange values of two arguments
(swap) by using pointers and reference parameters.
3. Write a program to take name, address as character array, age as int, salary as
float and contains inline functions to set the values and display it.
4. Write a program to enter any number and find its factorial using constructor.
5. Write a program to generate a Fibonacci series using a copy constructor.
6. Write a program to find the biggest of three numbers using the friend function.
7. Write a program to find the sum of two numbers declared in a class and display the
numbers and sum using friend class.
8. Create a class to keep track of the number of its instances. Use static data
member, constructors and destructors to maintain updated information about
active objects.
9. Write a program to demonstrate the use of “this” pointer.
10. Write a program for finding area of different geometric shapes (circle, Rectangle,
cube). Use function overloading with type, order, sequence of arguments to find the
area of shapes.
11. Define a class to represent a String. Overload +, == and = operators for
concatenation, comparison And copying of two Strings.
12. Write a program to calculate gross and net pay of employees from basic salary.
Create an employee class which consists of employee name, emp_id, and basic
salary as its data members. Use a parameterized constructor in the derived class
to initialize data members of the base class and calculate gross and net pay of the
employee in the derived class.
13. Write a program to overload unary increment(++) operators.
14. Write a program to add two matrices of mxn size using binary operator
overloading.
15. Define a class called list. Derive the classes stack and Queue from it. Define pure
Virtual functions insert () and delete () in the class list, and override them to all its
successors and implement dynamic polymorphism.
16. Write a program which shows the use of various formatting ios functions and their
equivalent manipulators. Create at least two manipulators of your choice.
17. Write a program to read a text and replace “this “with “that” and write the output to
another file.
18. Write a program to create binary file to store Employee details. Insert 10 records to
that file and display the specific record as per the employee code.

Data Structure Practical List


1. Introduction to pointers. Call by Value and Call by reference.

14
2. Introduction to DynamicMemoryAllocation. DMA functions malloc() ,calloc(),
free() etc.
3. Implement a program for stack that performs following operations using arrays.
(a) PUSH(b)POP(c)PEEP(d)CHANGE(e)DISPLAY
4. Implement a program to convert infix notation to postfix notation using stack.
5. Letstack_ptr be a pointer to a stack of integers and an item be an integer
variable.Write function like Push, Pop, Initialize, Empty, and Full for doing the
following tasks. [You may declare additional variable in your functions in
needed]
a. Returnturn the top element of the stack and leave the top element
unchanged. If the stack isempty, return INT_MAX.
b. Return the third element from the top of the stack, provided that the
stack contains at least three integers. If Not, return INT_MAX. Leave
The Stack Unchanged.
c. Returns the bottom element of stack ( or INT_MAX if stack empty), and
leave the stack unchanged.
d. Delete all occurrences of x from the stack, leaving the other elements of
the stack in the same order.
6. Write a program to implement QUEUE using arrays that perform following
operations (a)INSERT(b) DELETE(c)DISPLAY
7. Write a program to implement Circular Queue Using arrays that Perform.
Following Operations.(a)INSERT (b)DELETE (c)DISPLAY
8. Use The Functions Developed to write other functions that will
a. Empty one stack onto the top of another stack
b. Move all the items from a queue onto a stack.
c. Start with a queue and an empty stack, and use the stack to reverse the
order of all the items in the queue.
9. Write a menu driven program to implement following operations on singly linked
list.
a. Insert node At the front of the linked list.
b. Insert a node at the end of the linked list.
c. Insert a node such that the linked list is in ascending order.(according to
infofield)
d. Delete A First Node Of The Linked List.
e. Delete A Node Before Specified Position.
f. Delete A Node After Specified Position.
10. Write a Program to implement stack using linked list.
11. Write a program to implement Queue Using Linked List.
12. Write a program to implement following operations on the doubly linked list.
a. Insert a node at the front of the Linkedlist.
b. Insert a node at the end of the linkedlist.
c. Delete Last Node Of The Linkedlist.
d. Delete A Node Before Specified Position.
13. Write a program to implement the following operations on the circular linked list.
a. Insert a node at the end of the linked list.
b. Insert a node before the specified position.
c. Delete A First node of the linked list.
d. Delete A Node After Specified Position.

15
14. Write a Program Which Creates a Binary Search Tree.
15. Implement recursive and non-recursive tree traversing methods in order ,
preorder and post-order traversal.
16. Write a program to implement BubbleSort, MergeSort, QuickSort.
17. Write a program to implement BinarySearch.

ASP.NET Practical List


1. Getting acquainted with the Visual Studio environment. (Create new web
project, open existing web project, building website, and study of toolbars,
menu etc.)
2. Create a Simple calculator with validations and details.
3. Create a web page using the concept of cascading style sheets in ASP.NET.
4. Create a web page using the concept of Theme in ASP.NET.
5. Create Home page of your website using master page concept.
6. Develop a web page to implement the concept of state management using
Session.
7. Create a login page in your web application. Login page must have user name
and password fields. If user enters correct ID, Password, he must be redirected
to the homepage of your website.
8. Create a web page to insert user biodata information with all validations into the
database.
9. ADO.NET code to show records in Gridview control.
10. ADO.NET code to insert, update and delete records from database.

16
Gujarat University Ahmedabad
B. Sc. Semester – IV
Syllabus for Computer Science Theory & Practical
(Academic Year 2022 – 23)

B. Sc. Computer Science SEM-IV

CODE Titles Theory Practical

COM-204 PHP With Mysql 4 Hours/week

COM-205 Relational Database Management 4 Hours/week


System

COM-206 Practical (Based on PHP and 6 Hours/week


PL/SQL)

Teaching Scheme
Unit PHP With Mysql Relational Database Practical (Based on
Management System PHP and PL/SQL)

COM – 204 COM – 205 COM – 206

4 Credit 4 Credit 2.5 Credit

Total 100 Total 100 Total 100


Marks Marks Marks

Internal 30 Internal 30 Internal 30


Marks Marks Marks

External 70 External 70 External 70


Marks Marks Marks

4 hrs/Week 4 hrs/Week 6 hrs/Week

I PHP - I RDBMS - I Practical


Exercises
II PHP - II RDBMS - II
*As per Gujarat University
Ordinance for CBCS BSc
III PHP - III RDBMS - III Programme, O.B.Sc.9,
the 6 Hrs/week practical
will be of 2.5 credits.
IV PHP - IV RDBMS - IV

17
Course Code: COM 204
Course Name: PHP With Mysql

Unit: 1
1. Introduction to PHP
∙ Evaluation of Php ∙ Basic Syntax ∙ Defining variable and constant ∙ Php Data type ∙
Operator and Expression
2. Decisions and loop
∙ Making Decisions ∙ Doing Repetitive task with looping ∙ Mixing Decisions and
looping with Html

Unit: 2
3. Function
∙ What is a function ∙ Define a function ∙ Call by value and Call by reference ∙
Recursive function ∙ String Creating and accessing ∙ String Searching & Replacing
String ∙ Formatting String ∙ String ∙ Related Library function
4. Array
● Anatomy of an Array ● Creating index based and Associative array Accessing array
● Element ● Looping with Index based array ● Looping with associative array using
each () and foreach()
5. Ajax ∙ Introduction of Javascript and Ajax ∙ Different Between Javascript and Ajax

Unit: 3
6. Working with file and Directories
● Opening and closing a file ● Understanding file& directory
● Coping renaming and deleting a file ● Working with directories
● Creating and deleting folder ● File Uploading & Downloading

7. Session , Cookie and Database


● Session Functionality what is a Cookie ● Setting Cookies with PHP using Cookies
with Sessions ● Deleting Cookies ● Registering Session variables
● Destroying the variables and Session Connection with MySql Database
● Performing basic database operation (DML) (Insert, Delete, Update, Select)
● Setting query parameter ● Executing query Join (Cross joins, Inner joins, Outer
Joins, Self joins.)
Unit: 4
8. Exception Handling
● Try, catch, and throw Error tracking and debugging ● Understanding Exception and
error

Reference Books
1 The complete Reference PHY by Stever Holzner : McGrow Hill 2. PHP 5.0 and MySql Bible Tim
Converse, Joyce Park, Clark Morgan, Publishers: John Wiley & Sons 3. MySql Bible by Steve
Suehring Publisher: John Wiley & Sons 4. PHP Black Book by Peter Moulding 5. Beginning PHP
5.3 by Matt Doyle - By Wrox Publication 6. MySql Bible by Steve Suehring Publisher: John Wiley
& Sons

18
Course Code: COM 205
Course Name: Relational Database Management System

Unit – 1
1. Introduction to DBMS
● What is a database? ● Requirement of database system.
● Data models and data independence. ● DDL, DML
● Database Manager, Database Administrator.

2. PL/SQL
● Overview of PL/SQL ● PL/SQL Block ● Various types of data, conventions and
terminology ● Retrieval of information from tables. :
Making a query, SELECT command, column reordering, Use of relational
operators, use of Boolean operators, operations like IN, BETWEEN, LIKE,NULL,
Not etc., Aggregate functions, COUNT, GROUP By clause, HAVING clause.
● Formatting Query output:
● String and expressions, ordering output by fields, multiple columns, Aggregate
Group,Column number, ORDER BY, with NULL.
● Querying multiple tables :
Joining tables through Referential Integrity, Equijoins and other kinds of joins of
more than two tables, joining a table to itself
● Trigger ● Package ● Exception Handling ● User Defined Exceptions
● Functions, Procedures

Unit - 2
3. Subqueries
● DISTINCT with subqueries, Predicates with subqueries, Aggregate Functions in
subqueries, Correlated subqueries, Correlating tables to itself, Correlated
subqueries in HAVING, Correlated subqueries and joins EXISTS operator, using
EXISTS with Correlated sub queries, combining EXISTS and joins, special
operator ANY or SOME, ALL, UNION classes.
● Entering Deleting and Changing Field Values :
▪ DML Update command, UPDATE with multiple columns, Updating to NULL
values,
▪ INSERT command using sub queries with UPDATE commands.
● CREATE TABLE Command:
Indexing Altering a table, Dropping a table, Constraining a Table, Declaring
Constraints, PRIMARY KEY constraint, Foreign and Parent keys, Multicolumn
Foreign keys, FOREIGN KEY constraint, Foreign key restriction.
● CREATE VIEW Command: Updating views, Group views and Joins, Views and
subqueries, Changing values through views, Grant command, using ALL and
PUBLIC arguments, GRANT OPTION.

19
Unit – 3
4. Entity Relationship Models
∙ Entities and Entity sets ∙ Relationship and relationship sets
∙ Mapping constraints ∙ Primary keys ∙ Entity Relationship diagram and reducing it
to tables. ∙ Generation and Specialization. ∙ Aggregation

5. Relational Model
∙ Structure of relational database. ∙ Relation algebra.

Unit – 4
6. Relational Database Design
∙ Functional Dependencies ∙ Referential Integrity ∙ Need for Normalization
∙ Normal forms ∙ Data Dictionary ∙ Tables, Table spaces & Data files, Views.

7. Crash Recovery
∙ Failure Classification ∙ Transactions ∙ Transaction Concept, State
∙ Implementation of ACID rules ∙ Concurrent Executions ∙ Serializability,
Recoverability ∙ Incremental log with deferred and immediate updates
∙ Checkpoints ∙ Buffer Management ∙ Shadow Paging ∙ Concurrency Control ∙
Lock Based Protocols ∙ Timestamp-based Protocols ∙ Validation based protocols ∙
Deadlock Handling

Recommended Reference Books:


1. An introduction to Database Systems, C J Date, Addition-Wesley.
2. Database System Concepts, Abraham Silberschatz, Henry F. Korth & S. Sudarshan,
McGraw Hill
3. SQL- PL/SQL by Ivan bayross
4. Understanding SQL by Martin Gruber, BPB
5. Oracle – The complete reference – TMH /oracle press

20
Course Code: COM 206
Course Name: Practical (Based on PHP and PL/SQL)

PHP Practical List


1. Write a program in PHP to demonstrate the use of comments, echo and print.
2. Create a program in PHP to demonstrate the use of If ... Else and switch
statements.
3. Create an array named $sub, assign five elements to it and display the elements
assigned using for loop and for each statement.
4. Create an array named $student, that sores 5 element bonded to a different keys
and access the same using the key element.
5. Create two functions in PHP, parameterized and non parameterized for
implementing string concatenation operation.
6. Create a form containing two input fields (Name, Email_ID) and a submit button.
When the user clicks on the submit button, the form data should be sent for
processing to a PHP file, which should display the welcome message with the
email_id on the PHP page. Form data should be sent by HTTP GET/POST method.
7. Create a form containing four input fields (Pro_id, Pro_name, Pro_price, and QOH)
and Submit button. When the user clicks on the submit button an PHP script should
be executed which inserts, updater, delete, search, Display the record in the product
table.
8. Write a program that checks if a particular stuId already exists in the student (stuId,
stu_name, mob, country) table or not. If staid exists then display a message "User
Already Exist. Try another stuId". If it does not exist then add the data in the student
table. Implement using AJAX.

PL/SQL

∙ Using Variables, Constants & Data types


∙ User-Defined RECORD and TABLE data types.
∙ Assigning Database Values to variables
SELECT………………INTO ...............CURSORS.
∙ Using Flow Control Statements. The IF….THEN Statement, The LOOP statement
WHILE loops, the GOTO statement.
∙ Error handling built in PL/SQL Exceptions, User – Defined Exceptions, Unhandled
Exceptions.
∙ PL/SQL Programs
Anonymous PL/SQL Blocks, procedures, Functions, Packages, Triggers.

21
SQL Practical List
Create the following Three Tables.
1. Salesman
SNUM SNAME CITY COMMISSI
ON

1001 PIYUSH LONDON 12%

1002 NIRAJ SURAT 13%

1003 MITI LONDON 11%

1004 RAJESH BARODA 15%

1005 ANAND NEW 10%


DELHI

1006 RAM PATAN 10%

1007 LAXMAN BOMBAY 09%


SNUM: A Unique number assign to each salesman
SNAME: The name of Salesman
CITY: The location of salesman
COMMISSION: The salesman commission on order

2. Customer
CNUM CNAME CITY RATING SNUM

2001 HARDIK LONDON 100 1001

2002 GITA ROME 200 1003

2003 LAXIT SURAT 200 1002

2004 GOVIND BOMBAY 300 1002

2005 CHANDRESH LONDON 100 1001

2006 CHAMPAK SURAT 300 1007

2007 PRATIK ROME 100 1004

CNUM : A Unique number assigned to each customer. CNAME: The name of the
customer.
CITY : The location of the customer.
RATING: A level of preference indicator given to this customer.
SNUM : A salesman number assigned to this customer.

22
3. Order
ONUM AMOUNT ODATE CNUM SNUM

3001 18.69 10/03/99 2007 1007

3002 767.19 10/03/99 2001 1001

3003 1900.10 10/03/99 2007 1004

3004 5160.45 10/03/99 2003 1002

3005 1098.25 10/04/99 2007 1007

3006 1713.12 10/04/99 2002 1003

3007 75.75 10/05/99 2004 1002

3008 4723.00 10/05/99 2006 1001

3009 1309.95 10/05/99 2004 1002

3010 9898.87 10/06/99 2006 1001

ONUM : A Unique number assigned to each Order.


AMOUNT: Amount of order in Rs.
ODATE : The date of order.
CNUM : The number of customers making the order.
SNUM : The number of salesmen credited with the sale.

Solve the following request with the help of SQL query.


1. Produce the order no, amount and date of all orders.
2. Give all the information about all the customers with salesman number 1001
3. List out names and cities of all salesmen in London with commission above 10%
4. List all customers excluding those with rating <=100 or they are located in Rome.
5. List all orders for more than Rs.1000 except the orders of snum, 1006 of 10/03/99.
6. List all orders taken on 10th march or april 1999.
7. List all customers whose name begins with a letter ‘C’.
8. List all customers whose name begins with letter ‘A’ to ‘G.
9. Find out the largest orders of salesmen 1002 and 1007.
10.Count all orders of 10-Mar-99.
11. Count the no. of salesmen currently having order.
12.Find the largest order taken by each salesman on each date.
13.Find the largest order taken by each salesman on 10/03/1999.
14.Find out each customer’s smallest order.
15.List all salesmen with their % of commission.
16.Display the no. of order for each day in the following format. FOR dd-mon-yy, there are
orders.
17.Assume each salesperson has a 12% commission. Write a query on the order table that will
produce the order number, salesman no and amount of commission for that order.
18.Find the highest rating in each city.

23
19.List all customers in descending order of rating.
20.Show the name of all customers with their salesman’s name.
21.List all customers and salesmen who share the same city.
22.List all orders with the names of their customer and salesman.
23.List all orders by the customers not located in the same city as their salesman.
24.List all customers serviced by salesmen with commission above 12%.
25.List all customers located in cities where salesman Niraj has customers.
26.List all salesmen who are living in the same rating without duplication.
27.Produce the name and city of all the customers with the same city as Hardik.
28.Extract all orders of Miti.
29.Extract all orders of Baroda’s salesmen.
30.Find all orders of the salesmen who services ‘Hardik’.
31.List all orders that are greater than the average of April 10, 1999.
32.Find all orders attributed to salesmen in ‘London’.
33.List the commission of all salesmen serving customers in ‘London’.
34.Find all customers whose cnum is 1000 above than the sum of Niraj.
35.List all orders of the customer ‘Chandresh’.
36.Find all customers with orders on 10th March, 1999 using correlated subquery.
37.List the name and number of all salesmen who have more than zero customers.
38.Calculate the total amount ordered on each day eliminating the days where the total amount
was not at least Rs. 2000 above the maximum amount of that day.
39.Using correlated subquery find the name and number of all customers with rating equal to
maximum for their city.
40.Find all salesmen who have customers with rating > 300.
41.List all salesmen with customers located in their cities.
42.Find all salesmen for whom there are customers that follow them alphabetically.
43.Find all customers having a rating greater than any customer in ‘Rome’.
44.List all orders that have an amount greater than at least one of the orders from 10th June,
1999.
45.Find all orders with amounts smaller than any amount for a customer in ‘Rome’.
46.Find all the customers who have greater ratings than every customer in ‘Rome’.
47.List all customers whose ratings are equal to or greater than ANY ‘Niraj’.
48.Find out which salesmen produce largest and smallest orders on each date.
49.Create a union of two queries that shows the names, cities and ratings of all customers.
Those with rating of >=200 should display ‘HIGH RATING’ and those with < 200 should
display ‘LOW RATING’.
50.Insert a row into the salesmen table with the values snum is 100 salesmen name is Rakesh,
city is unknown and commission is 14%.
51.Insert a row into the customer table with values London, Pratik a 2005 for the columns city,
name and number.
52.Create another table London staff having the same structure as the salesmen table.
53.Insert all the rows of the salesmen table with city London in the London staff table.
54.Create another table Day totals with two attributes date and total and insert rows into this
table from the order table.
55.Create a duplicate of the salesmen table with a name Multicust. Now delete all the rows from
the salesmen table.
56.Get back all the rows of the salesmen table from its duplicate table.
57.Remove all orders from customer chandresh from the orders table.
58.Set the ratings of all the customers of Piyush to 400
59.Increase the rating of all customers in Rome by 100
60.Salesman Miti has resigned. Reassign her number to a new salesmen Gopal whose city is
Bombay and commission is 10%
61.Double the commission of all salesmen of London.

24
62.Set ratings for all customers in London to NULL.
63.Suppose we have a table called Sales Manager with the same definition as Salesmen table.
Company decides to promote salesmen having a total order more than 5000 to sales
Manager. Fill up the sales Manager table.
64.Assume that we have a table called simcity. Store the information of all salesmen with the
customers in their home cities into simcity.
65.Create a table Bonus that contains date wise maximum amount of order for all salesmen.
66.Create a table Multicast containing the salesmen with more than one customer.
67.The New Delhi office has closed. Remove all customers assigned to salesmen in New Delhi.
68.Delete all salesmen who have at least one customer with a rating of 100 from the salesmen
table.
69.Delete the salesmen who produce the lowest order for each day.
70.Find the smallest order for each day. Reduce the commission of all salesmen by 2% who
produce this order.
71.Delete all customers with no current orders.
72.Write a command to find out the orders by date.
73.Write a command to add the item-name column to the order table.
74.Create a copy of your order table. Drop the original order table.
75.Write a command to create the order table so that all enum values as well as all
combinations of cnum and snum are different from one another and so that NULL values are
excluded from the date field.
76.Write a command to create the salesmen table so that default commission is 10% with no
NULL permitted, snum is the primary key and all names contain alphabets only.
77.Give the commands to create our sample tables (salesmen, customer, orders) with all the
necessary constraints like PRIMARY KEY , NOT NULL UNIQUE, FOREING KEY.
78.Create a view called Big orders which stores all orders larger than Rs. 4000.
79.Create a view Rate count that gives the count of no. of customers at each rating.
80.Create a view that shows all the customers who have the highest ratings.
81.Create a view that shows all the numbers of salesmen in each city.
82.Create a view that shows the average and total orders for each Salesman after his name and
number.
83.Create a view that shows all the salesmen with multiple customers
84.Create a view to keep track of the total no of customers ordering, no of salesmen taking
orders, the no of orders, the average amount ordered, and the total amount ordered for each
day.
85.Create a view show name that shows for each order the order no, amount, salesmen name
and the customer name.
86.List all orders of salesmen ‘Rajesh’ using the show name view along with his commission.
87.Create a view Max sales to store the name and number of salesmen, along with the date,
who have the highest order on any given date.
88.Using the above view, find out the name and number of salesmen who have the highest
order at least two times. Store the result in another view.
89.Create a view of the same city that shows the no and name and city of the customers along
with the city of the salesmen serving them.
90.Create a view commission of salesmen table to include only snum and commission field so
that through. This view allows someone to enter or change the commission but only to values
between 10% and 20%.
91.Assume that the CURDATE is a constant representing the current date. Give a command to
create an orders table with CURDATE as a default date.
92.List all salesmen in London who had at least one customer located there as well.
93.List all salesmen in London who didn’t have any customers there.

25
PL/SQL Programs
Write a PL/SQL block to find the given numbers are ODD or EVEN.
1. Write a PL/SQL block to find the factorial of a given number.
2. Write a PL/SQL block to find the maximum number from given three numbers.
3. Write a PL/SQL block to find the sum of the first 100 natural Nos.
4. Write a PL/SQL block to display the pyramid using any character.

Procedure Programs
1. Write a procedure to check if the given year is a leap or not.
2. Write a procedure to display the following type of Multiplication Table as per given
number.
5*1=5
5 * 2 = 10
““=“
““=“
5 * 10 = 50
3. Write a procedure to display this kind of output on screen.
1
23
345
4567
56789
. . . . . . . . 90 91
4. Write a procedure to convert a given octal number to a decimal number.

Function Programs
1. Write a function to check whether the given number is prime or not.
2. Write a function to find the sum of digits of accepted no.
3. Write a function to display the first 25 Fibonacci nos.
4. Write a function to display the reverse string of a given string.

Package Programs
1. Write a package that has a function that checks if the given string is palindrome or not.
2. Write a package that has a procedure to find 1 + 1/2 + 1/3 +...........+ 1/n.
3. Write a package that has a function to check if a given number is not negative and a
procedure to convert the given number into words. For example 25 = Twenty Five.

Trigger Programs
1. Write a trigger on insert to convert the name into capital letters.
2. Write a trigger to check if the pin code is exactly six digits or not.
3. Write a trigger to check the mark is not zero or negative.

26
Gujarat University
B. Sc. Semester - V (Computer Science) Syllabus
Academic Year 2022- -23
B. Sc. Computer Science SEM-V

CODE Titles Theory Practical

COM-301 Software Engineering - I 4 Hours/Week

COM-302 Computer Networks 4 Hours/Week

COM-303 JAVA Programming - I 4 Hours/Week

COM-304 Basic Android Programming 4 Hours/Week

COM-305 Generic Elective (Any one) 2 Hours/Week


Artificial Intelligence / Introduction to Cyber Security

COM-306 Practicals (Based on Java Programming – I and 12 Hours/Week


Android)

Unit COM – 301 COM – 302 COM – 303 COM – 304 COM – 305 COM – 306

4 Credit 4 Credit 4 Credit 4 Credit 2 Credit 5 Credit

Total 100 Marks Total 100 Marks Total 100 Marks Total 100 Marks Total 100 Marks Total 200 Marks

Internal 30 Internal 30 Internal 30 Marks Internal 30 Marks Internal 30 Marks Internal 60 Marks
Marks Marks

External 70 External 70 External 70 External 70 Marks External 70 Marks External 140 Marks
Marks Marks Marks

4 Hrs/Week 4 Hrs/Week 4 Hrs/Week 4 Hrs/Week 2 Hrs/Week 12 Hrs/Week

I Introduction Network Introduction Introduction to Student has to Group A : 100


to Software Fundamental to JAVA Android, Activities, select one Group B : 100
Engineering s Fragments and subject
Intents elective A group - 28
course from experiments,
II Software OSI Model Fundament Android User below, B group - 14
development als of JAVA Interface experiments
processes AI
& Cyber security Total 42
III Requirement Hardware & Java Designing your user Experiments
& Software Packages, interface with views,
*As per Gujarat
Specification Interfaces & Displaying
University
Threads pictures and menus
Ordinance for
CBCS BSc
IV Software Security Java Database-
Programme,
Designing Issues, Exception Sqlite, Messaging
O.B.Sc.9, the 12
Concept & Handling and
Hrs/week
Terminology Email practical will be of
5 credits.

27
Course Code: COM 301
Course Name: Software Engineering - I

Unit : 01
1 Introduction to Software Engineering
1.1 Software
1.1.1 Software & Software Types
1.1.2 software characteristics & problems
1.1.3 Introduction to Software quality
1.2 Software Engineering & problem related to it
1.3 Software engineering approach
1.3.1 Introduction to phased development approach
1.3.2 Project management activities
1.3.3 Introduction to effort distribution

Unit : 02
2 Software Development Processes
2.1 Relationship between Processes, Projects and Products
2.2 Software process models
2.2.1 Linear sequential/ waterfall model
2.2.2 Prototype model
2.2.3 RAD model
2.2.4 Incremental model
2.2.5 Spiral model
2.2.6 Agile Model

Unit : 03
3 Software Requirement analysis & specification
3.1 Introduction to requirement analysis & specification
3.1.1 Need for analysis
3.1.2 Activities, roles & responsibilities
3.2 Software requirements- Characteristics & issues
3.3 Requirement gathering formal & informal techniques
3.3.1 Interviews
3.3.2 Questionnaires
3.3.3 System walk through
3.3.4 Document survey
3.3.5 Introduction to FAST , QFD & JAD
3.4 Requirement modeling
3.4.1 Elements of analysis models
3.4.2 Structured modeling – data modeling, functional modeling,structure
behavior , data, attribute, relationship, cardinality &ERD
3.4.3 Functional modeling – DFD & process specification
3.4.4 Introduction to behavioral modeling

28
3.4.5 Data Dictionary
3.5 Software Requirement Specification
3.5.1 Structure & Component of SRS
3.5.2 Characteristics of SRS
3.6 Introduction to Requirement validation

Unit : 04
4 Software Designing
4.1 Introduction to Design
4.1.1 Importance of design
4.1.2 Relationship between analysis & design
4.1.3 Design Principals
4.2 Design Concepts
4.2.1 System level design concepts – Abstraction, Refinement ,
Modularity, Structural Partitioning & Structured Charts
4.2.2 Module level design concepts – Coupling , Cohesion

REFERENCE
1. Software Engineering: A Practitioner’s Approach, 4e/5e,Roger S.Pressmann,
McGrawHill Publication
2. Integrated Approach to Software Engineering, Pankaj Jalote, Narosa Publication.
3. Software Testing , Ron Patton, SAMS-Techmedia Publication
4. Practical Project Management, Ivan Bayross, Firewall Media.
5. Microsoft Ofice Project 2003 Bible, Elanic Marmel, Wiley Publishing
6. Software Engineering, K. K. Aggrawal, Yogesh Singh, New Age International
Publishers.
7. Fundamentals of Software Engineering, carlo Ghezzi, Mehdi Jazayeri, Dino Mendrilo,
PHI.
8. Software Engineering, Ian Summwerville, Addison Wesley-Pearson Education.
9. Software Engineering, K. L. James, PHI

29
Course Code: COM - 302
Course Name: COMPUTER NETWORKS

Unit: 01
1. Network Fundamentals
1.1 Introduction to Networks, Network topologies and types of networks.
1.1.1. What is networking?
1.1.2. Exchange, sharing, preserving and protecting information, Need, Uses and
advantages of Network.
1.1.3. Network in work places (Personnel and Tasks)
1.1.4. Network topologies (Bus, Star, Ring, Star Bus, Star Ring, Mesh)
1.1.5. Transmission media (Wires, Types of Cables)
Unit: 02
2. OSI Model
2.1 Introduction to OSI Model
2.2 OSI Model Lower layer function (Physical and Data Link Layers), OSI Model
Middle
Layer Function (network and transport Layers), OSI Model Upper Layer
Function (Session, Presentation and Application Layers)
2.3 IEEE 802 Standards: - 802.3,802.4,802.5.
2.4 TCP/IP Protocol suites, Types of protocol – IP, TCP, UDP, DHCP, DNS.

Unit: 03
3. Network hardware and Software
3.1 Network Cards and Cables, Repeaters, Hubs, Routers and Bridges.
3.1.1. Network cards, repeaters – its use and selection criteria.
3.1.2. Splitting up networks
3.1.3. Bridges – Use and working of bridges
3.1.4. Switches - Use and full duplex operation & modes of switches.
3.1.5. Routers – Use and working of Routers.
3.2 Fiber Optic Communication
3.2.1 Introduction, Optical Source, Propagation in Fiber, Light detection
3.2.2 Fiber Distributed Data Interface, Advantages of Fiber Optic cables, Fiber
Optic Cables
Unit: 04
4. Data Communication System
4.1 Introduction, Facsimile(FAX), Satellite Communication, Multiple Access
Techniques, 4.2 HUB &VSAT Techniques, Digital Exchange

List of Reference Books:


1) Networking Complete, BPB Publication
2) Mastering Local Area networks, Christa Anderson & Mark Minasi, BPB Publication
3) Computer Networks, Tenenbaum, PHI, New Delhi

30
Course Code: COM 303
Course Name: JAVA Programming - I

Unit: 01
1. Introduction to Java
1.1 History of java 1.2 Versions of Java 1.3 Different programming environments
for Java 1.4 Java Documentation 1.5 OOPS Concepts

Unit: 02
2. Fundamentals of Java
2.1 Java keywords and symbols 2.2 Constants and Identifiers 2.3 Data types in
Java 2.4 Comments in java 2.5 Java Operators 2.6 Conditional statements 2.7
Control Structures in Java 2.8 this and super 2.9 Garbage collection 2.10
memory management in Java

Unit: 03
3. Java Packages and Interfaces and Threads in Java
3.1 Concepts of Package 3.2 Defining package 3.3 Importing class and
package 3.4 Concepts of Interface 3.5Defining Interface 3.6 Implementing
Interface 3.7 Implementing multiple interfaces 3.8 Extending Interface 3.9
Concepts of Abstract class 3.10 Concepts of Thread 3.11 Thread life cycle
3.12 Creating and extending Thread 3.13 Thread priorities

Unit: 04
4. Java Exception Handling
4.1 Categories of Errors 4.2 Concepts of Exception handlings 4.3 Types of
exceptions 4.4 Uncaught exceptions 4.5Nested Try clause 4.6 Throw clause
4.7 Finally Clause 4.8User defined exceptions 4.9 Difference between
Checked and Unchecked Exceptions 4.10 Throw and Throws

List of Reference Books:


1) The Complete Reference Java2, Herbert Schildt, TMH, New Delhi 2) Mastering
JAVA2, John Zukowski, BPB
3) Teach Yourself Java2 platform in 21 days, Lamey & Cadenhead, Teach Media 4) Java
in Nut shell, O’Relly Publication 5) Java Language Reference, O’Relly Publication
6) www.sun.com
7) www.tomcat.apache.org

31
Course Code: COM 304
Course Name: Basic Android Programming

Unit: 01
Introduction to Android
• Overview • History • Features of Android • Architecture of Android • Overview of
Stack • Linux Kernel • Native Libraries • Android Runtime • Application
Framework • Applications • SDK Overview • Platforms • Tools – (JDK, SDK,
Eclipse/Android Studio, ADT, AVD, Android Emulator) • Versions • Creating your
first Android Application

Activities, Fragments and Intents


• Introduction to Activities • Activity Lifecycle • Introduction to Intents • Linking
Activities using Intents • Calling built-in applications using Intents • Introduction to
Fragments • Adding Fragments Dynamically • Lifecycle of Fragment • Interaction
between Fragments

Unit: 02
Android User Interface • Understanding the components of a screen
• Views and ViewGroups • LinearLayout • AbsoluteLayout • Table Layout •
RelativeLayout • FrameLayout • ScrollLayout • ScrollView • Adapting to Display
Orientation • Anchoring Views • Resizing and Repositioning • Managing Changes
to Screen Orientation • Persisting State Information during Changes In
Configuration • Detecting Orientation Changes • Controlling the Orientation of the
Activity • Utilizing Action Bar • Adding Action Items to the Action Bar •
Customizing the Action Items and Application Icon

Unit: 03
Designing Your User Interface with Views
• Using Basic Views • TextView • Button, ImageButton, EditText, CheckBox
• ToggleButton, RadioButton, and RadioGroup Views • ProgressBar View
• AutoCompleteTextView • MultiAutoComplete TextView • View Using Picker
Views • TimePicker View • DatePicker View • Using List Views to Display Long
Lists • ListView View • Using the Spinner View • Understanding Specialized
Fragments • Using a ListFragment • Using a DialogFragment • Using a
PreferenceFragment

Displaying Pictures and Menus


• Using Image Views to Display Pictures • Gallery and ImageView views • Image
Switcher • Grid View • Using Menus with Views • Creating the helper methods •
Options Menu • Context Menu

Unit: 04
Databases – SQLite
• Introduction to SQLite • SQLiteOpenHelper and SQLiteDatabase •
Creating,opening and closing database • Working with cursors, Insert, Update,
Delete • Building and executing queries

32
Messaging and E-mail
• SMS Messaging • Sending SMS Messages Programmatically • Getting
Feedback after Sending a Message • Sending SMS Messages Using Intent •
Receiving SMS Messages
• Caveats and Warnings • Sending E-mail

Text Book:
1. Lauren Darcey and Shane Conder, “Android Wireless Application Development”, 2nd
edition, Pearson Education
Reference Books:
1. Reto Meier, “Professional Android 2 Application Development”, Wiley India Pvt Ltd
2. Mark L Murphy, “Beginning Android”, Wiley India Pvt Ltd
3. Sayed Y Hashimi and Satya Komatineni, “Pro Android”, Wiley India Pvt Ltd

33
STUDENTS ARE SUPPOSED TO SELECT ONE PAPER FROM THE GENERIC
ELECTIVE SUBJECTS

Course Code: COM 305


Course Name: GENERIC ELECTIVE-I (Artificial Intelligence)

Objectives:
The objective of the course is to
• Introduce the necessary understanding of human intelligence and to explore the
mechanisms that enable intelligent thought and action.
• Understand and learn effective ways for representing knowledge, applying intelligent
problem solving techniques & searching techniques.

Unit: 01
1. Artificial Intelligence: Its Roots and Scope
1.1AI: Early history 1.2Overview of AI Application Areas 1.3Attitudes towards
Intelligence
1.4knowledgeand human ethics 1.5Turing Test.

Unit: 02
2. Problem Solving by Searching
2.1 Problem Solving Agents 2.2 Searching for Solutions 2.3 Real World Problems
2.4 Constraint Satisfaction Search 2.5 Uninformed and Informed Search
Strategies 2.6 Searching with Partial Information 2.7 Heuristic Functions
2.8 Local Search Algorithms and Optimization Problems 2.9 Online Search
Agentsand Unknown Environments.

Unit: 03
3. First Order Predicate Logic
3.1 First Order Logic Representation 3.2 Syntax and Semantics 3.3 Extensions
and Notational Variations 3.4 Using First Order Predicate Logic 3.5 Knowledge
Engineering and Applications of Predicate Logic.

Unit: 04
4. Knowledge Representation
4.1 Semantic Nets 4.2 Frames 4.3 Conceptual Dependency 4.4 Scripts

References Books:

1.Stuart Russell and peter Norvig “Artificial intelligence-a modern approach”,2nd addition
2.George F.Lugar,”Artificial Intelligence-Structures and strategies for complex problem
solving”,5th edition, Pearson education.
3.Elaine Rich,Kevin knight,shivshankar B.Nair,”Artificial Intelligence”,3rd edition,McGraw
Hill

34
Course Code: COM 305
Course Name: GENERIC ELECTIVE-II (Introduction to Cyber Security)

Unit: I
Fundamental Of Computer Security
1.1 Basic of computer and DOS command 1.2 Computer Security models and
terms 1.3 Need for Cyber Security 1.4 Security attacks and its types
1.5 Introduction to auditing

Unit: 2
Principles of Cybersecurity
2.1 The interrelated components of the computing environment
2.2 Cybersecurity models (the CIA triad, the star model, the Parkerian hexad)
2.3 Variations on a theme: computer security, information security, and
information assurance 2.4 Firewalls and its concepts
2.4.1 Need for firewall & its types
2.4.2 characteristics of firewall

Unit: 3
Cybersecurity Management Concepts
3.1 Security governance
3.2 Management models, roles, and functions
3.3 Cryptography
3.3.1 Public key & Private Key & algorithm

Unit: 4
Introduction of Cyber Crime
4.1 Cybercrime definition and its origin
4.2 Cyber crime and information security
4.3 Classification of cyber crime & Indian perspective

TextBook
1. Computer Security Fundamentals, by Chuck Easttom, Pearson Education
2. Anti-Hacker Tool Kit (Indian Edition) by Mike Shema, Publication McGraw Hill.
Reference Book
1.Cyber Security Understanding Cyber Crimes, Computer Forensics and Legal
Perspectives by Nina Godbole and Sunit Belpure, Publication Wiley

35
Course Code: COM 306
Course Name : Practicals (Based on Java Programming – I And Android)

JAVA Practical List

1. Write a Java Program to find the Area of circle.


2. Write a Java Program to find the result of following expression
(Assume a=10,b=5)
a) (a<<2)+(b>>2)
b) (a)||(b>0)
c) (a+b*100)/10
d) a&b
3. Write a Java Program that will display the Factorial of the given number.
4. Write a Java Program that will display the sum of 1+1/2+1/3…..+1/n.
5. Write a Java Program that will display 25 Prime nos.
6. Write a Java Program to compute the sum of the digits of a given integer.
Remember, your integer should not be less than the five digits.(e.g.,if input is
23451 then sum of the digits of 23451 will be 15)
7. Write a Java Program that will accept command-line arguments and display the
same.
8. Write a Java Program to explain the use of break and Continue statements.
9. Write a Java Program to sort the elements of an array in ascending order.
10. Write a Java Program to find A*B where A is a matrix of 3*3 and B is a matrix of
3*4.Take the values in matrices A and B from the user.
11. Write a Java Program with class Rectangle with the data fields width,length,area
and color.The length,width and area are of double type and color is of string
type.The methods are set_length(),set_width(),set_colour(),and find_area().Create
two object of Rectangle and compare their area and colour.If area and color both
are the same for the objects then display “Matching Rectangles”,otherwise display
“Non matching Rectangle” .
12. Create a class Account with two overloaded constructors.The first constructor is
used for initializing,the name of account holder,the account number and the initial
amount in the account.The second constructor is used for Initializing the name of
the account holder,the account number, the addresses,the type of account and the
current balance.The Account class is having methods Deposit(),Withdraw(),and
Get_Balance(),Make the necessary assumption for data members and return
types of the methods.Create objects of Account class and use them.
13. Write a Java Program to show that private members of a super class cannot be
accessed from derived classes.
14. Write a Java Program to create a Player class.Inherit the classes Cricket_Player,
Football_Player and Hockey_Player from Player class.
15. Write a class Worker and derive classes Daily Worker and SalariedWorker from it.
Every worker has a name and salary rate.Write method Company(int hours)to
compute the week pay of every worker.A Daily Worker is paid on the basis of the
number of days s/he works.The Salaried Worker gets paid the wage for 40 hours a
week no matter what the actual hours are.Test this program to calculate the pay of
workers.you are expected to use the concept of polymorphism to write this

36
program.
16. Write a Java Program to show the usefulness of Interfaces as a place to keep
constant value of the program.
17. Create an Interface having two methods division and modules.Create a
class,which overrides these methods.
18. Write a Java Program which implements interface students which has two methods
Display_Grade and Attendance for PG_Students and UG_Students(PG_Students
and UG_students are two different classes for Postgraduate and Undergraduate
students respectively).
19. Write a program to make a package Balance in which has an Account class with
Display_Balance method in it. Import Balance package in another program to
access the Display_Balance method of Account class.
20. Write a Java Program to enable the user to handle any chance of division by zero
exception.
21. Write a Java Program to display the names and roll numbers of students.Initialize
respective array variables for 10 students. Handle Array
IndexOutOfBoundsExeption,so that any such problem doesn’t cause illegal
termination of program.
22. Create an exception class,which throws an exception if the operand is non-numeric
in calculating modules.(use command line arguments).
23. Write a program to launch 10 threads.Each thread increments a counter
variable.Run the program with synchronization.
24. Write a program for generating 2 threads,one for printing even numbers and the
other for printing odd numbers.
25. Write a Java program to input n integer numbers and display lowest and second
lowest numbers. Also handle the different exceptions possible to be thrown during
execution.
26. Write an application that accepts marks of three different subjects from the user.
Marks should be between 0 to 100, if marks of any of the subjects do not belong to
this range, generate custom exceptions out of RangeException. If marks of each
subject are greater than or equal to 40 then display message “PASS” along with
percentage, otherwise display message “FAIL”. Also write exception handling code
to catch all the possible runtime exceptions likely to be generated in the program.
27. Write a program which takes the age of 5 persons from the command line and find
the average age of all persons. The program should handle exceptions if the
argument is not correctly formatted and custom exceptions if the age is not
between 1 to 100.
28. Write a program that accepts 5 even numbers from the command line, if any of the
numbers is odd then throw custom exception OddException and count such
invalid numbers.

Basic Android Programming List:-

1. Create “Hello World” application. That will display “Hello World” in the middle of
the screen in the red color witwhite background.
2. To understand Activity, Intent
i. Create sample application with login module.(Check username and
password)

37
ii. On successful login, go to the next screen. And on failing login, alert the
user using toast.
iii. Also pass the username to the next screen.
3. Create a login application where you will have to validate EmailID (UserName).
Till the username and password is not validated , the login button should
remain disabled.
4. Create and Login application as above . On successful login , open the browser
with any URL.
5. Create an application that will pass some number to the next screen , and on
the next screen that number of items should be displayed in the list.
6. Understand resource folders :
▪ Create a spinner with strings taken from the resource folder(res >> value
folder).
▪ On changing spinner value, change image.
7. Understand Menu option.
▪ Create an application that will change the color of the screen, based on
selected options from the menu.
8. Create an application that will display toast(Message) on a specific interval of
time.
9. Understanding of UI :
▪ Create an UI such that , one screen has a list of all the types of cars.
▪ On selecting any car name, the next screen should show Car details like :
name , launch date ,company name, images(using gallery) if available,
show different colors in which it is available.
10. Understanding content providers and permissions:
▪ Read phonebook contacts using content providers and display them in the
list.
11. Read messages from the mobile and display it on the screen.
12. Create an application to make Insert , update , Delete and retrieve operations
on the database.
13. Create an application to read files from the sdcard and display that file content
to the screen.
14. Create an application to send messages between two emulators.

38
Gujarat University, Choice Based Credit System (CBCS)
B. Sc. Semester - VI (Computer Science) Syllabus
Academic Year 2022 -23
B. Sc. Computer Science SEM-VI

CODE Titles Theory Practical

COM-307 Software Engineering - 2 4 Hours/Week

COM-308 JAVA Programming - 2 4 Hours/Week

COM-309 Python Programming 4 Hours/Week

COM-310 Operating System (Theory) 4 Hours/Week

COM-311 Generic Elective (Any one) - Information Security / 2 Hours/Week


Blockchain Technology

COM-312 Practical based on JAVA Programming – II & Python 12 Hours/Week


Programming

Unit COM – 307 COM – 308 COM – 309 COM – 310 COM – 311 COM – 312

4 Credit 4 Credit 4 Credit 4 Credit 2 Credit 5 Credit

Total 100 Marks Total 100 Marks Total 100 Marks Total 100 Marks Total 100 Marks Total 200 Marks

Internal Internal Internal Internal Internal Internal


30 Marks 30 Marks 30 Marks 30 Marks 30 Marks 60 Marks

External External External External External External


70 Marks 70 Marks 70 Marks 70 Marks 70 Marks 140 Marks

4 Hrs/Week 4 Hrs/Week 4 Hrs/Week 4 Hrs/Week 2 Hrs/Week 12 Hrs/Week

I Introduction to Java Applet Introduction to Operating Student has to Java


Coding Python System select one Programming,
Concepts subject Python
elective course Programming
II Software Event Handling Function, Memory from below. And
testing of AWT Scoping & Management Project and Viva
methods Controls abstraction Information voce
Security & examination
III Project Java Swing & Structured Process Introduction to (Practicals and
management Concept of Types Management Blockchain Projects carry
JDBC Mutability,
testing
Technology equal
Exception & weightage)
assertions
*As per Gujarat
IV Software Java Servlet OOPs and Device University
quality Simple Management Ordinance for
CBCS BSc
& Risk Algorithms;
Programme,
Manageme Data Structure;
O.B.Sc.9, the 12
Nt Advanced Hrs/week practical
topics will be of 5 credits.

39
Course Code: COM – 307
Course Name: Software Engineering - 2

Unit: 01
1 Introduction to Coding
1.1 Programming Practices
1.1.1 Structured programming practices
1.1.2 Event driven programming practices
1.1.3 Object oriented programming practices
1.1.4 Coding style
1.2 Code verification
1.2.1 Code reading & statics analysis
1.2.2 Code inspection & reviews
1.2.3 Unit testing
Unit: 02
2 Software testing methods
2.1 Software testing fundamentals
2.1.1 Testing objects
2.1.2 Testing Principles & guidelines
2.1.3 Testability
2.1.4 Error, Fault, Failure & Defect.
2.1.5 Test case
2.1.6 Verification & validations
2.2 White box testing & techniques
2.2.1 Introduction to white box testing & benefits & limitations 2.2.2 Basis
path testing
2.2.3 Control flow testing
2.2.4 Data flow based testing

2.3 Black box testing & techniques


2.3.1 Introduction to Black box testing & benefits & limitations
2.3.2 Equivalence Partitioning
2.3.3 Boundary Value Analysis
Unit: 03
3 Software Project Management
3.1 Introduction of project management activities
3.2 Size, Cost & Effort estimation
3.2.1 Single variable models based estimation-LOC & FP based
estimation
3.2.2 COCOMO Models
3.3 Project team
3.3.1 Roles in software projects
3.3.2 Team Structures

40
Unit: 04
4 Risk management
4.1 Risk management overview
4.2 Risk management strategies
4.3 Risk identification & assessment
4.4 Risk mitigation, monitoring & control

Text Book
1. Integrated Approach to Software Engineering, Pankaj Jalote, Narosa Publication

Reference Book
1. Software Engineering: A Practitioner’s Approach, 4e/5e,Roger S. Pressman,
McGrawHill Publication
2. Software Testing , Ron Patton, SAMS-Techmedia Publication
3 Practical Project Management, Ivan Bayross, Firewall Media.
4. Microsoft Office Project 2003 Bible, Elanic Marmel, Wiley Publishing
5. Software Engineering, K. K. Aggrawal, Yogesh Singh, New Age International
Publishers.
6. Fundamentals of Software Engineering, carlo Ghezzi, Mehdi Jazayeri, Dino
Mendrilo, PHI.
7. Software Engineering, Ian Summwerville, Addison Wesley-Pearson
Education.
8. Software Engineering, K. L. James, PHI

41
Course Code: COM 308
Course Name: JAVA Programming - 2

Unit: 01
1. Java Applet
1.1 Life cycle of Applet
1.2 Applet Class
1.3 Invoking Applet
1.4 Passing parameters to Applet
1.5 AWT class
1.6 FONT and COLOR class
1.7 Applet Coordinates system
1.8 Frame and Panels
1.9 Displaying various shapes (Circle, line, polygons)
1.10 Displaying messages on status bar

Unit: 02
2. Event Handling of AWT controls
2.1 Concepts of Event Handling
2.2 Various components and Event Handlings of Components:
2.2.1 Button Events
2.2.2 Checkbox Events
2.2.3 Radio Button, Checkbox Events
2.2.4 List Events
2.2.5 Scrollbar events
2.2.6 Text Field events
2.2.7 Text Area events
2.2.8 Mouse Events
2.2.9 Keyboard Events

Unit: 03
3. Java Swing and Concepts of JDBC
3.1 Introduction to Swing
3.2 Swing class and its hierarchy
3.3 Swing components
3.3.1 JFrame 3.3.2 Jwindow 3.3.3 Jlabel 3.3.4 JTextField 3.3.5
Jbutton 3.3.6 JRadioButton 3.3.7 JComboBox 3.3.8 JMenuBar
3.3.9 Layout Managers
3.4 Architecture of JDBC
3.5 JDBC API classes and Interfaces
3.6 Creating DSN for database
3.7 Connectivity with Java applet

42
Unit: 04
4. Java Servlets
4.1 Server side programming with Java Servlet,
4.2 HTTP and Servlet,
4.3 Servlet API, life cycle, configuration and context,
4.4 Request and Response objects,
4.5 Getting Values from Forms and QueryStrings,
4.6 Working with Databases, Working with HTTP Headers ,
4.7 Using Hidden Fields,
4.8 Session handling and event handling,
4.9 ServletContext and ServletConfig,
4.10 Initialization Parameters, Inter-Servlet Communication with Request
4.11 Introduction to filters with writing simple filter application

TextBook
1). Programming with Java A primer 3e, Balagurusamy, McGraw Hill Companies

List of Reference Books:


1. The Complete Reference Java2, Herbert Schildt, TMH, New Delhi 2. Mastering JAVA2, John
Zukowski, BPB
3. Teach Yourself Java2 platform in 21 days, Lamey & Cadenhead, Teach Media
4. Java in Nutshell, O'Reilly Publication 5) Java Language Reference, O'Reilly Publication
5. Java Servlet Programming,Jason Hunter, SPD (O’Reilly) 6. Java Servlet & JSP Cookbook by
Bruce W. Perry O;reilly
7. Core Java, Volume II – Advanced Features, Eight Edition, Pearson
8. Professional Java Server Programming, a! Apress

43
Course Code: COM 309
Course Name : Python Programming

Unit: 01
Introduction to Python
The basic elements of python, Branching Programs, Control Structures, Strings
and Input, loops (including while..else, for..else), pass, break, continue,
iterators

Unit: 02
Functions, Scoping and Abstraction
Functions and scoping, Range function, Recursion, Global variables, Modules,
Files, System Functions and Parameters, lambda, apply, filter, map, reduce

Unit: 03
Structured Types, Mutability, Testing, Exceptions and Assertions
Strings, Tuples, Lists and Dictionaries, Lists and Mutability, Functions as
Objects, Types of testing – Black-box and Glass-box, Handling Exceptions
Assertions

Unit: 04
OOPS and Simple algorithms; data structure; Advanced Topics
Abstract Data Types and Classes, Inheritance, Encapsulation and Information
Hiding, Search Algorithms Sorting Algorithms Hash Tables, Regular
Expressions – REs and Python Plotting using PyLab, Security – Encryption and
Decryption , Classical Cypher

Reference Books:
1. 1. John V Guttag. “Introduction to Computation and Programming Using Python”,
Prentice Hall ofIndia
2. R. Nageswara Rao, “Core Python Programming”, dreamtech
3. Wesley J. Chun. “Core Python Programming - Second Edition”, Prentice Hall
4. Michael T. Goodrich, Roberto Tamassia, Michael H. Goldwasser, “Data Structures and
Algorithms in Python”, Wiley
5. Kenneth A. Lambert, “Fundamentals of Python – First Programs”, CENGAGE
Publication
6. Luke Sneeringer, “Professional Python”, Wrox
7. “Hacking Secret Ciphers with Python”, Al Sweigart, URL

44
Course Code: COM 310
Course Name: Operating System (Theory)

Unit: 01
Operating System Concepts
1.1. Evolution of Operating System & History
1.2. Need of an Operating System
1.3. Single User & Multi User Operating System
1.4. Elements of an Operating System

Unit: 02
Memory Management
2.1. Memory Management Functions
2.2. Contiguous Allocation And . Non-contiguous Allocation
2.2.1. Partitioned Memory Static and Dynamic allocation
2.2.2. Segmentation
2.2.3. Paging Segmentation
2.2.4 Demand Paging and Segmentation

Unit: 03
Process Management
3.1. Process Management
3.2. Process Concept
3.3. Scheduling
3.4. Scheduling Algorithms
3.5. Process coordination
3.5.1. Producer / consumer Problem
3.5.2. Critical Section Problem
3.5.3. Semaphores
3.5.4. Inter Process Communication
3.5.5. Deadlocks

Unit: 04
Device Management
4.1. Device Management Function
4.2. Device Characteristics
4.3. Disk space Management
4.4. Allocation and Disk Scheduling Methods

TextBook-:
1.Operating System Design and Implementation 3e, Andrew S. tanenbaum & & Woodhull
Reference Books:
1. Operating System Concepts – James Peterson – McGraw Hill 2. Silberschatz - An OS Concept – Addition
Wesley Publication 3. W. Stallings – An Operating Systems – Pearson Education 4. I.M.Flinn, A.M. Mchoes
– Understanding Operating Systems – Thomson Learning 5. Donovan M. – Operating Systems - McGrew
Hill Pub.

45
STUDENTS ARE SUPPOSED TO SELECT ONE PAPER
FROM THE GENERIC ELECTIVE SUBJECTS

Course Code: COM 311


Course Name: GENERIC ELECTIVE-I (Information Security)

Unit-1:
Security Basics
1. Computer Security 2. Information Security 3. Threat and Attacks 4. Malicious
Logic 5. Countermeasures 6. Security Policies 7. Confidentiality Policies 8.
Integrity Policies
Network Security
1. Security Incidents and Attacks 2. Boundary Devices 3. Firewalls Software -
Concept, Types, Limitation and Implementation 4. VPN - Concept, Limitation and
Implementation 5. Intrusion Detection and Prevention- Concept, Limitation and
Implementation
Other Security Areas
1. Web threats and attacks 2. Database threats and attacks 3. Security in
wireless network-issues and solutions 4. Security in e-commerce,
m-commerce-issues and solutions

Unit-2:
Conventional Encryption
1. Conventional Encryption Model 2. Steganography 3. Classical Encryption
Techniques
Symmetric Ciphers
1. Encryption techniques (Caesar cipher, zebra technique, vinegar cipher,
transposition cipher, play fair cipher, hill cipher) 2. Block Cipher 3. DES, Triple
DES, AES 4. Contemporary Symmetric Cipher
Asymmetric encryption
1. Use of Number Theory 2. Public-key Cryptography 3. RSA 4. Authentication
Protocols 5. Message authentication and hash function 6. Hash algorithms -
MD5, SHA1 7. Digital signatures 8. SSL
IP Security EMail Security
1. IP Security Overview 2. Architecture, Authentication Header, Encapsulation
3. Security Payload, Combining Security Association, Key Management
4. Pretty Good Privacy, S/Mime and Types
Web Security
1. Web Security Requirement, SSL and Transport Layer Security 2. Secure
Electronic Transactions 3. Firewall Design Principles 4. Trusted Systems

Reference Books:
1. Cryptography & Network Security, Forouzan, Mukhopadhyay, McGrawHill
2. Cryptography and Network Security (2nd Ed.), Atul Kahate, TMH
3. Information Systems Security, Godbole, Wiley-India
4. Information Security Principles and Practice, DevenShah, Wiley-India

46
Course Code: COM 311
Course Name: GENERIC ELECTIVE - II (Blockchain Technology)

Unit: 01
Introduction to Block Chain
1.1 Backstory of Block chain 1.2 Centralized v/s Decentralized 1.3 Layers of
Block chain 1.4 Importance of block chain

Unit: 02
How Block chain works
2.1 Laying the Block chain foundation 2.2 Cryptography 2.3 Game theory 2.4
Computer science engineering 2.5 Putting all together 2.6 Block chain
applications 2.7 Scaling block chain

Unit: 03
How Bitcoin works
3.1 History of money 3.2 Dawn to bitcoin 3.3 Bitcoin block chain 3.4 Bitcoin
network 3.5 Bitcoin scripts 3.6 Full nodes vs SPVs 3.7 Bitcoin wallet

Unit: 04
How Ethereum works
4.1 From bitcoin to Ethereum 4.2 Enter the Ethereum Bock chain 4.3 Ethereum
smart contract 4.4 Ethereum virtual machine and code execution 4.5 Ethereum
ecosystem

Reference Book
1. Beginning Block Chain A beginner’s guide to building blockchain solutions.
Bikramaditya Singhal,Gautam Dhameja,Priyanshu Sekhar Panda

47
Course Code: COM 312
Course Name: Practical based on JAVA Programming – II & Python Programming

JAVA Practicals List


1. Write a Java Program to create a String object.Initialize this object with your
name.Find the length of your name using the appropriate String method.Find
whether the character ‘a’ is in your name or not; if yes, find the number of times
‘a’ appears in your name.Print locations of occurrences of ‘a’.
2. Write a Java Program for String handling which performs the following :
a) Checks the capacity of StringBuffer objects.
b) Reverses the contents of a string given on console and converts the resultant
string in upper case.
c) Reads a string from the console and appends it to the resultant string of ii.
3. Write a program for searching for the first occurrence of a character or substring
and for the last occurrence of a character or substring.
4. Write a Java Program to read a statement from the console, convert it into
upper case and print it again on the console.
5. Write a Java Program which will read a string and rewrite it in the alphabetical
order e.g. the word “STRING” should be written at “GINRST”.
6. Write a Java Program which will read a text and count all occurrences of a
particular word.
7. Make an Applet that creates two buttons named “Red” and “Blue” when a button
is pressed the background color of the applets is set to the color named by the
button’s label.
8. Create an applet with three text Fields and two buttons add and subtract. Users
will enter two values in the Text Fields. When the button add is pressed, the
addition of the two values should be displayed in the third Text Fields. The
Subtract button should perform the subtraction operation.
9. Write a Java Applet that creates some text fields and text areas to demonstrate
features of each.
10. Create user entries for student data. Users will enter roll no, name, dept and
semester. Use a combo box for dept. When the user clicks on the Insert button
all the values should be inserted in the Text Area in a row format for each
record.
11. Write a java Applet program which reads your name and address in different
text fields and when a button named find is pressed the sum of the length of
characters in name and address is displayed in another text field. Use
appropriate colors, layout to make your applet look good.
12. Create an applet which displays a rectangle/string with specified colour &
coordinate passed as parameter from the HTML file.
13. Develop suitable GUI for the program using proper AWT controls and Layout
Manager.
14. Write a Java Applet program, which provides a text area with horizontal and
vertical scrollbars. Type some lines of text in the text area and use scrollbars for
movements in the text area. Read a word in a text field and find whether the
word is in the content of the text area or not.
15. Develop a Program to create a Text Field, a List Box and two buttons add and

48
delete. Users will enter values in the Text Field. When the user clicks on the add
button the value should be added in the List Box. When the user clicks on the
delete button, the selected item from the list should be removed.
16. Create a Text Field, a button and a list box, User has to enter a number in the
Text Field. When the user clicks on the button, the arithmetic table for that
number should be displayed in the list box. If the user repeats this process the
list box should be cleared and refilled by the latest values.
17. Write a Program to create a List Box and a Text Area. Fill up the List Box with
some file names. When a user double clicks on any filename of the list box, the
file should be opened and its contents should be displayed in the text Area.
18. Create an applet to display the scrolling text. The text should move from right to
left. When it reaches the start of the applet border, it should stop moving and
restart from the left. When the applet is deactivated, it should stop moving. It
should restart moving from the previous location when again activated.
19. Write a program to create three scrollbar and a label. The background color of
the label should be changed according to the values of the scrollbars. (The
combination of the values RGB)
20. Develop a program to write the text “Hello, how are you” to a file “Hello.txt”.
Also develop a program to read this file and to display the contents of this file
using suitable GUI.
21. Develop an application/applet with a Menu File and two menu items color and
font. The submenu of the menu item color will contain different colors which
when selected should change the background of the applet. The submenu of
the menu item font should contain the list of fonts. Create a Text Field in the
center of the container. When the font is selected from the font list of the menu,
the Text Field text should appear in that font.
22. Create an applet to display the coordinates of the mouse pointer. The
coordinates should be changed as and when the mouse pointer changes its
location.
23. Write a Java Program to show the features of Swing Component.
24. Write a database application that uses any JDBC driver.
25. Write a Java Program to perform JDBC Operations like insert, Update, Delete
and View the employee’s records.
26. Write a simple servlet that just generates plain text.
27. Write a program which displays a cookie id.
28. Write a program of calling one servlet by another servlet.
29. Write a program to show validation of the user using servlet.
30. Write a program for implementing a calculator using servlet.

Python Programming
1. Write a Python program to get the Python version you are using.
2. Write a python program to display the current date and time.
3. Write a Python program which accepts the radius of a circle from the user and
computes the area.
4. Write a Python program which accepts the user's first and last name and print
them in reverse order with a space between them.
5. Write a Python program to accept a filename from the user print the extension
of that.

49
6. Write a Python program to print the calendar of a given month and year.
7. Write a Python program to sum all the items in a list.
8. Write a Python program to print the numbers of a specified list after removing
even numbers from it.
9. Write a Python program to find those numbers which are divisible by 7 and
multiple of 5, between 1500 and 2700 (both included).
10. Write a Python program to count the number of even and odd numbers from a
series of numbers.
11. Write a Python program to get the Fibonacci series between 0 to 50.
12. Write a Python program that prints all the numbers from 0 to 6 except 3 and 6.
Note : Use the 'continue' statement.
13. Write a Python program to print the alphabet pattern 'X'.
14. Write a Python program that accepts a string and calculates the number of
digits and letters.
15. Write a Python function to find the Max of three numbers.
16. Write a Python function that takes a number as a parameter and check the
number is prime or not.
17. Write a Python function that checks whether a passed string is palindrome or
not.
18. Write a Python script to sort (ascending and descending) a dictionary by value.
19. Write a Python script to check if a given key already exists in a dictionary.
20. Write a Python program to get the factorial of a non-negative integer.
21. Write a Python program to find the greatest common divisor (gcd) of two
integers.
22. Write a Python program for binary search.
23. Write a Python program to sort a list of elements using the bubble sort
algorithm.
24. Write a Python program to sort a list of elements using the selection sort
algorithm.
25. Write a Python program to check that a string contains only a certain set of
characters (in this case a-z, A-Z and 0-9).
26. Write a Python program to extract values between quotation marks of a string.
27. Write a Python program to extract values between quotation marks of a string.
28. Write a Python program to abbreviate 'Road' as 'Rd.' in a given string.
29. Write a Python program to check whether an alphabet is a vowel or consonant.
30. Write a Python program to check whether an alphabet is a vowel or consonant.

50
Teaching and Examination Scheme for B.Sc. Computer Science Course
Course Hours/Week Cre
dits

No Name The Pra Inte Total Lectu Pract


ory ctic rnal res icals
al

Core Course 1 Computer Fundamentals & 70 ** 30 100 4 ** 4


(COM-101) Web Designing

Core Course 1 Computer Basics, Internet & Web ** 70 30 100 * 4 3


(COM-102) page Development (Practical)

Core Course 2 Physics - 101 70 ** 30 100 4 ** 4


Sem I
Core Course 2 Physics 102 ** 70 30 100 * 4 3

Core Course 3 Maths - 101 70 ** 30 100 4 ** 4

Core Course 3 Maths - 102 ** 70 30 100 ** 4 3

Foundation General English 70 ** 30 100 2 ** 2


Course - FC-I

Elective Course - I Elective Course 100 ** ** 100 2 ** 2

Total 380 210 210 800 16 12 25

Course Hours/Week Cre


dits

No Name The Pra Inte Total Lectu Pract


ory ctic rnal res icals
al

Core Course 1 Programming in C (Theory) 70 ** 30 100 4 ** 4


(COM-103)

Core Course 1 Programming in C (Practical) ** 70 30 100 * 4 3


(COM-104)

Core Course 2 Physics - 103 70 ** 30 100 4 ** 4


Sem II
Core Course 2 Physics 104 ** 70 30 100 * 4 3

Core Course 3 Maths - 103 70 ** 30 100 4 ** 4

Core Course 3 Maths - 104 ** 70 30 100 ** 4 3

Foundation General English 70 ** 30 100 2 ** 2


Course - FC-II

Elective Elective Course 100 ** ** 100 2 ** 2


Course - II

Total 380 210 210 800 16 12 25

51
Course Hours/Week Cre
dits

No Name The Pra Inte Total Lectu Pract


ory ctic rnal res icals
al

Core Course 1 Object oriented Programming 70 ** 30 100 4 ** 4


(COM-201) using C++ and Data Structure

Core Course 1 ASP. NET 70 ** 30 100 4 ** 4


(COM-202)

Core Course 1 Practicals (Based on OOP using ** 70 30 100 ** 6 2.5


Sem III (COM-203) C++, Data structure and ASP.net)

Core Course 2 Maths 201 / Physics 201 (any one) 70 ** 30 100 4 ** 4

Core Course 2 Maths 202 / Physics 202 (any one) 70 ** 30 100 4 ** 4

Core Course 2 Maths 203 / Physics 203 (any one) ** 70 30 100 ** 6 2.5

Foundation General English 201 70 ** 30 100 2 ** 2


Course - FC-3

Elective Elective Course 201 100 ** ** 100 2 ** 2


Course - 3

Total 450 140 210 800 20 12 25

Course Hours/Week Cre


dits

No Name The Pra Inte Total Lectu Pract


ory ctic rnal res icals
al

Core Course 1 PHP With Mysql 70 ** 30 100 4 ** 4


(COM-204)

Core Course 1 Relational Database Management 70 ** 30 100 4 ** 4


(COM-205) System

Core Course 1 Practical (Based on PHP and ** 70 30 100 ** 6 2.5


Sem IV (COM-206) PL/SQL)

Core Course 2 Maths 204 / Physics 204 (any one) 70 ** 30 100 4 ** 4

Core Course 2 Maths 205 / Physics 205 (any one) 70 ** 30 100 4 ** 4

Core Course 2 Maths 206 / Physics 206 (any one) ** 70 30 100 ** 6 2.5

Foundation General English 202 70 ** 30 100 2 ** 2


Course - FC-4

Elective Elective Course 202 100 ** ** 100 2 ** 2


Course - 4

Total 450 140 210 800 20 12 25

52
Course Hours/Week Cre
dits

No Name The Pra Inte Total Lectu Pract


ory ctic rnal res icals
al

Core Course 1 Software Engineering - I 70 ** 30 100 4 ** 4


(COM-301)

Core Course 1 Computer Networks 70 ** 30 100 4 ** 4


(COM-302)

Core Course 1 JAVA Programming - I 70 ** 30 100 4 ** 4


(COM-303)

Sem V Core Course 1 70 ** 30 100 4 ** 4


Basic Android Programming
(COM-304)

Subject Elective Generic Elective (Any one) - Artificial 70 ** 30 100 2 ** 2


Course Intelligence / Introduction to Cyber
(COM-305) Security

Core Course 1 Practicals (Based on Java ** 140 60 200 ** 12 5


(COM-306) Programming – I and Android)

Foundation General English 70 ** 30 100 2 ** 2


Course - FC-V

Total 420 140 240 800 20 12 25

Course Hours/Week Cre


dits

No Name The Pra Inte Total Lectu Pract


ory ctic rnal res icals
al

Core Course 1 Software Engineering - 2 70 ** 30 100 4 ** 4


(COM-307)

Core Course 1 JAVA Programming - 2 70 ** 30 100 4 ** 4


(COM-308)

Core Course 1 Python Programming 70 ** 30 100 4 ** 4


Sem (COM-309)
VI
Core Course 1 Operating System (Theory) 70 ** 30 100 4 ** 4
(COM-310)

Subject Elective Generic Elective (Any one) - Information 70 ** 30 100 2 ** 2


Course (COM-311) Security / Blockchain Technology

Core Course 1 Practical based on JAVA Programming – ** 140 60 200 ** 12 5


(COM-312) II & Python Programming

Foundation General English 70 ** 30 100 2 ** 2


Course - FC-VI

Total 420 140 240 800 20 12 25

53
54

You might also like