0% found this document useful (0 votes)
184 views23 pages

Manipal Bachelor of Computer Applications (BCA) Structure - 2023-2024

The document outlines the syllabus structure for a Bachelor of Computer Applications degree program. It includes 6 semesters of courses covering topics such as programming, databases, software engineering, web design, and networking. It provides learning outcomes, course codes, titles, credits, and descriptions for each semester.

Uploaded by

Shubham Gupta
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
184 views23 pages

Manipal Bachelor of Computer Applications (BCA) Structure - 2023-2024

The document outlines the syllabus structure for a Bachelor of Computer Applications degree program. It includes 6 semesters of courses covering topics such as programming, databases, software engineering, web design, and networking. It provides learning outcomes, course codes, titles, credits, and descriptions for each semester.

Uploaded by

Shubham Gupta
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 23

Annexure 2

SYLLABUS STRUCTURE
(Effective from academic session 2023-24)

FOR THE DEGREE

OF

Bachelor of Computer Applications


(BCA)
Six-Semester Full Time
Programme

SCHOOL OF BASIC SCIENCES


ELIGIBILITY OF THE CANDIDATES:

The candidate must have passed 10+2 or A level or IB examination in any discipline with at least
50% marks in aggregate.

Program specific outcomes for Bachelor of Computer applications (BCA) program:

[PSO.1.] Prepare professionally trained in the areas of programming, databases, software


engineering, web- designing and networking and other completer application areas
to acquire knowledge in various domain-based prospects
[PSO.2.] Encourage to communicate effectively and to improve their competency skills to
solve real time problems
[PSO.3.] Clarity on both conceptual and application-oriented skills of
Computer Applications in Business context.
FIRST SEMESTER SECOND SEMESTER
YEAR
Course Code Course Name L T P C Course Code Course Name L T P C

MA1107 Fundamentals of Mathematics 3 1 0 4 MA1208 Basic Statistics and Probability 3 1 0 4

LN1108 Technical Communication 2 0 0 2 CA1201 Data Structures 3 1 0 4


CA1103 C Programming 3 1 0 4 CA1202 Database Management System 3 1 0 4

I CA1104 Fundamentals of Computers & 3 1 0 4 CA1203 Principle of Programming Languages 3 1 0 4


Digital Systems
Object-Oriented Programming usingC++
CA1105 Introduction to Web Programming 3 1 0 4 CA1204 3 1 0 4

CA1130 C Programming Lab 0 0 2 1 CA1231 Database Management System Lab 0 0 2 1

CA1132 Web Programming Lab 0 0 2 1 CA1232 Data Structures using C++ Lab 0 0 2 1

CY1003 Environmental Science 2 0 0 2


16 4 4 22 15 5 4 22
Total Contact Hours (L + T + P) 24 Total Contact Hours (L + T + P) 24
THIRD SEMESTER FOURTH SEMESTER

YEAR
Course
Subject Name L T P C Course Code Subject Name L T P C
Code
CA2101 Computer Organization and Architecture 3 1 0 4 CA2202 Python Programming 3 1 0 4
CA2104 Data Communication & Protocols 3 1 0 4 CA2203 Software Engineering 3 1 0 4
CA2105 Java Programming 3 1 0 4 CA2204 Data Mining & Visualization 3 1 0 4
CA2106 Operating Systems 3 1 0 4 CA2205 Introduction to Network Security 3 1 0 4

II CA2107 Artificial Intelligence for Problem Solving 3 1 0 4 XXXXX Open Elective / MOOC 3 0 0 3

CA2132 Java Programming Lab 0 0 2 1 CA2231 Python Programming Lab 0 0 2 1

CA2133 Operating System Lab 0 0 2 1 CA2232 Data Mining and Visualization Lab 0 0 2 1
15 5 4 22 15 4 4 21
Total Contact Hours (L+T+P) 24 Total Contact Hours (L+T+P) + OE 23
FIFTH SEMESTER SIXTH SEMESTER
YEAR

Course
Subject Name L T P C Course Code Subject Name L T P C
Code
CA3102 Mobile Application Development 3 1 0 4 CA3204 Wireless Communication 3 1 0 4
CA3105 Cloud Computing & Applications 3 1 0 4 CA3205 Unix and Shell Programming 3 1 0 4
CA3106 Machine Learning 3 1 0 4 CA3206 Big Data 3 1 0 4
CA31XX Program Elective-I 3 0 0 3 CA32XX Program Elective-II 3 0 0 3

CA3131 Mobile Application Development Lab 0 0 2 1 CA3231 Unix and Shell Programming Lab 0 0 2 1
III
CA3132 Machine Learning Lab 0 0 2 1 CA3270 Major Project 0 0 4 2

CA3170 Minor Project 0 0 2 1

CA3110 Aptitude and Technical Development 1 0 0 1


13 3 6 19 12 3 6 18
Total Contact Hours (L+T+P) 22 Total Contact Hours (L+T+P) 21
Total Credit= 124 (including first year)
Program Elective - I
CA3143 INTERNET OF THINGS

CA3144 CRYPTOGRAPHY

FUNDAMENTALS CA3145 REAL TIME

SYSTEMS

Program Elective - II
CA3240 SOFTWARE TESTING & QUALITY

ASSURANCE CA3241 CYBER SECURITY AND

FORENSICS

CA3242 DISTRIBUTED SYSTEM


FIRST SEMESTER

MA1107: FUNDAMENTALS OF MATHEMATICS [3 1 0 4]


Function: Definition, domain and range of function, types of functions (into, onto, one to one), composite
function. Limit: Definition, first principle, properties, and simple problems related to limit. Some standard limits.
Continuity: Definition, continuity of sum, product, difference and quotient of two continuous functions, simple
problems. Special Functions: Trigonometric functions and their properties, exponential functions, logarithmic
functions, hyperbolic functions, inverse circular functions and related properties, simple problems. Rational
functions, partial fraction and simple problems. Differentiation: Definition, differentiation of simple functions
using first principle, differentiation of trigonometric functions and inverse circular functions, method of
substitution, differentiation of product and quotient of functions, maxima and minima of a function of single
variable. Integration: Definition, integration of simple functions using substitution, integration of trigonometric
and inverse circular functions and related problems, integration by parts, integration of rational functions. Definite
integral and their properties, simple problems. Reduction formula and simple problems.

References:
1. Narayan, Differential Calculus, S. Chand & Co, Delhi, 2012.
2. S. Narayan, Integral Calculus, S. Chand & Co, Delhi, 2012.
3. M.D. Raisinghania, Differential Calculus, Delhi, 2010.
4. D. Mukherjee, Integral Calculus, U.N. Dhur, 1977.
5. N. Piskunov, Differential and Integral Calculus, Vol I & Vol II, CBS, 2000.

LN1108: TECHNICAL COMMUNICATION [2 0 0 2]


Introduction to communication: Types of communication, Process of communication, Principles of
communication, Channels of communication, Verbal and non-verbal communication, Formal and informal
communication, Barriers to communication. Vocabulary: Word formation, Affixes, Compound words, Synonyms,
Antonyms, Homophones and Homonyms, Misspelt words. Grammar: Punctuations, Parts of speech, Active and
passive voice, Direct and indirect speech, Concord, Common errors. Techniques of effective sentence
constructions, Précis writing. Structure and format of letter writing: Letter of Enquiry, Quotations, Orders,
Tenders, Complaint/adjustment letters, Job application letter, Resume, Group discussion. Art of Public Speaking:
Tips for effective presentations.

References:
1. A. Koneru, Professional Communication, (1e), Tata McGraw Hill, 2008.
2. L. C. Bovee, J. V. Thill, B. E. Schatzman, Business Communication Today, (7e), Pearson
Education, 2004.
3. L. Sen, Communication Skills, (2e), Prentice Hall, 2007.
4. M. Raman, S. Sharma, Technical Communication: Principles and Practice, (2e), Oxford University Press,
2013.

CA1103: C PROGRAMMING [3 1 0 4]
C Fundamentals: C program structure, Simple I/O operations, Operators and Expressions: Operator precedence
and associativity, bitwise operators, arithmetic expressions, evaluation of expressions, Flow of Control:
Statements and blocks, switch case statement, looping constructs. Arrays: arrays- Declaration and Initialization,
sorting. Strings: String – operations on strings, built-in string handling functions, programs on strings. Functions:
Modular programming, function declaration, definition and function call, Types of functions, function returning
more values, function with operators, function and decision statements, function and loop operators, function with
Arrays.

Reference:
1. E. Balaguruswamy, Programming in ANSI C, (5e) Tata McGraw Hill, 2012.
2. E. Balaguruswamy, Computing Fundamentals & C Programming, (2e), TataMcGraw Hill, 2017.
3. R. Thareja, Computer Fundamentals and Programming in C, (1e), Oxford University Press, 2016.
4. B. A. Forouzan, R. F. Gilberg, Computer Science: A structured programming Approach using C,
(3e), Cole Publishing Company-Cengage, 2007.
CA1104: FUNDAMENTALS OF COMPUTERS & DIGITAL SYSTEMS [3 1 0 4]
Introduction: Digital and Analog signals, Block diagram of a computer hardware, Generation of Computers, Types
of Computers, memory, Storage Devices, Input Devices, Output Devices, Number system, Boolean algebra, De-
Morgan’s law, simplification of Boolean algebra, Logic Gates: basic and universal gates, simplification method:
K-map and tabulation method. Combination circuit: introduction to combinational circuit, half adder circuit, full
adder circuit, half subtracted, full subtracted, binary parallel adder, carry propagation, magnitude comparator,
decoder, encoder, multiplexer, demultiplexer circuit, design of code converter Sequential circuit: Introduction to
Latches &flip flop. Types of flip flop S-R, D, J-K, T flip flop. Counter: Synchronous counters, asynchronous
counter, and shift register.

References:
1. S.K. Basanadra, Computers Today, Galgotia Publications, (1e) 2010.
2. P.K. Sinha, P. Sinha, Computer Fundamentals, (6e), BPB Publications, 2007.
3. A. Leo, M. Leon, Introduction to Computers, (1e), Vikas Publishing House, 2009.
4. M. Mano, Digital Logic and Computer Design, (1e), Pearson Education India, 2017.
5. R. P. Jain, Modern Digital Electronics, (3e), Tata McGraw-Hill Education, 2003.
6. R.L. Tokheim, Digital Electronics: Principles and Applications, (6e), Tata McGraw Hill, 2007.

CA1105: INTRODUCTION TO WEB PROGRAMMING [3 1 0 4]


Introduction: HTML, features, uses & versions Using various HTML syntax, Head & Body Sections, Inserting
texts, Text alignment, Using images in pages, Hyperlinks – text and images, bookmarks, Backgrounds and Color
controls, creating and using Tables in HTML, and presentation, Use of font size & Attributes, List types and its
tags. Cascading Style sheets – defining and using simple CSS. Use of Frames and Forms in web pages, Image
editors, Issues in Web site creations & Maintenance. Web Designing: Introduction to WYSIWYG Design tools,
Introduction to Dreamweaver, Website Creation and maintenance, Web Hosting and Publishing Concepts; Client-
Side Programming: The JavaScript Language, History and Versions; Introduction to JavaScript in Perspective:
Syntax, Variables and Data Types, Statements, Operators, Literals, Functions, Objects, Arrays, Built-in Objects,
JavaScript Debuggers; Representing Web Data: XML-Documents and Vocabularies Versions and Declaration-
Namespaces, Displaying XML Documents in Browsers; Server-Side Programming: Java Servlets- Architecture ,
Overview- Servlet, Generating Dynamic Content, Life Cycle, Parameter Data, Sessions, Cookies; Electronic
commerce: E – Business model, E – Marketing, Online payments and security. Database and Connectivity:
ADO.Net. Distributed Application in C#, Visual programming interface with C#. Web controls, Web Forms.
References:
1. S. Powers, Dynamic Web Publishing, (2e), Sams, 1997.
2. K. Jamsa, K. King, HTML & Web Design, (1e), McGraw-Hill, 2002.
3. M. Michaelis, Essential C# 3.0: For .NET Framework, (2e), Pearson, 2010.
4. S. Johnson, Using Active Server Pages, (1e) Que, 2000.1. M. Mano, Digital Logic and Computer Design,
(1e), Pearson Education India, 2017.

CA1130: C PROGRAMMING LAB [0 0 2 1]


Introduction to MS-Office, Excel & PowerPoint, Simple C Programs (expression-oriented operations). Programs
to illustrate various operators in C. Programs using branching constructs (if, if-else-if, switch case). Programs
using looping constructs (for, while, do-while continue, break). Programs on 1D Arrays, Programs on 2D Arrays.
Programs on strings. Programs using functions (with and without recursion), passing parameters by value and
reference.
Reference:
1. E. Balaguruswamy, Programming in ANSI C, (5e), Tata McGraw Hill, 2012.
2. E. Balaguruswamy, Computing Fundamentals & C Programming, (2e), TataMcGraw Hill, 2017.
3. R. Thareja, Computer Fundamentals and Programming in C, (1e), Oxford University Press, 2017.
4. B. A. Forouzan, R. F. Gilberg, Computer Science: A structured programming Approach Using C,
(3e), Cole Publishing Company-Cengage, 2007.
CA1132: WEB PROGRAMMING LAB [0 0 2 1]
Simple HTML document using basic elements like: <HTML>, <body>, <head>, <title>, <br>, <hr>. Text
formatting tag: center, sup, em, ins, sub, font, h1 to h6, computer output tag: code, kbd, samp, tt, var, pre.
Programing based on HTML, HTML with CSS, DHTML with JavaScript, Servlet, JSP and Database Connectivity
Web pages. Classes and Objects, Display records by using database, Data list link control & Data binding using
dropdown list control, Inserting record into a database & Deleting record into a database, Data binding using data
list control & Data list control templates, Data binding using data grid & Data grid control template, Data grid
hyperlink & Data grid button column, Creating own table format using data grid, Web Form application.
References:
1. M. Michaelis, Essential C# 3.0: For .NET Framework, (2e), Pearson, 2010.
2. S. Johnson, Using Active Server Pages, (1e) Que, 2000.

CY1003: ENVIRONMENTAL SCIENCE [2 0 0 2]


Introduction: Multidisciplinary nature, scope and importance, sustainability and sustainable development.
Ecosystems: Concept, structure and function, energy flow, food chain, food webs and ecological succession,
examples. Natural Resources (Renewable and Non-renewable Resources): Land resources and land use change,
Land degradation, soil erosion and desertification, deforestation. Water: Use and over-exploitation, floods,
droughts, conflicts. Energy resources: Renewable and non- renewable energy sources, alternate energy sources,
growing energy needs, case studies. Biodiversity and Conservation: Levels, biogeographic zones, biodiversity
patterns and hot spots, India as a mega‐biodiversity nation; Endangered and endemic species, threats,
conservation, biodiversity services. Environmental Pollution: Type, causes, effects, and controls of Air, Water,
Soil and Noise pollution, nuclear hazards and human health risks, fireworks, solid waste management, case
studies. Environmental Policies and Practices: Climate change, global warming, ozone layer depletion, acid rain,
environment laws, environmental protection acts, international agreements, nature reserves, tribal populations and
rights, human wildlife conflicts in Indian context. Human Communities and the Environment: Human population
growth, human health and welfare, resettlement and rehabilitation, case studies, disaster management,
environmental ethics, environmental communication and public awareness, case studies. Field Work and visit.
References:
1. R. Rajagopalan, Environmental Studies: From Crisis to Cure, Oxford University Press, 2016.
2. A. K. De, Environmental Studies, New Age International Publishers, New Delhi, 2007.
3. E. Bharucha, Textbook of Environmental Studies for undergraduate courses, Universities Press,
Hyderabad, 2013.
4. R. Carson, Silent Spring, Houghton Mifflin Harcourt, 2002.
5. M. Gadgil & R. Guha, This Fissured Land: An Ecological History of India, University of California
Press, 1993.
6. M. J. Groom, K. Meffe Gary and C. R. Carroll, Principles of Conservation Biology, OUP, USA, 2005.

SECOND SEMESTER
MA1208: BASIC STATISTICS AND PROBABILITY [3 1 0 4]
Basic Statistics: Population, sample and data condensation, definition and scope of statistics, concept of
population and simple with illustration, raw data, attributes and variables, classification, frequency distribution,
cumulative frequency distribution. Measures of Central Tendency: Concept of central tendency, requirements of a
good measure of central tendency, arithmetic mean, median, mode, harmonic mean, geometric mean for grouped
and ungrouped data. Measures of Dispersion: Concept of dispersion, absolute and relative measure of dispersion,
range variance, standard deviation, coefficient of variation. Permutations and Combinations: Permutations of ‘n’
dissimilar objects taken ‘r’ at a time (with or without repetitions), nPr = n!/(n-r) !(without proof). Combinations of
‘r’ objects taken from ‘n’ objects, nCr = n!/(r!(n-r)!) (Without proof). Simple examples, applications. Probability:
Sample space, events and probability, experiments and random experiments, ideas of deterministic and non-
deterministic experiments, definition of sample space, discrete sample space, events, types of events, union and
intersections of two or more events, mutually exclusive events, complementary event, exhaustive event, simple
examples. Classical definition of probability, addition & multiplication theorems of probability without proof (up
to three events are expected). Definition of conditional probability. Definition of independence of two events, total
probability theorem and Baye’s theorem, simple numerical problems. Multiple correlation and regression (for the
three variables only).
References:
1. S. C. Gupta, Fundamentals of statistics, (7e), Himalaya Publishing House, 2016.
2. A. M. Gun, M. K. Gupta, D. Gupta, Fundamentals of statistics, (1e), World Press, 2016.
3. V. K. Rohtagi, An Introduction to Probability and Mathematical Statistics, (1e), Wiley, 1976.
4. S.P. Gupta, Statistical Methods, (1e), S. Chand, 2012.

CA1201: DATA STRUCTURES [3 1 0 4]


Introduction: Definitions, Concept of Data Structures, Overview of Data Structures. Arrays: Definitions,
terminologies, 1D Array: Memory allocation, Operations on array, Application of Arrays, 2D and 3D Array
representation, Linked Lists: Definition, Single Linked List: Representation in memory, operations (insertion,
deletion, modify etc.), Circular Linked List, Double Linked List. Stacks: Definition, Array and linked-list
representation of stack, Operations on Stack: Push, Pop, application of stack: infix to postfix, evaluation of
arithmetic expression, tower of Hanoi. Queues: Definition, Array and linked-list representation of Queue.
Operations on Queue: Insertion, Deletion. Various Queue Structure: Circular Queue, Priority Queue. Insertion,
Deletion operations on a Circular Queue and Priority Queue, Sorting and Searching: Insertion Sort, Selection Sort,
Merge Sort, Linear Search, Binary Search. Tree: Definitions and Concepts, Representation of binary tree, Binary
tree traversal (Inorder, postorder, preorder), Threaded binary tree, insertion and deletion, Binary search trees,
Applications of Trees- Some balanced tree mechanism, e.g., AVL trees, 2-3 trees, Height Balanced, Weight
Balance, B Tree, B+ Tree, Graph-Matrix Representation of Graphs, Elementary Graph operations.
References:
1. A. M. Tenenbaum, Data Structures Using C, (1e), Pearson Education, 2008.
2. R. Thareja, Data Structures Using C, (2e), Oxford University Press, 2014.

CA1202: DATABASE MANAGEMENT SYSTEM [3 1 0 4]


Introduction: Introduction to Database management system, some examples, characteristics of the database
approach, Relational Model. ER Models: Database modeling using the entity-relationship model, entity types,
entity sets attributes and keys, relationships. Database Design: Functional dependencies and normalization for
relational databases. SQL the Relational Database Standard: Data definition, constraints, Basic Queries in SQL,
More complex SQL queries, Insert, Update and Delete Statements in SQL. Transaction Processing: Transaction
processing concepts: Introduction to transaction processing, transaction and system concepts, desirable properties
of transactions, schedules and recoverability. Introduction to Cursors and Triggers.
References:
1. R. Ehmasri, S. Navathe, Fundamentals of Database Systems, (6e), Addison-Wesley, 2011.
2. A. Silberschatz, H. F. Korth, S. Sudarshan, Database System Concepts, (6e), McGraw-Hill, 2013.
3. C.J. Date, Introduction to Database Systems, (8e), Pearson Education, 2003.

CA1203: PRINCIPLES OF PROGRAMMING LANGUAGES [3 1 0 4]


Introduction: Programming language – design, spectrum and the study motivation, Compilation and interpretation.
Programming environments. Names, Scope, and Bindings: Concept of binding time, Object lifetime and storage
management, Scope rules and implementing scope, the binding of reference environments, Binding within a
scope, Separate compilation; Control Flow: Expression evaluation, Structured and unstructured flow, Sequencing,
Selection, Iteration, Recursion, Non-determinacy. Data Types: Type systems and checking, Records and variants,
Arrays, Strings, Sets, Pointers and recursive types, Lists, Files and Input/Output, Equality testing and assignment.
Subroutines and Control Abstraction: Stack layout, calling sequences, Parameter passing, Generic subroutines and
modules, Exception handling, Co-routines. Data Abstraction, Object Orientation: Object oriented programming,
Encapsulation and Inheritance, Dynamic method binding. Functional Languages: Origins, Concepts, Scheme,
Evaluation order, Higher-order functions, Functional programming in perspective; Logic Languages: Concepts,
Prolog, Logic programming in perspective; Scripting Languages: Common characteristics.
References:
1. M.L. Scott, Programming Language Pragmatics, (4e), Elsevier, 2009.
2. J. C. Mitchell, Concepts in programming languages, (1e), Cambridge University Press, 2002.
3. R. Sethi, Programming languages Concepts and Constructs, (2e), Pearson Education, 1996.
4. R Sebesta, Concepts of Programming Languages, (8e), Pearson Education, 2008.
5. A. Tucker, R. Noonan, Programming languages, (2e), Tata McGraw-Hill, 2007.
CA1204: OBJECT-ORIENTED PROGRAMMING USING C++ [3 1 0 4]
Object Oriented Programming Concepts: Evolution of object-oriented programming, OOPs characteristics,
Difference between C and C++. Program Basic: keywords, identifiers, data types, variables declaration and
definition, constants, operators, C++ program structure, control and conditional statement, type casting, pointers,
dynamic memory allocation, memory deallocation, array & its types. Class & Object: Introduction, data member
and member function access, returning objects, array of objects, scope resolution operator, constructor and
destructor, friend function, inline function, function overloading and operators overloading. Inheritance:
Introduction, types, access controllers, virtual functions, and abstract class. I/O Streams & Files: Streams
Hierarchy, Input Streams & Output Streams, Implementing various file operations on basic data types, Random
Access Files, Introduction to exception handling.

Reference:
1. E Balagurusamy, “Object Oriented Programming with C++” – Sixth Edition, Tata McGraw-Hill
Education.
2. Nicolai M. Josuttis, “The C++ Standard Library: A Tutorial and Handbook”, Addison-Wesley
Professional.
3. Sarang Poornachandra “Object-Oriented Programming with C++ “2Nd Ed., PHI Learning Pvt. Ltd.

CA1231: DATABASE MANAGEMENT SYSTEM LAB [0 0 2 1]


MySQL setup: data migration from MySQL to portable file as well as uploading data from portable file to
MySQL. SQL: Creating, Altering, and Dropping tables with Constraints, Insert Table. Detailed SELECT with
sub-queries, EQUI-JOINS, correlated sub-queries. GROUPING, SET, UPDATE, DELETE, VIEWS. PL/SQL:
Program Development: Iterative PL/SQL Blocks.
References:
1. R. Ehmasri, S. Navathe, Fundamentals of Database Systems, (6e), Addison-Wesley, 2011.
2. A. Silberschatz, H. F. Korth, S. Sudarshan, Database System Concepts, (6e), McGraw-Hill, 2013.

CA1232: DATA STRUCTURES USING C++ LAB [0 0 2 1]


Program Basic: keywords, data types, variables, constants, operators, control and conditional statement, type
casting, pointers, dynamic memory allocation, memory deallocation, array & its types and C++ program structure.
OOPs concepts: Class & Objects, friend function, inline function, function overloading and operator overloading,
Inheritance and its types, virtual function, abstract class, Input/Output operations. Data Structure Basic: Array
operations, dynamic memory allocation, Stack and Queue, linked list, types and operations.
Reference:
1. E. Balaguruswamy, “Object Oriented Programming with C++”, TMH.
2. Herbert Schildt, “C++ The Complete Reference”, TMH.

THIRD SEMESTER
CA2101: COMPUTER ORGANIZATION AND ARCHITECTURE [3 1 0 4]
General Computer Architecture: Block Diagram of typical Computer, Memory Section, Input/Output Section,
CPU, Registers, Arithmetic Unit, Instruction handling Areas, Stacks. Micro operations: Register Transfer, Bus and
Memory Transfer, Arithmetic Micro operations, Logic Micro operations, Shift Micro operations, Arithmetic Logic
Shift Unit. Basic Computer Organization and Design: Instruction Codes, Operation code, Timing and Control,
Instruction Cycle, Memory Reference Instructions, Input Output Instructions and Interrupts. Control Memory:
Control Word, Microinstruction, Microprogramming, Control Memory, Hardwired Central Processing Unit:
General Register Organization, Stack Organization, Instruction Formats, Addressing Modes, RISC, CISC
Pipelining and Vector Processing: Parallel Processing, Pipelining, Arithmetic Pipeline, Instruction Pipeline,
Vector Processing, Array Processors Input Output Organization: I/O Interface, Asynchronous Data Transfer,
Modes of Transfer, Priority Interrupt, DMA, IOP, Serial Communication. Memory Organization: Associative
Memory, Cache Memory, and Virtual Memory Introduction to Microprocessor: Machine Language, Assembly
Language, Assembler, High Level Language, Compiler, Interpreter, Internal Architecture 8085.
References:
1. C. Hammacher, Computer Organization, (5e), Tata McGraw-Hill, 2011.
2. M.M. Mano, Computer System Architecture, (3e), Pearson, 2007.
3. B.Govindarajalu, Computer Architecture and Organization, (2e), Tata McGraw-Hill, 2017.

CA2104: DATA COMMUNICATION & PROTOCOLS [3 1 0 4]


Data Transmission: Concepts and Terminology, Analog and Digital Data Transmission, Transmission
Impairments, Channel Capacity. Transmission Media: Guided Transmission Media, Wireless Transmission,
Wireless Propagation, Line-of-Sight Transmission. Signal Encoding Techniques: Analog and Digital Signals,
Digital-To-Digital Conversion: Line Coding Schemes, Block Coding, Scrambling, Analog-To-Digital Conversion:
Pulse Code Modulation, Delta Modulation, Digital-To-Analog Conversion: Amplitude Shift Keying, Frequency
Shift Keying, Phase Shift Keying. Digital Data Communication Techniques: Asynchronous and Synchronous
Transmission, Types of Errors, Error Detection, Error Correction, Line Configurations. Data Link Control
Protocols: Flow Control, Error Control, High-Level Data Link Control (HDLC). Multiplexing: Frequency-
Division Multiplexing (FDM), Time-Division Multiplexing (TDM), Code-Division Multiple Access (CDMA).
Spread Spectrum: The Concept of Spread Spectrum, Frequency Hopping Spread Spectrum (FHSS), Direct
Sequence Spread Spectrum (DSSS). Cellular Wireless Communication Techniques: Introduction, Generations:
1G, 2G, 3G, 4G, and 5G.
References:
1. W. Stallings., Data and Computer Communications, (8e), Pearson Education, 2007.
2. B. Forouzan, Data Communications & Networking, (5e), McGraw Hill, 2012.
3. L. Peterson, T. Davie, Computer Networks: A Systems Approach, (5e), Morgan Kaufmann Publishers,
2012.

CA2105: JAVA PROGRAMMING [3 1 0 4]


Introduction to OOP: Features of Java, How Java is different from C++, Data types, Control Statements,
identifiers, arrays, and operators. Inheritance: Multilevel hierarchy, method overriding, abstract classes, Final
classes, String Class. Packages and Interfaces: Defining, Implementing and Importing Packages. Exceptions:
Fundamentals, Types, Uncaught Exceptions, Multiple catch Clauses, Java’s Built-in Exception. Multithreading:
Creating, Implementing and Extending thread, thread priorities, synchronization suspending, resuming and
stopping Threads. String: String Constructors, Various Types of String Operations. Basic Packages of Java:
Java.lang, Java.util, Java.io. Event Handling: Event Model, Event Classes, Sources of Events, Event Listener
Interfaces AWT: Working with Windows, AWT Controls, Layout Managers. Swings: Class hierarchy and
components. Introduction to JSP.
References:
1. H. Schildt, Java The Complete Reference, (10e), Tata McGraw-Hill, 2017.
2. E. Balaguruswamy, Programming with JAVA, (5e,) McGraw-Hill, 2014.
3. D. Liang, Introduction to JAVA Programming, (7e), Pearson, 2009.

CA2106: OPERATING SYSTEMS [3 1 0 4]


Introduction: Basic concepts, Simple Batch Systems, Multi-programmed Batched Systems, Time Sharing
Systems, Protection; Processes and CPU scheduling: Process Concept, Process scheduling, Operation on
Processes, Cooperating Processes, Inter-process Communication. Scheduling Criteria, Scheduling algorithms;
Process Synchronization: The Critical-Section problem, Synchronization Hardware, Basics of Semaphores;
Deadlocks: Deadlock characterization, Methods of Handling Deadlock, Deadlock Prevention, Deadlock
Avoidance, Deadlock Detection & Recovery from Deadlock; Memory Management: Logical versus Physical
Address Space, Swapping, Contiguous Allocation, Paging. Virtual Memory: Demand paging, Page replacement,
Page-replacement algorithms.
References:
1. A. Silberschatz , P.B Galvin, G. Gagne ,Operating system concepts,(9e), Wiley, 2016 .
2. H. M. Deitel, An introduction to operating system, (1e), Wiley, 1983.
CA2107: ARTIFICIAL INTELLIGENCE FOR PROBLEM SOLVING [3 1 0 4]
Introduction to AI, Techniques and Intelligent Agent, Problem Solving: Solving Problems by Searching.
Uninformed search BFS, DFS, Iterative deepening, Bidirectional search, Hill climbing. Informed Search
Techniques: Heuristic, Greedy search, A* search, AO* search constraint satisfaction problems. Game Playing:
Minimax, alpha-beta pruning, jug problem, chess problem, tiles problem. Knowledge and Reasoning: Building a
Knowledge Base: Propositional logic, first order logic, situation calculus. Theorem Proving in First Order Logic.
Planning, partial order planning. Uncertain Knowledge and Reasoning, Probabilities, Bayesian Networks.
References:
1. Artificial Intelligence- Rich, Kevin Knight, Shiv Shankar B Nair, TMH, 3rd ed 2017.
2. Introduction to Artificial Intelligence, Patterson, PHI, 2nd ed 2014.
3. Artificial Intelligence, A New Synthesis, Nils J Nilsson, Elsevier, July 2003.

CA2132: JAVA PROGRAMMING LAB [0 0 2 1]


Programming Basics, classes & objects, constructor, overloading, returning objects, overriding, abstract class,
inheritance, interfaces, multithreading, exception handling, event handling, AWT and swings components,
graphical user interface, input output handling.
References:
1. H. Schildt, Java The Complete Reference, (10e), Tata McGraw-Hill, 2017.
2. E. Balaguruswamy, Programming with JAVA, (5e,) McGraw-Hill, 2014.

CA2133: OPERATING SYSTEM LAB [0 0 2 1]


Basic Unix Commands: date, clear, chmod, man, mail, passwd, pwd, cat, ls, mv, mkdir, cd, rm, rmdir, wc etc,
introduction to Vi editor ; UNIX shell : wild cards, redirection, pipes, sequencing, grouping, background
processing, command substitution, sub shells; Shell programming: shell scripts variables, loops (for, while), and
conditional statements (if else, case), Shell variables, arguments to shell procedure, test command, arithmetic with
EXPR command, interactive shell procedures with read ;CPU scheduling Algorithms: FCFS, SJF, RR;
Semaphores: Readers Writers Problem, Producer-Consumer Problem; Deadlock Avoidance: Bankers Algorithm;
Memory allocation: First fit, worst fit, best fit, next fit; Page Replacement : FIFO, Optimal, LRU.

References:
1. M. Bach, Design of Unix Operating System, (1e), PHI, 2015.
2. G. Glass, Unix for Programmers and Users- A complete guide, (3e), PHI, 2003.

FOURTH SEMESTER

CA2202: PYTHON PROGRAMMING [3 1 0 4]


Python concepts: Expressions, values, types, variables, operators, control flow, file I/O, the Python execution
model. Data structures: List, set, dictionary (mapping), tuple, List slicing (sublist), list comprehension (shorthand
for a loop), Mutable and immutable data structures, Distinction between identity and (abstract) value. Functions:
Procedural abstraction, functions as values, recursion, function design methodology. OOP: Classes & Object,
Inheritance, Polymorphism, The Python Library: String and Text Handling, Threading, Networking, Web
Programming, Graphical Programming, Database Access.
References:
1. D. M. Beazley, Python Essential Reference, (1e) Amazon Books, 2010.
2. M. Lutz, Programming Python, (4e), O'Reilly Media, 2010.

CA2203: SOFTWARE ENGINEERING [3 1 0 4]


Introduction to System Concepts: Definition, Elements of System, Characteristics of System, Types of System,
System Concepts. Introduction to Software Engineering: Definition, Need for software Engineering, Software
Characteristics, Software Qualities (McCall’s Quality Factors) Requirement Analysis: Definition of System
Analysis, Requirement Anticipation, Knowledge and Qualities of System Analyst, Role of a System Analyst,
Feasibility Study And It’s Types, User Transaction Requirement, User design Requirements, SRS(System
Requirement Specification) Software Development Methodologies: SDLC (System Development Life Cycle),
Waterfall Model, Spiral Model, Prototyping Model, Introduction to Agile Model. Analysis and Design Tools:
Entity Relationship Diagrams, Data Flow Diagrams (DFD), Data Dictionary & Elements of Data Dictionary,
Pseudo code, Input and Output Design. Structured System Design: Modules Concepts and Types of Modules,
Structured Chart, Qualities of Good Design, Coupling, Types of Coupling, Cohesion, Types of Cohesion.
Software Testing: Definition, Test characteristics, Types of testing - BlackBox Testing, White-Box Testing, Stress
Testing, Performance Testing.
References:
1. R. S. Pressman, Software Engineering, (5e), Tata McGraw Hills, 2009.
2. I. Sommerville, Software Engineering, (6e), Pearson Education Asia, 2005.
3. P. Jalote, An Integrated Approach to Software Engineering, (3e), Narosa, 2010.

CA2204: DATA MINING & VISUALIZATION [3 1 0 4]


Data Mining – Importance of Data Mining, Data Mining functionalities, Basic Data Mining structure, Data Mining
Applications, Differences between Operational Database and Data Warehouse – Multidimensional Data Model,
Data Cubes. Schemas, Measures, Data Reprocessing, Data Mining Primitives, Data Cleaning, Data Integration and
Transformation, Data Reduction, Discretization and concept of Hierarchy Generation, Schema Design: Star and
snow-Flake Schema, Data Mining Algorithms: Association Rule Mining, Classification and Clustering Basics.
Introduction to data visualization, importance of data visualization, data types, different tools for data
visualization. Understanding two-dimensional graph, three-dimensional graph. Introduction to dashboard, need of
dashboards. Pie Chart, Bar Chart, Histogram, Gantt Chart, Heat Map, Box and Whisker Plot, Waterfall Chart,
Area Chart, Scatter Plot, Pictogram Chart, Timeline, Highlight Table, Bullet Graph, Choropleth Map, Word
Cloud, Network Diagram, Correlation Matrices, geographical plots, Density Maps, Bubble Chart, Tree maps.
Dashboard development process, dashboard architecture.

References:
1. Kamber and Han, “Data Mining Concepts and Techniques”, Hartcourt India P. Ltd.,2001.
2. William H Inmon “Building the Data Warehouse”, Wiley, Fourth Edition 2005.
3. Paul Raj Poonia, “Fundamentals of Data Warehousing”, John Wiley & Sons, 2003.
4. Margret H Dunham,Data Mining Introductory and advanced topics, Pearson Education, 6th ed, 2009.
5. Shawkat Ali and Saleh Wasimi, Data Mining: Methods and Techniques, Cengage Learning, Indian
Edition, 2009.
6. Engebretsen, Martin, and Helen Kennedy. Data visualization in society. 2020.
7. Anouncia, S. Margret, Hardik A. Gohel, and Subbiah Vairamuthu. Data Visualization. Springer
Verlag, Singapore, 2020.

CA2205: INTRODUCTION TO NETWORK SECURITY [3 1 0 4]


Network security goals, Assurance, Authenticity, Trust management, Anonymity, Threats and attacks
(Eavesdropping, Alteration, Denial-of-service, Masquerading, Repudiation, Correlation and traceback), Security
principles, Economy of mechanism, Fail-safe defaults, Complete mediation, Open design, Separation of privilege,
Least privilege, Least common mechanism, Psychological acceptability, Work factor, Compromise recording,
Access Control, Role-based access control, Symmetric cryptosystems, Symmetric key distribution, Public-key
cryptography, Digital signatures, Hash functions, Message authentication codes, Digital certificates, Passwords,
Password complexity, Social Engineering, Physical Security: Authentication, TEMPEST, RFID, Biometrics,
Operating System Concepts and Buffer-over-flow, Operating System Security Application Program Security,
Malware: Insider Attacks, Malware, Privacy-Invasive Software, Countermeasures, Network Security: ARP,
ICMP, Sniffing, IP Spoofing, Network Security: TCP, UDP, NAT, TCP Session Hijacking, DoS, Network
Security: DNS, SSH, VPN, Network Security: IPSec, SSL, Firewall, Wireless security, Web Security,
Cryptography, Security Models and Practice, Digital Right Management, Spam and Cybercrime.

References:
1. Michael T. Goodrich & Roberto Tamassia, Introduction to Computer Security, ISBN-13: 978-0-321-
51294-9, ISBN-10: 0-321-51294-4, Pearson, 2011.
2. Vincent Nestler, Gregory White, wm. Arthur Conklin, Principles of Computer Security: CompTIA
Security+ and Beyond – Lab Manual, ISBN: 978-0-07-174856-8, MHID: 0-07-174856-3, McGraw Hill,
2011.

CA2231: PYTHON PROGRAMMING LAB [0 0 2 1]


Implement a sequential search, create a calculator program, explore string functions, Implement Selection Sort,
Implement Stack, Read and write into a file, demonstrate usage of basic regular expression, Demonstrate use of
advanced regular expressions for data validation. Demonstrate use of List, demonstrate use of Dictionaries, Create
Comma Separate Files (CSV), Load CSV files into internal Data Structure. Write script to work like a SQL
SELECT statement for internal Data Structure made in earlier exercise. Write script to work like a SQL Inner Join
for an internal Data Structure made in earlier exercise.
References:
1. D. M. Beazley, Python Essential Reference, (1e) Amazon Books, 2010.
2. M. Lutz, Programming Python, (4e), O'Reilly Media, 2010.

CA2232: DATA MINING & VISUALIZATION LAB [0 0 2 1]


Data Preparation – Cleaning – Missing data, Data Reduction – PCA, Data Transformation – Normalization,
Generate Association Rules using the Apriori algorithm, generating association rules using fp growth algorithm,
Build a Decision Tree by using J48 algorithm, Naïve bayes classification on a given data set, Applying k-means
clustering on a given data set, Calculating Information gains measures, OLAP Cube and its different operations,
Case studies.
Introduction to data visualization, importance of data visualization, data types, different tools for data
visualization. Understanding two-dimensional graph, three-dimensional graph. Introduction to dashboard, need of
dashboards. Pie Chart, Bar Chart, Histogram, Gantt Chart, Heat Map, Box and Whisker Plot, Waterfall Chart,
Area Chart, Scatter Plot, Pictogram Chart, Timeline, Highlight Table, Bullet Graph, Choropleth Map, Word
Cloud, Network Diagram, Correlation Matrices, geographical plots, Density Maps, Bubble Chart, Tree maps.
Dashboard development process, dashboard architecture.

References:
1. Kamber and Han, Data Mining Concepts and Techniques, Hartcourt India P. Ltd.,2001.
2. William H Inmon, Building the Data Warehouse, Wiley, Fourth Edition 2005.
3. Paul Raj Poonia, Fundamentals of Data Warehousing, John Wiley & Sons, 2003.
4. Margret H Dunham, Data Mining Introductory and advanced topics, Pearson Education, 6 th ed, 2009
5. Shawkat Ali and Saleh Wasimi, Data Mining: Methods and Techniques, Cengage Learning, Indian
Edition,2009
6. Engebretsen, Martin, and Helen Kennedy. Data visualization in society. 2020.
7. Anouncia, S. Margret, Hardik A. Gohel, and Subbiah Vairamuthu. Data Visualization. Springer
Verlag, Singapore, 2020.

FIFTH SEMESTER

CA3102: MOBILE APPLICATION DEVELOPMENT [3 1 0 4]


Introduction: Android, Android versions and its feature set, the various Android devices on the market, The
Android Market application store, Android Development Environment - System Requirements, Android SDK,
Installing Java, and ADT bundle - Eclipse Integrated Development Environment (IDE). An Overview of Threads,
The Application Main Thread. Multimedia: Audio, Video, Camera Playing Audio and Video, Recording Audio
and Video, Using the Camera to Take and Process Pictures. Android Architecture Overview: The Android
Software Stack, The Linux Kernel, Android Runtime - Dalvik Virtual Machine, Android Runtime – Core
Libraries, Dalvik VM Specific Libraries, Java Interoperability Libraries, Android Libraries, Application
Framework, Android Software Development Platform: Understanding Java SE and the Dalvik Virtual Machine,
The Directory Structure of an Android Project, Common Default Resources Folders. Android Framework
Overview: Android Application Components, Android Activities: Defining the UI, Android Services: Processing
in the Background, Broadcast Receivers: Announcements and Notifications Content Providers: Data Management,
Android Intent Objects: Messaging for Components Android Manifest XML: Declaring Your Components.
Understanding Android Views, View Groups and Layouts Designing for Different Android Devices, Views and
View Groups, Android Layout Managers, The View Hierarchy, Designing an Android User Interface using the
Graphical Layout Tool. Graphical User Interface Screen with views: Displaying Text with TextView, Retrieving
Data from Users, Using Buttons, Check Boxes and Radio Groups, Getting Dates and Times from Users, Using
Indicators to Display Data to Users. Displaying Pictures: Gallery, ImageSwitcher, GridView, and ImageView
views to display images, Creating Animation. Files, Content Providers, and Databases: Saving and Loading Files,
SQLite Databases, Android Database Design, Exposing Access to a Data Source through a Content Provider,
Content Provider Registration, Native Content Providers.
References:
1. B. Phillip, C. Stewart, B. Hardy, K. Marsicano, Android Programming, The Big Nerd Ranch Guide,
(3e), Big Nerd Ranch LLC, 2017.
2. R. Meier, Professional Android 4 Application Development, (3e), Wiley India (Wrox), 2012.
3. J. C. Sheusi, Android Application Development for Java Programmers, (1e), Cengage Learning, 2013.
4. W.M.Lee, Beginning Android 4 Application Development, (1e), Wiley India (Wrox), 2013.
CA3105: CLOUD COMPUTING & APPLICATIONS [3 1 0 4]
Introduction to Cloud Computing, Evolution, Benefits and Barriers, Cloud SPI models, Cloud Computing Vs
Cluster Computing, Technology Involved in Cloud Computing, NIST Cloud architecture, Modern Cloud
architecture, Cloud Characteristics, Service Model and Deployment Model, Types of hypervisor. Data and
Network Management- Introduction- Objectives, Classic datacenters (CDCs) technologies, Virtualised Data
Centers (VDCs), Storage Virtualization, Virtual Machine Storage Options, Block & File level Storage
Virtualization, Virtual Provisioning, Compute Virtualisation, Virtual Machine Components, Compute
Virtualisation Techniques, Converting Physical Machines to Virtual Machines, Desktop and Application
Virtualisation. Virtualized Data Center– Networking- Network virtualization in VDC, VDC network infrastructure
and components, Virtual LAN (VLAN) and Virtual SAN (VSAN), Components of VDC Network Infrastructure,
Virtual Network Component, VLAN and VSAN Technologies, Network traffic management techniques in VDC
Service. Management in Cloud Computing, Service Level Agreements (SLAs), Quality of Service (QoS), Billing
and Accounting, Scaling Cloud Hardware, Managing Data, Cloud Security and Privacy, Infrastructure security,
Data security and Storage, Data privacy, access management, Cloud computing standards and Interoperability,
technical considerations for migration to the cloud. Migrating to the Cloud- Introduction- Objectives, Cloud
Services for individuals- Available Services - Skytap Solution, Cloud Services Aimed at the mid – market, Live
Migration. Case Studies.
References:
1. R. K.Buyya, J. Broberg, A. M. Goscinski, Cloud Computing: Principles and Paradigms, (1e) Wiley
Publications, 2013.
2. S. Barrie, Cloud computing bible, (1e), John Wiley & Sons, 2010.
3. N. Antonopoulos, L. Gillam, Cloud Computing: Principles, Systems and Applications, (1e),
springer,2012.
4. T. Mather, S. Kumaraswamy, S. Latif, Cloud Security and Privacy: An Enterprise Perspective on Risks

CA3106: MACHINE LEARNING [3 1 0 4]


Introduction to Machine Learning: Basics of Machine Leaning, Supervised Machine Learning, K- Nearest
Neighbors, Naïve Bayes, Decision tree, Support Vector Machines, Unsupervised Machine Learning: Cluster
analysis, K means, Association Rule Mining, Apriori algorithms, Regression Analysis: Linear Regression,
Nonlinear Regression, Problem Solving: State Space Search, Production System, Depth First Search, Breadth First
Search, Heuristic Search (Hill Climbing, Best First Search and Problem Reduction).
References:
1. T.M. Mitchell, Machine Learning, (1e), McGraw- Hill Education, 2017.
2. E. Alpaydin, Introduction to Machine Learning, (3e), PHI, 2015.

CA3131: MOBILE APPLICATION DEVELOPMENT LAB [0 0 2 1]


Develop an application that uses GUI components, Font and Colors. Develop an application that uses layout
managers and event listeners. Develop a native calculator application to calculate the arithmetic operations. Write
an application that draws basic graphical primitives on the screen. Develop an application that makes use of
database for add the info and show the search result. Implement an application that implements multi-threading.
Develop a native application that uses GPS location information. Implement an application that writes data to the
SD card. Implement an application that creates an alert upon receiving a message. Write a mobile application that
creates alarm clock.

References:
1. B. Phillip, C. Stewart, B. Hardy, K. Marsicano, Android Programming, The Big Nerd Ranch Guide,
(3e), Big Nerd Ranch LLC, 2017.
2. R. Meier, Professional Android 4 Application Development, (3e), Wiley India (Wrox), 2012.
3. J. C. Sheusi, Android Application Development for Java Programmers, (1e), Cengage Learning, 2013.
4. W. M. Lee, Beginning Android 4 Application Development, (1e), Wiley India (Wrox), 2013.
CA3132: MACHINE LEARNING LAB [ 0 0 2 1]
Introduction to R Programming, History of R, and R packages, CRAN, R community, R-bloggers, StackOverflow,
Coursera, DataCamp. R Syntax Basics: Constants, operators, functions, variables. Random numbers, Vectors and
vector indexing, simple descriptive stats, Loops, Conditional expressions. Data Types: Levels of measurement
(nominal, ordinal, interval, ratio scale) Vector types, data. Frame objects, rows and columns, indexing,
Characteristics of tidy data. Basic Data Transformations: Create new variables in a data. Frame, Filter rows and
columns, merging datasets. Introduction to Complex Data Transformations: Filtering and ordering data,
Summaries and aggregates, new variables, Relational data, Joins on Keys, Introduction into fuzzy joins,
transforming wide and long tables, Converting Numeric Variables into Factors, Date Operations, String Parsing,
Geocoding. Data Visualization using R. Dirty Data Problems, Data Sources: sqlite examples for relational
databases, Loading SPSS and SAS files, Reading from Excel and Google Spreadsheets, API and web scraping
examples.

References:
1. G. Grolemund, Handbook of programming with R, (1e), O’REILLY, 2014.

CA3170: MINOR PROJECT [0 0 2 1]


Introduction
The Bachelor of Computer Applications (BCA) program is designed with an aim to get students ready for careers
as software engineers, systems designers, and other professions in the IT industry. The curriculum is created to
give students thorough understanding including the fundamental concepts and domains of computer science in
both theory and practise. The last semester of the BCA curriculum includes a six-month minor project. The main
goal of project work is to assist the student in acquiring the skills necessary to solve real-world issues that arise in
business, academia, and research labs by using theoretical and practical tools and methodologies. Students are
expected to use their knowledge from numerous courses—both theoretical and practical—to create high-quality
software solutions for the major project.
Course Outcome
CA3170.1 To show a thorough understanding of today’s technologies.
CA3170.2 To learn project organization.
CA3170.3 To build a project by applying Software Engineering methods.
CA3170.4 To acquire the skills to communicate effectively and to present ideas clearly and coherently to specific
audience in both the written and oral forms.
CA3170.5 To reflect learning and take appropriate actions to improve entrepreneur skills.

Syllabus
The project work is a part of the course and should focuses on developing a software application to solve some
real-world problems. In the project work each student should develop a working software application with the help
of different skills acquired from previous semesters and prepare a project report as per the project guidelines.
Following guidelines must be followed while creating a project.
Text Book(s):
1. Prasanna Chandra; Projects- Planning, Analysis, Selection, Financing, Implementation and Review’,
VI Edition, Tata Mc Graw Hill.

Reference Book(s):
1. Chaudhary S.; Project Management, Tata Mc Graw Hill.
2. Kerzner H.; Project Management, II Edition, CBS Publishers.

Project Guidelines
Each student should submit a unique project title unless/otherwise in a team
project. Project work should include software development.
Only two students can work on one project as a team. However, there contribution should be clearly
specified and reported.
The project should focus on solving some real-life problems, though it is not mandatory. However, the
project idea should be creative, and it can be a fresh take on an old idea which is often worth as much as a
brand-new idea.
The project work may be done internally in the university campus or in any external
organizations/institutes approved by the head of the department/university authority.
Prior to starting project work, a student must get his/her project idea/problem statement approved by the
supervisor.
The student must submit a project synopsis, presenting his idea. The student may start working on project
only if the synopsis is approved.
The student should present the progress of the project works as per the timeline specified by the
department /project coordinator/ supervisor.

Project Synopsis Format


The project synopsis must be prepared and approved with the supervisor's input. The synopsis should include a
detailed description of the proposed project and objectives. The synopsis should be prepared as per the following
format.
Title of the project
Name of the supervisor/project guide
Project Introduction
Objectives of the project
DFD, ER Diagrams
Project Timeline
Tools / platform, hardware and software requirement
specifications References

Project Report Format


The final project report should describe the detailed work completed by the student. The report must be prepared
as per the following format.
General Guidelines
Project Report to be minimum 35 pages. Reports less than 35 pages will be
rejected. Project report to be maximum 50 - 60 pages (preferred but not
mandatory).
Paper Size: A4; Left = Right = Top = Bottom Margins = 0.7”.
Page Numbering Position: Bottom with right justified and continuous numbering from the Introduction
Chapter.
Use Times New Roman Font with Normal Style, paragraph justified and 1.15 line spacing.
Paragraph Heading: Times New Roman Font, Bold, Font Size 14; Paragraph Matter: Times New Roman
Font, Normal, Font Size 12.
Sub-paragraphs be appropriately numbered as in 1.1, 1.2, 1.3 etc; Sub-paragraph Heading: Times New
Roman Font, Italics, Font Size 12; Sub-paragraph Matter: Times New Roman Font, Normal, Font Size
12.
Figure captions below Figure with chapter wise numbering.
Tables captions above Table with chapter wise numbering.
All references must be listed in the order in which they appear in the report (follow IEEE format for
referencing).
Only hard bound reports will be accepted, colour of the front cover to be in mustard yellow.

Note: The Cover page color as mentioned above has CMYK Values are C: 00 M:20 Y:75 K:00 & Hex is:
FFCC00
Project Report Structure
The following structure should be followed while preparing the final project report.
1. Title Page
2. Certificate of Completion (internal/External)
3. Acknowledgement
4. Table of contents / index with page numbering
5. List of tables
6. List of figures
7. Introduction / objectives of the project
8. System analysis
9. Feasibility study
10. Software and hardware requirement specifications
11. System design (DFD, ER Diagram, Class diagram etc.)
12. Database Schema
13. Project code
14. Screenshot of the project
15. Implementation/deployment details
16. Testing (testing techniques and testing strategies used along with the test data and the errors listed for
each test case).
17. Conclusion
18. Future scope and further enhancement of the project
19. Bibliography/ references
20. Appendices (if required)

Note: Reports, tables figures should be properly numbered/labelled. Two hard copies of the project report
should be submitted. The soft copy of the project report in PDF should also be submitted along with the hard
copy.

CA3110: APTITUDE AND TECHNICAL DEVELOPMENT [1 0 0 1]

Section I: Quantitative: Number System, Percentage, Time & Distance, Profit & Loss, Time & Work, Average,
Permutation & Combinations, Game Based. Verbal: Sentence Improvement, Sentence Rearrangement, Fill in the
Blanks. Logical: Coding & Decoding, Direction, Blood Relation, Puzzle, Series, Statement & Arguments. Mock
Interview Preparation and Group Discussion.
Section II: C Programming: C Fundamentals, Function, Array, Pointers, Structure and File Handling. Object
Oriented Concepts. Data Structure: Types of Data Structure and their implementation. Program Logic
Development and MCQ Solving. DBMS; SQL Queries. Software Engineering: Use case preparation and
Implementation. Overview of Operating Systems and Computer Networks.

Program Elective I

CA3143: INTERNET OF THINGS [3 0 0 3]


Internet of Things: An overview, System Architecture, Design Principles for Connected Devices, Design
Principles for Web connectivity for Connected Devices, Internet Connectivity Principles, Data Acquiring,
Organizing and Analytics in IoT, data Collection, Storage & Computing Using Cloud Platform, Sensors and
Actuators, Radio Frequency Identification, Wireless Sensor Networks and Participatory Sensing Technology,
Prototyping of Embedded Devices for IoT, Gateways, Internet and Web/Cloud Services Software Component, IoT
Privacy, Security and governance. IoT based Case studies.

References:
1. Theoleyre, Fabrice, and Ai-Chun Pang, eds,” Internet of Things and M2M Communications”, River
Publishers, (1e), 2013.
2. Delsing, Jerker, ed, “IoT automation: Arrowhead framework. CRC Press”, (1e), 2017.
3. Raj Kamal, “Internet of Things”, (1e), McGraw-Hill, 2017.

CA3144: CRYPTOGRAPHY FUNDAMENTALS [3 0 0 3]


Elements of Number Theory: Euclid Algorithm, Prime Number Theorem, Euler’s, Fermat’s Little theorems,
Entropy; Classical Cipher Techniques: Caesar, Affine, Playfair, Hill cipher, Rail Fence Cipher, Vigenère Cipher,
Mono-alphabetic, Transposition, Polyalphabetic Ciphers; Security Attacks: Active V/S Passive, Security Services;
Symmetric Encryption: Fiestel Cipher, Confusion and Diffusion, DES Algorithm; Asymmetric Encryption:
Principles of Public Key Cryptosystems, RSA Algorithm; Digital Signatures: RSA Based.

References:
1. S. Williams, Cryptography and Network Security: Principles and Practices, (7e) Pearson Education,
2017.
2. A. Kahate, Cryptography and Network Security, (2e), Tata Mc-Graw Hill, 2009.
3. C. Kaufmen, R.Perlman, M. Speciner, Network Security: Private Communication in a Public World,
(2e), prentice Hall, 2008.
4. V.S. Bagad, I. A. Dhotre, Cryptography and Network Security, (1e) Technical Publications, 2008.
5. B.A. Forouzan, D. Mukhopadhyay, Network Security, (3e) Tata Mc-Graw Hill, 2015.
CA3145: REAL TIME SYSTEMS [3 0 0 3]
Introduction: Historical background, Elements of a Computer Control System, RTS- Definition, Classification of
Real-time Systems, Time Constraints, Typical Real Time Applications: Digital Control, High Level Controls,
Signal Processing etc., Release Times, Dead-lines, and Timing Constraints, Hard Real Time Systems and Soft
Real Time Systems. Real Time Scheduling: Common Approaches to Real Time Scheduling: Clock Driven
Approach, Weighted Round Robin Approach, Priority Driven Approach, Dynamic Versus Static Systems,
Optimality of Effective-Deadline-First (EDF) and Least-Slack-Time-First (LST) Algorithms, Rate Monotonic
Algorithm, Offline Versus Online Scheduling. Resources Sharing: Effect of Resource Contention and Resource
Access Control (RAC), Non-preemptive Critical Sections, Basic Priority-Inheritance and Priority-Ceiling
Protocols, Access Control in Multiple-Module Resources, Controlling Concurrent Accesses to Data Objects. Real
Time Operating Systems: Real-Time Multi-Tasking OS, Features of RTOS.
References:
1. Real Time Systems – Jane W. S. Liu, Pearson Education Publication
2. Real Time Systems – Mall Rajib, Pearson Education

SIXTH SEMESTER

CA3204: WIRELESS COMMUNICATION [3 1 0 4]


Introduction: Mobile Communication and Overall View of the Syllabus and Lesson Plan, Introduction to Wireless
Communication: Evolution of Mobile communications, Wireless and Mobile Radio-The First 150+ Years,
Transmission fundamentals: Basics of Propagation, Propagation Models, Free-Space Propagation Model, Large-
Scale Path Loss, Small Scale Multipath Propagation, Modulation Techniques for Mobile Radio: Modulation
Criteria, Modulation Techniques, Liner Modulation Techniques - ASK, PSK, FSK, MSK, Spread spectrum
modulation Cellular concepts: Frequency reuse, Channel assignment strategies, Handoff strategies; Mobile
Computing: Mobile IP, ubiquitous and nomadic computing WWWW & Mobile Agent wireless world wide web;
IEEE 802.11 Standards, Mobile agent technology and standards.

References:
1. T.S. Rappaport, Wireless Communications - Principle and Practice, (2e), PHI, 2005.
2. W. Stallings, Wireless Communication and Network, (2e), PHI, 2004.
3. K. Garg, Mobile Computing, (1e), Pearson Education India, 2010.

CA3205: UNIX AND SHELL PROGRAMMING [3 1 0 4]


Introduction: UNIX System Overview, Program and Processes, Error Handling, User Identification, Signals,
System Calls and Library Functions.: File I/O: File Descriptors, Function for File Modification, I/O Efficiency,
File Sharing, Atomic Operations.; Directories: Stat, Fstat, and Lstat Functions, File Types, Set-User-ID and Set-
Group-ID, File Access Permissions, Function for modifying file permission and ownership, Symbolic Links,
System Data Files and Information: Password File, Shadow Passwords and Other Data Files.; Process
Environment: Process Termination, Memory Layout of a C Program, Memory Allocation, setjmp and longjmp
Functions.; Process Control: fork Function, vfork Function, exit Functions, wait and waitpid Functions, Race
Conditions, Changing User IDs and Group IDs.; Process Relationship: Logins, Process Groups, Sessions,
Controlling Terminal, Job Control.; Signals: Signal Concepts, Functions to raise and handle Signals, Program
Termination, abort and system functions.; Threads: Thread Concepts, Creation, Termination and Synchronization,
Threads Control, Threads and Signals, Threads and fork, Threads and I/O. Shell programming: Basics of Shell
Programming, UNIX shell commands, shell scripts variables, loops (for, while), and conditional statements (if
else, case), Shell variables, arguments to shell procedure, test command, arithmetic with EXPR command,
interactive shell procedures with read.
References:
1. W. R. Steven, S. A. Rago “Advanced Programming in the Unix environment”, Addison Wesley, (1e),
2011
2. Y. P. Kanetkar “Unix Shell Programming”. BPB Publication, (1e), 2009.
CA3206: BIG DATA [3 1 0 4]
Overview of Bigdata: Storage and features of big data, Types of data in big data stores, Big Data Analytics:
Introduction and challenges. Introduction to Bigdata Frameworks: Hadoop/Spark/Hive/Mongo DB, Recent trends
in big data analytics. Introduction of GPU computing, Data Intelligence, Data serialization. Big Data
Technologies: Big Data analytics and predictive analytics. Introduction to NoSQL database/Apache spark.
References:
1. Mike Frampton, “Mastering Apache Spark”, Packt Publishing, 2015.
2. Fast Data Processing with Spark by Krishna Sankar and Holden Karau second edition.
3. Tom White, “Hadoop: The Definitive Guide”, O’Reilly, 4th Edition, 2015.

CA3231: UNIX AND SHELL PROGRAMMING LAB [0 0 2 1]


Testing the use of UNIX commands, UNIX shell commands, Basics of Shell Programming, UNIX System Calls,
CPU Scheduling Algorithms, Deadlock Detection Algorithms, Deadlock Avoidance Algorithms, Page
Replacement Algorithms, Memory Allocation Algorithms, Disk Scheduling Algorithms, and UNIX Inter Process
Communication.

References:
1. W. R. Steven, S. A. Rago “Advanced Programming in the Unix environment”, Addison Wesley, 2011.
2. Y. P. Kanetkar “Unix Shell Programming”. BPB Publication, 2009.

CA3270: MAJOR PROJECT [0 0 4 2]


Introduction
The Bachelor of Computer Applications (BCA) program is designed with an aim to get students ready for careers
as software engineers, systems designers, and other professions in the IT industry. The curriculum is created to
give students thorough understanding including the fundamental concepts and domains of computer science in
both theory and practise. The last semester of the BCA curriculum includes a six-month minor project. The main
goal of project work is to assist the student in acquiring the skills necessary to solve real-world issues that arise in
business, academia, and research labs by using theoretical and practical tools and methodologies. Students are
expected to use their knowledge from numerous courses—both theoretical and practical—to create high-quality
software solutions for the major project.
Course Outcome
CA3270.1 To show a thorough understanding of today’s technologies.
CA3270.2 To learn project organization.
CA3270.3 To build a project by applying Software Engineering methods.
CA3270.4 To acquire the skills to communicate effectively and to present ideas clearly and coherently to specific
audience in both the written and oral forms.
CA3270.5 To reflect learning and take appropriate actions to improve entrepreneur skills.

Syllabus
The project work is a part of the course and should focuses on developing a software application to solve some
real-world problems. In the project work each student should develop a working software application with the help
of different skills acquired from previous semesters and prepare a project report as per the project guidelines.
Following guidelines must be followed while creating a project.
Text Book(s):
1. Prasanna Chandra; Projects- Planning, Analysis, Selection, Financing, Implementation and Review’,
VI Edition, Tata Mc Graw Hill.

Reference Book(s):
1. Chaudhary S.; Project Management, Tata Mc Graw Hill.
2. Kerzner H.; Project Management, II Edition, CBS Publishers.
Project Guidelines
Each student should submit a unique project title unless/otherwise in a team
project. Project work should include software development.
Only two students can work on one project as a team. However, there contribution should be clearly
specified and reported.
The project should focus on solving some real-life problems, though it is not mandatory. However, the
project idea should be creative, and it can be a fresh take on an old idea which is often worth as much as a
brand-new idea.
The project work may be done internally in the university campus or in any external
organizations/institutes approved by the head of the department/university authority.
Prior to starting project work, a student must get his/her project idea/problem statement approved by the
supervisor.
The student must submit a project synopsis, presenting his idea. The student may start working on project
only if the synopsis is approved.
The student should present the progress of the project works as per the timeline specified by the
department /project coordinator/ supervisor.
Project Synopsis Format
The project synopsis must be prepared and approved with the supervisor's input. The synopsis should include a
detailed description of the proposed project and objectives. The synopsis should be prepared as per the following
format.
Title of the project
Name of the supervisor/project guide
Project Introduction
Objectives of the project
DFD, ER Diagrams
Project Timeline
Tools / platform, hardware and software requirement
specifications References

Project Report Format


The final project report should describe the detailed work completed by the student. The report must be prepared
as per the following format.
General Guidelines
Project Report to be minimum 35 pages. Reports less than 35 pages will be rejected.
Project report to be maximum 50 - 60 pages (preferred but not mandatory).
Paper Size: A4; Left = Right = Top = Bottom Margins = 0.7”.
Page Numbering Position: Bottom with right justified and continuous numbering from the Introduction
Chapter.
Use Times New Roman Font with Normal Style, paragraph justified and 1.15 line spacing.
Paragraph Heading: Times New Roman Font, Bold, Font Size 14; Paragraph Matter: Times New Roman
Font, Normal, Font Size 12.
Sub-paragraphs be appropriately numbered as in 1.1, 1.2, 1.3 etc; Sub-paragraph Heading: Times New
Roman Font, Italics, Font Size 12; Sub-paragraph Matter: Times New Roman Font, Normal, Font Size
12.
Figure captions below Figure with chapter wise numbering.
Tables captions above Table with chapter wise numbering.
All references must be listed in the order in which they appear in the report (follow IEEE format for
referencing).
Only hard bound reports will be accepted, colour of the front cover to be in mustard yellow.

Note: The Cover page color as mentioned above has CMYK Values are C: 00 M:20 Y:75 K:00 & Hex is:
FFCC00
Project Report Structure
The following structure should be followed while preparing the final project report.
1. Title Page
2. Certificate of Completion (internal/External)
3. Acknowledgement
4. Table of contents / index with page numbering
5. List of tables
6. List of figures
7. Introduction / objectives of the project
8. System analysis
9. Feasibility study
10. Software and hardware requirement specifications
11. System design (DFD, ER Diagram, Class diagram etc.)
12. Database Schema
13. Project code
14. Screenshot of the project
15. Implementation/deployment details
16. Testing (testing techniques and testing strategies used along with the test data and the errors listed for
each test case).
17. Conclusion
18. Future scope and further enhancement of the project
19. Bibliography/ references
20. Appendices (if required)

Note: Reports, tables figures should be properly numbered/labelled. Two hard copies of the project report
should be submitted. The soft copy of the project report in PDF should also be submitted along with the hard
copy.

Program Elective II

CA3240: SOFTWARE TESTING & QUALITY ASSURANCE [3 0 0 3]


Need for Software quality, Quality challenges – Software quality assurance (SQA) – Definition and objectives –
Software quality factors- McCall‟s quality model – SQA system and architecture – Software. Software
Development methodologies – Quality assurance activities in the development process- Verification & Validation
– Reviews – Software Testing – Software Testing implementations – Quality of software maintenance – Pre-
Maintenance of software quality components – Quality assurance tools – CASE tools for software quality –
Software maintenance quality – Project Management. Project life cycle Components – Pre project quality
components – Development and quality plans. Corrective and preventive actions – Configuration management –
Software change control – Configuration management audit -Documentation control – Storage and retrieval.
References:
1. Daniel Galin, “Software Quality Assurance”, Pearson Publication, 2009.
2. Mordechai Ben-Menachem “Software Quality: Producing Practical Consistent Software”, International
Thompson Computer Press, 1997.

CA3241: CYBER SECURITY AND FORENSICS [3 0 0 3]


Cybercrimes and Attacks Introduction, Classifications of Cybercrimes: E-Mail Spoofing, Spamming, Cyber
defamation, Industrial Spying/Industrial Espionage, Hacking, Software Piracy, Password Sniffing, Credit Card
Frauds, Cyber stalking, Botnets, Phishing, Pharming, Man-in-the-Middle attack, Password Cracking, Key loggers
and Spywares, Virus and Worms, Trojan Horses and Backdoors, DoS and DDoS Attacks, SQL Injection, Buffer
Overflow, Malware, Ransomware, Types of Identity Theft, Techniques of ID Theft, Cyber terrorism, Browser
Attacks, Reverse Engineering, Cross site scripting; Cyber Security Concepts Introduction to Cyber Security,
Cyber Security Goals, Cyber Security policy, Domain of Cyber Security Policy, Elements, Cyber Security
Evolution, Implementing Hardware Based Security, Software Based Firewalls, Security Standards, Assessing
Threat Levels, Forming an Incident Response Team, Reporting Cybercrime.
Difference between cyber forensics and cyber security; Cyber Forensics Fundamentals Introduction to cyber
forensics, needs of cyber forensic, cyber forensic and digital evidences, Internet Fraud, Storage Fundamentals, File
System Concepts, challenges in cyber forensic, Data and Evidence Recovery- Deleted File Recovery, Data
Recovery Tools, Data Recovery Procedures and Ethics, Preserve and safely handle original media, Document a
"Chain of Custody", Complete time line analysis of computer files based on file creation, file modification and file
access, Recover Internet Usage Data, Recover Swap Files/Temporary Files/Cache Files, Introduction to Encase
Forensic Edition, Forensic Tool Kit (FTK); Cyber Forensics Investigation Introduction to Cyber Forensic
Investigation, Investigation Tools, e-Discovery, Digital Evidence Collection, Evidence Preservation, E-Mail
Investigation, E-Mail Tracking, IP Tracking, E-Mail Recovery, Encryption and Decryption methods, Search and
Seizure of Computers, Recovering deleted evidences, Password Cracking; Cyber Laws Introduction to IT laws &
Cyber Crimes, Cyber Laws, IPR, Legal System of Information Technology, Social Engineering.

References:
1. Nina Godbole and Sunit Belpure, Cyber Security Understanding Cyber Crimes, Computer Forensics
and Legal Perspectives, Wiley
2. Jennifer L. Bayuk, J. Healey, P. Rohmeyer, Marcus Sachs, Jeffrey Schmidt, Joseph Weiss Cyber
Security Policy Guidebook, John Wiley & Sons 2012.
3. Vivek sood, Cyber law simplified, Tata Mc GrawHill, Education (India).
4. Eoghan Casey, Handbook of digital forensic and investigation.
5. Clint P Garrison, Digital forensic for network, internet and cloud computing.
6. Panagiotis Kandlis, Digital crime and forensic science in cyberspace, information society S.A Greece
IDEA Group Publishing.

CA3242: DISTRIBUTED SYSTEMS [3 0 0 3]


Introduction: Distributed System, Goal of Distributed System, System Architecture, Distributed Computing
Model, Advantages and Disadvantages, Design Issues. Distributed Shared Memory (DSM): Definition &
Architecture, File Model and their Architecture, Access Model, File Applications. Inter Process Communications:
Client Server Communication, RPC and their Architecture, Synchronization, Mutual Exclusion, Internet Protocol
API. Distributed Scheduling: Issues and their Components, Types, Algorithm. Deadlock Distributed Scheduling:
Issues in Deadlock Detection & Resolution, Deadlock Handling Strategy and Algorithm. Multimedia & Database:
Multimedia Data, Quality of Service Managements, Types of Distributed Database and their Characteristics.
References:
1. Jean Dollimore, Tim Kindberg, George Coulouris, Distributed Systems: Concepts and Design, 4th
Edition, Addison Wesley, 2005.
2. A. Taunenbaum, Distributed Systems: Principles and Paradigms, 2(e), 2008.
3. G. Coulouris, J. Dollimore, and T. Kindberg, Distributed Systems: Concepts and Design, Pearson
Education, (1e) 2008.

You might also like