Syllabus
Syllabus
th
5
Semester
97
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Semester: 5
Course Title: Object Oriented Modelling
Course Code: 23CS5PCOOM Total Contact Hours: 25
L-T-P: 2-0-1 Total Credits: 3
Unit
Topics Hours
No.
Class Modeling: Object and class concepts; Link and associations concepts;
Generalization and inheritance.
1 Advanced Class Modeling: Advanced object and class concepts; Association 5
ends; N-ary associations; Aggregation; Abstract classes; Multiple inheritance;
Metadata; Reification; Constraints; Derived data; Packages.
State Modeling: Events, States, Transitions and Conditions; State diagrams;
State diagram behaviour.
2 5
Advanced State Modeling: Nested state diagrams; Nested states; Signal
generalization; Concurrency.
Interaction Modeling: Use case models; Sequence models; Activity models.
Advanced interaction modeling: Use case relationships; Procedural
3 sequence models; Special constructs for activity models. 5
System Conception: Devising a system concept; elaborating a concept;
preparing a problem statement
Domain Analysis: Overview of analysis; Domain class model; Domain State
Model; Domain Interaction Model; Iterating the analysis.
4 5
Application Analysis: Application interaction model; Application class model;
Application State Model; Adding operations.
Design Patterns - Introduction to patterns, Pattern categories; Relationships
between patterns; Pattern description.
5 5
Communication Patterns: Forwarder-Receiver; Client-Dispatcher-Server;
Publisher-Subscriber.
Sl.
Book Title Authors Edition Publisher Year
No.
Frank Buschmann,
Pattern-Oriented Regine Meunier,
st John Wiley and
1 Software Architecture: Hans Rohnert, 1 2006
Sons
A System of Patterns Peter Sommerlad,
Michael Stal
Object-Oriented
rd Pearson
2 Analysis and Design Grady Booch 3 2007
Education
with Applications
Object-Oriented
Brahma Dathan, st Universities
3 Analysis, Design and 1 2009
Sarnath Ramnath Press
Implementation
Hans-Erik Eriksson,
Magnus Penker, st Wiley-
4 UML 2 Toolkit 1 2004
Brian Lyons, dreamtech India
David Fado
E-Books:
Sl.
Book Title Authors Edition Publisher Year URL
No.
https://daneshjav
Pattern- Frank aji.wordpress.com
Oriented Buschmann, /wp-
John
Software Regine Meunier, st content/uploads/
1 1 Wiley and 2007
Architecture, Hans Rohnert, 2018/02/sznikak_j
Sons
A System of Peter Sommerlad, egyzet_pattern-
Patterns Michael Stal oriented-
sa_vol1.pdf
https://zjnu2017.
github.i
o/OOAD/reading/
Object
Object.
Oriented
rd Pearson Oriented.Analysis.
2 Analysis and Grady Booch 3 2005
Edition and.D
Design with
esign.with.Applica
Applications
tions.3
rd.Edition.by.Booc
h.pdf
99
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Object
https://link.spring
Oriented
er.com
Analysis, Brahma Dathan, nd Universities
3 2 2009 /book/10.1007/9
Design and Sarnath Ramnath Press
78-3-
Implementa
319-24280-4
tion
MOOC Courses:
Sl. Course
Course name Year URL
No. offered by
Object Oriented analysis https://archive.nptel.ac.in/cour
1 NPTEL 2024
and design ses/106/105/106105153/
https://www.coursera.org/learn
2 Object-Oriented Design Coursera 2024
/object-oriented-design
Apply the knowledge of class, State & Interaction Modelling using Unified Modeling
CO1
Language to solve a given problem
CO2 Analyze a System for a given requirement using Unified Modeling language
CO-PO-PSO- Mapping:
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12 PSO1 PSO2 PSO3
CO1 3
CO2 3 3
CO3 3
CO4 3 3 2 3
100
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Laboratory Plan:
Instructions to the students (Part A & B):
1. Develop a problem statement.
2. Develop a complete IEEE standard SRS document with several requirements.
3. Identity the conceptual classes and develop a domain model with UML Class diagram.
4. Identify the finite and appropriate states and develop an UML state diagram.
5. Identify Use Cases and develop the Use Case model.
6. Using the identified scenarios find the interaction between objects and represent them
using UML Interaction diagrams.
7. Identify the business activities and develop an UML Activity diagram.
Sl.
Name of the Experiment
No.
UML diagrams to be developed are:
1 Class Diagram
3 Sequence Diagram
4 State Diagram
5 Activity Diagram
PART-A
Applications Problems to be considered:
1 Hotel Management System
PART-B
Mini Project: Students must select a problem statement from Smart India Hackathon and
must prepare SRS and design UML diagrams (With Simple UI).
101
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Evaluation Rubrics for Mini Project:
Partially
Criteria Exemplary Proficient Points
Proficient
(2)
(1) (0.5)
Problem problem
problem problem
Statement and statement and
statement and statement and
Software software
software software __/2
Requirements requirements are
requirements are requirements are
Specification (SRS) well defined and
partially complete not complete
complete
(1.5) (1)
(2)
User Interface (UI) User Interface (UI)
User Interface (UI) User Interface (UI) __/2
is partially is not well
is well designed
designed designed
(1) (0.5)
(0.75)
Clear and Unclear
Oral Communication is
effective communication
communication. clear __/1
communication Answered only
(presentation) Answered most of
Answers all the few of the
the questions
questions questions
(1.5) (1)
(2) Writing that is Unclear and
Clear and clear and effective ineffective writing
Report Effective writing for the most part and multiple
__/2
and adherence to and minor errors errors in
appropriate style in adherence to adherence to
guidelines appropriate style appropriate style
guidelines guidelines
Total __/10
NOTE:
1. Students should come prepared with problem statement and SRS of the given problem
to the lab.
2. Student should either stick the printout of problem statement and SRS or handwritten.
3. Students should complete all the specified UML diagrams for all the applications.
Evaluation Pattern: Part A(UML diagrams): 15 Marks
Part B(Mini Project) : 10 Marks
102
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
SEE Exam Question Paper Format:
103
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Semester: 5
Course Title: Data Exploration and Visualization
Course Code: 23CS5PCDEV Total Contact Hours: 40
L-T-P: 2-1-0 Total Credits: 3
Unit
Topics Hours
No.
Introduction to Exploratory Data Analysis (EDA) - Steps in EDA, Data Types:
Numerical Data - Discrete data, continuous data - Categorical data -
1 5
Measurement Scales: Nominal, Ordinal, Interval, Ratio - Comparing EDA with
classical and Bayesian Analysis - Software tools for EDA.
104
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Prescribed Text Books:
Sl.
Book Title Authors Edition Publisher Year
No.
Suresh Kumar
Hands-On Exploratory Data st
1 Mukhiya, 1 Packt 2020
Analysis with Python
Usman Ahmed
Fundamental of Data st
2 Claus O. Wilke 1 O'Reilly 2019
Visualization
Python for Data Analysis:
nd O’Reilly
3 Data Wrangling with McKinney. W 2 2017
Media.
Pandas, NumPy and IPython.
Sl.
Book Title Authors Edition Publisher Year
No.
Data Exploration and Anamitra Dehmukh, st Technical
1 1 2022
Visualization Nimbalkar Publications
Exploratory Data st
2 Ayodele Oluleye 1 Packt 2023
Analysis with Python
E-Book:
Sl. URL
Book Title Authors Edition Publisher Year
No.
https://www.perleg
Data o.com/book/38159
Visualization Jeffery D Comm, 10/data-
st
1 Exploring and James J Cochran, 1 Cengage 2022 visualization-
Explaining Michael J Fry exploring-and-
with Data explaining-with-
data-pdf
MOOC Courses:
Sl.
Course name Course offered by Year URL
No.
Data https://www.coursera.org/articles/data-
1 Coursera 2023
Visualization visualization
Data http://edx.org/course/data-science-
2 Edx 2023
Visualization visualization
105
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Course Outcomes (COs):
CO1 Apply the computational approaches to perform Data Exploration and Visualization
Analyse the different techniques to perform Data Exploration and Visualization for a
CO2
given application
Demonstrate exploratory data analysis to real data sets and provide interpretations
CO3
through relevant visualization tools
CO-PO-PSO Mapping:
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12 PSO1 PSO2 PSO3
CO1 3
CO2 3
CO3 3 3 3
Tutorial Plan:
Use data set of your choice from Open Data Portal for the following hands-on exercises.
Tutorial # Topic
1 NumPy ndarray
2 Pandas Data Structures
3 Data Loading, Storage and File Formats
4 Interacting with Web APIs
5 Data Cleaning and Preparation
6 Data Wrangling
7 Data Visualization using matplotlib
8 Data Aggregation
9 Time Series Data Analysis
Analysing a real time dataset and draw meaningful insights using visualization
10-12
tools
106
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
AAT Plan:
Plan of Activities: Following are the activities to be carried out by students during project work.
Total __/40
108
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Semester: 5
Course Title: Artificial Intelligence
Course Code: 23CS5PCAIN Total Contact Hours: 40
L-T-P: 3-0-1 Total Credits: 4
Sl.
Book Title Authors Edition Publisher Year
No.
Stuart J.Russell, rd
1 Artificial Intelligence 3 Pearson 2015
Peter Norvig
109
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Reference Text Books:
Sl.
Book Title Authors Edition Publisher Year
No.
Artificial Intelligence:
Structures and th Pearson
2 George F Luger 5 2009
Strategies for Complex Education
Problem Solving
E-Book:
Sl.
Book Title Authors Edition Publisher Year URL
No.
Artificial https://www.kd
Intelligence: David L. Cambridge nuggets.com/20
nd
1 Foundations of Poole, Alan K. 2 University 2017 19/11/10-free-
Computational Mackworth Press must-read-
Agents books-i.html
MOOC Courses:
CO4 Conduct practical experiments for demonstrating agents, searching and inferencing
110
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
CO-PO-PSO Mapping:
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12 PSO1 PSO2 PSO3
CO1 3
CO2 2
CO3 3 3
CO4 3
Laboratory Plan:
Instructions to Students:
1. Design, develop and implement the specified algorithms for the following problems using
Python Language in LINUX / Windows environment.
2. Lab Observation - Handwrite the algorithm and output of program.
Note: The faculty in charge of Artificial Intelligence course of all the sections must come up
with two to three test cases for the programs in the laboratory set at the beginning of the
semester. The students are expected to write the algorithm /program to solve these test
cases. Depending on the number of test cases executed by the student the evaluation for
the week must be done.
3. Soft copy (PDF file) of all the programs along with the output needs to be submitted before
the lab test.
Marks for
Lab
Unit # Continuous Program Details
Program
Evaluation
1 1 10 Implement Tic –Tac –Toe Game.
2 1 10 Solve 8 puzzle problems.
3 1 10 Implement Iterative deepening search algorithm.
4 1 10 Implement vacuum cleaner agent.
a. Implement A* search algorithm.
5 2 10
b. Implement Hill Climbing Algorithm.
111
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
112
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Semester: 5
Course Title: Computer Networks
Course Code: 23CS5PCCON Total Contact Hours: 40
L-T-P: 3-0-1 Total Credits: 4
Unit
Topics Hours
No.
Introduction: Data Communications, Networks, Network Types, Network
Models, Protocol Layering, TCP/IP Protocol Suite, OSI Model.
Data Link Layer: Link Layer Addressing, Error Detection and Correction,
Block Coding, Cyclic Codes, Checksum.
2 Data Link Control: DLC Services, Data-Link Layer Protocols, Media Access 8
Control, Wired LANs, Ethernet protocol.
Sl.
Book Title Authors Edition Publisher Year
No.
Data Communications and th
1 Behrouz A Forouzan 5 McGraw Hill 2013
Networking
113
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Reference Text Books:
Sl.
Book Title Authors Edition Publisher Year
No.
Data and Computer th
1 William Stallings 8 Pearson Education 2008
Communication
Computer Networks – A Larry L. Peterson, th
2 4 Elsevier 2007
Systems Approach Bruce S. Davie
E-Book:
Sl.
Book Title Authors Edition Publisher Year URL
No.
https://csc-
knu.github.io/sys-
Andrew S.
Computer th prog/books/Andrew%20
1 Tanenbaum, 5 Pearson 2011
Networks S.%20Tanenbaum%20-
David J. Wetherall
%20Computer%20
Networks.pdf
MOOC Courses:
https://www.coursera.org/learn/illino
2 Computer Networking Coursera 2024
is-tech-computer-networking
CO-PO-PSO mapping:
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12 PSO1 PSO2 PSO3
CO1 3
CO2 3
CO3 3 2 2
114
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Assessment Plan for CIE:
Laboratory Plan:
Instructions to be followed by Students in each lab:
1. Each student should bring the observation book for each lab and write the programs and
output completed in the previous week and gets it evaluated by the faculty in charge. In
the observation book, students should
a) Handwrite the Program/scenarios with topology and procedure
b) Paste the printout of the Output or Handwrite the Output (Output should be written
for all the cases).
2. Soft copy (PDF file) of all the experiments and programs along with the output needs to
be submitted before the lab test.
3. Each Student should practice the extra exercise given in each lab.
NOTE:
CYCLE 1: Exercises done using CISCO Packet Tracer
CYCLE 2: Execution of Lab Programs using C/C++/Python
CYCLE-1
115
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
CYCLE-2
116
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Semester: 5
Course Title: Environmental studies
Course Code: 23CV5HSEVS Total Contact Hours: 15
L-T-P: 1-0-0 Total Credits: 1
COURSE OBJECTIVE:
The students will be able to develop a sense of responsibility about the environment, natural
resources, their conservation and understand the concept, structure and function of different
ecosystems and the ill effects of environmental pollution and other environmental issues like
population growth, Acid rain, global warming etc.,
Total contact hours = 15 (Weekly 1 Hr.)
Prescribed Text Books:
Sl.
Book Title Authors Edition Publisher Year
No.
rd Sun star
1 Environmental studies Geetha Balakrishna 3 2020
publication
st Tata McGraw
2 Ecology Subramanyam 1 2014
Hill
th University
3 Environmental studies Dr. J.P. Sharma 4 2019
Science Press
st
4 Environmental studies Smriti Srivastav 1 Kataria & Sons 2020
Reference Books:
Sl.
Book Title Authors Edition Publisher Year
No.
Environmental rd McGraw Hill
1. Benny Joseph 3 2017
studies Education
MOOC Courses:
Sl. Course
Course name Year URL
No. offered by
https://www.coursera.org /
1 Sustainability Engineering MOOC 2022
course / sustain
117
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Course Outcome (COs):
CO-PO-PSO mapping:
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12 PSO1 PSO2 PSO3
CO1 3 2
CO2 2 2
CO3 1 1
CIE Marks:
Conduct 3 Tests, considering best of 2. The pattern of Test paper consists of two parts. Part-A
consists of 20 MCQs for 1 mark each; Part-B consists of 3 descriptive questions, 10 marks each.
Student should answer 2 full questions from part-B. Two quizzes, each quiz is for 5 marks
covering full syllabus.
TOTAL CIE MARKS: 20+20+10=50 MARKS:
SEE Exam Question paper format:
PART-A:
118
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Semester: 5
Course Title: Bio Inspired Systems
Course Code: 23CS5BSBIS Total Contact Hours: 30
L-T-P: 0-0-1 Total Credits: 1
Introduction:
The course will expose students to the current research in several disciplines that relate to
computer science, including computational neuroscience, cognitive science, biology, and
evolutionary-inspired computational methods. These models have become important in several
areas of computer science and the students will learn to develop models and algorithms to
solve complex problems.
Prescribed Text Books:
Sl.
Book Title Authors Edition Publisher Year
No.
Recent Developments
Leandro Nunes De Castro, nd
1 in Biologically Inspired 2 Idea Group 2005
Fernando Jose Von Zuben
Computing
Handbook of
Stephan Olariu, st Chapman &
2 bioinspired algorithms 1 2006
Albert Y. Zomaya Hall / CRC
and applications
Sl.
Book Title Authors Edition Publisher Year
No.
Genetic algorithms in search st Addison
1. Goldberg 1 1999
optimization and machine learning Wesley
Recent Advances in Swarm Intelligence Xin-She st Springer
2. 1 2015
and Evolutionary Computation Yang International
MOOC Courses:
Sl. Course
Course name Year URL
No. Offered By
https://www.udemy.com/course/bio
Bio-inspired Artificial
1 Udemy 2023 -inspired-artificial-intelligence-
Intelligence Algorithms
algorithms-for-optimization/
https://www.udemy.com/course/ai-
AI and Meta-Heuristics
and-combinatorial-optimization-
2 (Combinatorial Udemy 2023
with-meta-heuristics /?couponCode
Optimization) Python
= SKILLS4SALEB
119
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Course Outcomes (Cos):
CO-PO-PSO Mapping:
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12 PSO1 PSO2 PSO3
CO1 3 3 3
CO2 3 3
Laboratory Plan:
Instructions to be followed by Students in each lab:
1. Every lab, the student will be evaluated for 10 marks
a. If the student successfully finishes the assigned task of the lab and on spot task, in the
stipulated lab hours, 10 marks will be given to the student.
b. If the student could finish only assigned task in the stipulated lab hours then the student
will get 8 marks.
c. If the student could not complete the assigned task of that day lab, the student can show
the completion on the same day or next day. The student will get 7 marks
d. If the student could not complete as like Case ‘c’, then partial marks will be given based on
the completion status.
e. If the student is absent for the lab , he /she finished the assigned task and shows the
execution before the next lab, the student will get 4 marks (Attendance will not be given)
f. Note: Case ‘e’ is allowed only twice [Only if the student is absent because of illness]
120
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Sl.
Algorithms
No.
Genetic Algorithm for Optimization Problems:
Genetic Algorithms (GA) are inspired by the process of natural selection and genetics, where
the fittest individuals are selected for reproduction to produce the next generation. GAs are
widely used for solving optimization and search problems. Implement a Genetic Algorithm
using Python to solve a basic optimization problem, such as finding the maximum value of a
mathematical function.
Implementation Steps:
1. Define the Problem: Create a mathematical function to optimize.
2. Initialize Parameters: Set the population size, mutation rate, crossover rate, and number
of generations.
1
3. Create Initial Population: Generate an initial population of potential solutions.
4. Evaluate Fitness: Evaluate the fitness of each individual in the population.
5. Selection: Select individuals based on their fitness to reproduce.
6. Crossover: Perform crossover between selected individuals to produce offspring.
7. Mutation: Apply mutation to the offspring to maintain genetic diversity.
8. Iteration: Repeat the evaluation, selection, crossover, and mutation processes for a fixed
number of generations or until convergence criteria are met.
9. Output the Best Solution: Track and output the best solution found during the
generations.
Particle Swarm Optimization for Function Optimization:
Particle Swarm Optimization (PSO) is inspired by the social behavior of birds flocking or fish
schooling. PSO is used to find optimal solutions by iteratively improving a candidate solution
with regard to a given measure of quality. Implement the PSO algorithm using Python to
optimize a mathematical function.
Implementation Steps:
1. Define the Problem: Create a mathematical function to optimize.
2. Initialize Parameters: Set the number of particles, inertia weight, cognitive and social
2 coefficients.
3. Initialize Particles: Generate an initial population of particles with random positions and
velocities.
4. Evaluate Fitness: Evaluate the fitness of each particle based on the optimization function.
5. Update Velocities and Positions: Update the velocity and position of each particle based
on its own best position and the global best position.
6. Iterate: Repeat the evaluation, updating, and position adjustment for a fixed number of
iterations or until convergence criteria are met.
7. Output the Best Solution: Track and output the best solution found during the iterations.
121
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Ant Colony Optimization for the Traveling Salesman Problem:
The foraging behavior of ants has inspired the development of optimization algorithms that
can solve complex problems such as the Traveling Salesman Problem (TSP). Ant Colony
Optimization (ACO) simulates the way ants find the shortest path between food sources and
their nest. Implement the ACO algorithm using Python to solve the TSP, where the objective
is to find the shortest possible route that visits a list of cities and returns to the origin city.
Implementation Steps:
1. Define the Problem: Create a set of cities with their coordinates.
2. Initialize Parameters: Set the number of ants, the importance of pheromone (alpha), the
3 importance of heuristic information (beta), the evaporation rate (rho), and the initial
pheromone value.
3. Construct Solutions: Each ant constructs a solution by probabilistically choosing the next
city based on pheromone trails and heuristic information.
4. Update Pheromones: After all ants have constructed their solutions, update the
pheromone trails based on the quality of the solutions found.
5. Iterate: Repeat the construction and updating process for a fixed number of iterations or
until convergence criteria are met.
6. Output the Best Solution: Keep track of and output the best solution found during the
iterations.
Cuckoo Search (CS):
Cuckoo Search (CS) is a nature-inspired optimization algorithm based on the brood
parasitism of some cuckoo species. This behavior involves laying eggs in the nests of other
birds, leading to the optimization of survival strategies. CS uses Lévy flights to generate new
solutions, promoting global search capabilities and avoiding local minima. The algorithm is
widely used for solving continuous optimization problems and has applications in various
domains, including engineering design, machine learning, and data mining.
Implementation Steps:
1. Define the Problem: Create a mathematical function to optimize.
2. Initialize Parameters: Set the number of nests, the probability of discovery, and the
4
number of iterations.
3. Initialize Population: Generate an initial population of nests with random positions.
4. Evaluate Fitness: Evaluate the fitness of each nest based on the optimization function.
5. Generate New Solutions: Create new solutions via Lévy flights.
6. Abandon Worst Nests: Abandon a fraction of the worst nests and replace them with new
random positions.
7. Iterate: Repeat the evaluation, updating, and replacement process for a fixed number of
iterations or until convergence criteria are met.
8. Output the Best Solution: Track and output the best solution found during the iterations.
122
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Grey Wolf Optimizer (GWO):
The Grey Wolf Optimizer (GWO) algorithm is a swarm intelligence algorithm inspired by the
social hierarchy and hunting behavior of grey wolves. It mimics the leadership structure of
alpha, beta, delta, and omega wolves and their collaborative hunting strategies. The GWO
algorithm uses these social hierarchies to model the optimization process, where the alpha
wolves guide the search process while beta and delta wolves assist in refining the search
direction. This algorithm is effective for continuous optimization problems and has
applications in engineering, data analysis, and machine learning.
Implementation Steps:
5 1. Define the Problem: Create a mathematical function to optimize.
2. Initialize Parameters: Set the number of wolves and the number of iterations.
3. Initialize Population: Generate an initial population of wolves with random positions.
4. Evaluate Fitness: Evaluate the fitness of each wolf based on the optimization function.
5. Update Positions: Update the positions of the wolves based on the positions of alpha,
beta, and delta wolves.
6. Iterate: Repeat the evaluation and position updating process for a fixed number of
iterations or until convergence criteria are met.
7. Output the Best Solution: Track and output the best solution found during the iterations
Parallel Cellular Algorithms and Programs:
Parallel Cellular Algorithms are inspired by the functioning of biological cells that operate in a
highly parallel and distributed manner. These algorithms leverage the principles of cellular
automata and parallel computing to solve complex optimization problems efficiently. Each
cell represents a potential solution and interacts with its neighbors to update its state based
on predefined rules. This interaction models the diffusion of information across the cellular
grid, enabling the algorithm to explore the search space effectively. Parallel Cellular
Algorithms are particularly suitable for large-scale optimization problems and can be
implemented on parallel computing architectures for enhanced performance.
Implementation Steps:
1. Define the Problem: Create a mathematical function to optimize.
6
2. Initialize Parameters: Set the number of cells, grid size, neighborhood structure, and
number of iterations.
3. Initialize Population: Generate an initial population of cells with random positions in the
solution space.
4. Evaluate Fitness: Evaluate the fitness of each cell based on the optimization function.
5. Update States: Update the state of each cell based on the states of its neighboring cells
and predefined update rules.
6. Iterate: Repeat the evaluation and state updating process for a fixed number of iterations
or until convergence criteria are met.
7. Output the Best Solution: Track and output the best solution found during the iterations.
123
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Optimization via Gene Expression Algorithms:
Gene Expression Algorithms (GEA) are inspired by the biological process of gene expression
in living organisms. This process involves the translation of genetic information encoded in
DNA into functional proteins. In GEA, solutions to optimization problems are encoded in a
manner similar to genetic sequences. The algorithm evolves these solutions through
selection, crossover, mutation, and gene expression to find optimal or near-optimal
solutions. GEA is effective for solving complex optimization problems in various domains,
including engineering, data analysis, and machine learning.
Implementation Steps:
1. Define the Problem: Create a mathematical function to optimize.
2. Initialize Parameters: Set the population size, number of genes, mutation rate, crossover
7 rate, and number of generations.
3. Initialize Population: Generate an initial population of random genetic sequences.
4. Evaluate Fitness: Evaluate the fitness of each genetic sequence based on the optimization
function.
5. Selection: Select genetic sequences based on their fitness for reproduction.
6. Crossover: Perform crossover between selected sequences to produce offspring.
7. Mutation: Apply mutation to the offspring to introduce variability.
8. Gene Expression: Translate genetic sequences into functional solutions.
9. Iterate: Repeat the selection, crossover, mutation, and gene expression processes for a
fixed number of generations or until convergence criteria are met.
10. Output the Best Solution: Track and output the best solution found during the iterations.
SEE Exam (50 Marks):
The student should execute the given bio-inspired algorithm and will be evaluated by external
examiner along with internal faculty.
124
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Semester: 5
Course Title: Robot Process Automation Design and Development
Course Code: 23CS5PERPA Total Contact Hours: 40
L-T-P: 3-0-0 Total Credits: 3
Unit
Topics Hours
No.
Robotic Process Automation:
Scope and Techniques of automation: Techniques of automation Robotic
Process Automation: Benefits of RPA Components of RPA, RPA platforms.
1 About UiPath. The future of automation. 8
Record and Play: UiPath stack, Downloading and Installing UiPath Studio,
Learning UiPath Studio, Task Recorder, emptying trash in Gmail, Emptying
Recycle Bin.
Sequence, Flowchart, and Control Flow: Sequencing the workflow, Activities,
Control flow, various types of loops, and decision making, to use a sequence,
to use a flowchart, step by step example using sequence and control flow.
2 8
Data Manipulation: Variables and scope, Collections, Arguments-purpose and
use, Data table usage with examples, Clipboard management, File operation
with step-by-step example. CSV/Excel to data table and vice versa examples.
Taking control of the controls: Finding and attaching windows, Finding the
control, Techniques for waiting for a control, Act on controls-mouse and
keyboard activities, working with UiExplorer, Handling events, Revisit
recorder, Screen scraping, when to use OCR, Types of OCR available, to use
3 OCR, Avoiding typical failure points. 8
Tame that Application with Plugins and Extensions Terminal plugin: Mail
plugin, PDF plugin, web integration, Excel and Word plugins, Credential
management.
Handling User Events and Assistant Bots: Assistant bots, monitoring system
event triggers, monitoring image and element triggers, Launching an assistant
bot on a keyboard event.
4 8
Exception Handling, Debugging, and Logging Exception handling: Common
exceptions and ways to handle them, Logging and taking screenshots,
debugging techniques, Collecting crash dumps, Error reporting.
Managing and Maintaining the Code: Project Organization, Nesting
workflows, Reusability of workflows, commenting techniques, State Machine,
when to use Flowcharts, State Machines or sequences, Using config files and
5 examples of a config file. 8
Deploying and Maintaining the Bot: Publishing using publish utility, Overview
of Orchestration Server, Using Orchestration Server to control bots, Using
Orchestration Server to deploy bots.
125
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Prescribed Text Book:
Sl.
Book Title Authors Edition Publisher Year
No.
Learning Robotic st
1 Alok Mani Tripathi 1 Packt 2018
Process Automation
Sl.
Book Title Authors Edition Publisher Year
No.
Robotic Process
Nandan Mullakara, st
1 Automation 1 Packt 2020
Arun Kumar Asokan
Projects
E-Book:
Sl.
Book Title Authors Edition Publisher Year URL
No.
https://book.akij.net/eB
Learning
Alok ooks/2018/November/5
Robotic st
1 Mani 1 Packt 2018 be2a5c7bc9bd/Sanet.st
Process
Tripathi _Learning_Robotic_Proc.
Automation
pdf
MOOC Courses:
Sl. Course
Course name Year URL
No. offered by
https://www.uipath.com/developers/video-
1 RPA UiPath 2016
tutorials
UiPath
https://www.guru99.com/uipath-
2. Tutorials for Guru99 2024
tutorial.html
Beginners
CO1 Apply the concept of Robotic Process Automation to automate various applications.
Analyse the usage of appropriate Robotic Process Automation technique for a given
CO2
application.
CO3 Design and implement techniques of Robotic Process Automation.
126
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
CO-PO-PSO Mapping:
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12 PSO1 PSO2 PSO3
CO1 2
CO2 3
CO3 3 2 2 2 2
AAT Plan:
Under Alternate Assessment Tool component of Robotic Process Automation Design and
Development course, students should carry out an application development using UiPath tool
explore the practical applications of the concepts learned.
Plan of Activities:
Following are the activities to be carried out by students during project work:
rd
2 3 Project topic selection by each group
th
3 4 Presentation: Student and Project topic introduction by each group
th th
4 5 and 6 Design Layout of the Application
th
5 7 Presentation on Business process of the Application by each group
th th
8 , 9 and
6 th Design and Development of the activities.
10
th th
7 11 and 12 Complete project Presentation of the Application developed
th
8 13 Project Report Preparation
127
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Evaluation Rubrics:
Partially
Criteria Exemplary Proficient Points
Proficient
(2-1)
(4-3) The Application
(6-5)
The Application have a usable
The Application has
have an attractive design interface,
an exceptional
design and usable but may appear
User Interface design, attractive and __/6
interface. It is easy busy or boring. It
usable interface. It is
to locate all is easy to locate
easy to locate all
important most of the
important elements.
elements. important
elements.
(2-1)
(4-3)
(6-5) Design of an
Design of an
Design of an activity activity follows
Activity Design activity follows __/6
follows all the design very few of the
most of the design
best practices. design best
best practices.
practices.
(4-3) (2-1)
Most of the best Few of the best
(6-5)
practices of practices of
All of the best
workflow such as workflow such as
practices of workflow
(variable and (variable and
such as (variable and
argument naming, argument naming,
argument naming,
Workflow empty sequences empty sequences __/6
empty sequences or
or workflows, or workflows,
workflows, package
package package
restrictions,
restrictions, restrictions,
validation, managing
validation, validation,
error) followed.
managing error) managing error)
followed. followed.
(4-3)
(2-1)
(6-5) Most of the
Few of the activity
Performance and activity
Performance performance is
reusability is carried performance is __/6
and reusability better and
out for in all the better and
reusability is
Activity. reusability is
maintained.
maintained.
128
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
(4-3) (2-1)
(6-5) Writing that is Unclear and
Clear and Effective clear and effective ineffective writing
writing and for the most part and multiple
Report __/6
adherence to and minor errors errors in
appropriate style in adherence to adherence to
guidelines appropriate style appropriate style
guidelines guidelines
(5-4)
(3-2) (1-0)
Provided many good
Participated in Listened mainly;
Participation in ideas; inspired
discussions; on Rarely spoke up, __/5
Discussions others; clearly
some occasions, and ideas were off
communicated ideas,
made suggestions. the mark.
needs, and feelings.
Total __/40
129
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Semester: 5
Course Title: Compiler Design
Course Code: 23CS5PECPD Total Contact Hours: 40
L-T-P: 3-0-0 Total Credits: 3
Unit
Topics Hours
No.
Introduction, Lexical Analysis: Language processors, The Structure of
1 Compilers, Lexical analysis: The Role of Lexical Analyzer, Input Buffering, 8
Specifications of Tokens, recognition of Tokens.
Syntax Analysis: Introduction, Parsing: Top-down Parsing, Bottom-up
2 Parsing, Introduction to LR Parsing: Simple LR parser, More Powerful LR 8
Parsers
Syntax-Directed Definitions, Evaluation order for SDDs, Applications of
3 8
Syntax-directed translation, Syntax-directed translation schemes.
Intermediate Code Generation: Variants of syntax trees, Three-address
4 code, Types and declarations, Translation of expressions, Control flow, 8
Switch statements
Run-Time Environments: Storage Organization, Stack Allocation of Space.
Code Generation: Issues in the design of Code Generator, The Target
5 8
language, Addresses in the target code, Basic blocks and Flow graphs,
Optimization of basic blocks, A Simple Code Generator.
Sl.
Book Title Authors Edition Publisher Year
No.
Alfred V Aho,
Compilers Principles, Monica S. Lam, nd Pearson
1 2 2012
Techniques and Tools Ravi Sethi, Education
Jeffrey D Ullman
Sl.
Book Title Authors Edition Publisher Year
No.
st Oxford University
1 Compiler Design K Muneeshwaran 1 2012
Press
st
2 Compiler Construction K.V.N.Sunitha 1 Pearson 2013
Engineering a Keith Cooper, nd Morgan
3 2 2011
Compiler Linda Torczon Kaufmann
130
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
E-Book:
Sl.
Book Title Authors Edition Publisher Year URL
No.
https://www3.nd.e
Introduction to Prof.
nd Independently du/~dthain/compile
1 Compilers and Douglas 2 2023
published rbook/compilerboo
Language Design Thain
k.pdf
MOOC Course:
Sl. Course
Course name Year URL
No. Offered By
https://onlinecourses.nptel.ac.in/
1 Compiler Design NPTEL 2021
noc21_cs07/preview
Apply the concepts of Regular Expressions and grammar for tokenisation and rule
CO1
checking
CO2 Analyse the syntax and semantic concepts of a compiler.
CO-PO-PSO Mapping:
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12 PSO1 PSO2 PSO3
CO1 3
CO2 3
CO3 2 2 2
131
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
AAT Plan:
Students should implement a mini-project to demonstrate all the phases of the compiler learnt,
using Lex/Yacc programming Language.
132
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
(5-3) (2-0)
(8-6) Writing that is clear Unclear and
Clear and effective and effective for the ineffective writing
Report writing and adherence most part and minor and multiple errors in __/8
to appropriate style errors in adherence to adherence to
guidelines appropriate style appropriate style
guidelines guidelines
Oral
(4-3) (1-0)
communicati (2)
Clear and effective Unclear __/4
on Communication is clear
communication communication
(presentation)
(4-3) (2) (1-0)
Provided many good Participated in Listened mainly;
Participation
ideas; inspired others; discussions; on some Rarely spoke up, and __/4
in Discussions
clearly communicated occasions, made ideas were off the
Ideas. suggestions. mark.
Total __/40
133
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Semester: 5
Course Title: Computer Graphics
Course Code: 23CS5PECGH Total Contact Hours: 40
L-T-P: 3-0-0 Total Credits: 3
Unit
Topics Hours
No.
Computer Graphics Hardware: Video Display Devices, Raster-Scan
Systems, Graphics Networks, Graphics on the Internet.
Computer Graphics Software: Coordinate Representations, Graphics
Functions, Software Standards, Other Graphics Packages, Introduction to
1 8
OpenGL.
Graphics Output Primitives: Coordinate Reference Frames, Specifying a
Two-Dimensional World-Coordinate Reference Frame in OpenGL, OpenGL
Point Functions, OpenGL Line Functions, OpenGL Curve Functions.
Fill-Area Primitives, Polygon Fill Areas, OpenGL Polygon Fill-Area
Functions, OpenGL Vertex Arrays, Pixel-Array Primitives, OpenGL Pixel-
Array Functions, Character Primitives, OpenGL Character Functions,
Picture Partitioning, OpenGL Display Lists, OpenGL Display-Window
2 Reshape Function. 8
134
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Sl.
Book Title Authors Edition Publisher Year
No.
Reference book:
Sl.
Book Title Authors Edition Publisher Year
No
Computer Graphics FS Hill, rd Pearson Education
1 3 2007
using OpenGL Stephen M Kelley Limited
E book:
Sl.
Book Title Authors Edition Link Year
No
Computer Vision:
nd https://math.hws.edu
1 Algorithms and Richard Szeliski 2 2022
/graphicsbook/
Applications
MOOC Courses:
Sl.
Course name Course offered by Year URL
No.
Computer https://www.edx.org/course/c
1 Edx 2024
Graphics omputer-graphics-2
Computer https://onlinecourses.nptel.ac.
2 NPTEL 2024
Graphics in/ noc20_cs90
135
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Course Outcomes (COs):
CO1 Apply suitable software modules for developing graphics applications using OpenGL.
CO-PO-PSO Mapping:
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12 PSO1 PSO2 PSO3
CO1 3 2 3
CO2 3 2
CO3 3 2 2 2
AAT Plan:
Under AAT component, Students have to form teams of 3 or 4. Each team has to choose a theme
and think of an efficient technique to appropriately design it. They are required to present their
design and solution and also submit a concluding report.
AAT Week wise Plan:
136
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Rubrics used for evaluation:
137
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
SEE Exam Question paper format:
138
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Semester: 5
Course Title: Advanced Algorithms
Course Code: 23CS5PEAAM Total Contact Hours: 40
L-T-P: 3-0-0 Total Credits: 3
Unit
Topics Hours
No.
Sl.
Book Title Authors Edition Publisher Year
No.
Thomas H Cormen,
Introduction to Charles E Leiserson, rd The MIT
1 3 2009
Algorithms Ronald L Rivest, Press
Clifford Stein
Introduction to the
rd
2 Design and Analysis of Anany Levitin 3 Pearson 2011
Algorithm
139
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Reference Text Book:
Sl.
Book Title Authors Edition Publisher Year
No.
Ellis Horowitz,
Fundamentals of nd University
1 Satraj Sahni, 2 2009
Computer Algorithms Press Pvt. Ltd
Rajasekharam
E-Book:
Sl.
Book Title Authors Edition Publisher Year URL
No.
Data http://www.uoitc.edu.iq/i
Mark
structures and th Pearson mages/documents/inform
1 Allen 4 2014
Algorithm Education atics-institute/Competitive
Weiss
Analysis in C++ _exam/ DataStructures.pdf
MOOC Course:
Sl. Course
Course name Year URL
No. Offered By
CO-PO-PSO Mapping:
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12 PSO1 PSO2 PSO3
CO1 3 3
CO2 2 2
CO3 3 2 2 2 3
140
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Assessment Plan for CIE:
AAT Plan:
Students have to form teams of 3 to 4. Each team will select a problem. Student will have to
think of an efficient design paradigm, appropriate data structure and solve the problem. They are
required to present their solution and justify the technique used based on its efficiency. To
conclude they will have to submit a report.
Plan of Activities:
Following are the activities to be carried out by students during project work:
Sl.
Week Activity
No
st
1 1 Formation of groups. Note: Student groups of size 3 to 4
nd rd
2 2 and 3 Selection of project topic.
th Time to analyse the problem and come up with appropriate design
3 4
technique.
th Time to analyse the problem and come up with appropriate design
4 5
technique.
th th
5 6 and 7 Implementation
th th
6 8 and 9 Implementation
th
7 10 Implementation
th
8 11 Complete Project Work Demonstration by each group
th
9 12 Project Report Submission
(10-7)
(6-4) (3-0)
An efficient
An algorithm is An algorithm is
algorithm is
Algorithm Design designed with designed without
designed with __/10
appropriate design concern to
appropriate
technique. complexity
design technique.
141
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
(10-7)
(3-0)
Correct (6-4)
Algorithm is not
implementation Correct
Implementation implemented in __/10
of the algorithm implementation of
accordance with the
with appropriate algorithm.
design.
data structures.
(10-7)
(6-4) (3-0)
Clear and
Oral Communication is Unclear
effective
communication clear communication __/10
communication
(presentation) Answered most of Answered only few
Answers all the
the questions of the questions
questions
(6-4)
(3-0)
(10-7) Writing that is
Unclear and
Clear and clear and effective
ineffective writing
Effective writing for the most part
Report and multiple errors __/10
and adherence to and minor errors in
in adherence to
appropriate style adherence to
appropriate style
guidelines appropriate style
guidelines
guidelines
Total __/40
142
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Semester: 5
Course Title: Automated Software Testing
Course Code: 23CS5AEAST Total Contact Hours: 30
L-T-P: 0-0-1 Total Credits: 1
Guidelines:
This course enables students to identify the requirements and develop the appropriate
functional testing strategies for a given problem.
The Student will be able to select appropriate tools that could be used to generate test cases.
Students will also gain hands-on experience in generating test-cases, and verify the test cases
as per the specification.
Sl.
Book Title Authors Edition Publisher Year
No
Software Testing: A Paul C. Jorgensen, th
1 5 Auerbach 2022
Craftsman’s Approach Byron De Vries
Foundations of Software nd Pearson
2 Aditya P Mathur 2 2013
Testing Education
The Craft of Software
Testing: Subsystems Testing nd Pearson
3 Brian Marrick 2 2007
Including Object-Based and Education
Object-Oriented Testing
Tutorial Links:
1. https://nptel.ac.in/courses/106/105/106105150
2. https://onlinecourses.nptel.ac.in/noc19_cs71/preview
3. https://www.javatpoint.com/selenium-tutorial
4. Introduction to Selenium - https://www.youtube.com/watch?v=FRn5J31eAMw
Course Outcomes (COs):
CO1 Apply the concepts of software testing to assess the most appropriate testing method.
CO3 Design test-cases and automate testing using testing tool for a real-time application.
143
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
CO-PO-PSO mapping:
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12 PSO1 PSO2 PSO3
CO1 3 3
CO2 3 3 3
CO3 3 3 3 3
CO4 3 2 3
144
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
145
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Rubrics for Mini-Project Evaluation:
Needs
Criteria Excellent Good Satisfactory Points
Improvement
(12-9)
(15-13) (8-5) (4-0)
Partially
Effectively Attempted to No
Requirement Contributed
contributed in contribute in contribution in
Analysis & in
requirement requirement requirement __/15
Designing requirement
analysis and analysis and analysis and
analysis and
designing. designing designing
designing.
(14-10)
(20-15) Developed
(9-5) (4-0)
Developed the some
Developing a Attempted to No
critical modules modules with
Solution with develop few contribution in
with optimized higher __/20
proper test modules (case developing a
coding and complexity in
cases specific) and solution as
designed most coding and
test cases. well as testing.
test cases. designed few
test cases.
(15-13)
Professional,
(12-9)
engaging (8-5) (4-0)
Well-
presentation Basic Disorganized
structured
with outstanding presentation presentation
presentation
Presentation visuals and with some lacking in __/15
with clear
comprehensive structure and coherence and
content and
content, varying delivery adequate
effective
demonstrating quality. content.
delivery.
exceptional
delivery skills.
(10-8)
Comprehensive (7-5)
report covering Well- (4-2) (1-0)
all project structured Basic report Poorly
aspects with report with with limited structured and
Report &
meticulous detailed content, incomplete __/10
Documentation
documentation, coverage of covering report, lacking
including project essential essential
methodology, implementati project details. details.
design, and on.
future scope.
Total __/60
Note: The project will be evaluated for 60 marks and reduced to 30 marks.
SEE Exam (50 Marks):
Projects carried out by students will be evaluated by External examiner along with internal faculty.
146
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Semester: 5
Course Title: Competitive Coding
Course Code: 23CS5AECCO Total Contact Hours: 30
L-T-P: 0-0-1 Total Credits: 1
Introduction:
This course focuses on Competitive Coding with the focus on modelling and implementing for
real world problems.
i. This course will deepen the understanding of problem solving skills that students have
learnt in the previous courses such as Data Structures and Algorithms.
ii. Students will get confidence in hands-on problem-solving skill and will help in preparing
for interviews, Hackathons, Google Talent Search, ACM ICPC.
iii. Competitive Programming Strategies such as Problem formulation, Time Complexity and
Space Complexity analysis, Handling input/output efficiently especially for large datasets.
iv. The main objective of this course is to build a strong foundation in these areas through
consistent practice and exploration of problem-solving techniques.
Reference Text Books:
Sl.
Book Title Authors Edition Publisher Year
No.
Thomas H. Cormen,
Charles E. Leiserson, rd
1. Introduction to Algorithms 3 MIT Press 2009
Ronald L. Rivest,
Clifford Stein
Competitive Programming 4 -
Steven Halim,
Book 1: The Lower Bound of st
2. Felix Halim, 1 Lulu.com 2020
Programming Contests in the
Suhendry Effendy
2020
Competitive Programming 4 -
Steven Halim,
Book 2: The Lower Bound of st
3. Felix Halim, 1 Lulu.com 2020
Programming Contests in the
Suhendry Effendy
2020
Adnan Aziz,
Amazon
Elements of Programming Tsung-Hsien Lee, nd
4. 2 Digital 2016
Interviews: The Insiders' Guide Amit Prakash
Services
147
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
MOOC Courses:
Sl. Course
Course name Year URL
No. Offered By
Getting Started
https://onlinecourses.nptel.ac.in/noc22_cs5
1 with Competitive NPTEL 2022
9/preview
Programming
Competitive https://www.udemy.com/course/competitiv
2 Udemy 2022
Programming e-programming/?couponCode=ACCAGE0923
CO1 Analyse complex problems using efficient algorithms and data structures
Design and implement various problems of different levels of complexity using
CO2
algorithmic techniques
Perform effectively in teams, give clear presentations, and create well-organized
CO3
documents
CO-PO-PSO mapping:
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12 PSO1 PSO2
CO1 3 3
CO2 3 3
CO3 1 1 1
Guidelines:
1. DevOps Implementation on Previous Projects: Under this project work, students should
apply DevOps principles and tools to previously developed full stack applications, data
science applications, or machine learning applications. This includes setting up version
control, continuous integration, continuous deployment, and containerization.
2. Advanced Application Development: Under this project work, students should extend their
existing applications using technologies such as PHP, Python, Node.js, React, Angular, or any
suitable front-end and back-end technologies, and integrate DevOps practices.
3. Group Formation: Students can form a group with a minimum of two and a maximum of
four members to collaborate on the DevOps implementation project.
4. Teacher Guidance: The teacher allotted for project work should teach students various
DevOps tools such as Git, GitHub, Docker, Jenkins, GitHub Actions, etc., during class/lab
hours as per the allotment. The teacher should guide the students in choosing the
appropriate DevOps strategies and tools, assist them in applying these tools to their
projects, and evaluate the progress and final outcomes of the assigned students.
Reference Text Books:
Sl.
Book Title Authors Edition Publisher Year
No
A Beginners guide to st
1 Swatee Chand 1 Edureka 2022
DevOps Basics
Gene Kim,
Jez Humble,
The DevOPS Handbook: nd It Revolution
2 Patrick Debois, 2 2021
How to Create World Press
John Allspaw,
John Willis
Tutorial Links:
1. https://www.coursera.org/learn/intro-to-devops
2. https://www.udacity.com/course/intro-to-devops--ud611
3. https://www.classcentral.com/subject/devops
149
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Course Outcomes (COs):
Implement version control systems and manage code repositories effectively, along
CO1
with containerization using Docker.
Design and implement CI/CD pipelines for automated testing, integration, and
CO2
deployment.
Participate effectively in team projects, deliver clear presentations, and create well-
CO3
structured reports.
CO-PO-PSO mapping:
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12 PSO1 PSO2 PSO3
CO1 3 3 3 3
CO2 3 3 3 3
CO3 3 3 3
Laboratory Plan:
Content
Sl. Technologies/Skills to be
Week Activity Deliverables by the
No. Covered
Assigned Teacher
Project topic
selection by each Creating and managing
Group. repositories on GitHub,
nd Version Control and
2 2 Presentation: Branching and merging
Repository Setup
Student and Project strategies, Basic Git
topic introduction commands
by each group
150
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Introduction to Docker,
rd Containerization Writing Dockerfiles, Building
3 3 Initial project setup
Basics and running Docker
containers
Deploying applications to
Complete project Continuous free cloud hosting providers
th
7 11 work Deployment (Heroku, Netlify, etc.),
demonstration Strategies Rollback strategies,
Monitoring deployments
Comprehensive report on
DevOps implementation,
Final Project
th Project report Demonstrating CI/CD
8 12 Presentations and
preparation pipelines, Containerization
Submissions
and deployment strategies,
Best practices for DevOps
151
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Rubrics for Project Evaluation:
Needs
Criteria Excellent Good Satisfactory Points
Improvement
(14-12) (11-10)
Advanced use of Effective use of (9-5)
version control version control Basic version
(8-0)
Version with clear with regular control
Little or no
Control commit commits, implemented __/14
use of version
messages, proper proper with some
control.
code review, and branching, and commits and
effective merging branches.
collaboration. strategies.
(11-10)
(14-12)
Effective use of (9-5)
Advanced use of
Docker with Basic use of
Docker with
well-structured Docker with
multi-stage (8-0)
Dockerfiles, functional
builds, efficient Little or no
Containeriz proper use of Dockerfiles,
use of Dockerfile use of Docker
ation using volumes and containerized __/14
instructions, for
Docker networks, and application
optimized image containerizati
container components,
sizes, and on.
orchestration and use of
automated
using Docker Docker Hub for
container
Compose or image storage.
management.
similar tools.
(24-20)
(19-15)
Advanced
Consistent
continuous (14-7) (6-0)
implementatio
integration setup Basic setup for No
Continuous n of continuous
with automated continuous implementati
Integration integration __/24
testing, code integration, but on of
with
quality checks, builds may fail continuous
automated
and immediate occasionally. integration.
builds and test
feedback on
execution.
failures.
(20)
Advanced (19-15)
automated Automated (14-9)
(8-0)
deployment with deployment for Basic automated
Deployment Manual
zero-downtime multiple deployment for __/20
Automation deployment
deployment, environments specific
process.
canary releases, with rollback environments.
and blue/green capability.
deployment.
152
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
(10)
(9-7)
Active
Regular (3-0)
engagement, (6-4)
participation, Lack of active
strong Minimal
constructive participation
Group collaboration, participation
contributions, and __/10
Participation and effective with occasional
and collaboration
teamwork contribution to
collaboration within the
demonstrated group activities.
within the group.
throughout the
group.
project.
(10)
Comprehensive
and well- (9-6) (5-3) (2-0)
documented Well-structured Basic Poorly
Report &
report covering report/documen report/documen structured
Documentat
all aspects of the tation covering tation with and __/10
ion (10
project, including project details limited content incomplete
marks)
methodology, and and report/docum
design, implementation. organization. entation.
implementation,
and future scope.
Total _/100
Note: CIE will be conducted for 100 marks and reduced to 50 marks
153
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
Semester: 5
Course Title: Mini Project
Course Code: 23CS5PWMIP Total Contact Hours: 30
L-T-P: 0-0-2 Total Credits: 2
Guidelines:
Implementation of Research Papers: Under this mini project work student should refer
recent Journal papers, transaction papers [IEEE, Springer, Elsevier, etc.] of interested
domain, implement the algorithms and technologies mentioned in the paper.
Teacher allotted for mini project work should guide the students on the topic selected and
towards carrying out mini project work and complete the evaluation of assigned students.
Continuous evaluation of the project is carried out by the faculty and the final CIE is
calculated as the sum of the 3 reviews conducted.
Course Outcomes (COs):
CO1 Analyze the research techniques and algorithms mentioned in the technical paper.
Design and develop a mini project using their domain knowledge and technologies to
CO2
solve societal and engineering problems.
CO3 Document and present the implemented solutions in a team.
CO-PO-PSO mapping:
PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10 PO11 PO12 PSO1 PSO2 PSO3
CO1 2 2
CO2 3 3 1 2 1
CO3 1 2 1
(10-8)
Problem
formulation and
(7-4) (3-1)
all objectives of
Incomplete Problem formulation
the proposed
Problem and objectives of the
Problem work are well
formulation and proposed work are
Formulation defined. Steps to
justification to the either not identified __/10
and be followed to
objectives or not well defined
Objectives solve the defined
proposed. Steps are Incomplete and
problem are
mentioned, but improper
clearly specified.
unclear. specification
The proposed
solution is
sustainable.
155
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
(20-16) (15-8)
(7-1)
All modules are All modules are
Design of the Some of the modules
designed designed
modules for the are not designed in
appropriately in moderately in __/20
application accordance to the
accordance to the accordance to the
requirements.
requirements. requirements.
(15-10)
Implementation (9-6)
of modules using Implementation of
appropriate modules using
features for all appropriate (5-1)
set objectives features for most of Some of the modules
Technical
showcasing the set objectives are implemented in __/15
Implementation
efficiency, showcasing accordance with the
integrity, integrity, scalability, design.
scalability, sustainability and
sustainability and technical
technical excellence.
excellence.
(10-8) (7-4)
(3-1)
Demonstrates the Demonstrates the
Demonstrates the
functionality of functionality of the
Demonstration functionality of the
the application application using __/10
of the project application without
using appropriate appropriate reports
much reporting or
reports or results or results for few
results.
for various cases. cases.
(10-8)
Exhibits active
(7-4) (3-1)
engagement,
Consistent Minimal but
Group exceptional
participation and noticeable __/10
Participation collaboration, and
constructive participation and
(10) effective
collaboration within occasional
teamwork
the group. contributions.
throughout the
project lifecycle.
156
BMS COLLEGE OF ENGINEERING, BANGALORE-19
(Autonomous College under VTU Belagavi)
DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING
(10-8)
Professional,
engaging
presentation with (7-4) (3-1)
outstanding Well-structured Basic presentation
Presentation visuals and presentation with with some structure __/10
comprehensive clear content and and varying delivery
content, effective delivery. quality.
demonstrating
exceptional
delivery skills.
(11-6)
(15-12) Writing that is clear (5-1)
Clear and and effective for Unclear and
Effective writing the most part and ineffective writing
Project and and adherence to minor errors in and multiple errors
plagiarism appropriate style adherence to in adherence to __/15
report guidelines and appropriate style appropriate style
percentage of guidelines and guidelines and
plagiarism <=20. percentage of percentage of
plagiarism between plagiarism >40.
20 to 40.
Total __/100
Note: CIE will be conducted for 100 marks and reduced to 50 marks.
SEE Exam (50 Marks):
Evaluation of Projects will be carried out by External examiner along with internal faculty.
157