5th Sem

Download as pdf or txt
Download as pdf or txt
You are on page 1of 19

Bachelor of Computer Applications

Course Code BCA 301


Course Name: Operating System & Linux Programming

INSTRUCTIONSTOPAPERSETTERS:
1. Question No. 1 should be compulsory and cover the entire syllabus. There should be10
questions of short answer type of 2.5 marks each, having at least 2 questions from each
unit.
2. Apart from Question No. 1, rest of the paper shall consist of four units as per the
syllabus. Every unit should have two questions to evaluate analytical/technical skills of
candidate. However, student may be asked to attempt only 1 question from each unit.
Each Question should be of12.5 marks, including its subparts, if any.
3. Examiners are requested to go through the Course Outcomes (CO) of this course and
prepare the question paper accordingly, using Bloom’s Taxonomy (BT), in such a way
that every question be mapped to some or other CO and all the questions, put together,
must be able to achieve the mapping to all the CO(s), in balanced way.

LEARNING OBJECTIVES:
In this course, the learners will be able to develop expertise related to the following:-
Working and functionalities of operating system
Understand the concept of process scheduling, ,memory management, deadlock and file system
Understand basic commands of Linux and shell scripts.

PRE-REQUISITES:
Basic understanding of hardware and software of computer organization.

COURSE OUTCOMES (COs):


After completion of this course, the learners will be able to:-

*BT
CO# Detailed Statement of the CO MappingtoPO #
Level
Understand the basic concept of Operating System with
CO1 BTL2 PO1, PO4
the help of Unix and Linux Architecture.
Understand the concept of Processes, Process Scheduling,
CO2 Process Synchronization and applying process commands BTL3 PO1, PO2,PO4,PO5
in Linux environment.
Understand the concept of memory management and
CO3 BTL2 PO1, PO2,PO4,PO5
deadlock.
Understand the concept of file Systems, Types and
CO4 BTL3 PO1, PO2,PO4
Access Methods by using Linux commands.

UNIT–I
No. of Hours: 12 Chapter/Book Reference: TB1 [Chapter 1]; TB2 [Chapters 1, 2, 3, 4, 5]

Introduction: What is an Operating System, Functions of Operating System, Simple Batch Systems;
Multi programmed Batch systems, Time-Sharing Systems, Personal-computer systems, Parallel
systems, Distributed Systems, Real-Time Systems.
Introduction to Linux: Architecture of Linux OS, Basic directory structure of Linux, Basic
commands of Linux:-man,info,help,whatis,apropos, basic directory navigation commands like
Bachelor of Computer Applications
cat,mkdir,rmdir ,cd, mv, cp, rm, ,file, pwd ,date,cal,echo,bc,ls,who,whoami, hostname, uname,
tty,aliase
Vi Editor: vi basics, Three modes of vi Editor, how to write, save, execute a shell script in vi editor
UNIT–II
No. of Hours: 12 Chapter/Book Reference: TB1 [Chapters 3, 5, 6]; TB2 [Chapter 9]

Processes: Process Concept, Process Scheduling, Operation on Processes


CPU Scheduling: Basic Concepts, Scheduling Criteria, Scheduling Algorithms
Process Synchronization: Background, The Critical-Section Problem, Semaphores solution to
critical section problem
Process related commands in Linux: ps, top, pstree, nice, renice and system calls
UNIT–III
No. of Hours: 12 Chapter/Book Reference: TB1 [Chapters 7, 8, 9]

Memory Management: Background, Logical versus Physical Address space, swapping,


Contiguous allocation, Segmentation, Paging
Virtual Memory: Demand Paging, Performance of Demand Paging, Page Replacement, Page-
replacement Algorithms, Allocation of Frames, Thrashing
Deadlocks: System Model, Deadlock Characterization, Methods for Handling
Deadlocks, Deadlock Prevention, Deadlock Avoidance, Deadlock Detection, Recovery
from Deadlock
UNIT–IV
No. of Hours: 10 Chapter/Book Reference: TB1 [Chapter 10]; TB2 [Chapter 6]

Information Management: Introduction, File Concept, Access methods, Directory and Disk
structure, File Protection
Linux File Security: Permission types, Examining permissions, changing permissions (symbolic
method numeric method)

TEXT BOOKS:
[TB1] Silbersachatz and Galvin, “Operating System Concepts”, John Wiley & Sons, 10 th
Ed. 2018
[TB2] Sumitabha Das, “Unix Concepts and Application”, TMH

REFERENCE BOOKS:
REFERENCES: [R1] Madnick E., Donovan J., “Operating Systems”, Tata McGraw Hill,
2011
REFERENCES: [R2] [R2] Tannenbaum, “Operating Systems”, PHI, 4th Edition, 2015
REFERENCES: [R3] Sivaselvan, Gopalan, “A Beginner’s Guide to UNIX”, PHI Learning
Bachelor of Computer Applications
Course Code: BCA 303 L T C
Course Name: Computer Graphics 3 1 4

INSTRUCTIONS TO PAPER SETTERS:


1. Question No. 1 should be compulsory and cover the entire syllabus. There should be 10
questions of short answer type of 2.5 marks each, having at least 2 questions from each unit.
2. Apart from Question No. 1, rest of the paper shall consist of four units as per the syllabus.
Every unit should have two questions to evaluate analytical/technical skills of candidate.
However, student may be asked to attempt only 1 question from each unit. Each question
should be of 12.5 marks, including its subparts, if any.
3. Examiners are requested to go through the Course Outcomes (CO) of this course and prepare
the question paper accordingly, using Bloom’s Taxonomy (BT), in such a way that every
question be mapped to some or other CO and all the questions, put together, must be able to
achieve the mapping to all the CO(s), in balanced way.

LEARNING OBJECTIVES:
In this course, the learners will be able to develop expertise related to the following:
1. Concept of Computer graphics, types of display devices and their techniques.
2. Methods of drawing of graphic objects on the display devices.
3. Concepts of viewport, mapping of real world objects to display device, clipping
4. Knowledge of projection concepts and their types

PRE-REQUISITES:
1. Programming in C/C++

COURSE OUTCOMES (COs):


After completion of this course, the learners will be able to:-
CO # Detailed Statement of the CO *BT Mapping to
Level PO #
CO1 Develop basic knowledge of computer generated graphics, their BTL2 PO1, PO6
applications, display devices and drawing of graphic objects on
display devices.
CO2 To develop knowledge of various graphics 2D transformation BTL4 PO4,
operation, their mathematical calculations. PO8
CO3 To learn about the surfaces and curves, properties of curves and BTL2 PO4
shading of surfaces
CO4 To give basic knowledge of 3D projection and identifying hidden BTL2 PO1
surfaces to be removed.

UNIT – I
No. of Hours: 11 Chapter/Book Reference: TB1, TB2

Introduction: Introduction to computer graphics, Applications of Computer Graphics, Non


Interactive and interactive graphics, Conceptual Framework for Interactive Graphics. Introduction to
Raster and Random scan display, Characteristics of display devices, Aliasing and Antialiasing,
Introduction to latest display technologies (LED, OLED, Curved LED display)
Scan Conversion
Bachelor of Computer Applications
Scan Converting Lines using DDA & Bresenham’s Algorithm, Scan Converting Circles using
Bresenham’s algorithm.
UNIT – II
No. of Hours: 11 Chapter/Book Reference: TB1, TB2, RB3

Clipping
Cohen- Sutherland Algorithm, Cyrus-Beck Algorithm
Geometrical Transformations
2D Transformations, Homogeneous Coordinates and Matrix Representation of 2D Transformations,
Composition of 2D Transformations, Window-to-Viewport Transformation, Introduction of Matrix
Representation of 3D Transformations of translation, scaling and rotation (without derivation).
UNIT – III
No. of Hours: 11 Chapter/Book Reference: TB1, TB2

Representing Curves
Introduction to Polygon Meshes and its types, Parametric Cubic Curves: parametric and geometric
continuity, Hermite, Bezier & B-Spline.
Surfaces
Surface rendering- Basic Illumination, Effect of ambient lighting and distances, Shading models-
Gourard Shading, phong model.
UNIT – IV
No. of Hours: 11 Chapter/Book Reference: TB1, TB2

Three Dimensional Viewing: Introduction, Representation of Three-dimensional objects,


Projections, Parallel projections: Orthographic Projections, Oblique Projections. Perspective
Projection,
Hidden Surface Removal: Depth-Buffer (z-buffer) method, Depth-sorting Method (Painter’s
algorithm)

TEXT BOOKS:
TB1. Foley, Van Dam, Feiner, Hughes, Computer Graphics Principles & Practice, 2000, Pearson
TB2. Chennakesava R. Alavla “Computer Graphics”, PHI Learning Pvt. Limited

REFERENCES BOOKS:
RB1. D. Hearn & Baker: Computer Graphics with OpenGL, Pearson Education, Third Edition,
2009.
RB2. Foley, J.D. & Van Dam, A: Fundamentals of Interactive Computer Graphics.
RB3. Rogers & Adams, “Mathematical Elements for Computer Graphics”, McGraw Hill, 1989.
Bachelor of Computer Applications
Course Code: BCA 305 L T C
Course Name: Cloud Computing 3 1 4

INSTRUCTIONS TO PAPER SETTERS:


1. Question No. 1 should be compulsory and cover the entire syllabus. There should be 10
questions of short answer type of 2.5 marks each, having at least 2 questions from each unit.
2. Apart from Question No. 1, rest of the paper shall consist of four units as per the syllabus.
Every unit should have two questions to evaluate analytical/technical skills of candidate.
However, student may be asked to attempt only 1 question from each unit. Each question
should be of 12.5 marks, including its subparts, if any.
3. Examiners are requested to go through the Course Outcomes (CO) of this course and prepare
the question paper accordingly, using Bloom’s Taxonomy (BT), in such a way that every
question be mapped to some or other CO and all the questions, put together, must be able to
achieve the mapping to all the CO(s), in balanced way.

LEARNING OBJECTIVES:
In this course, the learners will be able to develop expertise related to the following:
1. Understand current cloud computing technologies, including technologies for different cloud
services.
2. Analyze the components of cloud computing
3. Perform Large data processing in the cloud

PRE-REQUISITES:
1. Basics of Computer Network
2. Knowledge of Operating System and Databases.

COURSE OUTCOMES (COs):


After completion of this course, the learners will be able to:-
CO # Detailed Statement of the CO *BT Mapping to PO #
Level
CO1 Overview of Cloud Computing BTL1 PO1, PO2, PO3, PO7
CO2 Understanding Cloud Computing Architecture BTL2 PO1, PO2, PO3, PO4,
PO7,
CO3 Working with Parallel and Distributed BTL3 PO1, PO2, PO3, PO4, PO5
Computing
CO4 Understanding the Concept of Virtualization BTL4 PO1, PO2, PO3, PO6, PO7

UNIT – I
No. of Hours: 11 Chapter/Book Reference: TB1 [Chapters - 1, 10], TB2 [Chapters - 1, 2]

Cloud Computing Overview –Services of Internet, Origins of Cloud computing – Cloud


components – Essential characteristics – On-demand self-service, The vision of cloud computing
– Characteristics, benefits, and Challenges ahead
UNIT – II
No. of Hours: 11 Chapter/Book Reference: TB1 [Chapter - 4], TB2 [Chapters - 5, 6, 17, 18]

Cloud Computing Architecture-Introduction – Internet as a Platform, The cloud reference model -


Types of clouds - Economics of the cloud, Computing platforms and technologies, Cloud computing
Bachelor of Computer Applications
economics, Cloud infrastructure - Economics of private clouds - Software productivity in the cloud -
Economies of scale: public vs. private clouds.
UNIT – III
No. of Hours: 11 Chapter/Book Reference: TB1 [Chapter - 2], TB2 [Chapter - 11]

Principles of Parallel and Distributed Computing: Parallel vs. distributed computing - Elements of
parallel computing - Hardware architectures for parallel processing, Approaches to parallel
programming - Laws of caution.

UNIT – IV
No. of Hours: 11 Chapter/Book Reference: TB1 [Chapter - 3], TB2 [Chapter - 8]

Virtualization: Introduction - Characteristics of virtualized environments - Taxonomy of


virtualization techniques - Virtualization and cloud computing - Pros and cons of virtualization -
Technology example: VMware: full virtualization, Types of hardware virtualization: Full
virtualization - partial virtualization - para virtualization

TEXT BOOKS:
TB1. Rajkumar Buyya, Christian Vecchiola and S. Thamarai Selvi, “Mastering Cloud Computing” -
Foundations and Applications Programming, MK publications, 2013.
TB2. Gautam Shroff, “Enterprise Cloud Computing: Technology, Architecture, Applications” by
Cambridge University Press, 2010.

REFERENCE BOOKS:
RB1. Michael J.Kavis, “Architecting the Cloud: Design Decisions for Cloud Computing Service
Models (SaaS, PaaS, and IaaS)”, John Wiley & Sons Inc., Jan 2014.
Bachelor of Computer Applications
Course Code: BCA 307 L T/P C
Course Name: Minor Project 0 8 4

PROJECT REPORT
All the students are required to submit a report based on the project work done by them
during the sixth semester.

SYNOPSIS (SUMMARY/ABSTRACT) :
All students must submit a summary/abstract separately with the project report. Summary,
preferably, should be of about 3-4 pages. The content should be as brief as is sufficient enough to
explain the objective and implementation of the project that the candidate is going to take up. The
write up must adhere to the guidelines and should include the following:

 Name / Title of the Project


 Statement about the Problem
 Why is the particular topic chosen?
 Objective and scope of the Project
 Methodology (including a summary of the project)
 Hardware & Software to be used
 Testing Technologies used
 What contribution would the project make?

TOPIC OF THE PROJECT- This should be explicitly mentioned at the beginning of the
Synopsis. Since the topic itself gives a peep into the project to be taken up, candidate is advised to
be prudent on naming the project. This being the overall impression on the future work, the topic
should corroborate the work.

OBJECTIVE AND SCOPE: This should give a clear picture of the project. Objective should be
clearly specified. What the project ends up to and in what way this is going to help the end user
has to be mentioned.

PROCESS DISCRIPTION: The process of the whole software system proposed, to be


developed, should be mentioned in brief. This may be supported by DFDs / Flowcharts to explain
the flow of the information.

RESOURCES AND LIMITATIONS: The requirement of the resources for designing and
developing the proposed system must be given. The resources might be in form of the
hardware/software or the data from the industry. The limitation of the proposed system in respect
of a larger and comprehensive system must be given.

CONCLUSION: The write-up must end with the concluding remarks- briefly describing
innovation in the approach for implementing the Project, main achievements and also any other
important feature that makes the system stand out from the rest.
Bachelor of Computer Applications
The following suggested guidelines must be followed in preparing the Minor Project Report:

Good quality white A4 size paper should be used for typing and duplication. Care should be
taken to avoid smudging while duplicating the copies.

Page Specification: (Written paper and source code)


 Left margin - 3.0 cms
 Right margin- 2.0 cms
 Top margin 2.54 cms
 Bottom margin 2.54 cms
 Page numbers - All text pages as well as Program source code listing should be
numbered at the bottom center of the pages.

Normal Body Text: Font Size: 12, Times New Roman, Double Spacing, Justified. 6 point
above and below para spacing

Paragraph Heading Font Size: 14, Times New Roman, Underlined, Left Aligned. 12 point
above & below spacing.

Chapter Heading Font Size: 20, Times New Roman, Centre Aligned, 30 point above and below
spacing. Coding Font size : 10, Courier New, Normal

Submission of Project Report to the University : The student will submit his/her project report in
the prescribed format. The Project Report should include:

1. One copy of the summary/abstract.


2. One hard Copy of the Project Report.
3. The Project Report may be about 75 pages (excluding coding).

FORMAT OF THE STUDENT PROJECT REPORT ON COMPLETION OF THE PROJECT

I. Cover Page as per format


II. Acknowledgement
III. Certificate of the project guide
IV. Synopsis of the Project
V. Main Report
i. Objective & Scope of the Project
ii. Theoretical Background Definition of Problem
iii. System Analysis & Design vis-a-vis User Requirements
iv. System Planning (PERT Chart)
v. Methodology adopted, System Implementation & Details of Hardware &
Software used System Maintenance & Evaluation
vi. Detailed Life Cycle of the Project
a. ERD, DFD
b. Input and Output Screen Design
c. Process involved
d. Methodology used testing
e. Test Report, Printout of the Report & Code Sheet
Bachelor of Computer Applications
VI. Coding and Screenshots of the project
VII. Conclusion and Future Scope
VIII. References

Formats of various certificates and formatting styles are as:

1. Certificate from the Guide


CERTIFICATE
This is to certify that this project entitled “ xxxxxx xxxxx xxxxx xxxx xxxx xxx” submitted in
partial fulfillment of the degree of Bachelor of Computer Applications to the
“xxxxxxxxxxxxxxxxxxxxxxxxxx” through xxxxxx xxxxx done by Mr./Ms. , Roll No.
is an is an authentic work carried out by
him/her at under my
guidance. The matter embodied in this project work has not been submitted earlier for award of any
degree to the best of my knowledge and belief.

Signature of the student Signature of the Guide

2. Project Report Cover Page Format:

Title of the Project/report


(Times New Roman, Italic, Font size = 24 )

Submitted in partial fulfilment of the requirements for the award of the


degree of
Bachelor of Computer Applications
(Bookman Old Style, 16 point, centre)

Submitted to: Submitted by:


(Guide Name) (Student’s name)
Roll No
College Name

3. Self-Certificate by the students


Bachelor of Computer Applications
SELF CERTIFICATE

This is to certify that the dissertation/project report entitled “…………………………………” is


done by me is an authentic work carried out for the partial fulfilment of the requirements for the
award of the degree of Bachelor of Computer Applications under the guidance of . The matter
embodied in this project work has not been submitted earlier for award of any degree or diploma to
the best of my knowledge and belief.

Signature of the student


Name of the Student
Roll No.

4. ACKNOWLEDGEMENTS

In the “Acknowledgements” page, the writer recognizes his indebtedness for guidance and
assistance of the thesis adviser and other members of the faculty. Courtesy demands that he also
recognize specific contributions by other persons or institutions such as libraries and research
foundations. Acknowledgements should be expressed simply, tastefully, and tactfully.
Bachelor of Computer Applications
Course Code: BCA 311 L T C
Course Name: Machine Learning with Python 4 1 5

INSTRUCTIONS TO PAPER SETTERS:


1. Question No. 1 should be compulsory and cover the entire syllabus. There should be 10
questions of short answer type of 2.5 marks each, having at least 2 questions from each unit.
2. Apart from Question No. 1, rest of the paper shall consist of four units as per the syllabus.
Every unit should have two questions to evaluate analytical/technical skills of candidate.
However, student may be asked to attempt only 1 question from each unit. Each question
should be of 12.5 marks, including its subparts, if any.
3. Examiners are requested to go through the Course Outcomes (CO) of this course and prepare
the question paper accordingly, using Bloom’s Taxonomy (BT), in such a way that every
question be mapped to some or other CO and all the questions, put together, must be able to
achieve the mapping to all the CO(s), in balanced way.

LEARNING OBJECTIVES:
In this course, the learners will be able to develop expertise related to the following:
1. To make student able to learn mathematical concepts, and algorithms used in machine learning
techniques for solving real world problems and developing new applications based on machine
learning.
2. To introduce students to the state-of-the-art concepts and techniques of Machine Learning using
Python.

PRE-REQUISITES:
1. Basics of Python Programming

COURSE OUTCOMES(COs):
After completion of this course, the learners will be able to:-
CO# Detailed Statement of the CO *BT Mapping to
Level PO#
CO1 Explain machine learning concepts on real world BTL2 PO1, PO2,
applications and problems. PO8
CO2 Analyze and Implement Regression techniques. BTL2, PO1, PO4,
BTL3 PO5, PO7
CO3 Solve and design solution of Classification BTL3, PO2, PO3,
problem BTL6 PO4,PO8
CO4 Understand and implement Unsupervised learning BTL2, PO4, PO5,
algorithms BTL3 PO6, PO8
CO5 Interpret various machine learning algorithms in a BTL3 PO2, PO6,
range of real world applications. PO7

UNIT–I
No. of Hours: 11 Chapter / Book Reference: TB1 [Chapters - 1, 3, 4, 8, 9], TB2 [Chapters -
1, 4]

Introduction to Machine Learning, Why Machine learning, Types of Machine Learning Problems,
Applications of Machine Learning. Supervised Machine Learning- Regression and Classification.
Binary Classifier, Multiclass Classification, Multilabel Classification. Performance Measures-
Confusion Matrix, Accuracy, Precision & recall, ROC Curve. Advanced Python- NumPy, Pandas.
Bachelor of Computer Applications
Python Machine Learning Library Scikit-Learn, Linear Regression with one Variable, Linear
Regression with Multiple Variables, Logistic Regression.
UNIT-II
No. of Hours: 11 Chapter / Book Reference: TB1 [Chapters - 5, 6, 7], TB2 [Chapter - 6]

Supervised learning Algorithms: Decision Trees, Tree pruning, Rule-base Classification, Naïve
Bayes, Bayesian Network. Support Vector Machines, k-Nearest Neighbor, Ensemble Learning and
Random Forest algorithm.
UNIT - III
No. of Hours: 11 Chapter / Book Reference: TB1 [Chapter - 10], TB3 [Chapters - 2, 6]

Artificial Neural Networks, HebbNet, Perceptron, Adaline, Multilayer Neural Network,


Architecture, Activation Functions, Loss Function, Hyper parameters, Gradient Descent,
Backpropagation, Variants of Backpropagation, Avoiding overfitting through Regularization,
Applications of Neural Networks.
UNIT – IV
No. of Hours: 11 Chapter/Book Reference: TB1 [Chapter - 8], TB2 [Chapter - 7], TB3
[Chapter - 4]

Unsupervised learning algorithms: Introduction to Clustering, K-means Clustering, Hierarchical


Clustering, Kohonen Self-Organizing Maps. Implementation of Unsupervised algorithms. Feature
selection and Dimensionality reduction, Principal Component Analysis.

TEXT BOOKS:
TB1. GeronAurelien, “Hands-On Machine Learning with Scikit-Learn & TensorFlow”, O’REILLY,
First Edition, 2017.
TB2. U Dinesh Kumar and Manaranjan Pradhan, “Machine Learning using Python", Wiley, 2019.
TB3. Fausett Laurence, “Fundamentals of Neural Networks”, Pearson, Ninth Edition, 2012.

REFERENCE BOOKS:
RB1. Tom Mitchell, “Machine Learning”, First Edition, McGraw- Hill, 1997.
RB2. Budd T A, "Exploring Python", McGraw-Hill Education, 1st Edition, 2011.
RB3. Jake VanderPlas,“Python Data Science Handbook”, O’Reilly,1st Edition,2017.

List of Practical

S.No. Problem Statement Mapping to


CO#
1. Extract the data from the database using python. CO1
2. Write a program to implement linear and logistic regression CO2
3. Write a program to implement the naïve Bayesian classifier for a CO3
sample training data set stored as a .CSV file. Compute the accuracy
of the classifier, considering few test data sets.
4. Write a program to implement k-nearest neighbors (KNN) and CO3
Support Vector Machine (SVM) Algorithm for classification
5. Implement classification of a given dataset using random forest. CO3
Bachelor of Computer Applications
6. Build an Artificial Neural Network (ANN) by implementing the CO3
Back propagation algorithm and test the same using appropriate data
sets.
7. Apply k-Means algorithm k-Means algorithm to cluster a set of data CO4
stored in a .CSV file. Use the same data set for clustering using the
k-Means algorithm. Compare the results of these two algorithms and
comment on the quality of clustering. You can add Python ML
library classes in the program.
8. Write a program to implement Self - Organizing Map (SOM) CO4
9. Write a program for empirical comparison of different supervised CO4
learning algorithms
10. Write a program for empirical comparison of different CO4
unsupervised learning algorithms
Note:
1. In total 10 practicals to be implemented. 2 additional practical may be given by the course
instructor.
2. This is a suggestive list of programs. However, the instructor may add programs as per
the requirement of the course.
Bachelor of Computer Applications
Course Code: BCA 313 L T C
Course Name: Web Security 4 1 5

INSTRUCTIONS TO PAPER SETTERS:


1. Question No. 1 should be compulsory and cover the entire syllabus. There should be 10
questions of short answer type of 2.5 marks each, having at least 2 questions from each unit.
2. Apart from Question No. 1, rest of the paper shall consist of four units as per the syllabus. Every
unit should have two questions to evaluate analytical/technical skills of candidate. However,
student may be asked to attempt only 1 question from each unit. Each question should be of 12.5
marks, including its subparts, if any.
3. Examiners are requested to go through the Course Outcomes (CO) of this course and prepare the
question paper accordingly, using Bloom’s Taxonomy (BT), in such a way that every question be
mapped to some or other CO and all the questions, put together, must be able to achieve the
mapping to all the CO(s), in balanced way.

LEARNING OBJECTIVES:
In this course, the learners will be able to develop expertise related to the following:
1. Students will be able to learn the techniques needed for providing protection and security to our
data and information resources over internet.
2. To understand and learn web application and its Architecture.
3. Students will be able to develop awareness regarding Cyber laws and crimes.
4. Students will be able to understand the internet and web application security issues.
5. Students will be able to learn and understand wireless network security issues.
6. To learn and understand the concept of web services, ajax and other technology which are
helpful.

PRE-REQUISITES:
1. Computer Network
2. C/C++/HTML (Programming Knowledge of C/C++/HTML/JS)

COURSE OUTCOMES(COs):
After completion of this course, the learners will be able to:-

CO# Detailed Statement of the CO *BT Mapping to PO #


Level
CO1 Define overall web security infrastructure, components, BTL1 PO1, PO4, PO7
issues and basic concept etc.
CO2 Describe briefly various types of security like social BTL2 PO1, PO2, PO4,
media security, email security, web application and web PO5, PO7
services security etc. Explain Web related services.
CO3 Apply and implementing various vulnerabilities for BTL3 PO1, PO4, PO6,
Ethically hacking a websites / Web Applications. PO8
CO4 Focusing Penetration Testing, Computer Forensics. BTL4 PO1, PO2, PO7
CO5 Evaluate different web security algorithms with the help BTL5 PO1, PO3, PO4,
of program. PO6, PO7, PO8
CO6 Design and implement XSS attacks, SQL Injection BTL6 PO1, PO3, PO4,
attack, password hashing and cracking. PO7, PO8

UNIT–I
Bachelor of Computer Applications
No. of Hours: 12 Chapter/Book Reference: TB1 [Chapter - 1], TB2 [Chapters - 1, 3]

Components of Internet, Weak points of Internet, HTTP vs HTTPS, Overview of web authentication
technologies, Web application architecture, Recent attack trends, Types of Web Security, Web
infrastructure security/Web application firewalls, managing configurations for web apps, Techniques
of Web Hacking, Methods of Attacking users, Importance of Web Application Security, Web
Application Security vs Network Security. Social Media security - What is Online Social Networks,
data collection from social networks, challenges, opportunities, and pitfalls in online social networks,
APIs Collecting data from Online social media. Trust, credibility, and reputations in social systems.
UNIT–II
No. of Hours: 11 Chapter/Book Reference: TB1 [Chapters - 4, 6], TB2 [Chapters - 8, 11]

Internet and Web Application Security: Email security (PGP and SMIME), Web Security: Web
authentication, Injection Flaws, Programming Bugs and Malicious code, XSS and SQL Injection,
Memory corruption exploits, Web Browser Security, E-Commerce Security
UNIT–III
No. of Hours: 11 Chapter/Book Reference: TB1 [Chapter - 5], TB2 [Chapters - 1, 10, 11]

Wireless Network Security: Components, Security issues, Securing a Wireless Network, Mobile
Security Management: Disaster Recovery, Ethical Hacking, Penetration Testing, Computer
Forensics, Cyber laws and crime, Security Audit and Investigation, Cyber Security Solutions
UNIT–IV
No. of Hours: 10 Chapter/Book Reference: TB1 [Chapter - 6], TB2[Chapters - 5, 10, 11]

Web services overview, Honeytoken, XML security, AJAX attack trends and common attacks,
REST security, Content Security Policy Serialization security, Clickjacking, DNS rebinding,
HTML5 security, Logging collection and analysis for web apps, Security testing, IPv6 impact on
web security

TEXT BOOKS:
TB1. Joel Scam bray, Vincent Liu, Caleb Sima, “Hacking Exposed Web Applications, 3rd
Edition”, McGraw-Hill, October 2010
TB2. Baloch, R., Ethical Hacking and Penetration Testing Guide, CRC Press, 2015.

REFERENCE BOOKS:
RB1. Dafydd Stuttard, and Marcus Pinto, The Web Application Hacker's Handbook: Finding and
Exploiting Security Flaws, 2nd Edition, John Wiley & Sons, 2011.
RB2. Council, Ec. , Computer Forensics: Investigating Network Intrusions and Cybercrime,
Cengage Learning, Second Edition, 2010.
RB3. John W. Ritting house, William M. Hancock, “Cyber Security Operations
Handbook”, Elsevier Pub
RB4. Deborah G Johnson, “Computer Ethics”, 4th Edition, Pearson Education Publication.
RB5. Earnest A. Kallman, J.P Grillo, “Ethical Decision making and IT: An Introduction with
Cases”, McGraw Hill Publication.
Bachelor of Computer Applications
List of Practicals

S.No. Detailed Statement Mapping to


CO#
1. Implement the Security in web browsers (Mozilla Firefox/Google CO1, CO2
Chrome/IE)

2. Analysis of the security and privacy features and issues in CO1, CO2
Ecommerce & social media websites i.e., Facebook, Twitter and
Google+

3. Implement CAPTCHA to keep the website secure. CO3, CO6

4. Implement Password hashing and cracking technique CO3, CO6

5. Implement SQL Injection Attack CO3, CO6

6. Implement XSS attacks CO3, CO6

7. Implement Malicious Code & Memory Corruption Exploits CO3, CO6

8. Implement the process of SSL Certificate CO4

9. Implement Reconnaissance with the help of Google and Whois CO5, CO6

10. Implement Clickjacking, DNS rebinding & Ajax Attack CO5, CO6

Note:
1. In total 10 practicals to be implemented. 2 additional practical may be given by the
course instructor.
2. This is a suggestive list of programs. However, the instructor may add programs as
per the requirement of the course.
Bachelor of Computer Applications
Course Code: BCA 315 L T C
Course Name: Web Development with Java & JSP 4 1 5

INSTRUCTIONS TO PAPER SETTERS:


1. Question No. 1 should be compulsory and cover the entire syllabus. There should be 10
questions of short answer type of 2.5 marks each, having at least 2 questions from each unit.
2. Apart from Question No. 1, rest of the paper shall consist of four units as per the syllabus. Every
unit should have two questions to evaluate analytical/technical skills of candidate. However,
student may be asked to attempt only 1 question from each unit. Each question should be of 12.5
marks, including its subparts, if any.
3. Examiners are requested to go through the Course Outcomes (CO) of this course and prepare the
question paper accordingly, using Bloom’s Taxonomy (BT), in such a way that every question be
mapped to some or other CO and all the questions, put together, must be able to achieve the
mapping to all the CO(s), in balanced way.

LEARNING OBJECTIVES:
In this course, the learners will be able to develop expertise related to the following:-
1. Learn Web development using Java.
2. Understand the basics of J2EE and Web development.
3. Understand and implement Servlet
4. Creating and implementing JDBC application.
5. Implement JSP and JSF concepts.
6. Understand the fundamentals of Hibernate, Struts and springs.

PRE-REQUISITES:
1. Programming Knowledge of Java
2. HTML

COURSE OUTCOMES (COs):


After completion of this course, the learners will be able to:-
CO # Detailed Statement of the CO *BT Mapping to PO #
Level
CO1 Understand the concept of HTML, CSS and Java BTL2 PO3, PO4, PO5
Script.
CO2 Understand J2EE architecture, web application BTL2 PO3, PO4,
structure and web architecture models. PO5, PO8
CO3 Creating and configuring Servlets. BTL6 PO3, PO4, PO5
CO4 Understand JDBC architecture and design database BTL2 PO3, PO4,
applications using JDBC. PO5, PO8
CO5 Design applications using JSP and JSF. BTL3 PO3, PO4,
PO5, PO8
CO6 Elaborate the functional programming concepts of BTL1 PO3, PO4,
Hibernate, Struts and Springs. PO5, PO7, PO8
Bachelor of Computer Applications
UNIT – I
No. of Hours: 11 Chapter/Book Reference: TB1 [Chapters - 1, 13, 31, 32, 33], TB2
[Chapters - 1, 2, 18], TB3 [Chapters - 2, 3, 4, 11, 14]

Introduction to HTML, CSS and Java Script: Content, layout, and styling of web page
J2EE and Web Development: Java Platform, J2EE Architecture Types, Types of Servers in J2EE
Application, HTTP Protocols and API, Web Application Structure, Web Containers and Web
Architecture Models.
Swings: Introduction and comparison with AWT controls.
UNIT – II
No. of Hours: 11 Chapter/Book Reference: TB1 [Chapter - 37], TB2 [Chapters - 34, 41, 42]

Introduction to Java EE Web Component: Overview of Servlet, Servlet Life Cycle, Types of
Servlet, HTTP Methods Structure and Deployment descriptor Servlet Context and Servlet Config
interface, State Management: client and server side,
JDBC Programming: JDBC Architecture, Types of JDBC Drivers, Introduction to major JDBC
Classes and Interface, Creating simple JDBC Application, Database operations using JDBC, Types
of Statement (Statement Interface, Prepared Statement, Callable Statement), Exploring Result Set
Operations.
UNIT – III
No. of Hours: 11 Chapter/Book Reference: TB2 [Chapters - 43, 44]

Java Server Pages: Introduction to JSP, Comparison with Servlet, JSP Architecture, JSP Life Cycle,
JSP Directives, JSP Action, JSP Standard Tag Libraries, JSP Session Management.
Develop Web Applications with JSF: JavaServer Faces (JSF) framework, architecture of JSF web
applications, development view of a JSF application.
UNIT – IV
No. of Hours: 11 Chapter/Book Reference: TB1 [Chapters - 22, 37, 39], TB2[ 33, 36]

Java Beans, Java Web Frameworks: Spring MVC: Java Beans, Spring Introduction, Spring
Architecture, Spring MVC Module, Bean life cycle, Spring API.
Hibernate and Struts: Java Beans, Introduction to Hibernate, Hibernate Architecture, Hibernate
Mapping Types, Introduction to Struts, core components, architecture, Interceptors, validation.
Advance Networking: Networking Basics, Introduction of Socket, Types of Socket, Socket API,
TCP/IP client sockets, URL, TCP/IP server sockets, Datagrams, java.net package Socket,
ServerSocket, InetAddress, URL, URLConnection.

TEXT BOOKS:
TB1. Herbert Schildt, "Java - The Complete Reference", Oracle Press, 9th Edition, 2014
TB2. Y. Daniel Liang, “Introduction to Java Programming, Comprehensive Version, Pearson.
TB3. Sams Teach Yourself HTML, CSS & JavaScript Web Publishing in One Hour a Day by Laura
Lemay, Rafe Colburn, Jennifer Kyrnin, 2015

REFERENCE BOOKS:
RB1. E. Balaguruswamy, “Programming with Java”, Tata McGraw Hill, 4th Edition, 2009.
RB2. Cay Horstmann, “Computing Concepts with Java 2 Essentials”, John Wiley & Sons, 2nd
Edition, 1999.
RB3. Jeffrey C. Jackson, “Web Technologies: A Computer Science Perspective”, Pearson.
RB4. Jakarta Struts Cookbook, by Bill Siggelkow, O'Reilly Media, Inc. 2005

List of Practicals
Bachelor of Computer Applications

S. Detailed Statement Mapping to


No. CO#
Core Practicals (Implement minimum 8 out of 10 practicals)
1. Create a webpage that prints your name to the screen, print your name CO1
in Tahoma font, print a definition list with 5 items, Create links to five
different pages, etc.
2. Program to demonstrate Swing components. CO1
3. Configure Apache Tomcat and write a hello world JSP page. CO1

4. Write a java program that connects to a database using JDBC and does CO3
add, delete and retrieve operations.
5. Create and Develop a web application using JSF. CO3
6. Write a program to implement a Java Beans to set and get values. CO2
7. Create a Java application to demonstrate Socket Programming in Java. CO5
8. Write a program to retrieve hostname--using methods in Inetaddress CO2
class
Application Based Practicals (Implement minimum 5 out of 10 practicals)
9. Write a client-server program which displays the server machine's date CO1
and time on the client machine.
10. Create a table in the database containing the columns to store book CO3
details like: book name, authors, description, price and URL of the
book’s cover image. Using JSP and JDBC retrieve the details in the table
and display them on the webpage
11. Write a program to create a login page using Java Beans.Also validate CO1
the username and password from the database.
12. Create a form for inputting text and uploading image using struts CO4
13. Create a Student Registration application using Hibernate. CO4
14. Write a program to implement MVC using Spring Framework CO4
Note:
1. In total 10 practicals to be implemented. 2 additional practical may be given by the course
instructor.
2. This is a suggestive list of programs. However, the instructor may add programs as per the
requirement of the course.

You might also like