2022-2023 Syllabus
2022-2023 Syllabus
Syllabus
Bachelor of Computer Applications (BCA)
2022 - 23
1
Syllabus for Bachelor Computer Applications (BCA)-2022-23
Syllabus for Bachelor of Computer Applications-(BCA), 2022-23 approved by the Board of Studies,
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
4. Programme Objectives 4
5. Programme Outcomes 4
6. Programme Structure 6
Semester – I 10
Semester – II 28
Semester – III 44
Semester – IV 61
Semester – V 73
Semester – VI 106
3
Syllabus for Bachelor Computer Applications (BCA)-2022-23
Department Overview
Department of Computer Science of CHRIST (Deemed to be University) strives to shape
outstanding computer professionals with ethical and human values to reshape nation’s destiny.
The training imparted aims to prepare young minds for the challenging opportunities in the IT
industry with a global awareness rooted in the Indian soil, nourished and supported by experts
in the field.
Vision
The Department of Computer Science endeavors to imbibe the vision of the University
“Excellence and Service”. The department is committed to this philosophy which pervades
every aspect and functioning of the department.
Mission
“To develop IT professionals with ethical and human values”. To accomplish our mission, the
department encourages students to apply their acquired knowledge and skills towards
professional achievements in their career. The department also moulds the students to be
socially responsible and ethically sound.
Programme Objectives
• Provide strong foundations in fundamentals of computer science and applications for
employability and/or further graduation.
• Empower students with competencies in creative thinking and problem solving,
interpersonal communication and managerial skills.
• Facilitate overall understanding of the technological development with legal and ethical
issues.
• Equip the students in providing professional solutions to real-time problems.
• PO1: Acquire and Apply Knowledge: Ability to understand and apply the fundamental
principles, concepts and methods in key areas of Computer Applications and
multidisciplinary fields.
4
Syllabus for Bachelor Computer Applications (BCA)-2022-23
PO2: Problem Analysis: Ability to analyze real-time problems using various tools and
techniques.
PO3: Design and Development: Ability to design and develop solutions to meet the
desired needs.
PO4: State-of-art Technologies: Ability to adapt and apply emerging tools and
technologies.
PO5: Entrepreneurship and Innovation: Ability to provide sustainable and innovative
solutions for real-time problems.
PO6: Lifelong Learning: Ability to engage in continuous reflective learning in the
context of technological advancement.
PO7: Communication and Team Building: Ability to demonstrate effective
communication and interpersonal skills.
PO8: Ethics and Social Responsibility: Ability to integrate ethical and human values to
become a socially responsible citizen.
Ethics and Human Values
1. Only proprietary or open source software would be used for academic teaching and
learning purposes.
2. Copying of programs from internet, friends or from other sources is strictly discouraged
since it impairs development of programming skills.
3. Unique Practical Domain based exercises ensures that the students don’t involve in
code plagiarism.
4. Projects undertaken by students during the course are done in teams to improve
collaborative work and synergy between team members.
5. Projects involve modularization which initiates students to take individual
responsibility for common goals.
6. Passion for excellence is promoted among the students, be it in software development
or project documentation.
7. Giving due credit to sources during the Seminar and Research Assignment is promoted
among the students
8. The course and its design enforce the practice of good referencing technique to improve
the sense of integrity.
9. Courses involving group discussions and debates on ethical practices and human values
are designed to sensitize the students in dealing with customers and members within
the organization.
5
Syllabus for Bachelor Computer Applications (BCA)-2022-23
I Semester
II Semester
6
Syllabus for Bachelor Computer Applications (BCA)-2022-23
III Semester
IV Semester
7
Syllabus for Bachelor Computer Applications (BCA)-2022-23
V Semester
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)
8
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)
BCA672B UI / UX Design
BCA672C Software Testing DSEC 6 150 5
9
Syllabus for Bachelor Computer Applications (BCA)-2022-23
Semester – I
Course Objectives
This course focuses on preparing students to communicate verbally and non-verbally in an
effective manner. The aim is to introduce students to communication in a professional
environment. The application based modules sensitize students to the function of English
language in their careers. It is instrumental in learners comprehending the role of technical
English in communication.
• Introduce learners to language skills in their area of specialization.
• Enable them to enhance career prospects and employability through English
language skills
• Help students gain understanding of language at the workplace
• To develop verbal and non-verbal skills in English communication
Course Outcomes
CO1: Comprehension and demonstration of language in the field of technology
CO2: Prepare individuals as Independent communicators
CO3: Illustrate professional requirements through language proficiency
10
Syllabus for Bachelor Computer Applications (BCA)-2022-23
Learners will be acquainted with the basic of English language learning. They will be taught
to identifying technical vocabulary from the general. Technical magazines prescribed by the
institution that are subject specific can be used as teaching tools.
• Introduction to technical lexicon – help students identify jargon and technical
terminologies. Assist them comprehend the significance of implementation with
moderation through their subject literature.
• Internet lexis and contextualization – provide meanings accurately to ensure right
exercise of terms in a professional scenario through hands-on experience
• Circumstantial usage of diction – aid the comprehension of word usage as verbs and
nouns based on the requirement. Differentiating the meanings of synonyms and their
orientation in a text
• Integrating technical vocabulary in describing process and procedure – through
prescribed texts students can be made to enhance their language by right integration of
diction.
Mind mapping of textual diction and allied words – diagrammatically mapping of words based
on their meaning, context and usage will re-emphasise the words in the minds of the learners.
11
Syllabus for Bachelor Computer Applications (BCA)-2022-23
12
Syllabus for Bachelor Computer Applications (BCA)-2022-23
Lastly students will be introduced to typical work scenarios through hands-on sessions.
• Small talk – the purpose and role of small talk must be taught to the students. They can
be screened video clippings of the same. Mock sessions can be performed in the class.
The key phrases and language used can be imparted through provision of language
worksheets and skills checklists
• Meeting- types of meetings, hierarchy of most often featuring members, etiquette to
be held at meeting and the duties to be performed can be taught implicitly. Chairing,
setting the agenda, controlling the smooth functioning, participating, deliberating and
diplomacy must be made clear. The key phrases and language used can be taught
through language worksheets and skills checklists
Group discussion – group discussions are carried out at every level. Students must be
familiarized with the basics of a group discussions. Agreeing, disagreeing, and being
diplomatic are essentials to be imparted. The soft skills and language essentials most
commonly noted can be made comprehensible to the students. Vicarious learning and
language charts can be used as learning tools.
Evaluation Pattern
Mid Semester Exam
1 Sections A B C
2 No. of Questions in 5 3 3
each Sections
3 No. of Questions to 4 1 3
be answered
4 Marks for each 5 15 5
Question
5 Maximum marks 20 15 15
for each Section
Total : 50
End Semester Exam
1 Sections A B C
13
Syllabus for Bachelor Computer Applications (BCA)-2022-23
2 No. of Questions in 6 3 5
each Sections
3 No. of Questions to 4 2 5
be answered
4 Marks for each 5 15 10
Question
5 Maximum marks 20 30 50
for each Section
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.
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
14
Syllabus for Bachelor Computer Applications (BCA)-2022-23
Evaluation Pattern
15
Syllabus for Bachelor Computer Applications (BCA)-2022-23
No. of
Marks for
Unit and No. of subdivisions to be subdivisions Max. marks
Part each
set in the unit to be for the part
subdivision
answered
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
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.
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
17
Syllabus for Bachelor Computer Applications (BCA)-2022-23
C 6 5 10 50
Total 24 19 100
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.
18
Syllabus for Bachelor Computer Applications (BCA)-2022-23
Self-Learning:
Universal property of NOR gate
Self-Learning
Introduction to RAM, SRAM, DRAM, ROM, PROM, EPROM, EEPROM
19
Syllabus for Bachelor Computer Applications (BCA)-2022-23
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.
CO3: To write structured C programs, this is the foundation of any programming
language.
20
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.
21
Syllabus for Bachelor Computer Applications (BCA)-2022-23
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
22
Syllabus for Bachelor Computer Applications (BCA)-2022-23
12. Verification of the Function table of Binary Ripple Counter using JK FF.
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.
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.
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.
23
Syllabus for Bachelor Computer Applications (BCA)-2022-23
24
Syllabus for Bachelor Computer Applications (BCA)-2022-23
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.
FUNCTIONAL PROGRAMMING
Lambda functions, Higher order functions, Map, Filter, Reduce, Using Lambda with
map(),filter(),reduce()
Essential Reading:
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
SEMESTER – II
26
Syllabus for Bachelor Computer Applications (BCA)-2022-23
Course Objectives
This course focuses on making students understand the vitality of English as a tool in
implementing and; interpreting technical and professional communication. The course aims at
detecting and nurturing research skills through English for professional development. A
holistic approach to recognize the fundamental role of language in technical communication is
undertaken.
• Nurture an enquiring spirit through English language in Technical communication
• Enhance English implementation in English learning for professional purposes
• Encourage students towards autonomous learning through enhanced English
comprehension that go beyond the classroom
Course Outcomes
CO1: Students will demonstrate better comprehension and interpretation of technical
literature
CO2: Rudimentary research aptitude through language up-gradation will be initiated CO3:
Learn the nuances of professional communication through English language
27
Syllabus for Bachelor Computer Applications (BCA)-2022-23
28
Syllabus for Bachelor Computer Applications (BCA)-2022-23
Productive skill; writing is nurtured in this chapter. A few elements of the same was handled
in the first semester. Here students will further finesse their writing skills
• Official letter – the types and format of official letter can be imparted through examples.
Students can be then asked to draft letters of their own. Etiquettes of letter writing,
register, style and specific language phrases must be taught. H examples can be used to
emphasise.
• Internet correspondence – the soft skills for corresponding through email, carbon
copying, blind carbon copying, salutations, register, style, format and diction must be
made familiar to the students,
• Resume writing – the organization of a resume along with the covering letter can be
imparted to the learners through providing several samples. They can then be made to
draft a resume with covering letter of their own.
Recommended Reading
1. Day, R A. Scientific English: A Guide for Scientists and Other Professionals. 2nd ed.
Hyderabad: Universities Press, 2000. .
2. Meenakshi Raman and Sangeetha Sharama . 2009. Technical Communication-
Principles and Practice; - Oxford University Press,
3. Jay. Effective Presentation. New Delhi: Pearson, 2009.
4. English for Effective Communication. Oxford University Press, 2013.
5. Lynch, Tony. Study Listening. New Delhi. CUP, 2008.
Evaluation Pattern
29
Syllabus for Bachelor Computer Applications (BCA)-2022-23
1 Sections A B
2 No. of Questions in 4 3
each Sections
3 No. of Questions to 5 2
be answered
4 Marks for each 5 15
Question
5 Maximum marks 20 30
for each Section
Total Marks: 50
End Semester Exam
1 Sections A B C
2 No. of Questions in 6 3 2
each Sections
3 No. of Questions to 5 3 2
be answered
4 Marks for each 5 15 15
Question
5 Maximum marks 25 45 30
for each Section
Total Marks:100
30
Syllabus for Bachelor Computer Applications (BCA)-2022-23
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
31
Syllabus for Bachelor Computer Applications (BCA)-2022-23
Evaluation Pattern
45
32
Syllabus for Bachelor Computer Applications (BCA)-2022-23
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.
33
Syllabus for Bachelor Computer Applications (BCA)-2022-23
[1] Berenson and Levine, Basic Business Statistics, New Jersey, Prentice- Hall India, 6 ed.
1996.
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
34
Syllabus for Bachelor Computer Applications (BCA)-2022-23
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.
35
Syllabus for Bachelor Computer Applications (BCA)-2022-23
CPU Scheduling
CPU Scheduling concepts; Scheduling criteria; Scheduling algorithms; Overview of thread
scheduling; Multi-processor scheduling
Self Learning
File system structure, Directory structure
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.
36
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.
37
Syllabus for Bachelor Computer Applications (BCA)-2022-23
38
Syllabus for Bachelor Computer Applications (BCA)-2022-23
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.
39
Syllabus for Bachelor Computer Applications (BCA)-2022-23
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
10. Graphs:
40
Syllabus for Bachelor Computer Applications (BCA)-2022-23
Course Objectives
The course is designed to provide a practical exposure on data structure and its applications.
Course Outcomes
Upon completion of the course
41
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
BCA361A - GERMAN
Course Objectives
The Basic Course in German aims to provide students a good knowledge of the language,
enabling them to read, write and speak German, whereby the emphasis is laid on speech.
Course Outcomes
42
Syllabus for Bachelor Computer Applications (BCA)-2022-23
BCA361B - FRENCH
Course Objectives
The curriculum of the French course offered as II language to IB.A /B.Sc /B.Com /BBM
students is designed to suit the present day requirements where the emphasis is more on the
Oral communication. Beginning at an intermediate level, the method progresses to an
advanced level through day to day situations with its dialogues where the stress is on the
spoken word. The part on French civilization offers one useful insights on life and living in
France.
43
Syllabus for Bachelor Computer Applications (BCA)-2022-23
The teaching hours include tutorials - exercises, activities like role plays, creative projects and
moodle testing.
1. Happy Journey
[1] Girardet. J ; J.Pécheur. Echo A1 Méthode de français. Paris : Clé International, 2010. (
Units 1 & 2, L 1-6 )
[2] Hills & Dondo. Contes Dramatiques. Paris: D.C Heath & Co.,1927
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
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.
44
Syllabus for Bachelor Computer Applications (BCA)-2022-23
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
Course Objectives
45
Syllabus for Bachelor Computer Applications (BCA)-2022-23
The objective of this paper is to provide some basic knowledge about accounting concepts,
conventions, and procedure to record the business transactions. This is also to give them an
overall idea about how accounting standards are followed in recording and maintaining books
of accounts. It helps them in reading and analysing the financial position of the company.
Course Outcomes
Upon successful completion of the course
CO1: Student will be familiarized with the concept of accounting.
CO2: Student will get an idea about how the final accounts helps to analyze about a
company‘s financial strength and viability.
Cash Book
Meaning, objectives and classifications. Difference between cash and trade discount.
Problems on triple column cash book.
Bank Reconciliation Statement
Meaning, causes for difference between cash and pass book. Problems
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.
47
Syllabus for Bachelor Computer Applications (BCA)-2022-23
CO3: Able to Analyze & Design the concept of Event Handling and Swing
CO4: Build MVC and Custom Components using JSF
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.
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.
Arrays
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.
48
Syllabus for Bachelor Computer Applications (BCA)-2022-23
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
Using I/O
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.
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
49
Syllabus for Bachelor Computer Applications (BCA)-2022-23
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.
Course Objectives
50
Syllabus for Bachelor Computer Applications (BCA)-2022-23
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.
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.
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.
Database Design
51
Syllabus for Bachelor Computer Applications (BCA)-2022-23
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.
Database Recovery
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.
[1] Silberschatz, Korth, Sudarshan, Database System Concepts, 5 Edition, McGraw Hill, 2006.
52
Syllabus for Bachelor Computer Applications (BCA)-2022-23
[2] O`neil Patricand, O`neil Elizabeth, Database Principles, Programming and Performance,
2nd Edition, Margon Kaufmann Publishers Inc, 2008.
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
53
Syllabus for Bachelor Computer Applications (BCA)-2022-23
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
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
54
Syllabus for Bachelor Computer Applications (BCA)-2022-23
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
g. Sorting Information
a. Create
b. Drop
c. Alter
d. Rename
3. Integrity Constraints
a. Types of Constraint
b. Referential Integrity
c. Defining Constraints
a. Select
55
Syllabus for Bachelor Computer Applications (BCA)-2022-23
b. Insert
c. Update
d. Delete
a. Where Operators
b. Numeric Functions
c. String Functions
d. Conversion Functions
7. Group By
a. Natural Join
b. Inner Join
c. Outer Join
9. Sub-Queries
a. Basic Subqueries
d. Correlated Subqueries
10. Views
a. Create view
11. Indexes
a. Create Index
b. Unique Option
d. Drop Index
a. Grant
b. Revoke
b. Rollback
c. Savepoint
d. Set Transaction
14. PL/SQL
b. Loop structure
57
Syllabus for Bachelor Computer Applications (BCA)-2022-23
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.
Course Objectives
The main objective of this tools lab is to practically implement the concepts in accounting.
• Demonstrate the financial accounting and financial management concepts using either
tally or excel software’s List of programs
58
Syllabus for Bachelor Computer Applications (BCA)-2022-23
SEMESTER - IV
59
Syllabus for Bachelor Computer Applications (BCA)-2022-23
Course Objectives
The main objective of this paper is to bring them knowledge about the basics of finance. It also
intends to provide various forms of techniques to make decision about longterm investment.
Various forms of financial statement analysis like ratios, fund flow and cash flow statement
also included to make them know about the tools of financial performance analysis.
60
Syllabus for Bachelor Computer Applications (BCA)-2022-23
Meaning, Types and Uses, Ratio Analysis-Meaning, Importance, Limitations, Types- Liquidity,
Solvency, Activity and Profitability Ratios.
61
Syllabus for Bachelor Computer Applications (BCA)-2022-23
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
62
Syllabus for Bachelor Computer Applications (BCA)-2022-23
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
UNIT 3 Teaching
Hours: 12
GREEDY ALGORITHMS
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
UNIT 6 Teaching
Hours: 8
63
Syllabus for Bachelor Computer Applications (BCA)-2022-23
64
Syllabus for Bachelor Computer Applications (BCA)-2022-23
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.
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.
65
Syllabus for Bachelor Computer Applications (BCA)-2022-23
Work Environment-, Interface design steps – Applying Interface Design steps, User Interface
design patterns , Design Issues.
66
Syllabus for Bachelor Computer Applications (BCA)-2022-23
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
CSS - Introduction to Cascading Style Sheets – Features - Core Syntax - Style Sheets and
HTML - Cascading and Inheritance - Text Properties – Positioning.
67
Syllabus for Bachelor Computer Applications (BCA)-2022-23
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
Events associated with each of the control
Changing the properties at runtime with C# code
69
Syllabus for Bachelor Computer Applications (BCA)-2022-23
70
Syllabus for Bachelor Computer Applications (BCA)-2022-23
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
71
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.
GUI PROGRAMMING
72
Syllabus for Bachelor Computer Applications (BCA)-2022-23
Teaching Hours:10
Unit -4
FILE HANDLING
Writing and Reading Binary Data, Writing and Parsing Text Files, Writing and Parsing XML
Files.
73
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
74
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.
Transmission Media Guided media: Twisted pair cable – coaxial cable – fiber optic cable Unguided
media: radio waves - micro waves – infrared.
75
Syllabus for Bachelor Computer Applications (BCA)-2022-23
BCA541A-MOBILE APPLICATIONS
76
Syllabus for Bachelor Computer Applications (BCA)-2022-23
Course Outcome
CO1: Build Android applications.
CO2: Explain the differences between Android, Windows and other mobile development
environments.
CO3: Secure, tune, package and deploy Applications.
Introduction
Designing User interface Designing by declaration, creating the opening screen, using
alternate resources, implementing an about box, applying a theme, adding a menu, adding
settings, debugging with log messages, debugging with debugger.
77
Syllabus for Bachelor Computer Applications (BCA)-2022-23
Vision and architecture - A different kind of phone - Windows phone architecture - Building
and delivering apps - Getting started with “Hello World”
78
Syllabus for Bachelor Computer Applications (BCA)-2022-23
Course Outcome
CO1: Create objects using 3d modelling.
CO2: Add effects using light and material.
CO3: Create animated frames.
Getting to Know Autodesk 3ds Max: Introduction, getting started, touring the interface,
working with objects, and viewing.
Creating Shapes with Splines: Drawing with splines, modifying a shape, outlining and
extruding splines, combining and extruding primitive splines, creating a solid form with
splines.
Editing Meshes and Creating Complex Objects: Creating shapes with Boolean objects, tracing
a sketch, editing meshes, create symmetric forms, smoothing meshes.
Organizing and Editing Objects: Naming and renaming objects, organizing objects by layer,
lofting an object.
Light and Shadow: Lighting your model, rendering a view, ambient light, adding shadow
effects, playing in the shadows, using the light listener, using scene states.
Enhancing Models with Materials: Understanding texture maps, adding materials to object,
editing materials, using the standard material, assigning materials to parts of an object.
Using the Camera: Understanding the 3ds max camera, setting up an interior view, creating
an environment, using immersive environment for animation, using render type and elements,
matching your scene to background image.
Organizing Objects and Scene Management: Gaining access, arranging furniture, replacing
objects, using the rendered framework window.
79
Syllabus for Bachelor Computer Applications (BCA)-2022-23
Understanding Animation: Understanding the world of video time, creating a quick study
animation, understanding keyframes, increasing and editing keyframes, adding more frames,
moving the camera target over time, controlling lights over time.
Creating Animations, Particles, and Dynamics: Rendering the animation, automating the
output, rendering a shadow study, creating a walkthrough, animation file output option, using
particle system.
Rigging for animation: Creating parent child hierarchies, using the morpher modifier,
assembling an articulated luminaire, understanding bones, understanding biped.
[1] R. L. Derakhshani and D. Derakhshani, Autodesk 3ds Max Essential. Sybex, 2011.
BCA541C-BUSINESS INTELLIGENCE
80
Syllabus for Bachelor Computer Applications (BCA)-2022-23
Many organizations have a wealth of data residing in their databases, and generate additional
valuable data that is often not captured. Business intelligence BI is the process of collecting and
turning this resource into business value. This course will provide an understanding of data
organization, and examine the BI processes and techniques used in transforming data to
knowledge and value.
Course Outcome
CO2: Select and/or develop, and deploy successful business intelligence systems to assist managers
in decision making.
CO4: Know when to use various data preparation and analysis techniques.
CO5: Know the strengths and weaknesses of various data mining tools and methods.
Basics of Data Integration ETL: Concepts of data integration need and advantages of using data
integration, introduction to common data integration approaches, introduction to ETL,
Introduction to data quality, data profiling concepts and applications.
81
Syllabus for Bachelor Computer Applications (BCA)-2022-23
Data Mining Functionalities: Association rules mining, Mining Association rules from single level,
multilevel transaction databases, Classification and prediction, Decision tree induction, Bayesian
Classification, k-nearest neighbour classification, Cluster analysis, Types of data in clustering,
categorization of clustering methods.
Case Study: Case study on BI Business applications, OLTP Models, Data Models.
[1] Cindi Howson ,Successful Business Intelligence, Unlock the Value of BI & Big Data Hardcover
–Second Edition: Import, 1 Nov 2013.
[2]Gert H.N. Laursen, JesperThorlund , Business Analytics for Managers: Taking Business
Intelligence beyond Reporting Paperback , 26 Sep 2013
Additional Information
82
Syllabus for Bachelor Computer Applications (BCA)-2022-23
will have both theoretical and practical approach on 8085 microprocessors. Objective of the course
is to help students to understand the basics of 8085 microprocessorbased Systems and assembly
language programming.
Course Outcome
Upon the completion of the course, students will be able to :
CO1: Identify the basic element and functions of 8085 microprocessor.
CO2: Describe the architecture of 8085 microprocessor.
CO3: Apply the programming techniques in developing the assembly language program.
83
Syllabus for Bachelor Computer Applications (BCA)-2022-23
and subroutines, Call and return instructions, Advanced subroutine concept. Assembly language
program Hexadecimal counter, Sum of odd and even numbers , Hex to BCD conversion.
Unit -6 Teaching Hours:8 Interrupts
Introduction – INTR, TRAP, RST 7.5, 6.5, 5.5, RST n instruction, SIM and RIM instructions.
and Interfacing using 8085, 8086 and 8051‖, 1st Ed. TMH, 2011, ISBN9780071329200.
[4] D.V.Hall ―Microprocessor and Digital System‖, McGraw Hill Publishing Company,
2008.
Additional Information
84
Syllabus for Bachelor Computer Applications (BCA)-2022-23
Learn the concepts of basic image processing techniques includes preprocessing, segmentation, and object
recognition
Course Outcome
CO1: Comprehend the knowledge of image processing techniques
CO2: Analyze image processing techniques in spatial domain
CO3: Design algorithms to solve classification and compression techniques
85
Syllabus for Bachelor Computer Applications (BCA)-2022-23
BCA542A-MULTIMEDIA APPLICATIONS
86
Syllabus for Bachelor Computer Applications (BCA)-2022-23
87
Syllabus for Bachelor Computer Applications (BCA)-2022-23
Working with Graphics-Understanding strokes and fills, creating shapes, making selections,
editing shapes, using gradients and bitmap fills, making patters and decorations, creating
curves, creating and editing text.
Creating and editing symbols-Importing illustrator files, about symbols, creating symbols,
importing Photoshop files, editing and managing symbols, changing the size and position of
instance, understanding blend effects, applying filters and special effects.
88
Syllabus for Bachelor Computer Applications (BCA)-2022-23
89
Syllabus for Bachelor Computer Applications (BCA)-2022-23
90
Syllabus for Bachelor Computer Applications (BCA)-2022-23
Course Objective:
This course aims to introduce the core fundamentals concepts of cyber security and privacy
related to various processes related to IT sectors.
Course Outcomes:
CO1: Understand the core fundamentals of system security
CO2: Demonstrate the security essentials related to Cyber Security and encryption Concepts
CO3: Analyse the Issues related to Privacy and Storage security in different IT domains CO4:
Apply and manage security essentials in IT Sector
91
Syllabus for Bachelor Computer Applications (BCA)-2022-23
Essential Readings:
1. John R.Vacca, Computer and Information Security Handbook, Second Edition, Elsevier
2013.
2. Michael E. Whitman, Herbert J. Mattord, Principal of Information Security, Fourth
Edition, Cengage Learning, 2012.
Reference books:
1. Richard E.Smith, Elementary Information Security, Second Edition, Jones and Bartlett
Learning, 2016
2. Jennifer L. Bayuk, J. Healey, P. Rohmeyer, Marcus Sachs , Jeffrey Schmidt, Joseph
Weiss “Cyber Security Policy Guidebook” John Wiley & Sons 2012.
92
Syllabus for Bachelor Computer Applications (BCA)-2022-23
BCA542D-COMPUTER ARCHITECTURE
Credits:4
94
Syllabus for Bachelor Computer Applications (BCA)-2022-23
BCA542E-SYSTEM SOFTWARE
Credits:4
Course Objectives/Course Description
This main aim of the course is to learn about the system software, which is a software designed
to operate and control the computer hardware. Students will be learning different concepts of
system software, like compiler phases. Marco language and processors etc. Provides basic
knowledge of various system software, to get deeper understanding of working of a computer
system.
Course Outcome
CO 1: Understanding basics of system software.
CO 2: Understanding design approaches for developing system software.
Unit-1 Teaching Hours:10
Introduction
System Software.Evolution of Components of a Programming System, General Machine
Structure - Memory, Registers, Data and Instructions. Machine Language - No Looping,
Address modification using instruction as Data and Index registers, Looping. Assembly
Language Program using Literals and pseudo -ops.
Unit-2 Teaching Hours:10
Assembler
General design procedure, Design of Assembler- Statement of problem, Data Structures,
Format of Databases, Algorithm 2-pass assembler in brief with flowchart.
Unit-3 Teaching Hours:10
Macro language and the macro processor
Macro instructions, Features of Macro facility , Macro instruction argument, Conditional
Macro expansions, Macro call within Macro, Implementation
Unit-4 Teaching Hours:10
Loaders and linkers
Loader Schemes - Compile and Go Loader, General Loader scheme, Absolute Loaders,
Subroutine Linkages, Relocating Loaders, Direct-Linking Loaders Binders, Linking loaders,
Overlays, Dynamic Binders, Design of an Absolute Loader, Design of direct linking loader
Unit-5 Teaching Hours:8
Compilers
Statement of problem – Problem No1 - Recognizing basic elements, Problem No 2 -
Recognizing syntactic units and interpreting meaning, Intermediate form , Problem no 3 –
95
Syllabus for Bachelor Computer Applications (BCA)-2022-23
96
Syllabus for Bachelor Computer Applications (BCA)-2022-23
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
CO 6: Write to file handling scripts
97
Syllabus for Bachelor Computer Applications (BCA)-2022-23
98
Syllabus for Bachelor Computer Applications (BCA)-2022-23
Credits:2
Course Objectives/Course Description
This course focuses on developing applications for modern Smartphone operating systems.
Most of the course is dedicated to Google's Android and Microsoft‘s Windows. Rapid
application development techniques are covered, as well as setup of the development
environment, real-world testing, and deployment.
• To provide a practical approach to Windows and Android mobile application development.
• To make students understand, how to develop and deploy an application to the app market.
Course Outcome
CO 1: Build your own Android and Windows applications.
CO 2: Explain the differences between Android, Windows and other mobile development
environments.
CO 3: Secure, tune, package and deploy Applications.
99
Syllabus for Bachelor Computer Applications (BCA)-2022-23
Additional Information
100
Syllabus for Bachelor Computer Applications (BCA)-2022-23
101
Syllabus for Bachelor Computer Applications (BCA)-2022-23
102
Syllabus for Bachelor Computer Applications (BCA)-2022-23
LIST OF PROGRAMS
1. Practice various data access methods. Representation formats: CSV, FLV, ARFF, XML.
2. Implement data conversion. eg. CSV2ARFF file format conversion in Java.
3. Configuring and testing the ETL tools.
4. Implement pipeline, sampling.
5. Implement surrogate keys.
6. Implement change in dimensions.
7. Practice data source views, dimensions, hierarchies.
8. Implement OLAP explorative data analysis with Pivot Tables.
103
Syllabus for Bachelor Computer Applications (BCA)-2022-23
104
Syllabus for Bachelor Computer Applications (BCA)-2022-23
105
Syllabus for Bachelor Computer Applications (BCA)-2022-23
-
BCA552- DIGITAL IMAGE PROCESSING LAB
106
Syllabus for Bachelor Computer Applications (BCA)-2022-23
SEMESTER – VI
BCA631-MACHINE LEARNING
107
Syllabus for Bachelor Computer Applications (BCA)-2022-23
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
108
Syllabus for Bachelor Computer Applications (BCA)-2022-23
BCA641A-CLOUD COMPUTING
Total Teaching Hours for Semester: 90 No of Lecture Hours/Week: 4 + 2
Max Marks: 150 Credits: 5
109
Syllabus for Bachelor Computer Applications (BCA)-2022-23
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
110
Syllabus for Bachelor Computer Applications (BCA)-2022-23
Additional Information
111
Syllabus for Bachelor Computer Applications (BCA)-2022-23
BCA641B-UI/UX DESIGN
2. Design a mobile application for furniture information system that gives various
furniture information to its users. For that select appropriate menu structure and use it
as per various guidelines and follow consistency for atleast 5 components such as
Menu title,Error messages,Menu status report,Menu Instructions,Function key usage of
menus etc.
113
Syllabus for Bachelor Computer Applications (BCA)-2022-23
3. Design a system that will helps user to check repharse,speak,write,personal Trainer and
settings in document.
8. Design any two web browser screens that helps its users for accessing various
information including images and video links and it includes various general icon
options, application based icons and various other general options.Follow the icon rules
for the same
9. Design an UID screen for an application that gives you information about a student hostel.Use
appropriate menus,icons,Logo,font style and sizes wherever required.
Text Books And Reference Books
[1] Shineiderman, Plaisant, Cohen, Jacobs, Designing the User Interface - Strategies for
Effective Human-Computer-Interaction, Pearson Education, 5th Edition, 2010.
Essential Reading / Recommended Reading
[1] Alan Dix, Human-Computer Interaction, Pearson Education,2009.
[2] Wilber O Galitz, An Introduction to GUI Design Principles and Techniques, John- Wiley
&Sons, 2007.
114
Syllabus for Bachelor Computer Applications (BCA)-2022-23
BCA641C-SOFTWARE TESTING
115
Syllabus for Bachelor Computer Applications (BCA)-2022-23
Process – Basic Definitions – Software Testing Principles – The Tester’s Role in a Software
Development Organization – Origins of Defects – Defect Classes – The Defect Repository and
Test Design – Defect Examples – Developer/Tester Support for Developing a Defect
Repository
Unit-2 Teaching Hours:11
Levels of Testing
The Need for Levels of Testing – Unit Test – Unit Test Planning –Designing the Unit Tests.
The Test Harness – Running the Unit tests and Recording results – Integration tests –
Designing Integration Tests – Integration Test Planning – scenario testing – defect bash
elimination -System Testing – types of system testing - Acceptance testing – performance
testing - Regression Testing – internationalization testing – ad-hoc testing - Alpha – Beta Tests
– testing OO systems – usability and accessibility testing.
List of Programs
116
Syllabus for Bachelor Computer Applications (BCA)-2022-23
1. Write a program to solve based on boundary value testing method for triangle problem. Derive test
cases for your program based on boundary value analysis, execute the test cases and discuss the
results.
2. Write a program to solve based on boundary value testing method for date validation. Generate
and execute possible test cases for dd/mm/yyyy format.
3. Write a program to implement any search algorithm and determine the basis paths and discuss the
results.
4. Write a program to implement the quicksort algorithm and determine the basis paths and derive
different test cases and execute the test cases
5. Write a program to test the path of the looping construct
6. Write a program to implement unit testing
7. Write a program to implement string validation for a particular PAN number
8. Implement form level validation
117
Syllabus for Bachelor Computer Applications (BCA)-2022-23
BCA641D-Internet of Things
118
Syllabus for Bachelor Computer Applications (BCA)-2022-23
IoT Devices, Exemplary Device: Raspberry Pi, About the Board, Linux on Raspberry Pi,
Raspberry Pi interfaces, Programming Raspberry Pi with Python. Other IoT Devices –
pcDuino, BeagleBone Black, Cubieboard.
IoT and M2M – Introduction, M2M, Difference between IoT and M2M, SDN and NFV for
IoT.
List of Programs
1. Study and Install IDE of Arduino / Raspberry Pi.
2. Write program using Arduino / Raspberry Pi for Blink LED and RGB LED.
3. Write program for monitoring temperature using Arduino / Raspberry Pi.
4. Write program for Traffic Light System Design using Arduino / Raspberry Pi.
5. Write program for reading analog and digital inputs using Arduino / Raspberry Pi.
6. Smart street lights: The street lights should increase or decrease their intensity based on the
actual requirements of the amount of light needed at that time of the day. This will save a
lot of energy for the municipal corporation.
119
Syllabus for Bachelor Computer Applications (BCA)-2022-23
7. An Agricultural System (Greenhouse System) that makes use of sensors like humidity,
temperature etc, to identify the current situation of the agricultural area and taking
necessary measures such as activating the water spraying motor, the alarm system (to
indicate if there is excess heat) etc.
8. Elderly care: We want to monitor very senior citizens whether they had a sudden fall. If a
very senior citizen falls suddenly while walking, due to stroke or slippery ground etc, a
notification should be sent out so that he/she can get immediate medical attention.
9. Implementing sensor data storage and analysis application using cloud computing.
10. Creating an application to send sensor data to central system for data evaluation and
throwing an appropriate message.
Essential Reading:
[1] ArshdeepBahga and Vijay Madisetti , "Internet of Things: A Hands-on Approach",
Universities Press, 2015
[2] Pethuru Raj and Anupama C. Raman , “The Internet of Things: Enabling Technologies,
Platforms, and Use Cases", CRC Press, 2017.
Reference Books:
[1] Brian Evans, Beginning Arduino Programming, Apress, 2011
[2] March Schwartz, “Internet of Things with Arduino Cookbook”, Packt Publishing, 2016
[3]Peter Waher, “Mastering Internet of Things: Design and create your own IoT applications
using Raspberry Pi 3”, Packt Publishing, 2018.
120
Syllabus for Bachelor Computer Applications (BCA)-2022-23
BCA641E-LINUX ADMINISTRATION
121
Syllabus for Bachelor Computer Applications (BCA)-2022-23
List of Programs
122
Syllabus for Bachelor Computer Applications (BCA)-2022-23
8. Swap Partitions
9. LVM Snapshot
10. LVM Extend
Essential Reading:
1. Mastering Linux Administration, Paul Cobbaut, First Edition, Samurai Media
Limited,2016.
2. Linux Administration: A Beginners Guide, Sixth Edition (Network Pro Library), Wale
Soynika,McGraw-Hill Education,2012.
Reference Books:
1. Collings Terry and Wall Kurt, Red Hat Linux Networking & System Administration,
Wiley Indian, 3rd Edition, reprint 2009.
2. Petersen Richard, The Complete Reference: Fedora 7 & Red Hat Enterprise Linux, Tata
McGraw Hill Edition, 2007.
Web Resources:
https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/
123
Syllabus for Bachelor Computer Applications (BCA)-2022-23
BCA681-MAJOR PROJECT
Course Outcome
-
124
Syllabus for Bachelor Computer Applications (BCA)-2022-23
• CIA is the regular assessment of programs from the list having four sections (A-D).
Each program carries 25 marks and the average in each section is considered for final
CIA.
• Evaluation Rubrics for each program in CIA is as follows:
o Attendance and on-time completion [5 Marks] o
Draft(observation) & Final Program (upload) [5 Marks] o
Complexity (Concepts & Operations) [5 Marks] o
Formatting and Validation [5 Marks] o
Viva-voce [5 Marks]
• If a student fails to appear for any of the Test, there will be only one repeat test
conducted in the last week of the semester. To appear for the repeat test, the student has
to apply for the same in the format given by the class teacher and by paying the required
fee, one week before the scheduled date. Appearance in the re-test is subject to the
approval by the Course teacher, Programme Coordinator and Head of the Department.
• CIA is the regular assessment of programs from the list having four sections (A-D).
• Section A shall be theory specific assignment for 40 marks. The rubric for assessment
of the same shall be included in the lab course plan by the respective course teacher.
• Each program of Section B-D carries 20 marks and the average in each section is
considered for final CIA.
• Evaluation Rubrics for each program in CIA is as follows:
o Attendance and on-time completion [4 Marks] o
Draft(observation) & Final Program (upload) [4 Marks] o
Complexity (Concepts & Operations) [4 Marks] o
Formatting and Validation [4 Marks] o
Viva-voce [4 Marks]
• Evaluation Rubrics for all three tests include few or all of the following with respect to
the final score of each test: o Writing ; Execution; Complexity; Formatting; Validation;
Viva-voce
• If a student fails to appear for any of the Test, there will be only one repeat test
conducted in the last week of the semester. To appear for the repeat test, the student has
to apply for the same in the format given by the class teacher and by paying the required
fee, one week before the scheduled date. Appearance in the re-test is subject to the
approval by the Course teacher, Programme Coordinator and Head of the Department.
Evaluation Pattern for Projects (Project Labs of 4Hrs/Week)
126
Syllabus for Bachelor Computer Applications (BCA)-2022-23
i) Synopsis Week 1 5
ii) Software requirement specification Week 3 10
iii) Database design Week 6 10
iv) User Interface design Week 7 10
Week 8 &
v) Initial draft 10
Week 13
vi) Final copy Week 14 10
vii) Attendance 5
2 Project Diary – CIA (40 Marks)
Alternate 40
Project Progress Tracking (PPT)*
week from
Week 6 to Week 13 (8*5=40) Week 6
Total (CIA) 100
Project Presentation & Demonstration – ESE(100
3
Marks)
Immediate
i) Presentation : Analysis and Design week after
Theory 20
(Guide, Internal Faculty, Peer Evaluation)
CIA1
Immediate
ii) Presentation and Demo 1 (50% of the project to be
week after
completed) 40
Theory
[Guide and Alumni Evaluation]
CIA2
Week
15/Last
iii) Presentation and Demo 2 [Guide and Internal
week of 40
Faculty from other cluster(PG/BSc) Evaluation]
the
semester
Total (ESE) 100
*Guide shall monitor the progress of the project team and evaluate team members individually.
127
Syllabus for Bachelor Computer Applications (BCA)-2022-23
x) Database design 40
xi) User Interface design 10
xii) Initial draft 10
xiii) Final copy 40
2 Project Diary – CIA (50 Marks)
i) Upto mid semester 30
ii) End of the semester 20
3 Project Presentation – CIA (100 Marks)
i) Up to database creation and inserting
records with constraints 50
128