Devops-UNIT 1
Devops-UNIT 1
2
Please read this disclaimer before proceeding:
This document is confidential and intended solely for the educational purpose of
RMK Group of Educational Institutions. If you have received this document through
email in error, please notify the system manager. This document contains proprietary
information and is intended only to the respective group / learning community as
intended. If you are not the addressee you should not disseminate, distribute or
copy through e-mail. Please notify the sender immediately by e-mail if you have
received this document by mistake and delete this document from your system. If
you are not the intended recipient you are notified that disclosing, copying,
distributing or taking any action in reliance on the contents of this information is
strictly prohibited.
3
20IT911
DEVOPS
Date : 07-08-2023
4
1.TABLE OF CONTENTS
SLIDE
S.NO. CONTENTS
NO.
1 CONTENTS
2 COURSE OBJECTIVES
17 1.4 Tools
19 Linux Introduction,
5
Table of Contents SLIDE
S.NO. CONTENTS
NO.
21 ASSIGNMENT 1- UNIT 1
27 ASSESSMENT SCHEDULE
6
2. COURSE OBJECTIVES
OBJECTIVES:
Understand the concepts of DevOps and the issues it resolves
Learn the DevOps tools set
Learn to Develop automation using Maven
Understand Continuous Delivery and Continuous Deployment
Understand Docker Containerization
7
3. PRE REQUISITES
PRE-REQUISITE CHART
DATA STRUCTURES
20IT911
DevOps
Software Engineering
Cloud Computing
8
4. DEVOPS SYLLABUS LTPC
3003
OBJECTIVES:
Understand the concepts of DevOps and the issues it resolves
Learn the DevOps tools set
Learn to Develop automation using Maven
Understand Continuous Delivery and Continuous Deployment
Understand Docker Containerization
9
4. SOFTWARE ENGINEERING SYLLABUS LTPC
3003
UNIT IV DEPLOYMENT AND MONITORING - DOCKER 6+6
Sonar Qube integration with Project and Jenkins - Jenkins - Setup and
Configuration, Jobs - Continuous Integration, Continuous Delivery and
Continuous Deployment Configuration
TOTAL: 60 PERIODS
10
5.COURSE OUTCOME
Cognitive/
Affective Expected
Course
Course Outcome Statement Level of the Level of
Code
Course Attainment
Outcome
Course Outcome Statements in Cognitive Domain
Identify the key activities in Apply
C305.1 60%
managing a software project K3
Analyse
C305.2 Compare different process models 60%
K4
Summarize the concepts of
Understand
C305.3 requirements engineering and 60%
K2
analysis modelling
Make use of systematic procedure
Apply
C305.4 for software design and 60%
K3
deployment
Compare and contrast the various
Analyse
C305.5 software testing and maintenance 60%
K4
strategies
Develop project schedule, identify Apply
C305.6 60%
project costs and efforts required K3
Course Outcome Statements in Affective domain
11
6.CO-PO/PSO MAPPING
P P P P P P P P P P P P PS PS PS
Course O O O O O O O O O O O O O O O
Outcomes 1 2 3 4 5 6 7 8 9 10 11 12 1 2 3
(Cos)
K3
K K A
K4 K5 /K A2 A3 A3 A3 A3 A2 K3 K3 K3
3 5 3
5
K
C305.1 3 2 1 1 3 3 3 3 3
3
K
C305.2 3 3 2 2 3 3 3 3 3
4
K
C305.3 2 1 2 3 3 3
2
5
K
C305.4 3 2 1 1 3 3 3 3 3
3
K
C305.5 3 3 2 2 3 3 3 3 3
4
K
C305.6 3 2 1 1 3 3 2 2 2
3
A
C305.7 3
2
A
C305.8 2 2 2 3
2
A
C305.9 3 3 3 3 3
3
C305 3 3 2 2 3 1 1 1 3 3 3 3 3 3 3
12
UNIT I
DEVOPS INTRODUCTION
13
LECTURE PLAN – UNIT I
Sl.
No
PROPOSED ACTUAL
NO OF LECTURE LECTURE PERTAINI TAXONOMY MODE OF
TOPIC PERIOD
NG CO(s) LEVEL DELIVERY
S
PEROID PERIOD
Introduction to
1 Software 1 19-01-2023 19-01-2023 CO1 K2 MD1
Engineering
Software 20-01-2023
1 20-01-2023 CO1 K2 MD1
2 Process
Perspective
1 21-01-2023 CO1 K2 MD1
3 Process models
Perspective
1 24-01-2023 CO1 K3 MD1
4 Process models
28-01-2023
Specialized
1 CO1 K3 MD1
5 Process models
Introduction to 01-02-2023
6 1 CO1 K2 MD1
Agility
03-02-2023
Agile process 1 CO1 K2 MD1
7
Extreme 04-02-2023
1 CO1 K2 MD1
programming
8
9 XP Process. 04-02-2023
1 CO1 K2 MD1
14
LECTURE PLAN – UNIT I
15
ACTIVITY BASED LEARNING – UNIT I
16
ACTIVITY BASED LEARNING – UNIT I
QUIZ- LINK
Unit I:
Software Engineering:
https://quizizz.com/join/quiz/5ea2c608298254001d6fa416/start?from=s
oloLinkShare&referrer=5f16995403ff63001f3fdbba
SDLC:
https://quizizz.com/join/quiz/58f4d29f4d8adb1000732aec/start?from=so
loLinkShare&referrer=5f16995403ff63001f3fdbba
Software process Models:
https://quizizz.com/join/quiz/59dbd6bd3f22201000c481f8/start?from=so
loLinkShare&referrer=5f16995403ff63001f3fdbba
https://quizizz.com/join/quiz/5e10a684b2c152001bbdae63/start?from=s
oloLinkShare&referrer=5f16995403ff63001f3fdbba
17
Test Yourself
a. Spiral model.
b. Waterfall model.
c. Prototyping model
18
UNIT I
INTRODUCTION
DevOps has become one of the most valuable business disciplines for
enterprises or organizations. With the help of DevOps, quality, and speed of
the application delivery has improved to a great extent.
19
Why DevOps?
we need to understand why we need the DevOps over
the other methods.
The operation and development team worked in
complete isolation.
After the design-build, the testing and deployment are
performed respectively. That's why they consumed
more time than actual build cycles.
Without the use of DevOps, the team members are
spending a large amount of time on designing, testing,
and deploying instead of building the project.
Manual code deployment leads to human errors in
production.
Coding and operation teams have their separate
timelines and are not in synch, causing further delays.
20
DevOps History
In 2015, Nicole Forsgren, Gene Kim, and Jez Humble founded DORA
(DevOps Research and Assignment).
21
DevOps Architecture Features
Automation
Collaboration
Integration
22
Configuration management
23
DevOps Advantages and Disadvantages
Advantages
DevOps is an excellent approach for quick development and
deployment of applications.
DevOps simplifies collaboration and places all tools in the cloud for
customers to access.
Disadvantages
DevOps professional or expert's developers are less available.
24
DevOps Architecture
25
Below are the various components that are used in the DevOps
architecture:
26
Build
Code
Many good practices such as Git enables the code to be used, which
ensures writing the code for business, helps to track changes, getting
notified about the reason behind the difference in the actual and the
expected output, and if necessary reverting to the original code
developed. The code can be appropriately arranged in files, folders, etc.
And they can be reused.
Test
The application will be ready for production after testing. In the case of
manual testing, it consumes more time in testing and moving the code
to the output. The testing can be automated, which decreases the time
for testing so that the time to deploy the code to production can be
reduced as automating the running of the scripts will remove many
manual steps
Plan
27
Monitor
Deploy
Operate
Release
28
DevOps Lifecycle
29
The DevOps lifecycle includes seven phases as given below:
Continuous Development
Continuous Integration
30
Jenkins is a popular tool used in this phase. Whenever there is a
change in the Git repository, then Jenkins fetches the updated code
and prepares a build of that code, which is an executable file in the
form of war or jar. Then this build is forwarded to the test server or
the production server.
Continuous Testing
31
Selenium does the automation testing, and TestNG generates the
reports. This entire testing phase can automate with the help of a
Continuous Integration tool called Jenkins.
32
Automation testing saves a lot of time and effort for executing the
tests instead of doing this manually. Apart from that, report
generation is a big plus. The task of evaluating the test cases that
failed in a test suite gets simpler. Also, we can schedule the
execution of the test cases at predefined times. After testing, the
code is continuously integrated with the existing code.
Continuous Monitoring
33
Continuous Feedback
Continuous Deployment
34
The new code is deployed continuously, and configuration
management tools play an essential role in executing tasks
frequently and quickly. Here are some popular tools which are used
in this phase, such as Chef, Puppet, Ansible, and SaltStack
35
Continuous Operations
DevOps Workflow
36
DevOps workflow provides a visual overview of the sequence in which input
is provided. Also, it tells about which one action is performed, and output is
generated for an operations process.
DevOps workflow allows the ability to separate and arrange the jobs which
are top requested by the users. Also, it gives the ability to mirror their ideal
process in the configuration jobs.
DevOps Principles
The main principles of DevOps are Continuous delivery, automation, and fast
reaction to the feedback.
Custom Centric Action: DevOps team must take customer-centric for that they
should continuously invest in products and services.
Monitor and test everything: The DevOps team needs to have robust monitoring
and testing procedures.
Work as one team: In the DevOps culture role of the designers, developers, and
testers are already defined. All they needed to do is work as one team with
complete collaboration.
37
DevOps Tools
38
Puppet
Puppet is the most widely used DevOps tool. It allows the
delivery and release of the technology changes quickly and
frequently. It has features of versioning, automated testing, and
continuous delivery. It enables to manage entire infrastructure as
code without expanding the size of the team.
Features
Ansible
Ansible is a leading DevOps tool. Ansible is an open-source IT
engine that automates application deployment, cloud provisioning,
intra service orchestration, and other IT tools. It makes it easier for
DevOps teams to scale automation and speed up productivity.
39
Ansible is easy to deploy because it does not use
any agents or custom security infrastructure on the client-side, and
by pushing modules to the clients. These modules are executed
locally on the client-side, and the output is pushed back to the
Ansible server.
Features
Docker
Docker is a high-end DevOps tool that allows building, ship, and run
distributed applications on multiple systems. It also helps to
assemble the apps quickly from the components, and it is typically
suitable for container management.
40
Continuous learning:
Agile Methodologies
https://www.youtube.com/watch?v=1iccpf2eN1Q
41
ASSIGNMENT – UNIT I
42
PART A- UNIT-1
Risk management.
Reusability management.
Measurement.
Level 1:Initial – Few processes are defined and individual efforts are taken.
Level 4:Managed – Both the software process and product are quantitatively
understood and controlled using detailed measures.
43
PART A- UNIT-1
Most software is custom built rather than being assembled from components
Planning: This activity establishes a plan for the software engineering work that
follows. It describes the technical tasks to be conducted, the risks that are likely,
the resources that will be required, the work products to be produced, and a work
schedule.
Modeling: This activity encompasses the creation of models that allow the
developer and the customer to better understand software requirements and the
de sign that will achieve those requirements.
44
PART A- UNIT-1
Disadvantages:
This method is well designed but shorter program may get suffered.
Many believe it is impossible to make one stage of the projects life cycle perfect.
Difficult to estimate time and cost for each stage of the development process.
Blocking states
45
PART A- UNIT-1
(1) For large, but scalable projects, RAD requires sufficient human resources to
create the right number of RAD teams;
(2) If developers and customers are not committed to the rapid-fire activities
necessary to complete the system in a much abbreviated time frame, RAD
projects will fail;
(5) RAD may not be appropriate when technical risks are high (e.g., when a new
application makes heavy use of new technology).
11. What are the pros and cons of iterative development model? (K2),CO2
Advantages:
Disadvantages
46
PART A- UNIT-1
Heterogeneity challenge
If the communication is not proper then the software product that gets
developed will not be the up to the mark.
If the risk assessment is done properly then only the successful product can be
obtained.
Spiral model
Concurrent Development
47
PART A- UNIT-1
Verification represents the set of activities that are carried out to confirm that the
software correctly implements the specific functionality.
Validation represents the set of activities that ensure that the software that has
been built is satisfying the customer requirements
48
PART B- UNIT 1
1. Explain iterative waterfall and spiral model for software life cycle and various
activities in each phase. (K2), CO2
6.Explain the process model that combines the elements of waterfall and iterative
fashion(K2), CO2
a)Waterfall model
b)Spiral model
c)RAD model
d)Prototyping model
8.Explain in detail the various Software Development life cycle processes. (k2),CO2
49
SUPPORTIVE ONLINE COURSES – UNIT I
https://swayam.gov.in/explorer?searchText=software+engineering
https://www.coursera.org/learn/software-processes
https://www.coursera.org/specializations/software-development-
lifecycle
https://www.coursera.org/learn/software-design-development-
life-cycle
50
REAL TIME APPLICATION- UNIT I
As per the KPMG Survey, on average, about 70 % of all IT-related projects fail to
meet their objectives, and one of the main reason is the selection of the wrong
software development process/model.
Just selecting a model that suits your criteria can avoid these problems.
For example, if requirements are all clear and written down, you might have to
choose a different model if requirements are not clear and constant changes are
expected.
Waterfall
Probably the oldest and most straightforward SDLC (software development life
cycle) development model, Waterfall follows a sequential model (like a waterfall)
with requirements analysis, design, coding, testing and implementation in such a
manner that the development does not move to next phase until the previous
phase is completed. That is why it is called the linear sequential software
development life cycle.
Iterative
Repetition is the keyword for the iterative model. Instead of having clear and
known requirements or waiting for them, a team starts development on the
known features, tests and then evaluate further requirements, develops, tests and
so on until the whole thing is done.
Agile
Agile, the most widely used software development methodology is Agile, has
become the industry standard, be it software development, App development or
Game development.
51
CONTENT BEYOND SYLLABUS – UNIT I
ProWorkflow
Jira
52
ASSESSMENT SCHEDULE
Name of the
S.NO Start Date End Date Portion
Assessment
53
PRESCRIBED TEXT BOOKS AND REFERENCE BOOKS
TEXT BOOKS:
1. Roger S. Pressman, ― Software Engineering – A Practitioner's Approach‖,
Seventh Edition, Mc Grew-Hill International Edition, 2010.
REFERENCES:
1. Rajib Mall, ― Fundamentals of Software Engineering‖, Third Edition, PHI
Learning Private Limited, 2009.
3. Kelkar S.A., ― Software Engineering‖, Prentice Hall of India Pvt Ltd, 2007.
54
MINI PROJECT SUGGESTIONS
Problem Statement:
It needs to maintain the record of all the students and staff of an Institution.
View Results
Generate Reports:
55
MINI PROJECT SUGGESTIONS
2. Quiz System
Problem Statement:
Registration/SignIn
56
MINI PROJECT SUGGESTIONS
Problem Statement:
It needs to maintain the record of all the train details, station details and
passenger details of a particular train.
Registration/SignIn
Book Tickets
Cancel Tickets
Payment
57
MINI PROJECT SUGGESTIONS
4.Expert System
Problem Statement:
It needs to maintain the record of all the symptoms and its prescribed medicines.
Registration/SignIn
58
MINI PROJECT SUGGESTIONS
Problem Statement:
It needs to maintain the record of all the courses, seats available, course
instructors and duration.
Generate Reports:
59
MINI PROJECT SUGGESTIONS
Problem Statement:
Generate Reports:
60
Thank you
Disclaimer:
This document is confidential and intended solely for the educational purpose of
RMK Group of Educational Institutions. If you have received this document through
email in error, please notify the system manager. This document contains proprietary
information and is intended only to the respective group / learning community as
intended. If you are not the addressee you should not disseminate, distribute or
copy through e-mail. Please notify the sender immediately by e-mail if you have
received this document by mistake and delete this document from your system. If
you are not the intended recipient you are notified that disclosing, copying,
distributing or taking any action in reliance on the contents of this information is
strictly prohibited.
61