0% found this document useful (0 votes)
50 views68 pages

Syllabi

Uploaded by

shurayasha18
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)
50 views68 pages

Syllabi

Uploaded by

shurayasha18
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/ 68

Syllabus for Bachelor Computer Applications (BCA)-2022-23

Department of Computer Science

Syllabus
Bachelor of Computer Applications (BCA)
2022 - 23

CHRIST (Deemed to be University), Bengaluru


Karnataka

Syllabus for Bachelor of Computer Applications-(BCA), 2022-23 approved by the Board of Studies,

1
Syllabus for Bachelor Computer Applications (BCA)-2022-23

Department of Computer Science and Academic Council, CHRIST (Deemed to be University), Bangalore,
India.
Published by the Centre for Publications, CHRIST (Deemed to be University), Hosur Road, Bangalore,
560029, India. [email protected] 2022.

2
Syllabus for Bachelor Computer Applications (BCA)-2022-23

Index

S. NO Table of Contents Page No.


1. Programme Structure 4

2. Semester wise Courses

Semester – I 8

Semester – II 22

Semester – III 33

Semester – IV 45

Semester – V 56

Semester – VI 62

3
Syllabus for Bachelor Computer Applications (BCA)-2022-23

Programme Structure of BCA

I Semester

Course Course-Title Course No. of Marks Credits


Code Type Hours
BCA121 Professional English AECC 03 100 03
BCA131 Foundational Mathematics Core 03 100 03
BCA132 Statistics-I for BCA Core 03 100 03
BCA133 Digital Computer Fundamentals Core 04 100 04
BCA134 Introduction to Programming Using C Core 04 100 04
BCA151 Digital Computer Fundamentals Lab DSCP 02 50 01
BCA152 C Programming Lab DSCP 04 100 02
BCA171 Python Programming Core 04 100 03
BCA111 Holistic Education SEC 01 - -
Total 28 750 23

II Semester

Course Course-Title Course No. of Marks Credits


Code Type Hours
BCA221 Communicative English AECC 03 100 03
BCA231 Basic Discrete Mathematics Core 03 100 03
BCA232 Statistics-II for BCA Core 03 100 03
BCA233 Operating Systems Core 04 100 04
BCA234 Data Structures Core 04 100 04
BCA251 Operating System Lab DSCP 04 100 02
BCA252 Data Structures Lab DSCP 04 100 02
BCA211 Holistic Education SEC 01 - 02
BCA212 Statistics Tools Lab SEC 02 50 01
Total 28 750 24

4
Syllabus for Bachelor Computer Applications (BCA)-2022-23

III Semester

Course Course-Title Course No. of Marks Credits


Code Type Hours
BCA361A German 04 100 04
GE
BCA361B French
BCA331 Introduction to Number Theory and Core 03 100 03
Algebra
BCA332 Financial Accounting Core 03 100 03
BCA333 Object Oriented Programming using Core 04 100 04
JAVA
BCA334 Database Management System Core 04 100 04
BCA351 JAVA Programming Lab DSCP 04 100 02
BCA352 DBMS Lab DSCP 04 100 02
BCA311 Holistic Education SEC 01 - -
BCA312 Accounting Tools Lab SEC 02 50 01
Total 29 750 23

IV Semester

Course Course-Title Course No. of Marks Credits


Code Type Hours
BCA431 Graph Theory Core 03 100 03
BCA432 Financial Management Core 03 100 03
BCA433 Design and Analysis of Algorithms Core 04 100 04
BCA434 Software Engineering Core 04 100 04
BCA435 Web Technology Core 04 100 04
BCA451 .NET LAB DSCP 04 100 02
BCA481 DBMS Project DSCP 06 150 03
BCA411 Holistic Education SEC 01 - 02
Total 29 750 25

V Semester

5
Syllabus for Bachelor Computer Applications (BCA)-2022-23

Course No. of
Course-Title Course Type Marks Credits
Code Hours
BCA531 Python Programming CORE 4 100 4

BCA532 Computer Networks CORE 4 100 4

Elective I(Choose any one)

BCA541A Mobile Applications

BCA541B Graphics and Animation

BCA541C Business Intelligence

BCA541D Microprocessor and ALP

BCA541E Digital Image Processing


DSEC 4 100 4
Elective II(Choose any one)

BCA542A Multimedia Applications

BCA542B OOAD Using UML

BCA542C Cyber Security DSEC 4 100 4


BCA542D Computer Architecture

BCA542E System Software

BCA551 Python Programming Lab PC 4 100 2

BCA552A Mobile Applications Lab

Graphics and Animation


BCA552B
Lab
BCA552C Business Intelligence Lab
DSEP 4 100 2
Microprocessor and ALP
BCA552D
Lab
Digital Image Processing
BCA552E
Lab
BCA581 Project - I PC 4 100 2

Total 28 700 22

6
Syllabus for Bachelor Computer Applications (BCA)-2022-23

VI Semester

Course No. of
Course-Title Course Type Marks Credits
Code Hours
BCA671 Machine Learning CORE 6 150 5
Elective III (Choose any one)

BCA672A Cloud Computing

BCA672B UI / UX Design
BCA672C Software Testing DSEC 6 150 5

BCA672D Internet of Things


BCA672E Linux Administration
Elective IV (Choose any one)

DSEP 16 300 8
BCA681 Major Project
Total 28 600 18

7
Syllabus for Bachelor Computer Applications (BCA)-2022-23

BCA131 - FOUNDATIONAL MATHEMATICS

Total Teaching Hours for Semester: 45


Max Marks: 100 Credits: 3

Course Description
This course aims at introducing the students into the world of Discrete Mathematics. It includes
the topic like Mathematical Logic, Method of proofs, Mathematical induction, Permutations
and combinations and Binomial coefficients. Also, this course emphasizes general techniques
of problem solving and explores the creation of mathematical patterns.

Course Objectives: This course will help the learner to


COBJ1: understand and use the notions of Mathematical Logic.
COBJ2: give proofs for mathematical problems by using different methods of proofs.
COBJ3: prove the mathematical problems/statements by using Mathematical Induction.
COBJ4: use permutations,combinations,binomial coefficients for solving problems appropriate
problems.

Learning Outcomes
CO1: Formulate and interpret statements presented and determine their validity by
applying the rules and methods of propositional logic.
CO2: Reformulate statements from common language to formal logic using the rules of
propositional and predicate calculus, and assess the validity of arguments.
CO3: Apply the logical structure of proofs and work symbolically with connectives and
quantifiers to produce logically valid, correct and clear arguments
CO4: Construct elementary proofs using ordinary and strong induction in the context of
studying the properties of recursion
CO5: Apply basic counting principles including the pigeonhole principle and rules for
counting permutations and combinations.
Unit-1 Teaching Hours: 15
Logic
Propositional Logic - Applications of Propositional Logic - Propositional Equivalences -
Predicates and Quantifiers

8
Syllabus for Bachelor Computer Applications (BCA)-2022-23

Unit-

2 Teaching Hours: 15
Methods of Proof
Nested Quantifiers, Rules of Inference, Introduction to Proofs, Proof Methods and Strategy.

Unit-3 Teaching Hours: 15


Counting
Mathematical Induction , The Basics of Counting, The Pigeonhole Principle, Permutations and
Combinations, Binomial Coefficients and Identities.

Text Books and Reference Books


[1] K. H. Rosen, Discrete Mathematics and its Applications, 7th ed., McGraw – Hill, 2012.

Essential Reading / Recommended Reading


[1] R.P. Grimaldi and B.V. Ramana, Discrete and Combinatorial Mathematics, An applied
introduction, 5th ed., Pearson Education, 2007.
[2] D. S. Chandrasekharaiah, Discrete Mathematical Structures, 4th ed., India: PRISM Book Pvt.
Ltd., 2012
[3] J. P. Tremblay and R. Manohar, Discrete Mathematical Structures with Application to
Computer Science, Reprint, India: Tata McGraw Hill Education, 2008.

Evaluation Pattern

EXAMINATION AND ASSESSMENTS


Component Mode of Assessment Parameters Points
Basic, conceptual and analytical knowledge
CIA I Mid-semester Examination of the subject 25

Written Assignment
CIA II Class test Mastery of the core concepts 10
Problem working in class
Written Assignment
CIA III Class test Mastery of the core concepts 10
Problem working in class
Attendance Attendance Regularity and Punctuality 05
Basic, conceptual and analytical knowledge
ESE of the subject 50

Total 100

ESE - Question Paper Pattern

9
Syllabus for Bachelor Computer Applications (BCA)-2022-23

No. of
subdivisions Marks for
Unit and No. of subdivisions to be Max. marks
Part to be each
set in the unit for the part
answered subdivision

UNIT I 4

A UNIT II 4 10 3 30
UNIT III 4
B UNIT II 4 3 7 21
C UNIT I 5 4 7 28
D UNIT III 4 3 7 21
Total 100

BCA132 - STATISTICS - I FOR BCA

Total Teaching Hours for Semester: 45


Max Marks: 100 Credits: 3

Course Objectives
This course introduces basics of statistics and statistical concepts and methods for collection,
analysis and interpretation of data
Objectives of the course are
• To acquaint students with various statistical methods.
• To cultivate statistical thinking among students.
• To prepare students for future courses having quantitative components.

Course Outcomes
Upon successful completion of the course one should be able to CO1: Understand
and appreciate descriptive statistics.
CO2: Understand the concepts of probability and random variables.

Unit-1 Teaching Hours: 10


Introduction
Importance of Statistics - Primary and secondary data - data collection methods - Presentation of
numerical and categorical data

Unit-2 Teaching Hours: 12

10
Syllabus for Bachelor Computer Applications (BCA)-2022-23

Unit-
Concepts of central tendency and dispersion
Mean, median, mode and partition values-quartiles for grouped and ungrouped data - Range, quartile
deviation, standard deviation and coefficient of variation for grouped data

3 Teaching Hours: 12
Probability
Random Experiment- Sample space and events - Probability – Rules - Conditional probability and
Bayes theorem

Unit-4 Teaching Hours: 06


Random variable
Definition, types of random variables - probability functions - expectations and variance.

Unit-5 Teaching Hours: 05


Index Number
Laspeyres’, Paasches’ - Fishers price and quantity index numbers - Time reversal and factor
reversal tests

Text Books and Reference Books


th
[1] Berenson and Levine, Basic Business Statistics, New Jersey, 6 edition, Prentice- Hall India,
1996.

Essential Reading / Recommended Reading


[1] D.C. Montogomery and G.C.Runger, Applied Statistics and Probability for engineers,
rd
New Jersey,John Wiley and Sons, 3 edition, 2003.

Evaluation Pattern
Component Marks

Continuous InternalAssessment-I 10

Continuous InternalAssessment-II 25

Continuous InternalAssessment-III 10

Attendance 5

End Semester Exam(Written Test) 50

Total 100

11
Syllabus for Bachelor Computer Applications (BCA)-2022-23

End Semester Exam Pattern:


Total number of No. of questions to Max. Marks for Total
Section questions be answered each question Marks

A 12 10 2 20

B 6 5 6 30

C 6 5 10 50

Total 24 19 100

BCA 133 – DIGITAL COMPUTER FUNDAMENTALS

Total Teaching Hours for Semester: 60


Max Marks: 100 Credits: 4

Course Objectives
This is an introductory course that provides required knowledge about digital fundamentals of
computer. The course covers few topics like number systems, logic gates and flips flops. The
course starts with an introduction to number systems and its applications in computers. The
discussion about working of devices like encoders and decoders, multiplexers and de
multiplexers are dealt with.

Course Outcomes
CO1: Ability to use math and Boolean algebra in performing computations in various number
systems.
CO2: Simplification of Boolean algebraic expressions.
CO3: Ability to design efficient combinational and sequential logic circuit implementations
from functional description of digital systems.

Unit-1 Teaching Hours: 12


12
Syllabus for Bachelor Computer Applications (BCA)-2022-23

Unit-
Introduction to Number System and Codes
Number systems: Decimal numbers , Binary numbers : Counting in binary, The weighted
structure of binary numbers, Octal numbers, hexadecimal numbers and their mutual
conversions ,Binary arithmetic : Addition, subtraction, multiplication and division of binary
numbers, 1‘s and 2‘s complement, signed numbers, arithmetic operations: addition, subtraction
with signed numbers, 9‘s and 10‘s complement, BCD numbers, BCD addition, BCD
subtraction, Gray code: Binary to Gray code conversion, Gray to Binary conversion, Weighted
code : 8421 code and Non weighted codes : ASCII and EBCDIC.

2 Teaching Hours: 8
Boolean Algebra
Boolean operations and expressions, Laws and rules of boolean algebra, Demorgan‘s Theorem,
Boolean expressions, Simplification of Boolean expression.

Unit-3 Teaching Hours: 10


Logic Gates
AND gate, OR gate, NOT gate, NAND gate, NOR gate , X-OR gate , X-NOR gate, The
universal property of NAND gate and NOR gate, Realization of basic gates.Boolean expression
for logic circuits, Karnaugh map SOP with examples.

Self-Learning:
Universal property of NOR gate

Unit-4 Teaching Hours:10


Combinational Logic
Basic Adders: Half adder, Full adder, 4-bit Parallel adders, Subtractor : Half subtractor, Full
subtractor Implementation using logic gates, Decoders: 4 bit decoder, BCD to decimal decoder,
Encoder : Decimal to BCD encoder, Multiplexer : 4 to 1 multiplexer, Demultiplexer : 1 to 4
demultiplexer .

Unit-5 Teaching Hours:10


Flip-flops
Latches: SR latch, Clocked flip-flops: SR flip-flop, D flip-flop, JK flip-flop, Positive edge
triggered flip flops, Timing diagrams, Master slave JK flip-flop.

Unit-6 Teaching Hours:10


Registers and Counters

13
Syllabus for Bachelor Computer Applications (BCA)-2022-23

Modes of operation of registers: SISO, SIPO, PISO, and PIPO, Asynchronous counters: Four
bit ripple counter, Decade counter, Synchronous counters: Four bit synchronous counter,
Decade counter.

Self-Learning
Introduction to RAM, SRAM, DRAM, ROM, PROM, EPROM, EEPROM

Text Books and Reference Books


[1] Floyd, Thomas L: Digital Computer Fundamentals, 11th Edition, Pearson
International, 2015.

Essential Reading / Recommended Reading


[1] Malvino, Paul Albert, Leach, Donald P,GautamSaha: Digital Principles And Applications,
TMH ,8th Edition, 2015.
[2] Bartee, Thomas C: Digital Computer Fundamentals, 6 Edition,TMH, 2010.

BCA134 - INTRODUCTION TO PROGRAMMING USING C

Total Teaching Hours for Semester: 60


Max Marks: 100 Credits: 4

Course Objectives
The course provides students with a comprehensive study of C programming language. The
course lectures stress the strengths of C, which provides the outcome of writing efficient,
maintainable and portable code. Course includes few lab exercises to make sure the student
has not only gained the knowledge but can also apply and execute it.
Objectives of the course are
• To study about algorithms, flowcharts and programs.
• To solve problems through logical thinking.

Course Outcomes
CO1: To clearly understand the logic of the problem.
CO2: To analyze the given problem and write the algorithm, flowchart.
14
Syllabus for Bachelor Computer Applications (BCA)-2022-23

Unit-
CO3: To write structured C programs, this is the foundation of any programming language.

Unit-1 Teaching Hours: 08


Introduction to computers and programming
Evolution of Computers - Generation of Computers - Classification of Computers -
Characteristics of Computers - Advantages of Computers - Block Diagram of a Digital
Computer - Types of Programming Languages - Structured Programming - Algorithms and
Flowcharts with Examples - Programming Logic.

Unit-2 Teaching Hours:10

15
Syllabus for Bachelor Computer Applications (BCA)-2022-23

Introduction to C programming
History of C- Character set - Structure of a C program - constants, variables and keywords.
Expressions – Statements – Operators – Arithmetic, Unary, Relational and logical, Assignment,
Conditional. Library functions. Data Input and output – Single character input, getchar, getch,
getc – Single character output putchar, putc, Formatted I/O scanf, printf, gets, puts.

Unit-3 Teaching Hours:11


Control structures and arrays
Branching: condition: if, if..else, switch. Looping: while, do..while, for, nested control
structures, break, continue statement, goto statement. Arrays: definition, processing, types -
One and Two dimensional arrays. String, string operations, arrays of strings.

Unit-4 Teaching Hours:11


Functions and Pointers
Functions: Definition, Accessing and prototyping, types of functions, passing arguments to
functions, recursion, passing arrays to functions. Pointers: Definition, notation, applications,
call by reference.

Unit-5 Teaching Hours:11


Structures, Unions and Files
Structures: Definition, Processing, user defined data type typedef - Unions – definition,
declaration and accessing union elements. Enumerated Data type.Files: File opening in
different modes, closing, reading and writing. fopen, fclose, fprintf, fscanf, getw, putw .

Unit-6 Teaching Hours:09


Low level programming and C preprocessor
Storage Structures: extern, register, static, auto. Bitwise Operations: AND, OR, exclusive OR,
complement, right shift and left shift operators. Preprocessor: Types of C preprocessor
directives. Macros- comparison with functions. File Inclusion. Command line Arguments.

Text Books and Reference Books


[1] Byron Gottfried, JitenderChhabra ,Programming with C, 3rd Edition. Tata McGraw-Hill,
2010

Essential Reading / Recommended Reading


th
[1] Balagurusamy E., Programming in ANSI C, 6 Edition,Tata McGraw-Hill,2012.
th
[2] Deitel H M and Deitel P J, C - How to Program, 5 Edition, Prentice-Hall, 2006.
nd
[3] SmarajitGhosh, All of ‘C’,2 Edition, 2009.
[4] M. T. Somashekara, Problem Solving with C, PHI, 2009

16
Syllabus for Bachelor Computer Applications (BCA)-2022-23

BCA151 - DIGITAL COMPUTER FUNDAMENTALS LAB

Total Lab Hours for Semester: 30


Max Marks: 100 Credits: 1

Course Objectives
This course offers an experimental view of hardware components, digital circuits and logic
gates of a computer. Objective of the course is to understand the working principle and logic
design of digital circuits.

Course Outcomes
CO1: Students will demonstrate an ability to identify the basic components to build
digital circuits.
CO2: Students will be able to design efficient Combinational and Sequential logic
circuits.

List of programs
1. Demonstration of the components of (i) Kindle (ii) iPad (iii) Smart Phone (iv) Laptops
2. Demonstration of the installation and discussion of the features of different Operating
Systems. Eg: Mac, Unix, Ubuntu, Windows etc.
3. Verification of the truth tables of AND, OR & NOT gates.
4. Verification of the truth tables of NAND & NOR gates.
5. Verification of the truth table of XOR using NAND gates.
6. Verification of the truth table of Half Adder circuits using NAND gates.
7. Verification of the truth table of Full Adder circuits using NAND gates.
8. Verification of the truth table of D flip flop.
9. Verification of the truth table of JK flip flop.
10. Verification of the truth table of RS flip flop.
11. Binary To Gray Code and Gray Code to Binary Converter
12. Verification of the Function table of Binary Ripple Counter using JK FF.

17
Syllabus for Bachelor Computer Applications (BCA)-2022-23

13. Verification of the Function table of Decade Counter.


14. Verification of the Function table of Serial In Serial Out Shift Register using D FF.

BCA152 – C PROGRAMMING LAB

Total Lab Hours for Semester: 60


Max Marks: 100 Credits:2

Course Objectives
To learn problem solving through procedural language programming technique and
Understand fundamentals of programming such as variables, conditional and iterative
execution, methods, etc.

Course Outcomes
CO1: Read, understand and trace the execution of programs written in C language.
CO2: Write the C code for a given algorithm.
CO3: Implement Programs with pointers and arrays, perform pointer arithmetic, and
use the pre-processor.

List of programs
1. To demonstrate the usage of operators and data types in C
a. Write a program to print the size of all the data types with its modifiers supported by C and its
range.
b. Write a program to convert Fahrenheit to Celsius.

2. To demonstrate the usage of if, if-else


a. Write a program to check whether the given number is a Prime number or not.
b. Write a program to accept three numbers and find the largest and second largest among
them.

3. To demonstrate the concept of while, do-while, for loops, break and continue
a. Write a program to print all prime numbers between any 2 given limits.
b. Write a program to print all the Armstrong numbers between any 2 given limits.

4. To demonstrate the concept of arrays and strings


a. Write a program to check whether a string is a Palindrome.
b. Write a program to check whether a given matrix is an Identity matrix or not.
c. Write a program to perform matrix multiplication.

18
Syllabus for Bachelor Computer Applications (BCA)-2022-23

5. To demonstrate the concept of switch-case


a. Write a program to count the different vowels in a line of text.
b. Write a program to accept two numbers and perform various arithmetic operations (+, ,
*, /) based on the symbol entered.

6. To demonstrate the usage of functions and recursion


a. Write a program to find the roots of a quadratic equation
b. Write a recursive program to find the factorial of a number.

7. To demonstrate the concept of structures and unions


a. Create an employee structure and display the same.
b. Create a student database storing the roll no, name, class etc. Implement modify and
search operations.

8. To demonstrate the concept of


a. Write a function to swap two numbers using pointers
b. Write a program to access an array of integers using pointers

9. To demonstrate the concept of File


a. Create a file and store some records in it. Display the contents of the same. Implement
search, modify, and delete operations.

10. To demonstrate the concept of Bitwise operators and preprocessors


a. Perform the different bitwise operations (menu driven program) .The i/p and the o/p
should be displayed in Binary form.
b. Write a program to include your own header file.

19
Syllabus for Bachelor Computer Applications (BCA)-2022-23

BCA171 - PYTHON PROGRAMMING - I

Total Teaching Hours for Semester: 30+30


Max Marks: 100 Credits: 3

Course Objectives
This course covers the basic programming paradigms associated with Python.

Course Outcomes
CO1: Demonstrate the use of built-in data types of Python CO2:
Demonstrate significant experience with python program
development environment CO3: Design functions and
custom modules for given requirement.

Unit-1 Teaching Hours: 05


INTRODUCING PYTHON
Introduction, Python Fundamentals, Features of Python, Components of a Python Program,
Understanding the interpreter.
Python basics:
Identifiers, Basic Types, Operators, Precedence and Associativity, Decision Control Structures,
Looping Structures, Console input, output.

Unit-2 Teaching Hours:5


PYTHON DATA TYPES: LISTS AND TUPLES
Lists: Accessing elements, Basic List operations, Built-in methods
Tuples: working with elements, Basic Tuple operation, Tuple methods and Type of Tuples.

Unit-3 Teaching Hours:5


PYTHON DATA TYPES: SETS AND DICTIONARIES
Sets: Definition, Set Elements, Built-in methods, basic set operations, Mathematical Set
operation, Variety of Sets.

Dictionaries: Defining a dictionary, accessing elements, basic operations, methods

Unit-4 Teaching Hours:5


COMPREHENSIONS AND FUNCTIONS
Comprehensions: List Comprehensions, Set Comprehension, Dictionary Comprehension.
Functions: Defining a function, Types of arguments, unpacking arguments. Recursive
functions.

Unit-5 Teaching Hours:5


FUNCTIONAL PROGRAMMING

20
Syllabus for Bachelor Computer Applications (BCA)-2022-23

Lambda functions, Higher order functions, Map, Filter, Reduce, Using Lambda with
map(),filter(),reduce()

Unit-6 Teaching Hours:5


MODULES, PACKAGES AND NAMESPACES :
Main module, built-in, custom modules, importing a module, packages Namespace,
global(),locals(),Inner fucntions,scope.

Essential Reading:

1. Martin Brown, Python:The Complete Reference, McGraw Hill Publications,4th Edition


March 2018.
2. Yashavant Kanetkar,Aditya Kanetkar, Let Us Python, BPB Publications ,4th Edition
2022.

Reference Books:
1. Zhang.Y ,An Introduction to Python and Computer Programming, Springer
Publications,2016 Web Resources: 1. https://docs.python.org/3/tutorial/

LAB EXERCISES

UNIT – I Implement Basic data types and operators.

UNIT – II
Implement Lists
Implement Tuples

UNIT – III
Implement Dictionary
Implement Set

UNIT – VI
Implement List, Set and Dictionary Comprehensions
Implement Recursive function

UNIT -V Implement Lambda function using map(), filter(),reduce().

UNIT – IV Implement custom module.

21
Syllabus for Bachelor Computer Applications (BCA)-2022-23

Total Teaching Hours for Semester:


Credits:
SEMESTER – II

Max Marks: 100

BCA 231– BASIC DISCRETE MATHEMATICS

45
3

Course Description: This course aims at introducing the students into the world of Discrete
Mathematics. It includes the topic like Set Theory, Functions and Relations. They gain a
historical perspective of the development of modern discrete mathematics and application of
the same in the field of Computer Science.
Course objectives:This course will help the learner to
COBJ1: be proficient in the topics set theory, functions and relations.
COBJ2: enhance the problems solving skills in set theory, functions, relations, sequences,
series and matrices.
Learning Outcomes
CO1: Demonstrate a working knowledge of set notation and elementary set theory,
recognize the connection between set operations and logic.
CO2: Prove elementary results involving sets
CO3: Apply the different properties of injections, surjections, bijections, compositions,
and inverse functions
CO4: Demonstrate the use of mathematical reasoning by justifying and generalizing
patterns and relations
CO5: Determine when a relation is reflexive, symmetric, antisymmetric, or transitive,
apply the properties of equivalence relations and partial orderings, and explain the
connection between equivalence relations

Unit-1 Teaching Hours: 15


Set Theory and Theory of Functions Sets,
Set Operations, Functions

Unit-2 Teaching Hours: 15


Applications of Functions and Theory of Matrices
Sequences and Summations, Cardinality of Sets, Matrices

Unit-3 Teaching Hours: 15


Relations
Relations and Their Properties, Equivalence Relations, Partial Orderings

22
Syllabus for Bachelor Computer Applications (BCA)-2022-23

Total Teaching Hours for Semester:


Max Marks: 100 Credits:

Text Books and Reference Books:


[1] K. H. Rosen, Discrete Mathematics and its Applications, 7th ed., McGraw – Hill, 2012.

Essential Reading / Recommended Reading


[1] R.P. Grimaldi and B.V. Ramana, Discrete and Combinatorial Mathematics, An applied
introduction, 5th ed., Pearson Education, 2007.
[2] D. S. Chandrasekharaiah, Discrete Mathematical Structures, 4th ed., India: PRISM Book
Pvt. Ltd., 2012
[3] J. P. Tremblay and R. Manohar, Discrete Mathematical Structures with Application to
Computer Science, Reprint, India: Tata McGraw Hill Education, 2008.

Evaluation Pattern

Component Mode of Assessment Parameters Points


Basic, conceptual and analytical knowledge of the
CIA I Mid-semester Examination subject 25

Written Assignment
CIA II Class test Mastery of the core concepts 10
Problem working in class

Written Assignment
CIA III Class test Mastery of the core concepts 10
Problem working in class

Attendance Attendance Regularity and Punctuality 05


Basic, conceptual and analytical knowledge of the
ESE subject 50

Total 100

ESE - Question Paper Pattern


No. of Marks for each
Unit and No. of subdivisions to be set in subdivisions to subdivision Max. marks
Part
the unit be answered for the part

UNIT I 4
A 10 3 30
UNIT II 4

23
Syllabus for Bachelor Computer Applications (BCA)-2022-23

UNIT III 4

B UNIT I 4 3 7 21
C UNIT II 5 4 7 28
D UNIT III 4 3 7 21
Total 100

BCA232 – STATISTICS - II FOR BCA

45
3

Course Objectives
The course Statistics-II describes the concept of correlation and regression, probability
distribution and testing hypothesis.
Objectives of the course are
• To acquaint students with various statistical methods.
• To cultivate statistical thinking among students.
• To prepare students for future courses having quantitative components.

Course Learning Outcomes


Upon successful completion of the course one should be able to
• Understand and analyze bivariate data with respect to their association.
• Apply different distributions at the appropriate situations.
• Apply various tests of hypothesis understand their interpretation.

Unit-1 Teaching Hours: 10


Correlation and Regression
Scatter diagram, Karl Pearson’s and Spearman’s’ correlation coefficient - Regression and
properties of regression coefficient

Unit-2 Teaching Hours: 10


Probability distributions
Discrete and continuous random variables - Probability mass and density functions -
Expectation - Binomial, Poisson and normal distribution

Unit-3 Teaching Hours: 12


Sampling distribution and confidence interval
Sampling - Distribution and estimation - Parameter and statistic - chisquare t and F
distributions definitions only Confidence interval Single means and difference known and
unknown variances - Single proportion and difference of proportions

Unit-4 Teaching Hours: 13

24
Syllabus for Bachelor Computer Applications (BCA)-2022-23

Total Teaching Hours for Semester:


Max Marks: 100 Credits:

Testing of Hypothesis
Types of hypothesis - Level of significance - Types of errors - Test for single mean and
difference of means - Paired t test - Tests for proportions - Chi square test for independence of
attributes

Text Books and Reference Books


th
[1] Berenson and Levine, Basic Business Statistics, New Jersey, Prentice- Hall India, 6 ed.
1996.

Essential Reading / Recommended Reading


[1] C.Montogomery and G.C.Runger, Applied Statistics and Probability for engineers,
rd
NewJersey,John Wiley and Sons, 3 ed. 2003.

Evaluation Pattern
Component Marks

Continuous InternalAssessment-I 10

Continuous InternalAssessment-II 25

Continuous InternalAssessment-III 10

Attendance 5

End Semester Exam(Written Test) 50

Total 100

End Semester Exam Pattern:


No. of Max.
Total questions to Marks for Total
Section number of be each Marks
questions answered question

A 12 10 2 20

B 6 5 6 30

C 6 5 10 50

Total 24 19 100

25
Syllabus for Bachelor Computer Applications (BCA)-2022-23

BCA233 – OPERATING SYSTEMS

60
4

Course Objectives
This course is an introduction to the concepts behind modern computer operating systems.
Topics will include what an operating system does (and doesn't) do, system calls and interfaces,
processes, resource scheduling and management (of the CPU, memory, etc.), virtual memory.
Objectives of the course are
• To acquire the fundamental knowledge of the operating system architecture and its
components
• To know the various operations performed by the operating system.

Course Outcomes
CO1: Upon completion of the course students will be able to:
CO2: Understand the basic working process of an operating system.
CO3: Understand the importance of process and scheduling.
CO4: Understand the issues in synchronization and memory management.

Unit-1 Teaching Hours: 8


Introduction and System Structures
Operating System Fundamentals; Computer System organization and architecture; Operating
System structure and operations; Basics of process, memory and storage management and
protection and security; Operating System services; User interface; System calls; System
programs; Operating System structure; System boot.

Unit-2 Teaching Hours: 12


Process Management
Process concept; Process scheduling; Operations on processes; Inter Process Communication;
Overview of Threads; Multi-threading models; Threading issues

Unit-3 Teaching Hours: 12


Process Synchronization
Need of synchronization; Critical section problems; Peterson‘s solution; Synchronization
hardware; Mutex Locks; Semaphores, Classical problems of synchronization,
Synchronization examples, Thread synchronization using mutex and semaphore.

Unit-4 Teaching Hours: 6


CPU Scheduling
CPU Scheduling concepts; Scheduling criteria; Scheduling algorithms; Overview of thread
scheduling; Multi-processor scheduling

26
Syllabus for Bachelor Computer Applications (BCA)-2022-23

Total Teaching Hours for Semester:


Max Marks: 100 Credits:

Unit-5 Teaching Hours: 12


Memory Management
Overview; Swapping; Memory allocation; Segmentation; Paging, Structure of the page table

Unit-6 Teaching Hours: 10


Virtual Memory
Overview; Demand paging; Copy on Write; Page replacement; Allocation of Frames;
Thrashing

Self Learning
File system structure, Directory structure

Text Books and Reference Books:


[1] A. Silberschatz, P.B. Galvin and G. Gagne, Operating System Concepts.9th Edition, New
Delhi: Wiley India, 2011.

Essential Reading/Recommended Reading


[1] Stalling William, Operating Systems: Internals and Design Principles. 7th Edition, Prentice
Hall, 2011.
[2] Dietel et al, Operating System.3rd Edition. Pearson Education, 2004.
[3] A.S. Tanenbaum, Modern Operating Systems.3rd Ed, Prentice Hall, 2007.

BCA234 – DATA STRUCTURES

60
4

Course Objectives
Data Structure is considered as one of the fundamental paper towards a more comprehensive
understanding of programming and application development. Student is expected to work
towards a sound theoretical understanding of Data Structures and also compliment the same
with hands on implementing experience.
Objectives of the course are
• To be able to practically implement the data structures like stack, queue, array
etc.
• To understand and implement different searching and sorting techniques.

27
Syllabus for Bachelor Computer Applications (BCA)-2022-23

Course Outcomes
CO1: Understand the need for Data Structures when building application.
CO2: Appreciate the need for optimized algorithm.
CO3: Able to walk through insert and delete for different data structures.
CO4: Ability to calculate and measure efficiency of code.
CO5: Appreciate some interesting algorithms like Huffman, Quick Sort, and Shortest
Path etc.
CO6: Able to walkthrough algorithm.
CO7: Improve programming skills.

Unit-1 Teaching Hours: 10


Arrays
Introduction to data structures- Arrays and Structures: Abstract Data Type, Array in C,
Dynamically Allocated Arrays, Structures, Unions, Internal Implementation of Structures,
Self-Referential Structures, Polynomial Representation, Polynomial Additions.-sparse matrix

Unit-2 Teaching Hours: 10


Searching and String
Linear Search, Iterative Binary Search, Recursions, Recursive Binary Search, String Abstract
Data Type, String in C, Pattern Matching.

Unit-3 Teaching Hours: 09


Stacks and Queues
Stacks- stacks using dynamic arrays- queues – circular queue using dynamic arrays- Evaluation
of Expressions, Evaluating Postfix Expressions, Infix to Postfix

Unit-4 Teaching Hours: 09


Linked Lists
Pointers, Using Dynamically Allocated Storage, Singly Linked Lists, Dynamically Linked
Stacks and Queues, Polynomials, Representing Polynomials as Singly Linked Lists, Adding
Polynomials, Erasing Polynomials, Polynomials as Circularly Linked Lists, Doubly Linked
Lists.

Unit-5 Teaching Hours: 10


Trees
Introduction, Terminology, Representation of Trees, Binary Trees, Abstract Data Type, Properties of
Binary Trees, Binary Tree Representations, Binary Tree Traversals Binary Search Trees: Introduction,
Searching a Binary Search Tree, Inserting an Element, Deleting an Element, Height of Binary Search
Tree

Unit-6 Teaching Hours: 12


Sorting techniques and Graphs

28
Syllabus for Bachelor Computer Applications (BCA)-2022-23

Total Teaching Hours for Semester:


Max Marks: 100 Credits:

Introduction, Bubble Sort, Insertion Sort, Selection Sort, Quick Sort, Merge Sort. Graphs—
Introduction-Definition-representation-Depth first search-Breadth first search

Text Books and Reference Books:


[1] Horowitz Sahni Anderson-Freed, Fundamental of Data Structures in C, Universities Press,
Reprint 2009.

Essential Reading / Recommended Reading


th
[1] Yashwant Kanetkar, Data Structures Through C, 9 Edition, BPB Publication 2010.
[2] Tremblay J.P and Sorenson P.G: An Introduction to Data Structures with Applications,
nd
2 Edition, 2002, TMH.

29
Syllabus for Bachelor Computer Applications (BCA)-2022-23

BCA251 – OPERATING SYSTEM LAB

Total Lab Hours for Semester: 60


Max Marks: 100 Credits: 2

Course Objectives
This lab introduces basic commands in LINUX and helps students in familiarizing the concepts
of operating system through various commands related to operating system activities.

Course Outcomes
CO1: To make students able to implement various LINUX commands.
CO2: Students will also be able to implement different process related commands.

List of programs
1. To study the execution of various file/directory handling commands.
2. To study the various commands operated in vi editor in LINUX.
3. To study the various File Access Permission and different types of users in LINUX
4. To study about process related commands.
5. To study about the commands related to memory allocation of variables for a process.
6. To study about commands for viewing system calls.
7. To study about commands used for debugging.
8. Write a program to demonstrate basic operations of a process.
9. Write a program to create a Zombie process and an orphan.
10. Write a program to demonstrate a one-way pipe between two processes.
11. Write a program to illustrate a two way pipe between two processes.
12. Write a program to demonstrate a one-way communication between two processes using
FIFO
13. Write a program to demonstrate a two-way communication between two processes using
FIFO
14. Demonstrate process synchronization using semaphore.
15. Demonstrate the basic operations of thread.
16. Demonstrate thread synchronization using mutex.
17. Demonstrate thread synchronization using semaphore.

BCA252 – DATA STRUCTURES LAB

Total Lab Hours for Semester: 60

30
Syllabus for Bachelor Computer Applications (BCA)-2022-23

Max Marks: 100 Credits: 2

Course Objectives
The course is designed to provide a practical exposure on data structure and its applications.

Course Outcomes
Upon completion of the course
CO1: Students acquire the knowledge to build the logic and develop a solution for a
problem statement.

List of programs
1. Strings:
a) Write a menu driven program to compare, concatenate, copy strings and find the length
of a string.
b) Write a menu driven program to find the index of a pattern in a given string and to extract
a substring.
2. Arrays
a) Write a program to insert and delete an element(s) in one dimensional array.
b) Write a program to insert and delete an element(s) in two dimensional arrays.
3. Sparse Matrix
a) Write a menu driven program to read a sparse matrix of integer values and to search the
sparse matrix for any element specified by the user.
b) Write a program to print the appropriately triple < row, column, "value" > that represents
the elements in the sparse matrix.

4. Searching Techniques:
a) Write a program to implement Linear Search with sentinels
b) Write a program to implement Binary Search using recursion 5. Sorting techniques:
a) Write a menu driven program to implement insertion sort
b) Write a menu driven program to implement selection sort.
c) Write a menu driven program to implement quick sort using recursion
d) Write a menu driven program to implement merge sort using recursion.
6. Singly linked list:
a) Write a menu driven program to implement singly linked lists creation, insertion and
deletion
7. Stack:
a) Write a menu driven program to implement different operations on a stack using an array
and linked list.
8. Queue:
a) Write a menu driven program to implement different operations on a queue using an
array and linked list.
9. Binary search trees:
a) Write a menu driven program to create a binary search tree and to perform Insertion and
different types of traversal

31
Syllabus for Bachelor Computer Applications (BCA)-2022-23

10. Graphs:
a) Write a menu driven program to implement breadth first search (bfs)
b) Write a menu driven program to implement depth first search (dfs)

BCA212 – STATISTICS TOOL LAB

Total Lab Hours for Semester: 30


Max Marks: 50 Credits: 1

Course Objectives
The course is designed to provide a practical exposure on data structure and its applications.

Course Outcomes
Upon completion of the course

32
Syllabus for Bachelor Computer Applications (BCA)-2022-23

CO1: Students acquire the knowledge to build the logic and develop a solution for a
problem statement.

List of programs
1. Calculate mean, median, mode and display results in proper format.
2. Calculate the product and sum of two vectors.
3. Calculate Range, quartile deviation, standard deviation and coefficient of variation for
grouped data.
4. Partition values-quartiles for grouped and ungrouped data and display formatted results.
5. Data Base Creation (including vector, matrix, data frames).
6. Graphical representation (Bar, Pie, Line, Histogram, Scatter).
7. Cross tabulation and Descriptive Statistics.
8. Implement Correlation.
9. Perform simple Regression and show results in chart.
10. Testing of hypothesis for single mean.
11. Testing of hypothesis for comparison of means.
12. Chi-square test for independence of attributes.

SEMESTER – III

BCA331 – Introduction to Number Theory and Algebra

Total Teaching Hours for Semester: 45


Max Marks: 100 Credits: 3

Course Description: This course aims at familiarizing the students with the basic concepts,
some important results and proofs in Number Theory and includes some fundamental theories

33
Syllabus for Bachelor Computer Applications (BCA)-2022-23

required for learning cryptography. It also introduces the students to some of the fundamental
concepts of Group Theory.

Course Objectives
COBJ1: Define and interpret the concepts of divisibility, congruence, greatest common
divisor, prime, and prime-factorization.
COBJ22: Solve congruences of various types, and make use of the theory of congruences
in perceiving applications in cryptography.
COBJ33: Define and analyze groups, semigroups, subgroups, order of an element, cyclic
groups, coset decomposition and prove theorems related to these concepts.

Learning Outcomes:On successful completion of the course, the students should be able to
CO1: Enhance research, inquiry and analytical thinking abilities
CO2: Apply the basics of Number Theory and Algebra in solving problems
Unit-1 Teaching Hours: 15
Introduction to Number Theory
Divisibility, Division Algorithm, Modular Arithmetic, Application of Congruences, Cryptology,
Primes and Greatest Common Divisors

Unit-2 Teaching Hours: 15


Integers and Algorithms
Representation of Integers, Algorithms, Modular Exponentiation, Euclidean Algorithm,
Results on Congruences, Chinese Remainder Theorem, Fermat's Theorem, Applications of
Number Theory, Public Key Cryptography

Unit-3 Teaching Hours: 15


Algebraic structures
Structure of Algebras, Semigroups, Groups, Subgroups, Generators of a group, Cosets and
Lagranges Theorem, Isomorphism, Automorphisms, Permutation groups, Odd and Even
permutations

Text Books and Reference Books:


[1] K. H. Rosen, Discrete Mathematics and its Applications, 7th ed., McGraw – Hill, 2012.
[2] D. S. Chandrasekharaiah, Discrete Mathematical Structures, 4th ed., India: PRISM Book
Pvt. Ltd., 2012.
Essential Reading / Recommended Reading
[1] R.P. Grimaldi and B.V. Ramana, Discrete and Combinatorial Mathematics, An applied
introduction, 5th ed., Pearson Education, 2014.
[2] S. Lipschutz and M. Lipson, Discrete Mathematics, New Delhi: Tata McGraw-Hill,
2013. [3] N. L. Biggs, Discrete Mathematics, 2nd ed., New Delhi: Oxford University Press,
2014. [4] J. P. Tremblay and R. Manohar, Discrete Mathematical Structures with Application
to Computer Science, Reprint, India: Tata McGraw Hill Education, 2008.

34
Syllabus for Bachelor Computer Applications (BCA)-2022-23

BCA333 – OBJECT ORIENTED PROGRAMMING USING JAVA

Total Teaching Hours for Semester: 60


Max Marks: 100 Credits: 4

Course Objectives
• This course teaches students how to develop java applications. Course gives an overview
of difference between C++ and Java. Students will be developing and testing java
application as a practical course work. The course introduces the concept of UI design
in java using SWING and JAVAFX

Course Outcomes
CO1: Demonstrate their ability to understand the concepts of Object oriented
programming and will model the real world applications using Object Oriented
Programming concepts
CO2: Apply the concept of Multithreading in concurrent programming.
CO3: Able to Analyze & Design the concept of Event Handling and Swing
CO4: Build MVC and Custom Components using JSF

Unit-1 Teaching Hours: 10


JAVA BASICS

Java Fundamentals
Object oriented programming concepts – Benefits of OOPS-The origins of java - java’s lineage
C and C++ - how java impacted the internet - java bytecode - a first simple program - the java
keywords - identifiers in java - the java class libraries.

Introducing data types and operators


Why data types are important - java’s primitive types - literals - a closer look at variables - the
scope and lifetime of variables - operators - type conversion in assignments - casting
incompatible types - operator precedence -expressions.

Program control statements

Input characters from the keyboard - if statement - switch statement - for loop - the enhanced
for loop - the while loop - the do-while loop – break – continue - nested loops.

Unit-2 Teaching Hours: 10

ARRAYS AND CLASSES

Arrays
35
Syllabus for Bachelor Computer Applications (BCA)-2022-23

One dimensional arrays - multidimensional arrays - irregular arrays - alternative array


declaration syntax - assigning array references - using the length member- the for each style
for loop – command line arguments.
Class fundamentals - how objects are created - reference variables and assignment - methods
returning a value - using parameters - constructors - parameterized constructors - the new
operator revisited - garbage collection - the this keyword - controlling access to class members
- method overloading -overloading constructors - understanding static - introducing nested and
inner classes.

Unit-3 Teaching Hours: 11

Inheritance, Strings And Exception Handling

Inheritance

Inheritance basic - member access and inheritance - constructors and inheritance - using super
to call superclass constructors - using super to access superclass members - creating a
multilevel hierarchy - superclass references and subclass objects - method overriding - using
abstract classes -using final - the object class.
Strings

Constructing strings - operating on strings - arrays of strings - strings are immutable - using a
string to control a switch statement - different string handling functions.

Exception handling

The exception hierarchy - exception handling fundamentals - the consequences of an uncaught


exception - using multiple catch statements - catching subclass exceptions - try blocks can be
nested - throwing an exception - using finally -using throws - java’s built in exceptions -
creating exception subclasses.

Unit-4 Teaching Hours: 11

Interfaces, Using I/O And Multi Threading

Packages and Interfaces

Packages - packages and member access - understanding protected members -importing


packages - Interfaces - implementing interfaces - using interface references - variables in
interfaces - interfaces can be extended - default interface methods - use static methods in an
interface.

Using I/O

36
Syllabus for Bachelor Computer Applications (BCA)-2022-23

Java’s I/O is built upon streams - byte streams and character streams - the byte stream classes
- the character stream classes - the predefined streams-using the byte streams - reading and
writing files using byte streams - reading and writing binary data, using java’s character based
streams - file I/O using character streams.

Multithreaded programming

Multithreading fundamentals - the thread class and runnable interface - creating a thread -
creating multiple threads - determining when a thread ends -thread priorities - synchronization
- suspending, resuming, and stopping threads.

Unit-5 Teaching Hours:9

SWING

Introducing swing - the origins and design philosophy of swing - components and containers -
layout managers - swing event handling - use of JButton -work with JTextField - create a
JCheckBox - work with JList.

Self Study

Advanced SWING components

Unit-6 Teaching Hours:9

INTRODUCING JAVAFX

Javafx basic concepts - the javafx packages - the stage and scene classes -nodes and scene
graphs - layouts - the application class and the life-cycle methods - launching a javafx
application - a javafx application skeleton -compiling and running a javafx program - the
application thread - a simple javafx control- label - using buttons and events - three more javafx
controls-CheckBox – ListView – TextField -introducing effects and transforms.

Text Books and Reference Books:


[1] Java ™ A Beginner’s Guide, Herbert Schildt, McGraw-Hill Education, 7th Edition, 2017

Essential Reading / Recommended Reading


[1] Schildt Herbert, Java :The Complete Reference, Tata McGraw- Hill, 10th Edition,2017
[2] Dr.Rao,Nageswara ,Core Java,An Integrated Approach ,New Edition Kongent Solutions
Inc, 2009. 2005.

37
Syllabus for Bachelor Computer Applications (BCA)-2022-23

BCA334 – DATABASE MANAGEMENT SYSTEM

Total Teaching Hours for Semester: 60


Max Marks: 100 Credits: 4

Course Objectives

This course concentrates on introduction, principles, design and implementation of DBMS. It


introduces about the distributed system and brief about data mining and data warehouse. To
provide strong foundation of database concepts and develop skills for the design and
implementation of a database application with a brief exposure to advanced database
concepts.

Course Outcomes
CO1: Understanding the core terms, concepts, and tools of relational database
management systems.
CO2: Understanding database design and logic development for database programming.

Unit-1 Teaching Hours: 10


INTRODUCTION

Data, Database, Database management system, Characteristics of the database approach, Role
of Database administrators, Role of Database Designers, End Users, Advantages of Using a
DBMS and When not to use a DBMS.

DBMS Architecture

Data Models – Categories of data models, Schemas, Instances, and Database states. DBMS
Architecture and Data Independence – The Three schema architecture, Data independence
.DBMS Languages and Interfaces.Classifications of Database Management Systems.

Unit-2 Teaching Hours: 10

Data Modeling Using Entity-Relationship Model

38
Syllabus for Bachelor Computer Applications (BCA)-2022-23

Using High Level Conceptual Data Models for Database Design, Example Database
applications. Entity types, Entity Sets, Attributes and Keys. Relationships, Relationship types,
Roles and Structural constraints. Weak Entity Types and Drawing E- R Diagrams.

Index Structures for Files


Single Level Ordered Indexes – Primary indexes, Clustering indexes and Secondary indexes.
Multi-level indexes, Hashing concepts.

Unit-3 Teaching Hours: 10

Relational Data Model


Relation, Integrity constraints - domain, entity and Referential integrity constraints, Basic
Relational Algebra operations, select, project and join operations.

Database Design

Functional dependencies and Normalization for Relational Databases - Normalization


concepts, first,second, third normal forms, Boyce-Codd normal form.

Unit-4 Teaching Hours: 10


SQL

SQL data definition and data types, specifying constraints in SQL, schema change statements,
Basic queries, More Complex SQL queries, INSERT, DELETE and UPDATE statements in
SQL, Views – Concept of a view in SQL.

Transaction Processing Concepts and Concurrency Control Techniques

Transaction and System concepts – Desirable properties of Transactions – Schedules and


Recoverability. Lock-Based Protocols – Locks, Granting of Locks, and Two phase locking
protocol and implementation of locking.

Unit-5 Teaching Hours: 10

Data Base Administration

Introduction to Database security issues, Discretionary Access Control Based on


Granting/Revoking of Privileges and Multi-level security.

Database Recovery

Recovery Concepts: Recovery Outline and Categorization of Recovery Algorithms, Caching


Buffering of Disk Blocks, Write-Ahead Logging, Steal/No-Steal, and Force/No-Force,
Checkpoints in the System log and Fuzzy Check pointing, Transaction Rollback.
39
Syllabus for Bachelor Computer Applications (BCA)-2022-23

Unit-6 Teaching Hours: 10

Distributed Databases

Distributed database concepts, Data fragmentation, Replication, and Allocation Techniques for
Distributed database design, Types of Distributed database systems.
Introduction to Advanced Database concepts
Brief introduction to Data warehousing and Data mining.

Text Books and Reference Books:


[1] ElmasriRamez and NavatheShamkant B, Fundamentals of Database Systems,
AddisonWesley, 6th Edition, 2010.

Essential Reading / Recommended Reading

[1] Silberschatz, Korth, Sudarshan, Database System Concepts, 5 Edition, McGraw Hill, 2006.
[2] O`neil Patricand, O`neil Elizabeth, Database Principles, Programming and Performance,
2nd Edition, Margon Kaufmann Publishers Inc, 2008.

40
Syllabus for Bachelor Computer Applications (BCA)-2022-23

BCA351 – JAVA PROGRAMMING LAB

Total Lab Hours for Semester: 60


Max Marks: 100 Credits: 2

Course Objectives
This course teaches students how to develop java applications. Course gives an overview of
difference between C++ and Java. Students will be developing and testing java application as
a practical course work. The course introduces the concept of UI design in java using SWING
and JAVAFX

Course Outcomes
CO1: Demonstrate their ability to understand the concepts of Object oriented
programming and will model the real world applications using Object Oriented
programming concepts
CO2: Apply the concept of Multithreading in concurrent programming.
CO3: Able to Analyze & Design the concept of Event Handling and Swing CO4: Build
MVC and Custom Components using JSF

List of programs
1. To implement different entry controlled and exit controlled looping statements
2. To Implement nesting of switch statement
3. To Implement single and multi-dimensional arrays
4. To implement constructor overloading and method overloading
5. To implement static keyword
6. To Implement multilevel inheritance
7. To implement super and this keyword
8. To implement abstract and final keyword
9. To implement methods of String class
10. To Implement exception handling and custom exceptions
11. To implement package and interface
12. To implement File Stream classes
13. To Implement multithreading
14. To implement mouse and keyboard events
15. To implement different layout managers
16. To design a customer registration form using advanced swing components
17. To implement 2D Shapes using JavaFX
18. To implement CheckBox and ListView events using JavaFX 19. To implement JavaFx
Effects and Transformation
41
Syllabus for Bachelor Computer Applications (BCA)-2022-23

BCA352 – DBMS LAB


Total Lab Hours for Semester: 60
Max Marks: 100 Credits: 2

Course Objectives
The main objective of this lab is to provide a strong foundation in database concepts,
understand and implement the use of Structured Query Language (SQL) and Procedural
Structured Query Language (PL/SQL) to create and query databases.

Course Outcomes
CO1: Design and implement a database schema for a given problem-domain using SQL-
DDL commands.
CO2: Populate and query a database using SQL (DML/DCL) commands.
CO3: Declare and enforce integrity constraints on a database using a state-of-the-art
RDBMS
CO4: Programming PL/SQL including stored procedures, stored functions, cursors,
packages.

List of programs

1. Introduction TO SQL

a. Logging on to SQL interface

b. Choosing and Describing Tables

c. Elements of the SQL Query

d. The System Dummy Table

e. Selecting Tables and Columns

f. Duplicate Information DISTINCT

g. Sorting Information

2. Data Definition Language (DDL)

a. Create

b. Drop

42
Syllabus for Bachelor Computer Applications (BCA)-2022-23

c. Alter

d. Rename

3. Integrity Constraints

a. Types of Constraint

b. Referential Integrity

c. Defining Constraints

4. Data Manipulation Language DML

a. Select
b. Insert

c. Update

d. Delete

5. Filtering Data Using Where

a. Where Operators

b. Where with Keywords

c. Where and Logical Operators

6. SQL Functions and Data types

a. Date and Time Functions

b. Numeric Functions

c. String Functions

d. Conversion Functions

7. Group By

a. Group Function Examples

b. Group Function with Having

43
Syllabus for Bachelor Computer Applications (BCA)-2022-23

8. Retrieving Data from Multiple Tables using Joins

a. Natural Join

b. Inner Join

c. Outer Join

9. Sub-Queries

a. Basic Subqueries

b. Multiple Column Subqueries

c. Subqueries with Having


d. Correlated Subqueries

10. Views

a. Create view

b. View with check option

11. Indexes

a. Create Index

b. Unique Option

c. When and What to Index

d. Drop Index

12. Data Control Language (DCL)

a. Grant

b. Revoke

13. Transaction Control Language


a. Commit

44
Syllabus for Bachelor Computer Applications (BCA)-2022-23

b. Rollback

c. Savepoint

d. Set Transaction

14. PL/SQL

a. Variables and type declarations

b. Loop structure

c. Procedures and Functions Reference Books:


1. Vikram Vaswani, MySQL(TM): The Complete Reference, McGraw Hill, The
Paperback edition, 2017.
2. James R Groff, Paul N. Weinberg and Andy Oppel, SQL The Complete Reference, 3rd
Edition, McGraw Hill, 2011.

SEMESTER - IV

BCA431 - GRAPH THEORY


Total Teaching Hours for Semester: 45
Max Marks: 100 Credits: 3
Course Description: It is a fundamental course in Graph Theory involving some basic
concepts like Classes of Graphs, Isomorphism, Connectivity, spanning trees and few standard
graph algorithms.

45
Syllabus for Bachelor Computer Applications (BCA)-2022-23

Course objectives:This course will help the learner to


COBJ1: gain familiarity with fundamental concepts of Graph Theory
COBJ2: understand and apply knowledge to analyze and solve problems using models of Graph
Theory
Learning Outcomes:On successful completion of the course, the students should be able to

CO1: enhance research, inquiry and analytical thinking abilities. CO2:


improve proof writing skills
CO3: apply the basics of Graph Theory in solving practical problems
Unit-1 Teaching Hours: 15
Introduction to Graphs
Graphs and Graph Models, Graph Terminology and Special Types of Graphs, Representing
Graphs and Graph Isomorphism, Connectivity.

Unit-2 Teaching Hours: 15


Algorithmic Graph Theory
Euler and Hamilton Paths, Shortest-Path Problems, Planar Graphs, Graph Coloring

Unit-3 Teaching Hours: 15


Trees
Introduction to Trees, Applications of Trees, Tree Traversal, Spanning Trees, Minimum
Spanning Trees

Text Books and Reference Books:


[1] K. H. Rosen, Discrete Mathematics and its Applications, 7th ed., McGraw – Hill, 2012.

Essential Reading / Recommended Reading


[1] N Deo, Graph Theory with applications to engineering and computer science, Delhi:
Prentice Hall of India, 1979.
[2] D.B. West, Introduction to Graph Theory, New Delhi: Prentice-Hall of India, 2011. [3]
J. P. Tremblay and R. Manohar, Discrete Mathematical Structures with Application to
Computer Science, Reprint, India: Tata McGraw Hill Education, 2008.
[4] R.P. Grimaldi and B.V. Ramana, Discrete and Combinatorial Mathematics, An applied
introduction, 5th ed., Pearson Education, 2007.
[5] D. S. Chandrasekharaiah, Discrete Mathematical Structures, 4th ed., India: PRISM Book
Pvt. Ltd., 2012

46
Syllabus for Bachelor Computer Applications (BCA)-2022-23

BCA433-DESIGN AND ANALYSIS OF ALGORITHMS


Total Teaching Hours For Semester: 60 No of Lecture Hours/Week: 4
Max Marks:100 Credits: 4
Course Objectives/Course Description
The course studies techniques for designing and analyzing algorithms and data structures.
It course concentrates on techniques for evaluating the performance of algorithms.
The relationship between inductive proof and creative evolution of algorithms is investigated.
Objectives of the course are
· To understand the ways to analyze and evaluate the performance of an algorithm
· To understand different types of algorithmic approach like greedy, divide and
conquer etc.

Course Outcome
Upon successful completion of the course
CO1: T he students will be able to evaluate the performance of algorithms.

UNIT 1 Teaching
Hours: 10

INTRODUCTION
A simple example of design using insertion sort, pseudo code for insertion sort and analysis
of time complexity. Performance Analysis - Space complexity and Time complexity
(posteriori testing, and a priori approach), Asymptotic Notations (O, Ω, Θ).Polynomial Vs.
Exponential Algorithms. Average, Best and Worst case complexity.

UNIT 2 Teaching
Hours: 12

DIVIDE AND CONQUER ALGORITHMS


Introduction to Divide and Conquer Algorithms - Finding the Maximum and Minimum, Quick
sort (Derivation of Average case analysis and Worst case analysis), Binary Search (Derivation
of Average case analysis), and Strassen's Matrix Multiplication.

UNIT 3 Teaching
Hours: 12

GREEDY ALGORITHMS

47
Syllabus for Bachelor Computer Applications (BCA)-2022-23

Introduction to Greedy Algorithms - Fractional Knapsack problem, minimum cost spanning


trees, Kruskal's and Prim's Algorithms, Optimal Merge patterns and SingleSource Shortest
Paths

UNIT 4 Teaching
Hours: 8

DYNAMIC PROGRAMMING
Definition - All-pairs shortest paths, Traveling salesman problem, optimal
parameterization for product of sequence of matrices and Multistage graphs

UNIT 5 Teaching
Hours:10

BACK TRACKING AND RANDOMIZED ALGORITHMS


Introduction - N-Queens, Sum of Subsets, Graph coloring, Hamiltonian Cycles problem using
Back tracking algorithms. Random Number Generators and Primality Testing using
randomized algorithms

UNIT 6 Teaching
Hours: 8

GRAPHS AND HEAPS AND LOWER BOUND THEORY


Definitions - Adjacency Matrix, Adjacency Lists .Breadth First Search and Traversal, Depth
First Search and Traversal. Priority Queues using Heap and Design of Heap sort using Heap.

Text Books And Reference Books


[1] Horowitz, Sahni, Rajasekaran, Fundamentals of Computer Algorithms,Silicon Pr, 2nd
Edition, November 2012

Essential Reading / Recommended Reading

1. Donald E. Knuth, The Art of Computer Programming Volume 3, Sorting and


Searching, 2nd Edition, Pearson Education, Addison-Wesley, 1997.
2. GAV PAI, Data structures and Algorithms, Tata McGraw Hill, Jan 2008.

48
Syllabus for Bachelor Computer Applications (BCA)-2022-23

BCA434 – SOFTWARE ENGINEERING

Total Teaching Hours for Semester: 60


Max Marks: 100 Credits: 4

Course Objectives
This course is an introduction to software development process and design. It includes
the descriptions about stages of software development, various process models and
software engineering principles.
Course Outcomes
CO1: Understand the importance of the stages in the software life cycle.
CO2: Understand the various process models. CO3: Understand
the UML notation.
CO4: Be able to design software by applying the software engineering principles.

Unit-1 Teaching Hours: 10


Software and Software Engineering Nature of software- Defining software, Software
Application Domains, Legacy Software – Software Engineering, The software process,
Software Engineering practice – The essence of Practice – General Principles - Software
Myths.

Process models A generic process model – Defining a framework activity, identifying a Task
Set, Process Patterns - Process Assessment and improvement, Prescriptive Process Models –
The waterfall Model, Incremental Model, Evolutionary Process Model, Concurrent Models-,
A Final Word on Evolutionary Processes.

Unit-2 Teaching Hours: 10


Understanding Requirements – Requirements Engineering, Establishing the groundwork –
Identifying Stakeholders, Recognizing multiple viewpoints, Working toward Collaboration,
Asking the first questions-, Eliciting requirements – Collaborative requirement gathering,
Quality function Deployment, Usage Scenario Elicitation Work Products - , Developing use
cases, building the requirements model – Elements of the requirements Model, Analysis pattern
-, Negotiating requirements, validating requirements.

Requirement Modelling Requirement Analysis, Data modelling concepts, Class-based


modelling, Requirement modelling strategies, Flow oriented modelling.

Unit-3 Teaching Hours: 10


Design Concepts The design within the context of Software Engineering, The design process
– Software quality guidelines and attributes, The evolution of software design -, Design
concepts – Abstraction, Architecture, Patterns, Separation of concerns, Modularity, information
hiding, Functional Independence, refinement, Aspects, Refactoring, Object Oriented design
concepts Design classes -, The design Model – Data Design elements, Architectural Design

49
Syllabus for Bachelor Computer Applications (BCA)-2022-23

elements, Interface Design Elements, Component-Level Design elements, Deployment level


Design elements.
User Interface Design The golden rules- Place the User in Control, Reduce the User's Memory
load, Make the interface Consistent-, Interface Analysis and Design models, The Process,
Interface Analysis User Analysis, Task Analysis, Analysis of Display Content, Analysis of the
Work Environment-, Interface design steps – Applying Interface Design steps, User Interface
design patterns , Design Issues.

Unit-4 Teaching Hours: 10


Quality Management Introduction, Software quality, Achieving software quality, Review
metrics and their use, Informal reviews, Formal technical reviews, SQA tasks, Goals and
metrics, Formal approaches to SQA, Statistical Software quality assurance, Software
Reliability, SQA plan.

Unit-5 Teaching Hours: 10


Software Testing A Strategic approach to testing, Test strategies for conventional software, Test
strategies for Object Oriented software, Validation testing, White-box testing, Basic path
testing, control structure testing, Black-box testing, Object oriented testing methods.

Unit-6 Teaching Hours: 10


Project Management concepts The management spectrum, Metrics in the process and project
domains, software measurement, metrics for software quality, The project planning process,
Software project estimation, Decomposition techniques, Empirical estimation models, Project
scheduling, Risk identification, Risk projection, The RMMM plan.

Text Books and Reference Books:


[1] Pressman S Roger, Software Engineering A Practitioner‟s Approach, McGraw Hill,
International Editions, 7th edition, 2010.

Essential Reading / Recommended Reading


[1] Sommerville, Ian, Software Engineering, Addison Wesley, 9th Edition, 2010.
[2] Rumbaugh, James, Object Oriented Modeling and design, Pearson Education, New Delhi,
2005.

50
Syllabus for Bachelor Computer Applications (BCA)-2022-23

BCA435 – WEB TECHNOLOGY

Total Teaching Hours for Semester: 60


Max Marks: 100 Credits: 4

Course Objectives
This subject will provide basic understanding of WWW, Web Development, Client side and
Server side technologies to develop and deploy Websites on Internet.

Course Outcomes
CO1: Understand the concepts of Internet basics to design, implement and maintain a typical
web page
CO2: Develop and incorporate dynamic capabilities in Web pages using DOM and
JavaScript.
CO3: Learn the importance of server-side scripts for web Interactivity and Web Hosting

Unit-1 Teaching Hours: 10


WEB ESSENTIALS AND STYLE SHEETS
Clients, Servers, and Communication. The Internet - Basic Internet Protocols -The World
Wide Web - HTTP request message - response message - Web Clients - Web Servers - Markup
Languages: XHTML. An Introduction to HTML – History –Versions -Basic XHTML Syntax
and Semantics - Fundamentals of HTML.

CSS - Introduction to Cascading Style Sheets – Features - Core Syntax - Style Sheets and
HTML - Cascading and Inheritance - Text Properties – Positioning.

Unit-2 Teaching Hours: 10


CLIENT-SIDE PROGRAMMING
Introduction to JavaScript – Functions – Objects – Arrays – Built - in Objects - JavaScript
Debuggers. Browsers and the DOM - Introduction to the Document Object Model DOM
History and Levels - Intrinsic Event Handling - Modifying Element Style - The Document Tree
-DOM Event Handling.

Unit-3 Teaching Hours: 10


SERVER-SIDE PROGRAMMING
Introduction to PHP - Basic Programming Concepts of PHP: Variables - Data-types - Constants - Scope
of Variables - Type of Variables - Type Casting – Operators - Operators Precedence – References –
Arrays - Control Structures: Branching -If statement - Switch statement - Looping: for Loop - while
Loop - do while Loop - for each Loop -Functions: User Defined Functions - Built-in Function -
Functions for Variables - Script Controlling Functions - Array Functions - Date and Time Functions
Mathematical Functions -String Functions - PHP Server Variables; Working with form - Uploading files
to Web Server using PHP.

51
Syllabus for Bachelor Computer Applications (BCA)-2022-23

Unit-4 ` Teaching Hours: 12


PHP and MySQL
Basic commands with PHP examples - Connection to server - creating database - selecting a
database - listing database - listing table names - creating a table, -inserting data - altering tables
– queries -deleting database -deleting data and tables -PHP myadmin and database bugs.

Unit-5 Teaching Hours: 08


XML
Documents and Vocabularies - Versions and Declaration -Namespaces JavaScript and XML:
Ajax-DOM based XML processing. Selecting XML Data: XPATH - Template based
Transformations: XSLT - Displaying XML Documents in Browsers.

Unit-6 Teaching Hours: 08


JSF and JAVA Web Services
Introduction – Java Web Technologies – Creating and running simple application- JSF
components -Session Tracking.
Basics- Creating, Publishing and Consuming Web Services - Session Tracking in Web Services.

Text Books and Reference Books:


1. Web Technologies-A Computer Science Perspective, Jeffrey C.Jackson, Pearson
Education, 2008.
2. Internet & World Wide Web - How To Program, H.M.Deitel, P.J. Deitel , et.al , Pearson
Education, Fifth Edition, 2012.

Essential Reading / Recommended Reading


1. Programming the World Wide Web, Robert. W. Sebesta, Pearson Education, Fourth edition,
2007.
2. Web Technologies Uttam K Roy, Oxford University Press, 2011.
3. Web Programming: Desktop Management, Aferganatel, PHI, 2004.

4. Web Technology, Rajkamal, Tata McGraw-Hill, 2001.

52
Syllabus for Bachelor Computer Applications (BCA)-2022-23

BCA451 – .NET LAB


Total Lab Hours for Semester: 60
Max Marks: 100 Credits: 2
Course Objectives
The course introduces the concepts of converting the real time problems into an interactive
window based application to attain a solution.

Course Outcomes
CO1: Demonstrate the skills in designing an interactive Graphical User Interface using
windows based application.
CO2: Design and develop an application using fundamentals of object-oriented
programming concepts.
CO3: Build an application using different controls available in windows form application
and convert to exe file.

List of Programs
1. Introduction to windows form application design
(Tool box, Property window,Solution Explorer,Server Explorer) Properties associated
with each control
2. Introduction to common controls Part I and their properties
Text boxes
Rich Text Box
Label
Link label
Button
Panel
Event associated with each of the control
Changing the properties at runtime with C# code
3. Validating controls
Numbers
Texts
Regular expression
4. Looping structures If structure in C#
Switch case in C#
While loop in C#
Do .. While loop in C#
For loop in C#
5. Introduction to common controls Part II and their properties
List Box
Combo box
Check box
Radio button
Group Box
53
Syllabus for Bachelor Computer Applications (BCA)-2022-23

Events associated with each of the control


Changing the properties at runtime with C# code
6. Introduction to common controls Part III and their properties
Date time picker
Month Calendar
Numeric Up Down
Events associated with each of the controls
Changing properties at runtime using C# code
7. Introduction to common controls Part IV and their properties
Progress bar
Tool Tip
Picture box
Properties associated with each of the controls
Changing properties at runtime using C# code
8. Introduction to Menus & Toolbars and their properties
Menu Strip
Status Strip
Tool Strip
Events associated with each of the controls
Changing properties at runtime using C# code
9. Introduction to Dialog control and their properties
Font Dialog
Open File Dialog
Save File Dialog
Events associated with each of the controls
Changing properties at runtime using C# code
10. Introduction to database using SQL Server and their properties
Creating a table
Introducing Primary Key
Introducing Data types
Writing Queries in SQLServer (SELECT, UPDATE, DELETE, INSERT)
11. Windows Form Interaction with database using INSERT, UPDATE Query Connecting
form with database
Writing INSERT query in windows form to store data in the database
12. Windows Form Interaction with database using SELECT, DELETE Query Connecting
form with database
Writing SELECT query in windows form to store data in the database
13. Introduction to the control data grid. Retrieving data from the database to the grid control
14. Report generation
Generating reports using tools available
15. Converting the application to an exe file

54
Syllabus for Bachelor Computer Applications (BCA)-2022-23

BCA481 – DBMS PROJECT

Total Lab Hours for Semester: 90


Max Marks: 150 Credits: 3

Course Objectives
The purpose of this course is to provide comprehensive understanding to develop web
applications with database systems. Started with web programming using HTML, CSS, PHP
and connect with database concepts DDL, DML and PL/SQL.

Course Outcomes
CO1: Install, configure, and interact with a database management system
CO2: Describe, define and apply the database components to database design CO3:
Analyze the design of a database schema and apply normalization techniques
CO4: Develop dynamic web pages to meet specified needs using HTML, PHP, CSS

Part 1: Web Technology


HTML
1) Develop static pages using HTML
(Using Heading elements, Text Elements, Logical Styles, Physical Styles, Ordered,
Unordered and Definition list, Hyper Links, Image Link, Link to page containing Images
and Videos, File Link) 2) HTML Page using Frames.
(Navigation, Floating, Inline Frames , Frames to add Images and Videos)
CSS/ XSL /DTD
3) Add a Cascading Style sheet for designing the web page. 4)
Create any catalog and display it using CSS or XSL
5) Document Type Definition (DTD) to validate XML
JavaScript / PHP
6) Design a dynamic web page with validation using JavaScript
7) PHP program to perform File operations / Regular Expressions
8) PHP program to sort the records which are stored in the database
Data Connectivity and Web Services
9) Install DBMS/ Configure DB Connectivity
10) JSF and Web Services Configurations

Part 2: Database Management System Project

55
Syllabus for Bachelor Computer Applications (BCA)-2022-23

SEMESTER - V
BCA531-PYTHON PROGRAMMING
Total Teaching Hours For Semester:60 No of Lecture Hours/Week:4
Max Marks:100 Credits:4
Course Objectives/Course Description
This course covers the programming paradigms associated with python. It explores the object-
oriented programming, Graphical programming aspects of python with help of
built in modules.
The objective of this course is to provide comprehensive knowledge of python programming
paradigms

Course Outcome
CO1: Demonstrate the use of built-in objects of Python
CO2: Demonstrate significant experience with python program
development environment
CO3: Implement GUI programming concepts.

Unit-1 Teaching Hours:10


INTRODUCTION TO PYTHON DATA STRUCTURES
Underlying mechanism of Module Execution- Sequences, Mapping and Sets- Dictionaries-
Functions - Lists and Mutability- Problem Solving Using Lists and Functions

Unit -2 Teaching Hours:10

OBJECT ORIENTED PROGRAMMING USING PYTHON AND


REGULAR EXPRESSIONS
Classes: Classes and Instances-Inheritance—Polymorphism- Abstract classes-Exceptional
Handling- Regular Expressions using “re” module.

Unit -3 Teaching Hours:10

56
Syllabus for Bachelor Computer Applications (BCA)-2022-23

GUI PROGRAMMING
Introduction-Tkiner module-Root window-Widgets-Button-Label-Message-
TextMenuListboxes-Spinbox-Creating tables

Teaching Hours:10
Unit -4

FILE HANDLING
Writing and Reading Binary Data, Writing and Parsing Text Files, Writing and Parsing XML
Files.

Unit -5 Teaching Hours:9 INTRODUCTION TO WEB FRAMEWORK


Introduction-Web framework-creating model to add database service-python application
shellDjango administration application-input-forms and models

Unit -6 Teaching Hours:10

USING NUMPY AND PANDAS


Computation on NumPy-Aggregations-Computation on Arrays-Comparisons, Masks and
Boolean Arrays-Fancy Indexing-Sorting Arrays-Structured Data: NumPy’s Structured
Array. Introduction to Pandas Objects-Data indexing and Selection-Operating on Data in
Pandas-Handling Missing Data-Hierarchical Indexing

Text Books And Reference Books


3. Wesely J.Chun,Core Python Application Programming ,Prentice
Hall,third edition 2015.
4. T.R.Padmanabhan, Programming with Python,Springer Publications,2016

Essential Reading / Recommended Reading


1 Zhang.Y ,An Introduction to Python and Computer Programming, Springer
Publications,2016

57
Syllabus for Bachelor Computer Applications (BCA)-2022-23

BCA532-COMPUTER NETWORKS
Total Teaching Hours For Semester:60 No of Lecture Hours/Week:4
Max Marks:100 Credits:4

58
Syllabus for Bachelor Computer Applications (BCA)-2022-23

The goal of this course is to introduce the basics computer networks. Students will learn their
fundamental layered structure, understand common offered layered services, examine protocols and
algorithms used to operate the network. Objectives of the course are
• To study about network components.
• To study about topologies and network models.
• To study about various network protocols, algorithms.

Course Outcome
Students will be able to:
CO1: Gain knowledge about networks, internal components and its functionality. CO2:
Understand the Data communication concepts
CO3: Trace and analyse any communication in network
Unit I Teaching Hours: 10
Physical Layer :Data communications : components – Network criteria – physical structures – network
models – categories of networks –interconnection of networks – inter network Protocols and standards
: protocols-standards-standards organizations- internet standards Network models: Layered tasks – OSI
model – layers in the OSI model – TCP/IP protocol suite.

Unit II. Teaching Hours: 10


Digital Transmission: Digital to digital conversion: Line coding – line coding schemes – block coding
- analog to digital conversion – PCM - transmission modes: serial transmission – parallel transmission
Analog Transmission: Digital to analog conversion: FSK-ASK-PSK Analog to Analog conversion:
Amplitude modulation – Frequency modulation – phase modulation Multiplexing: Frequency division
multiplexing – Time division multiplexing –

Transmission Media Guided media: Twisted pair cable – coaxial cable – fiber optic cable Unguided
media: radio waves - micro waves – infrared.

Unit III Teaching Hours: 10


Data Link Layer: Error correction and detection: Introduction- block coding-linear block codscyclic
codes-checksum. Data link Control: protocols-simplest protocol- stop and wait protocol- stop and wait
automatic repeat request-go back n automatic repeat request-selective repeat-automatic repeat request-
piggybacking. MultipleAccess: Random access-Aloha-CSMA-CSMA/CD-CSMA/CA Controlled
access: reservation, polling, token passing. Channelization: FDMA,TDMA, CDMA.

Unit IV Teaching Hours:10


Wired LANs: Ethernet: IEEE standards, standard Ethernet- fast Ethernet. Wireless Lans: IEEE
802.11-arhitecture-MAC sublayer addressing mechanism, physical layer-Bluetooth:
architectureBluetooth layers-radio layer-baseband layer-L2CAP-other upper layers.
Network Layer: AddressingIPV4 addresses - IPV6 Addresses Internet Protocol: IPv4 –IPv6
Address mapping protocols: ARP – RARP.

59
Syllabus for Bachelor Computer Applications (BCA)-2022-23

Unit V Teaching Hours: 10


Routing protocols: Unicast routing protocols: distance vector routing, Link State routing
Multicast Routing protocols Any two Transport Layer: Process to process delivery – UDP –
TCP Congestion control and QOS:Data traffic – congestion – congestion control – quality of
service – techniques to improve quality of service.

Unit VI Teaching Hours: 10


Application layer: & Network Security :DNS: Overview of Name space Electronic mail
Architecture – FILE transfer: FTP WWW and HTTP: Architecture – web documents – HTTP
Network Security: Introduction - definitions – two categories - symmetric key cryptography –
traditional ciphers – asymmetric key cryptography

Text Books And Reference Books


th
[1] Behrouz A Forouzan, Data communication and networking, McGraw-Hill, 5 edition, 2012.

Essential Reading / Recommended Reading


th
[1] Andrew S Tanenbaum ,Computer Networks, PHI publications, 5 edition, 2011.

BCA551-PYTHON PROGRAMMING LAB

Credits:2
Course Objectives/Course Description
Learn to program and programming paradigms brought in by Python with a focus on File
Handling and Regular Expressions
Course Outcome
CO 1: Able to walkthrough algorithm
CO 2: Improve programming skills
CO 3: Appreciate Python Programming Paradigm
CO 4: Hands on Regular Expression
CO 5: Ability to Text Processing scripts

60
Syllabus for Bachelor Computer Applications (BCA)-2022-23

CO 6: Write to file handling scripts

Unit-1 Teaching Hours:60


List of Programs
1. Implement a sequential search
2. Create a calculator program
3. Explore string functions
4. Implement Selection Sort
5. Implement Stack
6. Read and write into a file
7. Demonstrate usage of basic regular expression
8. Demonstrate use of advanced regular expressions for data validation.
9. Demonstrate use of List
10. Demonstrate use of Dictionaries
11. Create Comma Separate Files (CSV), Load CSV files into internal Data Structure
12. Write script to work like a SQL SELECT statement for internal Data Structure made
in earlier exercise
13. Write script to work like a SQL Inner Join for an internal Data Structuremade in
earlier exercise
14. Demonstrate Exceptions in Python

Text Books And Reference Books


Mark Summerfield, Programming in Python 3 A Complete Introduction to the Python
Language, Addison-Wesely Reprint 2011
Essential Reading / Recommended Reading
Allen Downey, Think Python, Version 2.0.17, Green Tea Press, Needham,
Massachusetts,2012

61
Syllabus for Bachelor Computer Applications (BCA)-2022-23

SEMESTER – VI

BCA631-MACHINE LEARNING

Total Teaching Hours For Semester: 90 No of Lecture Hours/Week: 4 + 2


Max Marks: 150 Credits: 5

Course Objectives/Course Description


Machine learning is a discipline that focuses on algorithms which transform data into
actionable knowledge. This is an introductory course in machine learning to provide foundation
to the core machine learning principles and their real word applications.
The objective of this course is to provide introduction to the principles and applications of
machine learning algorithms.
Course Outcome
CO1: Understand the basic principles of machine learning models.
CO2: Evaluate and prepare data for machine learning models. CO3:
Evaluate the performance of machine learning models

UNIT 1 Teaching Hours:10


Origins of Machine Learning- Uses and abuses of machine learning- Machine learning
successes - limits of machine learning - machine learning ethics-data storage – abstraction –
generalization – evaluation - How machines learn- Machine Learning in practice – types of
input data – types of machine learning algorithms – matching input data to algorithms
Exploring and understanding data – exploring the structure of data – exploring numeric
variables – exploring categorical variables – exploring the relationship among variables
UNIT 2 Teaching Hours:10
Lazy Learning – Classification using Nearest neighbor- Understanding nearest neighbor
classification- measuring similarity with distance-choosing appropriate K, preparing data for
use with KNN-Why is K-NN algorithm Lazy
Probabilistic Learning – Classification using Naïve Bayes- Understanding naïve Bayes – basic
concepts of Bayesian Methods-understanding probability -understanding joint probability-
The naïve Bayes algorithm-classification with naïve Bayes- The Laplace corrector, using
numeric features for naïve Bayes

62
Syllabus for Bachelor Computer Applications (BCA)-2022-23

UNIT 3 Teaching Hours:10


Divide and conquer-classification using decision trees and rules-understanding decision trees
– the C5.0 algorithm - choosing the best split – pruning the decision tree - understanding
classification rules – Separate and Conquer – The 1R algorithm – the RIPPER algorithm –
Rules from decision tree – what makes trees and rules greedy

UNIT 4 Teaching Hours:10


Forecasting numeric data – regression methods – understanding regression – simple linear
regression, ordinary least square estimation – correlations – multiple linear regression
Black box methods – understanding neural networks – from biological to artificial neurons,
activation functions-network topology-training neural network with back propagation

UNIT 5 Teaching Hours:10


Finding groups of data – understanding clustering – clustering as machine learning task – using
distance to update clusters – choosing appropriate number of clusters

UNIT 6 Teaching Hours:10


Evaluating model performance-working with classification and prediction data-closer look at
confusion matrices-using confusion matrices to measure performance-beyond accuracy-other
measures of performance-visualizing trade offs List of Lab Programs
10. Demonstrate data Exploration (Numeric Data)
11. Demonstrate data Exploration (Categorical and Nominal Data)
12. Demonstrate simple linear regression
13. Demonstrate KNN classification
14. Demonstrate Naïve Bayes classification
15. Demonstrate classification using decision Tree
16. Demonstrate classification using MLP
17. Demonstrate data clustering Essential Reading:
1. Brett Lantz, Machine Learning with R: Expert techniques for predictive modeling, 3rd
Edition, Packt Publishing, 2019 Reference Books:
1. K. P. Murphy, Machine Learning: A Probabilistic Perspective. MIT Press, 2012.
2. P. Harrington, Machine Learning in Action. Manning Publications, 2012
3. C. M. Bishop, Pattern Recognition and Machine Learning. Springer, 2016.
4. S. Marsland, Machine Learning: An Algorithmic Perspective. 1st Ed. Chapman and Hall,
2009
Web Resources:

63
Syllabus for Bachelor Computer Applications (BCA)-2022-23

1. www.towardsdatascience.com
2. https://machinelearningmastery.com

BCA641A-CLOUD COMPUTING
Total Teaching Hours for Semester: 90 No of Lecture Hours/Week: 4 + 2
Max Marks: 150 Credits: 5

Course Objectives/Course Description

64
Syllabus for Bachelor Computer Applications (BCA)-2022-23

This course covers a series of current cloud computing technologies, including technologies
for Infrastructure as a Service, Platform as a Service, Software as a Service, and Physical
Systems as a Service. For different layers of the cloud technologies, practical solutions such as
Google, Amazon, Microsoft, SalesForce.com.
Course Outcome
CO1: Demonstrate the fundamental principles of distributed computing.
CO2: Evaluate the importance of virtualization technique and how this has enabled the
development of Cloud Computing
CO3: Critically evaluate business models that underlie cloud computing, including SaaS, PaaS,
IaaS, public cloud, private cloud, and hybrid cloud.
CO4: Design the appropriate cloud computing solutions and recommendations according to
the applications
Unit-1 Teaching Hours:10
INTRODUCTION
The vision of cloud computing - The cloud computing reference model - Characteristics and
benefits - Challenges ahead - Historical developments - Building cloud computing
environments - Application development - Infrastructure and system development Parallel
vs. distributed computing - Elements of parallel computing - Hardware architectures for
parallel processing - Approaches to parallel programming - Laws of caution.
Unit-2 Teaching Hours:10
CLOUD COMPUTING ARCHITECTURE
Virtualization: Introduction - Characteristics of virtualized environments - Taxonomy of
virtualization techniques - Virtualization and cloud computing - Pros and cons of virtualization
- Technology example: VMware: full virtualization Cloud Computing Architecture:
Introduction - The cloud reference model - Types of clouds - Economics of the cloud

Unit-3 Teaching Hours:10


UNDERSTANDING SERVICES AND APPLICATIONS
Defining Infrastructure as a Service (IaaS) - IaaS workloads - Pods, aggregation - Defining
Platform as a Service (PaaS) - Defining Software as a Service (SaaS) - SaaS characteristics -
Open SaaS and SOA - Salesforce.com and CRM SaaS - Defining Identity as a Service (IDaaS)
- Identity - Authorization markup languages

Unit-4 Teaching Hours:10


CLOUD PLATFORMS IN INDUSTRY
Infrastructure as a Service1: Create compute service; Create and use storage; Create and
launch virtual network; launch a web server; Build a database server; Use Identity and Access
Management principles;
Platform as a Service2: Exposure to application development environment. Software as
a Service3: Application development and deployment.
Note:

65
Syllabus for Bachelor Computer Applications (BCA)-2022-23

1 - Using AWS/GCP
2 – Using Google AppEngine
3 – Using SalesForce.com

Unit-5 Teaching Hours:10

MEASURING THE CLOUD’S VALUE


Early adopters and new applications - The laws of cloudonomics - Cloud computing obstacles
- Behavioral factors relating to cloud adoption - Measuring cloud computing costs - Avoiding
Capital Expenditures - Right-sizing - Computing the Total Cost of Ownership - Specifying
Service Level Agreements - Defining Licensing Models.

Unit-6 Teaching Hours:10


CLOUD APPLICATIONS
Scientific applications - Healthcare: ECG analysis in the cloud - Geoscience: satellite image
processing - Business and consumer applications - CRM and ERP - Social networking -
Media applications - online gaming List of Lab Programs
1. Create Virtual Machines using Hypervisors (VMware/VM Box/KVM) Infrastructure
as a Service:
2. Create Compute service
3. Working with storage (Object storage)
4. Build virtual private network and launch a web server
5. Build a database server (RDBMS/NoSQL)
6. Introduction to Identity and Access Management Platform as a Service
7. Working with Google AppEngine Software as a Service:
8 Application development using Salesforce.

Text Books And Reference Books

[1] Rajkumar Buyya, Christian Vecchiola and S. Thamarai Selvi, “Mastering Cloud
Computing” - Foundations and Applications Programming , MK publications, 2013.
[2] . Barrie Sosinky, Cloud Computing: Bible, 1st edition, Wiley Publishing, Inc., 2011.

Essential Reading / Recommended Reading


[1] Anthony TVelte, Toby JVelteand Robert Elsenpeter, Cloud Computing –A Practical
Approach, Tata McGraw Hill Education Pvt Ltd, 2010.

[2] Michael J.Kavis, “Architecting the Cloud: Design Decisions for Cloud Computing
Service Models (SaaS, PaaS, and IaaS)”, John Wiley & Sons Inc., Jan 2014.

66
Syllabus for Bachelor Computer Applications (BCA)-2022-23

Additional Information
Ethics and Values
• Optimal usage of resources to support the economy

• Mechanism to ensure the privacy and safety of information in public domain •


Choosing the right services for better performance in computing

BCA681-MAJOR PROJECT

Total Teaching Hours For Semester:240 No of Lecture Hours/Week:16


Max Marks:600 Credits:8

Course Objectives/Course Description


-

Course Outcome
-

67
Syllabus for Bachelor Computer Applications (BCA)-2022-23

Unit-1 Teaching Hours:180


Major Project
-

Text Books And Reference Books


-
Essential Reading / Recommended Reading
-

68

You might also like