0% found this document useful (0 votes)
11 views

Full Stack Development

The document outlines the curriculum for a Full Stack Development specialization course as part of the Diploma in Computer Science & Engineering program offered by the Government of Karnataka. It includes a detailed course structure, prerequisites, course outcomes, and guidelines for faculty and students, emphasizing practical learning through bootcamp sessions and collaborative projects. Key topics covered include business process automation, web development technologies, REST APIs, and cloud deployment, preparing students for industry or entrepreneurship.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views

Full Stack Development

The document outlines the curriculum for a Full Stack Development specialization course as part of the Diploma in Computer Science & Engineering program offered by the Government of Karnataka. It includes a detailed course structure, prerequisites, course outcomes, and guidelines for faculty and students, emphasizing practical learning through bootcamp sessions and collaborative projects. Key topics covered include business process automation, web development technologies, REST APIs, and cloud deployment, preparing students for industry or entrepreneurship.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 33

Diploma in Computer Science & Engineering C 20 : 2020 - 21

Government of Karnataka
DEPARTMENT OF COLLEGIATE and TECHNICAL EDUCATION
Computer Science &
Program Semester 5
Engineering

Course Code 20CS52I Type of Course L:T:P (104:52:312)

Course Name Full Stack Development Credits 24

CIE Marks 240 SEE Marks 160

Introduction:
Welcome to the curriculum for the Full Stack Development Specialisation. This specialisation
course is taught in Bootcamp mode. Bootcamps are 12 weeks, intense learning sessions designed
to prepare you for the practical world – ready for either industry or becoming an entrepreneur.
You will be assisted through the course, with development-based assessments to enable
progressive learning. In this course, you’ll learn a complete suite of software development skills to
build application like front-end, middleware, and back-end Java web developer technologies, test
and deploy code, store data using MongoDB, and much more.
This course will teach you Fundamentals of business process automation, React, Spring, MongoDB,
REST API, DevOps practices, cloud deployment and more. Details of the curriculum is presented in
the sections below.

Pre-requisite

Before the start of this specialisation course, you would have completed the following courses;

In the 1st year of study, you would have studied Engineering Mathematics, Communication Skills,
Computer Aided Engineering Graphics, Statistics & Analysis, Basic IT Skills, Fundamentals of
Computer, Fundamentals of Electrical and Electronics Engineering, Project Management skills and
Multimedia & Animation.

In the 2nd year of study, you would have studied Python Programming, Computer Hardware,
Maintenance and Administration, Computer Networks, Database System Concepts and PL/SQL,

Department of Collegiate & Technical Education Bengaluru-560001 Page 46


Diploma in Computer Science & Engineering C 20 : 2020 - 21

Data Structures with Python, Operating System and Administration, Object oriented programming
and Design with Java, Software Engineering principles and practices.

In this year of study, you shall be applying your previous years learning along with specialised field
of study into projects and real-world applications.

Course Cohort Owner

A Course Cohort Owner is a faculty from the core discipline, who is fully responsible for one
specialised field of study and the cohort of students who have chosen to study that specialised field
of study.

Guidelines for Cohort Owner


1. Each Specialized field of study is restricted to a Cohort of 20 students which could include
students from other relevant programs.
2. One faculty from the Core Discipline shall be the Cohort Owner, who for teaching and
learning in allied disciplines can work with faculty from other disciplines or industry experts.
3. The course shall be delivered in boot camp mode spanning over 12 weeks of study, weekly
developmental assessments and culminating in a mini capstone.
4. The industry session shall be addressed by industry subject experts (in contact
mode/online / recorded video mode) in the discipline only.
5. The cohort owner shall be responsible to identify experts from the relevant field and
organize industry session as per schedule.
6. Cohort owner shall plan and accompany the cohort for any industrial visits.
7. Cohort owner shall maintain and document industrial assignments, weekly assessments,
practices and mini project.
8. The cohort owner shall coordinate with faculties across programs needed for their course to
ensure seamless delivery as per time table
9. The cohort owner along with classroom sessions can augment or use supplementally
teaching and learning opportunities including good quality online courses available on
platforms like Karnataka LMS, Infosys Springboard, NPTEL, Unacademy, SWAYAM , etc.

Department of Collegiate & Technical Education Bengaluru-560001 Page 47


Diploma in Computer Science & Engineering C 20 : 2020 - 21

Course outcome: A student should be able to


Explain typical business process in an organization and identify opportunities for digital
CO1
transformation.
CO2 Document system requirements and write an appropriate development plan.

CO3 Design, develop and test an automated business process.

CO4 Develop RESTful API’s and test functions as per the defined requirements.

CO5 Select an appropriate production environment, UI and deploy the application.

Department of Collegiate & Technical Education Bengaluru-560001 Page 48


Diploma in Computer Science & Engineering C 20 : 2020 - 21

Detailed course plan


We Da
CO PO 1st session (9am to 1 pm) L T P 2ND session (1.30pm to 4.30pm) L T P
ek ys
- Digital transformation through
- What is an Enterprise?
Convergence of IT & OT
- Organizing the Enterprise - process
- Digital Transformation Success Stories
- Understanding /Types of business
- How technology has impacted digital
1 1 1 activities 3 1 1 2
transformation
- What is business process?
- Case study: Digital transformation through
- Why to automate business process?
IT/OT convergence
Ref. No 1
Ref. No 2
Industrial visit: Map the relationship between various
Visit small or medium scale nearby industry divisions of business entity both vertical and
1
and know the business entity and activities. horizontal relationships
1 1,5 2 4 3
Understand the different work divisions with Understanding the business process and
a business entity. workflow within a business entity

- Identify the typical processes and


Report of industrial visit.
workflows that can be automated.
- Document the major business divisions
- Introduction to Full stack development, its
1 2,3 3 and their activities. 4 3
components, tools used, etc.
- Draw the workflow for each identified
- Understanding Full stack framework both
division.
within firewall and on the cloud

Department of Collegiate & Technical Education Bengaluru-560001 Page 49


Diploma in Computer Science & Engineering C 20 : 2020 - 21

- Create a map of workflows to represent


interaction among divisions and the entire
business process as well.

Recap
- Design Thinking
- Design thinking for software development
1,2 2,3 4 1 3 Contd. 3
- Apply design thinking to automate the
observed activities in the industrial visit
Ref. No 3

5 Developmental Assessment Assessment Review and corrective action 3


Full stack development – industrial
perspective
2,3,
1,2 6 2 3 Weekly Assignment(1PM-2PM)
4 How to create project plan and product
backlog for project and User story creation
peer review
Recap – software development (Agile
project activity:
methodology)
Make student teams (2 -3 students per team),
- Define goal of product
each team is responsible for automating
2 2,3 2,3 1 4 - Define epics 2 1
activities of an identified business entity.
- Create roadmap for epics
Integration of each team’s work must lead to
- Cost estimation
an enterprise application.
- Risk management

Department of Collegiate & Technical Education Bengaluru-560001 Page 50


Diploma in Computer Science & Engineering C 20 : 2020 - 21

Note: Consider any web application in any sector


(Retail, Health, Logistics,Finance, etc)
Design principles
- Availability
- Creating user stories for the epic - Performance
- Creating Acceptance criteria - Consistency
- sprint planning - Scalability
- Backlog Refinement - Manageability
- Sprint Demo - cost

2,3 2,3 2 - Burn down charts 2 2 Architectural patterns 2 1


- Sprint retrospective - Monolithic
Create and manage product backlog using - Layered
appropriate tool like Jira - Service oriented architecture
Create Sprint 1 with required user stories - Microservice architecture
Ref. No 4
Step 01 - Need for Architecture - Viewer Page |
Infosys Springboard (onwingspan.com)
Design methods for security
- Application security Design methods for Datastores
- Authentication and authorization - Structured
2,3 2,3 3 2 2 1 2
methods and their usage and - Semi structured
considerations - Unstructured
o Token based Recap of

Department of Collegiate & Technical Education Bengaluru-560001 Page 51


Diploma in Computer Science & Engineering C 20 : 2020 - 21

o Cookie based Data base design


o OpenID
o Third party access
o SAML
o Multi factor authentication
- Encryption
Design and implement authentication flow
using anyone of the above listed.
Design principles for – UI / UX
Create UI/UX design - for created user stories
2,3, (wireframing) Contd.
2,3 4 1 3 3
4
Technology, tools and frameworks for
application development

5 Developmental Assessment Assessment Review and corrective action 3


Comparison of various enterprise application
development technology stacks (development,

6 engineering, deployment, Monitoring) 2 3 Weekly Assignment(1PM-2PM)


Security architecture and best practices in
enterprise application programming.
DevOps engineering practices
Peer review
- Configuration management
3 2,3 4 1 Project status review 4 1 2
- Continuous integration
Demonstration of artifacts of the project
- Automated testing

Department of Collegiate & Technical Education Bengaluru-560001 Page 52


Diploma in Computer Science & Engineering C 20 : 2020 - 21

- Infrastructure as code
- Continuous delivery
- Continuous deployment
- Continuous monitoring
Explore the various tools used - T
Git Branching and merging
Basic
▪ Creating and switching to new branches
Configuration management
▪ Switching between branches
Why Do We Need a Version Control System?
▪ Merging local branches together
Fundamentals of Git
GitHub
Git Client installation and setup
- Basics of distributed git
basic local Git operations
Account creation and configuration
2,3 4 2 ▪ creating a repository, 1 3 1 2
- Create and push to repositories
▪ cloning a repository,
- versioning
▪ making and recording changes
- Collaboration
▪ staging and committing changes,
- Migration
▪ viewing the history of all the changes
Create repository – named mini project-1
undoing changes
Push the same to GitHub
TOC - Git Essentials: Become a Git and GitHub
Ninja | Infosys Springboard (onwingspan.com)

Department of Collegiate & Technical Education Bengaluru-560001 Page 53


Diploma in Computer Science & Engineering C 20 : 2020 - 21

- Create cloud account (AWS, GCB or any


Cloud basics
other service provider) and explore the
- Cloud Infrastructure Overview
features
- Cloud computing architecture and its
- Create and setup a virtual machine.
components
- Create a simple webapp using cloud
- Service models
services
- Deployment models
5 1,4 3 3 1 - How to use cloud service for user 3
- Virtualization
authentication flow, allowing users to
- Cloud Native Application Development
sign up, sign in, and reset their
o Essentials of Cloud - Viewer Page |
password
Infosys Springboard
- Build a Basic Web Application on AWS
(onwingspan.com)
(amazon.com)

Continuous integration
- Use any suitable build CI/CD tool (such as
Jenkins, bitbucket, GitHub Actions etc.) or
cloud-based services to create build
pipeline having steps code build, test, code
2,3 4 1 3 - Contd.. 3
quality check.
- Working of the tool / cloud service used.
Note: Create build pipeline for simple web
applications such as To-do app, BMI calculator,
Number converter, WordCount etc.

5 CIE 1 – Written and Practice Test Assessment Review and corrective action 3

Department of Collegiate & Technical Education Bengaluru-560001 Page 54


Diploma in Computer Science & Engineering C 20 : 2020 - 21

Comparison of cloud services

2,3 4 6 How to make full stack development efficient 2 3 Weekly Assignment(1PM-2PM)


by using DevOps
Recap
HTML, CSS and JavaScript Fundamentals
(Code structure – statements, comments,
variables, Constants, Data types, Interaction,
Operators, Comparisons, Control flow,
Peer review Functions)
2,3, 1 Project status review Setting Up the Environment and Tools for
3,4 4 1 2
5
Demonstration of artifacts of the project front end development
- Installing VS Code
- VS Code extensions
4 JSON- Tutorial
Note: suitable cases to be used to learn and
implement program constructs.
JS objects
Methods, Constructors,
Object properties

2,3, - Data properties


3,4 2 1 3 - Contd. 3
5 - Accessor properties
- Prototype
Practice: use suitable cases to implement above
concepts

Department of Collegiate & Technical Education Bengaluru-560001 Page 55


Diploma in Computer Science & Engineering C 20 : 2020 - 21

ES6
- Arrow functions
- Template strings
- Prototype methods
- Spread operator
2,3, 2,3, Contd.
3 2 2 3
5 4 - Map
- Set
Create a form like registration form, feedback
form, after submit hide create form and enable
the display section
Introduction to TypeScript
Why TypeScript?
Setting up development environment for
TypeScript
- Install TypeScript compiler

2,3, 2,3, - Install Live server


4 2 2 - Contd.. 3
5 4 Create and run first program in TypeScript
- Basic Types
- Control flow statement
- Functions
TypeScript "Hello, World!"
(typescripttutorial.net)

5 Development Assessment Assessment Review and corrective action 3

Department of Collegiate & Technical Education Bengaluru-560001 Page 56


Diploma in Computer Science & Engineering C 20 : 2020 - 21

2,3, 2,3, Modern UI technologies


6 2 3 Weekly Assignment(1PM-2PM)
5 4
Introduction to React
- What is React?
- Setting up React development
Peer review environment - Installing Node.js
2,3, 2,3, Project status review - Anatomy of React app (folder structure)
1 4 1 2
5 4
Demonstration of artifacts of the project - Creating and running a React.js app
Ref. No 7
Build a Full-Stack React Application on AWS
(amazon.com)
Introduction to JSX
5 - What is JSX?
- Components
- Expressions in JSX
- What is a component?
- Specifying Attributes with JSX
- Function and Class Components
2,3, 2,3, - Specifying Children with JSX
2 2 2 1 2
5 4 - Rendering a Component
- Rendering Elements
- Composing Components
o DOM
- Create your first React Component.
o React DOM
o React Virtual DOM
Props & State - JSX for React components
2,3, 2,3, 3 - State - How to crate JSX elements?
2 2 1 2
5 4
- Props - How to test components

Department of Collegiate & Technical Education Bengaluru-560001 Page 57


Diploma in Computer Science & Engineering C 20 : 2020 - 21

- Communication between components


using Props
- Understanding Component life cycle
Component life cycle methods
- Mounting phase
- Updating phase
- Unmounting phase
- Error Handling

Forms
- Use of HTML tags in forms like select,
Handling Events
input, file, textarea, etc.
2,3, 2,3, Conditional Rendering
4 2 2 3
5 4 - controlled components
Lists & Keys
- uncontrolled components
Lifting State Up

5 CIE 2 – Written and Practice Test Assessment Review and corrective action 3
2,3, 2,3, Testing single page application
6 2 3 Weekly Assignment
5 4
Context
Peer review
Fragments
2,3, 2,3, Project status review
1 4 2 1
5 4 Higher-Order Components
6 Demonstration of artifacts of the project

React Router
2,3, 2,3, Contd..
2 1 3 3
5 4 - React router – parameters

Department of Collegiate & Technical Education Bengaluru-560001 Page 58


Diploma in Computer Science & Engineering C 20 : 2020 - 21

- React router key components


Implement navigation using react router
React Hooks
- Introduction
2,3, 2,3, - React Hooks – useState, useEffect, Build single page application – like shopping Cart
3 1 3 3
5 4
useContext and useReducer
Custom Hooks
Recap
- Object oriented concepts and design
principles
- Data Structures
- Database Concepts
- Java and servlet basics
- Java Collections (List, Set, Map) ,Threads
Setting up the environment and tools
2,3, 2,3, Build single page application
4 4 Install java (latest stable version) and add 1 2
5 4
environment variable
Install java editor (such as IntelliJ, Eclipse or
any other)
Install DBMS (MySQL, PostgreSQL or
any other)
XML – T

Department of Collegiate & Technical Education Bengaluru-560001 Page 59


Diploma in Computer Science & Engineering C 20 : 2020 - 21

5 Development assessment Assessment Review and corrective action 3


2,3, 2,3, State Management with Redux
6 Weekly Assignment(1PM-2PM)
5 4
Basics of Apache Maven or Gradle – project
Peer review management tool
2,3, Project status review Understanding pom.xml
3,4 1 4 2 1
4
Demonstration of artifacts of the project TOC - Maven Basics | Infosys Springboard
(onwingspan.com)
Introduction to Spring Framework
What is Spring?
- Why Spring Framework?
- Spring Framework Architecture - Spring Annotations
- Key components of Spring Framework Create Spring application with Spring
- SpringBoot Initializer using dependencies like Spring
7
2,3, Why SpringBoot? Web, Spring Data JPI
3,4 2 2 2 1 2
4
Compare Spring and SpringBoot How to run the project
Getting Started | Building an Application with
understanding the spring initializer interface Spring Boot
TOC - Introducing Spring 5.0 | Infosys
Springboard (onwingspan.com)
TOC - Spring Essentials | Infosys Springboard
(onwingspan.com)
Inversion of Control and Dependency
2,3, Injection Contd.
3,4 3 2 2 3
4
What is inversion of control?

Department of Collegiate & Technical Education Bengaluru-560001 Page 60


Diploma in Computer Science & Engineering C 20 : 2020 - 21

What is dependency injection?


Types of DI
- Constructor
- Property
- Method
Practice :
constructor injection
Property injection
Method injection
TOC - DI in Spring Framework | Infosys
Springboard (onwingspan.com)
TOC - Introduction to the Spring Framework |
Infosys Springboard (onwingspan.com)
Spring IoC container – ApplicationContext

ComponentScanning
DI in spring Boot
- Constructor injection
2,3, - Setter injection Contd..
3,4 4 1 3 3
4
- Field injection

Autowiring
- Qualifier
- Bean Scope (Object scope)

Department of Collegiate & Technical Education Bengaluru-560001 Page 61


Diploma in Computer Science & Engineering C 20 : 2020 - 21

Autowiring dependencies

5 CIE 3 – Written and Practice Test Assessment Review and corrective action 3
Converting monolithic application to
2,3,
3,4 6 2 3 Weekly Assignment
4 microservices architecture
Application Programming Interface (API)
- What is an API?
- How API works?
Peer review
- Why we need APIs?
2,3, Project status review
3,4 1 4 2 1
4 - API types (Open APIs, Partner APIs, Internal
Demonstration of artifacts of the project
APIs, Composite APIs)
- Types of API Protocols (SOAP, REST)
Common API examples

API endpoints
Basics of REST
8 What is API endpoint?
- Evolution of API
Why are API endpoints important?
- Overview of REST
API endpoint examples
- REST architectural style, components,
How to Test API Endpoints
2,3, views,
3,4 2 HTTP Concepts 2 2 2 1
4
- REST constraints
- HTTP working
- Properties of REST API
- HTTP Method (GET, POST, PUT, DELETE) - REST API Design Principles
Understanding of JSON structure for API
How to create RESTful service
request and response data
Install Postman

Department of Collegiate & Technical Education Bengaluru-560001 Page 62


Diploma in Computer Science & Engineering C 20 : 2020 - 21

Test created APIs with the help of Postman

Limitations of JDBC API


Object relational Mapping – features and
benefits
Spring REST – creating Spring REST controller
JPA – Java Persistent API
- Controller Layer (handling request
Spring Data JPA configuration
and responses)
Create ORM entity class
2,3, - Service Layer (Application business 3
3,4 3 1 1 2
4 Create database and configure using SpringBoot
logic)
application property file
- Repository layer ( Communicate with
**Note – Hibernate or any other ORM
DB)
framework can be used
About Hibernate Framework - Viewer Page |
Infosys Springboard (onwingspan.com)

Create REST controller for CRUD operations


Versioning Spring REST APIs
2,3, Practice:
3,4 4 1 3 Contd.. 3
4
Create user registration form.
Build models for considered use case.

5 Development Assessment Assessment Review and corrective action 3

2,3, Spring Transactions


3,4 6 Weekly Assignment
4

Department of Collegiate & Technical Education Bengaluru-560001 Page 63


Diploma in Computer Science & Engineering C 20 : 2020 - 21

Peer review
Transaction management and compliance to
2,3, Project status review
3,4 1 4 1 2
4 ACID principles
Demonstration of artifacts of the project
Securing REST APIs with Spring Security Build user authentication flow and authorization
2,3,
3,4 2 1 3 3
4 API security configuration using SpringSecurity
Junit – Tutorial Contd..
2,3, Writing Junit test cases for CRUD operations 4
3,4 3 3
4 Test controller endpoints

Getting started with MongoDB


- MongoDB overview
- features
- key components of Architecture
9 Introduction NoSQL - 1 - data modelling
- Brief history Working with MongoDB
- Features & Benefits - MongoDB Shell – mongosh
- Types Mongo Compass GUI
2,3,
3,4 4 1 3 Setup 1 2
4 - Cap theorem
- BASE - Download and Install MongoDB Community
Explore and compare the features of Server
various NoSQL databases - T Or
- MongoDB Atlas Setup
- Create an Atlas account and get ready to use
MongoDB Atlas
- Configure MongoDB Atlas

Department of Collegiate & Technical Education Bengaluru-560001 Page 64


Diploma in Computer Science & Engineering C 20 : 2020 - 21

- Explore Compass (MongoDB’s GUI tool)


- Create and Manage MongoDB
Data types and operators – T

5 CIE 4 – Written and Practice Test Assessment Review and corrective action 3
2,3, API Gateway
3,4 6 Weekly Assignment
4
Peer review - Create and Drop database
2,3, Project status review - Create and Drop Collections
3,4 1 4 1 2
4
Demonstration of artifacts of the project - CRUD Operations on document
Limit and Sort Records
2,3, - CRUD Operations on document
3,4 2 4 1 2
4 Cursor
Indexing
Aggregation
2,3, Contd.
3,4 3 1 3 3
4 Create and manage users and roles
Migration to MongoDB
10
ACID transactions in MongoDB
Perform CRUD Operations on MongoDB
2,3, through REST API using Spring Boot Starter Contd.
3,4 4 1 3 3
4
Data MongoDB
How to run MongoDB on cloud?

5 Development Assessment Assessment Review and corrective action 3


MongoDB implementation, administration and
2,3,
3,4 6 Weekly Assignment
4 deployment

Department of Collegiate & Technical Education Bengaluru-560001 Page 65


Diploma in Computer Science & Engineering C 20 : 2020 - 21

Application Testing
- Manual
- Automated
Peer review
Application testing tools
3,4, 2,3, Project status review 4
1 2 1
5 4 Functional testing
Demonstration of artifacts of the project
UI testing
TOC - Introduction to Automation Testing | Infosys
Springboard (onwingspan.com)
Integration testing Acceptance testing
System testing Acceptance tests and test plan
3,4, 1 3
4 2 1 2
5 Integrate the work of each group and carry out User acceptance testing
11 integration testing Bug tracking – using Jira or similar tools
Deployment process
Containers
- Manual deployment
Why containers?
- Automated deployment
What is a docker?
How to implement automated deployment?
How docker works?
Top Deployment tools and their features
Components of docker
5 4 3 Best Deployment practices 2 2 2 1
- Docker container
Setup deployment pipeline
- Docker client
Continuous deployment
- Docker daemon
Static code analysis
- Docker image
Automated review and peer review
- Docker registry
Practice – code analysis using tools

Department of Collegiate & Technical Education Bengaluru-560001 Page 66


Diploma in Computer Science & Engineering C 20 : 2020 - 21

Install docker on desktop and start the docker


tool.
TOC - Containers & Images | Infosys Springboard
(onwingspan.com)
Docker file
Docker image
Commands to create docker file.
Build docker image with docker file
create docker container from docker image
Run the docker container
5 4 4 1 3 Contd.. 3
TOC - Docker, Dockerfile, and Docker-Compose
(2020 Ready!) | Infosys Springboard
(onwingspan.com)
TOC - Deploying and Running Docker Containers
| Infosys Springboard (onwingspan.com)

5 CIE 5 – Written and Practice Test Assessment Review and corrective action 3
2,3, Automation and cloud application testing
3,4 6
4
Container orchestration
Peer review
What is orchestration?
12 5 4 1 Project status review 4 2 1
Orchestration engine
Demonstration of artifacts of the project
Orchestration tools

Department of Collegiate & Technical Education Bengaluru-560001 Page 67


Diploma in Computer Science & Engineering C 20 : 2020 - 21

TOC - Container Orchestration | Infosys


Springboard (onwingspan.com)
TOC - Docker Skills: Advanced Docker
Orchestration | Infosys Springboard
(onwingspan.com)

Kubernetes
Introduction
Why Kubernetes?
Kubernetes configuration
- Deployment Deployment strategies
2
5 4 2 - Service 1 3 Blue green deployment 1
- Load balancer/ingress Canary Deployment
Create a cluster and deploy an app
Learn Kubernetes Basics | Kubernetes
Booking.com Case Study | Kubernetes
Spotify Case Study | Kubernetes
Disaster recovery and their types
How does it work?
Elements of disaster recovery plan
5 4 3 2 2 Contd.. 3
Build a disaster recovery plan
Load Balancing
Load balancer and its functions

Department of Collegiate & Technical Education Bengaluru-560001 Page 68


Diploma in Computer Science & Engineering C 20 : 2020 - 21

Application monitoring
- Need for application monitoring
- Components of application performance Contd.
5 4 4 2 2 3
management.
- How to select application monitoring tools?
- Explore and compare APM tools

5 Development Assessment Assessment Review and corrective action

6 Cloud orchestration 2 3
1,2, Project
3,4, Internship
5 a) Identification of the problem statement
a) Secondary research on various
(from at least 3 known problems) the students
industries and their operations to identify at
would like to work as part of the project – either
least 3 companies along with the areas of work
interest and develop an internship plan that as provided by faculty or as identified by the
clearly highlights expectations from the student. Document the impact the project will
industry during the internship. have from a technical, social and business
2,3, b) Design and develop a cover letter for an perspective.
13 1
4 internship request to all 3 identified companies
b) Design and develop the project solution
and the resume to be submitted to potential
companies. or methodology to be used to solve at least one of
Prepare for an internship interview to highlight the problems identified.
your interests, areas of study, career Prepare a project plan that will include a
aspirations and personnel competence –
schedule, WBS, Budget and known risks along
including the areas of learning you expect to
with strategies to mitigate them to ensure the
learn during internship.
project achieves the desired outcome.

**Note: Saturday session from 9 AM -2 PM

References
Department of Collegiate & Technical Education Bengaluru-560001 Page 69
Diploma in Computer Science & Engineering C 20 : 2020 - 21

Sl. No Description
Charlie Chaplin - Factory Scene - Modern Times (1936) - YouTube
1 What is a Business Process? - YouTube
What Is Business Process Automation? - YouTube
- Digital Transformation | What is Digital Transformation | Digital Transformation 2021 | Simplilearn - YouTube

2 - Digital transformation: are you ready for exponential change? Futurist Keynote Speaker Gerd Leonhard - YouTube
- Digital Transformation Through IT/OT Convergence | Accenture

3 https://www.youtube.com/watch?v=_r0VX-aU_T8

4 How to build Scalable and Robust Enterprise Web Application? | Cashapona

5 SaaS vs PaaS vs IaaS: What’s The Difference & How To Choose – BMC Software | Blogs

https://www.atlassian.com/
6
https://www.atlassian.com/devops

7 Hello World – React (reactjs.org)

8 Hands-On Full Stack Development with Spring Boot 2.0 and React

9 React Cookbook , David Griffiths and Dawn Griffiths

10 Build a Basic Web Application on AWS (amazon.com)

11 A Docker Tutorial for Beginners (docker-curriculum.com)

12 Spring Boot 2.0 Projects By Mohamed Shazin Sadakath

13 Kubernetes

Department of Collegiate & Technical Education Bengaluru-560001 Page 70


Diploma in Computer Science & Engineering C 20 : 2020 - 21

CIE and SEE Assessment Methodologies


Duration
CIE Assessment Assessment Mode Max Marks
In hours

Week 3 CIE 1– Written and practice test 4 30


Week 5 CIE 2– Written and practice test 4 30
Week 7 CIE 3– Written and practice test 4 30
Week 9 CIE 4– Written and practice test 4 30
Week 11 CIE 5– Written and practice test 4 30
On line Course work (Minimum 10 hours online course with certification
40
from (SWAYAM/NPTEL/Infosys Springboard)
Profile building for Internship / Submission of Synopsys for project work 20
Portfolio evaluation (Based on industrial assignments and weekly developmental assessment) * 30
TOTAL CIE MARKS (A) 240
SEE 1 - Theory exam (QP from BTE) Conducted for 100 marks 3 hrs duration reduced to 60
3 60
marks
SEE 2 – Practical 3 100
TOTAL SEE MARKS (B) 160
TOTAL MARKS (A+B) 400
* The industrial assignment shall be based on peer-to-peer assessment for a total of 10 marks (on a scale of 1 to 10) and in the event of a group
assignment the marks awarded will be the same for the entire group, the developmental assessment will be for a total of 20 marks and based on
MCQ/case study/demonstration and such other assignment methods

Department of Collegiate & Technical Education Bengaluru-560001 Page 71


Diploma in Computer Science & Engineering C 20 : 2020 - 21

Assessment framework for CIE


Note : Theory to be conducted for 1 hour and practice for 3 hours, total duration of exam – 4 hours
Programme Computer Science & Engineering Semester V
Course Full Stack Development Max Marks 30
Course Code 20CS52I Duration 4 hours
Name of the course coordinator
Note: Answer one full question from each section.
Qn.No Question CL CO PO Marks
L3/L4
Section-1 (Theory) – 10 marks
1.a) Explain how digital transformation can bring revolution in teaching learning process L4 1 1 5
b) How DevOps enables faster development of new products and easier maintenance of L3 1 4 5
existing deployments?
2.a) Passwords alone fail to provide protection because they can be guessed and phished. L3 1 2 5
How to strengthen authentication for a banking portal?
b) The cloud is a hot topic from small businesses to global enterprises. If an organization L4 1 4 5
begins to consider switching its business to the cloud, it is crucial to understand the
differences and advantages of the various cloud services. The three main cloud services
to consider are IaaS, PaaS and SaaS. For each of these service types, which of the following
are managed by you as a consumer and service provider.
Applications, Virtualization, Operating System, Storage, Networking, Data, Server.
Section-2 (Practical) - 20 marks
3) In an open-source community, many developers contribute to an application. A new L3 5 4 20
contributor develops a feature ‘A’ and wants to commit to master repository. As an admin
you have to make sure that only reviewed code is committed to master branch.
Note : Theory questions shall be aligned to practical questions

Department of Collegiate & Technical Education Bengaluru-560001 Page 72


Diploma in Computer Science & Engineering C 20 : 2020 - 21

Scheme of evaluation

Sl. No Description Marks

1 Problem analysis and identification of tools to be used 4

2 Implementation 12

3 Demonstration of solution 4
Total 20

Assessment framework for SEE (Theory) – 100 Marks / 3 hours (Reduced to 60 marks)

Programme: Computer Science & Engineering Semester: V


Course: Full Stack Web Development Max Marks: 100
Course Code: 20CS52I Duration: 3 Hrs
Instruction to the Candidate:
Answer one full question from each section.
Qn.No Question CL CO Marks
Section-1
1.a) Digital transformation is creating new — or modifying existing — business processes, L4 1 10
culture, and customer experiences to meet changing business and market requirements.
Explain how digital transformation has brought revolution in retail purchases with an
example
b) Diagnostic imaging procedures are cutting-edge technology, but at the same time they are an L4 10
unpleasant experience for patients – and even more for paediatric patients. Explain how
design thinking helped Doug Dietz, an industrial designer, create a scanner experience that
children loved.

Department of Collegiate & Technical Education Bengaluru-560001 Page 73


Diploma in Computer Science & Engineering C 20 : 2020 - 21

2.a) Identify the tasks involved in the process of receiving Admission Ticket for semester exams in L4 10
your college. Which of the identified tasks can be automated and illustrate automation of one
task.

b) Identify the following cloud service types and list their characteristics and advantages. L3 10
Cisco WebEx Google App Engine, Amazon EC2
Section-2
3.a) BookingHall is an online convention hall booking application that helps its users to book hall L4 2 12
for functions across Karnataka. This application allows users to log in for booking a hall. Users
can find the halls in a specific locality. Once found, user can check the availability of a hall for
specific dates. Users can block a hall for required duration. Once blocked, user can get the
booking details. Identify and write the user stories for this application.

b) Write test cases for the above application. L3 8


4.a) eDesert is an online shopping application that helps its users to buy variety of authentic L4 12
deserts. This application allows users to log in for buying deserts. Users can search for a desert,
sort the desert list based on rating or price. Users can select the items and add them to the cart.
Once the selection is done, users can go to the cart page for payment. Identify and write the
user stories for this application.
b) Write test plan and test cases for the above application. L3 8
Section- 3
5.a) The HR team of an organization needs an application to maintain its employee details. L3 3 12
Create a Spring Boot application to maintain Employee details such as employee id, employee
name, and department and perform the following database operations.
- Insert a new employee detail
- Remove employee details based on employee id
- Search employee based on name or ID
b) Design an application that consumes EmailService , to send emails to recipient mail addresses. L3 8
The design should accommodate any new email services. It should also support additional
messaging feature.

Department of Collegiate & Technical Education Bengaluru-560001 Page 74


Diploma in Computer Science & Engineering C 20 : 2020 - 21

6.a) The write operations on the collection are very high. Explain the technic applicable to L3 12
manage the given scenario.

b) Compare the database communication through JDBC and ORM. L3 8


Section-4
7.a) Ram is a developing a feature of an online apparel application as service. How should he L3 4 12
handle the different requests to the service.
b) Users of Instagram, a photo sharing application, can share photographs not only with L3 8
Instagram friends but also with friends on other social networking applications such as Twitter
and Facebook. Explain how is this possible.

8.a) Develop the data access layer of the Employee Management Application to perform the L3 10
database operations given below using Spring Data JPA
Add the operation given below using Spring Data JPA:
Update the employeeContactNumber for the given employee id.
b) Create a RESTcontroller class to perform CRUD operations on product and corresponding L3 10
request and response DTOs.
The product class should contain three data members product name, product category, price.
Use proper SpringBoot annotations.

Section-5
9.a) Discuss the Components of Docker container. L3 5 6
Draw the CI/CD build process flow diagram for an online foot ware store application and L3 8
b)
explain each component.
You want to have two versions of your application in production, but be able to switch all traffic L3 6
c)
between them. Explain the deployment strategy suitable for the given situation.
10.a) Create a form to add a new product detail to the product catalogue using React. L3 10
Ted is a DevOps engineer. He wants to automate the deployment process. He wants to do L3 10
b) deployment frequently on multiple servers and change the CPU speed and RAM based on the
requirement.

Assessment framework for SEE 2 (Practice)


Department of Collegiate & Technical Education Bengaluru-560001 Page 75
Diploma in Computer Science & Engineering C 20 : 2020 - 21

Problem Statement

1 InfyCabs is an application for booking cabs. Its following functionalities needs to be exposed as REST API:

▪ Book a cab
▪ Get booking details
▪ Cancel booking
The service and persistence layer of this application is already implemented. You have to implement the API layer of this application for
exposing the above functionalities.

CabBookingAPI
Implement the CabBookingAPI class based on the class diagram and instructions given below:

Annotate this class with proper annotation to declare it as REST controller class.
Annotate this class with proper annotation so that all its methods are mapped with /bookings as base URI.
Inject bookingService and environment using appropriate annotation.

Method description:

bookCab(CabBookingDTO cabBookingDTO)

• This is a REST controller method to book a cab.


• Implement it using proper annotations according to description given below:
Resource endpoint: /
HTTP method: POST
Input: Booking details as part of HTTP request body.

Department of Collegiate & Technical Education Bengaluru-560001 Page 76


Diploma in Computer Science & Engineering C 20 : 2020 - 21

• It should invoke the bookCab() method of BookingServiceImpl class which returns a booking id.
• Retrieve the success message associated with property API.BOOKING_SUCCESSFUL from application.properties files using environment
and append it to booking id in following format:
<success message>booking id
• It returns an object of ResponseEntity created using above message and HTTP status code as CREATED.

getBookingDetails(Long mobileNo)

• This is a REST controller method to get cab booking details based on mobile number of user.
• Implement it using proper annotations according to description given below:
Resource endpoint: /{mobileNo}
HTTP method: GET
Input: mobileNo as path variable.
• It should invoke the getDetails() method of BookingServiceImpl class which returns a List<CabBookingDTO>.
• It returns an object of ResponseEntity created using List<CabBookingDTO> obtained in previous step and HTTP status code as OK.

cancelBooking(Integer bookingId)

• This is a REST controller method to cancel cab booking based on bookingId.


• Implement it using proper annotations according to description given below:
Resource endpoint: /{bookingId}
HTTP method: PUT
Input: bookingId as path variable.
• It should invoke cancelBooking() method of BookingServiceImpl class.
• Retrieve the message associated with property “API.BOOKING_CANCELLED” from the properties file.
• It returns an object of ResponseEntity created using above message and HTTP status code as OK.

2. Test the thus created REST APIs


Analyse the given problem statement 10
Selecting suitable tools to implement above case 10
Implementation 40
Use of appropriate annotations 20

Department of Collegiate & Technical Education Bengaluru-560001 Page 77


Diploma in Computer Science & Engineering C 20 : 2020 - 21

Testing 20
Total 100

Equipment/software list with Specification for a batch of 20 students

Sl. No. Particulars Specification Quantity


5. Intel i7, 4GB RAM,
Computers 20
500GB SSD
6. Eclipse/InteliJ , Java, Apache Maven, Spring 5.0, MongoDB, MySQL, Node.js, React, Jira, Git,
Bitbucket,Jenkins,GitHub Actions.
7.
Cloud – AWS/AZURE/GCB or any similar cloud environment
8.
Broadband connection

Department of Collegiate & Technical Education Bengaluru-560001 Page 78

You might also like