0% found this document useful (0 votes)
49 views249 pages

Devops Full Notes

The document is a course file for the DevOps subject at Malla Reddy Institute of Technology & Science for the academic year 2022-2023. It includes details such as program educational objectives, program outcomes, course objectives, and a syllabus. The course aims to equip students with knowledge and skills related to DevOps practices and methodologies.
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)
49 views249 pages

Devops Full Notes

The document is a course file for the DevOps subject at Malla Reddy Institute of Technology & Science for the academic year 2022-2023. It includes details such as program educational objectives, program outcomes, course objectives, and a syllabus. The course aims to equip students with knowledge and skills related to DevOps practices and methodologies.
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/ 249

De vO p s

MALLA REDDY INSTITUTE OF TECHNOLOGY & SCIENCE


(S P O N S O R E D B Y M A LL A R E D D Y E D U C A T IO N A L SO C IE T Y )
P erm a n en tly A ffilia ted to J N T U H & A p p ro v ed b y A IC T E , N ew D e lh i
N AAC ‘ A’ & N B A A c c red ite d In s titu tio n , A n ISO 9 0 0 1 :2 0 1 5 C ertifie d , A p p ro ve d
b y U K A c c re d ita tio n C en tre G ra n te d S ta tu s o f 2 (f) & 1 2 (b ) u n d e r U G C A c t.
1 9 5 6 , G o v t. o f In d ia .

DEVOPS
COURSE FILE

Department of CSE

(Artificial Intelligence & Machine

Learning)

(2022-2023)

Faculty In-Charge HOD,CSE(AI&ML)


Ms.P.Nalini Dr.N.VINAYA KUMARI

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

COURSE FILE

SUBJECT DEVOPS
ACADEMIC YEAR 2022-2023

REGULATION R18

NAME OF THE FACULTY P.NALINI

DEPARTMENT CSE - AIML

YEAR & SECTION III & CSE – AIML

SUBJECT CODE

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

INDEX

COURSEFILE

S.NO T PAGENO
O
P
I
C
1. PEO’ S,PO’ S,PSO’ S 4

2 SyllabusCopy 6

3 ClassTimetable&Individual 8
Timetable
4 StudentRollList 10

5 LessonPlan 13

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

UnitWiseLectureNotes 18

NotesofUnits

AssignmentQuestions

Shortand
6
longanswer

questionwith

Blooms

Taxonomy

Beyondthesyllabus
topicsandnotes

ObjectiveQuestions

PPT’ S/NPTEL
VIDEOS/anyother
7 StudentSeminarTopics

8 PreviousUniversityQuestion
Paperstopractice
9 SampleInternalExamination 191
Questionpaperswithkey
10 CourseAttendanceRegister

PEO’ S, PO’ S, PSO’ S

PROGRAM EDUCATIONAL OBJECTIVES:

PEO1: T h e g ra d u a te s o f th e p ro g ra m w ill un d ers ta n d the c o n c e p ts a n d

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

p rin c ip le s o f C o m p u te r S c ie n c e a nd E n g in e erin g in c lu s iv e o f b a s ic

s c ie n c e s .

PEO2: T h e p ro g ra m e n a b les th e lea rn ers to p ro v id e th e tec hn ic a l s k ills


n ec es s a ry to d e s ig n a n d im p le m e n t c o m p u ter s ys te m s a n d a p p lic a tio n s , to
c o n d u c t o p en -en d ed p ro b lem s o lv in g , a n d a p p ly c ritic a l th in k in g .

PEO3: T h e g ra d u a te s o f th e p ro g ra m w ill p ra c tic e th e p ro fes s io n w ith w o rk


ef fec tiv ely o n tea m s to c o m m u n ic a te in w ritten a n d o ra l f o rm , e th ic s ,

in te g rity, le a d e rs h ip a n d s o c ia l re s p o ns ib ility th ro u g h s a fe en g in e erin g

lea d in g th e m to c o n trib u te th eir m ig h t fo r th e g o o d o f th e h u m a n ra c e.

PEO4: T h e p ro g ra m e n c o u ra g es th e s tu d en ts to b ec o m e lifelo n g a c tivity


a n d a s a m e a n s to th e c re a tiv e d is c o ve ry, d e ve lo p m en t, a n d

im p lem en ta tio n o f te c h n o lo g y a s w ell a s to k ee p u p w ith th e d yn am ic


n a ture o f th e C o m p ute r S c ie n c e a n d E n g in e erin g d is c ip lin e.

PROGRAM OUTCOMES

Engineering knowledge : A p p ly th e k n o w le d g e o f m a th e m a tic s , s c ien c e,


en g in eerin g fu n d a m e n ta ls , a n d a n en g in eerin g s p ec ia liza tio n to th e

s o lu tio n o f c o m p lex en g in e erin g p ro b le m s .

Problem analysis: Id en tify, fo rm u la te, rev iew res e a rc h litera tu re , a n d


a n a lyze c o m p lex en g in e erin g p ro b le m s re a c h in g s u b s ta n tia te d

c o n c lu s io n s u s in g firs t p rin c ip les o f m a th em a tic s , n a tu ra l s c ie n c e s , a n d


en g in eerin g s c ie n c e s .

Design/development of solutions: D e s ig n s o lu tio ns fo r c o m p le x


en g in eerin g p ro b lem s a n d d e s ig n s ys te m c o m p o n en ts o r p ro c e s s es th a t

m ee t th e s p e c ified n ee d s w ith a p p ro p ria te c o n s id e ra tio n fo r th e p ub lic

h ea lth a n d s a fety, a n d th e c u ltu ral, s o c ieta l, a n d e n viro n m en ta l

c o n s id era tio n s .

Conduct investigations of complex problems: U s e res e a rc h -b a s ed

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

k n o w led g e a n d re s ea rc h m eth o d s in c lu d in g d e s ig n o f ex p e rim en ts ,

a n a lys is a n d in terp reta tio n o f d a ta , a n d s yn th es is o f th e in fo rm a tio n to

p ro v id e v a lid c o n c lu s io n s .

Modern tool usage : C rea te, s e lec t, a n d a p p ly a p p ro p ria te te c h n iq u e s , res o u rc es ,


a n d m o d e rn e n g in ee rin g a n d IT to o ls in c lu d in g p red ic tio n a n d m o d e lin g to
c o m p lex e n g in e erin g a c tiv itie s w ith a n u n d e rs ta n d in g o f th e lim ita tio n s .

The engineer and society: A p p ly re a s o n in g in fo rm ed b y th e c o n tex tu a l


k n o w led g e to a s s e s s s o c ie ta l, h e a lth , s a fe ty, le g a l a n d c u ltu ra l is s u e s a n d
th e c o n s eq u en t re s p o n s ib ilitie s re lev an t to th e p ro fe s s io n a l e n g in e erin g

p ra c tic e .

Environment and sustainability: U n d ers tan d th e im p a c t of th e

p ro f es s io n a l en g in e erin g s o lu tio n s in s o c ieta l a n d en v iro n m e nta l c o n te xts ,

and d em o n s tra te th e k n o w le d g e o f, and n ee d fo r s u s ta in a b le

d e ve lo p m e n t.

Ethics: A p p ly e thic a l p rinc ip les a n d c o m m it to p ro fe s s io n a l eth ic s a n d


res p o n s ib ilities a n d n o rm s o f th e en g in eerin g p ra c tic e.

Individual and team work : F u n c tio n e ffe c tive ly a s a n in d iv id u a l, a n d a s a


m em b e r o r lea d er in d iv ers e tea m s , a n d in m u ltid is c ip lin a ry s e ttin g s .

Communication: C o m m u n ic a te eff ec tiv ely on c o m p lex en g in e erin g

a c tivities w ith th e en g in e erin g c o m m u n ity a n d w ith s o c iety a t la rg e, s u c h

a s , b e in g a b le to c o m p re he n d a n d w rite effe c tive re p o rts a n d d e s ig n

d o c u m en ta tio n , m a k e ef fec tiv e p res en ta tio n s , a n d g iv e a n d re c e iv e c lea r


in s tru c tio n s .

Project management and finance : D em o n s tra te k n o w le d g e a n d


u n d e rs ta n d in g o f th e en g in e erin g a n d m a na g em en t p rin c ip le s a n d ap p ly

th es e to o n e’ s o w n w o rk , a s a m em b e r a n d le a d er in a tea m , to m a n a g e

p ro jec ts a n d in m u ltid is c ip lin a ry e n viro n m en ts .

Life-long learning : R e c o g n iz e th e n ee d fo r, a n d h a v e th e p rep a ratio n a n d a b ility

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

to en g a g e in in d ep en d en t a n d life -lo n g le a rn in g in th e b ro a d es t c o n te xt o f

tec h no lo g ic a l c h a n g e .

PROGRAM SPECIFIC OUTCOMES:

PSO1: D es ig n a n d d e ve lo p m e n t o f s o ftw a re a p p lic a tio n s b y u s in g d a ta m in in g


tec h niq u es .

PSO2: E n ric h m en t o f g ra d u a tes w ith g lo b a l c ertif ic a tio n s to p ro d u c e re lia b le


s o f tw a re s o lu tio n s .

2. Syllabus Copy
DEVOPS
B.Tech. III Year II Sem. LTPC
3104
Course Objectives: T h e m a in o b je c tiv es o f th is c o u rs e a re to : 1 . D e s c rib e th e a g ile
rela tio n s h ip b e tw e en d ev elo p m en t a n d IT o p era tio ns . 2 . U n d e rs ta n d th e s k ill s e ts a n d
h ig h -f un c tio n ing tea m s in vo lv ed in D ev O p s a n d rela ted m e th o d s to re a c h a c o n tin u o u s
d e liv ery c a p a b ility. 3 . Im p lem en t a u to m a te d s ys te m u p d a te a n d D ev O p s lifec yc le.
Course Outcomes: O n s u c c es s f u l c o m p le tio n o f th is c o u rs e , s tu d e n ts w ill b e a b le to : 1 .
Id en tify c o m p o n en ts o f D ev o p s e n viro n m en t. 2 . D es c rib e S o ftw a re d ev elo p m e n t m o d els
a n d a rc h itec tu res o f D ev O p s . 3 . A p p ly d iff eren t p ro je c t m a n a g em en t, in teg ra tio n , tes tin g
a n d c o d e d e p lo ym en t to o l. 4 . In ve s tig a te d iffe re n t D e vO p s S o f tw a re d e ve lo p m e nt m o d e ls .
5 . A s s es s va rio u s D e vo p s p ra c tic e s . 6 . C o lla b o ra te a n d a d o p t D e vo p s in rea l-tim e
p ro jec ts .
UNIT - I
Introduction:
In tro d u c tio n , A g ile d e ve lo p m e n t m o d el, D ev O p s , and IT IL. D e vO p s p ro c e s s and
C o n tin u o u s D elive ry, R ele a s e m a n a g em en t, S c ru m , K a n b a n , d elive ry p ip elin e, b o ttle n ec k s ,
ex a m p les .
UNIT - II

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Software development models and DevOps:


D e vO p s L ifec yc le fo r B u s in es s A g ility, D e vO p s , a nd C o n tin u o u s T es tin g . D ev O p s in flu en c e
o n A rc h ite c tu re: In tro d u c in g s o ftw a re a rc h ite c tu re, T h e m o n o lith ic s c en a rio , A rc h ite c tu re
ru le s o f th u m b , T h e s ep a ra tio n o f c o n c ern s , H a n d lin g d a ta b a s e m ig ra tio n s , M ic ro s erv ic es ,
a n d th e d a ta tie r, D ev O p s , a rc h ite c tu re , a n d res ilien c e.
UNIT – III
Introduction to project management: T h e n ee d fo r s o u rc e c o d e c o n tro l, T h e h is to ry o f
s o u rc e c o d e m a n a g em en t, R o les a n d c o d e, s o u rc e c o d e m an a g em en t s ys tem a n d
m ig ratio n s , S h a red a u th en tic a tio n , H o s ted G it s erve rs , D iffere n t G it s e rv er
im p lem en ta tio n s , D o c k er in te rm is s io n , G e rrit, T h e p u ll re q u e s t m o d el, G itLa b .
UNIT - IV
Integrating the system:
B u ild s ys tem s , J e n k in s b u ild s e rv er, M a n a g in g b u ild d ep en d en c ie s , J e n k in s p lu g in s , a n d
file s ys te m lay o u t, T h e h o s t s e rve r, B u ild s la ve s , S o ftw a re o n th e h o s t, T rig g e rs , J o b
c h a in in g a n d b u ild p ip elin es , B u ild s erv ers a n d in fra s tru c tu re a s c o d e , B u ild in g b y
d e p e n d e n c y o rd er, B u ild p h a s es , A lte rn a tive b u ild s e rve rs , C o lla tin g q u a lity m e a s u re s .
UNIT - V
Testing Tools and automation: V a rio u s typ es o f tes tin g , A u to m a tio n o f te s tin g P ro s a n d
c o n s , S elen iu m - In tro d u c tio n , S e le n iu m fea tu res , J a va S c rip t te s tin g , Te s tin g b a c k e n d
in te g ra tio n p o in ts , T e s t-d riv en d ev elo p m e n t, R E P L-d riv en d e ve lo p m e n t D ep lo ym e n t o f th e
s ys tem : D e p lo ym en t s ys te m s , V irtu a liz a tio n s ta c k s , c o d e e xe c u tio n a t th e c lie n t, P u p p et
m a s te r a n d a g en ts , A n s ib le , D e p lo ym en t to o ls : C h ef , S a lt S ta c k a nd D o c k er
TEXT BOOKS:
J o a k im Ve ro n a . P ra c tic a l D ev o p s , S ec o n d E d itio n . In g ra m s h o rt title; 2 n d e d itio n (2 0 1 8 ).
IS B N 1 0 : 1 7 8 8 3 9 2 5 7 4 2 . D e ep a k G a ik w a d , Vira l T h a k k a r. D e vO p s T o o ls fro m P ra c titio n e r's
V iew p o int. W iley p ub lic a tio n s . IS B N : 9 7 8 8 1 2 6 5 7 9 9 5 2
REFERENCE BOOK:
1 . L en B a s s , In g o W e b e r, L im in g Z h u . D e vO p s : A S o ftw a re A rc h itec t's P ers p e c tive .
A d d is o n W e s ley; IS B N -1 0 .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

2. Class Time Table

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

4. Individual Time Table

5. Student List
MALLAREDDY INSTITUTE OF TECHNOLOGY & SCIENCE

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

CSE - AIML
C la ss: III Year-II Sem B. Tech. B ra n c h : B .T ec h – C S E (A IM L)
B a tch : 2020-2024

A.Y:2022-2023
ROLL LIST

S. No H.T.NO NAME OF THE STUDENT

1 20S11A6601 AJAY KYADAVENI


2 20S11A6602 AKHIL DESAI

3 20S11A6603 AMRUTHA S.V.S

4 20S11A6604 ANUDEEP DHURGAM

5 20S11A6605 ASHWINI KASHI

6 20S11A6606 BHARATH D

7 20S11A6607 BHAVANA GOLLAPALLY

8 20S11A6608 BHAVANA KAMMARI

9 20S11A6609 BHAVANI SHANKER C V


10 20S11A6610 CHANDANA TIGULLA

11 20S11A6611 CHANDRASHEKHARA PRAMOD


12 20S11A6612 DINESH SADANANAD

13 20S11A6613 HARI KRISHNA SAMBARI

14 20S11A6614 JASHWANTH BOMMAKANTI

15 20S11A6615 KAMAL SANJAY


16 20S11A6616 LAXMI PRASANNA A A S

17 20S11A6617 M N AJAY VARMA PENMATSA

18 20S11A6618 MAHESH BOLLABATHULA

19 20S11A6619 MANISH SAI KUMAR KOSURU

20 20S11A6620 NANDINI REPALLE

21 20S11A6621 NIHARIKA CH

22 20S11A6622 NISHANK YARLAGADDA

23 20S11A6623 NITHIN GOUD BEESU

24 20S11A6624 PAVAN SAI GORUPUTI

25 20S11A6625 PRAKESH SAI

26 20S11A6626 PRANEETH CHERLA

27 20S11A6627 PRAVEEN MADELA

28 20S11A6628 PREM KIRAN BODDU

29 20S11A6629 PUNEETH KOUTARAPU


20S11A6630 RAGHAVENDRA SRINIVAS
30
REMELLA
20S11A6631 RAKESH VARMA CHINDAM
31

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

20S11A6632 SAHANA REDDY ANNAM


32
20S11A6633 SAI BHAVYA POLEMONI
33
34 20S11A6634 SAI CHERAN CHENNOJU

20S11A6635 SAI PAVAN SIDDAM


35
20S11A6636 SAI VARDHAN REPALLE
36
20S11A6637 SAI VARDHAN YADLAPALLI
37
20S11A6638 SAKETH MACHA
38
20S11A6639 SOUMITH PARUVELLI
39
20S11A6640 SRI VENKATA SAI SUHAAS
40
20S11A6641 SUJITH DAS KURAMA
41
20S11A6642 SURABHI VAS PRAGNAN
42
20S11A6643 TARUN BHOSLE
43
20S11A6644 TEJA KONDAPARTHY
44
20S11A6645 VAMSHI GANDLA
45
20S11A6646 VARSHA AITHA
46
20S11A6647 VARSHITHA GOURISHETTY
47
20S11A6648 VENKATA RAMANA SAI THALKA
48
49 20S11A6649 VENKATA SAI SUNNAM

20S11A6650 VENKATA SURYA PRAKASH


50
20S11A6651 VINAY KUMAR CHINORI
51
20S11A6652 VINEET REDDY SADDI
52
21S15A6653 VISHNU PRIYA MARISHETTY
53
21S15A6654 VISHNU REDDY KONDITIVAR
54
21S15A6655 VISHWA SHREYA SHARAB
55
21S15A6656 YASHWANTH REDDY ANAM
56
21S15A6657 GOLAMARU DAMINI
57
21S15A6658 SATHE BHARGAVI
58
21S15A6659 SIDDIRALA SRIKANTH
59
21S15A6660 SADANALA SAIKIRAN
60
21S15A6601 BALA XAVIER GOVINDU
61
21S15A6602 LIKHITH REDDY KORPOL
62
63 21S15A6603 PRAVEEN KATROTH

64 21S15A6604 SAI KIRAN BODLA

65 21S15A6605 SANDEEP KUMAR JADA

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

66 21S15A6606 THARUN JAVAJI

5. Lessson plan
Progra
Mode Refere
No. of Topic/ Course m
Lesson of nce
Unit No. Date Period Sub Outco Outco
No. Teachi Text
s Topic me me
ng Books
(PO)
13.02.2 In tro d u
1 .1 1 PPT T1
3 c tio n

A g ile
14.02.2 d ev elo
1 .2 1 PPT T1
I 3 p m en t
CO1
m o del
D ev O p
15.02.2 s
1 .3 1 PPT T1
3 In tro d u
c tio n

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

IT IL ( In f
orm a tio
n
16.02.2 Techno l
1 .4 1 PPT T1
3 og y
In f ra stru
ctu re
Li bra ry )

D ev O p
17.02.2 s
1 .5 1 PPT T1
3 p ro c es
s
D ev O p
20.02.2 s
1 .6 1 PPT T1
3 p ro c es
s
R ele a s
21.02.2 e
1 .7 1 PPT T1
3 m anag
em en t
R ele a s
22.02.2 e
1 .8 1 PPT T1
3 m anag
em en t

23.02.2
1 .9 1 Sc ru m PPT T1
3

24.02.2
1 .1 0 1 Sc ru m PPT
3
T1
25.02.2
1 .1 1 1 Ka nb a n PPT
3
d eliv ery
27.02.2
1 .1 2 1 p ip e lin PPT T1
3
e

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

d eliv ery
01.03.2
1 .1 3 1 p ip e lin PPT T1
3
e

Assignment Test Unit 1

DevO p s
Li fe c yc l
04.03.2
2 .1 1 e fo r PPT T1
3
B u sin e s
s A gility
04.03.2 DevO p s

3 Li fe c yc l
2 .2 1 e fo r PPT T1
B u sin e s
s A gility
06.03.2 DevO p s

3 and
2 .3 1 C o n tin u PPT T1
ou s
T e stin g
09.03.2 DevO p s

3 and
II 2 .4 1 C o n tin u PPT CO 3 T1
ou s
T e stin g
10.03.2 DevO p s

3 in flu e n c
2 .5 1 e on PPT T1
A rc h ite c
tu re
11.03.2 DevO p s

3 in flu e n c
2 .6 1 e on PPT T1
A rc h ite c
tu re
13.03.2 In tro du c

3 in g
2 .7 1 so ftw a re PPT T1
a rc h ite ct
u re

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

14.03.2 The

3 m on ol it
2 .8 1 PPT T1
h ic
sc e n a rio
15.03.2 A rc h ite c

3 tu re
2 .9 1 PPT T1
ru le s of
th u m b
16.03.2 The

3 se p a ra ti
2 .1 0 1 on of PPT T1
co n c ern
s
18.03.2 H a n d lin

3 g
da ta ba s
2 .1 1 1 PPT T1
e
m igra tio
ns
24.03.2 M ic ro s er
2 .1 2 1 PPT T1
3 v ic e s

Assignment Test Unit 2

25.03.2 Th e
3 n eed
fo r
3 .1 1 PPT T1
s o u rc e
cod e
c o n tro l
III CO 1
27.03.2 Th e
3 n eed
fo r
3 .2 1 PPT T1
s o u rc e
cod e
c o n tro l

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

28.03.2 Th e
3 h is to ry
of
3 .3 1 s o u rc e PPT T1
cod e
m anag
em en t
29.03.2 Th e
3 h is to ry
of
3 .4 1 s o u rc e PPT T1
cod e
m anag
em en t
01.04.2 R o le s
3 .5 3 1 a nd PPT T1
cod e
03.04.2 s o u rc e
3 cod e
m anag
em en t
3 .6 1 PPT T1
s ys te m
a nd
m ig ra ti
ons
05.04.2 Sh a re d
3 .7 3 1 a uth e n t PPT T1
ic a tio n
06.04.2 H o s te d
3 .8 3 1 G it PPT T1
s erve rs
10.04.2 D iffere
3 nt G it
s erve r
3 .9 1 PPT T1
im p le m
en ta tio
ns

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

24.04.2 D o c k er
3 .1 0 3 1 in term i PPT T1
s s io n
25.04.2
3 .1 1 1 PPT T1
3 G errit
27.04.2 Th e
3 p u ll
3 .1 2 1 PPT T1
re q u e s t
m o d e l,
29.04.2
3 .1 3 1 PPT T1
3 G itL a b

Assignment Test Unit 3

B u ild
01.05.2
4 .1 1 s ys te m PPT T1
3
s,
02.05.2 J en k in
4 .2 3 1 s b u ild PPT T1
s erve r
03.05.2 M anag i
3 ng
4 .3 1 b u ild PPT T1
d ep en d
en c ie s
IV CO 2
04.05.2 J en k in
3 s
p lu g in s ,
4 .4 1 PPT T1
a nd file
s ys te m
la yo u t
05.05.2 Th e
4 .5 3 1 host PPT T1
s erve r
06.05.2 B u ild
4 .6
3
1 PPT T1
s la v es

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

08.05.2 So ftw a
3 re on
4 .7 1 PPT T1
th e
host
10.05.2 Trig g er
3 s, Job
c h a in in
4 .8 1 g and PPT T1
b u ild
p ip e lin
es
11.05.2 B u ild
3 s erve rs
a nd
4 .9 1 in fra s tr PPT T1
u c tu re
as
cod e
12.05.2 B u ild
3 s erve rs
a nd
4 .1 0 1 in fra s tr PPT T1
u c tu re
as
cod e
13.05.2 B u ild in
3 g by
4 .1 1 1 d ep en d PPT T1
en c y
o rd e r
29.05.2 B u ild in
3 g by
4 .1 2 1 d ep en d PPT T1
en c y
o rd e r
30.05.2
4 .1 3 3 1 B u ild PPT T1
p h a s es

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

31.05.2 A lte rna


3 tiv e
4 .1 4 1 PPT T1
b u ild
s erve rs
01.06.2 C o lla tin
3 g
4 .1 5 1 q u a lity PPT T1
m e asur
es

Assignment Test Unit 4

V a riou s
03.06.2
5 .1 1 ty p e s of PPT T1
3
te s tin g
A u to m a t
ion of
04.06.2 te s tin g
5 .2 1 PPT T1
3 P ro s
and
co n s
S e le n iu
05.06.2 m -
5 .3 1 PPT T1
3 In tro du c
tio n ,

V 08.06.2 S e le n iu CO 1
5 .4 1 PPT T1
3 m
fe a tu re s
J a v a S c ri
10.06.2
5 .5 1 pt PPT T1
3
te s tin g
T e stin g
ba c ke n d
12.06.2
5 .6 1 in te gra ti PPT T1
3
on
po in ts
T e st-d riv
17.06.2 en
5 .7 1 PPT T1
3 de v e lo p
m e n t,

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

RE P L -d ri
19.06.2 ven
5 .8 1 PPT T1
3 de v e lo p
m ent

Assignment Test Unit 5

6. Lecture notes

Unit 1
Introduction
History

Software Development Life Cycle (SDLC)

A s o ftw a re life c yc le m o d e l (a ls o term e d p ro c e s s m o d e l) is a p ic to ria l a n d d ia g ra m m a tic


rep re s en ta tio n o f th e s o ftw a re life c yc le . A life c yc le m o d el rep re s en ts a ll th e m eth o d s
req u ired to m a k e a s o ftw a re p ro d u c t tra n s it th ro u g h its lif e c yc le s ta g e s . It a ls o c a p tu res
th e s tru c tu re in w h ic h th e s e m e th o d s a re to b e u n d erta k en .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Stage1: Planning and requirement analysis

R e q u irem en t A n a lys is is the m o s t im p o rta n t a n d n e c e s s a ry s ta g e in S D L C .

T h e s e n io r m em b e rs o f th e te a m p erfo rm it w ith in p u ts fro m a ll th e s ta k eh o ld ers a n d


d o m ain ex p e rts o r S M E s in th e in d u s try .

P la n n in g fo r th e q u a lity a s s u ra n c e re q u irem en ts a n d id en tific a tio n s o f th e ris k s


a s s o c ia te d w ith th e p ro jec ts is als o d o n e at th is s ta g e .

B u s in es s a n a ly s t a n d P ro je c t o rg a n iz er s et u p a m e etin g w ith th e c lien t to g a th er a ll th e


d a ta lik e w h a t th e c u s to m er w a n ts to b u ild , w ho w ill b e th e en d u s er, w h a t is th e o b jec tiv e
o f th e p ro d uc t. B efo re c rea tin g a p ro d u c t, a c o re u n d e rs ta n d in g o r k n o w led g e o f th e
p ro d u c t is v ery n ec es s a ry.

For Example , A c lie n t w a n ts to h a ve a n ap p lic a tio n w h ic h c o n c e rn s m o n e y tra ns a c tio n s .


In th is m eth o d , the re q u irem en t h a s to b e p re c is e lik e w h at k in d o f o p e ra tio n s w ill b e d o n e ,
h o w it w ill b e d o n e , in w h ic h c u rren c y it w ill b e d o n e, etc .

O n c e th e req u ire d fu n c tio n is d o n e , a n a n a lys is is c o m p lete w ith a u d itin g th e fe a s ib ility o f


th e g ro w th o f a p ro d u c t. In c a s e o f a n y am b ig u ity, a s ig n a l is s e t u p fo r fu rth er d is c u s s io n .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

O n c e th e req u ire m e n t is u n d e rs to o d , th e SR S (S o ftw a re R e q u ire m en t Sp ec ific a tio n )


d o c u m en t is c rea ted . T h e d ev elo p ers s h o u ld th o ro u g h ly fo llo w th is d o c u m e n t a nd a ls o
s h o u ld b e rev ie w ed b y th e c u s to m er fo r fu tu re ref eren c e.

Stage2: Defining Requirements

O n c e th e req u ire m e n t a n alys is is d o n e , th e n ex t s ta g e is to c erta in ly re p res e n t a n d


d o c u m en t th e s o ftw a re re q u ire m en ts and g et th e m a c c ep ted fro m th e p ro je c t
s ta k eh o ld ers .

T h is is a c c o m p lis h ed th ro u g h "S R S"- S o ftw a re R e q u irem en t S p e c ific a tio n d o c u m en t


w h ic h c o n ta in s a ll th e p ro d u c t req u ire m e n ts to b e c o n s tru c ted a n d d e ve lo p e d d u rin g th e
p ro jec t life c yc le.

Stage3: Designing the Software

T h e n e xt p h a s e is a b o u t to b rin g d o w n a ll th e k n o w led g e o f req u ire m e n ts , a n a lys is , a n d


d e s ig n o f th e s o f tw a re p ro jec t. T h is p h a s e is th e p ro d uc t o f th e la s t tw o , lik e in p u ts fro m
th e c u s to m e r a n d req u ire m e n t g a th e rin g .

Stage4: Developing the project

In th is p h a s e o f S D LC , th e a c tu a l d ev elo p m e n t b eg in s , a n d th e p ro g ra m m in g is b u ilt. T h e
im p lem en ta tio n o f d es ig n b e g in s c o n c e rn in g w ritin g c o d e . D ev elo p ers h a v e to f o llo w th e
c o d in g g u id elin es d e s c rib e d b y th e ir m a na g em en t a n d p ro g ra m m in g to o ls lik e c o m p ilers ,
in te rp reters , d eb u g g e rs , etc . a re u s ed to d ev elo p a n d im p lem en t th e c o d e.

Stage5: Testing

A f te r the c o d e is g e n era ted , it is te s te d a g a in s t th e re q u irem en ts to m a k e s ure th a t th e


p ro d u c ts a re s o lvin g th e n e ed s a d d res s e d a n d g a th e re d d urin g th e req u irem e n ts s ta g e .

D u rin g th is s ta g e, u n it te s tin g , in teg ra tio n te s tin g , s y s te m te s tin g , a c c e p ta n c e te s tin g a re


d o n e.

Stage6: Deployment

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

O n c e th e s o ftw a re is c ertif ie d , a n d n o b u g s o r e rro rs a re s ta ted , th en it is d ep lo ye d .

T h en b a s e d o n th e a s s es s m e n t, th e s o ftw a re m a y b e re lea s ed a s it is o r w ith s u g g es te d


en h a n c em en t in th e o b je c t s eg m e n t.

A f te r th e s o f tw a re is d ep lo ye d , th en its m a in te n an c e b eg in s .

Stage7: Maintenance

O n c e w h e n th e c lien t s ta rts u s in g th e d e ve lo p e d s ys te m s , th e n th e rea l is s u es c o m e u p


a n d req u ire m e n ts to b e s o lve d fro m tim e to tim e .

T h is p ro c e d u re w h ere th e c a re is ta k e n fo r th e d e ve lo p ed p ro d u c t is k n o w n a s
m a in ten a n c e.

Waterfall model

W in s to n R o yc e in tro d u c ed th e W a terfa ll M o d e l in 1 9 7 0 .T h is m o d el h a s fiv e p h a s es :


R e q u irem en ts a n a lys is a n d s p e c ific a tio n , d es ig n , im p lem en ta tio n , a n d u n it te s tin g ,
in te g ra tio n a n d s ys tem tes tin g , a n d o p e ra tio n a n d m a in ten a n c e. T h e s te p s a lw a ys fo llo w
in th is o rd er a n d d o n o t o ve rla p . T h e d ev elo p e r m u s t c o m p le te ev ery p h a s e b efo re th e
n ex t p h a s e b eg in s . T h is m o d e l is n a m e d " Waterfall Model", b e c a u s e its d ia g ra m m a tic
rep re s en ta tio n re s em b les a c a s c a d e o f w a te rf alls .

1. Requirements analysis and specification phase: T h e a im o f th is p h a s e is to


u n d e rs ta n d th e e xa c t re q u ire m en ts o f th e c u s to m e r an d to d o c u m e n t th e m p ro p erly. B o th
th e c u s to m er a n d th e s o ftw a re d ev elo p e r w o rk to g eth er s o a s to d o c u m e n t a ll th e
fu n c tio n s , p erfo rm a n c e , a n d in terfa c in g req u irem e n t o f th e s o ftw a re . It d e s c rib es th e
"w h a t" o f th e s ys tem to b e p ro d u c ed a n d n o t "h o w ."In th is p ha s e , a la rg e d o c u m en t
c a lled Software Requirement Specification (SRS) d o c u m en t is c re a te d w h ic h c o n ta in ed a
d e ta ile d d e s c rip tio n o f w h a t th e s ys tem w ill d o in th e c o m m o n lan g u a g e .

2. Design Phase: T h is p h a s e a im s to tra n s fo rm th e re q u irem en ts g a th e re d in th e S R S in to


a s u itab le fo rm w h ic h p erm its fu rth er c o d in g in a p ro g ra m m in g la n g u a g e . It d ef in e s th e
o v era ll s o ftw a re a rc h ite c tu re to g e th er w ith h ig h lev el a n d d eta ile d d e s ig n . A ll th is w o rk is

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

d o c u m en te d a s a S o ftw a re D e s ig n D o c u m en t (S D D ) .

3. Implementation and unit testing: D u rin g th is p h a s e, d es ig n is im p lem en ted . If th e S D D


is c o m p le te , th e im p lem en ta tio n o r c o d in g p h a s e p ro c ee d s s m o o th ly, b ec a u s e a ll th e
in fo rm a tio n n e ed ed b y s o ftw are d ev elo p ers is c o n ta in ed in th e S D D .

D u rin g te s tin g , th e c o d e is th o ro u g h ly e xa m in ed a n d m o d ified . S m a ll m o d u les a re tes te d


in is o la tio n in itia lly. A fter th a t th e s e m o d u le s a re tes te d b y w ritin g s o m e o ve rh e a d c o d e to
c h e c k th e in te ra c tio n b e tw ee n th e s e m o d u le s an d th e flo w o f inte rm ed ia te o u tp u t.

4. Integration and System Testing: T h is p h a s e is h ig h ly c ru c ial a s th e q u a lity o f th e e n d


p ro d u c t is d e term in e d b y th e e ffe c tive n es s o f th e te s tin g c a rried o u t. T h e b e tte r o u tp u t
w ill le a d to s a tis fie d c u s to m e rs , lo w e r m a in ten a n c e c o s ts , an d a c c u ra te res u lts . U n it
tes tin g d ete rm in es th e e ffic ie n c y o f in d ivid u a l m o d u les . H o w e ve r, in th is p h a s e, th e
m o d ule s a re te s te d fo r th eir in tera c tio n s w ith ea c h o the r a n d w ith th e s ys te m .

5. Operation and maintenance phase: M a in te n a n c e is th e ta s k p e rfo rm ed b y e ve ry u s er


o n c e th e s o f tw a re h a s b e en d e liv ered to th e c u s to m e r, in s ta lled , a n d o p era tio n a l.

Advantages of Waterfall model


T h is m o d e l is s im p le to im p le m e n t a ls o th e n u m b e r o f re so u rc e s th a t a re re q u ire d fo r it is m in im a l.

T h e re qu ire m e n ts a re sim p le a n d e xp lic itly d e c la re d; th e y re m a in u n c h a n ge d du rin g th e e n tire

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

p ro je c t d e v e lo p m e n t.

T h e s ta rt a n d e n d p o in ts fo r e a c h p h a se is fixe d , w h ic h m a k e s it e a s y to c o v e r p ro gre s s.

T h e re le a se d a te fo r th e c o m p le te pro d u c t, a s w e ll a s its fin a l c o s t, c a n b e d e te rm in ed b ef ore


d e v e lop m e n t.

It g iv e s ea sy to co n tro l a n d c la rity fo r th e c u sto m e r d u e to a s tric t re po rtin g sy s te m .

Disadvantages of Waterfall model


In th is m o d e l, th e ris k fa c to r is h ig h e r, so th is m o de l is n o t su ita b le fo r m o re si gn ific a n t a n d
c o m p lex pro je c ts .

T h is m o d e l c a n n ot a c c e p t th e c h a n ge s in re q u ire m e n ts d u rin g d e v e lo p m e n t.

It be c o m e s to u g h to g o b a c k to th e p h a s e . F o r e xa m ple , if th e a p p lic a tion h a s n o w s h ifte d to th e


c o din g ph a s e , a n d th e re is a ch a n ge in re q u ire m e n t, It b e c o m e s to u g h to go b a c k a n d c h a n g e
it.

S in ce th e te stin g d on e a t a la ter sta ge , it d o e s n o t a llo w id e n tify in g th e c h a lle n ge s a n d risk s in th e


e a rlie r p h a s e , s o th e ri sk re d u c tio n s tra te g y i s d iffic u lt to p re p a re .

Introduction

The D ev O p s is th e c o m b in atio n of tw o w o rd s , one is Development a n d o th er


is Operations. It is a c u ltu re to p ro m o te th e d ev elo p m en t a n d o p era tio n p ro c es s
c o lle c tive ly.

T h e D e vO p s tu to ria l w ill h elp yo u to le arn D ev O p s b a s ic s a n d p ro v id e d e p th k n o w le d g e o f


v ario u s D e vO p s to o ls s u c h a s Git, Ansible, Docker, Puppet, Jenkins, Chef, Nagios,
a n d Kubernetes.

What is DevOps?

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Why DevOps?

B ef o re g o in g fu rth er, w e n ee d to u n d e rs ta n d w h y w e n ee d th e D e vO p s o ve r th e o th er
m eth o d s .

T h e o p era tio n a n d d e ve lo p m e nt tea m w o rk e d in c o m p le te is o la tio n .

A f te r th e d es ig n -b u ild , th e tes tin g a n d d ep lo ym e n t a re p erfo rm ed re s p e c tive ly. T h at's


w h y th e y c o n s u m ed m o re tim e th a n a c tu a l b u ild c yc les .

W ith o u t th e u s e o f D ev O p s , th e tea m m e m b ers a re s p e n d in g a la rg e a m o u n t o f tim e


o n d es ig n in g , te s tin g , a nd d e p lo yin g in s tea d o f b u ild in g th e p ro jec t.

M a n u al c o d e d e p lo ym en t le a d s to h u m a n e rro rs in p ro d u c tio n .

C o d in g a nd o p era tio n tea m s h a ve th eir s ep a ra te tim elin es a n d a re n o t in s yn c h ,


c a u s in g fu rth er d e la ys .

DevOps History

In 2 0 0 9 , th e firs t c o n fe re n c e n a m ed DevOpsdays w a s he ld in G h e n t B elg iu m . B elg ia n


c o n s u lta n t a n d P a tric k D e b o is fo u n d e d the c o n feren c e.

In 2 0 1 2 , the s ta te o f D ev O p s re p o rt w a s la u n c h e d a n d c o n c e ive d b y A la n n a B ro w n a t
P u p p et.

In 2 0 1 4 , th e a n n u a l S ta te o f D e vO p s rep o rt w a s p u b lis h e d b y N ic o le F o rs g re n , J ez

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

H u m b le, G en e K im , a n d o th e rs . T h ey f o u n d D ev O p s a d o p tio n w a s a c c ele ra tin g in


2 0 1 4 als o .

In 2 0 1 5 , N ic o le Fo rs g ren , G en e K im , a n d J ez H u m b le fo u n d ed D O R A (D e vO p s
R e s ea rc h a n d A s s ig n m e n t).

In 2 0 1 7 , N ic o le F o rs g re n , G e n e K im , a n d J e z H u m b le p u b lis h ed "A c c elera te: B u ild in g


a n d S c alin g H ig h P erfo rm in g T ec h n o lo g y O rg a n iza tio n s ".

Agile development

A n a g ile m e th o d o lo g y is a n itera tiv e a p p ro ac h to s o ftw a re d ev elo p m en t. E a c h ite ra tio n o f


a g ile m e th o d o lo g y ta k es a s h o rt tim e in terva l o f 1 to 4 w e ek s . T h e a g ile d e ve lo p m en t
p ro c e s s is a lig n e d to d elive r th e c h a n g in g b u s in e s s re q u irem en t. It d is trib u te s th e
s o f tw a re w ith fa s ter a nd few e r c h a n g es .

The s in g le -p h a s e s o ftw a re d e ve lo p m e n t ta k es 6 to 18 m o n th s . In s in g le -p h a s e
d e ve lo p m e n t, a ll th e re q u irem en t g a th erin g a n d ris k s m a n a g e m e n t fa c to rs a re p re d ic te d
in itia lly.

T h e a g ile s o ftw a re d ev elo p m en t p ro c e s s freq u en tly ta k es th e f ee d b a c k o f w o rk a b le


p ro d u c t. T h e w o rk a b le p ro d uc t is d e liv ere d w ith in 1 to 4 w e ek s o f itera tio n .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

ITIL

ITIL is a n a b b re via tio n o f Information Technology Infrastructure Library.

It is a fra m e w o rk w h ic h h elp s th e IT p ro f es s io n a ls fo r d elive rin g th e b e s t s e rvic e s o f IT .


T h is fra m ew o rk is a s et o f b es t p ra c tic e s to c rea te a n d im p ro ve th e p ro c es s o f IT S M (IT
S erv ic e M a n a g em en t). It p ro vid es a fra m ew o rk w ith in a n o rg a n iza tio n , w h ic h h e lp s in
p la n n in g , m ea s u rin g , a n d im p lem e n tin g th e s e rv ic es o f IT .

T h e m a in m o tive o f th is f ra m ew o rk is th a t th e res o u rc es a re u s ed in s u c h a w a y s o th a t
th e c u s to m e r g e t th e b etter s e rvic e s a n d b u s in es s g et th e p ro fit.

It is n o t a s ta n d a rd b u t a c o llec tio n o f b es t p ra c tic e s g u id e lin e s .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Service Lifecycle in ITIL

S erv ic e S tra teg y.

S erv ic e D e s ig n .

S erv ic e T ra n s itio n .

S erv ic e O p era tio n .

C o n tin u a l S ervic e Im p ro v em en t.

Service Strategy

Service Strategy is th e firs t a n d in itia l s ta g e in th e lifec yc le o f th e IT IL fra m e w o rk . T h e


m a in a im o f th is s ta g e is th a t it o ffe rs a s tra teg y o n th e b a s is o f th e c u rre n t m a rk et
s c e n a rio an d b u s in es s p e rs p e c tiv e fo r th e s e rv ic e s o f IT .

T h is s ta g e m a in ly d efin es th e p lan s , p o s itio n , p a tte rs , a nd p e rs p ec tiv e w h ic h a re req u ire d


fo r a s e rv ic e p ro vid e r. It es ta b lis h es th e p rin c ip les a nd p o lic ie s w h ic h g u id e th e w h o le
lifec yc le o f IT s e rvic e .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

F o llo w in g a re th e v a rio u s es s e n tia l s e rvic e s o r p ro c es s e s w h ic h c o m e s u n d er th e Service


Strategy s ta g e :

F in a n c ia l M a n a g e m e n t

Dem a nd M an ag em ent

S e rv ic e P o rtfo lio M a n a g e m e n t

B u s in e s s R e la tio n sh ip M a n a ge m e n t

S tra te gy M a n a g e m e n t

Strategy Management:

T h e a im o f th is m a n a g em en t p ro c es s is to d e fin e th e o ffe rin g s , riv a ls , a n d c a p a b ilities o f


a s ervic e p ro v id e r to d e ve lo p a s tra teg y to s erve c u s to m ers .

A c c o rd in g to th e ve rs io n 3 (V 3 ) o f ITIL, th is p ro c e s s in c lu d e s th e f o llo w in g a c tivities f o r IT


s erv ic es :

Id e n tific a tio n of O p po rtu n itie s

Id e n tific a tio n of C o n s tra in ts

O rg a n iz a tion a l P o si tio n in g

P la n n in g

E xe c u tio n

F o llo w in g a re th e th re e s u b -p ro c es s es w h ic h c o m e s u n d e r th is m a n a g e m e n t p ro c e s s :

S tra te gic S erv ic e A ss e ss m e n t

S e rv ic e S tra teg y D e fin ition

S e rv ic e S tra teg y E xe c u tion

Financial Management:

T h is p ro c e s s he lp s in d eterm in in g a n d c o n tro llin g a ll th e c o s ts w h ic h a re a s s o c ia te d w ith


th e s erv ic es o f a n IT o rg a niz a tio n . It a ls o c o n ta in s th e fo llo w in g th ree b a s ic a c tivitie s :

1 . A c c o u n tin g 2 . c h a rg in g 3 . B u d g etin g

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

F o llo w in g a re th e fo u r s u b -p ro c e s s es w h ic h c o m e s u n d e r th is m a n a g e m e n t p ro c e s s :

F in a n c ia l M a n a g e m e n t S u p p ort

F in a n c ia l P la n n in g

F in a n c ia l A n a ly sis a n d R e po rtin g

S e rv ic e In v oi cin g

Demand Management

T h is m a n a g e m e n t p ro c e s s is c ritic a l a n d m o s t im p o rta n t in th is s ta g e. It h elp s th e s e rv ic e


p ro vid e rs to u n d e rs ta n d a n d p red ic t th e c u s to m e r d em a n d fo r th e IT s ervic es . D em a n d
m a n a g em e n t is a p ro c e s s w h ic h a ls o w o rk w ith th e p ro c e s s o f C a p a c ity M a n a g em en t.
F o llo w in g a re b a s ic o b je c tive s o f th is p ro c e s s :

T h is p roc e s s b a la n c e s th e re s ou rc e s d em a n d a n d s u p p ly .

It a lso m a n a g e s o r m a in ta in s th e qu a lity o f s e rv ic e.

A c c o rd in g to th e ve rs io n 3 ( V3 ) o f IT IL, th is p ro c e s s p erfo rm s th e fo llo w in g 3 a c tiv ities :

A n a ly sin g cu rre n t U sa ge o f IT se rv ic e s

A n tici pa te th e F u tu re D e m a n d s fo r th e S e rv ic e s o f IT .

In flu e n c in g C o n s u m p tion b y T e c h n ic a l o r F in a n c ia l M e a n s

F o llo w in g a re th e tw o s u b -p ro c e s s es w h ic h c o m e s u n d er th is m a n a g em en t p ro c es s :

D e m a n d P rog n os is

D e m a n d C o n tro l.

Business Relationship Management

T h is m a n a g e m e n t p ro c e s s is res p o n s ib le f o r m a in ta in in g a p o s itive a nd g o o d rela tio n s h ip


b e tw e en th e s ervic e p ro v id e r a n d th eir c u s to m e rs . It a ls o id e ntifies th e n ee d s o f a
c u s to m e r. A n d , th e n e n s u re th a t th e s ervic es a re im p lem en te d b y th e s e rv ic e p ro vid e r to
m ee t th o s e re q u ire m e n ts .

T h is p ro c e s s h a s b ee n re le a s ed as a n ew p ro c es s in th e IT IL 2 0 1 1 .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

A c c o rd in g to th e ve rs io n 3 (V 3 ) o f IT IL , th is p ro c e s s p erfo rm s th e f o llo w in g va rio u s


a c tivities :

T h is p roc e s s is u s e d to re pre se n t th e s e rv ic e pro v id e r to th e c u s to m e r in a po s itiv e m a n n e r.

T h is p roc e s s id e n tifie s th e bu sin e ss n e e d s o f a c u sto m e r.

It a ls o a c ts a s a m e d ia to r if th ere is a n y c a se o f co n flic tin g re q u ire m e n ts fro m th e d iffe re n t


b u s in e ss e s.

F o llo w in g a re th e s ix s u b -p ro c es s es w h ic h c o m e s u n d e r th is m a n a g e m e n t p ro c e s s :

M a in ta in C u s to m e r Re la tio n sh ip s

Id e n tify S e rv ic e R eq u ire m e n ts

S ig n u p C u s tom e rs to s ta n d a rd S e rv ic e s

C u sto m e r S a tisfa c tio n S u rv e y

H a n d le C u sto m e r C o m p la in ts

M o n ito r C u s to m e r C o m p la in ts .

Service Portfolio Management

T h is m a n a g em en t p ro c e s s d e fin es th e s et o f c u s to m er-o rie n te d s e rv ic e s w h ic h a re


p ro vid e d b y a s e rv ic e p ro vid e r to m e et th e c u s to m e r re q u irem en ts . T h e p rim a ry g o a l o f
th is p ro c e s s is to m a in ta in th e s e rv ic e p o rtfo lio .

F o llo w in g a re th e th re e typ es o f s ervic es u n d e r th is m a n a g e m e n t p ro c e s s :

1 . L ive S e rvic e s 2 . R e tired S ervic e s 3 . S e rv ic e P ip e lin e .

F o llo w in g a re th e th re e s u b -p ro c es s es w h ic h c o m e s u n d e r th is m a n a g e m e n t p ro c e s s :

D e f in e a n d A n a ly s e th e n e w s e rv ic e s o r c h a n ge d s erv ic e s of IT .

A p p rov e th e ch a n g e s or n ew IT se rv ic e s

S e rv ic e P o rtfo lio rev ie w .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Service Design

It is th e s ec o n d p h a s e o r a s ta g e in th e lifec yc le o f a s e rvic e in th e fra m e w o rk o f IT IL. T h is


s ta g e p ro vid e s th e b lu ep rin t fo r th e IT s ervic es . T h e m a in g o a l o f th is s ta g e is to d e s ig n
th e n ew IT s ervic es . W e c a n a ls o c h a n g e th e ex is tin g s erv ic es in th is s ta g e.

F o llo w in g a re the va rio u s es s e n tia l s ervic e s o r p ro c es s es w h ic h c o m e s u n d er the S ervic e


D e s ig n s ta g e:

S e rv ic e L e v e l M a n a g e m en t

C a p a c ity M a n a g e m e n t

A v a ila b ility M a n a ge m e n t

R isk M a n a g em en t

S e rv ic e C o n tin u ity M a n a g e m e n t

S e rv ic e C a ta log u e M a n a ge m e n t

In fo rm a tion S e c u rity M a n a g e m e n t

S u pp lie r M a n a g e m e n t

C o m p lia n c e M a n a g em e n t

A rc h ite c tu re M a n a g e m e n t

Service Level Management

In th is p ro c e s s , th e Service Level Manager is th e p ro c es s o w n e r. T h is m a n a g e m e n t is


fu lly re d e s ig n ed in the IT IL 2 0 1 1 .

S erv ic e L ev el M a n a g em en t d ea ls w ith the fo llo w in g tw o d iffe re n t typ e s o f a g ree m en ts :

O p e ra tio n a l L e v e l A gre e m e n t

S e rv ic e L e v e l A g re e m en t

A c c o rd in g to th e ve rs io n 3 ( V3 ) o f IT IL, th is p ro c e s s p erfo rm s th e fo llo w in g a c tivities :

It m a n a g e s a n d re v ie w s a ll th e IT se rv ic e s to m a tc h se rv ic e L ev el A g re e m e n ts .

It d e te rm in e s, n e g o tia tes , a n d a gre e s o n th e re q u ire m e n ts fo r th e n e w o r c h a n ge d IT se rv ic e s.

F o llo w in g a re th e fo u r s u b -p ro c e s s es w h ic h c o m e s u n d e r th is m a n a g e m e n t p ro c e s s :

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

M a in ten a n c e o f S L M f ra m e w o rk

Id e n tify in g th e re q u ire m e n ts o f s e rv ic e s

A g re e m e n ts s ig n -o ff a n d a c tiv a tio n o f th e IT se rv ic e s

S e rv ic e le v e l M o n ito rin g a n d R ep o rtin g .

Capacity Management

T h is m a n a g e m en t p ro c es s is a c c o u n ta b le fo r e n s u rin g th a t th e c a p a c ity o f th e IT s ervic e


c a n m ee t th e a g ree d c a p a c ity in a c o s t-effe c tive a n d tim e ly m a n n er. T his m a n a g em en t
p ro c e s s is a ls o w o rk ing w ith o th e r p ro c es s e s o f ITIL fo r a c c e s s in g th e c u rren t
in fra s tru c tu re o f IT .

A c c o rd in g to th e ve rs io n 3 ( V3 ) o f IT IL, th is p ro c e s s p erfo rm s th e fo llo w in g a c tivities :

It m a n a g e s th e p e rfo rm a n c e o f th e re s o u rce s so th a t th e IT se rv ic e s c a n e a s ily m e e t th e ir S L A


ta rg ets .

It c re a te s a n d m a in ta in s th e ca p a c ity p la n w h ic h a lig n s w ith th e stra te gi c p la n o f a n org a n iza tio n .

It re v ie w s th e p e rf orm a n c e of a se rv ic e a n d th e c a p a c ity o f c u rre n t s erv ic e p e riod ic a lly .

It u n d e rs ta n d s th e cu rre n t a n d fu tu re d e m a n d s of c u sto m e r for th e re so u rc e s of IT .

F o llo w in g a re th e fo u r s u b -p ro c e s s es w h ic h c o m e s u n d e r th is m a n a g e m e n t p ro c e s s :

B u s in e s s C a p a c ity M a n a ge m e n t

S e rv ic e C a pa c ity M a n a g e m e n t

C o m p o n e n t C a p a c ity M a n a g e m e n t

C a p a c ity M a n a g e m e n t R e po rtin g

Availability Management

In this p ro c es s , th e Availability Manager is th e o w n e r. T h is m a n a g e m en t p ro c e s s h a s a


res p o n s ib ility to e n s u re th a t th e s erv ic es o f IT m e et th e a g re ed a v a ila b ility g o a ls . T h is
p ro c e s s a ls o c o n firm s th a t th e s e rvic e s w h ic h a re n e w o r c h a n g e d d o es n o t a ffe c t th e
ex is tin g s e rvic e s .

It is u s e d fo r d e fin in g , p la n n in g , a n d a n a lys in g a ll th e a v a ila b ility a s p ec ts o f th e s e rv ic e s o f


IT .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

A c c o rd in g to th e ve rs io n 3 ( V3 ) o f IT IL, th is p ro c e s s c o n ta in s th e f o llo w in g tw o a c tiv ities :

R e a c tiv e A c tiv ity

P ro a c ti v e A c tiv ity

F o llo w in g a re th e fo u r s u b -p ro c e s s es w h ic h c o m e s u n d e r th is m a n a g e m e n t p ro c e s s :

D e s ig n th e IT se rv ic e s f or a v a ila b ility

A v a ila b ility T e stin g

A v a ila b ility M on itorin g a n d Re p o rtin g

Risk Management

In th is p ro c es s , th e Risk Manager is th e o w n er. T his m a n a g em en t p ro c es s a llo w s th e ris k


m a n a g er to c h e c k , a s s e s s , a n d c o n tro l the b u s in e s s ris k s . If a n y ris k is id en tifie d in th e
p ro c e s s o f b u s in es s , th e ris k o f th a t en try is c re a te d in th e IT IL R is k R e g is ter.

A c c o rd in g to th e v ers io n 3 (V 3 ) o f IT IL , th is p ro c e s s p e rfo rm s th e fo llo w in g a c tivities in


th e g iv en o rd e r:

It id e n tifie s th e th re a ts .

It fin d s th e p rob a b ility a n d im p a c t o f risk .

It c h e c k s th e w a y fo r re d u c in g th os e ri sk s.

It a lw a y s m o n itors th e ris k f a c tors .

F o llo w in g a re th e fo u r s u b -p ro c e s s es w h ic h c o m e s u n d e r th e R is k p ro c es s :

R isk M a n a g em en t S u p p ort

Im pa c t o n b u sin e s s a n d Ri sk a n a lys is

M o n ito rin g th e Ris ks .

A s se s sm e n t o f R e q u ire d R is k M itig a tio n

Service Catalogue Management (SCM)

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

In th is p ro c es s , th e Service Catalogue Manager is th e o w ne r. T h is m a n a g em en t p ro c es s


a llo w s th e C a ta lo g u e M a n a g er to g iv e th e h u g e in fo rm a tio n a b o ut a ll th e o th er
m a n a g em e n t p ro c es s e s .

It c o n ta in s th e s ervic e s in th e s e rv ic e o p e ra tio n p h a s e w h ic h a re p re s en tly a c tiv e.

It is a p ro c es s w h ic h c ertifie s th a t th e s e rvic e c a ta lo g u e is m a in ta in e d , p ro d u c ed , a n d
c o n ta in s a ll th e a c c u ra te in fo rm a tio n fo r a ll th e o p era tio n a l IT s e rv ic e s .

F o llo w in g a re th e tw o typ es o r a s p e c ts o f s erv ic e c ata lo g u e in IT IL fra m ew o rk :

B S C or B u sin e s s S e rv ic e C a ta lo g u e

T S C o r T ec h n ic a l S e rv ic e C a ta lo g u e

U n d er th is m a n a g em en t p ro c es s , n o s u b -p ro c e s s is s p e c ifie d o r d e fin e d .

Service Continuity Management

In th is p ro c es s , th e IT Service Continuity Manager is s p ec ified a s th e o w n e r. It a llo w s th e


c o n tin u ity m a n a g e r to m a in ta in th e ris k s w hic h c o u ld im p a c t o n th e s e rv ic e o f IT .

T h is p ro c es s is b o u n d w ith o th e r p ro c e s s es o f IT IL s u c h a s c a p ac ity a n d a va ila b ility


m a n a g em e n t to a c c e s s a n d p la n th e re s o u rc e s w h ic h a re n ee d e d to m a n a g e th e d e s ire d
s erv ic e lev el.

T h e IT S C M c o n s is ts o f th e fo llo w in g fo u r ac tiv itie s o r s ta g e s :

In itia tion

R e qu ire m e n ts a n d S tra te g y

Im ple m e n ta tio n

O n go in g O pe ra tio n

Information Security Management

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

In th is p ro c es s , th e Information Security Manager is s p e c ified a s the o w n er. T h e m a in


a im o f th is m a n a g em en t p ro c es s is to v erify th e c o n f id en tia lity, in te g rity, an d a va ila b ility
o f th e d a ta , in fo rm a tio n , a n d s erv ic es o f an IT o rg a n iz a tio n .

T h e m a in o b je c tive o f th is p ro c es s is to c o n tro l th e a c c es s o f in fo rm a tio n in th e


o rg a niz a tio n s .

A c c o rd in g to th e ve rs io n 3 ( V3 ) o f IT IL, th is p ro c e s s p erfo rm s th e fo llo w in g fo ur a c tivities :

1 . P la n 2 . Im p lem en t 3 . E va lu a tio n 4 . M a in ta in

A c c o rd in g to th e ve rs io n 3 (V 3 ) o f IT IL, fo llo w in g a re th e fo u r s u b -p ro c es s e s w h ic h c o m es
u n d e r th is m a n a g e m en t p ro c e s s :

D e s ig n o f S e c u rity co n tro ls

V a lid a tio n a n d T e s tin g o f S ec u rity

M a n a g e m e n t o f S e c u rity In c id e n ts

S e c u rity Re v ie w

Supplier Management

In th is p ro c e s s , th e Supplier Manager p la ys a ro le as a n o w n er. T h e s u p p lier m a n a g e r is


res p o n s ib le to v erify th a t all th e s u p p liers m ee t th eir c o n trac tu a l c o m m itm e n ts .

It a ls o w o rk s w ith th e F in a n c ia l a n d k n o w led g e m a n a g em en t, w h ic h h elp s in s elec tin g th e


s u p p lie rs o n th e b a s is o f p rev io u s k n o w led g e.

F o llo w in g a re th e va rio u s a c tivitie s w h ic h a re in v o lve d in th is p ro c es s :

It m a n a g e s th e su b -c on tra c te d su pp lie rs.

It m a n a g e s th e re la tio n s h ip w ith th e su pp lie rs.

It h el ps in im p le m e n tin g th e s u p p lie r p o lic y .

It a lso m a n a g e s th e s u p p lie r p o lic y a n d s u p po rts th e S C M IS .

It a lso m a n a g e s o r m a in ta in s th e pe rfo rm a n c e o f th e s u p pl iers .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

A c c o rd in g to th e v ers io n 3 (V 3 ) o f IT IL , fo llo w in g a re th e s ix s u b -p ro c e s s es w h ic h c o m es
u n d e r th is m a n a g e m en t p ro c e s s :

P ro v ide th e F ra m e w o rk o f S u p plie r M a n a g e m e n t

E v a lu a tion a n d s e le c tio n o f n e w c o n tra c ts a n d su pp lie rs

E sta b lis h th e n e w c o n tra c ts a n d s u p p lie rs

P ro ce s s th e s ta n d a rd o rd e rs

C o n tra c t a n d S u p p lie r R e v ie w

C o n tra c t R e n e w a l o r T e rm in a tion .

Compliance Management

In th is p ro c e s s , th e Compliance Manager p la ys a ro le a s a n o w n e r. T h is m a n a g em en t
p ro c e s s a llo w s th e c o m p lia n c e m a n a g e r to c h ec k a n d a d d res s a ll th e is s u es w h ic h a re
a s s o c ia te d w ith reg u la to ry a n d n o n -re g u la to ry c o m p lia n c e s .

U n d er th is c o m p lia n c e m a n a g em e n t p ro c es s , n o s u b -p ro c e s s is s p ec ifie d o r d e fin ed .

H ere, th e ro le o f C o m p lia n c e M a n a g er is to c e rtify th a t th e g u id elin es , le g a l re q u ire m en ts ,


a n d s ta n d a rd s a re b e in g f o llo w ed p ro p e rly o r n o t. T h is m a n a g er w o rk s in p a ra llel w ith th e
fo llo w in g th ree m a n a g e rs :

In fo rm a tion S e c u rity M a n a g e r

F in a n c ia l M a n a g e r

S e rv ic e D e s ign M a n a g e r.

Architecture Management

In th is p ro c es s , th e Enterprise Architect p la ys a ro le a s a n o w n er. T h e m a in a im o f


E n te rp ris e A rc h ite c t is to m a in ta in an d m a n a g e the a rc h ite c tu re o f th e E n te rp ris e .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

T h is m a n a g e m e n t p ro c es s h elp s th e Enterprise Architect b y ve rify in g th a t a ll th e


d e p lo yed s erv ic es a n d p ro d u c ts o p era te a c c o rd ing to th e s p ec if ie d a rc h ite c tu re b a s elin e
in th e E n te rp ris e .

T h is p ro c e s s a ls o d efin es a n d m a n a g e s a b a s e lin e fo r th e fu tu re te c h n o lo g ic a l
d e ve lo p m e n t.

U n d er th is A rc h itec tu re m a n a g e m e n t p ro c e s s , n o s u b -p ro c es s is s p ec ified o r d efin ed .

Service Transition

Service Transition is th e th ird s ta g e in th e life c yc le o f IT IL M a n a g em en t F ra m ew o rk .

T h e m a in g o a l o f th is s ta g e is to b u ild , te s t, a n d d ev elo p th e n e w o r m o d ified s erv ic es o f


IT . T h is s ta g e o f s e rv ic e lif ec y c le m a n a g e s th e ris k s to th e ex is tin g s ervic es . It a ls o
c e rtifies th a t th e v a lu e o f a b u s in es s is o b ta in ed .

T h is s ta g e a ls o m a k e s s u re th a t th e n e w a n d c h a n g e d IT s ervic es m ee t th e ex p e c ta tio n o f
th e b u s in es s a s d e fin ed in th e p re vio u s tw o s ta g e s o f s e rv ic e s tra teg y a n d s e rv ic e d e s ig n
in th e life c yc le .

It c a n a ls o ea s ily m a n a g e o r m a in ta in s th e tra n s itio n o f n e w o r m o d if ie d IT s erv ic es fro m


th e Service Design s ta g e to Service Operation s ta g e.

T h ere a re fo llo w in g v a rio u s es s e n tia l s e rv ic es o r p ro c e s s es w h ic h c o m e s u n d e r th e


S erv ic e T ra n s itio n s ta g e :

Ch ang e M a nag em ent

R e lea se a n d D e p lo ym e n t M a n a ge m e n t

S e rv ic e A s se t a n d C o n fig u ra tio n M a n a g e m e n t

K n o w le dg e M a n a g e m e n t

P ro je c t M a n a g em en t (T ra n s ition P la n n in g a n d S u p p ort)

S e rv ic e V a lid a tio n a n d T e stin g

C h a n g e E v a lu a tio n

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Change Management

In th is p ro c e s s , th e Change Manager p lay s a ro le a s a n o w n er. T h e C h a n g e M an a g er


c o n tro ls o r m a n a g e s th e s e rvic e lifec yc le o f a ll c h a n g e s . It a ls o a llo w s th e c h a n g e
M a n a g er to im p lem en t a ll th e es s e n tia l c h a n g e s to b e re q u ired w ith th e les s d is ru p tio n o f
IT s erv ic es .

T h is m a n a g e m e n t p ro c e s s a ls o a llo w s its o w n er to rec o g n iz e a n d s to p a n y u n in te n d e d


cha ng e ac tiv ity. A c tu a lly, th is m anagem ent p ro c es s is tig h tly bo und w ith th e
p ro c e s s "Service Asset and Configuration Management".

F o llo w in g a re th e th re e typ es o f c h a n g e s w h ic h a re d efin ed b y th e IT IL .

N orm a l C h a n g e

S ta n da rd C h a n ge

E m e rg e n c y C h a n ge

A ll th e s e c h a n g es a re a ls o k n o w n a s th e C h a n g e M o d els .

A c c o rd in g to th e ve rs io n 3 (V 3 ) o f IT IL, fo llo w in g a re th e elev en s u b -p ro c e s s es w h ic h


c o m es u n d e r th is C h a ng e m a n a g e m e n t p ro c e s s :

C h a n g e M a n a g e m e n t S u pp o rt

R F C ( Re q u e s t f or C h a n g e ) L o g g in g a n d R e v ie w

C h a n g e A ss e ss m e n t by th e O w n e r (C h a n ge M a n a g e r)

A s se s s a n d Im p le m e n t th e E m e rge n c y C h a n g es

A s se s sm e n t o f c h a n g e P ro po s a ls

C h a n g e S c h e du lin g a n d P la n n in g

C h a n g e A ss e ss m e n t by th e C A B

C h a n g e D e v e lop m e n t A u th o riza tion

Im ple m e n ta tio n or D e p lo y m e n t of C h a n g e

M in o r c h a n g e D e p lo ym e n t

P o st Im ple m e n ta tio n Re v ie w a n d c h a n g e c lo su re

Release and Deployment Management

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

In th is p ro c e s s , th e Release Manager p la ys a ro le a s a n o w n er. S o m etim e s , th is p ro c es s is


a ls o k n o w n a s th e 'IT IL R e lea s e M a n a g e m e n t P ro c es s '.

T h is p ro c e s s a llo w s th e R ele a s e M a n a g e r fo r m a n a g in g , p la n n in g , a n d c o n tro llin g th e


u p d a te s & re le a s es o f IT s e rv ic e s to th e rea l en v iro n m e n t.

F o llo w in g a re th e th re e typ es o f re lea s es w h ic h a re d e fin ed b y th e IT IL.

M in o r re le a se

M a jo r Re le a s e

E m e rg e n c y R e le a se

A c c o rd in g to th e v ers io n 3 (V 3 ) o f IT IL , fo llo w in g a re th e s ix s u b -p ro c e s s es w h ic h c o m es
u n d e r th is C h a n g e m a n a g e m e n t p ro c e s s :

R e lea se M a n a g e m e n t S u pp o rt

R e lea se P la n n in g

R e lea se b u ild

R e lea se D e plo y m e n t

E a rly Li fe S u p p ort

R e lea se C lo su re

Service Asset and Configuration Management

In th is p ro c e s s , th e Configuration Manager p la ys a ro le a s a n o w n er.

T h is m a n a g e m e n t p ro c e s s is a c o m b in a tio n o f tw o im p lic it p ro c e s s es :

A s se t M a n a g e m e n t

C o n figu ra tion M a n a g e m e n t

T h e a im o f th is m a n a g em en t p ro c e s s is to m a n ag e th e in fo rm a tio n a b o u t th e (C Is )
C o n fig u ra tio n Ite m s w h ic h a re n ee d e d to d e liv er th e s e rvic e s o f IT . It c o n ta in s in f o rm a tio n
a b o u t v ers io n s , b a s elin es , a n d th e rela tio n s h ip s b e tw e en a s s ets .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

A c c o rd in g to th e ve rs io n 3 (V 3 ) o f IT IL , fo llo w in g a re th e fiv e s u b -p ro c e s s es w h ic h c o m es
u n d e r th is C h a n g e m a n a g e m e n t p ro c e s s :

P la n n in g a n d M a n a g e m en t

C o n figu ra tion C o n tro l a n d Ide n tifi ca ti on

S ta tu s A c c o u n tin g a n d re po rtin g

A u d it a n d V e ri fic a tion

M a n a g e th e In fo rm a tio n

Knowledge Management

In th is p ro c es s , th e Knowledge Manager p la ys a ro le a s a n o w n er. T h is m a n a g em en t


p ro c e s s h e lp s th e K n o w led g e M a n a g er b y a n a lys in g , s to rin g a n d s h a rin g th e k n o w le d g e
a n d th e d a ta o r in f o rm a tio n in a n e ntire IT o rg a n iz atio n .

U n d er th is K n o w led g e M a n a g e m e n t P ro c es s , n o s u b -p ro c e s s is s p e c ified o r d ef in e d .

Transition Planning and Support

In th is p ro c es s , th e Project Manager p la ys a ro le a s a n o w n er. Th is m a n a g em en t p ro c es s


m a n a g es th e s e rvic e tra n s itio n p ro je c ts . S o m e tim es , th is p ro c es s is a ls o k n o w n a s th e
P ro je c t M a n a g em en t P ro c e s s .

In th is p ro c es s , th e p ro je c t m an a g er is a c c o u n ta b le fo r p la n n in g a n d c o o rd in a tin g
res o u rc es to d e p lo y IT s e rv ic e s w ith in tim e, c o s t, a n d q u a lity es tim a tes .

A c c o rd in g to th e ve rs io n 3 ( V3 ) o f IT IL, th is p ro c e s s p erfo rm s th e fo llo w in g a c tivities :

It m a n a g e s th e iss u e s a n d risk s.

It d e fin e s th e ta sk s a n d a c tiv itie s w h ic h a re to b e p e rfo rm e d by th e s e pa ra te p ro c es se s .

It m a ke s a g ro u p w ith th e s a m e typ e o f re le a se s .

It m a n a g e s ea c h in d iv id u a l d e plo y m e n t a s a s e pa ra te p ro je c t.

A c c o rd in g to th e ve rs io n 3 (V 3 ) o f IT IL, fo llo w in g a re th e fo u r s u b -p ro c es s e s w h ic h c o m es
u n d e r th is P ro jec t m a n a g e m e n t p ro c e s s :

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

In itia te th e P ro je c t

P la n n in g a n d C o o rd in a tion o f a P ro je c t

P ro je c t C o n trol

P ro je c t C o m m u n ic a tio n a n d R e p ortin g

Service Validation and Testing

In th is p ro c e s s , th e Test Manager p la ys a ro le a s a n o w n er. T h e m a in g o a l o f th is


m a n a g em e n t p ro c e s s is th a t it v erifies w h e th e r th e d ep lo yed relea s e s a n d th e res u ltin g IT
s erv ic e m ee ts th e c u s to m e r e xp ec ta tio n s .

It als o c h ec k s w h eth e r the o p e ra tio n s o f IT a re a b le to s u p p o rt th e ne w IT s e rv ic es a fter


th e d e p lo ym e n t. T h is p ro c es s a llo w s th e T es t M a n a g er to re m o ve o r d elete th e e rro rs
w h ic h a re o b s e rve d a t th e firs t p h as e o f th e s erv ic e o p era tio n s ta g e in th e life c yc le .

It p ro vid e s th e q u a lity a s s u ra n c e fo r b o th the s e rv ic e s a n d c o m p o n en ts . It a ls o id en tifies


th e ris k s , e rro rs a n d is s u es , an d th e n th e y a re e lim in a te d th ro u g h this c u rren t s ta g e.

T h is m a n a g e m e n t p ro c e s s h a s b ee n re le a s ed in th e ve rs io n 3 o f IT IL a s a n e w p ro c e s s .

F o llo w in g a re th e va rio u s a c tivitie s w h ic h a re p erfo rm ed u n d er th is p ro c es s :

V a lid a tio n a n d T e s t M a n a g e m e n t

P la n n in g a n d D e s ign

V e rific a tio n o f T e s t P la n a n d D e si gn

P re pa ra tion of th e T e st E n v iro n m e n t

T e s tin g

E v a lu a te Exit C rite ria a n d Re p o rt

C le a n u p a n d c los u re

A c c o rd in g to th e ve rs io n 3 (V 3 ) o f IT IL, fo llo w in g a re th e fo u r s u b -p ro c es s e s w h ic h c o m es
u n d e r th is m a n a g e m en t p ro c e s s :

T e s t M o d e l D e fin ition

R e lea se C om po n e n t A c q u isitio n

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

R e lea se T e s t

S e rv ic e A c c e p ta n c e T e s tin g

Change Evaluation

In th is p ro c es s , th e Change Manager p la ys a ro le a s a n o w n e r. T h e g o a l o f th is
m a n a g em e n t p ro c es s is to a vo id th e ris k s w h ic h a re a s s o c ia te d w ith th e m a jo r c h a n g es
fo r red u c in g th e c h a n c es o f fa ilu res .

T h is p ro c es s is s ta rted a n d c o n tro lle d b y th e c ha n g e m a n a g e m e n t a nd p e rfo rm e d b y th e


c h a n g e m a n a g er.

F o llo w in g a re th e va rio u s a c tivitie s w h ic h a re p erfo rm ed u n d er th is p ro c es s :

It c a n e a s ily id e n tify th e risk s.

It e v a lu a te s th e e f fe c ts o f a c h a n g e .

A c c o rd in g to th e ve rs io n 3 (V 3 ) o f IT IL, fo llo w in g a re th e fo u r s u b -p ro c es s e s w h ic h c o m es
u n d e r th is m a n a g e m en t p ro c e s s :

C h a n g e th e E v a lu a tio n p ri or to P la n n in g

C h a n g e th e E v a lu a tio n p ri or to B u ild

C h a n g e th e E v a lu a tio n p ri or to D e p loy m e n t

C h a n g e th e E v a lu a tio n p ri or a f te r D e p lo y m en t

Service Operations

Service Operations is th e fo u rth s ta g e in th e life c yc le o f IT IL . T h is s ta g e p ro vid e s th e


g u id elin es a b o u t h o w to m ain ta in a n d m a n a g e th e s ta b ility in s erv ic es o f IT , w h ic h h e lp s
in a c h iev in g th e a g reed le ve l ta rg e ts o f s e rvic e d e liv ery.

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

T h is s ta g e is als o res p o n s ib le fo r m o n ito rin g th e s erv ic es o f IT a nd f u lfilling th e req u es ts .


In th is s ta g e, a ll th e p la ns o f tra ns itio n a n d d es ig n a re m ea s u red a nd ex ec u ted fo r th e
a c tu a l e ffic ien c y. It is a ls o re s p o n s ib le fo r res o lvin g th e in c id en ts a n d c a rryin g o u t th e
o p era tio n a l ta s k s .

T h ere a re f o llo w ing v a rio u s e s s en tia l s ervic e s o r p ro c es s e s w h ic h c o m e s u n d e r th e s ta g e


o f S e rv ic e O p e ra tio n s :

E vent M an ag em ent

Acces s M a nag em ent

P ro ble m M a n a g e m e n t

In c id en t M a n a ge m e n t

A p p lic a tio n M a n a g e m e n t

T e c h n ic a l M a n a g e m e n t

Event Management

In th is p ro c e s s , th e IT Operations Manager p la ys a ro le as a n o w n e r. T h e m a in g o a l o f th is
m a n a g em e n t p ro c e s s is to m a k e s u re th a t th e s erv ic es o f IT a n d C Is a re c o n s ta n tly
m o n ito red . It a ls o h e lp s in c a te g o rizin g th e e ve n ts s o th a t a p p ro p ria te a c tio n c a n b e ta k en
if n ee d e d .

In th is M a n a g em en t p ro c es s , th e p ro c es s o w n e r ta k e s a ll th e res p o n s ib ilities o f
p ro c e s s es a n d fu n c tio n s fo r th e m u ltip le s e rv ic e o p e ra tio n s .

F o llo w in g a re th e va rio u s p u rp o s es o f E ve n t M a n a g e m e n t P ro c es s :

It a llow s th e IT O p e ra tio n s M a n a ge r to de c id e th e a p p rop ria te a c tio n fo r th e e v e n ts.

It a lso p ro v id e s th e trig g er fo r th e e xe c u tio n o f m a n a g e m e n t a c tiv itie s o f m a n y s e rv ic e s.

It h el ps in p rov idin g th e ba sis fo r s e rv ic e a ss u ra n c e a n d se rv ic e im p rov em en t.

T h e E v en t M o n ito rin g T o o ls a re d iv id ed in to tw o typ es , w h ic h a re d efin ed b y th e V ers io n 3


(V 3 ) o f IT IL :

A c tiv e M o n ito rin g T o ol

P a s siv e M on ito rin g T o o l

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

F o llo w in g a re th e th re e typ es o f ev en ts w h ic h a re d e fin ed b y th e IT IL :

W a rn in g

In fo rm a tion a l

E xc e ptio n

A c c o rd in g to th e ve rs io n 3 (V 3 ) o f IT IL, fo llo w in g a re th e fo u r s u b -p ro c es s e s w h ic h c o m es
u n d e r th is m a n a g e m en t p ro c e s s :

E v e n t M o n ito rin g a n d N otific a tio n

F irs t le v e l C o rre la tio n a n d Ev en t F ilte rin g

S e c o n d le v e l C o rre la tion a n d R e sp o n s e S e le c tio n

E v e n t Re v i ew a n d C lo su re .

Access Management

In th is p ro c e s s , th e Access Manager p la ys a ro le a s a n o w n e r. T h is typ e o f M a n a g em en t


p ro c e s s is a ls o s o m etim e s c a lled a s th e 'Identity Management' o r 'Rights Management'.

T h e ro le o f a p ro c es s m a n a g er is to p ro vid e th e rig h ts to u s e th e s ervic es f o r a u th o rize d


u s ers .

In th is M a n a g em en t p ro c es s , th e o w n e r o f a p ro c es s fo llo w s th o s e p o lic ie s a n d
g u id elin es w h ic h a re d efin e d b y th e (IS M ) ' Information Security Management'.

F o llo w in g a re th e s ix a c tiv itie s w h ic h c o m e u n d er th is m a n a g em e n t p ro c e s s a n d a re


fo llo w e d s eq u en tia lly:

R e qu e st A c c e s s

V e rific a tio n

P ro v idin g Rig h ts

M o n ito rin g or O b s e rv in g th e Id e n tity S ta tu s

L o gg in g a n d T ra c k in g S ta tu s

R e stri ctin g o r Re m o v in g R ig h ts

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

A c c o rd in g to the v ers io n 3 (V 3 ) o f IT IL, fo llo w in g a re th e tw o s u b -p ro c e s s es w h ic h c o m es


u n d e r th is m a n a g e m en t p ro c e s s :

M a in ten a n c e o f C a ta lo g u e o f U s e r Ro le s a n d A c c e s s p rofi les

P ro ce s sin g of U se r A cc e s s R e q u e sts .

Problem Management

In this p ro c es s , th e Problem Manager p la ys a ro le a s a n o w n e r. T h e m a in g o a l o f th is


m a n a g em e n t p ro c es s is to m a in ta in o r m a n a g e th e life c yc le o f a ll th e p ro b lem s w h ic h
h a p p en in the s erv ic es o f IT . In th e IT IL F ra m e w o rk , th e p ro b lem is re ferred to as " an
unknown cause or event of one or more incident".

It h e lp s in fin d in g th e ro o t c a u s e o f th e p ro b le m . It a ls o h e lp s in m ain ta in in g th e
in fo rm a tio n a b o u t th e p ro b le m s .

F o llo w in g a re th e ten a c tivities w h ic h c o m e u n d e r th is m a n a g em e n t p ro c es s a n d a re


fo llo w e d s eq u en tia lly. Th e s e te n a c tiv ities a re a ls o c a lled a s a lif ec yc le o f P ro b lem
M a n a g em e n t:

P ro ble m D e te c tio n

P ro ble m L o g g in g

C a teg o riza tio n o f a P ro b le m

P rio ritiza tio n o f a P ro b le m

In v e stig a tio n a n d D ia g n o s is o f a P ro b le m

Id e n tify W ork a rou n d

R a isi n g a K n o w n E rro r Re c o rd

R e so lu tio n o f a P ro b le m

P ro ble m C lo su re

M a jo r P ro b le m Re v i ew

Incident Management

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

In th is p ro c es s , th e Incident Manager p la ys a ro le a s a n o w n er. T h e m a in g o a l o f th is


m a n a g em e n t p ro c es s is to m ain ta in o r m a n a g e the life c yc le o f a ll th e in c id e n ts w h ic h
h a p p en in th e s e rvic e s o f IT .

A n in c id e n t is a te rm w h ic h is d e fin ed a s th e fa ilu re o f an y C o n fig u ra tio n Ite m (C I) o r


red u c tio n in th e q u a lity o f s ervic es o f IT .

T h is m a n a g em en t p ro c e s s m a in ta in s th e s atis fa c tio n o f u s e rs b y m a n a g in g th e q u a lities


o f IT s e rv ic e . It in c re a s es th e vis ib ility o f in c id en ts .

A c c o rd in g to th e ve rs io n 3 ( V3 ) o f IT IL, fo llo w in g a re th e n in e s u b -p ro c es s e s w h ic h c o m es
u n d e r th is m a n a g e m en t p ro c e s s :

In c id en t M a n a ge m e n t S u p po rt

In c id en t Lo g g in g a n d C a te g oriza tio n

P ro -a c tiv e U s e r In f orm a tio n

F irs t L e v e l S u p po rt for Im m e di a te In c id e n t R e so lu tio n

S e c o n d L e v e l S u p p o rt fo r In c ide n t R e so lu tio n

H a n d lin g o f M a jo r In c ide n ts

In c id en t M on ito rin g a n d Es c a la tio n

C lo s u re a n d E v a lu a tio n o f In c id en t

M a n a g e m e n t Re p o rtin g of In c id e n t

Application Management

In th is fu n c tio n , th e Application Analyst p la ys a ro le a s a n o w n er.

T h is m a n a g e m e n t fu n c tio n m a in ta in s o r im p ro v es th e a p p lic a tio n s th ro u g h o u t th e en tire


s erv ic e lif ec y c le. T h is fu n c tio n p la ys a n im p o rta n t an d e s s en tia l ro le in th e a p p lic a tio n s
a n d s ys tem m a n a g em en t.

U n d er this m a n a g e m e n t fu n c tio n , n o s u b -p ro c es s is s p e c ifie d o r d e fin ed . B u t, th is


m a n a g em e n t fu n c tio n in to th e fo llo w in g s ix a c tivitie s o r s ta g es :

1 . D efin e 2 . D e s ig n 3 . B u ild 4 . D e p lo y 5 . O p era te 6 . O p tim iz e

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Technical Management

In th is f u n c tio n , th e Technical Analyst p la ys a ro le a s a n o w n er. T h is fu n c tio n a c ts a s


s ta n d a lo n e in th e IT o rg a n iz a tio n s , w h ic h b a s ic a lly c o n s is ts o f te c h n ic a l p e o p le a n d
tea m s . T h e m a in g o a l o f th is fu n c tio n is to p ro vid e o r o ffer th e tec h n ic a l ex p e rtis e. A n d , it
a ls o s u p p o rts f o r m a in ta in in g o r m a n ag in g o f IT in fra s tru c tu re th ro u g h o u t th e en tire
lifec yc le o f a s e rv ic e .

T h e ro le o f th e T e c h n ic al A n a lys t is to d e ve lo p th e s k ills , w h ic h a re req u ire d to

o p era te th e d a y-to -d a y o p era tio n s o f IT in fra s tru c tu re. U n d er th is m a n a g em en t fu n c tio n ,


n o s u b -p ro c es s is s p e c ified o r d efin e d .

Continual Service Improvement

It is th e fifth s ta g e in th e life c yc le o f IT IL s e rvic e . T h is s ta g e h e lp s to id en tif y a n d


im p lem en t s tra teg ie s , w h ic h is u s ed fo r p ro v id in g b e tte r s e rv ic e s in fu tu re .

F o llo w in g a re th e va rio u s o b je c tiv es o r g o a ls u n d er th is C S I:

It im p ro v e s th e q u a lity s erv ic e s by le a rn in g from th e p a st fa ilu re s .

It a ls o h e lp s in a n a ly zin g a n d re v ie w in g th e im p ro v e m e n t o p p ortu n itie s in e v e ry p h a se of th e


s erv ic e life c y c le .

It a lso e v a lu a te s th e s e rv ic e le v e l a c h ie v e m e n t re su l ts .

It a ls o d e s crib e s th e b e st gu ide lin e s to a ch ie v e th e la rg e -s c a le im p rov e m e n ts in th e q u a lity o f


s erv ic e .

It a ls o h e lp s in d e s c rib in g th e co n ce p t of K P I, w h ic h is a p roc e s s m e tric s -d riv e n fo r e v a lu a tin g a n d


re v ie w in g th e p e rfo rm a n c e o f th e s erv ic e s .

T h ere a re f o llo w ing v a rio u s e s s en tia l s ervic e s o r p ro c es s e s w h ic h c o m e s u n d e r th e s ta g e


o f C S I:

S e rv ic e Re v ie w

P ro ce s s E v a lu a tio n

D e f in ition o f C S I In itia tiv e s

M o n ito rin g of C S I In itia tiv e s

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

T h is s ta g e fo llo w s th e f o llo w ing s ix -s tep a p p ro a c h ( p re-d ef in e d q u e s tio n ) f o r p la n n in g ,


rev ie w in g , a n d im p lem en tin g th e im p ro ve m e n t p ro c e s s :

Service Review

In th is p ro c es s , th e CSI Manager p la ys a ro le a s a n o w n er. T h e m a in a im o f th is


m a n a g em e n t p ro c es s is to re vie w th e s erv ic es o f b u s in es s a n d in fras tru c tu re o n a re g u la r
b a s is .

S o m etim es , th is p ro c e s s is a ls o c a lled a s " ITIL Service Review and Reporting". U n d er th is


m a n a g em e n t p ro c es s , n o s u b -p ro c e s s is s p ec ifie d o r d e fin ed .

Process Evaluation

In th is p ro c es s , th e Process Architect p la ys a ro le a s a n o w n er. Th e m a in a im o f th is


m a n a g em e n t p ro c e s s is to e va lu a te th e p ro c e s s es o f IT s ervic es o n a reg u la r b a s is . T h is
p ro c e s s a c c e p ts in p u ts fro m th e p ro c es s o f Service Review a n d p ro v id es its o u tp u t to th e
p ro c e s s o f Definition of CSI Initiatives.

In this p ro c es s , th e p ro c e s s o w n e r is re s p o n s ib le fo r m a in ta in in g a n d m a n a g in g th e
p ro c e s s a rc h ite c tu re a n d a ls o en s u res th a t a ll th e p ro c es s e s o f s ervic es c o o p e rate in a
s ea m les s w a y.

A c c o rd in g to th e ve rs io n 3 (V 3 ) o f IT IL , fo llo w in g a re th e fiv e s u b -p ro c e s s es w h ic h c o m es
u n d e r th is m a n a g e m en t p ro c e s s :

P ro ce s s M a n a g e m e n t s u p p ort

P ro ce s s B e n c h m a rk in g

P ro ce s s M a tu rity A s se s sm e n t

P ro ce s s A u d it

P ro ce s s C o n tro l a n d Re v ie w

Definition of CSI Initiatives

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

In th is p ro c e s s , th e CSI Manager p la ys a ro le a s a n o w n e r. Th is m a n ag em e nt p ro c es s is
a ls o c a lled /k n o w n a s a " Definition of Improvement Initiatives".

D e fin itio n o f C SI In itia tive s is a p ro c es s , w h ic h is u s e d f o r d e s c rib in g th e p a rtic u la r


in itia tiv es w h o s e a im is to im p ro ve th e q u a lities o f IT s e rvic e s a n d p ro c es s e s .

In th is p ro c es s , th e C S I M an a g er (p ro c e s s o w n er) is a c c o u n ta b le fo r m a n a g in g a n d
m a in ta in in g th e C S I reg is ters a n d a ls o h elp s in ta k in g th e g o o d d e c is io n s reg a rd in g
im p ro ve m en t in itia tive s .

U n d er th is m a n a g em en t p ro c es s , n o s u b -p ro c e s s is s p e c ifie d o r d e fin e d .

Monitoring of CSI Initiatives

In th is p ro c e s s , th e CSI Manager p la ys a ro le a s a n o w n e r. Th is m a n ag em e nt p ro c es s is
a ls o c a lled a s a " CSI Monitoring ".

U n d er th is m a n a g em en t p ro c es s , n o s u b -p ro c e s s is s p e c ifie d o r d e fin e d .

Advantages of ITIL

F o llo w in g a re th e va rio u s a d v a n ta g es o r b e n efits o f IT IL :

O n e of th e be s t a d v a n ta g e s of IT IL is th a t it h elp s in in cre a s in g th e c u s tom e r s a tisfa c tio n .

It a llow s m a n a ge rs to im p rov e th e d e c is ion -m a kin g p roc e s s.

It is a ls o u se d fo r c re a tin g th e cle a r stru c tu re o f a n o rga n iza tio n .

It a lso h e lp s m a n a ge rs by c o n tro llin g th e i n fra s tru c tu re s erv ic e s .

It im p ro v e s th e in te ra c tio n b e tw e e n th e c u s tom ers a n d th e s e rv ic e p ro v ide r.

W i th th e h e lp o f th is fra m e w o rk, se rv ic e d e liv e ry is a ls o im pro v e d .

It e s ta bl ish e s th e fra m e w ork of IT S M f or th e o rga n iza tio n .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

DevOps Process

The DevOps process flow

T h e D e vO p s p ro c es s flo w is a ll a b o u t a g ility a n d a u to m a tio n . E a c h p h a s e in th e D e vO p s


lifec yc le fo c u s e s o n c lo s in g th e lo o p b e tw e en d e ve lo p m e n t a n d o p e ra tio n s a n d d riv in g
p ro d u c tio n th ro u g h c o n tin u o u s d ev elo p m e n t, in teg ra tio n , tes tin g , m o n ito rin g and
fe ed b a c k , d elive ry, a n d d e p lo ym e n t.

D e v O ps P ro c es s F lo w (C lic k on im a g e to m od ify

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Continuous development

C o n tin u o u s d e ve lo p m en t is a n u m b re lla term th a t d es c rib es th e ite ra tive p ro c e s s fo r


d e ve lo p in g s o ftw a re to b e d e liv ere d to c u s to m e rs . It inv o lv es c o n tin u o u s in te g ra tio n ,
c o n tin u o u s te s tin g , c o n tin u o u s d e liv ery, a n d c o n tin uo u s d e p lo ym en t.

B y im p lem en tin g a c o n tin uo u s d e ve lo p m e n t s tra te g y an d its a s s o c ia ted s u b -s tra teg ie s ,


b u s in e s s es c a n a c h iev e f as te r d elive ry o f n e w fea tu res o r p ro d u c ts th a t a re o f h ig h er
q u a lity a n d lo w e r ris k , w ith o u t ru nn in g in to s ig n ific a n tly b a n d w id th b a rrie rs .

Continuous integration

C o n tin u o u s in te g ra tio n (C I) is a s o ftw a re d e ve lo p m e n t p ra c tic e c o m m o n ly a p p lie d in th e


D e vO p s p ro c e s s flo w . D e ve lo p e rs re g u la rly m e rg e th e ir c o d e c h a n g e s in to a s h a re d
rep o s ito ry w h e re th o s e u p d a te s a re a u to m a tic a lly tes te d .

C o n tin u o u s in te g ra tio n e n s ure s th e m o s t u p -to -d a te a nd v a lid a te d c o d e is a lw ay s rea d ily


a va ila b le to d ev elo p ers . C I he lp s p rev en t c o s tly d e la ys in d e ve lo p m en t b y a llo w in g

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

m u ltip le d ev elo p ers to w o rk o n th e s a m e s o u rc e c o d e w ith c o n fid en c e, ra th e r th a n w a itin g


to in te g ra te s ep a ra te s e c tio n s o f c o d e a ll a t o n c e o n re lea s e d a y.

T h is p ra c tic e is a c ru c ia l c o m p o n en t o f th e D e vO p s p ro c es s flo w , w hic h a im s to c o m b in e


s p e ed a n d a g ility w ith re lia b ility a n d s ec u rity.

Continuous testing

C o n tin u o u s tes tin g is a v erif ic a tio n p ro c e s s th a t a llo w s d e ve lo p e rs to en s u re th e c o d e


a c tu a lly w o rk s th e w a y it w a s in ten d ed to in a live e n viro n m en t. T e s tin g c a n s u rfa c e b u g s
a n d p a rtic u la r a s p ec ts o f th e p ro d u c t th a t m a y n ee d fix in g o r im p ro v em e n t, a n d c a n b e
p u s h e d b a c k to th e d ev elo p m en t s ta g es fo r c o n tin u e d im p ro ve m e n t.

Continuous monitoring and feedback

T h ro u g h o u t th e d ev elo p m en t p ip e lin e , yo u r tea m s h o u ld h a v e m ea s u res in p la c e fo r


c o n tin u o u s m o n ito rin g a n d fee d b a c k o f th e p ro d u c ts a n d s ys tem s . A g a in , th e m a jo rity o f
th e m o n ito rin g p ro c e s s s h o u ld b e a u to m a ted to p ro v id e c o n tin u o u s f ee d b a c k .

T h is p ro c es s a llo w s IT o p era tio ns to id e n tify is s u e s a n d n o tify d ev elo p ers in rea l tim e .


C o n tin u o u s f ee d b a c k en s u res h ig h er s ec u rity a n d s ys tem re lia b ility a s w ell a s m o re a g ile
res p o n s es w h en is s u es d o a ris e s .

Continuous delivery

C o n tin u o u s d e liv ery (C D ) is th e n ex t lo g ic a l s te p fro m C I. C o d e c h a n g es are a u to m a tic a lly


b u ilt, tes te d , a n d p a c k a g ed fo r re lea s e in to p ro d u c tio n . T h e g o a l is to re le a s e u p d a te s to
th e u s ers ra p id ly a n d s u s ta in a b ly.

T o d o th is , C D a u to m a te s th e rele a s e p ro c e s s (b u ild in g o n th e a u to m a ted te s tin g in C I) s o


th a t n ew b u ild s c a n b e relea s e d a t th e c lic k o f a b u tto n .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Continuous deployment

F o r th e s ea s o n e d D ev O p s o rg a n iz a tio n , c o n tin u o u s d e p lo ym e nt m a y b e th e b e tter o p tio n


o v er C D . C o n tin u o u s d ep lo ym en t is th e f u lly a u to m a ted ve rs io n o f C D w ith n o h u m a n (i.e. ,
m a n u al) in terve n tio n n e c e s s a ry.

In a c o n tin u o u s d e p lo ym e n t p ro c e s s , e ve ry va lid a ted c h a n g e is a u to m a tic a lly re le a s ed to


u s ers . T h is p ro c es s e lim in a te s th e n ee d fo r s c h ed u le d rele as e d a ys a n d ac c e lera te s th e
fe ed b a c k lo o p . S m a ller, m o re freq ue n t rele a s es a llo w d e ve lo p e rs to g e t u s er fee d b a c k
q u ic k ly a n d a d d res s is s u es w ith m o re a g ility a n d a c c u ra c y.

C o n tin u o u s d ep lo ym en t is a g re a t g o a l fo r a D e vO p s tea m , b u t it is b es t a p p lie d a fter th e


D e vO p s p ro c es s h a s b e en iro n ed o u t. F o r c o n tin u o u s d ep lo ym en t to w o rk w ell,
o rg a niz a tio n s n e ed to h a v e a rig o ro u s a n d relia b le a u to m a ted tes tin g e nv iro n m e n t. If
yo u ’ re n o t th ere ye t, s ta rtin g w ith C I a n d C D w ill h e lp yo u g e t th ere.

Continuous Delivery
C o n tin u o u s d e liv ery is a n a p p ro a c h w h ere te a m s re lea s e q u a lity p ro d u c ts fre q u e n tly a n d
p re d ic ta b ly fro m s o u rc e c o d e rep o s ito ry to p ro d u c tio n in a n a u to m a ted f a s h io n .

S o m e o rg a n iza tio n s rele a s e p ro d u c ts m a n u a lly b y h a n d in g th em o ff fro m o n e te a m to th e


n ex t, w h ic h is illu s tra te d in th e d ia g ra m b elo w . T yp ic a lly, d e ve lo p e rs a re a t th e left en d o f
th is s p e c tru m a n d o p era tio n s p e rs o n n el a re a t th e re c e ivin g e n d . T h is c rea tes d ela ys a t
ev ery h a n d -o ff th a t le a d s to fru s tra ted tea m s a nd d is s a tis fie d c u s to m ers . T h e p ro d u c t
ev en tu a lly g o e s liv e th ro u g h a ted io u s a n d e rro r-p ro n e p ro c e s s th a t d e lay s re ve n u e
g e n era tio n .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

How does continuous delivery work?


A c o n tin u o u s d elive ry p ip e lin e c o u ld h a v e a m a n u a l g a te rig h t b efo re p ro d u c tio n . A
m a n u al g a te req u ire s h um a n in te rv en tio n , a n d th ere c o u ld b e s c e n a rio s in yo u r
o rg a niz a tio n th a t re q u ire m a n u a l g a tes in p ip e lin e s . S o m e m a n u a l g a te s m ig h t b e
q u e s tio n a b le, w h e re a s s o m e c o u ld b e le g itim a te. O n e le g itim a te s c e n a rio a llo w s th e
b u s in e s s te a m to m a k e a la s t-m in u te re lea s e d ec is io n . T h e en g in ee rin g tea m k ee p s a
s h ip p a b le v ers io n o f th e p ro d u c t rea d y a fter ev ery s p rin t, a n d th e b u s in e s s tea m m a k es
th e fin a l c a ll to relea s e th e p ro d u c t to all c u s to m e rs , o r a c ro s s -s ec tio n o f th e p o p u la tio n ,
o r p e rh a p s to p eo p le w h o live in a c e rta in g eo g ra p h ic al lo c a tio n.

T h e a rc h ite c tu re o f th e p ro d u c t th a t flo w s th ro u g h th e p ip elin e is a k e y fa c to r th a t


d e term in e s th e a n a to m y o f th e c o n tin u o u s d elive ry p ip e lin e . A h ig h ly c o u p led p ro d u c t
a rc h itec tu re g e ne ra te s a c o m p lic a ted g ra p h ic a l p ip elin e p a tte rn w h e re v a rio u s p ip elin es
c o u ld g e t e n ta n g le d b efo re ev en tu a lly m a k in g it to p ro d uc tio n .

T h e p ro d u c t a rc h itec tu re a ls o in flu e n c e s th e d iffere n t p h a s es o f th e p ip e lin e a n d w h a t


a rtifa c ts a re p ro d u c ed in e a c h p h a s e. T h e p ip e lin e firs t b u ild s c o m p o n e n ts - th e s m a lles t
d is trib u ta b le a n d tes ta b le u n its o f th e p ro d u c t. F o r e xa m p le, a lib ra ry b u ilt b y the p ip elin e
c a n b e term e d a c o m p o n e n t. T h is is th e c o m p o n e n t p h a s e.

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Lo o s e ly c o u p le d c o m p o n e n ts m a k e u p s u b s y s te m s - th e s m a lles t d e p lo ya b le a n d
ru n n a b le u n its . F o r e xa m p le , a s e rve r is a s u b s ys tem . A m ic ro s ervic e ru n n in g in a
c o n ta in e r is a ls o a n ex a m p le o f a s u b s ys te m . T h is is th e s u b s ys tem p h a s e . A s o p p o s e d
to c o m p o n e n ts , s u b s ys tem s c a n b e s to o d u p a n d te s te d .

T h e s o ftw a re d elive ry p ip e lin e is a p ro d u c t in its o w n rig h t a n d s h o u ld b e a p rio rity fo r


b u s in e s s es . O th e rw is e, yo u s h o u ld n o t s en d rev en u e -g e n era tin g p ro d u c ts th ro u g h it.
C o n tin u o u s d e liv ery a d d s v a lu e in th ree w a ys . It im p ro v es v elo c ity, p ro d u c tiv ity, a n d
s u s ta in a b ility o f s o ftw a re d e ve lo p m en t tea m s .

Velocity
V elo c ity m e a n s res p o n s ib le s p e ed a n d n o t s u ic id a l s p eed . P ip e lin e s a re m e a n t to s h ip
q u a lity p ro d u c ts to c u s to m e rs . U n les s tea m s a re d is c ip lin ed , p ip elin es c a n s h o o t f a u lty
c o d e to p ro d u c tio n , o n ly fa s ter! A u to m a ted s o ftw a re d e liv ery p ip e lin e s h e lp o rg a n iza tio n s
res p o n d to m a rk e t c h a n g e s b etter.

Productivity

A s p ik e in p ro d u c tiv ity res u lts w h en te d io u s ta s k s , lik e s u b m ittin g a c h a n g e re q u es t fo r


ev ery c h a n g e th a t g o e s to p ro d u c tio n , c a n b e p e rfo rm e d b y p ip e lin e s in s tea d o f h u m a n s .
T h is le ts s c ru m te am s fo c u s o n p ro d u c ts th a t w o w th e w o rld , in s te a d o f d ra in in g th e ir
en e rg y o n lo g is tic s . A n d th a t c a n m a k e te a m m em b e rs h a p p ie r, m o re e n g a g ed in th e ir
w o rk , a n d w a n t to s ta y o n th e te a m lo n g er.

Sustainability

S u s ta in a b ility is k ey fo r a ll b u s in e s s es , n o t ju s t te c h . “ S o ftw a re is ea ting th e w o rld ” is


n o lo n g er tru e — s o ftw a re h a s a lrea d y c o n s u m ed th e w o rld ! E v ery c o m p a n y a t th e en d o f
th e d a y, w h e th e r in h ea lth c a re, fin a n c e, reta il, o r s o m e o th er d o m a in , u s e s te c h n o lo g y to
d iff eren tia te a n d o u tm a n eu v er th e ir c o m p etitio n . A u to m a tio n h e lp s re d u c e / elim in a te
m a n u al ta s k s th a t a re e rro r-p ro n e a n d re p etitiv e, th u s p o s itio n in g th e b us in e s s to in n o v a te
b e tte r a n d fa s te r to m ee t th eir c u s to m e rs ' n e ed s .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Release Management

R e le a s e m a n a g e m e n t is th e p ro c e ss o f o v e rs e e in g th e p la nn in g , sc h e d ulin g ,
a nd c o ntro llin g o f so ftw a re b uild s thro u g ho u t e a c h s ta g e o f d e v e lo p m e n t a n d
a c ro s s v a rio u s e n v iro n m e n ts . R e le a s e m a na g e m e n t ty p ic a lly inc lud e d th e
te stin g a n d d e p lo y m e nt o f s o ftw a re re le a s e s a s w e ll.

R e le a s e m a n a g e m e nt ha s ha d a n im p o rta n t ro le in th e s o ftw a re d e v e lo p m e nt
life c y c le sinc e b e fo re it w a s kn o w n a s re le a s e m a n a g e m e nt. D e c id ing w he n a n d
h o w to re le a s e up d a te s w a s its o w n u n iq u e p ro b le m e v e n w h e n s o ftw a re sa w
p h ys ic a l d is c re le a s e s w ith up d a te s o c c u rrin g a s s e ld o m a s e v e ry fe w ye a rs.

N o w th a t m o s t s o ftw a re h a s m o v ed fro m h a rd a n d fa s t re le a s e d a te s to th e s o f tw a re a s a
s erv ic e (S a a S ) b u s in es s m o d el, re lea s e m a n a g e m e n t h a s b ec o m e a c o n s ta n t p ro c es s
th a t w o rk s a lo n g s id e d e ve lo p m e n t. T h is is e s p e c ia lly tru e fo r b us in e s s es th a t h a v e
c o n ve rte d to u tiliz in g c o n tin u o u s d elive ry p ip e lin e s th a t s ee n ew re lea s e s o c c u rrin g a t
b lis terin g ra tes . D e vO p s n o w p la ys a larg e ro le in m a n y o f th e d u ties th a t w e re o rig ina lly
c o n s id e re d to b e u n d e r th e p u rv ie w o f relea s e m a n a g em en t ro les ; h o w ev er, D e vO p s h a s
n o t res u lte d in th e o b s o les c e n c e o f relea s e m a n a g em en t.

Advantages of Release Management for DevOps

W ith th e tran s itio n to D ev O p s p ra c tic es , d ep lo ym en t d u tie s h a ve s h ifted o n to th e


s h o u ld ers o f the D e vO p s te a m s . T h is d o es n ’ t re m o ve th e n e ed fo r re le a s e m a n a g e m e n t;
in s te a d , it m o d ifies th e d a ta p o in ts th a t m a tte r m o s t to th e n ew ro le re lea s e m a n a g em en t

p e rfo rm s .

R e lea s e m a n a g e m e n t a c ts a s a m e th o d fo r fillin g th e d a ta g ap in D ev O p s . T h e p la n nin g o f


im p lem en ta tio n a n d ro llb a c k s a fe ty n ets is p a rt o f th e D e vO p s w o rld , b u t rele a s e
m a n a g em e n t s till n ee d s to k e ep ta b s o n a p p lic a tio n s , its c o m p o n e n ts , a n d th e p ro m o tio n

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

s c h e d u le a s p a rt o f c h a n g e o rd e rs . T h e k e y to m a n a g in g s o ftw a re relea s e s in a w a y th a t
k ee p s p a c e w ith D ev O p s d ep lo ym e n t s c h ed u le s is th ro u g h a u to m a te d m a na g em en t to o ls .

Aligning business & IT goals

T h e m o d ern b u s in e s s is u n d e r m o re p res s u re th a n e ve r to c o n tin u o u s ly d e liv er n ew


fe a tu res a n d b o o s t th e ir va lu e to c u s to m ers . B uy ers h a v e c o m e to ex p e c t th a t th e ir
s o f tw a re e vo lve s a n d c o n tin u es to d e ve lo p in n o va tive w ay s to m ee t th e ir n e ed s .
B u s in es s e s c rea te a n o u ts id e p e rs p ec tiv e to g le a n in s ig h ts in to th e ir c u s to m e r n e ed s .
H o w ev er, IT h a s to h a ve a n in s id e p ers p e c tive to d ev elo p th e s e fe a tu res .

R e lea s e m a n ag em e nt p ro v id es a c ritic a l b rid g e b e tw e en th es e tw o g a p s in p e rs p e c tiv e. It


c o o rd in a tes b etw ee n IT w o rk a n d b u s in e s s g o a ls to m a xim iz e th e s u c c es s o f e a c h
relea s e . R elea s e m a n ag em e nt b a la n c es c u s to m er d e s ire s w ith d ev elo p m en t w o rk to
d e liv er th e g rea tes t va lu e to u s e rs .

Minimizes organizational risk

S o f tw a re p ro d u c ts c o n ta in m illio n s o f in terc o n n ec ted p a rts th at c rea te a n en o rm o u s ris k


o f fa ilu re. U s ers a re o ften a ffe c ted d iffe ren tly b y b u g s d e p e n d in g o n th e ir o th e r s o ftw a re ,
a p p lic a tio n s , a n d to o ls . P lu s , fa s te r d ep lo ym e n ts to p ro d u c tio n in c rea s e th e o ve ra ll ris k
th a t fa u lty c o d e a n d b ug s s lip th ro u g h th e c ra c k s .

R e lea s e m a n a g e m en t m in im iz es th e ris k o f fa ilu re b y em p lo yin g v a rio u s s tra teg ie s .


T es tin g a n d g o ve rn a n c e c an c a tc h c ritic a l fa u lty s e c tio n s o f c o d e b ef o re th ey rea c h th e
c u s to m e r. D ep lo ym e n t p la ns e n s u re th e re a re e n o u g h tea m m e m b ers a n d res o u rc es to
a d d res s a n y p o ten tia l is s u e s b efo re a f fec tin g u s ers . A ll d ep en d e n c ie s b etw e en th e
m illio n s o f in terc o n n ec te d p a rts a re rec o g n ize d a n d u n d e rs to o d .

Direct accelerating change

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

R e lea s e m a n a g em en t is fo u n d a tio n a l to th e d is c ip lin e a n d s k ill o f c o n tin u o u s ly p ro d u c in g


en te rp ris e -q u a lity s o f tw a re. T h e ra te o f s o ftw a re d elive ry c o n tin u e s to a c c elera te a n d is
u n lik e ly to s lo w d o w n a n ytim e s o o n . T h e s p ee d o f c h a n g e s m a k es re le a s e m a n a g em en t
m o re n ec es s a ry tha n e ve r.

T h e m o ve to w a rd s C I/ C D a n d in c rea s e s in a uto m a tio n e n s u re th a t th e a c c elera tio n w ill


o n ly in c rea s e . H o w ev er, it a ls o m e a n s in c re a s ed ris k , u n m et g o v ern a n c e re q u ire m en ts ,
a n d p o ten tia l d is o rd er. R e le a s e m a n a g em e n t h elp s p ro m o te a c u ltu re o f e xc ellen c e to
s c a le D ev O p s to a n o rg a n iz a tio n a l lev el.

Release management best practices

A s D e vO p s in c rea s e s a n d c h a n g e s a c c e le rate , it is c ritic a l to h a v e b e s t p ra c tic e s in p la c e


to en s u re th a t it m o ve s a s q u ic k ly a s p o s s ib le . W e ll-ref in e d p ro c e s s es en a b le D e vO p s
tea m s to m o re e ffec tiv ely a nd e ffic ie n tly. S o m e b es t p rac tic es to im p ro v e yo u r p ro c e s s es
in c lu d e :

Define clear criteria for success

W e ll-d efin e d req u irem en ts in re le a s es a n d tes tin g w ill c rea te m o re d ep en d ab le relea s e s .


E v eryo n e s h o u ld c le a rly u n d e rs ta n d w h e n th in g s a re a c tu a lly rea d y to s h ip .

W e ll-d efin e d m ea n s th a t th e c riteria c a n n o t b e s ub je c tive . A n y s ub je c tive c rite ria w ill k ee p


yo u fro m lea rn in g f ro m m is ta k es a nd ref in in g yo u r rele a s e m a n a g e m en t p ro c e s s to
id e n tify w h a t w o rk s b e s t. It a ls o n ee d s to b e d efin ed fo r ev ery te am m e m b er. R ele a s e
m a n a g ers , q u a lity s u p erv is o rs , p ro d u c t v en d o rs , a n d p ro d u c t o w n e rs m u s t a ll h a ve a n
a g re ed -u p o n s e t o f c rite ria b e fo re s ta rtin g a p ro jec t.

Minimize downtime

D e vO p s is a b o u t c rea tin g a n id ea l c u s to m e r ex p e rie n c e . L ik ew is e, th e g o a l o f rele a s e


m a n a g em e n t is to m in im ize th e am o u nt o f d is ru p tio n th a t c u s to m e rs fe el w ith u p d a te s .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

S triv e to c o ns is ten tly re d u c e c u s to m er im p a c t an d d o w n tim e w ith a c tiv e m o n ito rin g ,


p ro a c tiv e tes tin g , a n d re a l-tim e c o lla b o ra tiv e a lerts th a t e n a b le yo u to q u ic k ly n o tify yo u o f
is s u es d u rin g a rele a s e. A g o o d rele a s e m a n a g e r w ill b e a b le to id en tif y a n y p ro b lem s
b e fo re th e c u s to m er.

T h e tea m c a n res o lv e in c id e n ts q u ic k ly a n d ex p e rie n c e a s u c c es s fu l re le a s e w h en


p ro a c tiv e e ffo rts a re c o m b in e d w ith a c o lla b o ra tive re s p o n s e p la n .

Optimize your staging environment

T h e s ta g in g e n viro n m en t re q u ire s c o n s ta n t u p k ee p . M a in ta in in g a n en v iro nm e n t th a t is a s


c lo s e a s p o s s ib le to yo u r p ro d u c tio n o n e e n s u re s s m o o th er a nd m o re s u c c es s fu l re lea s e s .
F ro m Q A to p ro d u c t o w n e rs , th e w h o le te a m m u s t m a in ta in th e s ta g in g e n viro n m en t b y
ru n n in g te s ts a n d c o m b in g th ro u g h s ta g in g to fin d p o ten tia l is s u es w ith d ep lo ym en t.
Id en tifying p ro b lem s in s ta g in g b e fo re d e p lo yin g to p ro d u c tio n is o n ly p o s s ib le w ith th e
rig h t s ta g in g e n viro n m en t.
M a in ta in in g a s ta g in g en viro n m en t th a t is a s c lo s e a s p o s s ib le to p ro d u c tio n w ill en a b le
D e vO p s tea m s to c o n firm th a t a ll re le a s es w ill m e et a c c ep ta n c e c riteria m o re q u ic k ly.

Strive for immutable

W h e n ev er p o s s ib le , a im to c re a te n ew u p d a tes a s o p p o s e d to m o d ifying n ew o n e s .
Im m uta b le p ro g ram m ing d rive s tea m s to b u ild e n tirely n e w c o n fig u ra tio n s in s te a d o f
c h a n g in g e xis tin g s tru c tu res . T h es e n ew u p d a te s red u c e th e ris k o f b u g s a nd e rro rs th a t
typ ic a lly h a p p e n w h e n m o d ifyin g c u rren t c o n fig u ra tio n s .

T h e in h eren tly re lia b le re lea s e s w ill res u lt in m o re s a tis fie d c u s to m e rs a n d e m p lo yee s .

Keep detailed records

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

G o o d rec o rd s m a n a g e m e n t o n a n y re le a s e/ d e p lo ym e n t a rtifa c ts is c ritic a l. F ro m rele a s e


n o te s to b ina ries to c o m p ila tio n o f k n o w n erro rs , re c o rd s a re vita l fo r re p ro d u c in g en tire
s ets o f a s s e ts . In m o s t c a s e s , ta c it k n o w le d g e is req u ire d .

Focus on the team

W e ll-d efin e d a n d im p le m en ted D ev O p s p ro c e d u res w ill u s u a lly c rea te a m o re eff ec tiv e


relea s e m a n ag em e nt s tru c tu re . T h e y en a b le b e s t p ra c tic e s fo r te s tin g a n d c o o p e ra tio n
d u rin g th e c o m p lete d e liv ery lif ec yc le.

A lth o u g h a u to m a tio n is a c ritic a l a s p ec t o f D ev O p s a n d re le a s e m a n a g e m e n t, it a im s to


en h a n c e tea m p ro d u c tivity. T h e m o re tha t relea s e m a n a g em en t a n d D e vO p s fo c u s o n
d e c re a s in g h u m a n e rro r a n d im p ro vin g o p era tio n a l ef fic ien c y, th e m o re th ey’ ll s ta rt to
q u ic k ly rele a s e d e p e n d a b le s e rvic e s .

Scrum
S c ru m is a fra m e w o rk u s ed b y te a m s to m an a g e w o rk a n d s o lv e p ro b le m s c o lla b o ra tiv ely
in s h o rt c yc les . S c ru m im p lem en ts th e p rin c ip les o f A g ile a s a c o n c rete s e t o f a rtif a c ts ,
p ra c tic e s , a n d ro le s .

The Scrum lifecycle

T h e d ia gra m b e lo w d e ta ils th e ite ra tiv e S c ru m life c y c le . T h e en tire life c y c le is c o m p le te d in f ixe d tim e


p e rio d s ca lle d sp rin ts A sp rin t is ty p ic a lly on e -to -fo u r w e ek s l on g

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Scrum roles

T h ere a re th re e k e y ro les in S c ru m : th e p ro d u c t o w n e r, th e , a n d th e
.

Product owner

T h e p ro d u c t o w ne r is res p o n s ib le fo r w h a t th e tea m b u ild s , a n d w h y th ey b u ild it. T h e


p ro d u c t o w n er is re s p o n s ib le fo r k ee p in g th e b a c k lo g o f w o rk u p to d a te a n d in p rio rity
o rd er.

Scrum master

T h e S c ru m m a s te r e ns u re s th a t th e Sc ru m p ro c e s s is fo llo w e d b y th e te a m . S c ru m
m a s te rs a re c o n tin u a lly o n th e lo o k o u t fo r h o w th e tea m c a n im p ro ve , w h ile a ls o res o lv in g
im p ed im e n ts a n d o th e r b lo c k in g is s u es th a t a ris e d u rin g the s p rin t. S c ru m m a s ters a re
p a rt c o a c h , p a rt te a m m em b e r, a n d p a rt c he erlea d er.

Scrum team

T h e m e m b ers o f th e S c rum te a m a c tua lly b u ild th e p ro d u c t. T h e te a m o w n s th e


en g in ee rin g o f th e p ro d u c t, a n d th e q u a lity th a t g o es w ith it.

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Product backlog

T h e p ro d u c t b a c k lo g is a p rio ritize d lis t o f w o rk th e te a m c a n d e liv er. T h e p ro d u c t o w n er


is re s p o n s ib le fo r a d d in g , c h a n g in g , a n d rep rio ritiz in g th e b a c k lo g a s n ee d e d . T h e item s a t
th e to p o f th e b a c k lo g s h o u ld a lw ay s b e rea d y fo r th e tea m to ex ec u te o n .

Plan the sprint

In s p rin t p la n nin g , the te a m c h o o s es b a c k lo g item s to w o rk o n in th e u p c o m in g s p rin t.


T h e te a m c h o o s es b a c k lo g ite m s b a s ed o n p rio rity a n d w h a t th ey b eliev e th ey c a n
c o m p lete in th e s p rin t. T h e is th e lis t o f ite m s th e tea m p la n s to d elive r in
th e s p rin t. O ften , e a c h ite m o n th e s p rin t b a c k lo g is b ro k en d o w n in to ta s k s . O n c e all
m em b e rs a g re e th e s p rin t b ac k lo g is a c h ie va b le , th e s p rint s ta rts .

Execute the sprint

O n c e the s p rin t s ta rts , th e te a m ex ec u te s o n th e s p rin t b a c k lo g . S c ru m d o es n o t s p e c ify


h o w th e te a m s h o u ld ex ec u te . T h e tea m d ec id es h o w to m a n a g e its o w n w o rk .

S c ru m d efin e s a p ra c tic e c a lle d a , o f te n c a lle d th e . T h e d a ily


S c ru m is a d a ily m ee tin g lim ited to fiftee n m in u tes . T ea m m e m b ers o ften s ta n d d u rin g
th e m ee tin g to e n s u re it s ta ys b rie f. E a c h te a m m e m b er b rief ly re p o rts th eir p ro g res s
s in c e ye s terd a y, th e p la n s fo r to d a y, a n d a n ythin g im p e d in g th eir p ro g re s s .

T o a id th e d a ily S c ru m , te a m s o f te n re view tw o a rtifa c ts :

Task board

T h e ta s k b o a rd lis ts e a c h b a c k lo g ite m th e tea m is w o rk in g o n , b ro k en d o w n in to th e


ta s k s req u ire d to c o m p le te it. Ta s k s a re p la c e d in To do, In progress, a n d Done c o lu m n s
b a s e d o n th e ir s ta tu s . T h e b o a rd p ro vid e s a vis u a l w a y to tra c k th e p ro g re s s o f e a c h
b a c k lo g item .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Sprint burndown chart

T h e s p rin t b u rn d o w n is a g ra p h th a t p lo ts th e d a ily to ta l o f re m ain in g w o rk , typ ic a lly


s h o w n in h o u rs . T h e b u rn d o w n c h a rt p ro vid es a v is u a l w a y o f s h o w in g w h eth er th e tea m
is o n tra c k to c o m p lete a ll th e w o rk b y th e e n d o f th e s p rin t.

Sprint review and sprint retrospective

A t th e en d o f th e s p rin t, th e tea m p erfo rm s tw o p ra c tic es :

Sprint review

T h e te a m d em o n s tra te s w h a t th ey'v e a c c o m p lis h e d to s ta k eh o ld ers . T h e y d e m o th e


s o f tw a re a n d s h o w its v a lu e .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Sprint retrospective

T h e tea m ta k es tim e to re flec t o n w h a t w en t w ell an d w h ic h a re a s n ee d im p ro v em en t.


T h e o u tc o m e o f th e retro s p ec tiv e a re a c tio n s fo r th e n ex t s p rin t.

Increment

The p ro d u c t of a s p rin t is c a lled th e or .


R e g a rd le s s o f th e term , a s p rin t's o u tp u t s h o u ld b e o f s h ip p a b le q u a lity, ev en if it's p art o f
s o m e th in g b ig g er a n d c a n 't s h ip b y its e lf . It s h o uld m eet a ll th e q u a lity c riteria s et b y th e
tea m an d p ro d u c t o w n er.

Repeat, learn, improve

T h e en tire c yc le is rep ea ted fo r th e n e xt s p rin t. S p rin t p la n n in g s ele c ts th e n ex t ite m s o n


th e p ro d u c t b a c k lo g a n d th e c yc le rep ea ts . W h ile th e te a m ex ec u te s th e s p rin t, th e
p ro d u c t o w n e r e n s u res th e item s a t th e to p o f th e b a c k lo g a re re ad y to e xe c u te in th e
fo llo w in g s p rin t.

T h is s h o rte r, ite ra tive c yc le p ro vid e s th e te a m w ith lo ts o f o p p o rtu n itie s to lea rn a n d


im p ro ve . A tra d itio n a l p ro je c t o fte n h a s a lo n g life c yc le , s a y 6 -1 2 m o n th s . W h ile a tea m
c a n le a rn fro m a tra d itio n a l p ro jec t, th e o p p o rtun ities a re fa r les s th an a tea m w h o
ex ec u tes in tw o -w e ek s p rin ts , fo r ex a m p le .

T h is itera tiv e c yc le is , in m a n y w a ys , th e es s e nc e o f A g ile.

S c ru m is v ery p o p u la r b e c a u s e it p ro v id es ju s t en o u g h f ra m ew o rk to g u id e tea m s w h ile


g iv in g th e m fle xib ility in h o w the y ex ec u te . Its c o n c e p ts a re s im p le a n d ea s y to lea rn .
T ea m s c a n g et s ta rted q u ic k ly a n d le a rn a s th ey g o . A ll o f th is m a k es S c ru m a g rea t
c h o ic e f o r te a m s ju s t s ta rtin g to im p lem e n t A g ile p rin c ip les .

Kanban

K a n b a n is a J a p a n e s e te rm th a t m e a n s s ig nb o a rd o r b illb o a rd . A n in d u s tria l en g in e er

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

n a m ed T a iic h i O h n o d e ve lo p e d K a n b a n a t T o yo ta M o to r C o rp o ra tio n to im p ro v e
m a n u fa c tu rin g e ffic ie n c y.

A lth o u g h K a n b a n w a s c rea te d f o r m a n u fa c tu rin g , s o ftw are d ev elo p m e n t s h a re s m a n y o f


th e s a m e g o a ls , s u c h a s in c re a s in g flo w a n d th ro u g h p ut. S o ftw a re d ev elo p m e n t tea m s
c a n im p ro ve th eir ef fic ien c y a n d d e liv er v a lu e to u s ers fa s ter b y u s in g K a n b a n g u id in g
p rin c ip le s an d m e th o d s .

Kanban principles

A d o p tin g K a nb a n req u ires a d h ere n c e to s o m e fu n d a m en ta l p ra c tic e s th a t m ig h t va ry


fro m te a m s ' p re vio u s m eth o d s .

Visualize work

U n d ers ta n d in g d ev elo p m e n t tea m s ta tu s a n d w o rk p ro g re s s c a n b e c h a llen g in g . W o rk


p ro g res s a n d c u rre n t s ta te is ea s ie r to u n d ers ta n d w h e n p re s en te d vis u a lly ra th e r th a n a s
a lis t o f w o rk ite m s o r a d o c u m en t.

V is u a liz a tio n o f w o rk is a k ey p rin c ip le th a t K a n b a n a d d re s s es p rim a rily thro u g h


. T h e s e b o a rd s u s e c a rd s o rg a n iz ed b y p ro g res s to c o m m u n ic a te o v era ll s ta tu s .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

V is u a liz in g w o rk a s c a rd s in d iffe ren t s ta te s o n a b o a rd h elp s to e a s ily s ee th e b ig p ic tu re


o f w h e re a p ro jec t c u rre n tly s ta n d s , a s w ell a s id e n tify p o ten tia l b o ttle n ec k s th a t c o u ld
a ffe c t p ro d u c tivity.

Use a pull model

H is to ric a lly, s ta k eh o ld ers req u es ted f u n c tio n a lity b y p u s h in g w o rk o n to d e ve lo p m en t


tea m s , o ften w ith tig h t d e a d line s . Q u a lity s u ff ered if tea m s h a d to ta k e s h o rtc u ts to
d e liv er th e fu n c tio n a lity w ith in th e tim efra m e.

K a n b a n fo c u s es o n m a in ta in in g a n a g re ed -u p o n lev el o f q u a lity th a t m u s t b e m et b efo re


c o n s id e rin g w o rk d o n e. T o s u p p o rt th is m o d e l, s ta k e h o ld e rs d o n 't p u s h w o rk o n tea m s
th a t a re a lre a d y w o rk in g a t c a p a c ity. In s te a d , s ta k e h o ld e rs a d d re q u e s ts to a b a c k lo g th a t
a te a m p u lls in to th e ir w o rk flo w a s c a p a c ity b e c o m e s a va ila b le.

Impose a WIP limit

T ea m s th a t try to w o rk o n to o m a n y th in g s a t o n c e c a n s uf fer f ro m re d u c ed p ro d u c tiv ity


d u e to fre q u e n t a n d c o s tly c o n tex t s w itc h in g . T h e tea m is b u s y, b u t w o rk d o e s n 't g e t d o n e ,
re s ultin g in u na c c e p ta b ly h ig h lea d tim e s . L im itin g th e n u m b er o f b ac k lo g ite m s a tea m
c a n w o rk o n at a tim e he lp s inc rea s e fo c u s w h ile red u c in g c o n tex t s w itc hin g . T h e item s
th e tea m is c u rren tly w o rk in g o n a re c a lle d .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

T ea m s d ec id e o n a , o r m a xim u m n um b er o f ite m s th ey c a n w o rk o n a t o n e tim e .


A w ell-d is c ip lin e d te a m m a k e s s u re n o t to ex c e ed th eir W IP lim it. If tea m s e xc ee d th e ir
W IP lim its , th e y in v es tig a te th e rea s o n a n d w o rk to a d d re s s th e ro o t c a u s e.

Measure continuous improvement

T o p ra c tic e c o n tin u o u s im p ro v em en t, d ev elo p m en t tea m s n e ed a w a y to m e a s u re


ef fec tiv en e s s a n d th ro u g h p u t. K an b a n b o a rd s p ro v id e a d yn am ic vie w o f th e s ta tes o f
w o rk in a w o rk flo w , s o te am s c a n ex p e rim en t w ith p ro c e s s es a n d m o re ea s ily e va lu a te
im p a c t o n w o rk flo w s . T ea m s th a t e m b ra c e K a n b a n fo r c o n tin u o u s im p ro v em en t u s e
m ea s u rem en ts lik e and .

Kanban boards

The is o n e o f th e to o ls tea m s u s e to im p le m en t K a n b a n p ra c tic e s . A


K a n b a n b o a rd c a n b e a p h ys ic a l b o a rd o r a s o ftw a re a p p lic a tio n th a t s h o w s c a rd s
a rra n g ed in to c o lu m n s . T yp ic a l c o lu m n n a m es a re To-do , Doing , a n d Done , b u t tea m s c a n
c u s to m ize th e n a m e s to m a tc h th e ir w o rk flo w s tate s . F o r e xa m p le , a te a m m ig h t p re fe r to
u s e New, Development, Testing , UAT, a n d Done .

S o f tw a re d e ve lo p m en t-b a s ed K a n b a n b o a rd s d is p la y c a rd s th a t c o rres p o n d to p ro d u c t
b a c k lo g item s . T h e c a rd s in c lu d e lin k s to o th er item s , s u c h a s ta s k s an d te s t c a s e s .
T ea m s c a n c u s to m ize th e c a rd s to in c lu d e in fo rm a tio n re le va n t to th e ir p ro c e s s .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

O n a K a n b a n b o ard , th e W IP lim it a p p lies to a ll in -p ro g res s c o lu m n s . W IP lim its d o n't


a p p ly to th e firs t a n d la s t c o lu m n s , b ec a u s e th o s e c o lu m n s re p re s en t w o rk th a t h a s n't
s ta rted o r is c o m p leted . K a n b a n b o a rd s h e lp tea m s s ta y w ith in W IP lim its b y d ra w in g
a tte n tio n to c o lu m ns th a t e xc ee d th e lim its . T e a m s c a n th en d eterm in e a c o u rs e o f a c tio n
to rem o v e th e b o ttlen e c k .

Cumulative flow diagrams

A c o m m o n a d d itio n to s o ftw a re d e ve lo p m en t-b a s ed K a n b a n b o a rd s is a c h a rt c a lle d


a . T h e C F D illu s trate s th e n u m b e r o f ite m s in ea c h s ta te
o v er tim e , typ ic a lly a c ro s s s ev era l w e ek s . T h e h o riz o n ta l a xis s h o w s th e tim elin e, w h ile
th e v ertic a l a x is s h o w s th e n u m b er o f p ro d u c t b a c k lo g item s . C o lo re d a re a s in d ic a te th e
s ta te s o r c o lu m n s th e c a rd s a re c u rre n tly in .

T h e C F D is p a rtic u la rly u s e fu l f o r id en tifyin g tren d s o v er tim e, in c lu d in g b o ttle n ec k s a n d


o th e r d is ru p tio n s to p ro g re s s ve lo c ity. A g o o d C F D s h o w s a c o n s is ten t u p w a rd tre n d
w h ile a te a m is w o rk in g o n a p ro jec t. T h e c o lo red a re a s a c ro s s th e c h a rt s h o u ld b e
ro u g hly p a ra llel if th e tea m is w o rk in g w ith in th e ir W IP lim its .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

A b u lg e in o n e o r m o re o f th e c o lo red a re a s u s u a lly in d ic a te s a b o ttlen e c k o r im p ed im en t


in th e te a m 's flo w . In th e fo llo w in g C F D , th e c o m p lete d w o rk in g reen is fla t, w h ile th e
tes tin g s ta te in b lu e is g ro w in g , p ro b a b ly d u e to a b o ttle n ec k .

Kanban and Scrum in Agile development

W h ile b ro a d ly fittin g u n d er th e u m b rella o f A g ile d ev elo p m en t, S c ru m a n d K a n b a n a re


q u ite d iff eren t.

S c ru m fo c u s e s o n fixe d len g th sp rin ts, w h ile K a n ba n is a c o n tin u ou s flo w m o de l.


S c ru m h a s d e fin e d ro le s, w h ile K a n b a n d o e sn 't de fi n e a n y te a m ro le s.

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

S c ru m u se s v e loc ity a s a k ey m e tric , w h ile K a n b a n u se s c yc le tim e .

T ea m s c o m m o n ly a d o p t a s p ec ts o f b o th S c ru m a n d K a n b a n to h e lp th e m w o rk m o s t
ef fec tiv ely. R e g a rd le s s o f w h ic h c h a ra c te ris tic s th ey c h o o s e , te a m s c a n a lw a ys rev iew
a n d a d a p t u n til th ey f in d th e b es t fit. T e a m s s h o u ld s ta rt s im p le a n d n o t lo s e s ig h t o f th e
im p o rta n c e o f d e liv ering va lu e reg u la rly to us e rs .

Kanban with GitHub

G itH u b o ffe rs a K a n b a n ex p e rie n c e th ro u g h p ro jec t b o a rd s (c la s s ic ). T h es e b o a rd s h e lp


yo u o rg a n iz e and p rio ritize w o rk fo r s p ec ific fe a tu re d e ve lo p m en t, c o m p re h en s iv e
ro a d m a p s , o r re lea s e c h e c k lis ts . Y o u c a n a u to m a te p ro je c t b o a rd s (c la s s ic ) to s yn c c a rd
s ta tu s w ith a s s o c ia te d is s u es a n d p u ll re q u e s ts .

Kanban with Azure Boards

A z u re B o a rd s p ro v id es a c o m p re h en s iv e K a n b a n s o lu tio n fo r D e vO p s p la n n in g . A z u re
B o a rd s h a s d e ep in te g ra tio n a c ro s s A z u re D ev O p s , a n d c an a ls o b e p a rt o f A z u re
B o a rd s -G itH u b in teg ra tio n .

F o r m o re in fo rm a ti on , s e e Re a so n s to u se A zu re B oa rds to p la n a n d tra c k yo u r w ork .


T h e L e a rn m o d u le C h o os e a n A gile a p p ro a c h to so ftw a re de v e lo p m e n t p ro v id e s h a n d s-o n K a n ba n
e xp e rie n c e in A z u re B oa rd s .

Delivery Pipeline
A D e vO p s p ip elin e is a s e t o f a uto m a ted p ro c e s s es an d to o ls th a t a llo w s b o th d ev elo p ers
a n d o p e ra tio n s p ro fe s s io n a ls to w o rk c o h es iv ely to b u ild a n d d ep lo y c o d e to a p ro d u c tio n
en v iro n m e n t.
W h ile a D e vO p s p ip e lin e can d iff er by o rg a n iza tio n , it typ ic a lly in c lu d es
b u ild a u to m a tio n /c o n tinu o u s in teg ra tio n , a u to m a tio n te s tin g , v a lid a tio n , a n d re p o rtin g . It
m a y a ls o in c lu d e o n e o r m o re m a n u al g a te s th a t req u ire h u m a n in terve n tio n b ef o re c o d e
is allo w e d to p ro c ee d .
C o n tin u o u s is a d iffe re n tia ted c h a ra c teris tic o f a D ev O p s p ip elin e. T h is in c lu d es
c o n tin u o u s in te g ra tio n , c o n tin u o u s d elive ry/d ep lo ym e n t (C I/C D ), c o n tin u o u s fe ed b a c k ,

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

a n d c o n tin u o u s o p e ra tio n s . In s tea d o f o n e-o ff tes ts o r s c h ed u le d d e p lo ym e n ts , e a c h


fu n c tio n o c c u rs o n a n o n g o in g b a s is .

Considerations for building a DevOps pipeline

S in ce th e re isn ’ t o n e s ta n d a rd D e v O p s p ipe lin e , a n o rg a n iza tio n ’ s d e sig n a n d im p le m e n ta tio n o f a


D e v O ps p ipe lin e d e p e n d s o n its te c h n olo g y s ta c k, a D ev O p s e n g in e e r’ s le v e l o f e xp erie n ce , b u d g e t,
a n d m o re . A D e v O ps e n gin e e r s h o u ld h a v e a w id e -ra n g in g k n o w le d g e o f bo th d ev el op m e n t a n d
o p era tio n s , in c lu d in g c o din g , in fra stru c tu re m a n a ge m e n t, s ys te m a dm i n istra tio n , a n d DevO p s
too lc h a in s .

P lu s , e a c h o rg a n iza tio n h a s a d iff eren t tec h n o lo g y s ta c k th a t c a n im p a c t th e p ro c es s . F o r


ex a m p le, if yo u r c o d eb a s e is n o d e. js , fa c to rs in c lu d e w h eth er yo u u s e a lo c a l p ro xy n p m
reg is try, w h eth er yo u d o w n lo a d th e s o u rc e c o d e a n d ru n `n p m in s ta ll` a t ev ery s ta g e in th e
p ip elin e, o r d o it o n c e a n d g en e ra te a n a rtifa c t th a t m o ve s th ro u g h th e p ip e lin e . O r, if a n
a p p lic a tio n is c o n ta in e r-b a s ed , yo u n ee d to d e c id e to u s e a lo c a l o r rem o te c o nta in er
reg is try, b u ild th e c o n ta in e r o n c e a n d m o v e it th ro u g h th e p ip e lin e , o r reb u ild it a t ev ery
s ta g e .

W h ile e ve ry p ip eline is u n iq u e , m o s t o rg a n iza tio n s u s e s im ila r fu n d am e n ta l c o m p o n en ts .


E a c h s te p is e va lu a te d fo r s uc c e s s b e fo re m o vin g o n to th e n ex t s ta g e o f th e p ip e lin e . In
th e ev en t o f a fa ilu re , th e p ip e lin e is s to p p ed , a n d fe ed b a c k is p ro v id e d to th e d ev elo p e r.

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Components of a DevOps pipeline

1. Continuous integration/continuous delivery/deployment (CI/CD)

Continuous integration is th e p ra c tic e o f m a k in g fre q u en t c o m m its to a c o m m o n s o u rc e


c o d e re p o s ito ry. It’ s c o n tinu o u s ly in teg ratin g c o d e c h a n g es in to ex is tin g c o d e b a s e s o
th a t a n y c o n flic ts b etw ee n d if feren t d e ve lo p e r’ s c o d e c h a n g es a re q u ic k ly id e n tifie d a n d
rela tiv ely ea s y to rem e d ia te . Th is p ra c tic e is c ritic a lly im p o rta n t to in c rea s in g d e p lo ym en t
ef fic ien c y.
W e b eliev e tha t tru n k -b a s ed d ev elo p m en t is a re q u ire m en t o f c o n tin u o u s in te g ra tio n . If
yo u a re n o t m a k in g f re q u e n t c o m m its to a c o m m o n b ra n c h in a s h a re d s o u rc e c o d e
rep o s ito ry, yo u a re n o t d o in g c o n tin u o u s in te g ra tio n . If yo u r b u ild a n d tes t p ro c es s es a re
a u to m a te d b u t y o u r d e ve lo p e rs a re w o rk in g o n is o la ted , lo n g -liv in g fe a ture b ra n c h e s th a t
a re in freq u en tly in te g ra ted in to a s h a red b ra n c h , yo u a re a ls o n o t d o in g c o n tin u o u s
in te g ra tio n .

Continuous delivery e n s u re s th a t th e “ m a in ” o r “ tru n k ” b ra n c h o f a n ap p lic a tio n 's


s o u rc e c o d e is a lw a ys in a re le a s a b le s ta te. In o th er w o rd s , if m a n a g e m e n t c a m e to yo u r
d e s k a t 4 :3 0 P M o n a F rid ay a n d s a id , “ W e n ee d th e la tes t ve rs io n re le a s ed rig h t no w ,”
th a t v ers io n c o u ld b e d ep lo yed w ith th e p u s h o f a b u tto n a n d w ith o u t f ea r o f fa ilure .
T h is m ea n s h a vin g a p re -p ro d u c tio n en v iro n m e n t tha t is a s c lo s e to id en tic a l to th e
p ro d u c tio n en v iro n m e n t a s p o s s ib le a n d e n s u rin g th a t a u to m a te d tes ts a re e xe c u ted , s o
th a t e ve ry va ria b le th a t m ig h t c a u s e a fa ilu re is id en tified b e fo re c o d e is m e rg ed in to th e
m a in o r tru n k b ra n c h.

Continuous deployment en ta ils h a v in g a lev el o f c o n tinu o u s te s tin g a n d o p era tio n s th a t


is s o ro b u s t, ne w ve rs io n s o f s o f tw a re a re va lid a ted a n d d e p lo ye d in to a p ro d u c tio n
en v iro n m e n t w itho u t req u irin g a n y h u m an in terve n tio n .
T h is is ra re a n d in m o s t c a s e s u n n e c e s s a ry. It is typ ic a lly o n ly th e u n ic o rn b u s in e s s es w h o
h a ve h u n d red s o r th o u s a n d s o f d e ve lo p e rs a n d h a v e m a n y re le a s es ea c h d a y tha t req u ire,
o r ev en w a n t to h a v e, th is lev el o f a u to m a tio n .

T o s im p lif y th e d iff eren c e b e tw e en c o n tin u o us d elive ry a n d c o n tin u o u s d ep lo ym en t, th in k


o f d e liv ery a s th e F ed E x p e rs o n h a n d ing yo u a b o x, a n d d e p lo ym en t a s yo u o p en in g th a t

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

b o x a n d u s in g w h a t’ s in s id e . If a c h a n g e to th e p ro d u c t is re q u ired b etw ee n th e tim e yo u


rec eive th e b o x a n d w h en yo u o p en it, th e m a n u fa c tu rer is in tro u b le!
Continuous feedback

T h e s in g le b ig g es t p a in p o in t o f th e o ld w a terfa ll m e th o d o f s o ftw a re d e ve lo p m e n t —
a n d c o n s eq u en tly w h y a g ile m e tho d o lo g ie s w e re d es ig n ed — w a s th e la c k o f
tim e ly fe ed b a c k . W h en n ew fe a tu res to o k m o n th s o r ye a rs to g o fro m id ea to
im p lem en ta tio n , it w a s a lm o s t g u a ra n te ed th a t th e en d re s u lt w o u ld b e s o m eth in g
o th e r th a n w h a t th e c u s to m er e xp ec te d o r w a n te d . A g ile s u c c e ed e d in en s u rin g
th a t d ev elo p e rs re c e iv ed fa s ter f ee d b a c k fro m s ta k e ho ld e rs . N o w w ith D ev O p s ,
d e ve lo p ers rec eiv e c o n tin u o u s fe ed b a c k n o t n o t o n ly fro m s ta k e h o ld e rs , b u t fro m
s ys tem a tic te s tin g a n d m o n ito rin g o f th eir c o d e in th e p ip e lin e .

Continuous testing is a c ritic a l c o m p o n en t o f e ve ry D e vO p s p ip elin e a n d o n e o f th e


p rim ary en a b le rs o f c o n tin u o u s fe ed b a c k . In a D e vO p s p ro c es s , c h a n g es m ov e
c o n tin u o u s ly f ro m d ev elo p m en t to tes tin g to d ep lo ym e n t, w h ic h lea d s no t o n ly to fa s ter
relea s e s , b u t a h ig h er q u a lity p ro d u c t. T h is m e a n s h a vin g a u to m a te d tes ts th ro u g h o u t
yo u r p ip e lin e , in c lu d in g u n it tes ts th a t ru n o n ev ery b u ild c h a n g e , s m o k e tes ts , fu n c tio n a l
tes ts , a n d e nd -to -en d tes ts .
Continuous monitoring is a n o th er im p o rta n t c o m p o n e n t o f c o n tin u o u s fee d b a c k . A
D e vO p s a p p ro a c h e n ta ils u s in g c o n tin u o u s m o n ito rin g in th e s ta g in g , tes ting , a n d ev en
d e ve lo p m e n t e n viro n m en ts . It is s o m etim e s u s efu l to m o n ito r p re-p ro d u c tio n
en v iro n m e n ts fo r a n o m a lo u s b eh a vio r, b u t in g en e ra l th is is a n a p p ro ac h u s ed to
c o n tin u o u s ly a s s e s s th e h e a lth a n d p e rfo rm a n c e o f a p p lic a tio n s in p ro d u c tio n .
N u m e ro u s to o ls a n d s ervic es e xis t to p ro v id e th is fu n c tio na lity, a n d th is m ay in v o lv e
a n yth in g fro m m o n ito rin g yo u r o n -p rem is e o r c lo u d in fra s tru c tu re s u c h a s s e rv er
res o u rc es , n e tw o rk in g , etc . o r th e p e rfo rm a n c e o f yo u r a p p lic a tio n o r its A P I in te rfa c e s .

3. Continuous operations

Continuous operations is a re la tive ly n ew a n d le s s c o m m o n te rm , a nd d e fin itio n s va ry.


O n e w a y to in terp re t it is a s “ c o n tin u o u s u p tim e” . F o r e xa m p le in th e c as e o f a
b lu e /g re en d e p lo ym e n t s trate g y in w h ic h yo u h a v e tw o s ep a ra te p ro d u c tio n e nv iro n m e n ts ,
o n e th a t is “ b lu e ” (p u b lic ly a c c e s s ib le) a n d o n e th a t is “ g re en ” (n o t p u b lic ly

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

a c c es s ib le ). In th is s itu a tio n , n ew c o d e w o u ld b e d e p lo ye d to th e g re en en v iro n m e n t, a n d


w h en it w a s c o n firm e d to b e fu n c tio n a l th e n a s w itc h w o u ld b e flip p e d (u s u a lly o n a
lo a d -b a la n c e r) a n d tra ffic w o u ld s w itc h fro m th e “ b lu e ” s ys tem to th e “ g re en ”
s ys tem . T h e res u lt is n o d o w n tim e fo r th e en d -u s ers .
A n o th e r w a y to th in k o f C o n tin u o u s o p era tio n s is a s continuous alerting. T h is is th e
n o tio n th a t en g in e erin g s ta ff is o n -c a ll a nd n o tified if a n y p e rfo rm a n c e a n o m a lies in th e
a p p lic a tio n o r in fra s tru c ture o c c u r. In m o s t c a s es , c o n tin u o u s a lertin g g o es h a n d in h a n d
w ith c o n tin u o u s m o n ito rin g .

O n e o f th e m a in g o a ls o f D e vO p s is to im p ro v e the o v era ll w o rk flo w in th e s o ftw a re


d e ve lo p m e n t lif e c yc le (S D LC ). Th e f lo w o f w o rk is o f te n d es c rib e d a s W IP o r w o rk in
p ro g res s . Im p ro vin g W IP c a n b e a c c o m p lis h e d b y a va riety o f m e a n s . In o rd e r to
ef fec tiv ely re m o ve b o ttle n ec k s th a t d e c rea s e th e flo w o f W IP , o n e m u s t firs t a n a lyz e th e
p e o p le, p ro c e s s , a n d tec h n o lo g y a s p ec ts o f th e e n tire S D L C .

T h es e a re th e 1 1 b o ttlen e c k s th a t h a v e th e b ig g es t im p a c t o n th e flo w o f w o rk .

1. Inconsistent Environments

In a lm o st e v e ry c o m p a n y I h a v e w o rke d f o r o r c o n su lte d w ith , a hu g e a m o u nt o f


w a ste e x ists b e c a us e th e v a rio u s e nv iro nm e n ts (d e v , te s t, sta g e , p ro d ) a re
c o n fig ure d d iffe re ntly . I c a ll th is “ e n v iro n m e nt h e ll” . H o w m a ny tim e s ha v e
yo u he a rd a d e v e lo p e r s a y “ it w o rke d o n m y la p to p ” ? A s c o d e m o v e s fro m
o n e e n v iro n m e nt to th e ne x t, s o ftw a re b re a ks b e c a u se o f th e d iffe re nt
c o n fig ura tio ns w ithin e a c h e nv iro n m e n t. I h a v e s e e n te a m s w a s te d a ys a n d
e v e n w e e ks fix in g b u g s th a t a re d ue to e n v iro n m e nta l iss ue s a nd a re no t d u e to
e rro rs w ithin th e c o d e . Inc o n siste n t e n v iro n m e n ts a re th e nu m b e r o n e kille r o f
a g ility.

Create standard infrastructure blueprints and implement continuous delivery to ensure


all environments are identical.

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

2. Manual Intervention

M a n u al in terve n tio n lea d s to h u m an erro r a n d n o n -re p e a tab le p ro c e s s es . T w o a rea s


w h ere m a n u a l in te rv en tio n c a n d is ru p t a g ility the m o s t a re in te s tin g a n d d e p lo ym e n ts . If
tes tin g is p erfo rm ed m a n u a lly, it is im p o s s ib le to im p le m en t c o n tin u o u s in te g ra tio n a n d
c o n tin u o u s d e liv ery in a n a g ile m a n n e r (if a t a ll). A ls o , m a n u a l te s tin g in c rea s e s th e

cha nc e of p ro d u c in g d e fec ts , c rea tin g u n p la n n ed w o rk . W h en d e p lo ym en ts a re

p e rfo rm e d fully o r p a rtia lly m a nu a l, the ris k o f d e p lo ym e nt fa ilu re in c re a se s


s ig n ific a n tly w h ic h lo w e rs q ua lity a nd re lia b ility a nd inc re a s e s u np la n ne d w o rk.

Automate the build and deployment processes and implement a test automation
methodology like test driven development (TDD)

3. SDLC Maturity

T h e m a tu rity o f a te am ’ s s o ftw a re d e ve lo p m en t lif ec yc le (S D L C ) h a s a d irec t im p a c t o n


th eir a b ility to d e liv er s o ftw a re . T h ere is n o th in g ne w h ere ; S D LC m a tu rity h a s p la g u ed IT
fo r d e c a d e s . In th e a g e o f D e vO p s , w h e re w e s triv e to d e liv er s o ftw are in s h o rter
in c rem en ts w ith a h ig h d e g ree o f re lia b ility a n d q u a lity, it is e ve n m o re c ritic a l fo r a tea m
to h a ve a m a tu re p ro c e s s .

S o m e c o m p a n ie s I v is it a re s till p ra c tic in g w a terfa ll m e th o d o lo g ie s . T h es e c o m p a n ies


s tru g g le w ith D e vO p s b e c a u s e th ey d o n ’ t h a ve a n y e xp erien c e w ith a g ile . B u t n o t all
c o m p a n ies th a t p ra c tic e a g ile d o it w ell. S o m e a re e a rly in th e ir a g ile jo u rn ey, w hile o th ers
h a ve im p lem en te d w h a t I c a ll “ W a g ile ” : w a te rfa ll ten d en c ies w ith a g ile te rm in o lo g y
s p rin k led in . I h a ve s e en te a m s w h o h a v e im p lem e n te d K a n b a n b ut s tru g g le w ith th e
p rio ritiz a tio n a n d c o n tro l o f W IP . I h a ve s ee n s c ru m te a m s s tru g g le to c o m p lete th e s to ry
p o in ts th a t th ey p ro m is ed . It ta k e s tim e to g e t rea lly g o o d a t a g ile .

Invest in training and hold blameless post mortems to continously solicit feedback and
improve.

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

4. Legacy Change Management Processes

M a n y c o m p a n ies h a ve h a d th e ir c h a n g e m a n a g e m en t p ro c e s s es in p la c e fo r ye a rs a n d
a re c o m fo rta b le w ith it. T h e p ro b lem is th a t th es e p ro c e s s es w ere c rea te d b a c k w h en
c o m p a n ies w ere d e p lo y in g a n d u p d a tin g b a c k o ffic e s o lu tio n s o r in fra s tru c tu re c h a n g es
th a t h a p p e n ed in freq u en tly. F a s t fo rw a rd to to d a y’ s en v iro n m e n ts w h e re a p p lic a tio n s
a re m a d e o f m a n y s m all c o m p o n en ts o r m ic ro s ervic es th a t c a n b e c h a n g e d a n d
d e p lo yed q u ic k ly, n o w a ll o f a s u d d en th e p ro c es s g ets in th e w a y.

M a n y la rg e c o m p a n ie s w ith w ell-es ta b lis h ed IT IL p ro c e s s es s tru g g le w ith D e vO p s . In


th es e e n viro n m en ts I h a ve s e en d ev elo p m e n t tea m s im p le m e n t h ig h ly a u to m a te d C I/C D
p ro c e s s es o n ly to s to p a n d w a it fo r w e ek ly m a n u a l re vie w g a tes . S o m e tim es th e s e tea m s
h a ve to g o th ro u g h m u ltip le re vie w s ( s ec u rity, o p era tio n s , c o d e, a n d c h a n g e c o n tro l).
W h a t is w o rs e is th a t th ere is o f te n a lo n g lin e to w a it in fo r rev iew s , c a u s in g a rev iew
p ro c e s s to s lip a n o th e r w e ek . M a n y o f th es e rev iew s a re ju s t ru b b e r s ta m p a p p ro v a ls th a t
c o u ld b e en tire ly a v o id e d w ith s o m e m in o r m o d ific a tio n s to th e e xis tin g p ro c es s e s .

Companies with legacy processes need to look at how they can modernize processes to
be more agile instead of being the reason why their company can’ t move fast enough.

5. Lack of Operational Maturity

M o v in g to a D ev O p s m o d e l o f te n req u ire s a d iffere n t a p p ro a c h to o p era tio n s . So m e


c o m p a n ies a c c u s to m e d to s u p p o rtin g b a c k o ff ic e a p p lic a tio n s th a t c h a n g e in freq u en tly.
It re q u ires a d iffe re n t m in d s et to s u p p o rt s o ftw a re d elive re d a s a s e rvic e th a t is a lw a ys o n ,
a n d d e p lo ye d f re q u e n tly. W ith D ev O p s , o p era tio n s is n o lo n g e r ju s t s o m eth in g O p s d o e s .
D e ve lo p e rs n o w m u s t h a ve to o ls s o th ey c a n s u p p o rt a p p lic a tio n s . O ften I en c o u n ter
c o m p a n ies th a t o n ly m o n ito r in fra s tru c tu re. In th e D ev O p s m o d el d e ve lo p e rs n e ed a c c e s s
to lo g g in g s o lu tio n s , a p p lic a tio n p erfo rm a n c e m o n ito rin g ( A P M ) to o ls , w eb a n d m o b ile
a n a lytic s , a d v a nc ed a le rtin g and n o tific a tio n s o lu tio n s . P ro c e s s es lik e cha ng e
m a n a g em e n t, p ro b le m m a n a g em e n t, req u es t m a n a g em en t, in c id en t m a n a g e m en t,
a c c es s m a n a g e m en t, a n d m a n y o th e rs o ften n e ed to b e m o d e rn iz ed to a llo w f o r m o re
a g ility a n d tra n s p a ren c y. W ith D e vO p s , o p era tio n s is a tea m s p o rt.

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Assess your operational processes, tools, and organization and modernize to

increase agility and transparency.

6. Outdated testing practices

T o o o ften I s e e c lie n ts w h o h a v e a s ep a ra te Q A d e p a rtm e n t th a t is n o t fu lly in teg ra te d


w ith th e d ev elo p m en t te a m . T h e c o d e is th ro w n o ve r th e w a ll a n d th e n te s tin g b e g in s .
B u g s a re d etec ted a n d s en t b a c k to d ev elo p ers w h o th en h a v e to q u ic k ly fix , b u ild , a n d
red ep lo y. T h is p ro c es s is re p ea te d u n til th e re is n o tim e rem a in in g a n d tea m s a re lef t to
a g re e o n w h a t d e fe c ts th ey c a n to le ra te a n d p ro m o te to p ro d u c tio n . T h is is a d e a th s p ira l
in a c tio n. W ith e ve ry relea s e , th e y in tro d u c e m o re tec h n ic a l d eb t into th e s ys te m lo w erin g
its q u a lity a nd re lia b ility, a n d in c rea s in g u n p la n n e d w o rk . T h ere is a b etter w a y.

T h e b e tte r w a y is to b lo c k b u g s f ro m m o vin g fo rw a rd in th e d ev elo p m e n t p ro c e s s . T h is is


a c c o m p lis h ed b y b u ild in g a u to m a te d tes t h a rn e s s es a n d b y a u to m a tic a lly fa ilin g th e b u ild
if a n y o f th e te s ts fa il. T his is w h a t c o n tin u o u s in te g ra tio n is d e s ig n ed fo r. T es tin g m u s t
b e p a rt o f th e d ev elo p m e n t p ro c e s s , n o t a h a n d o ff th a t is p e rfo rm e d a fter d ev elo p m en t.
D e ve lo p e rs n ee d to p la y a b ig g e r p a rt in tes tin g a n d tes ters n e ed to p la y a b ig g er p a rt in
d e ve lo p m e n t. T h is s trik es fe a r in s o m e tes ters a n d n o t a ll tes ters c a n m a k e th e tra n s itio n .

Quality is everyone’ s responsibility, not just the QA team.

7. Automating waste

A v ery c o m m o n p a ttern I ru n in to is th e a u to m a tio n o f w a s te . T h is o c c u rs w h en a tea m


d e c la res its e lf a D e vO p s te a m o r a p ers o n d ec la re s th em s elv es a D e vO p s e n g in ee r a n d
im m e d ia te ly s ta rts w ritin g h u n d red s o r th o u s a n d s o f lin es o f C h e f o r P u p p et s c rip ts to
a u to m a te th e ir ex is tin g p ro c e s s es . T h e p ro b le m is th a t m an y o f th e ex is tin g p ro c e s s es
a re b o ttle n ec k s a n d n ee d to b e c h a n g ed . A u to m a tin g w a s te is lik e p o u rin g c o n c re te
a ro u n d u n b a la n c ed s u p p o rt b e a m s . It m a k es b a d d es ig n p erm a n e n t.

Automate processes after the bottlenecks are removed.

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

8. Competing or Misaligned Incentives and Lack of Shared Ownership

T h is b o ttle n ec k h a s p la g u e d IT fo r ye a rs b u t is m o re p ro fo u n d w h e n a ttem p ting to b e


a g ile. In fa c t, th is is s u e is a t th e h ea rt o f w h y D ev O p s c a m e to b e in th e firs t p la c e .
D e ve lo p e rs a re in c e n ted fo r s p ee d to m a rk e t a n d o p era tio n s is in c e n ted to e n s u re s e c u rity ,
relia b ility, a va ila b ility, a n d g o v ern a n c e . T h e in c en tive s a re c o n flic tin g . In s tea d , ev eryo n e
s h o u ld b e in c en ted fo r c u s to m er s a tis fa c tio n , w ith a h ig h d eg ree o f a g ility, relia b ility, a n d
q u a lity (w h ic h is w h at D ev O p s is a ll a b o u t) . If ev ery tea m is n o t m a rc h in g to w a rd s th e
s a m e g o a ls , th en th e re w ill b e a n ev er-e n d in g b a ttle o f p rio rities a n d re s o u rc e s . If all
tea m s ’ g o a ls a re in s u p p o rt o f th e g o a ls I m e n tio n ed a b o ve , a n d ev eryo n e is m ea s u re d
in a w a y th a t en fo rc es th o s e in c en tive s , th e n ev eryo n e w in s --- e s p ec ia lly th e c u s to m e r.

Work with HR to help change the reward and incentives to foster the desired behaviors.

9. Dependence on Heroic Efforts

W h e n h ero ic e ffo rts a re n ec e s s a ry to s uc c e ed , th e n a te am is in a d ark p la c e . T h is o ften


m ea n s w o rk in g in s a n e h o u rs , b ein g rea c tiv e in s tea d o f p ro a c tiv e, a n d b e in g h ig h ly re lia n t
o n lu c k a n d c h a n c e . T h e b ig g e s t c a u s es o f th is a re a la c k o f a u to m a tio n , to o m u c h trib a l
k n o w led g e , im m a tu re o p era tio n a l p ro c es s e s , a n d ev en p o o r m a n a g e m e n t. T h e c u ltu re o f
h ero is m o ften lea d s to b u rn o u t, h ig h tu rn o v er, a n d p o o r c u s to m e r s a tis f a c tio n .

If your organization relies on heroes, find out what the root causes are that creates
these dependencies and fix them fast.

10. Governance as an Afterthought

W h e n D e vO p s s ta rts a s a g ra s s ro o ts in itia tive the re is typ ic a lly little a tte n tio n p a id to th e


q u e s tio n “ h o w d o e s th is s c a le? ” It is m u c h e a s ie r to s h o w s o m e s uc c e s s in a s m all
is o la ted tea m a n d fo r a n in itia l p ro jec t. B ut o n c e th e D e vO p s in itia tiv e s ta rts s c a lin g to
la rg er p ro je c ts ru n n in g o n w a y m o re in fra s tru c tu res o r o n c e it s ta rts s p re a d in g to o th er
tea m s , it c an c o m e c ra s h in g d o w n w ith o u t p ro p e r g o v ern a n c e in p la c e. T h is is ve ry s im ila r
to b u ild in g s o ftw a re in th e c lo u d . H o w m a n y tim es h a v e yo u s ee n a s m a ll tea m w h ip o u t
th eir c re d it c a rd a n d b u ild an a m a z in g s o lu tio n o n A W S ? E a s y to d o , rig h t? T h en a yea r
la te r th e c o s ts a re s p ira lin g o u t o f c o n tro l a s th e y lo s e s ig h t o f h o w m a n y s erv ers a re in

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

u s e a n d w h a t is run n in g o n th e m . T h ey a ll h a ve d if feren t v ers io n s o f th ird p a rty p ro d u c ts


a n d lib ra rie s o n th e m . S u d d e n ly, it is n o t s o e a s y a n ym o re .

W ith D e vO p s , th e s a m e th in g c a n h a p p e n w ith o u t th e a p p ro p ria te c o n tro ls in p la c e . M a n y


c o m p a n ies s ta rt th e ir D ev O p s jo u rn e y w ith a te am o f in n o v a to rs a n d a re a b le to s c o re
s o m e m a jo r w in s . B u t w h e n th ey ta k e th a t m o d el to o th e r te a m s it a ll fa lls d o w n . T h e re
a re n um e ro u s rea s o n s th a t th is h a p p en s . Is th e o rg a n iz a tio n rea d y to m anag e
in fra s tru c tu re a n d o p era tio n s a c ro s s m u ltip le tea m s ? A re th e re c o m m o n s h a red s ervic es
a va ila b le lik e c en tra l lo g g in g a n d m o n ito rin g s o lu tio n s o r is ea c h tea m ro llin g th e ir o w n ?
Is th e re a c o m m o n s ec u rity a rc h itec tu re th a t e ve ryo n e c a n a d h e re to ? C a n th e tea m s
p ro vis io n th e ir o w n in fra s tru c tu re fro m a s e lf-s ervic e p o rta l o r a re th e y a ll d ep en d e n t o n a
s in g le q u eu e tic k etin g s ys tem ? I c o u ld g o o n b u t yo u g et th e p o in t. It is ea s ier to c u t s o m e
c o rn ers w h en th ere is o n e te a m to m a n a g e b u t to s c a le w e m u s t lo o k a t th e e n tire s ervic e
c a ta lo g . D e vO p s w ill n o t s c a le w ith o u t th e a p p ro p ria te le ve l o f g o v ern a n c e in p la c e.

Assign an owner and start building a plan for scaling DevOps across the organization.

11. Limited to No Executive Sponsorship

T h e m o s t s u c c e s s fu l c o m p a n ies h a ve to p le ve l s u p p o rt fo r th eir D ev O p s in itia tiv e. O n e o f


m y c lie n ts is m a k in g a h ea v y in ve s tm e n t in D e vO p s tra in in g a n d it w ill ru n a la rg e n u m b er
o f em p lo yee s th ro u g h th e p ro g ra m . C o m p a n ie s w ith to p lev el s u p p o rt m a k e D ev O p s a
p rio rity. T h e y b re a k d o w n b arriers , d riv e o rg a n iz a tio n a l c h a n g e , im p ro ve in c e n tiv e p la n s ,
c o m m u n ic a te “ W h y” th ey a re d o in g D ev o p s , a n d fu n d the in itia tive . W h e n th ere is n o
to p le ve l s u p p o rt, D e vO p s b e c o m e s m u c h m o re c h a lle n g in g a n d o f te n b e c o m e s a n ew
s ilo . D o n ’ t let th is s to p yo u f ro m s ta rtin g a g ra s s ro o ts in itia tive . M a n y s p o n s o re d
in itia tiv es s ta rte d a s g ra s s ro o ts in itia tiv es . T h e s e g ra s s ro o ts tea m s m ea s u red th e ir
s u c c es s a n d p itc he d th e ir e xe c u tive s . S o m e tim es w h e n ex ec u tiv es s e e th e res u lts a n d
th e R O I th e y b ec o m e th e c h a m p io n s fo r fu rth erin g th e c a u s e. M y p o in t is , it is h a rd to g et
d e v a n d o p s to w o rk to g e th er w ith c o m m o n g o a ls w h e n it is n o t s up p o rte d a t th e h ig h es t
lev els . It is d iffic u lt to tra n s fo rm a c o m p a n y to D e vO p s if it is n o t s u p p o rted a t th e h ig h es t
lev els .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

If running a grassroots effort, gather before and after metrics and be prepared to sell
and evangelize DevOps upward.

Unit 2
Software Development Life Cycle models and
Devops

Software Development Life Cycle models

Agile
Lean
Waterfall
Iterative
Spiral
DevOps

E a c h o f th es e a p p ro a c h e s va ries in s o m e w a ys fro m th e o th ers , b u t a ll h a ve a c o m m o n


p u rp o s e: to h elp te a m s d elive r h ig h -q u a lity s o f tw a re a s q u ic k ly a n d c o s t-e ffec tiv ely a s
p o s s ib le.

1. Agile

T h e A g ile m o d e l f irs t em e rg ed in 2 0 0 1 a nd h a s s in c e b ec o m e th e d e fa c to in d u s try


s ta n d a rd . S o m e b u s in e s s es v a lu e th e A g ile m e th o d o lo g y s o m u c h th a t th e y a p p ly it to
o th e r typ e s o f p ro jec ts , in c lu d in g n o n tec h in itia tive s .

In th e A g ile m o d el, fa s t f a ilu re is a g o o d th in g . T h is a p p ro a c h p ro d u c es o n g o in g rele a s e

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

c y c les , e a c h fea tu ring s m a ll, in c rem en ta l c h a n g e s fro m the p rev io u s re lea s e. A t e a c h


ite ra tio n , th e p ro d u c t is te s te d . T h e A g ile m o d el h e lp s te a m s id en tify a n d a d d re s s s m all
is s u es o n p ro jec ts b efo re th e y ev o lve in to m o re s ig n ific a n t p ro b lem s , a n d it e n g a g es
b u s in e s s s ta k eh o ld e rs to g iv e fee d b a c k th ro u g h o u t th e d e ve lo p m e n t p ro c es s .

A s p a rt o f th e ir em b ra c e o f th is m e th o d o lo g y, m a n y tea m s a ls o a p p ly a n A g ile fra m ew o rk


k n o w n a s S c ru m to h elp s tru c tu re m o re c o m p le x d ev elo p m en t p ro jec ts . Sc ru m tea m s
w o rk in s p rin ts , w h ic h u s u a lly la s t tw o to fo u r w e ek s , to c o m p lete a s s ig n ed ta s k s . D a ily
S c ru m m ee tin g s h elp th e w h o le te a m m o n ito r p ro g re s s th ro u g h o u t th e p ro je c t. A n d th e
S c ru m M a s ter is ta s k e d w ith k ee p in g th e tea m f o c u s e d o n its g o a l.

2. Lean

T h e L ea n m o d e l fo r s o ftw a re d e ve lo p m en t is in s p ire d b y "lea n " m a n u fa c tu rin g p ra c tic es


a n d p rin c ip le s . T h e s e ve n L ea n p rin c ip le s (in th is o rd e r) a re: e lim in a te w a s te, a m p lify
lea rn in g , d e c id e a s la te a s p o s s ib le, d elive r a s fa s t a s p o s s ib le , e m p o w e r th e tea m , b u ild
in in teg rity a n d s ee th e w h o le .

T h e Le a n p ro c e s s is a b o u t w o rk in g o n ly o n w h a t m u s t b e w o rk e d o n at th e tim e , s o
th ere’ s no ro o m fo r m u ltita s k in g . Pro jec t te a m s a re a ls o fo c u s ed on fin d in g
o p p o rtu n itie s to c u t w a s te a t e ve ry tu rn th ro u g h o u t th e S D L C p ro c es s , fro m d ro p p in g
u n n ec es s a ry m e etin g s to red u c in g d o c u m en ta tio n .

T h e A g ile m o d el is a c tu a lly a Le a n m e th o d fo r th e S D LC , b u t w ith s o m e n o ta b le


d iff eren c es . O n e is h o w e a c h p rio ritiz es c u s to m er s a tis f a c tio n : A g ile m a k e s it th e to p
p rio rity fro m th e o u ts e t, c rea ting a flex ib le p ro c e s s w h ere p ro jec t tea m s c a n re s p o n d
q u ic k ly to s ta k eh o ld er f ee d b a c k th ro u g h o u t th e S D LC . L ea n , m ea n w h ile , em p ha s iz es th e
elim in a tio n o f w a s te a s a w a y to c rea te m o re o ve ra ll va lu e fo r c u s to m e rs — w h ic h , in tu rn ,
h elp s to e n h a n c e s a tis fa c tio n .

3. Waterfall

S o m e e xp erts a rg u e th a t th e W a te rfa ll m o d e l w a s n e ve r m ea n t to b e a p ro c e s s m o d el fo r
rea l p ro jec ts . R e g a rd le s s , W a terfa ll is w id ely c o n s id e re d th e o ld e s t o f th e s tru c tu red S D L C
m eth o d o lo g ie s . It’ s a ls o a v ery s tra ig h tfo rw a rd a p p ro a c h : fin is h o n e p h a s e , th en m o v e

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

o n to th e n e xt. N o g o in g b a c k . E a c h s ta g e relies o n in fo rm a tio n fro m th e p rev io u s s ta g e


a n d h a s its o w n p ro jec t p la n .

T h e d o w n s id e o f W a terfa ll is its rig id ity. S u re , it’ s e a s y to u n d e rs ta n d a n d s im p le to


m a n a g e. B u t e a rly d ela ys c a n th ro w o ff th e e ntire p ro je c t tim e lin e . W ith little ro o m fo r
rev is io n s o n c e a s ta g e is c o m p le ted , p ro b lem s c a n ’ t b e fixe d u n til yo u g e t to th e
m a in ten a n c e s ta g e . T h is m o d e l d o es n ’ t w o rk w e ll if fle xib ility is n e ed ed o r if th e p ro je c t
is lo n g -te rm a n d o n g o in g .

E v en m o re rig id is th e rela ted V e rific a tio n a n d V alid a tio n m o d el — o r V -s h a p e d m o d el.


T h is lin e a r d ev elo p m en t m eth o d o lo g y s p ra n g f ro m th e W a te rfa ll a p p ro a c h . It’ s
c h a ra c te riz ed b y a c o rres p o n d in g tes tin g p h a s e fo r ea c h d ev elo p m e n t s ta g e . L ik e
W a terfa ll, e a c h s ta g e b eg in s o n ly a f te r the p re vio u s o n e h a s en d e d . T h is S D L C m o d el c a n
b e u s efu l, p ro vid e d yo ur p ro jec t h a s n o u n k n o w n re q u irem en ts .

4. Iterative

The Ite ra tiv e m o d el is rep etitio n in c a rn a te. In s tea d o f s ta rtin g w ith fu lly k n o w n
req u irem e n ts , p ro jec t te a m s im p lem e nt a s e t o f s o ftw a re req u irem en ts , th e n tes t,
ev a lu a te a n d p in p o in t fu rth er req u irem en ts . A n ew v ers io n o f th e s o ftw a re is p ro d u c e d
w ith ea c h p h a s e, o r itera tio n . R in s e a n d rep ea t u n til th e c o m p le te s ys te m is re a d y.

A d va n ta g e s o f th e Ite ra tive m o d el o v er o th e r c o m m o n S D L C m eth o d o lo g ie s is th a t it


p ro d u c e s a w o rk in g v ers io n o f th e p ro je c t e a rly in th e p ro c es s a n d m a k es it les s
ex p e n s ive to im p le m e n t c h a n g es . O n e d is a d va n ta g e : R e p e titiv e p ro c es s e s c a n c o n s u m e
res o u rc es q u ic k ly.

O n e e xa m p le o f a n Ite rative m o d e l is th e R a tio n a l U n ifie d P ro c e s s ( R U P ), d ev elo p ed b y


IB M ’ s R a tio n a l S o ftw a re d ivis io n . R U P is a p ro c es s p ro d u c t, d es ig n e d to en h a n c e tea m
p ro d u c tivity fo r a w id e ra n g e o f p ro je c ts a n d o rg a n iza tio n s .

R U P d ivid e s th e d ev elo p m en t p ro c es s in to f o u r p h a s es :

In c ep tio n , w h e n th e id ea fo r a p ro je c t is s e t
E la b o ra tio n , w h e n th e p ro je c t is fu rth er d ef in e d a n d res o u rc es a re ev a lu a te d
C o n s tru c tio n , w h e n th e p ro je c t is d e ve lo p ed a n d c o m p le te d

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

T ra n s itio n , w h en th e p ro d u c t is re le a s ed

Eac h p h as e of th e p ro je c t in vo lve s b u s in e s s m o d e lin g , a n a lys is and d e s ig n ,


im p lem en ta tio n , te s tin g , a n d d e p lo y m e n t.

5. Spiral

O n e o f th e m o s t fle xib le S D L C m e th o d o lo g ie s , S p ira l ta k e s a c u e fro m th e Ite ra tive m o d el


a n d its rep etitio n . T h e p ro je c t p a s s es th ro u g h fo u r p h a s es (p la n n in g , ris k a n a lys is ,
en g in ee rin g a n d ev a lu a tio n ) o ve r a n d o v er in a f ig u ra tive s p ira l u n til c o m p le te d , a llo w in g
fo r m u ltip le ro u n d s o f refin em e nt.

T h e S p ira l m o d el is typ ic a lly us e d fo r la rg e p ro jec ts . It en a b le s d ev elo p m en t te a m s to


b u ild a h ig h ly c u s to m iz ed p ro d u c t a n d in c o rp o ra te u s er f ee d b a c k ea rly o n . A n o th er
b e n ef it o f th is S D L C m o d e l is ris k m a n a g e m e n t. E a c h ite ra tio n s ta rts b y lo o k in g a h e a d to
p o ten tia l ris k s a n d fig u rin g o u t h o w b e s t to a v o id o r m itig a te th em .

6. DevOps

T h e D ev O p s m e th o d o lo g y is a re la tive n ew c o m er to th e S D LC s c e n e. It e m e rg e d fro m tw o
tre n d s : th e a p p lic a tio n o f A g ile a n d L ea n p ra c tic e s to o p e ra tio n s w o rk , a n d th e g en e ra l
s h ift in b u s in es s to w a rd s e ein g th e va lu e o f c o lla b o ra tio n b e tw e en d ev elo p m e n t a n d
o p era tio n s s ta ff a t a ll s ta g e s o f th e SD LC p ro c e s s .

In a D e vO p s m o d e l, D ev elo p ers a n d O p era tio n s te a m s w o rk to g e th e r c lo s ely — and


s o m e tim es a s o n e te a m — to a c c e le rate in n o v a tio n a n d th e d e p lo ym e nt o f h ig h er-q u a lity
a n d m o re re lia b le s o ftw a re p ro d u c ts a n d fu n c tio n a litie s . U p d a tes to p ro d u c ts a re s m all
b u t freq u en t. D is c ip lin e , c o n tin u o u s f ee d b a c k a n d p ro c es s im p ro v em en t, a n d au to m a tio n
o f m a n u a l d ev elo p m en t p ro c e s s es a re a ll h a llm a rk s o f th e D e vO p s m o d e l.

A m a zo n W e b S ervic es d es c rib es D ev O p s a s th e c o m b in atio n o f c u ltura l p h ilo s o p h ie s ,


p ra c tic e s , a n d to o ls th a t in c re a s es a n o rg a n iz a tio n ’ s a b ility to d e liv er a p p lic a tio n s a n d
s erv ic es a t hig h ve lo c ity, ev o lvin g a n d im p ro v in g p ro d u c ts a t a fa s te r p a c e th a n
o rg a niz a tio n s u s in g tra d itio na l s o f tw a re d e ve lo p m e nt a n d in fras tru c tu re m a n a g em en t
p ro c e s s es . S o lik e m a n y S D LC m o d els , D ev O p s is n o t o n ly a n a p p ro a c h to p la n n in g a n d
ex ec u tin g w o rk , b u t a ls o a p h ilo s o p h y th a t d em a n d s a n o n tra d itio n a l m in d s et in a n

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

o rg a niz a tio n .

C h o o s in g th e rig h t S D LC m e th o d o lo g y fo r yo u r s o ftw a re d ev elo p m en t p ro jec t re q u ires


c a re fu l th o u g h t. B u t k ee p in m in d th a t a m o d el fo r p la n n in g a n d g u id in g yo u r p ro je c t is
o n ly o n e in g red ien t fo r s u c c es s . E ve n m o re im p o rta n t is a s s em b lin g a s o lid te a m o f
s k ille d ta len t c o m m itte d to m o vin g th e p ro jec t fo rw a rd th ro u g h ev ery u n ex p e c te d
c h a llen g e o r s etb ac k .

DevOps Lifecycle

D e vO p s d e fin e s a n a g ile rela tio n s h ip b etw ee n o p era tio n s a n d D ev elo p m e n t. It is a


p ro c e s s th a t is p ra c tic e d b y th e d e ve lo p m en t tea m a n d o p e ra tio n a l en g in eers to g eth er
fro m b e g in n in g to th e f in a l s ta g e o f th e p ro d u c t.

Le a rn in g D e vO p s is n o t c o m p le te w ith o u t u n d e rs ta n d in g th e D e vO p s lifec yc le p h a s e s .
T h e D e vO p s lifec yc le in c lu d es s ev en p h a s e s a s g iv en b elo w :

1) Continuous Development

T h is p h a s e in vo lv es th e p la n n in g a n d c o d in g o f th e s o ftw a re. T h e vis io n o f th e p ro je c t is


d e c id ed d u rin g th e p la n n in g p h a s e . A nd th e d e ve lo p e rs b e g in d ev elo p in g th e c o d e fo r th e

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

a p p lic a tio n . T h ere a re n o D e vO p s to o ls th a t a re req u ired fo r p la n n in g , b u t th e re a re s ev era l


to o ls fo r m a in ta in in g th e c o d e.

2) Continuous Integration

T h is s ta g e is th e h ea rt o f th e e n tire D ev O p s life c yc le . It is a s o ftw a re d e ve lo p m en t


p ra c tic e in w h ic h th e d e ve lo p ers re q u ire to c o m m it c h a n g e s to th e s o u rc e c o d e m o re
freq u en tly. T h is m a y b e o n a d a ily o r w ee k ly b a s is . Th e n e ve ry c o m m it is b u ilt, a n d th is
a llo w s e a rly d ete c tio n o f p ro b le m s if th ey a re p res e n t. B u ild in g c o d e is n o t o n ly in vo lve d
c o m p ilatio n , but it a ls o in c lud es unit testing, integration testing, code review ,
a n d packaging.

T h e c o d e s u p p o rtin g n ew fu n c tio n a lity is c o n tin u o u s ly inte g ra te d w ith the ex is tin g c o d e .


T h ere fo re, th e re is c o n tin uo u s d ev elo p m e n t o f s o ftw a re . T h e u p d a te d c o d e n e ed s to b e
in te g ra ted c o n tin u o u s ly a n d s m o o th ly w ith th e s ys te m s to ref le c t c h a n g es to th e
en d -u s e rs .

J en k in s is a p o p u la r to o l u s ed in th is p h a s e. W h en e ve r th e re is a c h a n g e in th e G it
rep o s ito ry, th en J en k in s f etc h e s th e u p d a te d c o d e a n d p rep a re s a b u ild o f th a t c o d e ,
w h ic h is a n e xe c u ta b le file in th e f o rm o f w a r o r jar. T he n th is b u ild is fo rw a rd e d to th e
tes t s erve r o r th e p ro d u c tio n s erv er.

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

3) Continuous Testing

T h is p ha s e , w h e re th e d e ve lo p ed s o f tw a re is c o n tin u o u s ly te s tin g fo r b u g s . F o r c o n s ta n t
tes tin g , a u to m a tio n tes tin g to o ls s u c h a s TestNG, JUnit, Selenium, e tc a re u s e d . T h e s e
to o ls a llo w Q A s to te s t m ultip le c o d e -b as e s th o ro u g h ly in p a ra llel to e n s u re th a t th ere is
n o f la w in th e fu n c tio n a lity. In th is p h a s e , Docker C o n ta in e rs c a n b e u s ed fo r s im u la tin g
th e tes t e n viro n m en t.

Selenium d o es th e a u to m a tio n te s tin g , a n d T es tN G g e n era tes th e rep o rts . T h is en tire


tes tin g p h a s e c a n au to m a te w ith th e h elp o f a C o n tin uo u s In teg ra tio n to o l c a lled Jenkins.

A u to m a tio n te s tin g s a v es a lo t o f tim e a n d e ffo rt fo r ex ec u tin g th e tes ts in s tea d o f d o in g


th is m a n u a lly. A p a rt fro m th a t, re p o rt g en era tio n is a b ig p lu s . T h e ta s k o f e va lu a tin g th e
tes t c a s e s th a t fa iled in a tes t s u ite g e ts s im p le r. A ls o , w e c a n s c h e d u le th e ex ec u tio n o f
th e tes t c a s e s a t p red ef in e d tim e s . A fter tes tin g , th e c o d e is c o n tinu o u s ly in teg ra te d w ith
th e ex is tin g c o d e.

4) Continuous Monitoring

M o n ito rin g is a p h a s e th a t in v o lve s a ll th e o p e ra tio n a l fa c to rs o f th e en tire D e vO p s


p ro c e s s , w h ere im p o rta n t in f o rm a tio n a b o u t th e u s e o f th e s o ftw a re is re c o rd ed a n d
c a re fu lly p ro c e s s ed to fin d o u t tre n d s a n d id e n tify p ro b lem a re a s . U s u a lly, th e m o n ito rin g
is in teg rate d w ith in th e o p e ra tio n a l c a p a b ilities o f th e s o ftw a re a p p lic a tio n .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

It m a y o c c u r in th e fo rm o f d o c u m e n ta tio n file s o r m a yb e p ro d u c e la rg e-s c a le d a ta ab o u t


th e a p p lic a tio n p a ra m ete rs w h en it is in a c o n tin u o u s u s e p o s itio n. T h e s ys te m e rro rs
s u c h a s s e rv er n o t re a c h a b le , lo w m em o ry, etc a re res o lv ed in th is p h as e . It m a in ta in s th e
s ec u rity a n d a va ila b ility o f th e s e rv ic e .

5) Continuous Feedback

T h e a p p lic a tio n d ev elo p m en t is c o n s is te n tly im p ro ve d b y a n a lyzin g th e res u lts fro m th e


o p era tio n s o f th e s o ftw a re. T h is is c a rrie d o u t b y p la c in g th e c ritic a l p h a s e o f c o n s ta n t
fe ed b a c k b etw ee n the o p era tio n s a n d th e d ev elo p m en t o f th e n ex t v ers io n o f th e c u rren t
s o f tw a re a p p lic a tio n .

T h e c o n tin u ity is th e e s s en tial fa c to r in th e D e vO p s a s it rem o v es th e u n n ec es s a ry s te p s


w h ic h a re re q u ired to ta k e a s o ftw are ap p lic a tio n fro m d e ve lo p m e n t, u s in g it to fin d o u t
its is s u e s a n d th en p ro d u c in g a b e tte r v ers io n . It k ills th e ef fic ien c y th a t m a y b e p o s s ib le
w ith th e a p p a n d re d u c e th e n u m b er o f in te res ted c u s to m ers .

6) Continuous Deployment

In th is p h as e , th e c o d e is d e p lo yed to th e p ro d u c tio n s e rv ers . A ls o , it is e s s en tia l to e ns u re


th a t th e c o d e is c o rre c tly us e d o n a ll th e s e rve rs .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

T h e n e w c o d e is d ep lo ye d c o n tin u o u s ly , a n d c o n fig u ra tio n m a n a g e m e n t to o ls p la y a n


es s e n tia l ro le in e xe c u tin g ta s k s freq u en tly an d q u ic k ly. H ere a re s o m e p o p u la r to o ls
w h ic h a re u s ed in th is p h a s e , s u c h a s Chef, Puppet, Ansible , a n d SaltStack .

C o n ta in e riz a tio n to o ls a re a ls o p la yin g an e s s en tia l ro le in th e d e p lo ym en t


p h a s e . Vagrant a n d Docker a re p o p u la r to o ls th a t a re u s e d fo r th is p u rp o s e . T h es e to o ls
h elp to p ro d u c e c o n s is te n c y a c ro s s d ev elo p m e n t, s ta g in g , te s tin g , a n d p ro d u c tio n
en v iro n m e n t. Th e y a ls o h elp in s c a lin g u p a n d s c a lin g d o w n in s ta n c e s s o ftly .

C o n ta in e riz a tio n to o ls h e lp to m a in ta in c o n s is ten c y ac ro s s th e en v iro n m e nts w h ere th e


a p p lic a tio n is tes ted , d e ve lo p e d , a nd d e p lo ye d . T h e re is n o c h a n c e o f erro rs o r fa ilu re in
th e p ro d u c tio n e n viro n m en t a s th e y p a c k a g e a n d re p lic a te th e s a m e d e p e n d e nc ies a n d
p a c k a g e s u s ed in th e te s tin g , d e ve lo p m e nt, a n d s tag in g e n viro n m en t. It m a k e s th e
a p p lic a tio n e a s y to ru n o n d iff eren t c o m p u te rs .

Devops influence on Architecture

Introducing software architecture

DevOps Model

T he D e v O p s m o d e l g o e s th ro ug h se v e ra l p ha se s g o v e rn e d b y c ro ss -d is c ip lin e
te a m s . T h o se p h a s e s a re a s fo llo w s :

Planning,Identify,andTrack U s in g th e la te s t in p ro jec t m a n a g em en t to o ls a n d a g ile


p ra c tic e s , trac k id ea s a n d w o rk f lo w s v is u a lly. T h is g iv es a ll im p o rta n t s ta k eh o ld e rs a
c le a r p a thw a y to p rio ritiza tio n a n d b etter res u lts . W ith b etter o v ers ig h t, p ro je c t m an a g ers
c a n e n s u re tea m s a re o n th e rig h t tra c k a n d a w a re o f p o te n tia l o b s ta c les a n d p itfa lls . A ll
a p p lic a b le te a m s c a n b etter w o rk to g eth er to s o lve a n y p ro b lem s in th e d e ve lo p m en t
p ro c e s s .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Development Phase V e rs io n c o n tro l s ys te m s h elp d e ve lo p e rs c o n tin u o u s ly co de ,


en s u rin g o n e p a tc h c o n n e c ts s e a m les s ly w ith th e m a s ter b ra n c h . E a c h c o m p lete fea tu re
trig g ers th e d e ve lo p e r to s u b m it a req u es t th a t, if a p p ro ve d , a llo w s th e c h a n g e s to re p la c e
ex is tin g c o d e. D ev elo p m e n t is o n g o in g .

Testing Phase A fter a b u ild is c o m p leted in d e ve lo p m e n t, it is s en t to Q A te s tin g .


C a tc h in g b u g s is im p o rta n t to th e u s e r e xp erien c e, in D e vO p s b u g tes tin g h a p p en s e a rly
a n d o ften . P ra c tic es lik e c o n tin u o u s in teg ra tio n a llo w d ev elo p ers to u s e a u to m a tio n to
b u ild a n d tes t a s a c o rn ers to n e o f c o n tin u o u s d ev elo p m e n t.

Deployment Phase In th e d ep lo ym en t p h a s e, m o s t b u s in e s s es s trive to a c h iev e


c o n tin u o u s d elive ry. Th is m ea n s en terp ris es h a v e m a s te re d th e a rt o f m a n u a l d ep lo ym en t.
A fter b u g s h a v e b ee n d etec ted a n d res o lve d , a n d th e u s e r e xp erie n c e h a s b ee n p erfe c ted ,
a f in a l te am is re s p o n s ib le fo r th e m a n u a l d ep lo ym en t. B y c o n tra s t, c o n tin u o u s
d e p lo ym e n t is a D ev O p s a p p ro ac h th a t a u to m a te s d ep lo ym en t a fter Q A tes tin g h a s b e en
c o m p leted .

Management Phase D u rin g th e p o s t-d e p lo ym en t m a n a g em en t p h a s e, o rg a n iza tio n s


m o n ito r an d m a in ta in th e D ev O p s a rc hitec tu re in p la c e. T h is is a c h iev ed b y rea d in g a n d

in te rp retin g d a ta fro m u s e rs , e n s u rin g s e c u rity , a va ila b ility a n d m o re .

Benefits of DevOps Architecture


A p ro p e rly im p lem e n te d D ev O p s a p p ro a c h c o m e s w ith a n u m b e r o f b e n efits . T h e s e
in c lu d e th e f o llo w in g th a t w e s elec ted to h ig h lig h t:

Decrease Cost O f p rim a ry c o nc ern fo r b u s in es s e s is o p era tio n a l c o s t, D ev O p s h e lp s


o rg a niz a tio n s k e ep th eir c o s ts lo w . B ec a u s e eff ic ien c y g e ts a b o o s t w ith D e vO p s
p ra c tic e s , s o ftw a re p ro d u c tio n in c re a s es a n d b u s in e s s es s e e d ec rea s es in o v era ll c o s t
fo r p ro d u c tio n .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

IncreasedProductivity and ReleaseTime W ith s h o rte r d ev elo p m e n t c yc le s and


s tre a m lin ed p ro c es s e s , te a m s a re m o re p ro d u c tive a n d s o ftw a re is d ep lo yed m o re q u ic k ly.

Customers are Served U s er e xp erie n c e , a n d b y d e s ig n , u s e r f ee d b a c k is im p o rta n t to th e


D e vO p s p ro c e s s . B y g a th erin g in fo rm a tio n fro m c lie n ts a n d a c tin g o n it, th o s e w h o
p ra c tic e D ev O p s e n s u re th a t c lie nts w a n ts a n d n e ed s g et ho n o red , a n d c u s to m er
s a tis f a c tio n re a c h e s n e w h ig hs
.
It Gets More Efficient with Time D e vO p s s im p lifies th e d ev elo p m en t life c yc le , w hic h in
p re vio u s ite ra tio n s h a d b ee n in c re a s in g ly c o m p le x. T h is en s u res g re a te r e ffic ie nc y
th ro u g h o u t a D e vO p s o rg a n iza tio n , a s d o es th e fa c t th a t g a th e rin g req u ire m e n ts a ls o g e ts
ea s ie r. In D ev O p s , req u ire m e n ts g a th e rin g is a s tre a m lin ed p ro c es s , a c u ltu re o f
a c c o u n ta b ility, c o lla b o ra tio n a n d tra n s p a re n c y m a k es req u irem e n ts g a th e rin g a s m o o th
g o in g te a m e ffo rt w h e re n o s to n e is left u n tu rn ed .

The monolithic scenario

M o n o lith ic s o ftw a re is d e s ig n e d to b e s e lf -c o n ta in e d , w h erein th e p ro g ra m 's c o m p o n en ts


o r fu n c tio ns a re tig h tly c o u p led ra th er th a n lo o s e ly c o u p le d , lik e in m o d u la r s o ftw a re
p ro g ra m s . In a m o n o lith ic a rc h itec tu re, e a c h c o m p o n en t a n d its a s s o c ia te d c o m p o n en ts
m u s t a ll b e p re s en t f o r c o d e to b e ex ec u te d o r c o m p ile d a n d fo r th e s o f tw a re to run .

M o n o lith ic a p p lic a tio n s a re s in g le -tiered , w h ic h m ea n s m u ltip le c o m p o n e n ts a re


c o m b in ed in to o n e la rg e a p p lic a tio n . C o n s e q u e ntly, th e y te n d to h a ve la rg e c o d e b a s e s ,
w h ic h c a n b e c u m b e rs o m e to m a n a g e o v er tim e.

F u rth e rm o re , if o n e p ro g ra m c o m p o n e n t m u s t b e u p d a te d , o th er elem e n ts m a y a ls o
req u ire re w ritin g , a n d th e w h o le ap p lic a tio n h a s to b e re c o m p ile d a n d tes ted . T h e p ro c es s
c a n b e tim e -c o n s u m in g a n d m a y lim it th e a g ility a n d s p ee d o f s o ftw a re d e ve lo p m en t
tea m s . D e s p ite th e s e is s u es , th e a p p ro a c h is s till in u s e b e c a u s e it d o es o ff er s o m e
a d v a n tag es . A ls o , m a n y e a rly a p p lic a tio n s w e re d ev elo p ed a s m o n o lith ic s o ftw a re, s o th e
a p p ro a c h c a n n o t b e c o m p letely d is reg ard ed w h en th o s e a p p lic a tio n s a re s till in u s e a n d
req u ire u p d a tes .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

What is monolithic architecture?

A m o n o lithic a rc h itec tu re is th e tra d itio n a l u n ified m o d el fo r th e d e s ig n of


a s o ftw a re p ro g ra m . M o n o lith ic , in th is c o n tex t, m ea n s "c o m p o s ed all in o n e p iec e."
A c c o rd in g to th e C a m b rid g e d ic tio n a ry, th e a d jec tive m o n o lith ic als o m e a n s b o th "
and "

Benefits of monolithic architecture

T h ere a re b en e fits to m o n o lith ic a rc h itec tu res , w h ic h is w h y m a ny a p p lic a tio n s a re s till


c re a te d u s in g th is d e ve lo p m e n t p a ra d ig m . F o r o n e, m o n o lith ic p ro g ra m s m a y h a v e
b e tte r th ro u g h p u t th a n m o d u la r a p p lic a tio ns . T h ey m ay a ls o be e a s ier to tes t
a n d d eb u g b e c a u s e, w ith fe w e r elem en ts , th ere a re few e r tes tin g v a ria b le s a n d s c en a rio s
th a t c o m e in to p la y.

A t th e b e g in n in g o f th e s o ftw are d e ve lo p m e n t life c yc le, it is u s u a lly ea s ier to g o w ith th e


m o n o lith ic a rc h itec tu re s inc e d e ve lo p m en t c a n b e s im p ler d u rin g th e e a rly s ta g es . A
s in g le c o d eb a s e a ls o s im p lifie s lo g g in g , c o n fig u ra tio n m a n a g e m e n t, a p p lic a tio n
p e rfo rm an c e m o n ito ring a n d o th er d e ve lo p m en t c o n c e rn s . D ep lo ym en t c a n a ls o b e e a s ie r
b y c o p yin g th e p a c k a g ed a p p lic a tio n to a s e rve r. F in a lly, m u ltip le c o p ies o f th e a p p lic a tio n
c a n b e p la c e d b eh in d a lo a d b a la n c er to s c a le it h o rizo n ta lly.

T h a t s a id , th e m o n o lith ic a p p ro a c h is u s u a lly b e tter fo r s im p le , lig h tw eig h t a p p lic a tio n s .


F o r m o re c o m p lex a p p lic a tio n s w ith freq u en t e xp e c te d c o d e c h a n g e s o r e vo lv in g
s c a la b ility re q u ire m e n ts , th is a p p ro a c h is n o t s u ita b le.

Drawbacks of monolithic architecture

G e n era lly, m o n o lith ic a rc h ite c tu re s s u ffe r f ro m d ra w b a c k s th a t c a n d e la y a p p lic a tio n


d e ve lo p m e n t a n d d e p lo ym e n t. Th e s e d ra w b a c k s b ec o m e e s p e c ia lly s ig n ific a n t w h e n th e
p ro d u c t's c o m p le xity in c rea s e s o r w h en th e d e ve lo p m e n t tea m g ro w s in s ize .

T h e c o d e b a s e o f m o n o lith ic a p p lic a tio n s c an b e d iffic u lt to u n d ers ta n d b ec a u s e the y


m a y b e ex ten s ive , w h ic h c a n m a k e it d if fic u lt fo r n e w d ev elo p e rs to m o d ify th e c o d e to
m ee t c h a n g in g b u s in es s o r tec h n ic a l re q u irem en ts . A s req u irem en ts e vo lve o r b e c o m e

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

m o re c o m p le x, it b e c o m e s d if fic u lt to c o rre c tly im p lem en t c h a n g e s w ith o u t h a m p erin g


th e q u a lity o f th e c o d e a n d a ffe c tin g th e o v era ll o p e ra tio n o f th e a p p lic a tio n .

F o llo w in g e a c h u p d a te to a m o n o lith ic a p p lic a tio n , d ev elo p ers m u s t c o m p ile th e en tire


c o d e b a s e a n d red ep lo y th e fu ll a p p lic a tio n ra th er th a n ju s t th e p a rt th a t w a s u p d a ted .
T h is m a k es c o n tin u o u s o r re g u la r d ep lo ym en ts d if fic u lt, w h ic h th e n a f fec ts th e
a p p lic a tio n 's a n d te am 's a g ility.

T h e a p p lic a tio n 's s ize c a n a ls o in c rea s e s ta rtu p tim e a n d a d d to d ela ys . In s o m e c a s e s ,


d iff eren t p a rts o f th e a p p lic a tio n m a y h a v e c o n flic tin g re s o u rc e re q u ire m en ts . T h is m a k es
it h a rd e r to fin d th e res o u rc es req u ired to s c a le th e a p p lic a tio n.

Architecture Rules of Thumb

There is always a bottleneck. E ve n in a s erve rle s s s ys te m o r o ne yo u th in k w ill


“ in fin ite ly” s c a le , p res s u re w ill a lw a ys b e c re a te d els e w h e re. F o r ex a m p le, if yo u r
A P I s c a le s , d o e s yo u r d a ta b a s e a ls o s c a le ? If yo ur d a ta b a s e s c a les , d o e s yo u r
em a il s ys tem ? In m o d ern c lo u d s ys tem s , th ere a re s o m a n y c o m p o n e nts th a t
s c a la b ility is n o t a lw a ys th e g o a l. T h ro ttlin g s ys te m s a re s o m e tim es th e b es t
c h o ic e .
Your data model is linked to the scalability of your application. If yo u r ta b le d es ig n is
g a rb ag e, y o u r q u eries w ill b e c u m b ers o m e , s o a c c es s in g d a ta w ill b e s lo w . W h en
d e s ig n in g a d a ta b a s e (N o S Q L o r S Q L ), c a re fu lly c o n s id er yo u r a c c es s p a tte rn a n d
w h a t d a ta yo u w ill h a ve to f ilter. F o r ex a m p le , w ith D yn a m o D B , yo u n ee d to
c o n s id e r w h a t “ K e y” yo u w ill h a v e to retrie ve d a ta . If th a t f ie ld is n o t s et a s th e
p rim ary o r s o rt k e y, it w ill fo rc e yo u to u s e a s c a n ra th e r th a n a f a s te r q u ery.
Scalability is mainly linked with cost. When you get to a large scale, consider
systems where this relationship does not track linearly. If, lik e m a ny , yo u h a v e
s ys tem s o n R D S a n d E C S ; th e s e w ill s c a le n ic e ly. B u t th e d o w n s id e is th a t a s yo u
s c a le , yo u w ill p a y d irec tly fo r th a t in c re a s ed c a p a c ity . It’ s c o m m o n fo r th e s e
w o rk lo a d s to c o s t $ 5 0 ,0 0 0 p e r m o n th a t s c a le. Th e s o lu tio n is to m ig ra te th e s e
w o rk lo a d s to s e rv erles s s ys tem s p ro a c tiv ely.
Favour systems that require little tuning to make fast. T h e d a ys o f c o n fig u rin g yo u r

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

o w n s e rve rs a re o v er. A W S , G C P a n d A z u re a ll p ro v id e fa n tas tic s ys te m s th a t


do n’ t n e ed e xp ert k n o w le d g e to a c h iev e o u ts ta n d in g p erfo rm a n c e .
Use infrastructure as code. T erra fo rm m a k es it e a s y to b u ild rep e a ta b le a n d
v ers io n -c o n tro lle d in fra s tru c tu re. It c re a te s a n eth o s o f c o lla b o ra tio n a n d re d u c es
erro rs b y d e fin ing th e m in c o d e ra th er th a n “ m is s in g ” a c ritic a l c h ec k b o x .
Use a PaaS if you’ re at less than 100k MAUs. W ith H e ro k u , F ly a n d R en d er, th ere is
n o n ee d to s p en d h o u rs c o n f ig u rin g AW S a n d m e s s in g a ro u n d w ith yo u r
a p p lic a tio n b u ild p ro c es s . P la tfo rm -a s -a -s e rv ic e s h o u ld b e le ve ra g ed to d ep lo y
q u ic k ly a n d fo c u s o n th e p ro d u c t.
Outsource systems outside of the market you are in. Don’ t roll your own CMS or
Auth, even if it costs you tonnes. If yo u g o to th e p ric in g p a g e o f m a n y th ird -p a rty
s ys tem s , fo r e n te rp ris e -s c a le , th e c o s t is in s a n e - th in k $ 1 0 ,0 0 0 a m o n th fo r a n
a u th en tic a tio n s ys te m ! “ I c o u ld m a k e th a t in a w ee k ,” yo u th in k . T h a t m a y b e
tru e , b u t it d o e s n ’ t c o n s id er th e lo n g -term m a in ten a n c e a n d th e tim e yo u c a n n o t
s p e n d o n yo u r c o re p ro d u c t. W h e re p o s s ib le , b u y o ff th e s h elf.
You have three levers, quality, cost and time. You have to balance them
accordingly. Y o u h a ve , a t b e s t, 1 0 0 “ p o in ts ” to d is trib u te b etw ee n th e th ree . O f
c o u rs e, yo u a lw a ys w a n t to m a in ta in q u a lity, s o th e o th er lev ers to p u ll a re tim e a n d
c o s t.
Design your APIs as open-source contracts. L ev era g in g to o ls such as
O p en A PI/S w a g g er (n o t a s p o n s o r, ju s t a f an !) a llo w s yo u to c rea te “ c o n tra c ts ”
b e tw e en yo u r fro nt-e n d a n d b a c k -en d te am s . T h is re d u c es b u g s b y h a v in g th e
s h a p e o f th e req u e s t a n d re s p o n s e s a g ree d u p o n a h e a d o f tim e .
Start with a simple system first (Gall’ s law). G a lls ’ la w s tate s , “ a ll c o m p lex
s ys tem s th a t w o rk e vo lv ed fro m s im p ler s ys tem s th a t w o rk e d . If y o u w a n t to b u ild
a c o m p le x s ys tem tha t w o rk s , b u ild a s im p le r s ys tem firs t, a n d th en im p ro v e it o v er
tim e .” . Y o u s h o u ld a vo id g o in g af te r s h in y tec h n o lo g y w h en c rea tin g a n ew
s o f tw a re a rc h ite c tu re. F o c u s o n s im p le, p ro ve n s ys te m s . S 3 f o r yo u r s ta tic w e b s ite,
E C S fo r yo ur A PI, R D S fo r yo u r d ata b a s e, e tc . A fte r th a t, yo u c a n c ho p a n d c h a n g e
yo u r w o rk lo a d to a d d th e s e fa n c y tec h n o lo g ies in to th e m ix.

The Separation of Concerns

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

S ep a ra tio n o f c o n c ern s is a s o ftw a re a rc h ite c tu re d es ig n p a tte rn / p rin c ip le fo r s ep a ra tin g


a n a p p lic atio n in to d is tin c t s e c tio n s , s o e a c h s ec tio n a d d res s e s a s e p a ra te c o n c e rn . A t its
es s e n c e , S ep a ra tio n o f c o n c ern s is a b o u t o rd er. T h e o ve ra ll g o a l o f s e p a ra tio n o f
c o n c e rns is to es ta b lis h a w ell-o rg a n iz ed s ys tem w h ere e a c h p a rt fu lfills a m ea n in g fu l
a n d in tuitive ro le w h ile m a xim iz in g its a b ility to a d a p t to c h a ng e.

How is separation of concerns achieved

S ep a ra tio n o f c o n c e rn s in s o ftw a re a rc h itec tu re is a c h ie ve d b y th e es ta b lis h m e n t o f


b o u n d a ries . A b o u nd a ry is a n y lo g ic a l o r p h ys ic a l c o n s tra in t w h ic h d e lin e a te s a g ive n s et
o f re s p o n s ib ilities . S o m e ex a m p les o f b o u n d a rie s w o u ld in c lu d e th e u s e o f m eth o d s ,
o b je c ts , c o m p o n e nts , a n d s erv ic es to d efin e c o re b e h a vio r w ith in a n a p p lic a tio n ; p ro je c ts ,
s o lu tio n s , a n d f o ld e r h ie rarc h ie s fo r s o u rc e o rg a n iz a tio n ; a p p lic a tio n la yers a n d tie rs fo r
p ro c e s s in g o rg a n iz a tio n .

Separation of concerns - advantages

S ep a ra tio n o f C o n c e rn s im p le m en ted in s o ftw a re a rc h itec tu re w o u ld h a ve s e ve ra l


a d v a n tag es :

La c k o f d u p lic a tio n a n d s in g u la rity o f p u rp o s e o f th e in d iv id u a l c o m p o n e n ts ren d er th e


o v era ll s ys te m ea s ie r to m a in ta in .
T h e s ys tem b e c o m e s m o re s ta b le as a b yp ro d u c t o f th e in c re a s ed m a in ta in a b ility.
T h e s tra te g ies req u ire d to en s u re th a t ea c h c o m p o n en t o n ly c o n c e rn s its elf w ith a s in g le s et
o f c o h e s iv e res p o n s ib ilitie s o ften res u lt in n a tu ra l e xte n s ib ility p o in ts .
T h e d e c o u p lin g w h ic h re s u lts fro m req u irin g c o m p o n e n ts to fo c u s o n a s in g le p u rp o s e le a d s
to c o m p o n e n ts w h ic h a re m o re ea s ily re u s ed in o th er s ys te m s , o r d iffe re n t c o n tex ts w ith in
th e s a m e s ys te m .
T h e in c rea s e in m a inta in a b ility a n d e xten s ib ility c a n h a v e a m a jo r im p a c t o n th e m a rk eta b ility
a n d a d o p tio n ra te o f th e s ys tem .
T h ere a re s ev era l f la v o rs o f S e p a ra tio n o f C o n c e rn s . H o riz o n ta l S ep a ra tio n , V e rtic a l
S ep a ra tio n , D a ta S e p a ra tio n a n d A s p ec t S ep a ra tio n . In th is a rtic le , w e w ill re s tric t
o u rs e lv es to H o rizo n ta l a n d A s p ec t s e p a ra tio n o f c o n c ern .

Handling database migrations

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Introduction

D a ta b a s e s c h e m a s d e fin e th e s tru c tu re a nd in te rre la tio n s o f d a ta m a n a g e d b y re la tio n a l


d a ta b a s e s . W h ile it is im p o rta n t to d e ve lo p a w e ll-th o u g h t o u t s c h em a a t th e b e g in n in g o f
yo u r p ro je c ts , e vo lv in g req u ire m e n ts m a k e c h a n g e s to yo u r in itia l s c he m a d iffic u lt o r
im p o s s ib le to a vo id . A n d s in c e th e s c h em a m an a g es th e s h a p e a nd b o u n d a ries o f yo u r
d a ta , c h a n g e s m u s t b e c a refu lly a p p lie d to m a tc h the e xp ec ta tio n s o f th e a p p lic a tio n s
th a t u s e it a n d a vo id lo s in g d a ta c u rre n tly h eld b y th e d a ta b a s e s ys tem .

What are database migrations?

D a ta b a s e m ig ra tio n s , a ls o k n o w n a s s c h em a m ig ra tio n s , d a ta b a s e s c h e m a m ig ra tio ns , o r


s im p ly m ig ra tio n s , a re c o n tro lle d s e ts o f c h a n g es d e ve lo p ed to m o d ify the s tru c tu re o f
th e o b jec ts w ith in a re la tio n a l d a ta b a s e. M ig ra tio n s h elp tra n s itio n d a ta b a s e s c h em a s
fro m th e ir c u rren t s ta te to a n e w d es ired s ta te, w h e th e r th a t in v o lv es a d d in g ta b les
a n d c o lu m n s , re m o vin g e le m e n ts , s p littin g field s , o r c h a n g in g typ e s a n d c o n s tra in ts .

M ig ratio n s m a n a g e inc rem en ta l, o ften re ve rs ib le , c h a n g es to d a ta s tru c tu res in a


p ro g ra m m a tic w a y. T h e g o a ls o f d a ta b a s e m ig ra tio n s o f tw a re a re to m a k e d ata b a s e
c h a n g es re p e a ta b le , s h a rea b le, an d tes ta b le w ith o u t lo s s o f d a ta . G e n era lly, m ig ra tio n
s o f tw a re p ro d u c es a rtifa c ts th a t d e s c rib e th e e xa c t s et o f o p e ra tio n s req u ired to
tra n s fo rm a d a ta b a s e fro m a k n o w n s ta te to th e n ew s ta te. Th e s e c a n b e c h ec k ed in to
a n d m a n a g ed b y n o rm al ve rs io n c o n tro l s o ftw a re to tra c k c h a n g es a n d s h a re a m o n g
tea m m e m b ers .

W h ile p re ve n tin g d a ta lo s s is g en e ra lly o n e o f th e g o a ls o f m ig ra tio n s o ftw a re, c h a n g es


th a t d ro p o r d es tru c tive ly m o d ify s tru c tu res th a t c u rren tly h o u s e d a ta c a n re s u lt in
d e letio n . T o c o p e w ith th is , m ig ra tio n is o ften a s u p e rvis ed p ro c es s in vo lv in g in s p e c tin g
th e res u ltin g c h a n g e s c rip ts a n d m a k in g a n y m o d if ic a tio n s n e c e s s a ry to p re s erv e
im p o rta n t in fo rm a tio n .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

What are the advantages of migration tools?

M ig ratio n s a re h elp fu l b ec a u s e the y a llo w d a ta b a s e s c h e m a s to e vo lv e a s re q u irem en ts


c h a n g e. T h e y h elp d ev elo p ers p la n , va lid a te, a n d s a fely a p p ly s c h e m a c h a ng es to th e ir
en v iro n m e n ts . T h e s e c o m p a rtm en ta liz ed c h a n g es a re d e fin e d o n a g ra n u la r lev el a n d
d e s c rib e th e tra n s fo rm a tio n s th a t m u s t ta k e p la c e to m o v e b e tw e en va rio u s "v ers io n s " o f
th e d a ta b a s e .

In g e ne ra l, m ig ra tio n s ys tem s c re a te a rtifa c ts o r file s th a t c a n b e s h a red , a p p lied to


m u ltip le d a ta b a s e s ys tem s , a n d s to red in ve rs io n c o n tro l. T h is h e lp s c o n s tru c t a h is to ry o f
m o d ific a tio ns to the d a ta b a s e th a t c a n b e c lo s e ly tied to a c c o m p a n yin g c o d e c h a n g e s in
th e c lien t a p p lic a tio n s . T h e d a ta b a s e s c h e m a a n d th e a p p lic a tio n 's a s s u m p tio n s ab o u t
th a t s tru c ture c a n ev o lve in ta n d e m .

S o m e o th e r b e n efits in c lu d e b e in g a llo w e d (a n d s o m etim e s req u ire d ) to m a n u a lly tw ea k


th e p ro c e s s b y s e p a ra tin g th e g e n era tio n o f th e lis t o f o p e ra tio n s f ro m th e ex ec u tio n o f
th em . E a c h c h a n g e c a n b e a u d ite d , te s te d , a n d m o d ified to en s u re th a t th e c o rrec t re s u lts
a re o b ta in e d w h ile s till relyin g o n a u to m a tio n fo r th e m a jo rity o f th e p ro c es s .

State based migration

S ta te b a s e d m ig ra tio n s o ftw a re c rea tes a rtifa c ts th a t d e s c rib e h o w to re c rea te th e


d e s ire d d a ta b a s e s ta te fro m s c ra tc h . Th e file s th a t it p ro d u c es c a n b e a p p lied to a n
em p ty rela tio n a l d a ta b a s e s ys tem to b rin g it fu lly u p to d a te .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

A f te r th e a rtifa c ts d e s c rib in g th e d es ired s ta te a re c rea ted , th e a c tu a l m ig ra tio n in v o lv es


c o m p a rin g th e g en e ra ted f ile s a g a in s t th e c u rre n t s ta te o f th e d a ta b a s e. T h is p ro c es s
a llo w s th e s o ftw a re to a n alyz e th e d if feren c e b e tw ee n th e tw o s ta te s a n d g e n era te a n ew
file o r file s to b rin g th e c u rren t d a ta b a s e s c h e m a in lin e w ith th e s c h em a d e s c rib e d b y th e
files . T h e s e c h a n g e o p era tio n s a re th en a p p lie d to th e d a ta b a s e to re a c h th e g o a l s ta te .

What to keep in mind with state based migrations

Lik e a lm o s t a ll m ig ra tio n s , s ta te b a s ed m ig ra tio n f ile s m u s t b e c a refu lly e xa m in e d b y


k n o w led g e a b le d e ve lo p e rs to o v ers e e th e p ro c es s . B o th th e files d e s c rib in g th e d e s ire d
fin a l s ta te a n d th e files th a t o u tlin e th e o p era tio n s to b ring th e c u rre n t d a ta b a s e in to
c o m p lian c e m u s t b e rev ie w ed to e n s u re th a t th e tra n s fo rm a tio n s w ill n o t lea d to d a ta lo s s .
F o r e xa m p le, if th e g e n era te d o p e ra tio n s a ttem p t to ren a m e a ta b le b y d e letin g th e
c u rren t o n e a n d re c rea tin g it w ith its n ew n a m e , a k n o w led g a b le h u m a n m u s t re c o g n iz e
th is a n d in terve n e to p re ve nt d a ta lo s s .

S ta te b a s e d m ig ra tio n s c a n fe el ra th e r c lu m s y if th e re a re fre q u en t m a jo r c h a n g e s to th e
d a ta b a s e s c h em a th a t req uire th is typ e o f m a n u a l in terve n tio n . B e c a u s e o f th is o v erh ea d ,
th is te c h n iq u e is o ften b ette r s u ited fo r s c en a rio s w h ere th e s c h em a is w ell-th o u g h t o u t
a h ea d o f tim e w ith fu n d a m e n ta l c h a n g es o c c u rrin g in fre q u en tly.

H o w ev er, s ta te b a s ed m ig ra tio n s d o h a v e th e a d v a n ta g e o f p ro d u c in g file s th a t fu lly


d e s c rib e th e d a ta b a s e s ta te in a s in g le c o n tex t. T h is c a n he lp n ew d ev elo p ers o n b o a rd
m o re q u ic k ly a n d w o rk s w ell w ith w o rk flo w s in v ers io n c o n tro l s ys te m s s in c e c o n flic tin g
c h a n g es in tro d u c e d b y c o d e b ra n c h e s c a n b e re s o lve d e a s ily.

Change based migrations

T h e m a jo r a ltern a tive to s ta te b a s e d m ig ra tio n s is a c h a n g e b a s e d m ig ra tio n s ys tem .


C h a n g e b a s e d m ig ratio n s a ls o p ro d u c e file s th a t a lte r th e ex is tin g s tru c tu re s in a
d a ta b a s e to a rrive a t th e d es ired s ta te. R a th e r th a n d is c o ve rin g th e d iffe ren c es b e tw e en
th e d e s ire d d a ta b a s e s ta te a n d th e c u rren t o n e , this a p p ro a c h b u ild s o ff o f a k n o w n
d a ta b a s e s ta te to d e fin e th e o p era tio n s to b rin g it in to th e n e w s ta te. S u c c es s iv e
m ig ratio n files a re p ro d u c e d to m o d ify th e d a ta b a s e fu rth e r, c re a tin g a s e rie s o f c h a n g e
files th a t c a n rep ro d u c e th e fin a l d a ta b a s e s ta te w h e n a p p lied c o n s e c u tive ly.

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

B ec a u s e c h a n g e b a s ed m ig ra tio n s w o rk b y o u tlin in g th e o p e ra tio n s req u ire d fro m a


k n o w n d a ta b a s e s ta te to th e d e s ire d o n e , a n u n b ro k en c h a in o f m ig ra tio n file s is
n ec es s a ry fro m th e in itia l s ta rtin g p o in t. T h is s ys te m req u ire s a n initia l s ta te , w h ic h m a y
b e a n em p ty d a ta b a s e s ys tem o r a files d es c rib in g th e s ta rtin g s tru c tu re, th e files
d e s c rib in g th e o p era tio n s th a t ta k e th e s c h e m a th ro u g h ea c h tra n s fo rm a tio n , an d a
d e fin ed o rd e r w h ic h th e m ig ra tio n file s m u s t b e a p p lied .

What to keep in mind with change based migrations

C h a n g e b a s e d m ig ra tio n s tra c e th e p ro v en a n c e o f th e d a ta b a s e s c h em a d es ig n b a c k to
th e o rig in a l s tru c tu re th ro u g h th e s e rie s o f tra ns f o rm a tio n s c rip ts th a t it c re a te s . T h is c a n
h elp illu s tra te th e ev o lu tio n o f th e d a ta b a s e s tru c tu re, b u t is le s s h e lp fu l fo r u n d e rs ta n d in g
th e c o m p le te s ta te o f th e d a ta b a s e a t an y o n e p o in t s in c e th e c h a n g e s d es c rib e d in e a c h
file m o d ify th e s tru c ture p ro d u c ed b y th e la s t m ig ra tio n file.

S in c e th e p rev io u s s ta te is s o im p o rta n t to c h a n g e b a s ed s ys tem s , th e s ys tem o ften u s es


a d a ta b a s e w ith in th e d a ta b a s e s ys te m its e lf to tra c k w h ic h m ig ra tio n file s h a v e b e en
a p p lie d . T h is h elp s th e s o ftw a re u n d ers ta n d w h a t s tate th e s ys te m is c u rre n tly in w ith o u t
h a vin g to a n a ly ze th e c u rren t s tru c tu re a n d c o m p a re it a g a ins t th e d es ired s ta te , k n o w n
o n ly b y c o m p ilin g th e en tire s e rie s o f m ig ra tio n files .

T h e d is a d va n ta g e o f th is a p p ro a c h is th a t th e c u rre n t s ta te o f th e d a ta b a s e is n't
d e s c rib e d in th e c o d e b a s e a fter th e in itia l p o in t. E a c h m ig ra tio n file b u ild s o ff o f th e
p re vio u s o n e, s o w h ile th e c h a n g e s a re nic ely c o m p a rtm en ta liz ed , th e e n tire d ata b a s e
s ta te a t a n y o n e p o in t is m uc h ha rd er to rea s o n a b o u t. F u rth erm o re, b e c a u s e th e o rd er o f
o p era tio n s is s o im p o rta nt, it c a n b e m o re d iffic u lt to res o lve c o n flic ts p ro d u c ed b y
d e ve lo p ers m a k in g c o n flic tin g c h a n g e s .

C h a n g e b a s e d s ys te m s , h o w e ve r, d o h a ve th e a d va n ta g e o f a llo w in g fo r q u ic k , ite ra tiv e


c h a n g es to th e d a ta b as e s tru c tu re. In s tea d o f th e tim e in te n s iv e p ro c es s o f a n a lyzin g th e
c u rren t s ta te o f th e d a ta b a s e , c o m p a rin g it to th e d es ired s ta te , c rea tin g f ile s to p erfo rm
th e n e c e s s a ry o p era tio n s , a n d a p p lyin g th e m to th e d a ta b a s e, c h an g e b a s ed s ys tem s
a s s u m e th e c u rre n t s ta te o f th e d a ta b a s e b a s ed o n th e p rev io u s c ha n g es . T h is g en e ra lly

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

m a k es c h a n g es m o re lig h t w e ig h t, b u t d o e s m a k e o u t o f b a n d c h a n g e s to th e d ata b a s e
es p ec ia lly d a n g ero u s s in c e m ig ra tio n s c a n le a ve th e ta rg e t s ys tem s in a n u n d e fin ed s ta te.

Microservices

M ic ro s ervic es , o fte n re ferred to a s M ic ro s erv ic es a rc h ite c tu re, is a n a rc h itec tu ra l


a p p ro a c h th a t in vo lve s d ivid in g la rg e a p p lic a tio n s in to s m a lle r, fu n c tio n a l un its c a p ab le o f
fu n c tio n in g a n d c o m m u n ic a tin g in d ep e n d e n tly.

T h is a p p ro a c h a ro s e in re s p o n s e to th e lim ita tio n s o f m o n o lith ic a rc h itec tu re . B ec a u s e


m o n o lith s a re la rg e c o n ta in ers h o ld in g a ll s o ftw a re c o m p o n en ts o f a n a p p lic a tio n , the y
a re s ev ere ly lim ited : in flex ib le, u n relia b le , a n d o ften d ev elo p s lo w ly.

W ith m ic ro s e rv ic e s , h o w e ve r, e a ch un it is in d ep e n d e n tly d e p lo ya b le b ut ca n
c o m m u n ic a te w ith ea c h o th e r w h en n ec es s a ry. D ev elo p ers ca n now a c h iev e
th e s c a la b ility, s im p lic ity, a n d flex ib ility n ee d e d to c re ate h ig h ly s o p h is tic a te d s o f tw a re.

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

How does microservices architecture work?

The key benefits of microservices architecture

M ic ro s erv ic es a rc h ite c tu re p re s en ts d ev elo p ers an d e n g in ee rs w ith a n u m b er o f b e n ef its


th a t m o n o lith s c a n n o t p ro v id e. H e re a re a fe w o f th e m o s t n o ta b le .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

1. Less development effort

S m a lle r d e ve lo p m e n t tea m s c a n w o rk in p a ra lle l o n d iffere n t c o m p o n e n ts to u p d a te


ex is tin g fu n c tio n a litie s . T h is m a k es it s ig n ific a n tly e a s ie r to id en tif y h o t s e rv ic e s , s c a le
in d e p e n d en tly fro m th e res t o f th e a p p lic a tio n , a n d im p ro ve th e a p p lic a tio n .

2. Improved scalability

M ic ro s erv ic es la u n c h in d ivid u a l s e rv ic es in d ep en d e n tly, d e ve lo p e d in d if feren t la n g u a g es


o r te c h n o lo g ies ; a ll te c h s ta c k s a re c o m p a tib le, a llo w in g D ev O p s to c h o o s e a ny o f th e
m o s t effic ie n t te c h s ta c k s w ith o u t fe a rin g if th e y w ill w o rk w e ll to g eth er. T h es e s m all
s erv ic es w o rk o n rela tive ly le s s in fra s tru c tu re th a n m o n o lith ic a p p lic a tio n s b y c h o o s in g
th e p rec is e s c a la b ility o f s elec ted c o m p o n en ts p er th eir req u ire m e n ts .

3. Independent deployment

E a c h m ic ro s e rv ic e c o n s titu tin g a n a p p lic a tio n n e ed s to b e a fu ll s ta c k . T h is en a b les


m ic ro s erv ic es to b e d ep lo yed in d e p e n d e n tly a t a n y p o in t. S in c e m ic ro s erv ic es a re
g ra n u la r in n a tu re, d ev elo p m e n t tea m s c a n w o rk o n o n e m ic ro s ervic e , fix erro rs , th en
red ep lo y it w ith o u t re d e p lo yin g th e e n tire a p p lic a tio n .

M ic ro s erv ic e a rc h itec tu re is a g ile a n d th u s d o es n o t n e ed a c o n g res s io n a l a c t to m o d ify


th e p ro g ra m b y a d d in g o r c h a n g in g a lin e o f c o d e o r ad d in g o r elim in a ting f ea tu re s . T h e
s o f tw a re o f fers to s trea m lin e b u s in es s s tru c tu re s th ro u g h res ilien c e im p ro vis a tio n a n d
fa u lt s e p a ra tio n .

4. Error isolation

In m o n o lith ic a p p lic a tio n s , th e fa ilu re o f e ve n a s m a ll c o m p o n e n t o f th e o ve rall


a p p lic a tio n c a n m a k e it in a c c es s ib le . In s o m e c a s es , d e te rm in in g th e e rro r c o u ld a ls o b e
ted io u s . W ith m ic ro s ervic es , is o la tin g th e p ro b le m -c a u s in g c o m p o n en t is ea s y s in c e th e
en tire a p p lic a tio n is d ivid ed in to s ta n d a lo n e , fu lly fu n c tio na l s o f tw a re u n its . If e rro rs o c c ur,
o th er n o n -re la ted u n its w ill s till c o n tin ue to fu n c tio n .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

5. Integration with various tech stacks

W ith m ic ro s e rv ic e s , d ev elo p ers h a ve th e free d o m to p ic k th e te c h s ta c k b e s t s u ite d fo r


o n e p a rtic u la r m ic ro s e rv ic e a n d its fu n c tio n s . In s tea d o f o p tin g f o r o n e s ta n d a rd iz ed te c h
s ta c k en c o m p a s s in g a ll o f a n a p p lic a tio n ’ s fu n c tio n s , th e y h a ve c o m p le te c o n tro l o v er
th eir o p tio n s .

What is the microservices architecture used for?

P u t s im p ly: m ic ro s ervic e s a rc h itec tu re m a k e s a p p d ev elo p m en t q u ic k er a n d m o re


ef fic ien t. A g ile d ep lo ym en t c a p a b ilitie s c o m b in ed w ith th e flex ib le a p p lic a tio n o f d if feren t
tec h n o lo g ie s d ra s tic a lly red u c e th e d u ra tio n o f th e d ev elo p m en t c yc le . T h e fo llo w in g a re
s o m e o f th e m o s t v ita l ap p lic a tio n s o f m ic ro s e rv ic e s a rc h itec tu re .

Data processing

S in c e ap p lic a tio n s ru n n in g o n m ic ro s erv ic e a rc h itec tu re c a n h a n d le m o re s im u lta n e o u s


req u es ts , m ic ro s ervic e s c a n p ro c e s s la rg e a m o u n ts o f in fo rm a tio n in le s s tim e . T h is
a llo w s f o r f a s te r a n d m o re e ffic ie n t a p p lic a tio n p erfo rm a n c e .

Media content

C o m p a n ies lik e N e tflix a n d A m a z o n P rim e V id eo h a n d le b illio n s o f A P I re q u es ts d a ily.


S erv ic es s u c h a s O T T p la tfo rm s o f ferin g u s e rs m a s s ive m e d ia c o n ten t w ill b e n ef it fro m
d e p lo yin g a m ic ro s ervic e s a rc h ite c tu re. M ic ro s e rv ic e s w ill e n s u re th a t th e p le th o ra o f
req u es ts f o r d iffe re n t s u b d o m a in s w o rld w id e is p ro c e s s ed w ith o u t d ela ys o r erro rs .

Website migration

W e b s ite m ig ra tio n in v o lve s a s u b s ta n tia l c h a n g e a n d red ev elo p m e n t o f a w e b s ite’ s


m a jo r a rea s , s u c h a s its d o m a in , s tru c tu re, u s e r in te rfa c e, etc . U s in g m ic ro s e rvic e s w ill
h elp yo u a vo id b u s in e s s -d a m a g in g d o w n tim e a n d en s u re yo u r m ig ra tio n p la n s ex ec u te
s m o o th ly w ith o u t a n y h a s s le s .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Transactions and invoices

M ic ro s erv ic es a re p e rf ec t f o r a p p lic a tio n s h a n d lin g h ig h p a ym en ts a n d tra n s a c tio n


v o lu m e s a n d g e n era tin g in vo ic e s fo r th e s a m e. T h e fa ilu re o f a n a p p lic a tio n to p ro c es s
p a ym e n ts c a n c a u s e h u g e lo s s es fo r c o m p a n ies . W ith th e he lp o f m ic ro s e rvic e s , th e
tra n s a c tio n fu n c tio n a lity c a n b e m a d e m o re ro b u s t w ith o ut c h a n g in g th e res t o f th e
a p p lic a tio n .

Microservices tools

B u ild in g a m ic ro s e rvic e s a rc h ite c tu re re q u ires a m ix o f to o ls a n d p ro c es s e s to p erfo rm


th e c o re b u ild in g ta s k s a n d s u p p o rt th e o v era ll fra m e w o rk . S o m e o f th es e to o ls a re lis te d

b e lo w .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

1. Operating system

T h e m o s t b a s ic to o l re q u ired to b u ild a n a p p lic a tio n is a n o p era tin g s ys tem (O S) . O n e


s u c h o p e ra tin g s ys te m a llo w s g rea t flex ib ility in d ev elo p m e n t a n d u s e s in L in u x . It o ffe rs a
la rg ely s e lf -c o n ta in e d en v iro n m e n t fo r ex ec u tin g p ro g ra m c o d e s a n d a s e rie s o f o p tio n s
fo r la rg e a n d s m a ll a p p lic a tio n s in term s o f s ec u rity, s to ra g e, an d n etw o rk in g .

2. Programming languages

O n e o f th e b en ef its o f u s in g a m ic ro s ervic e s a rc h itec tu re is th a t yo u c a n u s e a v a riety o f


p ro g ra m m in g la n g ua g es a c ro s s a p p lic a tio n s fo r d if feren t s e rv ic e s . D if feren t
p ro g ra m m in g la n g u a g e s h a ve d ifferen t u tilitie s d ep lo ye d b a s e d o n th e n a tu re o f th e
m ic ro s erv ic e.

3. API management and testing tools

T h e v a rio u s s ervic es n ee d to c o m m u n ic a te w h en b u ild in g a n a p p lic a tio n u s in g a


m ic ro s erv ic es a rc h itec tu re . T h is is a c c o m p lis h ed u s in g a p p lic a tio n p ro g ra m m in g

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

in te rfa c e s (A P Is ) . F o r A P Is to w o rk o p tim a lly a n d d e s ira b ly, th e y n e ed to b e c o n s ta n tly


m o n ito red , m a n a g ed a n d tes te d , a n d A P I m a n a g e m e n t a n d tes tin g to o ls a re es s e n tia l fo r
th is .

4. Messaging tools

M es s a g in g to o ls en a b le m ic ro s ervic e s to c o m m u n ic a te b o th in tern a lly a n d e xte rn a lly.


R a b b it M Q a n d A p a c h e K a fk a a re ex a m p les o f m es s a g ing to o ls d e p lo y ed a s p a rt o f a
m ic ro s erv ic e s ys tem .

5. Toolkits

T o o lk its in a m ic ro s e rvic e s a rc h ite c tu re a re to o ls u s e d to b uild a n d d e ve lo p a p p lic a tio n s .


D iffe ren t to o lk its a re a va ila b le to d ev elo p e rs , a n d th es e k its fu lfill d iffere n t p u rp o s e s .
F a b ric 8 a n d S en ec a a re s o m e ex a m p les o f m ic ro s e rv ic e s to o lk its .

6. Architectural frameworks

M ic ro s erv ic es arc h ite c tu ra l fra m ew o rk s o f fer c o n ve n ien t s o lu tio n s fo r a p p lic a tio n


d e ve lo p m e n t a n d u s u a lly c o n ta in a lib ra ry o f c o d e a n d to o ls to h e lp c o n f ig u re a n d d ep lo y
a n a p p lic atio n .

7. Orchestration tools

A c o n ta in e r is a s et o f e xe c u ta b le s , c o d e s , lib ra ries , a n d file s n ec es s a ry to ru n a


m ic ro s erv ic e. C o n ta in er o rc h es tra tio n to o ls p ro vid e a fra m e w o rk to m a n a g e a n d o p tim iz e
c o n ta in e rs w ith in m ic ro s ervic es a rc h ite c tu re s ys tem s .

8. Monitoring tools

O n c e a m ic ro s e rv ic e s a p p lic a tio n is u p a n d ru n n ing , yo u m u s t c o n s ta n tly m o n ito r it to


en s u re e ve ry th in g is w o rk in g s m o o th ly a n d a s in te n d e d . M o n ito rin g to o ls h elp d ev elo p ers
s ta y o n to p o f th e a p p lic a tio n ’ s w o rk a n d a v o id p o ten tia l b u g s o r g litc h es .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

9. Serverless tools S e rv erles s to o ls fu rth e r a d d flex ib ility a n d m o b ility to th e va rio u s


m ic ro s erv ic es w ith in a n a p p lic a tio n b y elim in a tin g s e rv er d e p en d en c y. T h is h elp s in th e
ea s ie r ra tio n a liz a tio n a n d d iv is io n o f a p p lic a tio n ta s k s .

Microservices vs monolithic architecture

W ith m o n o lith ic a rc h itec tu res , a ll p ro c e s s es a re tig h tly c o u p led a n d ru n a s a s in g le


s erv ic e. T h is m e a n s th a t if o n e p ro c es s o f th e a p p lic a tio n ex p e rie nc es a s p ik e in d e m a n d ,
th e e n tire a rc h itec tu re m u s t b e s c a led . A d d in g o r im p ro v in g a m o n o lith ic a p p lic a tio n ’ s
fe a tu res b e c o m es m o re c o m p le x a s th e c o d e b a s e g ro w s . T h is c o m p le xity lim its
ex p e rim en ta tio n an d m a k e s it d if fic u lt to im p le m e n t n ew id ea s . M o n o lith ic a rc h ite c tu res
a d d ris k f o r a p p lic a tio n a va ila b ility b ec a u s e m a n y d ep en d e n t a n d tig h tly c o u p le d
p ro c e s s es inc rea s e th e im p a c t o f a s in g le p ro c e s s f a ilu re.

W ith a m ic ro s erv ic es a rc h itec tu re, an a p p lic a tio n is b u ilt a s in d e p e n d e n t c o m p o n e n ts th a t


ru n e a ch a p p lic a tio n p ro c e s s as a s erv ic e. T h e s e s ervic es c o m m u n ic a te v ia a
w ell-d e fin ed in terfa c e u s in g lig h tw e ig h t A P Is . S e rv ic e s a re b u ilt fo r b us in e s s c a p a b ilities
a n d e a c h s ervic e p e rf o rm s a s in g le fu n c tio n . B e c a u s e th ey a re in d e p en d en tly ru n , e a c h
s erv ic e c a n b e u p d a ted , d ep lo yed , a n d s c a led to m ee t d e m a n d fo r s p ec ific fu n c tio n s o f
a n a p p lic atio n .

Data tier

T h e d a ta tier in D ev O p s refe rs to th e la ye r o f th e ap p lic a tio n a rc h ite c tu re th a t is


res p o n s ib le fo r s to rin g , re triev in g , a n d p ro c e s s in g d a ta . T h e d a ta tie r is typ ic a lly
c o m p o s e d o f d a ta b a s e s , d a ta w a re h o u s e s , a n d d ata p ro c es s in g s ys te m s th at m a n a g e
la rg e a m o u n ts o f s tru c tu red a n d u n s tru c tu red d a ta .

In D ev O p s , th e d a ta tie r is c o n s id e red a n im p o rta n t a s p e c t o f th e o v era ll a p p lic a tio n


a rc h itec tu re a n d is typ ic a lly m a n a g e d a s p a rt o f th e D ev O p s p ro c e s s . T h is in c lu d es :

D a ta m a n a g em en t a n d m ig ra tio n : E n s u rin g th a t d a ta is p ro p erly m a n a g e d a n d


m ig rate d a s p a rt o f th e s o ftw a re d elive ry p ip elin e.

D a ta b a c k u p a n d rec o ve ry: Im p le m e n tin g d a ta b a c k u p a n d re c o v ery s tra teg ies to


en s u re th a t d a ta c a n b e rec o v ered in c a s e o f fa ilu re s o r d is ru p tio ns .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

D a ta s e c u rity : Im p lem en tin g d a ta s e c u rity m e a s u res to p ro te c t s e n s itiv e in fo rm a tio n


a n d c o m p ly w ith re g u la tio n s .

D a ta p e rfo rm an c e o p tim iz a tio n : O p tim izin g d a ta p e rfo rm a n c e to e n s u re th a t


a p p lic a tio n s a n d s ervic e s p e rfo rm w ell, ev en w ith la rg e a m o u n ts o f d a ta .

D a ta in teg ra tio n : In te g ra tin g d a ta fro m m u ltip le s o u rc es to p ro v id e a u n ified v iew o f


d a ta a n d s u p p o rt b u s in e s s d e c is io n s .

B y in te g ra tin g d a ta m a n a g e m e n t in to th e D e vO p s p ro c es s , tea m s c a n en s u re th a t d a ta is
p ro p erly m a n a g e d a n d p ro te c ted , a n d th a t d a ta -d riv en a p p lic a tio n s a n d s erv ic es p erfo rm
w ell an d d e liv er va lu e to c u s to m e rs .

Devops architecture and resilience

D e ve lo p m e n t a n d o p era tio n s b o th p la y es s e n tia l ro les in o rd er to d e liv er a p p lic a tio n s . T h e


d e p lo ym e n t c o m p ris es a n a lyz in g th e requirements, designing, developing, a n d testing o f
th e s o ftw a re c o m p o n e n ts o r fra m e w o rk s .

T h e o p e ra tio n c o n s is ts o f th e a d m in is tra tive p ro c es s es , s ervic es , a n d s u p p o rt fo r th e


s o f tw a re. W h e n b o th th e d e ve lo p m e n t a n d o p era tio n s a re c o m b in ed w ith c o lla b o ra tin g ,
th en th e D ev O p s a rc h ite c tu re is th e s o lu tio n to fix th e g a p b e tw e en d ep lo ym e n t a n d
o p era tio n te rm s ; th e re fo re , d e liv ery c a n b e fa s te r.

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

D e vO p s a rc h ite c tu re is u s ed f o r th e a p p lic a tio n s h o s te d o n th e c lo u d p la tfo rm a n d la rg e


d is trib u te d a p p lic a tio n s . A g ile D ev elo p m en t is u s e d in th e D ev O p s a rc h itec tu re s o th a t
in te g ra tio n a n d d elive ry c a n b e c o n tig u o u s . W h en th e d ev elo p m en t a n d o p era tio n s tea m
w o rk s s ep a ra tely fro m ea c h o th er, th en it is tim e -c o n s u m in g to design, test, a n d deploy.
A n d if the te rm s a re n o t in s yn c w ith ea c h o the r, th e n it m a y c a u s e a d ela y in th e d e liv ery.
S o D e vO p s en a b les the te a m s to c h a ng e th eir s h o rtc o m in g s a n d in c rea s e s p ro d u c tiv ity.

B elo w a re th e va rio u s c o m p o n e n ts th a t a re u s e d in th e D e vO p s a rc h itec tu re

1) Build

W ith o u t D ev O p s , th e c o s t o f th e c o n s u m p tio n o f th e res o u rc es w a s e va lu a te d b a s ed o n


th e p re -d efin ed in d iv id u a l u s a g e w ith fix ed h a rd w a re a llo c a tio n . A n d w ith D ev O p s , th e
u s a g e o f c lo u d , s h a rin g o f res o u rc es c o m es in to th e p ic tu re , a n d th e b u ild is d e p en d en t
u p o n th e u s e r's n e ed , w h ic h is a m e c h a n is m to c o n tro l th e u s a g e o f res o u rc es o r c a p a c ity.

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

2) Code

M a n y g o o d p ra c tic es s u c h a s G it e n a b les th e c o d e to b e u s e d , w h ic h e n s u re s w riting th e


c o d e fo r b u s in e s s , he lp s to tra c k c h a n g e s , g e ttin g n o tif ie d a b o u t th e re as o n b eh in d th e
d iff eren c e in th e a c tu a l a n d th e e xp ec ted o u tp u t, a n d if n ec es s a ry rev ertin g to th e o rig in a l
c o d e d ev elo p ed . T h e c o d e c a n b e a p p ro p ria tely a rra n g e d in files, folders, e tc . A n d the y
c a n b e reu s ed .

3) Test

T h e a p p lic a tio n w ill b e re a d y fo r p ro d u c tio n a fter tes tin g . In th e c a s e o f m a n u a l te s tin g , it


c o n s u m e s m o re tim e in tes ting an d m o vin g th e c o d e to th e o u tp u t. Th e te s tin g c a n b e
a u to m a te d , w h ic h d e c rea s e s th e tim e fo r te s tin g s o th a t th e tim e to d e p lo y th e c o d e to
p ro d u c tio n c a n b e red u c e d a s a u to m a tin g th e ru n n in g o f th e s c rip ts w ill rem o v e m a n y
m a n u al s tep s .

4) Plan

D e vO p s u s e A g ile m eth o d o lo g y to p la n th e d e ve lo p m e n t. W ith the o p era tio n s a n d


d e ve lo p m e n t tea m in s yn c , it h elp s in o rg a n izin g th e w o rk to p la n a c c o rd in g ly to in c re a s e
p ro d u c tivity.

5) Monitor

C o n tin u o u s m o n ito rin g is u s ed to id en tify a n y ris k o f fa ilu re. A ls o , it h elp s in tra c k in g th e


s ys tem a c c u ra te ly s o th a t th e h ea lth o f th e a p p lic a tio n c a n b e c h ec k ed . T h e m o n ito rin g
b e c o m e s m o re c o m fo rta b le w ith s e rv ic e s w h e re th e lo g d a ta m a y g e t m o nito re d th ro u g h
m a n y th ird -p a rty to o ls s u c h a s Splunk.

6) Deploy

M a n y s ys tem s c a n s up p o rt th e s c h ed u le r fo r a u to m a te d d e p lo ym e n t. T h e c lo u d
m a n a g em e n t p la tfo rm en a b le s u s ers to c a p tu re a c c u ra te in s ig hts a n d v ie w th e
o p tim iza tio n s c e n a rio , a n a lytic s o n tren d s b y th e d ep lo ym en t o f d a s h b o a rd s .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

7) Operate

D e vO p s c h a n g es th e w a y tra d itio n a l a p p ro a c h o f d ev elo p in g a n d te s tin g s e p a ra tely. T h e


tea m s o p era te in a c o lla b o ra tiv e w a y w h e re b o th th e te a m s a c tive ly p a rtic ip a te
th ro u g h o u t th e s ervic e lifec yc le. T h e o p e ra tio n tea m in tera c ts w ith d ev elo p ers , a n d the y
c o m e u p w ith a m o n ito rin g p la n w h ic h s erve s th e IT a n d b u s in es s req u irem en ts .

8) Release

D e p lo y m e n t to a n e n viro n m en t c a n b e d o n e b y a u to m a tio n . B u t w h e n th e d ep lo ym e n t is
m a d e to th e p ro d u c tio n en v iro n m e nt, it is d o n e b y m a n u a l trig g erin g . M a n y p ro c e s s es
in vo lv ed in re lea s e m a n a g em en t c o m m o n ly u s e d to d o th e d ep lo ym en t in th e p ro d u c tio n
en v iro n m e n t m a n u a lly to les s e n th e im p a c t o n th e c u s to m e rs .

DevOps resilience

D e vO p s res ilie n c e re fers to th e a b ility o f a D e vO p s s ys tem to w ith s ta n d a n d re c o ve r fro m


fa ilu re s a n d d is ru p tio n s . T h is m ea n s e n s u rin g th a t th e s ys te m s a n d p ro c e s s es u s e d in
D e vO p s a re ro b u s t, s c a la b le , a n d a b le to a d a p t to c h a n g in g c o n d itio n s . S o m e o f th e k e y
c o m p o n e n ts o f D ev O p s re s ilien c e in c lu d e :
In fra s tru c tu re a u to m atio n : A u to m a tin g in fra s tru c tu re d e p lo ym e nt, s c a lin g , and
m a n a g em e n t h e lp s to en s u re th a t s ys tem s a re d e p lo ye d c o n s is ten tly an d a re
ea s ie r to m a n a g e in c a s e o f fa ilu res o r d is ru p tio n s .
M o n ito rin g a n d lo g g in g : M o n ito rin g s ys tem s , a p p lic a tio n s , a n d in fra s tru c tu re in
rea l-tim e a n d c o llec tin g lo g s c a n h e lp d ete c t an d d ia g n o s e is s u es q u ic k ly, re d u c in g
d o w n tim e.
D is a s ter rec o v ery: H a v in g a w ell-d e s ig n ed d is a s ter rec o v ery p la n a n d reg u la rly tes tin g
it c a n h e lp en s u re th a t s ys tem s c a n q u ic k ly rec o v er fro m d is ru p tio n s .
C o n tin u o u s tes tin g : C o n tin u o u s ly te s tin g s ys te m s a n d a p p lic a tio n s c a n h e lp id en tify
a n d fix is s u e s b efo re th e y b e c o m e c ritic a l.
H ig h a v a ila b ility: D es ig n in g s ys te m s fo r h ig h a v a ila b ility h elp s to e ns u re th a t s ys tem s
rem a in u p a n d ru n n in g ev en in th e ev en t o f fa ilu re s o r d is ru p tio n s .
B y fo c u s in g o n th es e c o m p o ne n ts , D ev O p s te a m s c a n c re a te a re s ilien t a n d a d a p tiv e
D e vO p s s ys tem th a t is a b le to d e liv er h ig h -q u a lity a p p lic a tio n s a n d s erv ic es , ev en in th e

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

fa c e o f fa ilu re s a n d d is ru p tio n s .

Unit 3
Introduction to project management
The need for source code control:
S o u rc e c o d e c o n tro l (a ls o k n o w n a s ve rs io n c o n tro l) is a n e s s en tia l p a rt o f D e vO p s
p ra c tic e s . H ere a re a few rea s o n s w h y:
Collaboration: S o u rc e c o d e c o n tro l a llo w s m u ltip le te a m m em b e rs to w o rk o n th e s a m e
c o d e b a s e s im u lta n e o u s ly a n d tra c k e a c h o th e r's c h a n g es .
Traceability: S o u rc e c o d e c o n tro l s ys tem s p ro v id e a c o m p lete h is to ry o f c h a n g es to th e
c o d e , en a b lin g te a m s to tra c e b u g s , u n d e rs ta n d w h y s p e c ific c h a n g es w ere m a d e , a n d ro ll
b a c k to p rev io u s ve rs io n s if n ec es s a ry.
Branching and merging: T e a m s c a n c re a te s e p a ra te b ra n c h es fo r d iff eren t fe a tu re s o r
b u g fixe s , th e n m e rg e th e c h a n g es b a c k in to th e m a in c o d e b a s e . T h is h e lp s to e n s u re th a t
d iff eren t p a rts o f th e c o d e c a n b e d e ve lo p e d in d e p e nd en tly, w ith o u t in terferin g w ith e a c h
o th e r.

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Continuous integration and delivery: S o u rc e c o d e c o n tro l s ys te m s a re in teg ra l to


c o n tin u o u s in teg ra tio n a n d d elive ry (C I/C D ) p ip elin es , w h ere c h a n g e s to th e c o d e a re
a u to m a tic a lly b u ilt, te s te d , a n d d ep lo ye d to p ro d u c tio n .
In s u m m a ry, s o u rc e c o d e c o n tro l is a c ritic a l c o m p o n en t o f D ev O p s p ra c tic es , a s it
en a b les tea m s to c o lla b o ra te, m a n a g e c h a n g es to c o d e , a n d a u to m a te th e d elive ry o f
s o f tw a re.

History of source code management


T h e h is to ry o f s o u rc e c o d e m a n ag em e nt (S C M ) in D ev O p s d a tes b a c k to th e ea rly d a ys o f
s o f tw a re d e ve lo p m e n t. E a rly S C M s ys te m s w ere s im p le a n d fo c u s e d o n trac k in g c h a n g es
to s o u rc e c o d e o ve r tim e .
In th e la te 1 9 9 0 s a n d ea rly 2 0 0 0 s , th e o p en -s o u rc e m o v em en t a n d the ris e o f th e in tern et
led to a p ro lifera tio n o f n e w S C M to o ls , in c lu d in g C V S (C o n c u rre n t V ers io n s S ys te m ),
S u b v ers io n , a n d G it. T h e s e s ys tem s m a d e it ea s ier fo r d e ve lo p ers to c o lla b o ra te o n
p ro jec ts , m a n a g e m ultip le ve rs io n s o f c o d e , a n d a u to m a te th e b u ild , te s t, a n d d e p lo ym en t
p ro c e s s .
A s D ev O p s em e rg ed a s a s o ftw a re d e ve lo p m en t m eth o d o lo g y in th e m id -2 0 0 0 s , S C M
b e c a m e a n in te g ra l p a rt o f th e D ev O p s to o lc h a in. D ev O p s te am s a d o p ted G it a s th e ir S C M
to o l o f c h o ic e, lev era g in g its d is trib u ted n atu re, b ra n c h a nd m e rg e c a p a b ilitie s , a n d
in te g ra tio n w ith C I/ C D p ip elin es .
T o d a y, G it is th e m o s t w id e ly u s ed S C M s ys tem in th e w o rld , a n d is a c ritic a l c o m p o n en t
o f D ev O p s p ra c tic es . W ith th e ris e o f c lo u d -b a s ed p la tfo rm s , m o d ern S C M s ys tem s a ls o
o f fer fea tu res lik e c o lla b o ra tio n , c o d e rev ie w s , a n d in te g ra ted is s u e tra c k in g .

Roles and code in Devops


In D e vO p s , ro les a n d c o d e p la y a c ritic a l ro le in th e d e ve lo p m e nt, d elive ry, a n d o p e ra tio n
o f s o ftw a re .
Roles:
D e ve lo p m e n t tea m : res p o n s ib le f o r w ritin g a n d te s tin g c o d e.
O p era tio n s te a m : re s p o n s ib le fo r th e d ep lo ym en t a n d m a in ten a n c e o f th e c o d e in
p ro d u c tio n .
D e vO p s tea m : re s p o n s ib le fo r b rid g in g th e g a p b etw ee n d ev elo p m en t a n d o p era tio n s ,
en s u rin g th a t c o d e is d elive re d q u ic k ly a n d relia b ly to p ro d u c tio n .

Code:

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

C o d e is th e b a c k b o ne o f D ev O p s a n d re p res e n ts th e s o ftw a re th a t is b e in g d ev elo p ed ,


tes ted , d e p lo ye d , a n d m a in ta in e d .
C o d e is m a n a g ed u s in g s o u rc e c o d e c o n tro l s ys te m s lik e G it, w h ic h p ro v id e a w a y to
tra c k c h a n g e s to th e c o d e o ve r tim e , c o lla b o ra te o n th e c o d e w ith o the r tea m
m em b e rs , a n d a uto m a te th e b u ild , te s t, a n d d ep lo ym en t p ro c es s .
C o d e is c o n tin u o u s ly in te g ra ted a n d te s te d , e n s u rin g th a t a n y c h a n g es to th e c o d e d o
n o t c a u s e u n in ten d ed c o n s e q u e n c e s in th e p ro d u c tio n en v iro nm e n t.

In c o n c lu s io n , b o th ro les a n d c o d e p la y a c ritic a l ro le in D e vO p s . T e a m s w o rk to g eth er to


en s u re th a t c o d e is d ev elo p ed , te s te d , a n d d elive re d q u ic k ly a n d relia b ly to p ro d u c tio n ,
w h ile o p era tio n s te a m s m a in ta in th e c o d e in p ro d uc tio n a n d res p o n d to a n y is s u e s th a t
a ris e .
O v era ll, S C M h a s b ee n a n im p o rta n t p a rt o f th e ev o lu tio n o f D ev O p s , en a b lin g tea m s to
c o lla b o ra te, m a n a g e c o d e c h a n g es , a n d a u to m a te th e s o ftw a re d e liv ery p ro c es s .

Source code management system and migrations


A s o u rc e c o d e m a n a g e m e n t ( SC M ) s ys te m is a s o ftw a re a p p lic a tio n th a t p ro vid es
v ers io n c o ntro l fo r s o u rc e c o d e. It tra c k s c h a n g e s m a d e to th e c o d e o ve r tim e ,
en a b lin g tea m s to rev ert to p rev io u s v ers io n s if n e c e s s a ry, a n d h e lp s e ns u re th a t
c o d e c a n b e c o lla b o ra te d o n b y m u ltip le te am m em b e rs .
S C M s ys te m s typ ic a lly p ro vid e fea tu re s s u c h a s ve rs io n tra c k in g , b ra n c h in g a n d
m erg in g , c h a ng e h is to ry, a n d ro llb a c k c a p a b ilities . S o m e p o p u la r S C M s ys tem s
in c lu d e G it, S u b ve rs io n , M e rc u ria l, a n d M ic ro s o ft T e a m F o u n d a tio n S e rv er.
S o u rc e c o d e m a n a g e m e n t (S C M ) s ys tem s a re o ften u s e d to m a n a g e c o d e m ig ra tio n s ,
w h ic h are th e p ro c es s o f m o v in g c o d e fro m o n e e n viro n m en t to a n o th er. T h is is
typ ic a lly d o n e a s p a rt o f a s o ftw a re d e ve lo p m en t p ro je c t, w h ere c o d e is m o ve d
fro m a d ev elo p m e n t e n viro n m en t to a tes tin g en v iro n m e n t a n d fin a lly to a
p ro d u c tio n e nv iro n m e n t.

S C M s ys te m s p ro vid e a nu m b er o f b e n efits fo r m a n a g in g c o d e m ig ra tio n s , in c lu d in g :


Version control
Branching and merging
Rollback
Collaboration
Automation

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

1) Version control: S C M s ys tem s k e ep a re c o rd o f a ll c h a n g e s to th e c o d e, e n a b lin g


tea m s to tra c k th e c o d e a s it m o v es th ro u g h d iff eren t en v iro n m e n ts .
Purpose of Version Control:
M u ltip le p eo p le c an w o rk s im u lta n eo u s ly o n a s in g le p ro jec t. E ve ryo n e w o rk s o n a n d e d its
th eir o w n c o p y o f th e files a n d it is u p to th em w h e n th e y w is h to s h a re th e c h a n g es
m a d e b y th e m w ith th e res t o f th e te a m .
It a ls o e n a b les o n e p ers o n to u s e m u ltip le c o m p u ters to w o rk o n a p ro jec t, s o it is
v alu a b le ev en if y o u a re w o rk in g b y yo u rs elf.
It in teg ra tes th e w o rk th a t is d o n e s im u ltan e o u s ly b y d if feren t m e m b ers o f th e te a m . In
s o m e ra re c a s es , w h e n c o n flic ting e d its a re m a d e b y tw o p e o p le to th e s a m e lin e o f a
file, th en h u m a n a s s is ta n c e is req u es ted b y th e v ers io n c o n tro l s ys tem in d ec id in g
w h a t s h o uld b e d o n e.
V ers io n c o n tro l p ro v id es a c c e s s to th e h is to ric a l ve rs io n s o f a p ro jec t. Th is is ins u ra n c e
a g a in s t c o m p ute r c ra s h e s o r d a ta lo s s . If a n y m is ta k e is m a d e, yo u c a n ea s ily ro ll
b a c k to a p rev io u s ve rs io n . It is a ls o p o s s ib le to u n d o s p e c ific e d its th a t to o w ith o u t
lo s in g th e w o rk d o n e in th e m e a n w h ile . It c a n b e e a s ily k n o w n w h e n , w h y, a n d b y
w h o m a ny p a rt o f a file w a s e d ited .

Benefits of the version control system:

E n h a n c es th e p ro jec t d ev elo p m e n t s p ee d b y p ro vid in g e ffic ie nt c o lla b o ra tio n ,


Le ve ra g e s th e p ro d u c tivity, ex p e d ites p ro d u c t d elive ry, a n d s k ills o f th e e m p lo ye es
th ro u g h b e tte r c o m m u n ic a tio n a n d a s s is tan c e,
R e d u c e p o s s ib ilities o f erro rs a n d c o n flic ts m e a n w h ile p ro je c t d e ve lo p m en t th ro u g h
tra c ea b ility to e ve ry s m a ll c h a n g e,
E m p lo yee s o r c o n trib u to rs o f th e p ro jec t c a n c o n trib u te fro m a n yw h ere irres p e c tive o f th e
d iff eren t g eo g ra p h ic a l lo c a tio n s th ro u g h th is V C S ,
F o r e a c h d if feren t c o n trib u to r to th e p ro jec t, a d if feren t w o rk in g c o p y is m ain ta in ed a n d
n o t m e rg ed to th e m a in f ile u n les s th e w o rk in g c o p y is v a lid a te d . T h e m o s t p o p u la r
ex a m p le is G it, H e lix c o re , M ic ro s o ft T F S,
H elp s in re c o ve ry in c a s e o f a n y d is a s te r o r c o n tin g en t s itu a tio n ,
In fo rm s u s a b o u t W h o , W h at, W h e n , W h y c h a n g es h a ve b ee n m a d e.

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Types of Version Control Systems:

Lo c a l V ers io n C o n tro l S ys tem s


C e n tra lize d V ers io n C o n tro l S ys tem s
D is trib u te d V ers io n C o n tro l S ys tem s

Local Version Control Systems: It is o n e o f th e s im p le s t fo rm s a n d h a s a d a ta b a s e th a t


k ep t all th e c h a n g es to files u n d er re vis io n c o n tro l. R C S is o n e o f th e m o s t c o m m o n V C S
to o ls . It k ee p s p a tc h s e ts ( d iffe re n c e s b etw ee n f ile s ) in a s p e c ia l f o rm a t o n d is k . B y
a d d in g u p a ll th e p a tc h es it c a n th en re-c rea te w h a t a n y file lo o k ed lik e a t a n y p o in t in
tim e .
Centralized Version Control Systems: C en tra lize d ve rs io n c o n tro l s ys tem s c o n ta in ju s t
o n e rep o s ito ry g lo b a lly a n d e ve ry u s er n e ed to c o m m it fo r re flec tin g o n e ’ s c h a n g es in
th e rep o s ito ry . It is p o s s ib le fo r o th ers to s ee yo u r c h a n g e s b y u p d a tin g .
T w o th in g s a re req u ire d to m ak e yo u r c h a n g e s vis ib le to o th e rs w h ic h a re :

Y o u c o m m it
T h ey u p d a te

T h e b en ef it o f C VC S ( C en tra liz ed V e rs io n C o n tro l Sys te m s ) m a k es c o lla b o ra tio n a m o n g s t

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

d e ve lo p ers a lo n g w ith p ro v id ing a n in s ig h t to a c e rta in ex te n t o n w h a t e ve ryo n e els e is


d o in g o n th e p ro jec t. It a llo w s a d m in is tra to rs to fin e -g ra in ed c o n tro l o ve r w h o c a n d o
w h a t.
It h a s s o m e d o w n s id e s a s w e ll w h ic h le d to th e d e ve lo p m e nt o f D V S. T h e m o s t o b vio u s is
th e s in g le p o in t o f fa ilu re th a t th e c e n tra liz ed re p o s ito ry re p res e n ts if it g o es d o w n d u rin g
th a t p e rio d c o lla b o ra tio n a nd s a v in g v ers io n e d c h a n g e s is n o t p o s s ib le. W h a t if th e h a rd
d is k o f th e c en tra l d a ta b a s e b e c o m e s c o rru p ted , a n d p ro p er b a c k u p s h a ve n ’ t b ee n k e p t?
Y o u lo s e a b s o lu tely e ve ryth in g .

Distributed Version Control Systems:


D is trib u te d v ers io n c o n tro l s ys te m s c o n ta in m u ltip le re p o s ito ries . E a c h u s e r h a s th e ir
o w n rep o s ito ry a n d w o rk in g c o p y. J u s t c o m m ittin g yo u r c h a ng es w ill n o t g iv e o th ers
a c c es s to yo u r c h a n g es . T h is is b ec a u s e c o m m it w ill refle c t th o s e c h a n g es in yo ur lo c a l
rep o s ito ry a n d yo u n ee d to p u s h th em in o rd e r to m a k e th em v is ib le o n th e c e n tra l
rep o s ito ry. S im ila rly, W h e n yo u u p d a te, yo u d o n o t g e t o th e rs ’ c h a n g e s u n le s s yo u h a v e
firs t p u lled th o s e c h a n g es in to yo u r re p o s ito ry.
T o m a k e yo u r c h a n g es vis ib le to o th e rs , 4 th in g s a re req u ire d :

Y o u c o m m it
Y ou p ush
T h e y p u ll
T h e y u p d a te
T h e m o s t p o p u la r d is trib u te d v ers io n c o n tro l s y s te m s a re G it, a n d M erc u ria l. T h ey
h e lp u s o v erc o m e th e p ro b le m o f s in g le p o in t o f fa ilu re .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

2)Branching and merging: Te a m s c a n c re a te s e p a ra te b ra n c h es o f c o d e f o r d if feren t


en v iro n m e n ts , m a k in g it e a s ier to m a n a g e th e m ig ra tio n p ro c es s .

B ra nc h in g a n d m erg in g a re k e y c o n c ep ts in G it-b a s e d ve rs io n c o n tro l s ys te m s , a n d a re


w id ely u s ed in D e vO p s to m an a g e th e d e ve lo p m e n t o f s o ftw a re .
B ra nc h in g in G it a llo w s d e ve lo p e rs to c rea te a s e p a ra te lin e o f d e ve lo p m e n t f o r a n ew
fe a tu re o r b u g fix. T h is a llo w s d ev elo p ers to m a k e c h a n g e s to th e c o d e w ith o ut a ffe c tin g
th e m ain b ra n c h , an d to c o lla b o ra te w ith o th e rs o n th e s a m e fe a tu re o r b u g fix.
M erg in g in G it is th e p ro c e s s o f in teg ra tin g c h a n g es m a d e in o n e b ra n c h in to a n o th er
b ra n c h. In D ev O p s , m erg in g is o ften u s ed to in teg ra te c h a n g e s m a d e in a fe a tu re b ra n c h
in to th e m a in b ra n c h , in c o rp o ra tin g th e c h a n g e s in to th e c o d e b a s e .
B ra nc h in g a n d m erg in g p ro vid e s ev era l b en e fits in D ev O p s :
Improved collaboration: B y a llo w in g m u ltip le d e ve lo p e rs to w o rk o n th e s a m e c o d eb a s e
a t th e s a m e tim e, b ra n c h in g a nd m erg in g fa c ilita te c o lla b o ra tio n a n d c o o rd in atio n a m o n g
tea m m e m b ers .
Improved code quality: B y is o la tin g c h a n g e s m a d e in a fea tu re b ran c h , b ra n c h in g a n d
m erg in g m a k e it ea s ier to th o ro u g h ly re view a n d tes t c h a ng es b e fo re th e y a re in teg ra te d
in to th e m a in c o d eb a s e, re d u c in g th e ris k o f intro d u c in g b ug s o r o th er is s u e s .
Increased transparency: B y tra c k in g a ll c h an g es m a d e to th e c o d e b a s e, b ra n c h in g a n d

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

m erg in g p ro vid e a c lea r au d it tra il o f h o w c o d e h as e vo lv ed o v er tim e.


O v era ll, b ra n c h in g a n d m erg in g a re e s s en tia l to o ls in th e D e vO p s to o lk it, h elp in g to
im p ro ve c o llab o ra tio n , c o d e q u a lity, a n d tra n s p a re n c y in th e s o ftw a re d e ve lo p m en t
p ro c e s s .
Rollback: In th e ev en t o f a p ro b lem d u rin g a m ig ra tio n , tea m s c a n q u ic k ly rev ert to a
p re vio u s v ers io n o f th e c o d e .
R o llb a c k in D e vO p s ref ers to th e p ro c e s s o f re ve rtin g a c h a n g e o r retu rn in g to a p rev io u s
v ers io n o f a s ys te m , a p p lic a tio n , o r in fra s tru c tu re c o m p o n en t. R o llb a c k is a n im p o rta n t
c a p a b ility in D ev O p s , a s it p ro vid e s a w a y to q u ic k ly a n d e ffic ie n tly re ve rt c h a n g es th a t
h a ve u n in ten d ed c o n s e q u e n c e s o r c a u s e p ro b lem s in p ro d u c tio n .
T h ere a re s e ve ra l a p p ro a c h e s to ro llb a c k in D e vO p s , in c lu d in g :
Version control: B y u s in g a v ers io n c o n tro l s ys tem , s u c h a s G it, D ev O p s tea m s c a n re ve rt
to a p rev io u s ve rs io n o f th e c o d e b y c h ec k in g o u t a n e a rlier c o m m it.
Infrastructure as code : B y u s in g in fra s tru c tu re a s c o d e to o ls , s u c h a s T erra fo rm o r
A n s ib le , D ev O p s te a m s c a n ro ll b a c k c h a n g e s to th eir in fra s tru c tu re b y re -a p p lyin g a n
ea rlier ve rs io n o f th e c o d e.
Continuous delivery pipelines: D e vO p s tea m s c a n u s e c o n tin u o u s d elive ry p ip e lin e s to
a u to m a te th e ro llb a c k p ro c e s s , b y a u to m a tic ally re ve rtin g c h a n g es to a p re vio u s v ers io n
o f th e c o d e o r in f ra s tru c tu re if tes ts fa il o r o th e r p ro b lem s a re d e te c ted .
Snapshots: D e vO p s tea m s c a n u s e s n a p s h o ts to q u ic k ly re s to re a n ea rlier ve rs io n o f a
s ys tem o r in fra s tru c tu re c o m p o n en t.
O v era ll, ro llb a c k is a n im p o rta n t c a p a b ility in D e vO p s , p ro vid in g a w a y to q u ic k ly re ve rt
c h a n g es th a t h a v e u n in te n d ed c o n s eq u e n c e s o r c a u s e p ro b lem s in p ro d u c tio n. B y u s in g a
c o m b in a tio n o f ve rs io n c o n tro l, in f ra s tru c tu re a s c o d e, c o n tin u o u s d e liv ery p ip elin es , a n d
s n a p s h o ts , D e vO p s tea m s c a n e n s u re th a t th eir s ys tem s a n d a p p lic a tio n s c a n b e q u ic k ly
a n d e a s ily ro lled b a c k to a p rev io u s v ers io n if n ee d e d .

Collaboration: S C M s ys tem s e n a b le tea m s to c o lla b o ra te o n c o d e m ig ra tio n s , w ith

tea m m e m b ers w o rk in g o n d iffe re n t a s p ec ts o f th e m ig ra tio n p ro c e s s s im u lta n e o u s ly.


C o lla b o ra tio n is a k ey a s p e c t o f D ev O p s , a s it h e lp s to b rin g to g e th e r d ev elo p m en t,
o p era tio n s , a n d o th e r tea m s to w o rk to g e th er to w a rd s a c o m m o n g o a l o f d e liv erin g
h ig h -q u a lity s o ftw a re q u ic k ly a n d ef fic ien tly.
In D e vO p s , c o lla b o ra tio n is fa c ilita te d b y a ra n g e o f to o ls a n d p ra c tic e s , in c lu d in g :
Version control system s : B y u s in g a v ers io n c o n tro l s ys te m , s u c h a s G it, te a m s c a n

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

c o lla b o ra te o n c o d e d ev elo p m en t, tra c k c h a n g e s to s o urc e c o d e , a n d m e rg e c o d e


c h a n g es fro m m u ltip le c o n trib u to rs .
Continuous integration and continuous deployment (CI/CD): B y a u to m atin g th e b u ild ,
tes t, a n d d e p lo ym en t o f c o d e , C I/ C D p ip elin es h elp to s tre a m lin e th e d e ve lo p m en t
p ro c e s s a n d re d u c e th e ris k o f in tro d u c in g b u g s o r o th er is s u es in to th e c o d eb a s e.
Code review: B y u s in g c o d e rev iew to o ls , s u c h a s p u ll req u es ts , te a m s c a n c o lla b o ra te o n
c o d e d e ve lo p m en t, s h a re fee d b a c k , a n d e n s u re th a t c h a n g es a re th o ro u g h ly rev ie w ed a n d
tes ted b ef o re th ey a re inte g ra te d in to th e c o d eb a s e.
Issue tracking: B y u s in g is s u e tra c k in g to o ls , s u c h a s J IR A o r G itH u b Is s u e s , tea m s c a n
c o lla b o ra te o n res o lv in g b u g s , tra c k in g p ro g res s , a n d m a n a g in g th e d ev elo p m en t o f n ew
fe a tu res .
Communication tools: B y u s in g c o m m u n ic a tio n to o ls , s u c h a s S la c k o r M ic ro s o ft T ea m s ,
tea m s c a n c o lla b o ra te a n d c o o rd in ate th e ir w o rk , s h a re in fo rm a tio n , a n d re s o lv e
p ro b lem s q u ic k ly a n d ef fic ien tly.
O v era ll, c o lla b o ra tio n is a c ritic al c o m p o n e n t o f D ev O p s , h e lp in g te a m s to w o rk to g eth er
ef fec tiv ely a n d ef fic ien tly to d elive r h ig h -q u a lity s o f tw a re. B y u s in g a ra n g e o f to o ls a n d
p ra c tic e s to f a c ilita te c o lla b o ra tio n , D ev O p s tea m s c a n im p ro v e th e tra n s p a re n c y, s p e ed ,
a n d q u ality o f the ir s o ftw a re d ev elo p m e n t p ro c e s s es .

Automation: M a n y S C M s ys tem s in teg ra te w ith c o n tin u o u s in te g ra tio n a n d d e liv ery

(C I/C D ) p ip elin es , e n a b ling te a m s to a u to m a te th e m ig ra tio n p ro c es s .


In c o n c lu s io n , S C M s ys tem s p la y a c ritic a l ro le in m a n a g in g c o d e m ig ra tio n s . T he y
p ro vid e a w a y to tra c k c o d e c h a ng es , c o lla b o ra te o n m ig ra tio n s , a n d a u to m a te th e
m ig ratio n p ro c e s s , en a b lin g tea m s to d e liv er c o d e q uic k ly a n d re lia b ly to p ro d u c tio n .

Shared authentication
S h a re d a u th e n tic a tio n in D e v O p s re fe rs to th e p ra c tic e o f u s in g a c om m o n id e n tity m a n a g e m e n t
s ys te m to c o n tro l a c c e ss to th e v a rio u s to o ls, re s ou rc e s , a n d s ys te m s u se d in so ftw a re de v e lo p m e n t
a n d o pe ra tio n s . T h is h e lp s to sim p lify th e p ro c e ss o f m a n a g in g u se rs a n d pe rm is sio n s a n d e n s u re s
th a t e v e ry on e h a s th e n e c e s sa ry a c c e s s to pe rfo rm th e ir jo b s. E xa m p le s o f s h a re d a u th e n tic a tio n
s ys te m s in c lu de A c tiv e D ire c to ry, L D A P , a n d S A M L -b a s e d ide n ti ty p ro v id e rs.

Hosted Git servers


H os te d G it se rv e rs a re o n lin e p la tfo rm s th a t p ro v ide G it re p o sito ry h os tin g se rv ic e s fo r s o ftw a re
d e v e lop m e n t te a m s . T h e y a re w id e ly u se d in D e v O p s to c e n tra lize v e rsio n co n tro l o f so u rc e c o de , tra c k

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

c h a n g e s, a n d c o lla b ora te o n c od e d e v e lo p m e n t. S om e po p u la r h o ste d G it s e rv e rs in c lu d e G itH u b ,


G itL a b , a n d B itb u c k e t. T h e se p la tfo rm s o ffe r fe a tu re s su c h a s p u ll re q u e sts , c od e re v ie w s , iss u e
tra c kin g, a n d c o n tin u ou s in te g ra tion /c o n tin u ou s d e p loy m e n t (C I/C D ) p ip e lin e s. B y u sin g a h o s te d G it
s erv e r, D e v O p s te a m s c a n stre a m lin e th e ir d e v e lo p m e n t pro c e ss e s a n d c olla b ora te m o re ef fic ie n tly o n
c o de p ro je c ts.

Different Git server implementations


T h ere a re s e ve ra l d if feren t G it s e rve r im p lem en ta tio n s th a t o rg a n iz a tio n s c a n u s e to h o s t
th eir G it rep o s ito rie s . S o m e o f th e m o s t p o p u la r in c lu d e :
G itH u b : O n e o f th e la rg e s t G it re p o s ito ry h o s tin g s e rv ic es , G itH u b is w id ely u s ed b y
d e ve lo p ers f o r ve rs io n c o n tro l, c o lla b o ra tio n , a n d c o d e s h a rin g .
GitLab: A n o p en -s o u rc e G it re p o s ito ry m a n ag em e nt p la tfo rm th a t p ro v id es v ers io n c o ntro l,
is s ue tra c k in g , c o d e re view , a n d m o re.
Bitbucket: A w e b -b a s ed G it re p o s ito ry ho s tin g s e rv ic e th a t p ro vid e s v ers io n c o n tro l, is s u e
tra c k in g , a n d p ro jec t m a n a g e m e n t to o ls .
Gitea: A n o p e n -s o u rc e G it s e rv er th a t is d es ig n e d to b e lig h tw eig h t, f as t, a n d e a s y to u s e .
Gogs: A n o th er o p e n -s o u rc e G it s erv er, G og s is d es ig n ed fo r s m a ll te a m s and
o rg a niz a tio n s a n d p ro v id es a s im p le , u s er-frien d ly in terfa c e .
GitBucket: A G it s erv er w ritten in S c a la th a t p ro v id e s a w id e ra n g e o f fe a tu re s , in c lu d in g
is s u e tra c k ing , p u ll re q u e s ts , a n d c o d e rev iew s .
O rg a n iz a tio n s c a n c h o o s e th e G it s erve r im p le m e n ta tio n th a t b e s t fits th eir n e ed s , ta k in g
in to a c c o u n t fa c to rs s u c h a s c o s t, s c ala b ility, a n d s ec u rity re q u irem en ts .

Docker intermission

D o c k e r is an o p en -s o u rc e p ro jec t w ith a frien d ly-w h ale lo g o th a t fa c ilita te s th e


d e p lo ym e n t o f a p p lic a tio n s in s o ftw a re c o n ta in e rs . It is a s et o f P a a S p ro d u c ts th a t
d e liv er c o n ta in e rs (s o ftw a re p a c k a g e s ) u s ing O S -lev el virtu aliz atio n . It em b o d ie s re s o u rc e
is o la tio n fea tu re s o f th e Lin u x k e rne l b u t o ffe rs a frie n d ly A P I.

In s im p le w o rd s , D o c k e r is a to o l o r p la tfo rm d e s ig n to s im p lify the p ro c e s s o f c re a tin g ,


d e p lo yin g , a n d p a c k a g in g a n d s h ip p in g o u t a p p lic a tio n s a lo n g w ith its p a rts s u c h a s
lib ra rie s a n d o th er d ep en d en c ie s . Its p rim a ry p u rp o s e is to a u to m a te th e a p p lic a tio n
d e p lo ym e n t p ro c es s a n d o p era tin g -s ys tem -lev el v irtu a liz a tio n o n L in u x. It a llo w s m u ltip le
c o n ta in e rs to ru n o n th e s a m e h a rd w a re a n d p ro v id e s h ig h p ro d u c tivity, a lo n g w ith
m a in ta in in g is o la te d a p p lic a tio n s a n d f a c ilita tin g s ea m le s s c o nf ig u ra tio n .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Docker benefits include


H ig h R O I a n d c o s t s a vin g s
P ro d u c tiv ity a n d s ta n d a rd iz a tio n
M a in ten a n c e a n d c o m p a tib ility
R a p id d e p lo ym en t
F a s ter c o n f ig u ra tio n s
S ea m les s p o rta b ility
C o n tin u o u s tes tin g a n d d ep lo ym e n t
Is o la tio n , s e g reg a tio n , a n d s ec u rity

Docker vs. Virtual Machines

V irtu a l M a c h in e is a n a p p lic a tio n e n viro n m en t th a t im ita tes d ed ic a ted h a rd w a re b y


p ro vid in g a n e m u la tio n o f the c o m p u te r s ys tem . D o c k er a nd V m b o th h a v e th e ir s et o f
b e n ef its a n d u s es , b u t w h en it c o m es to ru n n in g a p p lic a tio n s in m u ltip le e n viro n m en ts ,
b o th c a n b e u tiliz ed . S o w h ic h o n e w in s ? L et's g et in to a q u ic k D o c k er vs . V M c o m p aris o n .

OS Support: V M req u ire s a lo t o f m em o ry w he n in s ta lle d in a n O S , w h e rea s D o c k er


c o n ta in e rs o c c u p y les s s p a c e.

Performance: R u n n in g s e ve ral V M s c a n a ffe c t th e p erfo rm a n c e , w h erea s , D o c k er


c o n ta in e rs a re s to red in a s in g le D o c k e r e n g in e; th u s , th e y p ro vid e b e tte r p e rfo rm a nc e.

Boot-up time : VM s have a lo n g e r b o o tin g tim e c o m p a red to D o c k er.


E f fic ien c y: V M s ha v e lo w e r e ffic ien c y th a n D o c k e r.

Scaling: V M s a re d iffic u lt to s c a le u p , w h erea s D o c k e r is ea s y to s c a le u p .

Space allocation: Y o u c a n n o t s h a re d a ta v o lu m e s w ith V M s , b u t yo u c an s h a re a nd re u s e


th em am o n g va rio u s D o c k e r c o n ta in e rs .

Portability: W ith V M s , yo u c a n fa c e c o m p a tib ility is s u e s w h ile p o rtin g a c ro s s d if feren t


p la tfo rm s ; Do cke r is ea s ily p o rta b le .
C le a rly, D o c k e r is a h an d s -d o w n w in n er.

Gerrit

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

G e rrit is a w eb b a s e d c o d e re vie w to o l w h ic h is in teg ra ted w ith G it a n d b u ilt o n to p o f G it


v ers io n c o n tro l s y s te m (h e lp s d ev elo p ers to w o rk to g e th er a n d m a in ta in th e h is to ry o f
th eir w o rk ). It a llo w s to m erg e c h a n g e s to G it re p o s ito ry w h e n yo u a re d o n e w ith th e c o d e
rev ie w s .

G e rrit w a s d e ve lo p e d b y a t G o o g le w h ic h is w ritten in J a v a , S e rv let,


G W T ( G o o g le W eb T o o lk it) . T h e s ta b le re le a s e o f G e rrit is 2 .1 2 .2 a n d p u b lis h ed o n M a rc h
1 1 , 2 0 1 6 lic e n s ed u n d er .

Why Use Gerrit?

F o llo w in g a re c e rta in re a s o n s , w h y yo u s h o u ld u s e G errit.

Y o u c a n e a s ily fin d th e erro r in th e s o u rc e c o d e u s in g G errit.


Y o u c a n w o rk w ith G errit, if yo u h a ve reg u la r G it c lien t; n o n eed to in s ta ll a n y G errit
c lien t.
G errit c a n b e u s ed a s a n inte rm ed ia te b etw ee n d ev elo p e rs a n d g it re p o s ito rie s .

Features of Gerrit
G errit is a free a n d a n o p e n s o u rc e G it ve rs io n c o n tro l s ys te m .
Th e u s er in terfa c e o f G errit is fo rm e d o n .
It is a lig h tw eig h t fra m e w o rk f o r re view in g e ve ry c o m m it.
G errit a c ts a s a re p o s ito ry, w h ic h a llo w s p u s h in g th e c o d e a n d c rea tes th e rev iew fo r
yo u r c o m m it.

Advantages of Gerrit
G errit p ro v id e s a c c e s s c o n tro l fo r G it rep o s ito ries a n d w eb f ro n te n d fo r c o d e re vie w .
Y o u c a n p u s h th e c o d e w ith o u t u s in g a d d itio n a l c o m m a n d lin e to o ls .
G errit c a n a llo w o r d ec lin e th e p erm is s io n o n th e rep o s ito ry lev el a n d d o w n to th e
b ra n c h lev el.
G errit is s u p p o rte d b y E c lip s e.

Disadvantages of Gerrit
R ev iew in g , ve rifyin g a n d re s u b m ittin g th e c o d e c o m m its s lo w s d o w n th e tim e to
m a rk et.
G errit c a n w o rk o n ly w ith G it.
G errit is s lo w a n d it's n o t p o s s ib le to c h an g e th e s o rt o rd e r in w h ic h c h a n g es a re lis te d .
Y o u n e ed a d m in is tra to r rig h ts to a d d re p o s ito ry o n G e rrit.

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

What is Gerrit?

G e rrit is a n ex c e p tio n a lly e xten s ib le a n d c o n f ig u ra b le a p p a ra tu s fo r o n lin e c o d e s u rv ey


a n d s to reh o u s e th e ex ec u tiv es fo r p ro jec ts u tiliz in g th e G it ren d itio n c o n tro l fra m ew o rk .
G e rrit is s im ila rly h elp fu l w h ere a ll c lien ts are b eliev ed c o m m itters , fo r e xa m p le, m ig h t b e
th e s itu a tio n w ith s h u t s o u rc e b u s in e s s a d va n c em en t.

It is u s e d to s to re th e m e rg ed c o d e b a s e a n d th e c h a n g es u n d e r rev iew th a t h a ve n o t
b e in g m e rg e d yet. G e rrit h a s th e lim ita tio n o f a s in g le rep o s ito ry p e r p ro jec t.

G e rrit is firs t a n d fo re m o s t a n a rra n g in g re g io n w h ere c h a n g e s c a n b e lo o k ed a t p rio r to


tu rn in g in to a p iec e o f th e c o d e b a s e . It is lik e w is e a n e m p o w e rin g a g en t f o r th is s u rv ey
c y c le, c a tc h in g n o tes a n d rem a rk s a b o u t th e p ro g re s s io n s to em p o w e r c o n v ers a tio n o f
th e c h a n g e. T h is is e s p ec ia lly v alu a b le w ith c o n v eye d g ro u p s w h ere th is d is c u s s io n c a n ’
t o c c u r e ye to eye .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

How Gerrit Works Architecture?

Use case of Gerrit

K n o w led g e e xc h a n g e :

Th e c o d e re view p ro c es s a llo w s n ew c o m ers to s ee th e c o d e o f o th er m o re ex p e rie n c e d


d ev elo p e rs .

D ev elo p ers c a n g et f ee d b a c k o n th e ir s u g g es te d c h a n g es .

E xp erien c ed d ev elo p ers c a n h e lp to e va lu a te th e im p a c t o n th e w h o le c o d e .

Sh a re d c o d e o w ne rs h ip : b y re view in g c o d e o f o th er d ev elo p ers th e w h o le tea m g ets a


s o lid k n o w led g e o f th e c o m p le te c o d e b a s e.

The pull request model


P u ll re q u e s t is a fe a tu re o f G it-b as e d ve rs io n c o n tro l s ys tem s th a t a llo w s d e ve lo p e rs to
p ro p o s e c h a n g e s to a G it rep o s ito ry a n d req u es t fee d b a c k o r a p p ro v a l f ro m o the r tea m
m em b e rs . It is w id e ly u s ed in D e vO p s to fa c ilita te c o lla b o ra tio n a n d c o d e rev iew in th e
s o f tw a re d e ve lo p m e n t p ro c e s s .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

In th e p u ll req u es t m o d e l, a d e ve lo p e r c rea tes a n e w b ra n c h in a G it rep o s ito ry, m a k es


c h a n g es to th e c o d e, a n d th en o p en s a p u ll re q u e s t to m e rg e th e c h a n g e s in to th e m a in
b ra n c h. O th e r tea m m em b ers c a n th en rev ie w th e c h a n g es , p ro vid e fe ed b a c k , a n d
a p p ro ve o r re je c t th e req u es t.

P u ll R eq u e s ts a re a m ec ha n is m p o p u la riz ed b y g ith u b , u s ed to h e lp fa c ilita te m erg in g o f


w o rk , p a rtic u la rly in th e c o n tex t o f o p e n -s o u rc e p ro jec ts . A c o n trib u to r w o rk s o n th eir
c o n trib u tio n in a fo rk (c lo n e ) o f th e c e n tra l re p o s ito ry. O n c e th eir c o n trib u tio n is fin is h ed
th ey c re a te a p u ll req u e s t to n o tify th e o w n e r o f th e c en tra l rep o s ito ry th a t th e ir w o rk is
rea d y to b e m erg e d in to th e m a in lin e . T o o lin g s u p p o rts a n d en c o u ra g es c o d e rev ie w o f
th e c o n trib u tio n b e fo re a c c e p tin g th e re q u e s t. P u ll re q u e s ts h a ve b e c o m e w id e ly u s e d in
s o f tw a re d e ve lo p m e n t, b u t c ritic s a re c o n c ern e d b y th e a d d itio n o f in teg ra tio n fric tio n
w h ic h c a n p rev en t c o n tin u o us in teg ra tio n .

P u ll req u es ts es s e n tia lly p ro vid e c o n ve n ie n t to o lin g f o r a d ev elo p m e n t w o rk flo w th a t


ex is te d in m a n y o p en -s o u rc e p ro je c ts , p a rtic u la rly th o s e u s in g a d is trib u te d s o u rc e -c o n tro l
s ys tem (s u c h a s g it). T h is w o rk flo w b e g in s w ith a c o n trib u to r c re a tin g a n e w lo g ic a l
b ra n c h, eith e r b y s ta rtin g a n e w b ra n c h in th e c e n tra l re p o s ito ry, c lo n in g in to a p ers o n a l
rep o s ito ry, o r b o th . T h e c o n trib u to r th en w o rk s o n tha t b ra n c h , typ ic a lly in th e s tyle o f
a F ea tu re B ra n c h , p u llin g an y u p d a tes fro m M a in lin e in to th eir b ra n c h . W h e n th ey a re
d o n e th ey c o m m u n ic a te w ith th e m a in ta in er o f th e c e n tra l re p o s ito ry in d ic a tin g th a t th ey
a re d o n e, to g eth er w ith a re feren c e to th eir c o m m its . T h is re feren c e c o u ld b e th e U R L o f a
b ra n c h th a t n e ed s to b e in te g ra ted , o r a s e t o f p a tc h es in a n e m ail.

O n c e th e m ain ta in er g ets the m e s s a g e , s h e c a n th en ex a m in e th e c o m m its to d e c id e if


th ey a re re a d y to g o in to m a in lin e . If n o t, s h e c a n th en s u g g es t c h a n g es to th e c o n trib u to r,
w h o th en h a s o p p o rtu nity to a d ju s t th e ir s u b m is s io n . O n c e a ll is o k , th e m a in ta in er c a n
th en m e rg e , eith er w ith a reg u la r m e rg e /reb a s e o r a p p lyin g th e p a tc h es fro m th e fin a l
em a il.

G ith u b 's p u ll re q u es t m ec h a n is m m a k e s th is flo w m u c h e a s ie r. It k e ep s tra c k o f th e


c lo n es th ro u g h its fo rk m ec h a nis m , a n d a u to m a tic a lly c re a te s a m es s a g e th re a d to
d is c u s s th e p u ll req u es t, to g e th e r w ith b eh a v io r to h a n d le th e v a rio u s s te p s in th e rev iew
w o rk flo w . T h es e c o nv en ie n c e s w e re a m a jo r p a rt o f w h a t m a d e g ith u b s u c c e s s fu l a n d le d
to "p u ll req u es t" b ec o m in g a fu n d a m en ta l p a rt o f th e d e ve lo p er's le xic o n .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

S o th a t's h o w p u ll re q u e s ts w o rk , b u t s h o u ld w e u s e th e m , a n d if s o h o w ? T o a n s w er th a t
q u e s tio n , I lik e to s te p b a c k f ro m th e m ec h a nis m a n d th in k a b o u t h o w it w o rk s in th e
c o n tex t o f a s o urc e c o d e m a n a g e m en t w o rk flo w . T o h elp m e thin k a b o u t th a t, I w ro te
d o w n a s e ries o f p a tte rns fo r m a n a g in g s o u rc e c o d e b ra n c h in g . I fin d u n d ers ta n d in g
th es e ( s p ec ific a lly th e B a s e a n d In te g ra tio n p a tte rn s ) c larifies th e ro le o f p u ll req u es ts .
In term s o f th e s e p a ttern s , p u ll re q u e s ts a re a m e c h a n is m d es ig n e d to im p lem en t a
c o m b in a tio n o f F ea tu re B ra n c h in g a n d Pre -In teg ra tio n R e vie w s . T h u s to a s s es s th e
u s ef u ln e s s o f p u ll re q u e s ts w e firs t n e ed to c o n s id e r h o w a p p lic a b le th o s e p a tte rn s a re to
o u r s itu a tio n . L ik e m o s t p a ttern s , th ey a re s o m etim e s va lu a b le , a n d s o m etim e s a p a in in
th e n ec k - w e h av e to e xa m in e th e m b a s ed o n o u r s p ec if ic c o nte xt. F ea tu re B ra n c h in g is a
g o o d w a y o f p a c k a g in g to g e th e r a lo g ic a l c o n trib u tio n s o th a t it c a n b e a s s es s ed ,
a c c ep ted , o r d efe rre d a s a s in g le u n it. T h is m a k es a lo t o f s en s e w h e n c o n trib u to rs a re
n o t tru s ted to c o m m it d irec tly to m a in lin e. B u t F e a tu re B ra n c h in g c o m es a t a c o s t, w h ic h
is th a t it u s u a lly lim its th e fre q u en c y o f in te g ra tio n , lea d in g to c o m p lic a ted m e rg es a n d
d e terrin g re fa c to rin g . P re-In te g ra tio n R ev iew s p ro v id e a c le ar p la c e to d o c o d e rev ie w a t
th e c o s t o f a s ig nific a n t in c rea s e in in te g ra tio n fric tio n . [1 ]

T h a t's a d ra s tic s u m m a ry o f th e s itu a tio n ( I n ee d a lo t m o re w o rd s to e xp la in th is fu rth e r


in th e f ea tu re b ra n c h in g a rtic le ), b u t it b o ils d o w n to th e fa c t th a t th e v a lu e o f th es e
p a ttern s , a n d th u s th e v a lu e o f p u ll re q u e s ts , re s t m o s tly o n th e s o c ia l s tru c tu re o f th e
tea m . S o m e tea m s w o rk b ette r w ith p u ll req u es ts , s o m e tea m s w o u ld fin d p u ll re q u e s ts a
s ev ere d rag o n the eff ec tive n es s . I s u s p ec t th a t s in c e p u ll req u es ts a re s o p o p u la r, a lo t o f
tea m s are u s in g th em b y d e fa u lt w h en th ey w o u ld d o b e tte r w ith o u t th em .

W h ile p u ll re q u e s ts a re b u ilt fo r F e a tu re B ra n c h e s , te a m s c a n u s e th e m w ith in


a C o ntin u o u s In teg ra tio n e nv iro n m e n t. T o d o th is th e y n e ed to e n s u re th a t p u ll re q u e s ts
a re s m all en o u g h , a n d th e tea m re s p o n s iv e e n o u g h , to fo llo w th e C I ru le o f th u m b th a t
ev eryb o d y d o e s M a in lin e In te g ra tio n at lea s t d a ily . (A n d I s h o u ld re m in d e ve ryo n e th a t
M a in lin e In teg ratio n is m o re th a n ju s t m e rg in g th e c u rre n t m a in lin e in to th e fea tu re
b ra n c h) . U s in g th e s h ip / s h o w /a s k c la s s ific a tio n c a n b e a n e ffe c tive w a y to in te g ra te p u ll
req u es ts in to a m o re C I-frie n d ly w o rk flo w .
T h e w id e u s a g e o f p u ll req u es ts h a s e n c o u ra g ed a w id er u s e o f c o d e rev ie w , s in c e p u ll
req u es ts p ro v id e a c lea r p o in t fo r P re -In te g ra tio n R ev ie w , to g e th e r w ith to o lin g th a t
en c o u ra g e s it. C o d e re view is a G o o d T h in g , b u t w e m u s t re m e m b er th a t a p u ll re q u es t

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

is n 't th e o n ly m e c h a n is m w e c a n u s e fo r it. M a n y te a m s fin d g re a t v a lue in th e c o n tin u o u s


rev ie w a f fo rd e d b y P a ir P ro g ra m m in g . T o a vo id re d u c in g in te g ra tio n frq u en c y w e c a n
c a rry o u t p o s t-in teg ra tio n c o d e re view in s e ve ra l w a ys . A fo rm a l p ro c e s s c a n re c o rd a
rev ie w f o r e a c h c o m m it, o r a te c h lea d c a n e xa m in e ris k y c o m m its ev ery c o u p le o f d a ys .
P erh a p s th e m o s t p o w e rf ul fo rm o f c o d e re vie w is o n e th a t's freq u en tly ig n o red . A tea m
th a t ta k es th e a ttitu d e th a t th e c o d e b a s e is a flu id s ys te m , o n e th a t c a n b e s tea d ily
refin e d w ith re p e a te d ite ra tio n c a rries o u t R e fin em en t C o d e R e vie w e ve ry tim e a
d e ve lo p er lo o k s a t e xis tin g c o d e. I o ften h ea r p e o p le s a y th a t p u ll req u es ts a re n e c e s s a ry
b e c a u s e w ith o u t th e m yo u c a n 't d o c o d e rev iew s - th a t's ru b b is h . P re -in te g ra tio n c o d e
rev ie w is ju s t o n e w a y to d o c o d e rev ie w s , a n d fo r m a n y tea m s it is n 't th e b e s t c h o ic e .

T h e p u ll re q u e s t m o d el p ro v id e s s e ve ra l b e n efits in D ev O p s :
Improved code quality: P u ll req u es ts en c o u ra g e c o lla b o ra tio n a n d c o d e re vie w , h e lp in g to
c a tc h p o ten tia l b u g s a n d is s u es b e fo re th ey m a k e it in to th e m a in c o d e b a s e .
Increased transparency: P u ll re q u e s ts p ro v id e a c le a r au d it tra il o f a ll c h a n g es m a d e to
th e c o d e , m a k in g it ea s ier to un d ers ta n d h o w c o d e h a s e vo lv ed o ve r tim e .
Better collaboration: P u ll req u e s ts a llo w d ev elo p ers to s h a re th e ir w o rk a n d g et fee d b a c k
fro m o th ers , im p ro vin g c o lla b o ra tio n a n d c o m m u n ic a tio n w ith in th e d ev elo p m en t te a m .
O v era ll, th e p u ll re q u es t m o d el is a n im p o rta n t to o l in th e D ev O p s to o lk it, h elp in g to
im p ro ve th e q u a lity, tra n s p a ren c y, a n d c o lla b o ra tio n o f s o ftw a re d e ve lo p m en t p ro c es s e s .

GitLab
G itLa b is a n o p en -s o u rc e G it rep o s ito ry m a n a g e m e n t p la tfo rm th a t p ro v id e s a w id e ra n g e
o f fe a tu re s f o r s o ftw a re d ev elo p m en t te am s . It is c o m m o n ly u s e d in D ev O p s fo r v ers io n
c o n tro l, is s u e tra c k in g , c o d e rev ie w , a n d c o n tin u o u s in te g ra tio n/ c o n tin u o u s d e p lo ym en t
(C I/C D ) p ip elin es .
G itLa b p ro vid e s a c e ntra liz ed p la tfo rm fo r tea m s to m a n a g e th e ir G it re p o s ito ries , tra c k
c h a n g es to s o u rc e c o d e, a n d c o lla b o ra te o n c o d e d ev elo p m e n t. It o ffe rs a ra n g e o f to o ls
to s u p p o rt c o d e rev ie w a nd c o lla b o ra tio n, in c lu d in g p u ll re q u e s ts , c o d e c o m m e n ts , a n d
m erg e re q u e s t a p p ro va ls .
In a d d itio n , G itLa b p ro vid es a C I/ C D p ip e lin e to o l th a t a llo w s te a m s to a u to m a te th e
p ro c e s s of b u ild in g , tes tin g , and d ep lo yin g c o d e. T h is h elp s to s trea m lin e th e
d e ve lo p m e n t p ro c e s s a n d re d u c e th e ris k o f in tro d u c in g b u g s o r o th e r is s u es in to th e
co de ba se .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

O v era ll, G itLa b is a c o m p re h en s iv e G it re p o s ito ry m a n a g e m en t p la tfo rm th a t p ro v id e s a


w id e ra n g e o f to o ls a n d fe a ture s f o r s o ftw a re d ev elo p m en t te a m s . B y u s in g G itLa b ,
D e vO p s tea m s c a n im p ro v e th e effic ie n c y, tra n s p a re n c y, a nd c o lla b o ra tio n o f th e ir
s o f tw a re d e ve lo p m e n t p ro c e s s es .

What is Git?

G it is a d is trib u ted ve rs io n c o n tro l s ys te m , w h ic h m ea n s th a t a lo c a l c lo n e o f th e


p ro jec t is a c o m p le te ve rs io n c o n tro l re p o s ito ry. T h e s e f u lly fu n c tio n a l lo c a l rep o s ito ries
m a k e it ea s y to w o rk o ffline o r re m o te ly. D ev elo p ers c o m m it th eir w o rk lo c a lly, a n d th en
s yn c th eir c o p y o f th e rep o s ito ry w ith th e c o p y o n th e s erve r. T h is p a ra d ig m d iff ers fro m
c e n tra lize d ve rs io n c o n tro l w he re c lien ts m u s t s yn c h ro n iz e c o d e w ith a s e rv er b efo re
c re a tin g n e w v ers io n s o f c o d e .

G it's fle xib ility a n d p o p u la rity m a k e it a g rea t c h o ic e fo r a n y tea m . M a n y d ev elo p ers a n d


c o lle g e g ra d ua te s a lre a d y k n o w h o w to u s e G it. G it's u s er c o m m u n ity h a s c rea te d
res o u rc es to tra in d ev elo p ers a n d G it's p o p u la rity m a k e it ea s y to g et h elp w h en
n ee d e d . N e a rly ev ery d e ve lo p m en t en v iro n m e nt h a s G it s u p p o rt a n d G it c o m m a n d lin e
to o ls im p lem en ted o n ev ery m a jo r o p e ratin g s ys tem .

Git basics

E v ery tim e w o rk is s a ve d , G it c re a te s a c o m m it. A c o m m it is a s n a p s h o t o f a ll files a t a


p o in t in tim e. If a file h a s n 't c h a n g ed fro m o n e c o m m it to th e n e xt, G it u s es th e p re vio u s ly
s to red file . T h is d e s ig n d if fers fro m o th e r s ys te m s th a t s to re a n in itia l ve rs io n o f a f ile a n d
k ee p a rec o rd o f d elta s o ve r tim e .

C o m m its c rea te lin k s to o th e r c o m m its , fo rm in g a g ra p h o f th e d e ve lo p m e n t h is to ry. It's


p o s s ib le to rev ert c o d e to a p rev io u s c o m m it, in s p e c t h o w file s c h a n g e d fro m o n e c o m m it

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

to th e n ex t, a n d rev iew in fo rm a tio n s u c h a s w h e re a n d w h e n c h a n g e s w ere m a d e .


C o m m its a re id e ntified in G it b y a u n iq u e c ryp to g ra p h ic h a s h o f th e c o n ten ts o f th e
c o m m it. B ec a u s e ev erythin g is h a s h ed , it's im p o s s ib le to m a k e c ha n g es , lo s e in fo rm a tio n ,
o r c o rru p t files w ith o ut G it d ete c tin g it.

Branches

E a c h d e ve lo p er s a v es c h a n g e s to th eir o w n lo c a l c o d e re p o s ito ry. A s a res u lt, th ere c a n


be m a n y d iff eren t c h a n g e s b a s e d o ff th e s a m e c o m m it. G it p ro vid e s to o ls fo r
is o la tin g c h a n g e s a n d la ter m e rg in g th e m b a c k to g e the r. B ra n c he s , w h ic h a re lig h tw eig h t
p o in te rs to w o rk in p ro g res s , m a n ag e th is s e p a ra tio n . O nc e w o rk c rea te d in a b ra n c h is
fin is h ed , it c a n b e m e rg ed b a c k in to th e te a m 's m a in (o r trun k ) b ra n c h .

Files and commits

F ile s in G it a re in o n e o f th ree s ta te s : m o d ifie d , s ta g ed , o r c o m m itted . W h e n a file is firs t


m o d ifie d , th e c h a n g es ex is t o n ly in th e w o rk in g d irec to ry. T h ey a re n 't yet p a rt o f a c o m m it
o r th e d e ve lo p m e n t h is to ry. T h e d e ve lo p e r m u s t th e c h a n g ed f ile s to b e in c lu d ed in
th e c o m m it. T h e s ta g in g a rea c o n ta in s a ll c h a n g e s to in c lu d e in th e n ex t c o m m it. O n c e
th e d e ve lo p e r is h a p p y w ith th e s ta g e d files , th e files a re p a c k a g e d a s a w ith a
m es s a g e d e s c rib in g w h a t c h a n g ed . T h is c o m m it b ec o m es p a rt o f the d e ve lo p m en t
h is to ry.

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

S ta g in g lets d ev elo p e rs p ic k w h ic h file c h a n g e s to s a v e in a c o m m it in o rd er to b rea k


d o w n la rg e c h a n g es into a s erie s o f s m a ller c o m m its . B y red u c in g th e s c o p e o f c o m m its ,
it's e as ie r to rev ie w th e c o m m it h is to ry to fin d s p e c ific f ile c h a n g e s .

Benefits of Git

T h e b en ef its o f G it a re m a n y.

Simultaneous development

E v eryo n e h a s th e ir o w n lo c a l c o p y o f c o d e a n d c a n w o rk s im u lta n eo u s ly o n th e ir o w n
b ra n c he s . G it w o rk s o fflin e s in c e a lm o s t e ve ry o p e ra tio n is lo c a l.

Faster releases

B ra nc h es a llo w fo r fle xib le a n d s im u lta ne o u s d ev elo p m en t. T h e m a in b ra n c h c o n ta in s


s ta b le, h ig h -q u a lity c o d e f ro m w h ic h yo u re lea s e. F e a tu re b ra n c h es c o n ta in w o rk in
p ro g res s , w h ic h a re m erg ed in to th e m a in b ran c h u p o n c o m p le tio n . B y s ep ara tin g th e
relea s e b ra n c h fro m d ev elo p m en t in p ro g res s , it's e a s ie r to m a n a g e s ta b le c o d e a n d s h ip
u p d a te s m o re q u ic k ly.

Built-in integration

D u e to its p o p u la rity, G it in teg ra te s in to m o s t to o ls a n d p ro d u c ts . E v ery m a jo r ID E h a s


b u ilt-in G it s u p p o rt, and m any to o ls s u p p o rt c o n tin u o u s in teg ra tio n , c o n tin u o u s

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

d e p lo ym e n t, a u to m a ted tes tin g , w o rk item tra c k in g , m etric s , a n d re p o rtin g fea tu re


in te g ra tio n w ith G it. T h is in te g ra tio n s im p lifie s th e d a y-to -d a y w o rk flo w .

Strong community support

G it is o p en -s o u rc e a n d h a s b ec o m e th e d e f a c to s ta nd a rd fo r ve rs io n c o n tro l. T h ere is n o
s h o rta g e o f to o ls a n d re s o u rc e s a va ila b le fo r te a m s to lev era g e . Th e v o lu m e o f
c o m m u n ity s u p p o rt fo r G it c o m p a red to o th e r ve rs io n c o n tro l s ys tem s m a k es it e a s y to
g e t h e lp w he n n ee d e d .

Git works with any team

U s in g G it w ith a s o u rc e c o d e m a n a g e m en t to o l in c rea s e s a tea m 's p ro d u c tiv ity b y


en c o u ra g in g c o lla b o ra tio n , en fo rc in g p o lic ie s , a u to m a tin g p ro c es s e s , a n d im p ro v in g
v is ib ility a nd tra c ea b ility o f w o rk . T h e tea m c a n s e ttle o n in d ivid u a l to o ls fo r v ers io n
c o n tro l, w o rk ite m tra c k in g , a n d c o n tin u o u s in teg ratio n a n d d e p lo ym e n t. O r, th ey c a n
c h o o s e a s o lu tio n lik e G itH u b o r A z u re D ev O p s th a t s u p p o rts a ll o f th e s e ta s k s in o n e
p la c e.

Pull requests

U s e p u ll req u es ts to d is c u s s c o d e c h a n g e s w ith th e tea m b ef o re m e rg in g th e m in to th e


m a in b ra n c h . T he d is c u s s io n s in p u ll re q u e s ts are in va lu a b le to e n s u rin g c o d e q u a lity a n d
in c rea s e k n o w le d g e a c ro s s yo u r tea m . P la tfo rm s lik e G itH u b a nd A zu re D e vO p s o ffe r a
ric h p u ll re q u e s t e xp erien c e w h ere d ev elo p ers c a n b ro w s e file c h a n g es , le av e c o m m en ts ,
in s p e c t c o m m its , v iew b u ild s , a n d v o te to a p p ro ve th e c o d e.

Branch policies

T ea m s c a n c o n fig u re G itH u b a n d A zu re D e vO p s to e n fo rc e c o n s is ten t w o rk flo w s a n d


p ro c e s s a c ro s s th e tea m . T h e y c a n s e t u p b ra n c h p o lic ies to en s u re th a t p u ll req u es ts
m ee t req u ire m e n ts b ef o re c o m p letio n . B ra n c h p o lic ie s p ro tec t im p o rta n t b ra n c h e s b y
p re ve n tin g d ire c t p u s h es , re q u irin g rev iew ers , a n d e n s u rin g c lea n b u ild s .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Unit 4
Integrating the system
Build systems
A b u ild s ys te m is a k e y c o m p o n e n t in D e vO p s , a n d it p la ys a n im p o rta n t ro le in th e
s o f tw a re d ev elo p m en t a n d d elive ry p ro c es s . It a u to m a te s th e p ro c e s s o f c o m p ilin g a n d
p a c k a g in g s o u rc e c o d e in to a d e p lo y ab le a rtifa c t, a llo w in g f o r e ffic ien t a n d c o n s is ten t
b u ild s .
H ere a re s o m e o f th e k ey fu n c tio n s p erfo rm ed b y a b u ild s ys te m :
Compilation: T h e b u ild s ys te m c o m p iles th e s o u rc e c o d e in to a m a c h in e -ex ec u ta b le
fo rm a t, s u c h a s a b in a ry o r a n e xe c u ta b le ja r file.
Dependency Management: T h e b u ild s ys te m e n s ure s th a t a ll req u ire d d e p e n d e n c ies a re
a va ila b le a n d p ro p erly inte g ra te d in to th e b u ild a rtifa c t. T h is c a n in c lu d e e xte rn a l lib ra rie s ,
c o m p o n e n ts , a n d o th er re s o u rc e s n ee d e d to ru n th e a p p lic a tio n.
Testing: T h e b u ild s ys tem ru n s a u to m a te d te s ts to en s u re th a t th e c o d e is fu n c tio n in g a s
in te n d e d , a n d to c a tc h a n y is s u e s e a rly in th e d ev elo p m en t p ro c e s s .
Packaging: T h e b u ild s ys tem p a c k a g es th e c o m p iled c o d e a n d its d e p e nd en c ies in to a
s in g le, d ep lo ya b le a rtifa c t, s u c h a s a D o c k er im a g e o r a ta r a rc h iv e.
Version Control: Th e b u ild s ys te m in te g ra te s w ith ve rs io n c o n tro l s ys te m s , s u c h a s G it, to
tra c k c h a n g e s to th e c o d e a n d m a n a g e rele a s es .
Continuous Integration: T h e b u ild s ys tem c a n b e c o n fig ure d to ru n b u ild s a u to m a tic a lly
w h en e ve r c h a n g e s a re m a d e to th e c o d e, a llo w in g f o r fa s t fee d b a c k a n d c o n tin u o u s
in te g ra tio n o f n ew c o d e in to th e m a in b ra n c h .
Deployment: T h e b u ild s ys te m c a n b e in teg ra te d w ith d e p lo ym en t to o ls a n d p ro c es s e s to

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

a u to m a te th e d ep lo ym en t o f th e b u ild a rtifa c t to p ro d u c tio n en v iro n m e n ts .


In D e vO p s , it's im p o rta n t to h a ve a b u ild s ys te m th a t is fa s t, relia b le, a n d s c a la b le, a n d
th a t c a n in te g ra te w ith o th er to o ls a n d p ro c es s e s in th e s o f tw a re d ev elo p m e n t a n d
d e liv ery p ip e lin e . T h e re a re m an y b u ild s ys te m s a v aila b le , e a c h w ith its o w n s et o f
fe a tu res a n d c a p a b ilities , a n d c h o o s in g th e rig h t o n e w ill d e p e nd o n th e s p e c ific n ee d s o f
th e p ro jec t a n d tea m .

Jenkins build server


What is Jenkin?

J en k in s is a n o p e n s o u rc e a u to m a tio n to o l w ritte n in J a va p ro g ra m m in g la n g u a g e th a t
a llo w s c o n tin u o u s in te g ra tio n .

J en k in s builds a n d tests o u r s o ftw a re p ro je c ts w h ic h c o n tin u o u s ly m a k in g it ea s ier fo r


d e ve lo p ers to in te g ra te c h a n g es to th e p ro jec t, a n d m a k in g it ea s ier fo r u s e rs to o b ta in a
fres h b u ild .

It a ls o a llo w s u s to c o n tin u o us ly deliver o u r s o ftw a re b y in teg ra tin g w ith a la rg e n u m b er


o f te s tin g a n d d ep lo ym e n t te c h n o lo g ies .

J en k in s o ff ers a s tra ig h tf o rw a rd w a y to s et u p a c o n tin u o u s in te g ra tio n o r c o n tin u o u s


d e liv ery e n viro n m en t fo r a lm o s t a n y c o m b in a tio n o f la n g u a g es a n d s o u rc e c o d e
rep o s ito rie s u s in g p ip e lin e s , a s w e ll a s a u to m a tin g o th er ro u tin e d ev elo p m en t ta s k s .

W ith th e h e lp o f J en k in s , o rg a n iza tio n s c a n s p ee d u p th e s o ftw a re d e ve lo p m e n t p ro c es s


th ro u g h a u to m a tio n . J en k in s ad d s d ev elo p m e n t life -c yc le p ro c es s e s o f a ll k in d s ,
in c lu d in g b u ild , d o c u m en t, tes t, p a c k a g e , s ta g e, d ep lo y s ta tic a n a lys is a n d m u c h m o re.

J en k in s a c h iev es C I (C o n tin u o u s In te g ra tio n ) w ith the h e lp o f p lu g in s . P lug in s is u s e d to


a llo w th e in te g ra tio n o f va rio u s D e vO p s s ta g e s . If yo u w a n t to in teg ra te a p a rtic u la r to o l,
yo u h a v e to in s ta ll th e p lu g in s fo r th a t to o l. F o r e xa m p le: M a ve n 2 P ro je c t, G it, H T M L
P u b lis h er, A m a zo n E C 2 , etc .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

For example: If a n y o rg a n iza tio n is d e ve lo p in g a p ro jec t, th en Jenkins w ill c o n tin u o u s ly


tes t yo u r p ro je c t b u ild s a n d s h o w yo u th e erro rs in e a rly s tag es o f yo u r d ev elo p m en t.

P o s s ib le s te p s ex ec u te d b y J e n k in s a re fo r e xa m p le:

P erfo rm a s o ftw a re b u ild u s in g a b uild s ys tem lik e G ra d le o r M a v en A p a c h e

E x ec u te a s he ll s c rip t

A rc hiv e a b u ild res u lt

R u n n in g s o ftw a re tes ts

Jenkin workflow

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Jenkins Master-Slave Architecture

A s yo u c a n s e e in th e d ia g ra m p ro vid e d a b o ve , o n th e le ft is th e R em o te s o u rc e c o d e
rep o s ito ry. T h e J en k in s s e rv er a c c e s s es th e m a s te r en v iro n m e n t o n th e left s id e a n d th e
m a s te r en v iro n m e n t c a n p u s h d o w n to m u ltip le o th er J en k in s S la ve e n viro n m en ts to
d is trib u te th e w o rk lo a d .

T h a t le ts yo u ru n m u ltip le b u ild s , te s ts , a n d p ro d u c t e n viro n m en t a c ro s s th e en tire


a rc h itec tu re. J en k in s S la ve s c a n b e ru n n ing d if feren t b u ild v ers io n s o f th e c o d e fo r
d iff eren t o p e ra tin g s ys tem s a n d th e s erv er M a s ter c o n tro ls h o w e a c h o f th e b u ild s
o p era tes .

S u p p o rted o n a m a s ter-s la v e a rc h ite c tu re , J en k in s c o m p ris es m a n y s la ve s w o rk in g fo r a


m a s te r. T his a rc h itec tu re - th e J en k in s D is trib u ted B u ild - c a n ru n id en tic a l te s t c a s es in
d iff eren t en v iro n m e n ts . R e s u lts a re c o llec ted a n d c o m b in ed o n th e m a s ter n o d e fo r
m o n ito rin g .

Jenkins Applications

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

J en k in s h elp s to a u to m a te a n d a c c elera te th e s o ftw a re d e ve lo p m e nt p ro c es s . H ere a re


s o m e o f th e m o s t c o m m o n a p p lic a tio n s o f J e n k in s :

1. Increased Code Coverage

C o d e c o v era g e is d e term in e d b y th e n u m b e r o f lin es o f c o d e a c o m p o n en t h a s a n d h o w


m a n y o f th em g e t ex ec u te d . J en k in s in c rea s e s c o d e c o v era g e w h ic h u ltim a te ly p ro m o tes
a tra n s p a re n t d e ve lo p m e n t p ro c e s s a m o n g th e te a m m em b e rs .

2. No Broken Code

J en k in s e n s u re s th a t th e c o d e is g o o d a n d te s ted w e ll th ro u g h c o n tin u o u s in te g ra tio n .


T h e f in a l c o d e is m e rg ed o n ly w h en a ll th e tes ts a re s u c c es s fu l. T h is m a k es s u re th a t n o
b ro k en c o d e is s h ip p e d in to p ro d u c tio n .

What are the Jenkins Features?

J en k in s o ff ers m a n y a ttra c tive fea tu re s fo r d e ve lo p e rs :

Easy Installation

J e n kin s is a pl a tform -a g n o stic , se lf-c o n ta in e d J a v a -ba se d p ro g ra m , re a dy to ru n w ith p a ck a g e s f or


W i n d ow s, M a c O S , a n d U n ix-like o p e ra ti n g sy ste m s .

Easy Configuration

J e n kin s is e a si ly se t u p a n d c o n fig u re d u sin g its w eb in te rfa c e , fe a tu rin g e rror c h e c ks a n d a b u ilt-in


h e lp fu n c tion .

Available Plugins

T h ere a re h u n d re d s of p lu gin s a v a ila b le in th e U p da te C e n te r, in te g ra tin g w ith e v e ry to o l in th e C I


a n d C D to o lc h a in .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Extensible

J e n kin s c a n b e ex te n d e d b y m ea n s of its p lu g in a rc h ite c tu re , p ro v id in g n ea rly e n dle s s p o ss ib ilitie s


fo r w h a t it c a n d o .

Easy Distribution

J e n kin s c a n e a s ily d istribu te w o rk a c ro s s m u ltiple m a c h in e s fo r fa ste r bu ild s, te sts , a n d


d e plo y m e n ts a c ro s s m u ltip le p la tfo rm s.

Free Open Source

J e n kin s is a n o p e n -so u rc e re s o u rc e ba c ke d b y h e a v y c om m u n ity su p p o rt.

A s a p a rt o f o u r lea rn in g a b o u t w h a t is J en k in s , le t us ne xt lea rn a b o u t th e J en k in s
a rc h itec tu re.

Jenkins build server

J e n kin s is a po p u la r o pe n -s ou rc e a u to m a tio n se rv e r th a t h e lp s d e v e lo pe rs a u tom a te p a rts of th e


s oftw a re d e v e lop m e n t p ro c es s. A J e n k in s b u ild s e rv e r is re sp o n s ible fo r b u ildin g , te s tin g , a n d
d e plo y in g s oftw a re p ro je cts .
A J e n k in s b u ild se rv e r is typ ic a ll y se t u p o n a d e d ica ted m a c h in e o r a v irtu a l m a c h in e, a n d is u se d to
m a n a g e th e c o n tin u ou s in te g ra tio n a n d c o n tin u o u s d e liv e ry ( C I/ C D ) p ip el in e fo r a s o ftw a re p roje c t.
T h e b u ild s e rv e r is c o n fig u re d w ith a ll th e n e c e ss a ry to o ls, d e p e n d e n c ie s, a n d pl u g in s to b u ild , tes t, a n d
d e plo y th e p ro je c t.
T h e bu ild pro c e ss in J e n kin s ty p ic a lly sta rts w ith c o d e be in g c om m itte d to a v e rs io n c o n trol sy ste m
(s u c h a s G it), w h ic h trigg e rs a bu ild o n th e J e n k in s s e rv e r. T h e J e n kin s s erv e r th e n c h e c k s o u t th e
c o de , bu ild s i t, ru n s tes ts on it, a n d if e v e ry th in g is su c c e s sfu l, d e plo y s th e c o d e to a sta g in g or
p ro d u c tio n e n v iro n m e n t.
J e n kin s h a s a la rg e c o m m u n ity of d e v e lop e rs w h o h a v e c re a te d h u n d red s o f p lu g in s th a t e xte n d its
fu n c ti on a lity, s o it's e a s y to fin d p lu g in s to s u p po rt sp e c ific to o ls, te c h n o lo g ie s, a n d w o rk flo w s . F or
e xa m p le , th e re a re p lu g in s fo r in te g ra tin g w ith c lo u d in f ra stru c tu re , ru n n in g s ec u rity sc a n s, d e plo y in g
to v a riou s p la tfo rm s, a n d m o re .
O v e ra ll, a J e n kin s b u ild se rv e r c a n g re a tly im p ro v e th e e ff ici en c y a n d re lia bility o f th e s o ftw a re
d e v e lop m e n t p ro c es s by a u tom a tin g re p e titiv e ta sk s, re d u c in g th e risk o f m a n u a l e rro rs, a n d e n a b lin g
d e v e lop e rs to fo c u s on w ritin g c o de .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Managing build dependencies


M a n a g in g b u ild d e p en d en c ies is a n im p o rta n t a s p ec t o f c o n tin u o u s in teg ra tio n a n d
c o n tin u o u s d e liv ery ( C I/ C D ) p ip elin es . In s o f tw a re d ev elo p m en t, d ep en d en c ie s refe r to
ex tern a l lib ra rie s , to o ls , o r re s o u rc e s th a t a p ro jec t relies o n to b u ild , tes t, a n d d ep lo y.
P ro p e r m an a g em en t o f d ep en d e n c ie s c a n en s u re th a t b u ild s a re rep ea ta b le a n d th a t th e
b u ild e n viro n m en t is c o n s is te n t a n d u p -to -d a te .
H ere a re s o m e c o m m o n p ra c tic e s f o r m a n a g in g b u ild d ep en d en c ie s in J e n k in s :
Dependency Management Tools: U tiliz e to o ls s u c h a s M a v en , G ra d le, o r n p m to m a n a g e
d e p e n d e n c ies a n d a u to m a te th e p ro c es s o f d o w n lo a d in g and ins ta llin g req u ire d
d e p e n d e n c ies fo r a b u ild .
Version Pinning : S p e c ify e xa c t v ers io n s o f d ep en d e n c ie s to e n s ure b u ild s a re c o n s is ten t
a n d rep ea ta b le.
Caching : C a c h e d ep en d en c ie s lo c a lly o n th e b u ild s e rv er to im p ro ve b u ild p e rfo rm a n c e
a n d red u c e th e tim e it ta k e s to d o w n lo a d d ep en d en c ie s .
Continuous Monitoring: R e g u la rly c h ec k fo r u p d a te s a n d s ec u rity vu ln era b ilities in
d e p e n d e n c ies to e ns u re th e b u ild e n viro n m en t is s e c u re a n d u p -to -d a te .
Automated Testing: A u to m ate d te s tin g c a n c a tc h is s u es re la te d to d e p e n d e n c ies ea rly in
th e d e ve lo p m e n t p ro c es s .
B y fo llo w in g th es e p ra c tic es , yo u c a n e ffec tiv ely m a n ag e b u ild d ep en d en c ie s a n d
m a in ta in th e relia b ility a n d c o n s is ten c y o f yo u r C I/ C D p ip elin e.
Jenkins plugins
J en k in s p lu g in s a re p a c k a g es o f s o ftw a re tha t e xten d th e fu n c tio n a lity o f th e J en k in s
a u to m a tio n s e rv er. P lu g in s a llo w yo u to in teg ra te J en k in s w ith va rio u s to o ls , tec h n o lo g ies ,
a n d w o rk flo w s , a n d c a n b e e a s ily in s ta lled a n d c o n fig u red th ro u g h th e J e n k in s w e b
in te rfa c e .
S o m e p o p u la r J en k in s p lu g in s in c lu d e:
Git Plugin: T h is p lu g in in teg rate s J e n k in s w ith G it v ers io n c o n tro l s ys te m , a llo w in g yo u to
p u ll c o d e c h a n g e s , b u ild a n d tes t th e m , a n d d ep lo y th e c o d e to p ro d u c tio n .
Maven Plugin: T h is p lug in in teg ra te s J e n k in s w ith A p a c h e M a v en , a b u ild a u to m a tio n to o l
c o m m o n ly u s e d in J a v a p ro je c ts .
Amazon Web Services (AWS) Plugin: T h is p lu g in a llo w s yo u to in te g ra te J e n k in s w ith
A m a zo n W e b S ervic e s (A W S ), m a k in g it ea s ier to ru n b u ild s , te s ts , a n d d e p lo y m e n ts o n
A W S in fra s tru c tu re.

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Slack Plugin: T h is p lu g in in te g ra te s J e n k in s w ith S la c k , a llo w in g yo u to rec eiv e


n o tific a tio n s a b o u t b u ild s ta tu s , fa ilu re s , a n d o th er im p o rta n t ev en ts in yo u r S la c k
c h a n n e ls .
Blue Ocean Plugin: T h is p lu g in p ro v id es a n ew a n d m o d ern u s e r in terfa c e fo r J en k in s ,
m a k in g it ea s ier to u s e a n d n a vig a te .
Pipeline Plugin: T h is p lu g in p ro v id e s a s im p le w a y to d efin e a n d m a n a g e c o m p le x C I/C D
p ip elin es in J e n k in s .
J en k in s p lug in s a re e a s y to in s ta ll a n d c a n b e m a n a g e d th ro u g h th e J en k in s w e b
in te rfa c e . T h e re a re h u n d red s o f p lu g in s a va ila b le, c o v erin g a w id e ra n g e o f to o ls ,
tec h n o lo g ie s , a n d u s e c a s es , s o y o u c a n ea s ily find th e p lu g in s th a t b e s t m ee t yo u r n ee d s .
B y u s in g p lu g in s , yo u c a n g re a tly im p ro ve th e e ffic ien c y a nd a u to m a tio n o f yo ur s o ftw a re
d e ve lo p m e n t p ro c es s , a n d m a k e it e a s ie r to in teg ra te J e n k in s w ith th e to o ls a n d
w o rk flo w s yo u u s e.

Git Plugin
T h e G it P lug in is a p o p u lar p lu g in fo r J en k in s th a t in te g ra tes th e J en k in s au to m a tio n
s erv er w ith th e G it v ers io n c o n tro l s ys te m . T h is p lu g in a llo w s yo u to p u ll c o d e c h a n g es
fro m a G it rep o s ito ry, b u ild a n d tes t th e c o d e, a n d d ep lo y it to p ro d u c tio n .
W ith th e G it P lu g in , y o u c a n c o n fig u re J en k in s to a u to m a tic a lly b u ild a n d te s t yo u r c o d e
w h en e ve r c h a n g e s a re p u s h ed to th e G it re p o s ito ry. Y o u c a n a ls o c o n f ig u re it to b uild a n d
tes t c o d e o n a s c h ed u le , s u c h a s o n c e a d a y o r o n c e a w e ek .
T h e G it P lu g in p ro vid e s a n u m b e r o f fea tu res fo r m an a g in g c o d e c h a n g e s , in c lu d in g :
Branch and Tag builds: Y o u c a n c o n fig u re J e n k in s to b u ild s p ec ific b ra n c h e s o r ta g s fro m
yo u r G it re p o s ito ry.
Pull Requests: Y o u c a n c o nf ig u re J en k in s to b u ild a n d tes t p u ll req u e s ts f ro m yo u r G it
rep o s ito ry, a llo w in g yo u to va lid a te c o d e c h a n g e s b efo re m erg in g th em in to th e m a in
b ra n c h.
Build Triggers: Y o u c a n c o n fig u re J en k in s to b u ild a n d te s t c o d e c h a n g e s w h e n ev er
c h a n g es a re p u s h e d to the G it rep o s ito ry o r o n a s c h ed u le .
Code Quality Metrics: T h e G it P lu g in in te g ra tes w ith to o ls s u c h as S o n a rQ u b e to p ro vid e
c o d e q u a lity m etric s , a llo w in g yo u to tra c k a n d im p ro v e the q u a lity o f yo u r c o d e o v er tim e.
Notification and Reporting: T h e G it P lug in p ro vid e s n o tific a tio n s a n d rep o rts o n b u ild
s ta tu s , fa ilu re s , a n d o th er im p o rta n t ev en ts . Y o u c a n c o n fig u re J en k in s to s e n d
n o tific a tio n s via em a il, S la c k , o r o th er c o m m u n ic a tio n c h a n n els .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

B y u s in g th e G it P lu g in , yo u c a n s trea m lin e yo u r s o ftw a re d ev elo p m e n t p ro c e s s a n d m a k e


it e a s ie r to m a n a g e c o d e c h a n g es a n d c o lla b o ra te w ith o th er d e ve lo p e rs o n yo u r te a m .
file system layout
In D ev O p s , th e f ile s ys tem la yo u t refe rs to th e o rg a n iza tio n a n d s tru c tu re o f files a n d
d irec to rie s o n th e s ys te m s a n d s e rve rs u s ed fo r s o ftw a re d e ve lo p m en t a n d d e p lo ym e nt. A
w ell-d e s ig n e d file s ys te m la yo u t is c ritic a l fo r eff ic ien t a n d re lia b le o p era tio ns in a D ev O p s
en v iro n m e n t.
H ere a re s o m e c o m m o n elem e n ts o f a file s ys tem la yo u t in D e vO p s :
Code Repository: A c en tra l c o d e re p o s ito ry, s u c h a s G it, is us e d to s to re a n d m a n a g e
s o u rc e c o d e , c o n fig u ra tio n files , a n d o th er artifa c ts .
Build Artifacts: B u ild a rtifa c ts , s u c h a s c o m p ile d c o d e , a re s to red in a d es ig n a te d
d irec to ry f o r e a s y a c c es s a n d m a n a g em e n t.
Dependencies: D irec to rie s fo r s to rin g d e p e n d e n c ies , s u c h a s lib ra rie s a n d to o ls , a re
d e s ig n a ted f o r e a s y m a n a g em en t a n d ve rs io n c o n tro l.
Configuration Files: C o n fig u ra tio n files , s u c h a s Y A M L o r J S O N files , a re s to re d in a
d e s ig n a ted d ire c to ry fo r ea s y a c c e s s a n d m a n a g e m e n t.
Log Files: L o g file s g e n era ted b y a p p lic a tio n s , b u ild s , a n d d e p lo ym en ts a re s to re d in a
d e s ig n a ted d ire c to ry fo r ea s y a c c e s s a n d m a n a g e m e n t.
Backup and Recovery: D ire c to ries fo r s to rin g b a c k u p s a n d rec o v ery d a ta a re d es ig n a te d
fo r e as y m a n a g e m e n t a n d to e n s u re b u s in es s c o n tin u ity.
Environment-specific Directories: D irec to rie s a re d es ig n a te d fo r ea c h en v iro n m e nt, s u c h
a s d e ve lo p m en t, tes t, a n d p ro d u c tio n , to en s u re th a t th e c o rrec t c o n fig u ra tio n file s a n d
a rtifa c ts a re u s ed fo r ea c h e n viro n m en t.
B y fo llo w in g a w e ll-d e s ig n ed f ile s ys te m la yo u t in a D e vO p s en v iro n m e nt, yo u c a n im p ro ve
th e e ffic ien c y, relia b ility, a n d s ec u rity o f yo u r s o ftw a re d ev elo p m e n t a n d d e p lo ym en t
p ro c e s s es .
The host server
In J en k in s , a h o s t s erve r refe rs to th e p h ys ic a l o r virtu a l m a c h in e th a t ru n s th e J en k in s
a u to m a tio n s erve r. T h e h o s t s e rv er is re s p o n s ib le fo r ru nn in g th e J e n k ins p ro c es s a n d
p ro vid in g res o u rc es , s u c h a s m em o ry, s to ra g e , a n d C P U , fo r e xe c u tin g b u ild s a n d o th er
ta s k s .
T h e h o s t s e rve r c a n b e e ith er a s ta n d a lo n e m a c h in e o r p a rt o f a n e tw o rk o r c lo u d -b a s e d
in fra s tru c tu re. W h en ru n n in g J en k in s o n a s ta n d a lo n e m a c h in e, th e h o s t s e rv er is

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

res p o n s ib le fo r a ll a s p e c ts o f th e J en k in s in s talla tio n , in c lu d ing s e tu p , c o n fig u ra tio n , a n d


m a in ten a n c e.
W h e n ru n n in g J e n k in s o n a n etw o rk o r c lo u d -b a s ed in fra s tru c tu re, th e h o s t s erv er is
res p o n s ib le fo r p ro vid in g re s o u rc e s fo r th e J en k in s p ro c e s s , b u t th e s etu p , c o n fig u ra tio n ,
a n d m a in te n a nc e m a y b e m a n a g e d b y o th e r c o m p o n en ts o f th e in f ra s tru c tu re .
B y p ro v id in g th e ne c e s s a ry re s o u rc e s a n d e n s u rin g th e s ta b ility a n d relia b ility o f th e h o s t
s erv er, yo u c a n e n s u re th e e ffic ie n t o p e ra tio n o f J e n k in s a n d th e s u c c es s o f yo u r s o ftw a re
d e ve lo p m e n t a n d d ep lo ym e n t p ro c e s s es .
T o h o s t a s erve r in J en k in s , yo u 'll ne ed to fo llo w th e s e s tep s :
Install Jenkins: Y o u c a n in s ta ll J e n k in s o n a s erv er b y d o w n lo a d in g th e J e n k in s W A R file ,
d e p lo yin g it to a s e rv let c o n ta in er s u c h a s A p ac h e T o m c a t, a n d s ta rtin g th e s e rv er.
Configure Jenkins: O n c e J e n k in s is u p a n d ru n n in g , yo u c a n a c c e s s its w e b in te rfa c e to
c o n fig u re a n d m a n a g e th e b u ild en v iro n m e n t. Y o u c a n in s ta ll p lu g in s , s e t u p s ec u rity, a n d
c o n fig u re b u ild jo b s .
Create a Build Job: T o b u ild yo u r p ro jec t, yo u 'll n ee d to c re a te a b u ild jo b in J e n k in s . T h is
w ill d efin e th e s te p s in v o lve d in b u ild in g yo u r p ro jec t, s u c h a s c h ec k in g o u t th e c o d e fro m
v ers io n c o ntro l, c o m p ilin g th e c o d e, ru n n in g tes ts , a n d p a c k a g in g th e a p p lic a tio n .
Schedule Builds: Y o u c a n c o n fig u re yo u r b u ild jo b to ru n au to m a tic a lly at a s p e c ific tim e
o r w h e n c erta in c o n d itio n s a re m et. Y o u c a n a ls o trig g er b u ild s m a n u a lly fro m th e w e b
in te rfa c e .
Monitor Builds: J e n k in s p ro vid e s a va riety o f to o ls fo r m o n ito rin g b u ild s , s u c h a s b u ild
h is to ry, b u ild c o n s o le o u tp u t, a n d b u ild a rtifa c ts . Y o u c a n u s e th e s e to o ls to k e ep tra c k o f
th e s ta tu s o f yo u r b u ild s a n d to d ia g n o s e p ro b le m s w h en th ey o c c u r.

Build slaves
Jenkins Master-Slave Architecture

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

A s yo u c a n s e e in th e d ia g ra m p ro vid e d a b o ve , o n th e le ft is th e R em o te s o u rc e c o d e
rep o s ito ry. T h e J en k in s s e rv er a c c e s s es th e m a s te r en v iro n m e n t o n th e left s id e a n d th e
m a s te r en v iro n m e n t c a n p u s h d o w n to m u ltip le o th er J en k in s S la ve e n viro n m en ts to
d is trib u te th e w o rk lo a d .

T h a t le ts yo u ru n m u ltip le b u ild s , te s ts , a n d p ro d u c t e n viro n m en t a c ro s s th e en tire


a rc h itec tu re. J en k in s S la ve s c a n b e ru n n ing d if feren t b u ild v ers io n s o f th e c o d e fo r
d iff eren t o p e ra tin g s ys tem s a n d th e s erv er M a s ter c o n tro ls h o w e a c h o f th e b u ild s
o p era tes .

S u p p o rted o n a m a s ter-s la v e a rc h ite c tu re , J en k in s c o m p ris es m a n y s la ve s w o rk in g fo r a


m a s te r. T his a rc h itec tu re - th e J en k in s D is trib u ted B u ild - c a n ru n id en tic a l te s t c a s es in
d iff eren t en v iro n m e n ts . R e s u lts a re c o llec ted a n d c o m b in ed o n th e m a s ter n o d e fo r
m o n ito rin g .

T h e s ta n d a rd J e n k in s in s talla tio n in c lu d es J e n k in s m a s ter, a n d in th is s etu p , th e m a s ter


w ill b e m a n a g in g a ll o u r b u ild s ys te m 's ta s k s . If w e're w o rk in g o n a n u m b e r o f p ro jec ts , w e

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

c a n ru n n u m e ro u s jo b s o n ea c h o n e . S o m e p ro je c ts req u ire th e u s e o f s p ec ific n o d e s ,


w h ic h n ec es s itate s th e u s e o f s la ve n o d e s .

The Jenkins master is in charge of scheduling jobs, assigning slave nodes, and sending
builds to slave nodes for execution . It w ill a ls o k ee p tra c k o f th e s la ve n o d e s ta te (o fflin e
o r o n lin e), re triev e b u ild res u lts f ro m s la ve n o d e s , a n d d is p lay th em o n th e term in a l o u tp u t.
In m o s t in s ta lla tio n s , m u ltip le s la ve n o d es w ill b e a s s ig n e d to th e tas k o f b u ild in g jo b s .

B ef o re w e g et s ta rte d , let's double-check that we have all of the prerequisites in place


for adding a slave node :

Jenkins Server is u p a n d ru n n in g a n d rea d y to u s e


A n o th e r s e rv er fo r a s la v e n o d e c o n fig u ra tio n
T h e J e n k in s s erv er a n d th e s la v e s e rv er a re b o th c o n n ec te d to th e s a m e n etw o rk

T o c o n fig u re th e M a s ter s erve r, w e 'll lo g in to th e J en k in s s e rve r a n d fo llo w th e s te p s


b e lo w .

F irs t, w e'll g o to “ Manage Jenkins -> Manage Nodes -> New Node” to create a new
node :

O n th e n e xt s c re en , w e enter the “ Node Name” (slaveNode1), select “ Permanent


Agent” , then click “ OK” :

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

A fte r c lic king “ O K ” , we'll be taken to a screen with a new form where we
need to fill out the slave node's information. W e 're c o n sid e rin g the s la v e n o d e
to b e ru nn ing o n L in ux o p e ra ting s ys te m s, he n c e the la u nc h m e tho d is s e t to
“ L a un c h a g e nts v ia s sh ” .

In th e sa m e w a y, w e 'll a d d re le v a nt d e ta ils , s u c h a s the n a m e , d e sc rip tio n, a nd a


n um b e r o f e x e c uto rs.

We'll save our work by pressing the “ Save” button. T he “ L a b e ls ” w ith th e


n a m e “ sla v e N o d e 1 ” w ill h e lp us to se t u p jo b s o n th is sla v e no d e :

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

4. Building the Project on Slave Nodes

N o w th a t o u r m a s te r a nd s la ve n o d es a re rea d y, w e'll d is c u s s th e s tep s fo r b u ild in g th e


p ro jec t o n th e s la v e n o d e.

F o r this , w e s ta rt b y c lic k in g “ N ew Ite m ” in th e to p left c o rn e r o f th e d a s h b o a rd .

N ex t, w e n e ed to en ter th e n a m e o f o u r p ro jec t in th e “ E n te r a n item n a m e” field a n d


s ele c t th e “ Pip elin e p ro jec t” , a n d th e n c lic k th e “ O K ” b u tto n .

O n th e n ex t s c re en , w e 'll en ter a “ D es c rip tio n ” ( o p tio n a l) a n d n a vig a te to th e “ P ip e lin e ”


s ec tio n . M a k e s u re th e “ D efin itio n” fie ld h a s th e P ip e lin e s c rip t o p tio n s elec ted .

A f te r th is , w e c o p y a n d p a s te th e fo llo w in g d e c la rative P ip elin e s c rip t in to a “ s c rip t”


field :

n o d e('s la v eN o d e1 ') {
s ta g e ('B u ild ') {
s h '''e c h o b u ild s te p s '''
}
s ta g e ('T es t') {
s h '''e c h o te s t s tep s '''
}

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

}
Co py
N ex t, w e c lic k o n th e “ S a ve ” b u tto n . T h is w ill red irec t to th e P ip e lin e v iew p a g e .

O n th e left p a n e , w e c lic k th e “ B u ild N o w ” b u tto n to ex ec u te o u r P ip e lin e . A fte r P ip elin e


ex ec u tio n is c o m p leted , w e'll s e e th e P ip elin e v ie w :

We can verify the history of the executed build under the Build History by
clicking the build number. A s sh o w n a b o v e , w h e n w e c lic k o n th e b u ild nu m b e r
a nd se le c t “ C o n so le O utp ut” , w e can see tha t the p ip e lin e ra n on
our m a c h in e .

Software on the host

T o ru n s o ftw are o n th e h o s t in J en k in s , yo u n e ed to h a v e the n ec es s a ry d ep en d en c ie s a n d


to o ls in s ta lle d o n th e h o s t m a c h in e. T h e e xa c t s o ftw a re yo u 'll ne ed w ill d ep e n d o n th e
s p e c ific req u ire m e n ts o f yo u r p ro jec t a n d b u ild p ro c e s s . S o m e c o m m o n to o ls a n d
s o f tw a re u s ed in J en k in s in c lu d e :
Java: J e n k in s is w ritte n in J a va a n d req u ire s J av a to b e in s ta lle d o n th e h o s t m a c h ine .
Git: If yo u r p ro jec t u s es G it as th e v ers io n c o ntro l s ys te m , yo u 'll n e ed to h a v e G it in s ta lle d
o n th e h o s t m ac h in e.

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Build Tools: D ep e n d in g o n th e p ro g ra m m in g la n g u a g e a n d b u ild p ro c e s s o f yo u r p ro je c t,


yo u m a y n ee d to in s ta ll b u ild to o ls s u c h a s M a ve n , G ra d le , o r A n t.
Testing Tools: T o ru n te s ts a s p a rt o f yo u r b u ild p ro c e s s , yo u 'll n ee d to in s ta ll a n y
n ec es s a ry tes tin g to o ls , s u c h a s J U n it, T es tN G , o r S elen iu m .
Database Systems: If yo ur p ro je c t re q u ires a c c e s s to a d a ta b a s e, yo u 'll n e ed to ha v e th e
n ec es s a ry d a ta b a s e s o ftw a re ins ta lled o n th e h o s t m a c h in e, s u c h a s M yS Q L , P o s tg re S Q L ,
o r O ra c le .
Continuous Integration Plugins: T o e xten d th e fu n c tio n a lity o f J e nk in s , yo u m a y n ee d to
in s ta ll p lu g in s th a t p ro v id e a d d itio n al to o ls an d fe a tu re s fo r c o n tin u o u s in te g ra tio n , s u c h
a s th e J en k in s G itH u b p lu g in , J en k in s P ip elin e p lu g in , o r J en k in s S la c k p lu g in .
T o in s ta ll th es e to o ls an d s o ftw a re o n th e h o s t m a c h in e , yo u c a n u s e a p a c k a g e m an a g er
s u c h a s a p t o r yu m , o r yo u c a n d o w nlo a d a n d in s ta ll th e n e c e s s a ry s o ftw a re m a n u a lly.
Y o u c a n a ls o u s e a c o n ta in eriza tio n to o l s u c h a s D o c k e r to run J e n k in s a n d th e n e c es s a ry
s o f tw a re in is o la te d c o nta in ers , w h ic h c an s im p lify th e in s ta lla tio n p ro c e s s a n d m a k e it
ea s ie r to m a n a g e th e d ep e n d e n c ies a n d to o ls n e ed ed f o r yo u r b u ild p ro c es s .

Trigger
T h es e a re th e m o st c o m m o n J e n kin s b u ild trig g e rs:

T rig ge r b u ild s re m o te ly
B u ild a fte r o th e r pro je c ts a re bu ilt
B u ild p e riod ic a lly
G itH u b h o o k trig ge r fo r G IT S c m p ollin g
P o ll S C M

1. Trigger builds remotely :

If yo u w a n t to trig g er yo u r p ro je c t b u ilt fro m a n yw h ere a n ytim e th en yo u s h o u ld


s ele c t Trigger builds remotely o p tio n fro m th e b uild trig g e rs .

You’ ll n ee d to p ro v id e a n a u th o riz a tio n to k e n in th e fo rm o f a s trin g s o th a t o n ly th o s e


w h o k n o w it w o uld b e a b le to re m o tely trig g er th is p ro jec t’ s b u ild s . T h is p ro vid es th e
p re d e fin e d U R L to in vo k e th is trig g e r rem o tely.

p re d e fin e d U R L t o trig g e r b u ild re m ot e ly :

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

J E N K IN S _U R L /jo b /J o b N a m e / bu ild ?t o ke n= T O K E N _N A M E

J E N K IN S _U R L : th e IP a n d P O R T w h ich t h e J e nk in s se rv e r is ru nn in g

T O K E N _N A M E : Y o u h a v e p ro v ide d w h ile se le c ting t h is b u ild t rig ge r.

//E x a m ple :

h t tp ://e 3 3 0 c 73 d .n gro k.io /jo b /te s t/b u ild ? to k e n= 1 2 3 4 5

W h e n ev er yo u w ill h it th is U R L fro m a n yw h e re yo u p ro jec t b u ild w ill s ta rt.

2. Build after other projects are built

If yo u r p ro jec t d ep en d s o n a n o th e r p ro jec t b u ild th e n yo u s h o u ld s elec t Build after other


projects are built o p tio n fro m th e b u ild trig g e rs .

In th is , yo u m u s t s p e c ify th e p ro jec t(J o b ) n a m es in th e Projects to watch field s e c tio n a n d


s ele c t o n e o f th e fo llo w in g o p tio ns :

1. Trigger only if the build is


N o te : A build is s ta b le if it w a s built s u c c e ss fu lly a n d n o pu b lish e r re p orts it a s unstable

2. Trigger even if the build is


N o te : A build is unstable i f it w a s built s u c c e ss fu lly a n d o n e or m o re pu bli sh e rs re p o rt it unstable

3. Trigger even if the build fails

A f te r th a t, It s ta rts w a tc h ing th e s p ec ified p ro je c ts in th e Projects to watch s e c tio n .

W h e n ev er th e b u ild o f th e s p e c ified p ro jec t c o m p lete s (eith er is s ta b le , u n s ta b le o r f a ile d


a c c o rd in g to yo u r s e le c te d o p tio n ) th en th is p ro je c t b u ild in v o k e s .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

3)Build periodically:

If y o u w a n t to s c h e d u le yo u r p ro je c t b uild p erio d ic a lly th e n yo u s h o u ld s ele c t th e Build


periodically o p tio n fro m th e b u ild trig g ers .

Y o u m u s t s p e c ify th e p e rio d ic a l d u ra tio n o f th e p ro je c t b u ild in th e s c h ed ule r fie ld s ec tio n

T h is fie ld fo llo w s th e s yn ta x o f c ro n (w ith m in o r d iffe re n c e s ). S p e c ific a lly, e a c h lin e


c o n s is ts o f 5 field s s ep a ra te d b y T A B o r w h ite s p a c e :

M INU T E HOU R DOM M ONT H D OW

M IN U T E M in u tes w ith in th e h o u r (0 – 5 9 )

HO UR T h e h o u r of th e da y ( 0– 2 3 )

DOM T h e d a y o f th e m o n th (1– 3 1 )

M ON TH T h e m on th (1 – 12 )

DOW T h e d a y o f th e w e e k (0 – 7 ) w h e re 0 a n d 7 a re S u n d a y

T o s p e c ify m u ltip le v a lu e s f o r o n e field , th e fo llo w in g o p era to rs a re a v a ila b le . In th e o rd er


o f p re c e d e n c e ,

* sp e c ifie s a ll v a lid v a lu e s
M -N sp e c ifie s a ra n g e o f v a lu e s
M -N /X o r * /X s te p s b y in te rv a ls of X th ro u gh th e sp e c ifie d ra n g e o r w h o le v a l id ra n g e
A ,B ,...,Z e n u m e ra te s m u ltip le v a lu e s

E x a m p les :

# every fifteen m inutes (p erha ps at :0 7, :22, :37 , :5 2)


H/15 * * * *
# every ten m inutes in the firs t half of every hour (three tim es, perhap s at :04 , :14 , :2 4)
H(0 -29)/1 0 * * * *

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

# o nc e every tw o hours at 45 m inu tes pa st the hour s tarting at 9 :4 5 AM and finis hing at 3:45 PM ev ery w eek day.
45 9 -16 /2 * * 1 -5
# o nc e in every tw o ho urs s lot betw een 9 A M and 5 P M every w eek day (perhaps at 1 0:38 A M, 1 2:38 PM , 2 :3 8 P M , 4:38 PM )
H H(9 -1 6)/2 * * 1 -5
# o nc e a d ay on the 1s t and 15th of ev ery m o nth exc ept D ecem ber
H H 1 ,1 5 1-11 *

A f te r s u c c e s s fu lly s c h ed u led th e p ro jec t b u ild th e n th e s c h e d u ler w ill in v o k e th e b u ild


p e rio d ic a lly a c c o rd in g to yo ur s p e c ified d u ra tio n .

4)GitHub webhook trigger for GITScm polling:

A w eb h o o k is a n H T T P c a llb a c k , a n H T T P PO S T th a t o c c u rs w h e n s o m eth ing h a p p en s


th ro u g h a s im p le e ve n t-n o tific a tio n via H T T P P O S T .

G itH u b w eb ho o k s in J en k in s a re u s ed to trig g er th e b u ild w he n ev er a d e ve lo p e r c o m m its


s o m e th in g to th e b ra n c h .

Le t’ s s e e h o w to a d d b u ild a w e b h o o k in G itH u b a n d th en a d d th is w e b h o o k in J e n k in s .

G o to yo u r p roje c t re p o sito ry .
G o to “ se tti n g s” in th e rig h t c o rn e r.
C li ck o n “ w e bh oo k s.”
C li ck “ A d d w eb h oo k s.”
W rite th e P a y lo a d U R L a s

h t tp ://e 3 3 0 c 73 d .n gro k.io /g it h u b -w e b h o o k

//T h is U R L is a p u b lic U RL w h e re th e J e nk in s se rv er is ru nn ing

H ere h ttp s :// e3 3 0 c 7 3 d .n g ro k . io / is th e IP a n d p o rt w h e re m y J en k in s is ru n n in g .

If yo u a re ru n n in g J e n k in s on lo c alh o s t th en
w ritin g h t tp s://lo c a lh o st :8 0 8 0 /g it h u b-w e b h o ok / w ill n o t w o rk b e c a u s e W eb h o o k s c a n o n ly
w o rk w ith th e p u b lic IP .

S o if yo u w a n t to m a k e yo u r lo c a lh o s t:8 0 8 0 e xp o s e p u b lic th en w e c an u s e s o m e to o ls .

In th is e xa m p le, w e u s e d n g ro k to o l to e xp o s e m y lo c a l a d d res s to th e p u b lic .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

To know m o re on how to add w eb h o o k in J en k in s p ip e lin e ,


v is it: h ttp s :// b lo g .k n o ld u s .c o m /o p s in it-ad d in g -a -g ith u b -w e b h o o k -in -je n k in s -p ip e lin e /

5)Poll SCM:

p e rio d ic a lly p o lls th e S C M to c h ec k w h e th er c h a n g e s w e re m a d e (i.e . n ew


c o m m its ) a nd b u ild s th e p ro jec t if n ew c o m m its w ere p u s he d s in c e th e la s t b u ild .

Y o u m u s t s c h e d u le th e p o llin g d ura tio n in th e s c h ed u le r field . Lik e w e e xp la in e d a b o ve in


th e B u ild p e rio d ic a lly s ec tio n . Y o u c a n s e e th e B u ild p e rio d ic a lly s e c tio n to k n o w h o w to
s c h e d u le .

A f te r s u c c es s f u lly s c h e d u led , the s c h e d u ler p o lls th e S C M a c c o rd in g to yo u r s p e c ifie d


d u ra tio n in s c he d u le r field a n d b u ild s th e p ro je c t if n e w c o m m its w e re p u s h ed s in c e th e
la s t b u ild . LET'S INITIATE A PARTNERSHIP

Job chaining
J o b c h a in in g in J en k in s re fe rs to th e p ro c e s s o f lin k in g m u ltip le b u ild jo b s to g e th e r in a
s eq u en c e. W h en o n e jo b c o m p le te s , th e n e xt jo b in th e s e q u e nc e is a u to m a tic a lly
trig g ere d . T h is a llo w s yo u to c rea te a p ip e lin e o f b uild s th a t a re d ep en d en t o n e a c h o th er,
s o yo u c a n a uto m a te th e en tire b u ild p ro c es s .
T h ere a re s e ve ra l w a ys to c h a in jo b s in J e n k in s :
Build Trigger: Y o u c a n u s e th e b u ild trig g e r in J e n k in s to s ta rt o n e jo b af te r a n o th e r. T h is
is d o n e b y c o n fig u rin g th e up s tre a m jo b to trig g er the d o w n s trea m jo b w h e n it c o m p le te s .
Jenkinsfile: If yo u a re u s in g J en k in s P ip e lin e, yo u c a n w rite a J en k in s file to d ef in e th e
s tep s in yo u r b u ild p ip elin e. T h e J e n k in s file c a n c o n ta in m u ltip le s ta g es , e a c h o f w h ic h
rep re s en ts a s e p a ra te b u ild jo b in th e p ip elin e.
JobDSL plugin: T h e J o b D S L p lu g in a llo w s yo u to p ro g ra m m a tic a lly c rea te a n d m a n a g e
J en k in s jo b s . Y o u c a n u s e th is p lu g in to c re a te a s erie s o f jo b s th a t a re lin k ed to g eth er
a n d ru n in s eq u en c e.
Multi-Job plugin: Th e M u lti-J o b p lu g in a llo w s yo u to c rea te a s in g le jo b th a t ru n s m u ltip le
b u ild s tep s , e a c h o f w h ic h c a n b e a s e p a ra te b u ild jo b . T h is p lu g in is u s efu l if yo u h a v e a
b u ild p ip elin e th a t req u ires m u ltip le b u ild jo b s to b e ru n in p a ra lle l.
B y c h a in in g jo b s in J en k in s , yo u c a n a u to m a te th e en tire b u ild p ro c e s s a n d en s u re th a t

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

ea c h s tep is c o m p leted b efo re th e ne xt s te p is s ta rte d . T h is c a n h e lp to im p ro ve th e


ef fic ien c y a n d relia b ility o f yo u r b u ild p ro c es s , a n d a llo w yo u to q u ic k ly a n d e as ily m a k e
c h a n g es to yo u r b u ild p ip elin e.

Build pipelines

A b u ild p ip elin e in D ev O p s is a s et o f a u to m ate d p ro c es s e s th a t c o m p ile , b u ild , a n d tes t


s o f tw a re, a n d p re p a re it f o r d ep lo ym en t. A b u ild p ip elin e rep re s en ts th e e n d -to -en d flo w o f
c o d e c h a n g e s fro m d ev elo p m en t to p ro d u c tio n .
T h e s tep s in v o lve d in a typ ic a l b u ild p ip elin e in c lu d e:
Code Commit: D ev elo p ers c o m m it c o d e c h a n g es to a ve rs io n c o n tro l s ys te m s u c h a s G it.
B u ild a n d C o m p ile: T h e c o d e is b u ilt a n d c o m p iled , a n d a n y n ec es s a ry d ep en d en c ie s a re
res o lv ed .
Unit Testing : A uto m a ted u nit te s ts a re ru n to v a lid a te th e c o d e c h a n g es .
In teg ra tio n T es tin g : A u to m a te d in te g ra tio n tes ts a re ru n to v a lid a te th a t th e c o d e
in te g ra tes c o rre c tly w ith o th e r p a rts o f th e s ys tem .
Staging: T h e c o d e is d e p lo ye d to a s ta g in g en v iro n m e n t fo r fu rth er te s tin g a n d v a lid a tio n .
Release : If th e c o d e p a s s es a ll tes ts , it is d e p lo ye d to th e p ro d u c tio n en v iro n m e n t.
Monitoring: T h e d ep lo yed c o d e is m o n ito re d fo r p e rfo rm a n c e a n d s ta b ility.

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

A b u ild p ip e lin e c a n b e m a n a g ed u s in g a c o n tin u o u s in teg ra tio n to o l s u c h a s J en k in s ,


T ra vis C I, o r C irc leC I. T h es e to o ls a u to m a te th e b u ild p ro c es s , a llo w in g yo u to q u ic k ly a n d
ea s ily m a k e c h a n g es to th e p ip e lin e , a n d e n s u rin g th a t th e p ip elin e is c o n s is te n t a n d
relia b le.
In D ev O p s , th e b u ild p ip elin e is a c ritic a l c o m p o n e n t o f th e c o n tin u o u s d e liv ery p ro c e s s ,
a n d is u s ed to e n s u re th a t c o d e c h a ng es a re tes ted , va lid a ted , a n d d ep lo yed to p ro d u c tio n
a s q u ic k ly an d e ffic ie n tly a s p o s s ib le . B y a u to m a tin g th e b u ild p ip e lin e , yo u c a n re d u c e
th e tim e a n d ef fo rt req u ire d to d ep lo y c o d e c h a n g e s , a nd im p ro ve th e s p e ed a n d q u a lity
o f yo u r s o ftw a re d elive ry p ro c e s s .

Build servers

W h e n yo u 're d ev elo p in g a n d d ep lo yin g s o ftw a re, o n e o f the firs t th in g s to fig u re o u t is


h o w to ta k e yo u r c o d e a n d d ep lo y yo u r w o rk in g a p p lic a tio n to a p ro d u c tio n e n viro n m en t
w h ere p eo p le c a n in te ra c t w ith yo u r s o ftw a re.

M o s t d ev elo p m e n t tea m s u n d ers ta n d th e im p o rta n c e o f ve rs io n c o n tro l to c o o rd in a te


c o d e c o m m its , a n d b u ild s e rve rs to c o m p ile a n d p a c k a g e th eir s o f tw a re, b u t C o n tin u o u s
In teg ra tio n (C I) is a b ig to p ic .

W h y b u ild s erv ers a re im p o rta n t

B u ild s erve rs h a v e 3 m a in p u rp o s e s :

C o m p ilin g c o m m itted c o d e fro m yo u r re p o s ito ry m an y tim e s a d a y


R u n n in g a u to m a tic te s ts to v alid a te c o d e
C re atin g d e p lo ya b le p a c k a g es a n d h a n d in g o ff to a d ep lo ym e n t to o l, lik e O c to p u s
D e p lo y

W ith o u t a b u ild s e rve r yo u 're s lo w ed d o w n b y c o m p lic a ted , m a n u a l p ro c es s es a n d th e


n ee d le s s tim e c o n s tra in ts th ey in tro d u c e . F o r ex a m p le , w ith o u t a b u ild s erv er:

Y o u r tea m w ill lik ely n ee d to c o m m it c o d e b ef o re a d a ily d ea d lin e o r d u rin g c h a n g e


w ind o w s
A f te r th a t d ea d lin e p a s s es , n o o n e c a n c o m m it ag a in u n til s o m e o n e m a n u a lly c re a tes
a n d tes ts a b u ild

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

If th e re a re p ro b le m s w ith th e c o d e, th e d ea d lin e s a n d m a n u a l p ro c e s s es f u rth er d ela y


th e fixe s

W ith o u t a b u ild s erv er, th e te a m b a ttles u n n ec es s a ry h u rd le s th a t a u to m a tio n re m o ve s . A


b u ild s erve r w ill rep ea t the s e ta s k s fo r yo u th ro u g h o u t th e d a y, a n d w ith o u t th o s e
h u m a n-c a u s e d d e la ys .

B u t C I d o es n ’ t ju s t m e an les s tim e s p en t o n m an u a l ta s k s o r th e d ea th o f a rb itra ry


d e a d lin es , e ith er. B y a u to m a tic a lly ta k in g th es e s tep s m a n y tim es a d a y, yo u fix p ro b lem s
s o o n er a n d yo u r re s u lts b ec o m e m o re p red ic ta b le. B u ild s e rv ers u ltim a tely h elp yo u
d e p lo y th ro u g h yo u r p ip elin e w ith m o re c o n fid e n c e .

Building servers in DevOps involves several steps:


Requirements gathering: D eterm in e th e req uirem e nts fo r th e s e rv er, s u c h a s h a rd w a re
s p e c ific a tio n s , o p e ra tin g s ys tem , a n d s o ftw a re c o m p o n e n ts n e ed ed .
Server provisioning : C h o o s e a m eth o d fo r p ro v is io n in g th e s e rv er, s u c h a s p h ys ic a l
in s ta lla tio n , virtu a liza tio n , o r c lo u d c o m p u tin g .
Operating System installation: In s ta ll th e c h o s en o p era tin g s ys te m o n th e s e rv er.
S o f tw a re c o nf ig u ra tio n : In s ta ll a n d c o n fig u re th e n ec es s a ry s o ftw a re c o m p o n en ts , s u c h
a s w e b s e rv ers , d ata b a s es , a n d m id d le w a re .
Network configuration: S et u p n etw o rk c o n n ec tiv ity, s u c h a s IP a d d re s s es , h o s tn a m e s ,
a n d firew a ll ru les .
Security configuration: C o n fig u re s e c u rity m e a s u res , s u c h a s u s er a u th en tic a tio n , a c c es s
c o n tro l, an d en c ryp tio n .
Monitoring and maintenance: Im p lem en t m o n ito rin g a n d m a in te n a n c e p ro c es s es , s u c h
a s lo g g in g , b a c k u p , a n d d is a s te r rec o v ery.
Deployment: D e p lo y th e a p p lic a tio n to th e s e rve r a n d te s t it to e n s u re it is fu n c tio n in g a s
ex p e c te d .
T h ro u g h o u t th e p ro c e s s , it is im p o rta n t to a u to m a te a s m u c h a s p o s s ib le u s in g to o ls s u c h
a s A n s ib le, C h ef , o r P u p p e t to en s u re c o n s is ten c y a n d e ffic ie n c y in b u ild in g s erve rs .

Infrastructure as code

u s es D e vO p s m eth o d o lo g y a n d ve rs io n in g w ith a d es c rip tiv e


m o d el to d e fin e a n d d ep lo y in fra s tru c ture , s u c h a s n etw o rk s , virtu a l m a c h in e s , lo a d

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

b a la n c ers , a n d c o nn e c tio n to p o lo g ie s . J us t a s th e s a m e s o u rc e c o d e a lw a ys g e n era tes


th e s a m e b in a ry, a n Ia C m o d e l g en e ra tes th e s a m e en v iro n m e n t e ve ry tim e it d e p lo ys .

Ia C is a k e y D ev O p s p ra c tic e a n d a c o m p o n en t o f c o n tin u o u s d elive ry. W ith Ia C , D e vO p s


tea m s c a n w o rk to g eth er w ith a u n ified s e t o f p ra c tic e s a n d to o ls to d e liv er a p p lic a tio n s
a n d th eir s u p p o rtin g in fra s tru c tu re ra p id ly a n d reliab ly a t s c a le .

Ia C ev o lve d to s o lv e th e p ro b le m o f in re le a s e p ip elin es . W ith o u t Ia C ,


tea m s m u s t m a in ta in d e p lo ym e nt en v iro n m e n t s e ttin g s in d ivid u a lly. O v er tim e, e a c h
en v iro n m e n t b ec o m es a "s n o w fla k e," a u n iq u e c o n fig ura tio n tha t c a n 't b e re p ro d u c e d
a u to m a tic a lly. In c o n s is te n c y am ong en v iro n m e nts ca n c ause d e p lo ym en t is s u e s .
In fra s tru c tu re a d m in is tra tio n a n d m a in ten a n c e in v o lve m a n u a l p ro c es s e s th a t a re e rro r
p ro n e a n d h a rd to tra c k .

Ia C a v o id s m a n u a l c o n fig u ra tio n a n d en fo rc es c o n s is te n c y b y re p re s en tin g d e s ire d


en v iro n m e n t s ta te s v ia w ell-d o c u m en ted c o d e in fo rm ats s u c h a s J S O N . In fra s tru c tu re
d e p lo ym e n ts w ith Ia C a re re p ea ta b le a n d p re ve n t ru n tim e is s u e s c a u s ed b y c o n fig u ra tio n
d rift o r m is s in g d e p e n d e n c ies . R e lea s e p ip elin es ex ec u te th e en v iro n m e n t d e s c rip tio n s
a n d ve rs io n c o n fig u ra tio n m o d e ls to c o n fig u re ta rg et e n viro n m en ts . T o m a k e c h a n g e s ,
th e tea m e d its th e s o u rc e, no t th e ta rg et.

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

, th e a b ility o f a g ive n o p e ra tio n to a lw a ys p ro d u c e th e s a m e res u lt, is a n


im p o rta n t Ia C p rin c ip le. A d e p lo ym en t c o m m a n d a lw a ys s ets th e ta rg et en v iro n m e n t in to
th e s a m e c o n f ig u ra tio n , reg a rd les s o f th e en v iro n m e n t's s ta rtin g s ta te. Id em p o ten c y is
a c h ie ve d b y eith er a u to m a tic a lly c o n fig u rin g th e e xis tin g ta rg e t, o r b y d is c a rd in g th e
ex is tin g ta rg e t a n d rec re a tin g a fre s h e n viro n m en t.

IA C c a n b e a c h ie ve d b y u s in g to o ls s u c h a s T e rra fo rm , C lo u d F o rm a tio n , o r A ns ib le to
d e fin e in fra s tru c tu re c o m p o n e n ts in a file th a t c a n b e ve rs io n e d , tes ted , a n d d ep lo ye d in a
c o n s is te n t a n d a u to m a ted m a n n er.
Benefits of IAC include:
Speed: IA C e n a b les q u ic k a n d eff ic ien t p ro v is io n in g a n d d ep lo ym en t o f in fras tru c tu re.
Consistency: B y u s in g c o d e to d efin e a n d m a n a g e in fra s tru c tu re, it is e a s ier to e n s u re
c o n s is te n c y a c ro s s m u ltip le en v iro n m e nts .
Repeatability: IA C a llo w s fo r e as y rep lic a tio n o f in fra s tru c tu re c o m p o n e n ts in d if feren t
en v iro n m e n ts , s u c h a s d ev elo p m en t, tes ting , a n d p ro d u c tio n .
Scalability: IA C m a k e s it e a s ie r to s c a le inf ra s tru c tu re a s n ee d e d b y s im p ly m o d ifyin g th e
co de .
Version control: In fras tru c tu re c o m p o n e n ts c a n b e ve rs io n e d , a llo w in g fo r ro llb a c k to
p re vio u s v ers io n s if n e c e s s a ry.
O v e ra ll, IA C is a k e y c om po n e n t of m o de rn D e v O p s p ra c tic e s , e n a b lin g org a n iz a tion s to m a n a g e th e ir
in f ra stru c tu re in a m o re e ffic ie n t, rel ia b le , a n d sc a la b le w a y.

Building by dependency order


B u ild in g b y d e p e nd en c y o rd er in D e vO p s is the p ro c e s s o f e n s u rin g tha t th e c o m p o n en ts
o f a s ys te m a re b u ilt an d d ep lo yed in th e c o rre c t s eq u e n c e , b a s e d o n th eir d ep en d en c ie s .
T h is is n ec es s a ry to en s u re th a t th e s y s te m fu n c tio n s a s in ten d ed , a n d th a t c o m p o n en ts
a re d e p lo ye d in th e rig h t o rd e r s o th a t th e y c a n in tera c t c o rre c tly w ith e a c h o th e r.
T h e s tep s in v o lve d in b u ild in g b y d ep e n d e n c y o rd er in D e vO p s in c lu d e :
Define dependencies: Id e n tify a ll th e c o m p o n e n ts o f th e s ys te m a n d th e d e p en d en c ies
b e tw e en th em . T h is c a n b e rep re s en ted in a d ia g ra m o r a s a lis t.
Determine the build order: B a s ed o n th e d ep en d en c ie s , d ete rm in e th e c o rre c t o rd er in
w h ic h c o m p o n e n ts s h o u ld b e b u ilt a n d d ep lo ye d .
Automate the build process: U s e to o ls s u c h a s J e n k in s , Tra v is C I, o r C irc leC I to a u to m a te
th e b u ild a n d d e p lo ym e nt p ro c es s . Th is allo w s fo r c o n s is te n c y a n d re p ea ta b ility in th e

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

b u ild p ro c e s s .
Monitor progress: M o n ito r th e p ro g res s o f th e b u ild a n d d ep lo ym en t p ro c e s s to e n s u re
th a t c o m p o n e nts a re d e p lo yed in th e c o rrec t o rd e r a n d th a t th e s ys te m is fu n c tio n in g a s
ex p e c te d .
Test and validate: T es t th e s ys tem a f te r d e p lo ym e n t to e n s u re th a t a ll c o m p o n e n ts a re
fu n c tio n in g a s in te n d e d a n d th a t d ep en d e n c ie s a re res o lve d c o rre c tly.
Rollback: If n e c es s a ry, h a v e a ro llb a c k p la n in p la c e to rev ert to a p rev io u s ve rs io n o f th e
s ys tem if th e b u ild o r d ep lo ym e n t p ro c e s s fa ils .
In c o n c lu s io n , b u ild in g b y d e p e n d e n c y o rd e r in D ev O p s is a c ritic a l s te p in e n s u rin g th e
s u c c es s o f a s ys te m d e p lo ym e n t, a s it en s u res th a t c o m p o n e n ts a re d ep lo ye d in th e
c o rre c t o rd er a n d th a t d ep en d en c ie s a re res o lv ed c o rre c tly. T h is re s u lts in a m o re s ta b le ,
relia b le, a n d c o n s is ten t s ys te m .

Build phases
In D e vO p s , th ere a re s e ve ra l p h a s e s in th e b u ild p ro c es s , in c lu d ing :
Planning: D e fin e th e p ro je c t req u ire m e n ts , id en tify th e d ep en d en c ie s , a n d c rea te a b u ild
p la n .
Code development: W rite th e c o d e a n d im p le m e n t fe a tu re s , fixin g b u g s a lo n g th e w a y.
Continuous Integration (CI): A u to m a tic a lly b u ild a n d tes t th e c o d e a s it is c o m m itte d to a
v ers io n c o ntro l s ys tem .
Continuous Delivery (CD): A u to m a tic a lly d e p lo y c o d e c h a n g e s to a te s tin g e n viro n m en t,
w h ere th ey c an b e tes ted a n d va lid a ted .
Deployment: D e p lo y th e c o d e c h a n g e s to a p ro d uc tio n en v iro n m e nt, a fte r th ey h a v e
p a s s e d tes tin g in a p re -p ro d u c tio n en v iro n m e n t.
Monitoring: C o n tin u o u s ly m o n ito r th e s ys te m to e n s u re th a t it is fu n c tio n in g a s ex p e c ted ,
a n d to d e tec t a n d res o lv e a n y is s u es th a t m a y a ris e.
Maintenance: C o n tin u o u s ly m a in ta in an d u p d a te th e s y s te m , fix in g b u g s , a d d in g n ew
fe a tu res , a n d en s u rin g its s ta b ility.
T h es e p h a s es h e lp to en s u re th a t th e b uild p ro c es s is ef fic ien t, re lia b le , an d c o n s is ten t,
a n d th a t c o d e c h a n g e s a re v a lid a te d a n d d e p lo yed in a c o n tro lle d m a n n er. A u to m a tio n is
a k ey a s p e c t o f D ev O p s , a nd it h elp s to m a k e th es e p h a s es m o re effic ie n t a n d les s p ro n e
to h u m a n e rro r.

In c o n tin u o u s in teg ra tio n (C I), th is is w h e re w e b u ild th e a p p lic a tio n f o r th e firs t tim e . T h e

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

b u ild s ta g e is th e f irs t s tre tc h o f a C I/C D p ip e lin e , a n d it a u to m ate s s tep s lik e


d o w n lo a d in g d ep e n d e n c ie s , in s ta llin g to o ls , a n d c o m p ilin g .

B es id es b u ild in g c o d e, b u ild a u to m a tio n in c lu d es u s in g to o ls to c h e c k th a t th e c o d e is


s a fe a nd fo llo w s b es t p ra c tic e s . The b u ild s ta g e u s u a lly ends in th e a rtifa c t
g e n era tio n s te p , w h ere w e c re a te a p ro d u c tio n -re ad y p a c k a g e. O n c e th is is d o n e ,
th e tes tin g s ta g e c a n b eg in .

T h e b u ild s ta g e s ta rts fro m c o d e c o m m it a n d ru n s f ro m th e b e g in n in g u p to th e tes t s ta g e

W e’ ll b e c o ve rin g te s tin g in -d ep th in fu tu re a rtic les (s u b s c rib e to th e ne w s le tte r s o yo u


do n’ t m is s th e m ). T o d a y, w e’ ll fo c u s o n b u ild a u to m atio n .

B u ild a u to m a tio n ve rifie s th a t th e a p p lic a tio n , a t a g ive n c o d e c o m m it, c a n q u a lify fo r


fu rth e r te s tin g . W e c a n d iv id e it in to thre e p a rts :

Compilation : th e firs t s tep b u ild s th e a p p lic a tio n .


Linting: c h e c k s th e c o d e fo r p ro g ra m m a tic a n d s tylis tic e rro rs .
Code analysis: u s in g a u to m a ted s o u rc e-c h ec k in g to o ls , w e c o n tro l th e c o d e’ s q u a lity .
Artifact generation : th e la s t s tep p a c k a g es th e a p p lic a tio n f o r re le a s e o r d e p lo y m e n t.

Alternative build servers

T h ere a re s e ve ra l a lte rn a tive b u ild s erve rs in D e vO p s , in c lu d in g :


Jenkins - a n o p en -s o u rc e , J a v a -b as e d a u to m atio n s erve r th a t s u p p o rts va rio u s p lu g in s
a n d in teg ra tio n s .
Travis CI - a c lo u d -b a s ed , o p en -s o u rc e C I/C D p la tfo rm th a t in teg ra te s w ith G ith u b .
CircleCI - a c lo u d -b a s e d , c o n tin u o u s in teg ra tio n a n d d e liv ery p la tfo rm th a t s u p p o rts

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

m u ltip le la n g u a g es a n d in te g ra tes w ith s ev era l p la tf o rm s .


GitLab CI/CD - a n in teg ra te d C I/C D s o lu tio n w ith in G itL a b th a t a llo w s fo r c o m p lete p ro je c t
a n d p ip elin e m a n ag em e nt.
Bitbucket Pipelines - a C I/ C D s o lu tio n w ith in B itb u c k e t th a t a llo w s fo r p ip elin e c rea tio n
a n d m a n a g e m e n t w ith in th e c o d e rep o s ito ry.
AWS CodeBuild - a fu lly m a n a g ed b u ild s ervic e th a t c o m p ile s s o u rc e c o d e, ru n s te s ts , a n d
p ro d u c e s s o ftw a re p a c k a g es th a t a re rea d y to d ep lo y.
Azure Pipelines - a C I/ C D s o lu tio n w ith in M ic ro s o ft A zu re th a t s u p p o rts m u ltip le
p la tfo rm s an d p ro g ra m m in g la n g u a g es .

Collating quality measures


In D e vO p s , c o lla tin g q u a lity m e a s u re s is a n im p o rta n t p a rt o f th e c o n tin u o u s im p ro ve m e n t
p ro c e s s . T h e f o llo w in g are s o m e c o m m o n q u a lity m ea s u res u s ed in D e vO p s to e va lu a te
th e q u a lity o f s o ftw a re s ys te m s :
C o n tin u o u s In teg ra tio n ( C I) m e tric s - m etric s th a t tra c k th e s u c c e s s ra te o f a u to m a te d
b u ild s a n d tes ts , s u c h a s b u ild d u ra tio n a n d tes t p a s s ra te.
C o n tin u o u s D ep lo ym e n t (C D ) m etric s - m e tric s th a t tra c k th e s u c c e s s ra te o f d e p lo ym en ts ,
s u c h a s d e p lo ym en t freq ue n c y a n d tim e to d ep lo ym en t.
C o d e re view m etric s - m e tric s th at tra c k th e e ffe c tive n es s o f c o d e re vie w s , s u c h a s re view
c o m p letio n tim e a n d c o d e rev ie w fe ed b a c k .
P erfo rm a n c e m e tric s - m e a s ure s o f s ys te m p e rfo rm a n c e in p ro d u c tio n , s u c h a s re s p o n s e
tim e a n d re s o u rc e u tiliz a tio n .
U s e r e xp erien c e m e tric s - m e a s u re s o f h o w u s ers in tera c t w ith th e s ys tem , s u c h a s
c lic k -th ro u g h ra te a n d e rro r ra te .
S ec u rity m e tric s - m ea s u res o f th e s ec u rity o f th e s ys te m , s u c h a s th e n u m b er o f s ec u rity
v uln e ra b ilitie s a n d the freq u e n c y o f s ec u rity u p d a tes .
In c id en t re s p o n s e m etric s - m e tric s tha t tra c k th e e ffe c tiv en e s s o f in c id e n t res p o n s e ,
s u c h a s m ea n tim e to res o lu tio n (M T TR ) a n d in c id e n t freq u en c y.
B y reg u la rly c o lla tin g th e s e q u a lity m ea s u res , D e vO p s tea m s c a n id e n tify a re a s fo r
im p ro ve m en t, tra c k p ro g res s o v er tim e , a n d m a k e in fo rm ed d e c is io n s a b o u t th e q u a lity o f
th eir s ys te m s .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Unit 5
Testing Tools and automation

A s w e k n o w , software testing is a p ro c e s s o f a n a lyzin g a n a p p lic a tio n 's fu n c tio na lity a s


p e r th e c u s to m e r p re req u is ite.

If w e w a n t to en s u re th a t o u r s o ftw a re is b u g -free o r s ta b le , w e m u s t p erfo rm th e va rio u s


typ e s o f s o f tw a re te s tin g b e c a u s e tes tin g is th e o n ly m e th o d th a t m a k e s o u r a p p lic a tio n
b u g -free .

Various types of testing

T h e c a te g o riza tio n o f s o ftw a re tes tin g is a p a rt o f d iv ers e tes tin g a c tivitie s , s u c h a s test
strategy, test deliverables, a defined test objective, etc . A n d s o ftw a re te s tin g is th e
ex ec u tio n o f th e s o ftw a re to fin d d e fec ts .

T h e p u rp o s e o f h a vin g a te s tin g typ e is to c o n firm th e AUT ( A p p lic a tio n U n d e r T es t).

T o s ta rt tes tin g , w e s h o u ld h a ve a requirement, application-ready, necessary resources


available . To m a in ta in a c c o u n ta b ility, w e s h o u ld a s s ig n a res p ec tiv e m o d u le to d if feren t
tes t en g in e ers .

T h e s o ftw a re tes tin g m a in ly d ivid ed in to tw o p a rts , w h ic h a re a s fo llo w s :

Manual Testing

Automation Testing

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

W ha t is M a nua l Te stin g?

T es tin g a n y s o ftw a re o r a n a p p lic a tio n a c c o rd in g to th e c lie n t's n ee d s w ith o u t u s in g a n y


a u to m a tio n to o l is k n o w n a s manual testing.

In o th e r w o rd s , w e c a n s a y th a t it is a p ro c ed u re o f verification and validation . M a n u a l


tes tin g is u s e d to v erify th e b eh a v io r o f a n a p p lic a tio n o r s o ftw a re in c o n tra d ic tio n o f
req u irem e n ts s p e c ific a tio n .

W e d o n o t req u ire a n y p rec is e k n o w led g e o f a n y te s tin g to o l to e xe c u te th e m a n u a l tes t


c a s e s . W e c a n ea s ily p rep a re th e tes t d o c um e n t w h ile p erfo rm ing m a n u a l te s tin g o n a n y
a p p lic a tio n .

To g et in -d e ta il in fo rm a tio n ab out m anual tes tin g , c lic k on th e fo llo w in g lin k :

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

h ttp s :// w w w .jav a tp o in t.c o m /m a n u a l-te s tin g .

Classification of Manual Testing

In s o ftw a re te s tin g , m a n u a l tes tin g c a n b e fu rth er c la s s ifie d in to three different types of


testing, w h ic h a re a s fo llo w s :

White Box Testing

Black Box Testing

Grey Box Testing

F o r o u r b e tter u n d e rs ta n d in g le t's s ee th e m o n e b y o n e :

White Box Testing

In w h ite-b o x tes tin g , th e d e ve lo p er w ill in s p e c t e ve ry lin e o f c o d e b efo re h a n d in g it o ve r to


th e tes tin g te a m o r th e c o n c e rn e d tes t en g in e ers .

S u b s e q u e n tly, th e c o d e is n o tic ea b le f o r d ev elo p ers th ro u g h o u t tes tin g ; th a t's w h y th is


p ro c e s s is k n o w n a s WBT (White Box Testing).

In o th er w o rd s , w e c a n s a y th a t th e developer w ill ex ec u te th e c o m p lete w h ite-b o x tes tin g


fo r th e p a rtic u la r s o f tw a re a n d s e n d th e s p e c ific a p p lic a tio n to th e tes tin g tea m .

T h e p u rp o s e o f im p le m e n tin g th e w h ite b o x tes tin g is to e m p h a s iz e th e flo w o f in p u ts a n d


o u tp uts o v er th e s o ftw a re a n d en h a n c e th e s ec u rity o f a n ap p lic a tio n .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

W h ite b o x tes ting is a ls o k n o w n a s open box testing, glass box testing, structural testing,
clear box testing, and transparent box testing.

Black Box Testing

A n o th e r typ e o f m a n u a l te s tin g is black-box testing . In th is te s tin g , th e tes t e n g in ee r w ill


a n a lyze th e s o ftw a re a g a in s t re q u ire m e n ts , id en tify th e d e fe c ts o r b u g , a n d s en d s it b a c k
to th e d e ve lo p m en t tea m .

T h en , th e d e ve lo p e rs w ill fix th o s e d efe c ts , d o o n e ro un d o f W h ite b o x te s tin g , a n d s e n d it


to th e te s tin g te a m .

H ere, fixin g th e b u g s m ea n s th e d e fe c t is res o lve d , a n d th e p a rtic u la r fe a tu re is w o rk in g


a c c o rd in g to th e g iv en req u ire m e n t.

T h e m a in o b jec tiv e o f im p le m en tin g th e b la c k b o x tes tin g is to s p e c ify th e b u s in es s


n ee d s o r th e c u s to m e r's req u irem en ts .

In o th er w o rd s , w e c a n s a y th a t b la c k b o x te s tin g is a p ro c es s o f c h e c k in g th e
fu n c tio n a lity o f a n a p p lic a tio n a s p e r th e c u s to m er req u ire m e n t. T h e s o u rc e c o d e is n o t
v is ib le in th is tes tin g ; th a t's w h y it is k n o w n a s black-box testing .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Types of Black Box Testing

B la c k b o x tes tin g fu rth e r c a te g o riz es in to tw o p a rts , w h ic h a re a s d is c u s s ed b elo w :

Functional Testing

Non-function Testing

Functional Testing

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

T h e tes t e n g in ee r w ill c h e c k a ll the c o m p o n en ts s ys te m a tic a lly a g a in s t re q u irem en t


s p e c ific a tio n s is kno wn a s functional testing . F u n c tio n a l tes tin g is a ls o know n
a s Component testing .

In fu n c tio n a l tes tin g , a ll th e c o m p o n e n ts a re tes te d b y g iv in g th e v a lu e, d efin in g th e o u tp u t,


a n d va lid a tin g th e a c tu a l o u tp u t w ith th e e xp e c te d va lu e.

F u n c tio n a l tes tin g is a p art o f b la c k -b o x te s tin g a s its e m p h a s es o n a p p lic a tio n


req u irem e n t ra th er th a n a c tu a l c o d e. T h e te s t e n g in ee r h a s to tes t o n ly th e p ro g ra m
in s te a d o f th e s ys tem .

Types of Functional Testing

J u s t lik e a n o th e r typ e o f te s tin g is d iv id ed in to s e ve ra l p a rts , fu n c tio n a l te s tin g is a ls o


c la s s ified in to v a rio us c a te g o rie s .

T h e d iv ers e types of Functional Testing c o n tain th e fo llo w in g :

Unit Testing

Integration Testing

System Testing

N o w , L et's u n d ers tan d th e m o n e b y o n e :

1. Unit Testing

U n it te s tin g is th e firs t lev el o f f un c tio n a l te s tin g in o rd er to tes t a n y s o ftw a re . In th is , th e


tes t en g in e er w ill tes t th e m o d u le o f a n a p p lic atio n in d e p e n d e n tly o r tes t a ll th e m o d u le
fu n c tio n a lity is c a lled unit testing .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

T h e p rim a ry o b je c tive o f ex ec utin g th e u n it te s tin g is to c o n firm th e u nit c o m p o n en ts w ith


th eir p e rf o rm a n c e. H ere, a u n it is d e fin ed a s a s in g le te s ta b le fu n c tio n o f a s o ftw a re o r a n
a p p lic a tio n . A n d it is ve rifie d th ro u g h o u t th e s p e c ified ap p lic a tio n d e ve lo p m e n t p h a s e .

2. Integration Testing

O n c e w e a re s u c c es s fu lly im p le m e n tin g th e u n it te s tin g , w e w ill g o in te g ra tio n te s tin g . It is


th e s e c o n d le ve l o f fu n c tio n al tes tin g , w h e re w e te s t th e d a ta f lo w b etw ee n d e p en d en t
m o d ule s o r in terfa c e b e tw e en tw o f ea tu re s is c a lle d integration testing .

T h e p urp o s e o f ex ec utin g th e in te g ra tio n te s tin g is to te s t th e s tate m e n t's a c c u rac y


b e tw e en e ac h m o d u le.

Types of Integration Testing

In teg ra tio n tes tin g is a ls o fu rth er d ivid ed in to th e fo llo w in g p a rts :

Incremental Testing

Non-Incremental Testing

Incremental Integration Testing

W h e n ev er th ere is a c le a r re la tio n s h ip b e tw e en m o d u les , w e g o fo r in c re m e n ta l


in te g ra tio n te s tin g . S u p p o s e, w e ta k e tw o m o d u les a n d a n a lys is th e d a ta flo w b e tw e en
th em if th ey a re w o rk in g fin e o r n o t.

If th e s e m o d u les a re w o rk in g fin e, th e n w e c a n ad d o n e m o re m o d u le a n d te s t a g a in . A n d
w e c a n c o n tin u e w ith th e s a m e p ro c e s s to g et b e tte r res u lts .

In o th er w o rd s , w e c a n s a y th a t in c rem en ta lly a d d in g u p th e m o d u les an d tes t th e d a ta


flo w b e tw e en th e m o d u le s is k n o w n a s Incremental integration testing .

Types of Incremental Integration Testing

In c re m e n ta l in te g ra tio n te s tin g c a n fu rth er c la s s ify in to tw o p arts , w h ic h a re a s fo llo w s :

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Top-down Incremental Integration Testing

Bottom-up Incremental Integration Testing

Le t's s e e a b rief in tro d u c tio n o f th es e typ es o f in teg ra tio n tes tin g :

1. Top-down Incremental Integration Testing

In th is a p p ro a c h , w e w ill a d d th e m o d u le s s te p b y s te p o r inc rem en ta lly a n d te s t th e d a ta


flo w b etw een th e m . W e h a v e to e n s u re tha t th e m o d u les w e a re a d d in g are th e child of
the earlier ones.

2. Bottom-up Incremental Integration Testing

In th e b o tto m -u p a p p ro a c h , w e w ill a d d th e m o d u les in c rem en ta lly an d c h ec k th e d a ta


flo w b e tw e en m o d u le s . A n d a ls o , e n s u re th a t th e m o d u le w e a re a d d in g is th e parent of
the earlier ones.

Non-Incremental Integration Testing/ Big Bang Method

W h e n ev er th e d a ta flo w is c o m p lex a n d ve ry d iffic u lt to c la s s ify a p a ren t an d a c h ild , w e


w ill g o fo r th e n o n -in c re m e n ta l in te g ra tio n a p p ro a c h. T h e n o n -in c rem en ta l m eth o d is a ls o
k n o w n a s the Big Bang method.

3. System Testing

W h e n ev er w e a re d o n e w ith th e u n it a n d in teg ra tio n tes tin g , w e c a n p ro c e ed w ith th e


s ys tem te s tin g .

In s ys te m te s tin g , th e tes t e n viro n m en t is p a ra lle l to th e p ro d u c tio n en v iro n m e n t. It is a ls o


k n o w n a s end-to-end te s tin g .

In th is typ e o f tes tin g , w e w ill u n d erg o e a c h a ttrib u te o f th e s o ftw a re a n d te s t if th e e n d


fe a tu re w o rk s a c c o rd in g to th e b u s in es s re q u ire m en t. A n d a n a lys is th e s o ftw a re p ro d u c t
a s a c o m p le te s ys te m .

Non-function Testing

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

T h e n e xt p a rt o f b la c k -b o x te s tin g is non-functional testing . It p ro v id es d e ta ile d


in fo rm a tio n o n s o ftw a re p ro d u c t p erfo rm a n c e a n d u s e d tec h n o lo g ie s .

N o n -f u n c tio n a l tes tin g w ill h elp u s m in im iz e th e ris k o f p ro d u c tio n a n d rela ted c o s ts o f


th e s o ftw a re.

N o n -f u n c tio n a l tes tin g is a c o m b in a tio n o f performance, load, stress, usability and,


compatibility testing.

T yp e s of N o n -fu n c tio n a l T e s tin g

N o n -f u n c tio n a l tes ting c a te g o riz ed in to d if feren t p a rts o f te s tin g , w h ic h w e a re g o in g to


d is c u s s f u rth er:

Performance Testing

Usability Testing

Compatibility Testing

1. Performance Testing

In p e rf o rm a n c e te s tin g , th e tes t en g in e er w ill tes t th e w o rk in g o f a n a p p lic a tio n b y


a p p lyin g s o m e lo a d .

In th is typ e o f n o n -fu n c tio n a l tes tin g , th e tes t en g in e er w ill o n ly fo c u s o n s ev era l a s p e c ts ,


s u c h a s Response time, Load, scalability, and Stability o f th e s o ftw a re o r a n a p p lic a tio n .

Classification of Performance Testing

P erfo rm a n c e te s tin g in c lu d es th e va rio u s typ e s o f te s tin g , w hic h a re a s fo llo w s :

Load Testing

Stress Testing

Scalability Testing

Stability Testing

Load Testing

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

W h ile e xe c u tin g th e p e rf o rm a n c e te s tin g , w e w ill a p p ly s o m e lo a d o n th e p a rtic u la r


a p p lic a tio n to c h ec k th e a p p lic a tio n 's p erfo rm a n c e , k n o w n a s load testing. H ere , th e lo a d
c o u ld b e le s s th a n o r eq u a l to th e d e s ire d lo a d .

It w ill h e lp u s to d ete c t th e h ig he s t o p e ra tin g v o lu m e o f th e s o ftw a re a n d b o ttlen e c k s .

Stress Testing

It is u s e d to a n a lyze th e u s e r-frie n d lin es s a n d ro b u s tn e s s o f th e s o ftw a re b e yo n d th e


c o m m o n f un c tio n a l lim its .

P rim a rily, s tres s tes tin g is u s e d fo r c ritic a l s o ftw a re, b u t it c a n a ls o b e u s e d fo r a ll typ e s o f


s o f tw a re a p p lic a tio n s .

Scalability Testing

T o a n a lys is , the a p p lic a tio n 's p erfo rm a n c e b y en h a n c in g o r re d u c in g th e lo a d in p a rtic u la r


b a la n c es is k n o w n a s scalability testing .

In s c a la b ility tes tin g , w e c a n a ls o c h ec k th e system, processes, or database's ability to


m ee t a n u p w a rd n ee d . A n d in th is , th e Test Cases a re d e s ig n ed a n d im p lem en te d
ef fic ien tly.

Stability Testing

S ta b ility te s tin g is a p ro c e d u re w he re w e e va lu a te th e a p p lic a tio n 's p e rf o rm a n c e b y


a p p lyin g th e lo a d fo r a p rec is e tim e.

It m a in ly c h ec k s th e c o n s ta n c y p ro b le m s o f th e a p p lic a tio n a n d th e e ffic ie n c y o f a


d e ve lo p ed p ro d u c t. In th is typ e o f tes tin g , w e c a n ra p id ly fin d th e s ys tem 's d e fec t e ve n in
a s tre s s fu l s itu a tio n .

2. Usability Testing

A n o th e r typ e o f non-functional testing is usability testing. In u s a b ility tes tin g , w e w ill


a n a lyze th e u s e r-frie n d lin es s o f a n a p p lic a tio n a n d d etec t th e b u g s in th e s o f tw a re's

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

en d -u s e r in te rfa c e .

H ere, th e te rm user-friendliness d efin e s th e fo llo w in g a s p ec ts o f a n a p p lic a tio n :

T h e a p p lic a tio n s h o u ld b e e a s y to u n d ers ta n d , w h ic h m ea n s th a t a ll th e fe a tu res m u s t


b e vis ib le to e nd -u s e rs .

T h e a p p lic a tio n 's lo o k a n d fee l s h o u ld b e g o o d th a t m ea n s th e a p p lic a tio n s h o uld b e


p le a s a n t lo o k in g a nd m a k e a fe el to th e en d -u s er to us e it.

3. Compatibility Testing

In c o m p a tib ility tes tin g , w e w ill c h e c k th e fu n c tio n a lity o f a n a p p lic a tio n in s p ec ific
h a rd w a re a n d s o f tw a re en v iro n m en ts . O n c e th e a p p lic a tio n is fu n c tio n a lly s ta b le th en
o n ly, w e g o fo r compatibility testing.

H ere, software m ea n s w e c a n te s t th e a p p lic a tio n o n th e d if feren t o p era tin g s ys tem s a n d


o th e r b ro w s e rs , a nd hardware m e a n s w e c a n te s t th e a p p lic a tio n o n d iffe re n t s iz es .

Grey Box Testing

A n o th e r p a rt o f manual testing is Grey box testing . It is a collaboration of black box and


white box testing.

S in c e , th e g rey b o x tes tin g in c lu d es a c c e s s to in tern a l c o d in g f o r d es ig n in g tes t c a s e s .


G rey b o x te s tin g is p e rfo rm e d b y a p e rs o n w h o k n o w s c o d in g a s w e ll a s te s tin g .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

In o th er w o rd s , w e c a n s a y th a t if a s in g le-p e rs o n tea m d o n e b o th white box and


black-box testing, it is c o n s id e re d grey box testing .

Automation Testing

T h e m o s t s ig n ific a n t p a rt o f S o ftw a re te s tin g is A u to m atio n tes tin g . It u s e s s p ec ific to o ls


to a u to m a te m a n u a l d es ig n tes t c a s e s w ith o u t a ny h u m a n in terfe re n c e .

A u to m a tio n te s tin g is th e b e s t w a y to en h a n c e th e e ffic ie n c y, p ro d u c tivity, a n d c o v era g e


o f S o ftw a re tes tin g .

It is u s ed to re -ru n th e te s t s c e n a rio s , w h ic h w e re e xe c u ted m a n u a lly, q u ic k ly, a n d


rep ea ted ly.

In o th er w o rd s , w e c a n s a y th a t w h e n ev er w e a re tes tin g a n a p p lic a tio n b y u s in g s o m e


to o ls is k n o w n a s automation testing.

W e w ill g o fo r a u to m atio n tes tin g w h en va rio u s relea s e s o r s e ve ra l reg re s s io n c yc le s g o es


o n th e a p p lic a tio n o r s o ftw a re . W e c a n n o t w rite th e te s t s c rip t o r p e rfo rm th e au to m a tio n
tes tin g w ith o u t u n d e rs ta n d in g th e p ro g ra m m in g la n g u a g e .

Automation of testing Pros and cons

S o m e o th e r typ e s o f S o f tw a re T es tin g

In s o ftw a re te s tin g , w e a ls o h a ve s o m e o th e r typ e s o f tes tin g th a t a re n o t p a rt o f a n y


a b o ve d is c u s s e d tes tin g , b u t th o s e tes tin g a re re q u ired w h ile tes tin g a n y s o f tw a re o r a n
a p p lic a tio n .

Smoke Testing

Sanity Testing

Regression Testing

User Acceptance Testing

Exploratory Testing

Adhoc Testing

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Security Testing

Globalization Testing

Le t's u n d ers ta n d th o s e typ e s o f te s tin g o n e b y o n e:

In smoke testing, w e w ill tes t a n a p p lic a tio n 's b a s ic a n d c ritic a l fea tu res b efo re d o in g o n e
ro u n d o f d e ep a n d rig o ro u s te s tin g .

Or b e fo re c h e c k in g a ll p o s s ib le p o s itiv e a n d ne g a tive v a lu es is k n o w n a s smoke testing .


A n a lyz in g th e w o rk flo w o f th e a p p lic a tio n 's c o re a n d m a in fu n c tio n s is th e m a in o b jec tiv e
o f p erfo rm in g th e s m o k e tes tin g .

Sanity Testing

It is u s ed to en s u re th a t a ll th e b u g s h a v e b ee n fix ed a n d n o a d d ed is s u es c o m e in to
ex is te n c e d u e to th es e c h a n g es . S a n ity tes tin g is u n s c rip ted , w h ic h m e a n s w e c a n n o t
d o c u m en te d it. It c h e c k s th e c o rre c tn es s o f th e n e w ly a d d ed fea tu re s a n d c o m p o n e n ts .

Regression Testing

R e g res s io n te s tin g is th e m o s t c o m m o n ly u s ed typ e o f s o ftw a re te s tin g . H ere, th e


term regression im p lie s th a t w e h a v e to re-te s t th o s e p a rts o f a n u n a ffe c ted a p p lic a tio n .

R e g res s io n tes tin g is th e m o s t s u ita b le te s tin g fo r a u to m a tio n to o ls . A s p er th e p ro je c t


typ e a n d ac c e s s ib ility o f res o u rc es , re g res s io n tes tin g c a n b e s im ila r to Retesting .

W h e n ev er a b u g is fixe d b y th e d ev elo p ers a n d th e n te s tin g th e o th e r fea tu res o f th e


a p p lic a tio n s th a t m ig h t b e s im u la ted b ec a u s e o f th e b u g fix in g is k n o w n as regression
testing.

In o th e r w o rd s , w e c a n s a y th a t w h e n ev er th ere is a n e w re lea s e fo r s o m e p ro jec t, th e n w e


c a n p erfo rm R eg re s s io n T es tin g , a n d d u e to a n ew fe a tu re m a y a ffec t th e o ld fea tu res in
th e ea rlier re le a s es .

User Acceptance Testing

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

T h e U s e r a c c e p ta n c e tes tin g (U A T ) is d o n e b y th e in d ivid u a l tea m k n o w n a s d o m a in


ex p e rt/ c u s to m e r o r th e c lien t. A n d k no w in g th e a p p lic a tio n b e fo re a c c ep tin g th e f in a l
p ro d u c t is c a lle d a s user acceptance testing .

In u s er a c c ep ta n c e tes tin g , w e a n a lyze th e b u s in es s s c e n a rio s , a n d re a l-tim e s c en a rio s o n


th e d is tin c t e n viro n m en t c a lled th e UAT environment. In th is te s tin g , w e w ill tes t th e
a p p lic a tio n b efo re U A I fo r c u s to m er a p p ro va l.

Exploratory Testing

W h e n ev er th e req u ire m e n t is m is s in g , e a rly itera tio n is req u ired , a n d th e tes tin g te a m h a s


ex p e rie n c e d te s te rs w h e n w e h a v e a c ritic a l a p p lic a tio n . N ew te s t e n g in ee r en tere d in to
th e tea m th e n w e g o fo r th e exploratory testing.

T o ex ec u te th e ex p lo ra to ry te s tin g , w e w ill f irs t g o th ro u g h th e ap p lic a tio n in a ll p o s s ib le


w a ys , m a k e a tes t d o c u m en t, u n d ers ta n d the flo w o f th e a p p lic a tio n , a n d th en tes t th e
a p p lic a tio n .

Adhoc Testing

T es tin g th e a p p lic a tio n ra n d o m ly a s s o o n a s th e b u ild is in th e c h e c k e d s e q u e n c e is


k n o w n a s Adhoc testing.

It is a ls o c a lled Monkey testing and Gorilla testing . In A d h o c te s tin g , w e w ill c h e c k th e


a p p lic a tio n in c o n tra d ic tio n o f th e c lie n t's re q u irem en ts ; th a t's w h y it is a ls o k n o w n
a s negative testing.

W h e n th e en d -u s er u s in g th e a p p lic a tio n c a s u a lly, a n d h e /s h e m a y d ete c t a b u g . S till, th e


s p e c ia lize d tes t en g in e er u s es th e s o ftw a re th o ro u g h ly , s o h e/ s h e m a y n o t id e n tify a
s im ila r d etec tio n .

Security Testing

It is a n e s s en tia l p a rt o f s o ftw a re tes tin g , u s ed to d eterm in e th e w e a k n es s , ris k s , o r


th re a ts in th e s o ftw a re a p p lic a tio n .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

T h e ex ec u tio n o f s ec urity tes tin g w ill h e lp u s to a vo id th e n a s ty a tta c k fro m o u ts id e rs a n d


en s u re o u r s o ftw a re a p p lic a tio n s ' s e c u rity.

In o th er w o rd s , w e c a n s a y th a t s ec u rity te s tin g is m a in ly u s e d to d e fin e th a t th e d a ta w ill


b e s a fe a n d e n d u re th e s o ftw a re 's w o rk in g p ro c e s s .

Globalization Testing

A n o th e r typ e o f s o ftw a re te s tin g is Globalization testing. G lo b a liz a tio n tes ting is u s ed to


che ck th e d ev elo p ed s o ftw a re fo r m u ltip le la n g u a g es or n o t. H e re , th e
w o rd s globalization m e a n s e n lig h te n in g the a p p lic a tio n o r s o f tw a re fo r va rio u s la n g u a g es .

G lo b a liz a tio n te s tin g is u s ed to m a k e s u re th a t th e a p p lic atio n w ill s u p p o rt m u ltip le


la n g u a g e s a n d m u ltip le fe a tu res .

In p res e n t s c en a rio s , w e c a n s ee th e e n h a n c em e n t in s e ve ra l te c h n o lo g ie s a s th e
a p p lic a tio n s a re p re p a red to b e u s e d g lo b a lly.

Conclusion

In the tu to ria l, w e h a v e d is c u s s ed v a rio u s typ e s o f s o ftw a re tes tin g . B u t th ere is s till a lis t
o f m o re th a n 1 0 0 + c a teg o ries o f te s tin g . H o w e ve r, e a c h k in d o f tes tin g is n o t u s e d in all
typ e s o f p ro jec ts .

W e h a ve d is c u s s e d th e m o s t c o m m o n ly u s e d typ e s o f So ftw are T es tin g lik e black-box


testing, white box testing, functional testing, non-functional testing, regression testing,
Adhoc testing, etc.

A ls o , th ere a re a ltern a te c la s s ific a tio n s o r p ro c e s s es u s e d in d ive rs e o rg a n iz a tio n s , b u t


th e g e n era l c o n c ep t is s im ila r a ll o ve r th e p la c e.

T h es e te s tin g typ e s , p ro c e s s es , a n d e xe c u tio n a p p ro a c h es k ee p c h a n g in g w h en th e


p ro jec t, re q u irem en ts , a n d s c o p e c h a n g e .

Automation of testing Pros and cons

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Pros of Automated Testing:


A u to m a ted T e s tin g h a s th e fo llo w in g a d va n ta g e s :
A u to m a ted te s tin g im p ro ve s the c o ve ra g e o f tes tin g a s a u to m a ted ex ec u tio n o f tes t
c a s e s is fa s ter th a n m a n u a l e xe c u tio n .
A u to m a ted te s tin g re d u c es th e d e p e n d a b ility o f tes tin g o n th e a v a ila b ility o f th e tes t
en g in ee rs .
A u to m a ted tes tin g p ro vid e s ro u n d th e c lo c k c o v era g e a s a u to m a ted te s ts c a n b e ru n
a ll tim e in 2 4 *7 e n viro n m en t.
A u to m a ted tes tin g ta k es fa r le s s res o u rc es in ex ec u tio n a s c o m p a re d to m a n u a l
tes tin g .
It h e lp s to tra in th e tes t e n g in e ers to in c re a s e th e ir k n o w le d g e b y p ro d u c in g a
rep o s ito ry o f d iffe re n t tes ts .
It h elp s in te s tin g w h ic h is no t p o s s ib le w ith o u t a u to m a tio n s u c h a s re lia b ility te s tin g ,
s tre s s te s tin g , lo a d a n d p erfo rm a n c e tes tin g .
It in c lu d es a ll o th er a c tiv itie s lik e s elec tin g th e rig h t p ro d u c t b u ild , g en e ra tin g th e rig h t
tes t d a ta a n d an a lyz in g th e re s u lts .
It a c ts a s tes t d a ta g en e ra to r a n d p ro d u c es m a x im u m te s t d a ta to c o ve r a la rg e
n u m b er o f in p u t a n d ex p e c te d o u tp u t fo r re s u lt c o m p a ris o n .
A u to m a ted te s tin g h a s les s c h a n c es o f e rro r h en c e m o re relia b le.
A s w ith a u to m a te d tes tin g te s t en g in e ers h a ve free tim e a n d c a n fo c u s o n o th er
c re a tiv e ta s k s .
Cons of Automated Testing :A u to m a te d T es tin g h a s th e fo llo w in g d is a d v a n ta g es :
A u to m a ted te s tin g is ve ry m u c h ex p e n s ive th a n th e m a n u a l te s tin g .
It a ls o b e c o m e s in c o n ve n ien t a n d b u rd e n s o m e a s to d e c id e w h o w o u ld a u to m a te a n d
w h o w o u ld tra in .
It h a s lim ited to s o m e o rg a n is a tio n s a s m a n y o rg a n is a tio n s no t p re fe r tes t a u to m a tio n .
A u to m a ted te s tin g w o u ld a ls o req u ire a d d itio n a lly train e d a n d s k ille d p e o p le.
A u to m a ted tes tin g o n ly re m o ve s th e m ec h a n ic a l e xe c u tio n o f tes tin g p ro c es s , b u t
c re a tio n o f te s t c a s es s till re q u ired tes tin g p ro fes s io n a ls .

Selenium
Introduction
S ele n iu m is o n e o f th e m o s t w id e ly u s ed o p en s o u rc e W e b U I (U s er In terfa c e) au to m a tio n
tes tin g s u ite .It w a s o rig in a lly d ev elo p ed b y J a s o n H u g g in s in 2 0 0 4 a s a n in tern a l to o l a t

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

T h o u g h t W o rk s . S e le n iu m s u p p o rts a u to m a tio n a c ro s s d iffe re n t b ro w s ers , p la tfo rm s a n d


p ro g ra m m in g la n g u a g e s .

S ele n iu m c a n b e e a s ily d ep lo yed o n p la tfo rm s s u c h a s W in d o w s , L in u x , S o la ris a n d


M a c in to s h . M o reo ve r, it s u p p o rts O S (O p era tin g S ys te m ) f o r m o b ile a p p lic a tio n s lik e iO S ,
w ind o w s m o b ile a n d a n d ro id .

S ele n iu m s u p p o rts a va riety o f p ro g ra m m in g la n g u a g e s th ro u g h th e us e o f d riv ers


s p e c ific to e a c h La n g u a g e .

La n g u a g e s s u p p o rte d b y S ele n iu m in c lu d e C # , J a v a , P erl, PH P , P yth o n a n d R u b y.

C u rren tly, S e le n iu m W e b d riv er is m o s t p o p ula r w ith J a v a a n d C # . S elen iu m tes t s c rip ts


c a n b e c o d ed in a n y o f th e s up p o rte d p ro g ra m m in g la n g u a g es a n d c a n b e ru n d irec tly in
m o s t m o d ern w eb b ro w s e rs . B ro w s ers s u p p o rte d b y S e le n iu m in c lud e In tern et E xp lo rer,
M o z illa F iref o x , G o o g le C h ro m e a n d S a fa ri.

S ele n iu m c a n b e u s ed to a u to m a te f un c tio n a l te s ts a n d c a n b e in teg ra te d w ith


a u to m a tio n tes t to o ls s u c h a s Maven, Jenkins, & Docker to a c h iev e c o n tin u o u s tes tin g . It
c a n a ls o b e in te g ra te d w ith to o ls s u c h a s TestNG, & JUnit fo r m a n a g in g tes t c a s es a n d
g e n era tin g re p o rts .

Selenium Features

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

S ele n iu m is a n o p en s o u rc e a n d p o rta b le W eb te s tin g F ra m e w o rk .

S ele n iu m ID E p ro vid es a p la yb a c k a n d rec o rd f ea tu re fo r a u th o rin g te s ts w ith o u t th e


n ee d to lea rn a tes t s c rip tin g la n g u a g e .

It c a n b e c o n s id ered a s th e le a d in g c lo u d -b a s e d te s tin g p la tfo rm w h ic h h elp s tes ters


to rec o rd th e ir a c tio n s and e xp o rt th em as a reu s a b le s c rip t w ith a
s im p le-to -u n d e rs ta n d a n d e a s y-to -u s e in terfa c e.

S ele n iu m s u p p o rts v a rio u s o p e ra tin g s ys tem s , b ro w s e rs a n d p ro g ra m m in g la n g u a g e s .


F o llo w in g is th e lis t:

P ro g ra m m in g L a n g u a g e s : C # , J a v a , P yth o n , P H P, R u b y, P e rl, a n d J a v a S c rip t

O p era tin g S ys te m s : A n d ro id , iO S , W in d o w s , Lin u x, M a c , S o la ris .

B ro w s ers : G o o g le C h ro m e , M o zilla F irefo x, In te rn e t E xp lo rer, E d g e , O p e ra , S a fa ri,


etc .

It a ls o s u p p o rts p a ra lle l te s t ex ec u tio n w h ic h re d u c e s tim e a n d in c rea s e s th e


ef fic ien c y o f tes ts .

S ele n iu m c a n b e in teg ra te d w ith fra m e w o rk s lik e A n t a n d M a ve n fo r s o u rc e c o d e


c o m p ilatio n .

S ele n iu m c a n a ls o b e in te g ra te d w ith tes tin g fra m e w o rk s lik e T e s tN G fo r a p p lic a tio n


tes tin g a n d g e n era tin g rs e p o rts .

S ele n iu m re q u ires fe w e r res o u rc es a s c o m p a red to o th e r a u to m a tio n te s t to o ls .

W e b D rive r A P I h a s b ee n ind u lg e d in s ele n iu m w h ic h is o n e o f th e m o s t im p o rta n t


m o d ific a tio ns d o n e to s e le n iu m .

S ele n iu m w e b d riv er d o e s n o t re q u ire s e rve r in s ta lla tio n , tes t s c rip ts in te ra c t d irec tly
w ith th e b ro w s e r.

S ele n iu m c o m m a nd s a re c a teg o rize d in te rm s o f d iffe re n t c la s s es w h ic h m a k e it


ea s ie r to u n d e rs ta n d a n d im p le m e n t.

JavaScript testing
J a va S c rip t tes tin g is a c ru c ia l p a rt o f the s o ftw a re d e ve lo p m en t p ro c es s th a t h elp s e n s u re
th e q u a lity a n d relia b ility o f c o d e. T h e fo llo w in g a re th e k ey c o m p o n en ts o f J a va S c rip t
tes tin g :
Test frameworks: A te s t fra m ew o rk p ro vid es a s tru c tu re f o r w ritin g a n d o rg a n iz in g tes ts .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

S o m e p o p u la r J a va S c rip t te s t f ra m ew o rk s in c lu d e J es t, M o c h a , a n d J a s m in e.
Assertion libraries: A n a s s e rtio n lib ra ry p ro v id es a s e t o f fu n c tio n s th a t a llo w d ev elo p ers
to w rite a s s ertio n s a b o u t th e ex p e c ted b eh a v io r o f th e c o d e . F o r e xa m p le , a n a s s ertio n
m ig h t c h ec k th a t a c erta in fu n c tio n retu rn s th e e xp ec te d res u lt.
Test suites: A tes t s u ite is a c o llec tio n o f re la te d te s ts th a t a re g ro u p e d to g eth e r. T h e
p u rp o s e o f a tes t s u ite is to tes t a s p ec if ic a s p ec t o f th e c o d e in is o la tio n .
Test cases: A te s t c a s e is a s in g le tes t th a t v erifies a s p e c ific a s p ec t o f th e c o d e . F o r
ex a m p le, a tes t c a s e m ig h t c h e c k th a t a fu n c tio n b eh a v es c o rrec tly w h en g ive n a c e rta in
in p u t.
Test runners: A te s t ru n n e r is a to o l th a t ru n s th e te s ts a n d p ro vid es f ee d b a c k o n th e
res u lts . T e s t ru n n ers typ ic a lly p ro vid e a rep o rt o n w h ic h tes ts p a s s ed a nd w h ic h tes ts
fa iled .
Continuous Integration (CI): C I is a s o f tw a re d e ve lo p m e n t p ra c tic e w h ere d ev elo p ers
in te g ra te c o d e in to a s h a red re p o s ito ry fre q u en tly. B y u s in g C I, d ev elo p e rs c a n c a tc h
is s u es ea rly a n d a vo id in te g ra tio n p ro b lem s .
T h e g o a l o f J a va S c rip t tes tin g is to c a tc h b u g s a n d d efe c ts ea rly in th e d e ve lo p m en t c yc le,
b e fo re th ey b ec o m e b ig g er p ro b lem s a n d im p a c t th e q u a lity o f th e s o ftw a re . T es tin g a ls o
h elp s to e n s u re th a t th e c o d e b eh a v es a s e xp ec ted , e ve n w he n c h a n g es a re m a d e in th e
fu tu re .
T h ere a re d if feren t typ es o f te s ts th a t c a n b e p e rfo rm e d in J a va S c rip t, in c lu d in g u n it te s ts ,
in te g ra tio n te s ts , a n d en d -to -e n d tes ts . Th e c h o ic e o f w h ic h tes ts to w rite d ep en d s o n th e
s p e c ific req u ire m e n ts a n d g o a ls o f th e p ro jec t.

Testing backend integration points


T h e te rm b a c k en d g en era lly refers to server-side deployment. H e re th e p ro c es s is
e n tire ly h a p p en in g in th e b a c k e n d w h ic h is n o t s h o w n t o th e u s er o n ly th e ex p ec ted
re s u lts w ill b e s h o w n to th e u s e r. In e ve ry w eb a p p lic a t io n , th ere w ill b e a b a c k en d
la n g u a g e t o a c c o m p lis h th e ta s k .
F o r E x a m p le, w h ile u p lo a d in g th e d e ta ils o f t h e s tu d en t s in t h e d a t a b a s e , th e
d a ta b a s e w ill s to re a ll t h e d et a ils . W h e n th e re is a n ee d to d is p la y th e d e ta ils o f t h e
s tu d en t s , it w ill s im p ly fetc h a ll th e d e ta ils a n d d is p la y t h em . H e re , it w ill s h o w o n ly
th e re s u lt , n o t th e p ro c es s a n d h o w it fe tc h e s t h e d et a ils .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

What is Backend Testing?

B a c k en d T e s tin g is a te s tin g m e th o d th a t c h e c k s t h e d a ta b a s e o r s e rve r-s id e o f th e


w e b a p p lic a t io n . T h e m a in p u rp o s e o f b a c k e n d t es tin g is to c h e c k th e a p p lic a tio n
la y e r a n d t h e d a ta b a s e la y e r. It w ill fin d a n erro r o r b u g in th e d a ta b a s e o r
s e rve r-s id e.

F o r im p le m e n tin g b a c k e n d t es t in g , th e b a c k e n d t es t en g in e er s h o u ld a ls o h a ve
s o m e k n o w le d g e a b o u t t h a t p a rtic u la r s e rv er-s id e o r d a ta b a s e la n g u a g e . It is a ls o
k n o w n a s Database Testing.
Importance of Backend Testing: B a c k e n d t es t in g is a m u s t b ec a u s e a n y th in g
w ro n g o r erro r h a p p en s a t th e s erv er-s id e , it w ill n o t fu rth e r p ro c ee d w it h t h a t ta s k
o r t h e o u t p u t w ill g e t d iffe re d o r s o m e tim e s it w ill a ls o c a u s e p ro b le m s s u c h a s
d a ta lo s s , d e a d lo c k , et c .,

Types of Backend Testing

T h e fo llo w in g a re th e d iff eren t typ es o f b a c k e n d tes tin g :

Structural Testing
Functional Testing
Non-Functional Testing
L et’ s d is c u s s e a c h o f t h es e ty p es o f b a c k e n d tes t in g .

1. Structural Testing
S tru c t u ra l tes t in g is t h e p ro c e s s o f va lid a t in g a ll th e elem e n ts th a t a re p res e n t
in s id e t h e d a ta re p o s ito ry a n d a re p rim a rily u s ed fo r d a ta s to ra g e. It in vo lve s
c h ec k in g th e o b jec ts o f fro n t-en d d ev elo p m en ts w ith t h e d a ta b a s e m a p p in g
o b jec ts .

Types of Structural Testing: T h e fo llo w in g a re th e d ifferen t ty p e s o f s tru c tu ra l

te s tin g :

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

a) Schema Testing: In th is S c h e m a T e s tin g , th e tes t er w ill c h e c k fo r th e c o rre c t ly

m a p p ed o b jec ts . T h is is a ls o k n o w n a s mapping testing. It e n s u res w h e th er th e


o b jec ts o f t h e fro n t -e n d a n d th e o b jec ts o f th e b a c k -e n d a re c o rrec tly m a tc h ed o r
m a p p ed . It w ill m a in ly fo c u s o n s c h e m a o b jec ts s u c h a s a t a b le, v ie w , in d ex es ,
c lu s te rs , e tc ., In th is te s tin g , th e t es t er w ill fin d th e is s u e s o f m a p p ed o b je c t s lik e
ta b le , vie w , e tc .,
b) Table and Column Testing: In th is , it en s u res t h a t th e ta b le a n d c o lu m n p ro p e rtie s

a re c o rrec tly m a p p e d .
It en s u res w h e th e r th e ta b le a n d th e c o lu m n n a m e s a re c o rrec tly m a p p e d o n b o th
th e fro n t-en d s id e a n d s erve r-s id e .
It v a lid a te s th e d a ta ty p e o f t h e c o lu m n is c o rrec tly m en t io n ed .
It e n s u re s th e c o rrec t n a m in g o f th e c o lu m n va lu es o f th e d a ta b a s e.
It d et ec ts t h e u n u s ed ta b le s a n d c o lu m n s .
It va lid a t es w h et h er th e u s ers a re a b le t o g iv e th e c o rre c t in p u t a s p er th e
re q u ire m en t .
F o r e xa m p le, if w e m en tio n th e w ro n g d a ta t y p e fo r th e c o lu m n o n t h e s erve r-s id e
w h ic h is d iffe re n t fro m th e fro n t -en d th e n it w ill ra is e a n erro r.

c) Key and Indexes Testing: In th is , it va lid a t es th e k ey a n d in d e xe s o f th e c o lu m n s .

It e n s u re s w h e th er th e m e n tio n ed k e y c o n s tra in ts a re c o rrec tly p ro vid e d . F o r


e xa m p le , P rim a ry K ey fo r th e c o lu m n is c o rrec tly m en tio n e d a s p er t h e g ive n
re q u ire m en t .
It e n s u re s th e c o rrec t refe ren c e s o f F o re ig n K e y w it h th e p a ren t ta b le .
It c h ec k s th e len g th a n d s iz e o f t h e in d e xe s .
It en s u res t h e c rea t io n o f c lu s tered a n d n o n -c lu s t ered in d e xe s fo r t h e ta b le a s p e r
th e re q u ire m e n t.
It v a lid a te s th e n a m in g c o n ve n tio n s o f th e K e y s .
d) Trigger Testing: It e n s u res th a t th e ex ec u te d trig g ers a re fu lfillin g th e re q u ired

c o n d itio n s o f th e D M L tra n s a c tio n s .


It va lid a t es w h e th e r th e t rig g e rs m a k e th e d a ta u p d a t es c o rrec tly w h e n w e h a ve
e xe c u te d th e m .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

It c h ec k s th e c o d in g c o n v en tio n s a re fo llo w e d c o rre c t ly d u rin g t h e c o d in g p h a s e o f


th e trig g e rs .
It e n s u re s th a t th e trig g e r fu n c tio n a lit ies o f u p d a t e, d elete , a n d in s ert.
e) Stored Procedures Testing: In th is , th e te s ter c h e c k s fo r th e c o rrec tn e s s o f th e

s to re d p ro c e d u re re s u lts .
It c h e c k s w h et h er th e s t o re d p ro c ed u re c o n t a in s t h e va lid c o n d itio n s fo r lo o p in g
a n d c o n d itio n a l s t a te m e n ts a s p e r th e req u ire m e n t.
It v a lid a te s th e e xc ep tio n a n d e rro r h a n d lin g in th e s to re d p ro c e d u re.
It d et ec ts t h e u n u s ed s to re d p ro c e d u re.
It v a lid a te s th e c u rs o r o p e ra tio n s .
It v a lid a te s w h e th e r t h e T R IM o p era t io n s a re c o rrec tly a p p lie d o r n o t.
It e n s u re s th a t t h e req u ire d trig g ers a re im p lic itly in vo k ed b y ex ec u tin g th e s to red
p ro c ed u re s .
f) Database Server Validation Testing: It va lid a te s th e d a ta b a s e c o n fig u ra tio n
d eta ils a s p e r th e req u ire m e n ts .
It v a lid a te s th a t th e tra n s a c t io n s o f t h e d a ta a re m a d e a s p e r t h e req u irem e n ts .
It v a lid a te s th e u s e r’ s a u t h en t ic a t io n a n d a u th o riz a tio n .
F o r E xa m p le , If w ro n g u s er a u th e n tic a tio n is g ive n , it w ill ra is e a n e rro r.

2 . F u n c tio n a l T e s tin g

F u n c tio n a l T es t in g is t h e p ro c e s s o f v a lid a tin g th a t th e tra n s a c t io n s a n d


o p e ra tio n s m a d e b y th e e n d -u s ers m e et th e re q u ire m en ts .

Types of Functional Testing: T h e fo llo w in g a re t h e d ifferen t ty p es o f fu n c tio n a l

te s tin g :
a) Black Box Testing:
B la c k B o x T e s tin g is th e p ro c es s o f c h ec k in g th e fu n c tio n a litie s o f th e in te g ra tio n
o f th e d a t a b a s e .
T h is t es t in g is c a rrie d o u t a t th e ea rly s ta g e o f d ev elo p m en t a n d h en c e It is ve ry
h e lp fu l to re d u c e erro rs .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

It c o n s is ts o f va rio u s te c h n iq u e s s u c h a s b o u n d a ry a n a ly s is , eq u iv a len t p a rtit io n in g ,


a n d c a u s e-e ffe c t g ra p h in g .
T h e s e t ec h n iq u es a re h elp fu l in c h e c k in g t h e fu n c tio n a lity o f th e d a ta b a s e.
T h e b e s t e xa m p le is th e U s er lo g in p a g e . If t h e e n te re d u s e rn a m e a n d p a s s w o rd
a re c o rrec t, It w ill a llo w t h e u s e r a n d red ire c t to th e n e xt p a g e.
b) White Box Testing:
W h ite B o x T es tin g is th e p ro c es s o f v a lid a tin g th e in t ern a l s tru c t u re o f th e
d a ta b a s e.
H e re , t h e s p e c ified d e ta ils a re h id d en fro m th e u s er.
T h e d a t a b a s e t rig g e rs , fu n c t io n s , v ie w s , q u e ries , a n d c u rs o rs w ill b e c h ec k e d in th is
te s tin g .
It v a lid a te s th e d a ta b a s e s c h e m a , d a t a b a s e ta b le , et c .,
H e re th e c o d in g erro rs in t h e trig g ers c a n b e ea s ily fo u n d .
E rro rs in t h e q u eries c a n a ls o b e h a n d le d in th is w h ite b o x te s tin g a n d h e n c e
in t ern a l e rro rs a re e a s ily elim in a t ed .

3. Non-Functional Testing
N o n -fu n c tio n a l te s tin g is t h e p ro c e s s o f p e rfo rm in g lo a d te s tin g , s tres s t es t in g , a n d
c h ec k in g m in im u m s y s t em req u ire m e n ts a re req u ire d to m e et th e re q u irem en ts . It
w ill a ls o d et ec t ris k s , a n d erro rs a n d o p tim iz e t h e p e rfo rm a n c e o f th e d a ta b a s e.

a) Load Testing:
L o a d te s tin g in v o lve s te s tin g t h e p erfo rm a n c e a n d s c a la b ility o f t h e d a ta b a s e .
It d et erm in e s h o w th e s o ft w a re b eh a v es w h en it is b e en u s ed b y m a n y u s e rs
s im u lta n e o u s ly .
It fo c u s e s o n g o o d lo a d m a n a g e m en t .
F o r ex a m p le, if t h e w e b a p p lic a t io n is a c c e s s ed b y m u lt ip le u s ers a t t h e s a m e tim e
a n d it d o e s n o t c re a te a n y tra ffic p ro b le m s th e n th e lo a d te s tin g is s u c c e s s fu lly
c o m p le te d .
b) Stress Testing:
S tres s T es tin g is a ls o k n o w n a s e n d u ra n c e te s tin g . S tres s t es tin g is a te s tin g
p ro c es s th a t is p erfo rm ed to id en t ify th e b re a k p o in t o f t h e s y s t em .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

In th is te s tin g , a n a p p lic a t io n is lo a d ed till t h e s t a g e th e s y s te m fa ils .


T h is p o in t is k n o w n a s a b rea k p o in t o f th e d a t a b a s e s y s te m .
It e va lu a te s a n d a n a ly ze s t h e s o ftw a re a ft er th e b rea k a g e o f s y s t em fa ilu re . In c a s e
o f erro r d e te c t io n , It w ill d is p la y th e erro r m es s a g es .
F o r ex a m p le, if u s e rs en t er t h e w ro n g lo g in in fo rm a tio n th e n it w ill th ro w a n erro r
m e ssage .

Backend Testing Process

1. Set up the Test Environment: W h en th e c o d in g p ro c es s is d o n e fo r th e


a p p lic a t io n , s e t u p th e te s t e n v iro n m e n t b y c h o o s in g a p ro p er te s tin g t o o l fo r
b a c k -en d te s tin g . It in c lu d es c h o o s in g t h e rig h t te a m to te s t th e e n tire b a c k -en d
e n viro n m en t w ith a p ro p er s c h e d u le. R ec o rd a ll t h e t es tin g p ro c e s s es in th e
d o c u m e n ts o r u p d a t e th em in s o ftw a re to k ee p tra c k o f a ll t h e p ro c es s e s .
2. Generate the Test Cases: O n c e th e t o o l a n d t h e te a m a re re a d y fo r th e te s tin g
p ro c es s , g e n era te th e t es t c a s es as p er th e b u s in e s s req u ire m e n ts . T h e
a u to m a t io n to o l its e lf w ill a n a ly ze th e c o d e a n d g en e ra t e a ll p o s s ib le te s t c a s es fo r

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

d ev elo p e d c o d e . If th e p ro c e s s is m a n u a l th en t h e te s te r w ill h a ve to w rit e th e


p o s s ib le te s t c a s es in th e t es tin g to o l t o en s u re t h e c o rre c tn e s s o f th e c o d e.
3. Execution of Test Cases: O n c e th e te s t c a s es a re g e n era ted , th e te s te r o r
Q u a lit y A n a ly s t n e ed s to e xe c u t e t h o s e te s t c a s e s in t h e d e ve lo p ed c o d e. If t h e t o o l
is a u to m a t ed , it w ill g en era t e a n d e xe c u te t h e te s t c a s e s b y it s elf. O t h erw is e , th e
te s te r n e ed s t o w rite a n d e xe c u t e t h o s e te s t c a s e s . It w ill h ig h lig h t w h e th e r th e
e xe c u tio n o f te s t c a s e s is e xe c u t ed s u c c e s s fu lly o r n o t.
4. Analyzing the Test Cases: A fte r th e e xe c u t io n o f te s t c a s e s , it h ig h lig h t s th e
re s u lt o f a ll t h e te s t c a s es w h eth e r it h a s b e en ex ec u ted s u c c e s s fu lly o r n o t . If a n
e rro r o c c u rs in th e te s t c a s e s , it w ill h ig h lig h t w h e re th e p a rtic u la r erro r is fo rm ed o r
ra is ed , a n d in s o m e c a s es , t h e a u to m a tio n to o l w ill g ive h in ts reg a rd in g th e is s u e s
to s o lv e th e erro r. T h e te s te r o r Q u a lity A n a ly s t s h o u ld a n a ly ze th e c o d e a g a in a n d
fix th e is s u e s if a n erro r o c c u rre d .
5. Submission of Test Reports: T h is is th e la s t s ta g e in th e te s tin g p ro c es s . H ere,
a ll t h e d et a ils s u c h a s w h o is res p o n s ib le fo r te s tin g , t h e t o o l u s ed in t h e te s tin g
p ro c es s , n u m b er o f tes t c a s e s g en e ra t ed , n u m b e r o f te s t c a s e s ex ec u ted
s u c c e s s fu lly o r n o t , t im e is t a k en to e xe c u te e a c h te s t c a s e, n u m b e r o f t im e s te s t
c a s es fa ile d , num b er of tim e s e rro rs o c c u rred . T h es e d e ta ils a re e ith e r
d o c u m e n ted o r u p d a t ed in t h e s o ft w a re . T h e rep o rt w ill b e s u b m it ted to th e
re s p e c t ive t ea m .

Backend Testing Validation

T h e fo llo w in g a re s o m e o f th e fa c to rs fo r b a c k e n d t es t in g va lid a t io n :

Performance Check: It va lid a tes th e p e rfo rm a n c e o f ea c h in d iv id u a l te s t a n d th e


s y s te m b eh a vio r.
Sequence Testing: B a c k e n d te s tin g v a lid a te s th a t t h e tes t s a re d is trib u ted
a c c o rd in g to th e p rio rity .
Database Server Validations: In t h is , en s u re s th a t t h e d a ta fed th ro u g h fo r th e
te s ts is c o rrec t o r n o t.

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Functions Testing: In th is , t h e tes t va lid a tes th e c o n s is t en c y in tra n s a c tio n s o f th e


d a ta b a s e.
Key and Indexes: In t h is , th e te s t e n s u re s th a t th e a c c u ra te c o n s tra in t a n d t h e ru les
o f c o n s tra in ts a n d in d e xe s a re fo llo w ed p ro p erly .
Data Integrity Testing: It is a tec h n iq u e in w h ic h d a ta is v erifie d in th e d a ta b a s e
w h e th e r it is a c c u ra te a n d fu n c t io n s a s p er re q u irem en ts .
Database Tables: It e n s u re s t h a t th e c rea t ed ta b le a n d th e q u e rie s fo r t h e o u tp u t
a re p ro vid in g th e e xp ec ted res u lt .
Database Triggers: B a c k e n d T e s tin g v a lid a tes t h e c o rrec tn e s s o f th e fu n c tio n a lity
o f trig g ers .
Stored Procedures: B a c k en d te s tin g v a lid a te s th e fu n c tio n s , re tu rn s ta t em e n ts ,
c a llin g th e o th e r e ve n ts , e tc ., a re c o rrec tly m e n tio n ed a s p er th e re q u ire m e n ts ,
Schema: B a c k en d t es tin g va lid a te s t h a t t h e d a ta is o rg a n iz ed in a c o rrec t w a y a s
p er th e b u s in es s req u ire m e n t a n d c o n firm s t h e o u tc o m e.

Tools For Backend Testing

T h e fo llo w in g a re s o m e o f th e t o o ls fo r b a c k e n d tes t in g :

1. LoadRunner:
It is a s tres s t es t in g to o l.
It is a n a u t o m a te d p erfo rm a n c e a n d t es t in g a u t o m a tio n to o l fo r a n a ly zin g s y s te m
b eh a v io r a n d th e p erfo rm a n c e o f t h e s y s tem w h ile g e n era tin g th e a c tu a l lo a d .
2. Empirix-TEST Suite:
It is a c q u ired b y O ra c le fro m E m p irix. It is a lo a d te s tin g t o o l.
It va lid a tes t h e s c a la b ility a lo n g w ith t h e fu n c t io n a lity o f th e a p p lic a tio n u n d e r
h e a vy t es t.
A c q u is it io n w ith th e E m p irix -T e s t s u ite m a y b e p ro v en e ffe c t ive to d e live r th e
a p p lic a t io n w ith im p ro ve d q u a lity .
3. Stored Procedure Testing Tools – LINQ:
It is a p o w e rfu l to o l th a t a llo w s th e u s e r t o s h o w th e p ro jec ts .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

It t ra c k s a ll th e O R M c a lls a n d d a t a b a s e q u eries fro m th e O R M .


It e n a b les t o s e e t h e p erfo rm a n c e o f th e d a t a a c c es s c o d e a n d e a s ily d e te rm in e
p erfo rm a n c e .
4. Unit Testing Tools – SQL Unit, DBFit, NDbUnit:
SQL UNIT: S Q L U n it is a U n it T e s tin g F ra m ew o rk fo r R e g res s io n a n d U n it T e s tin g o f
d a ta b a s e s t o red p ro c ed u re s .
DBFit: It is a p a rt o f F itN e s s e a n d m a n a g e s s to re d p ro c e d u res a n d c u s to m
p ro c ed u re s . A c c o m p lis h es d a t a b a s e te s tin g eit h er th ro u g h J a v a o r .N E T a n d
ru n s fro m th e c o m m a n d lin e .
NDbUnit: It p erfo rm s t h e d a ta b a s e u n it t es t fo r th e s y s t em e it h er b efo re o r a fte r
e xe c u tio n o r c o m p ile d t h e o th e r p a rt s o f th e s y s te m .
5. Data Factory Tools:
T h e s e t o o ls w o rk a s d a t a m a n a g e rs a n d d a ta g en e ra to rs fo r b a c k en d d a ta b a s e
te s tin g .
It is u s ed to v a lid a te th e q u eries w ith a h u g e s e t o f d a ta .
It a llo w s p e rfo rm in g b o th s tres s a n d lo a d te s tin g .
6. SQLMap:
It is a n o p e n -s o u rc e to o l.
It is u s ed fo r p erfo rm in g P en e tra tio n T e s tin g to a u to m a t e th e p ro c es s o f d ete c t io n .
P o w erfu l d ete c t io n o f e rro rs w ill lea d to effic ie n t te s tin g a n d re s u lt in th e e xp ec ted
b eh a v io r o f th e re q u irem en t s .
7.phpMyadmin:
T h is is th e s o ftw a re t o o l a n d it is w ritt en in P H P .
It is d ev elo p ed to h a n d le t h e d a ta b a s es a n d w e c a n e xe c u t e t es t q u e rie s to en s u re
th e c o rrec tn e s s o f th e re s u lt a s a w h o le a n d ev en fo r a s ep a ra t e t a b le .
8. Automatic Efficient Test Generator (AETG):
It m ec h a n ic a lly g en e ra t es t h e p o s s ib le t es t s fro m u s e r-d e fin e d req u ire m e n ts .
It is b a s e d o n a lg o rith m s t h a t u s e id e a s fro m s ta tis tic a l ex p e rim en t a l d es ig n t h eo ry
to re d u c e th e n u m b er o f te s ts n e ed ed fo r a s p ec ific le ve l o f te s t c o v era g e o f th e
in p u t t es t s p a c e.
9. Hammer DB:

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

It is a n o p e n -s o u rc e to o l fo r lo a d t es tin g .
It v a lid a te s th e a c tiv ity rep la y fu n c tio n a lit y fo r th e o ra c le d a ta b a s e .
It is b a s e d o n in d u s t ry s t a n d a rd s lik e T P C -C a n d T P C -H B e n c h m a rk s .
10. SQL Test:
S Q L T e s t u s es a n o p e n -s o u rc e tS Q Lt fra m e w o rk , view s , s t o re d p ro c ed u re s , a n d
fu n c t io n s .
T h is to o l s to re s d a ta b a s e o b je c t in a s e p a ra te s c h em a a n d if c h a n g es o c c u r t h ere
is n o n e ed fo r c lea rin g th e p ro c es s .
It a llo w s ru n n in g t h e u n it t es t c a s e s fo r th e S Q L s erve r d a ta b a s e.

Advantages of Backend Testing

T h e fo llo w in g a re s o m e o f th e b en e fits o f b a c k e n d tes t in g :

E rro rs a re e a s ily d e te c ta b le a t th e ea rlie r s t a g e .


It a v o id s d e a d lo c k c rea tio n o n t h e s e rv er-s id e .
W eb lo a d m a n a g em en t is e a s ily a c h ie ve d .
T h e fu n c t io n a lity o f th e d a ta b a s e is m a in ta in e d p ro p erly .
It red u c e s d a ta lo s s .
E n h a n c e s th e fu n c tio n in g o f t h e s y s tem .
It e n s u re s th e s e c u rity a n d p ro tec tio n o f th e s y s te m .
W h ile d o in g t h e b a c k en d te s tin g , th e e rro rs in th e U I p a rt s c a n a ls o b e d et ec te d a n d
re p la c e d .
C o v era g e o f a ll p o s s ib le t es t c a s e s .

Disadvantages of Backend Testing

T h e fo llo w in g a re s o m e o f th e d is a d va n ta g e s o f b a c k en d te s tin g :

G o o d d o m a in k n o w led g e is req u ired .


P ro vid in g t es t c a s e s fo r te s tin g req u ire s s p ec ia l a t te n tio n .
In ve s tm e n t in O rg a n iza tio n a l c o s t s is h ig h e r.

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

It t a k es m o re t im e to t es t.
If m o re te s tin g b e c o m e s fa ils t h en It w ill lea d to a c ra s h o n th e s erv er-s id e in s o m e
c a s es .
E rro rs o r U n ex p e c t ed re s u lts fro m o n e tes t c a s e s c e n a rio w ill a ffec t t h e o th e r
s y s te m res u lts a ls o .

Test-driven development

Test Driven Development (TDD) is s o ftw a re d e v e lo p m e nt a p p ro a c h in w hic h te st

c a se s a re d e v e lo p e d to sp e c ify a n d v a lid a te w h a t the c o d e w ill d o . In s im p le


te rm s, te s t c a s e s fo r e a c h f un c tio n a lity a re c re a te d a nd te ste d first a n d if th e
te st fa ils th e n the n e w c o d e is w ritte n in o rd e r to p a ss th e te s t a n d m a k in g c o d e
s im p le a nd b u g -fre e .
T e st-D riv e n D e v e lo p m e n t s ta rts w ith d e s ig n in g a n d d e v e lo p in g te sts fo r e v e ry
s m a ll fun c tio n a lity o f a n a p p lic a tio n . T D D fra m e w o rk in s truc ts d e v e lo p e rs to
w rite ne w c o d e o n ly if a n a u to m a te d te s t h a s fa ile d . T his a v o id s d up lic a tio n o f
c o d e . Th e TD D fu ll f o rm is Te s t-d riv e n d e v e lo p m e nt.

T h e s im p le c o n c e p t o f T D D is to w rite a n d c o rre c t th e fa ile d tes ts b ef o re w ritin g n ew c o d e


(b efo re d e ve lo p m en t). T h is h e lp s to a vo id d u p lic a tio n o f c o d e a s w e w rite a s m a ll a m o u n t

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

o f c o d e a t a tim e in o rd e r to p a s s tes ts . (T es ts a re n o thin g b u t req u ire m e n t c o n d itio n s


th a t w e n ee d to tes t to fu lf ill th e m ) .

T es t-D riv en d ev elo p m en t is a p ro c e s s o f d e ve lo p in g a n d ru n n in g a u to m a ted tes t b efo re


a c tu a l d ev elo p m e n t o f th e a p p lic a tio n . H e n c e , T D D s o m e tim es a ls o c a lle d a s Test First
Development.

How to perform TDD Test

F o llo w in g s te p s d e fine ho w to p e rfo rm T D D te st,

A d d a te st.
R u n a ll te sts a n d s e e if a n y ne w te s t fa ils.
W rite s o m e c o d e .
R u n te sts a n d R e fa c to r c o d e .
Repeat

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

TDD Vs. Traditional Testing

B e lo w is th e m a in d iffe re n c e b e tw e e n Te s t d riv e n d e v e lo p m e nt a n d tra d itio n a l


te stin g :

T D D a p p ro a c h is p rim a rily a s p e c if ic a tio n te c h niq u e . It e n su re s tha t y o u r s o urc e


c o d e is tho ro u g h ly te ste d a t c o n firm a to ry le v e l.

W ith tra d itio n a l te s ting , a su c c e ss fu l te st f in d s o ne o r m o re d e fe c ts . It is


s a m e a s TD D . W he n a te s t fa ils , yo u ha v e m a d e p ro g re ss b e c a us e yo u
k no w th a t yo u n e e d to re s o lv e the p ro b le m .
T D D e ns ure s tha t y o ur sy ste m a c tua lly m e e ts re q uire m e nts d e fine d fo r it. It
h e lp s to b uild yo u r c o n fid e nc e a b o u t y o ur s ys te m .
In T D D m o re fo c us is o n p ro d u c tio n c o d e th a t v e rifie s w h e the r te s tin g w ill
w o rk p ro p e rly. In tra d itio n a l te stin g , m o re fo c us is o n te s t c a s e d e s ig n .
W he th e r th e te st w ill s ho w th e p ro p e r/im p ro p e r e x e c u tio n o f th e
a p p lic a tio n in o rd e r to fulfill re q uire m e nts.
In T D D , y o u a c hie v e 1 0 0 % c o v e ra g e te st. E v e ry sing le lin e o f c o d e is te ste d ,
u nlik e tra d itio na l te stin g .
T he c o m b in a tio n o f b o th tra d itio n a l te stin g a n d T D D le a d s to th e im p o rta n c e
o f te s tin g the s yste m ra the r th a n p e rfe c tio n o f th e s ys te m .
In A g ile M o d e ling (A M ) , yo u sh o u ld “ te s t w ith a p urp o s e ” . Y o u sh o uld
k no w w hy y o u a re te s ting so m e th ing a n d w h a t le v e l its n e e d to b e te s te d .

What is acceptance TDD and Developer TDD

T h ere a re tw o lev els o f T D D

Acceptance TDD (ATDD): W ith A T D D yo u w rite a s in g le a c c ep ta n c e te s t. T h is tes t


fu lfills th e re q u irem en t o f th e s p e c ific a tio n o r s a tis fies th e b e h a vio r o f th e s ys tem .
A f te r th a t w rite ju s t en o u g h p ro d u c tio n /fu n c tio n a lity c o d e to fu lf ill th a t a c c ep ta n c e

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

tes t. A c c ep ta n c e tes t fo c u s e s o n th e o ve ra ll b eh a v io r o f th e s ys te m . A T D D a ls o
w a s k n o w n a s Behavioral Driven Development (BDD).
Developer TDD: W ith D e ve lo p e r T D D yo u w rite s in g le d e ve lo p e r te s t i.e . u n it tes t a n d
th en ju s t e n o u g h p ro d u c tio n c o d e to fu lfill th at te s t. T h e u n it tes t fo c u s es o n ev ery
s m a ll fu n c tio n a lity o f th e s y s te m . D ev elo p er T D D is s im p ly c alled a s TDD.T h e m a in
g o a l o f A T D D a n d T D D is to s p e c ify d e ta iled , e xe c u ta b le re q u irem en ts fo r yo u r
s o lu tio n o n a ju s t in tim e (J IT ) b a s is . J IT m e a n s ta k in g o n ly th o s e req u ire m e n ts in
c o n s id e ra tio n th a t a re n ee d e d in th e s ys tem . S o in c rea s e effic ie n c y.

REPL-driven development
R E P L-d riv en d e ve lo p m e nt (R e a d -E va l-P rin t Lo o p ) is a n in te ra c tiv e p ro g ra m m in g a p p ro a c h
th a t a llo w s d e ve lo p e rs to e xe c u te c o d e s n ip p ets a n d s ee th e ir res u lts im m ed ia tely. T h is

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

en a b les d e ve lo p ers to te s t th e ir c o d e q u ic k ly a n d itera tiv ely, a n d h elp s th em to


u n d e rs ta n d th e b eh a v io r o f th e ir c o d e a s th ey w o rk .
In a R E P L en viro n m en t, d ev elo p ers c a n typ e in c o d e s n ip p ets , a n d th e en v iro n m e n t w ill
im m e d ia te ly e va lu a te th e c o d e a n d re tu rn th e re s u lts . T h is a llo w s d e ve lo p ers to te s t s m a ll
b its o f c o d e a n d q u ic k ly s ee th e re s u lts , w ith o u t h a v in g to c rea te a fu ll-fle d g ed a p p lic a tio n .
R E P L-d riv en d e ve lo p m e n t is c o m m o n ly u s ed in d yn a m ic p ro g ra m m in g la ng u a g e s s uc h a s
P yth o n , J a va S c rip t, a n d R u b y. S o m e p o p u la r R E P L e n viro n m en ts in c lu d e th e P yth o n R E P L ,
N o d e.js R E P L , a n d IR B (Inte ra c tiv e R u b y).
B en e fits o f R E P L -d rive n d ev elo p m en t in c lu d e:
In c re a s ed e ffic ie nc y: T h e im m e d ia te f ee d b a c k p ro vid ed b y a R E P L e n viro n m en t a llo w s
d e ve lo p ers to tes t a n d m o d ify th eir c o d e q u ic k ly, w ith o u t h a vin g to ru n a fu ll-fled g e d
a p p lic a tio n .
Im p ro v ed u n d e rs ta n d in g : B y b e in g a b le to s e e th e res u lts o f c o d e s n ip p e ts im m e d ia te ly,
d e ve lo p ers c a n b e tter u n d e rs ta n d h o w th e c o d e w o rk s a n d id en tif y a n y is s u es e arly o n .
In c re a s ed c o lla b o ra tio n : R E P L-d riv en d ev elo p m en t m a k es it e a s y fo r d ev elo p e rs to s h a re
c o d e s n ip p e ts a n d c o lla b o ra te o n p ro jec ts , a s th e y c a n d e m o n s tra te th e b eh a v io r o f th e
c o d e q u ic k ly a n d ea s ily.
O v era ll, R E P L-d rive n d e ve lo p m e n t is a u s e fu l to o l fo r d ev elo p ers lo o k in g to im p ro v e th e ir
w o rk flo w a n d in c rea s e th e ir u n d e rs ta n d in g o f th e ir c o d e . B y p ro v id in g a n in tera c tiv e
en v iro n m e n t fo r tes tin g and ex p lo rin g co de , R E P L -d rive n d ev elo p m en t can h e lp
d e ve lo p ers to b e m o re p ro d u c tive a n d eff ic ien t.

Deployment of the system:


In D e vO p s , d ep lo ym en t s ys te m s a re res p o n s ib le fo r a u to m a tin g th e re le a s e o f s o ftw a re
u p d a te s a n d a p p lic a tio n s fro m d ev elo p m e n t to p ro d u c tio n . S o m e p o p u la r d e p lo ym en t
s ys tem s in c lu d e:
Jenkins: a n o p e n -s o u rc e a u to m a tio n s e rv er th a t p ro vid es p lu g in s to s u p p o rt b u ild in g ,
d e p lo yin g , a n d a u to m a tin g a n y p ro jec t.
Ansible: a n o p e n-s o u rc e p la tfo rm th at p ro vid es a s im p le w a y to a u to m a te s o ftw a re
p ro vis io n in g , c o n fig u ra tio n m a n a g em en t, a n d a p p lic a tio n d ep lo ym en t.
Docker: a p latfo rm th a t en a b le s d ev elo p ers to c rea te, d ep lo y, a n d ru n a p p lic a tio n s in
c o n ta in e rs .
Kubernetes: an o p en -s o u rc e s ys tem fo r a u to m a tin g d ep lo ym en t, s c a lin g , and
m a n a g em e n t o f c o n ta in eriz ed a p p lic atio n s .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

AWS Code Deploy: a fu lly m a n a g ed d e p lo y m e n t s e rv ic e th a t a u to m a te s s o ftw a re


d e p lo ym e n ts to a va riety o f c o m p u te s ervic e s s u c h a s A m a z o n E C 2 , A W S F a rg ate , a n d
o n -p rem is es s erv ers .
Azure DevOps: a M ic ro s o ft p ro d u c t th a t p ro v id e s a n en d -to -e nd D ev O p s s o lu tio n fo r
d e ve lo p in g , d e liv erin g , a n d d ep lo yin g a p p lic a tio n s o n m u ltip le p la tf o rm s .

Virtualization stacks
In D ev O p s , v irtu a liz a tio n refe rs to th e c rea tio n o f v irtu a l m a c h in es , c o n ta in e rs , o r
en v iro n m e n ts th a t a llo w m u ltip le o p e ra tin g s ys tem s to ru n o n a s in g le p h ys ic a l m a c h in e .
T h e fo llo w in g a re s o m e o f th e c o m m o n ly u s ed virtu a liza tio n s ta c k s in D e vO p s :
Docker: An o p en -s o u rc e p la tfo rm fo r a u to m a tin g th e d e p lo ym e n t, s c a lin g , and
m a n a g em e n t o f c o n ta in eriz ed a p p lic atio n s .
Kubernetes: A n o p e n -s o u rc e p la tfo rm f o r a u to m a tin g th e d ep lo ym en t, s c a ling , a n d
m a n a g em e n t o f c o n ta in eriz ed a p p lic atio n s , c o m m o n ly u s ed in c o n ju n c tio n w ith D o c k e r.
VirtualBox: A n o p en -s o u rc e v irtu a liz a tio n s o ftw a re th a t a llo w s m u ltip le o p e ra tin g s ys te m s
to ru n o n a s in g le p h ys ic a l m a c hin e .
VMware: A c o m m e rc ia l v irtu a liza tio n s o ftw a re th a t p ro v id e s a c o m p re h en s ive s u ite o f
to o ls fo r v irtu a liz a tio n , c lo u d c o m p u tin g , a n d n e tw o rk a n d s e c u rity m a n a g e m e n t.
Hyper-V: M ic ro s o ft's h yp e rv is o r te c h n o lo g y th a t en a b les virtu a liza tio n o n W in d o w s -b a s e d
s ys tem s .
T h es e v irtu a liza tio n s ta c k s p la y a c ru c ia l ro le in D e vO p s b y a llo w in g d ev elo p ers to b u ild ,
tes t, a n d d e p lo y a p p lic a tio ns in is o la te d , c o n s is te nt e n viro n m en ts , w h ile re d u c in g th e
c o s ts a n d c o m p le xitie s a s s o c ia ted w ith p h ys ic a l in f ra s tru c tu re .

code execution at the client


In D e vO p s , c o d e ex ec u tio n a t th e c lien t re fers to th e p ro c e s s o f ex ec u tin g c o d e o r s c rip ts
o n c lie n t d e vic es o r m a c h in es . T h is c a n b e a c c o m p lis h e d in s e ve ra l w a ys , in c lu d in g :
Client-side scripting languages: J a va S c rip t, H T M L , a n d C S S a re c o m m o n ly u s e d
c lien t-s id e s c rip tin g la n g u a g es th a t ru n in a w eb b ro w s er a n d a llo w d ev elo p ers to c re a te
d yn a m ic , in tera c tive w e b p a g es .
Remote execution tools: T o o ls s u c h a s S S H , T e ln e t, o r R em o te D es k to p P ro to c o l (R D P )
a llo w d ev elo p ers to re m o tely ex ec u te c o m m a n d s a n d s c rip ts o n c lien t d e vic es .
Configuration management tools: To o ls such as A n s ib le , P u p p et, or Chef use
a g e n t-b a s e d o r a g en tles s a rc h itec tu re s to m an a g e a n d c o n fig u re c lie n t d e vic e s , a llo w in g
d e ve lo p ers to e xe c u te c o d e a n d s c rip ts re m o tely.

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Mobile apps: M o b ile a p p lic a tio n s c a n a ls o ru n c o d e o n c lien t d ev ic es , a llo w in g


d e ve lo p ers to c rea te d yn a m ic , in tera c tive e xp erien c es fo r u s ers .
T h es e m eth o d s a re u s ed in D ev O p s to a u to m a te va rio u s ta s k s , s u c h a s a p p lic a tio n
d e p lo ym e n t, s o ftw a re up d a tes , o r s ys te m c o n fig u ra tio n , o n c lie n t d ev ic es . B y e xe c u tin g
c o d e o n th e c lie n t s id e , D ev O p s tea m s c a n im p ro ve th e s p e ed , re lia b ility, a n d s ec u rity o f
th eir s o ftw a re d elive ry p ro c e s s .

Puppet master and agents:

Puppet Architecture

P u p p et u s es m a s ter-s la ve or c lien t-s e rv er a rc h itec tu re. P uppet c lien t and s e rv er


in te rc o n n e c te d b y S S L, w h ic h is a s e c u re s o c k e t la yer. It is a m o d e l-d rive n s ys te m .

H ere, th e c lien t is ref erre d to a s a P u p p et a g en t/s la v e/ n o d e, a n d th e s e rv er is re ferred to


a s a P u p p e t m a s te r.

Le t's s e e th e c o m p o n e n ts o f P u p p e t a rc h itec tu re:

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Puppet Master

P u p p et m a s ter h a n d le s a ll th e c o n fig u ra tio n re la ted p ro c e s s in th e f o rm o f p u p p e t c o d e s .


It is a Lin u x b a s ed s ys te m in w h ic h p u p p e t m a s te r s o ftw a re is in s ta lled . T h e p u p p et
m a s te r m u s t b e in L in u x. It u s es th e p u p p e t a g e n t to a p p ly th e c o n f ig u ra tio n to n o d es .

T h is is th e p la c e w h e re S S L c e rtific a tes a re c h ec k ed a n d m a rk ed .

Puppet Slave or Agent

P u p p et a g en ts a re th e re a l w o rk ing s ys te m s a n d us e d b y the C lie n t. It is ins ta lled o n th e


c lien t m a c h in e a n d m ain ta in ed a n d m a n a g ed b y th e p u p p et m a s te r. T h e y h a ve a p u p p et
a g e n t s e rv ic e ru n n in g in s id e th em .

T h e a g e nt m a c hin e c a n b e c o n fig u red o n a ny o p era tin g s ys tem s u c h a s W in d o w s , Lin u x ,


S o la ris , o r M a c O S .

Config Repository

C o n fig rep o s ito ry is th e s to ra g e a rea w h e re a ll th e s erv ers a n d no des re la te d


c o n fig u ra tio n s a re s to re d , a n d w e c a n p u ll th es e c o n fig u ra tio n s a s p e r req u irem e n ts .

Facts

F a c ts a re th e k e y-v a lu e d a ta p a ir. It c o n ta in s in f o rm a tio n a b o u t th e n o d e o r th e m a s ter


m a c h in e. It rep re s en ts a p u p p et c lie n t s ta tes s u c h a s o p era tin g s ys te m , n e tw o rk in te rfa c e ,
IP a d d re s s , u p tim e , a n d w h eth er th e c lien t m a c h in e is v irtu a l o r n o t.

T h es e fa c ts are u s e d fo r d e term in in g th e p res e n t s ta te o f a n y a g e nt. C h a n g es o n a n y


ta rg et m a c h in e a re m a d e b a s e d o n fa c ts . P u p p e t's fa c ts a re p red efin e d a n d c u s to m ize d .

Catalog

T h e en tire c o n fig u ra tio n a n d m a n ifes t file s th a t a re w ritte n in P u p p e t a re c h a n g e d in to a


c o m p iled fo rm at. Th is c o m p iled fo rm a t is k no w n a s a c a ta lo g , a n d th e n w e c a n a p p ly th is
c a ta lo g to th e ta rg et m a c h in e.

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

T h e a b o ve im a g e p e rf o rm s th e fo llo w in g fu n c tio n s :

F irs t o f a ll, a n a ge n t n od e s e n d s fa c ts to th e m a ste r o r s e rv er a n d re q u e s ts fo r a c a ta lo g .

T h e m a ste r o r s e rv er c o m p ile s a n d re tu rn s th e c a ta lo g o f a n od e w ith th e h e lp o f so m e in form a tio n


a c c e s se d b y th e m a ste r.

T h en th e a g en t a p p lie s th e c a ta lo g to th e n od e b y c h e c k in g e v e ry re so u rc e m e n tio n e d in th e
c a ta lo g . If it id e n tifie s re so u rc e s th a t a re n o t in th e ir d e s ire d sta te , th e n m a k e s th e n ec e s sa ry
a d ju s tm e n ts to f ix th e m . O r, it d e te rm in e s in n o-o p m o d e , th e a d ju stm e n ts w o u ld b e re q u i re d to
re c on c ile th e c a ta lo g .

A n d fin a ll y, th e a g e n t s e n d s a re p o rt b a c k to th e m a ste r.

Puppet Master-Slave Communication

P u p p et m a s ter-s la ve c o m m u n ic a tes via a s e c u re en c ryp ted c ha n n e l th ro u g h th e S S L


(S e c u re S o c k et La ye r) . Let's s ee th e b elo w d ia g ra m to u n d ers ta n d th e c o m m u n ic a tio n
b e tw e en th e m a s te r a n d s la ve w ith th is c h a n n e l:

The above diagram depicts the following:

P u p p e t sla v e re q u e s ts fo r P u p pe t M a ste r C e rtific a te .

P u p p e t m a ste r se n ds th e M a s ter C e rtific a te to th e p u p pe t s la v e in re s po n s e to th e c lie n t re q u e s t.

P u p p e t m a ste r re qu e sts to th e P u p p e t s la v e fo r th e sl a v e c e rtific a te .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

P u p p e t sla v e s e n d s th e re q u e s te d s la v e c e rtif ic a te to th e p u p p e t m a ste r.

P u p p e t sla v e s e n d s a re qu e st fo r da ta to th e p u p p e t m a ste r.

F in a lly , th e m a s te r se n ds th e d a ta to th e p u p pe t s la v e a s p e r th e re q u e st.

Puppet Blocks

P u p p et p ro vid es th e flex ib ility to in teg ra te R e p o rts w ith third -p a rty to o ls u s in g P u p p et


A P Is .

Four types of Puppet building blocks are

R e s o u rc e s
C la s s e s
M a n ife s t
M o d ule s

Puppet Resources:

P u p p et R e s o u rc e s a re th e b uild in g b lo c k s o f Pu p p e t.

R e s o u rc e s are th e inbuilt functions th a t ru n a t the b a c k e nd to p erfo rm th e req u ire d


o p era tio n s in p up p e t.

Puppet Classes:

A c o m b in a tio n o f d iffe ren t res o urc es c a n b e g ro u p ed to g eth er in to a s in g le u n it c a lle d


c la s s .

Puppet Manifest:

M a n ife s t is a d irec to ry c o n ta in in g p u p p et D S L files . T h o s e file s h a ve a .p p ex ten s io n . T h e .


p p ex ten s io n s ta n d s fo r p u p p et p ro g ra m . T h e p up p e t c o d e c o n s is ts o f d ef in itio n s o r
d e c la ra tio n s o f P u p p e t C la s s e s .

Puppet Modules:

M o d ule s a re a c o llec tio n o f f ile s a n d d ire c to ries s u c h a s M a n ife s ts , C la s s d efin itio n s .


T h ey a re th e re-u s a b le a n d s h a ra b le u n its in P u p p e t.

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

F o r e xa m p le , th e M yS Q L m o d u le to in s ta ll a n d c o nf ig u re M yS Q L o r th e J e n k in s m o d u le to
m a n a g e J e n k in s , e tc ..

Ansible:

Ansible is s im p le o p e n s o u rc e IT en g in e w h ic h a u to m a te s a p p lic a tio n d e p lo ym e n t, in tra


s erv ic e o rc h es tra tio n , c lo u d p ro vis io n in g a n d m a n y o th er IT to o ls .

A n s ib le is ea s y to d ep lo y b e c a u s e it d o e s n o t us e a n y a g en ts o r c u s to m s ec u rity
in fra s tru c tu re.

A n s ib le u s e s p la yb o o k to d es c rib e a uto m a tio n jo b s , a n d p la yb o o k u s es ve ry s im p le


la n g u a g e i. e. YAML (It’ s a h u m a n -rea d a b le d a ta s eria liza tio n la n g u a g e & is c o m m o n ly
u s ed fo r c o n f ig u ra tio n files , b u t c o u ld b e u s e d in m a n y a p p lic a tio n s w h e re d a ta is b e in g
s to red )w h ic h is v ery ea s y fo r h u m a n s to u n d e rs ta n d , re a d a n d w rite. H e n c e th e a d va n ta g e
is th a t e ve n th e IT in f ra s tru c tu re s u p p o rt g u ys c a n re a d a n d u n d e rs ta n d the p la yb o o k a n d
d e b u g if n e ed ed (Y A M L – It is in h u m a n re a d a b le fo rm ).

A n s ib le is d e s ig n ed fo r m u lti-tier d e p lo ym e n t. A n s ib le d o e s n o t m a n ag e o n e s ys te m a t
tim e , it m o d els IT in fras tru c tu re b y d es c rib in g a ll o f yo u r s ys te m s a re in terrela ted . A n s ib le
is c o m p le te ly a g en tles s w h ic h m e a n s A n s ib le w o rk s b y c o n ne c tin g yo u r n o d es th ro u g h

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

s s h (b y d e fa u lt). B ut if yo u w an t o th e r m e th o d fo r c o n ne c tio n lik e K e rb ero s , A n s ib le g iv es


th a t o p tio n to yo u .

A f te r c o n n e c tin g to yo u r n o d es , A n s ib le p u s h es s m a ll p ro g ra m s c a lle d a s “ A n s ib le
M o d ule s ” . A n s ib le ru n s th a t m o d u le s o n yo u r n o d es a n d re m o ve s th e m w h en fin is h ed .
A n s ib le m a n a g es yo u r in v en to ry in s im p le te xt file s ( T he s e a re th e h o s ts file). A n s ib le
u s es th e h o s ts f ile w h ere o n e c a n g ro u p th e h o s ts an d c a n c o n tro l th e a c tio ns o n a
s p e c ific g ro u p in th e p la yb o o k s .

Sample Hosts File

T h is is th e c o n te n t o f h o s ts f ile −

# F ile n a m e: h o s ts
# D es c rip tio n : In v en to ry file fo r yo u r a p p lic a tio n . D efin es m a c h in e typ e a b c
n o d e to d e p lo y s p ec if ic a rtifa c ts
# D efin es m a c h in e typ e d ef n o d e to u p lo a d
m eta d a ta .

[a b c -n o d e ]
# s e rve r1 a n s ib le _h o s t = < ta rg et m a c h in e fo r D U d ep lo ym e n t> a n s ib le_ u s er = < A n s ib le
u s er> a n s ib le _c o n n e c tio n = s s h
s erv er1 a n s ib le_ h o s t = < yo u r h o s t n a m e> an s ib le _u s e r = < yo ur u n ix u s er>
a n s ib le_ c o n n ec tio n = s s h

[d ef-n o d e ]
# s e rve r2 a n s ib le _h o s t = < ta rg et m a c h in e fo r a rtifa c t u p lo a d >
a n s ib le_ u s er = < A n s ib le u s er> a n s ib le _c o n n e c tio n = s s h
s erv er2 a n s ib le_ h o s t = < ho s t> a n s ib le_ u s er = < u s e r> a n s ib le_ c o n ne c tio n = s s h

What is Configuration Management

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

C o n fig u ra tio n m a n a g e m e n t in te rm s o f A n s ib le m e a n s th a t it m a in ta in s c o n fig u ra tio n o f


th e p ro d u c t p erfo rm a n c e b y k ee p in g a re c o rd a n d up d a tin g d eta ile d in fo rm a tio n w h ic h
d e s c rib e s an e n te rp ris e ’ s h a rd w a re a n d s o ftw a re .

S u c h in fo rm a tio n typ ic a lly in c lu d e s th e ex a c t v ers io n s a n d u p d a tes th a t h a ve b e en


a p p lie d to in s ta lle d s o ftw a re p a c k a g es a n d th e lo c a tio n s a n d n etw o rk a d d re s s es o f
h a rd w a re d e vic e s . For e .g . If yo u w ant to in s ta ll th e new v ers io n
o f W e b L o g ic / W eb S p h ere s e rve r o n a ll o f th e m a c h in es p re s en t in yo u r en terp ris e, it is n o t
fe a s ib le fo r yo u to m a nu a lly g o a n d u p d a te e a c h a n d ev ery m a c h in e.

Y o u c a n in s ta ll W eb Lo g ic /W e b S p he re in o n e g o o n a ll o f yo u r m a c h in e s w ith A n s ib le
p la yb o o k s a nd in ve n to ry w ritte n in th e m o s t s im p le w a y. A ll yo u h a ve to d o is lis t o u t th e
IP a d d re s s es of yo u r node s in th e in v en to ry and w rite a p la yb o o k to in s tall
W e b L o g ic /W e b S p h ere. R u n th e p la yb o o k f ro m yo u r c o n tro l m a c h in e & it w ill b e in s ta lle d
o n a ll yo u r n o d e s .

Ansible Workflow

A n s ib le w o rk s b y c o n n ec tin g to yo u r n o d es a n d p u s h in g out a s m a ll p ro g ra m
c a lled Ansible modules to th e m . T h e n A n s ib le e xe c u ted th es e m o d u les an d rem o ve d
th em a f te r fin is h ed . Th e lib ra ry o f m o d u le s c a n res id e o n a n y m a c h in e , a n d the re a re n o
d a e m o n s , servers, o r databases req u ire d .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

In th e a b o ve im a g e, th e Management Node is th e c o n tro llin g n o d e th a t c o n tro ls th e en tire


ex ec u tio n o f the p la yb o o k . T h e inventory file p ro vid es th e lis t o f h o s ts w h ere th e A n s ib le
m o d ule s n e ed to b e ru n . T h e Management Node m a k es a n SSH c o n n ec tio n a n d ex ec u te s
th e s m all m o d u les o n th e h o s t's m a c h in e a n d in s ta ll th e s o ftw a re .

A n s ib le rem o v es th e m o d u le s o n c e th o s e a re in s ta lled s o ex p e rtly. It c o n n e c ts to th e h o s t


m a c h in e e xe c u tes th e in s tru c tio n s , a n d if it is s u c c es s f u lly in s ta lled , th e n re m o ve th a t
c o d e in w h ic h o n e w a s c o p ied o n the h o s t m a c h in e .

Terms used in Ansible

Terms Explanation

A n s ib le S e rv er It is a m a c h ine w h e re A n s ib le is in s ta lle d
a n d fro m w h ic h a ll ta s k s a n d p la yb o o k s
w ill b e ex ec ute d .

M o d u le s T h e m o d u le is a c o m m a n d o r s e t o f
s im ila r c o m m a n d s w h ic h is ex ec u te d o n
th e c lien t-s id e.

Task A ta s k is a s e c tio n w h ic h c o n s is ts o f a
s in g le p ro c e d u re to b e c o m p le ted .

R o le It is a w a y o f o rg a n izin g ta s k s a n d rela te d
files to b e la ter c a lled in a p la yb o o k .

Fa ct T h e in fo rm a tio n fe tc h ed fro m th e c lie n t


s ys tem fro m th e g lo b a l va ria b les w ith th e
g ath e r fa c ts o p era tio n .

In v en to ry A f ile c o n ta in in g th e d a ta reg a rd in g th e
A n s ib le c lien t-s erv er.

P lay It is th e e xe c u tio n o f th e p la yb o o k .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

H a n d ler T h e ta s k is c a lled o n ly if a n o tifier is


p re s en t.

N o tifie r T h e s ec tio n a ttrib u te d to a ta s k w h ic h


c a lls a ha n d ler if th e o utp u t is c h a n g e d .

Tag It is a n a m e s et to a ta s k th a t c a n b e u s e d
la te r o n to is s u e ju s t th a t s p ec ific ta s k o r
g ro u p o f jo b s .

Ansible Architecture

T h e A n s ib le o rc h e s tra tio n en g in e in tera c ts w ith a us e r w h o is w ritin g th e A n s ib le p la yb o o k


to ex ec u te th e A n s ib le o rc h es tra tio n a n d in tera c t a lo n g w ith th e s erv ic es o f p riv a te o r
p u b lic c lo u d a n d c o n fig u ra tio n m a n a g e m en t d a ta b a s e. Y o u c a n s ho w in th e b elo w
d ia g ra m , s u c h a s :

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Inventory

In v en to ry is lis ts o f n o d es o r h o s ts h a v in g th eir IP a d d re s s es , d a ta b a s e s , s erv ers , e tc .


w h ic h a re n eed to b e m a n a g e d .

API's

T h e A n s ib le A P I's w o rk s a s th e tra n s p o rt fo r th e p u b lic o r p riva te c lo u d s ervic es .

Modules

A n s ib le c o n n e c ted th e n o d e s a nd s p rea d o u t th e A n s ib le m o d u les p ro g ra m s . A n s ib le


ex ec u tes th e m o d u les a n d rem o v ed a fte r fin is h ed . T h e s e m o d u le s c a n re s id e o n a n y
m a c h in e; n o d a ta b a s e o r s e rv ers a re req uired h ere. Y o u c a n w o rk w ith th e c h o s e te xt
ed ito r o r a term in a l o r v ers io n c o n tro l s ys tem to k ee p tra c k o f th e c h a n g e s in th e c o n ten t.

Plugins

P lu g in s is a p ie c e o f c o d e tha t ex p e n d s th e c o re fu n c tio n a lity o f A n s ib le . T h ere a re m a n y


u s ef u l p lu g in s , a n d yo u a ls o c a n w rite yo u r o w n .

Playbooks

P la yb o o k s c o n s is t o f yo u r w ritte n c o d e, a n d th e y a re w ritte n in Y A M L fo rm a t, w h ic h
d e s c rib e s th e ta s k s a n d ex ec u te s th ro u g h th e A n s ib le . A ls o , y o u c a n lau n c h th e ta s k s
s yn c h ro n o u s ly a n d a s yn c h ro n o us ly w ith p la yb o o k s .

H o s ts

In th e A n s ib le a rc h itec tu re , h o s ts a re th e n o d e s ys te m s , w h ic h a re a u to m a te d b y A n s ib le ,
a n d a n y m a c h in e s u c h a s R e d H a t, Lin u x, W in d o w s , etc .

Networking

A n s ib le is u s e d to a u to m a te d iffe ren t n etw o rk s , a n d it u s es th e s im p le, s e c u re, a n d


p o w erfu l a g e n tle s s a u to m a tio n f ra m ew o rk f o r IT o p era tio n s a n d d e ve lo p m en t. It u s e s a

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

typ e o f d a ta m o d e l w h ic h s ep a ra ted fro m th e A ns ib le a u to m a tio n en g in e th a t s p a n s th e


d iff eren t h ard w a re q u ite e a s ily.

Cloud

A c lo u d is a n e tw o rk o f re m o te s erve rs o n w h ic h yo u c a n s to re , m a na g e, a n d p ro c es s th e
d a ta . T h es e s e rve rs a re h o s ted o n th e in tern et a n d s to rin g th e d a ta re m o te ly ra th er th a n
th e lo c a l s erve r. It ju s t lau n c h es th e re s o u rc e s a n d in s ta n c e s o n th e c lo u d , c o n n ec t th em
to th e s erve rs , a n d yo u h a ve g o o d k n o w le d g e o f o p era ting yo u r ta s k s rem o tely.

CMDB

C M D B is a typ e o f rep o s ito ry w h ic h a c ts a s a d a ta w a reh o u s e fo r th e IT in s ta lla tio n s .

Puppet Components

F o llo w in g a re th e k ey c o m p o ne n ts o f P u p p e t:

M a n ife s ts

M o d ule

R e s o u rc e

F a c to r

M -c o lle c tive

C a ta lo g s

C la s s

N o d es

Le t's u n d ers ta n d th e s e c o m p o n e n ts in d e ta il:

Manifests

P u p p et M a s ter c o n ta in s th e P u p p et S la v e's c o n fig u ra tio n d e ta ils , a n d th es e a re w ritten in


P u p p et's n a tive la n g u a g e .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

M a n ife s t is n o th ing b u t th e file s s p e c ifyin g th e c o n fig u ra tio n d e ta ils fo r P u p p e t s la v e. T h e


ex ten s io n fo r m a n ife s t files is .p p , w h ic h m e a n s Pu p p e t P o lic y. T h es e files c o n s is t o f
p u p p e t s c rip ts d e s c rib in g th e c o n fig u ra tio n fo r th e s la v e.

Module

T h e p u p p e t m o d u le is a s e t o f m a n ifes ts a n d d a ta . H e re d a ta is file , fa c ts , o r te m p la te s .
T h e m o d u le fo llo w s a s p ec ific d ire c to ry s tru c tu re. T h es e m o d u les a llo w th e p u p p et
p ro g ra m to s p lit in to m u ltip le m a n ife s ts . M o d u les are s im p ly s e lf-c o n ta in e d b u n d les o f
d a ta o r c o d e .

Le t's u n d ers ta n d th e m o d u le b y th e fo llo w in g im a g e :

Resource

R e s o u rc e s a re a b as ic u n it o f s ys te m c o n fig u ra tio n m o d eling . Th e s e a re th e p red efin e d


fu n c tio n s th a t ru n a t th e b a c k en d to p erfo rm th e n e c e s s a ry o p e ra tio n s in th e p u p p e t.

E a c h p u p p et res o u rc e d e fin es c e rta in elem e n ts o f th e s ys te m , s u c h as s o m e p a rtic u la r


s erv ic e o r p a c k a g e .

Factor

T h e fa c to r c o llec ts fa c ts o r im p o rta n t in fo rm a tio n a b o u t th e p u p p e t s la ve . F a c ts a re th e


k ey -va lu e d a ta p a ir. It c o n ta in s in fo rm a tio n a b o u t th e n o d e o r th e m a s ter m a c h in e. It
rep re s en ts a p u p p et c lien t s ta tes s u c h a s o p era tin g s y s te m , n e tw o rk in terfa c e , IP a d d re s s ,
u p tim e , a n d w h eth er th e c lien t m a c h in e is v irtu a l o r n o t.

T h es e fa c ts are u s e d fo r d e term in in g th e p res e n t s ta te o f a n y a g e nt. C h a n g es o n a n y


ta rg et m a c h in e a re m a d e b a s e d o n fa c ts . P u p p e t's fa c ts a re p red efin e d a n d c u s to m ize d .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

M-Collective

M -c o lle c tive is a fra m ew o rk th a t e n a b les p a ra lle l ex ec u tio n o f s ev era l jo b s o n m u ltip le


S la ve s . T h is fra m e w o rk p e rfo rm s s ev era l fu n c tio n s , s u c h a s :

T h is is u s ed to in te ra c t w ith c lu s ters o f p u p p e t s la v es ; th ey c a n b e in s m a ll g ro u p s o r
v ery la rg e d ep lo ym en ts .

T o tra n s m it d em a n d s , u s e a b ro a d c a s t m o d e l. A ll S la ve s re c e ive a ll re q u e s ts a t th e
s a m e tim e, re q u e s ts h a ve filters a tta c h ed , a n d o n ly S lav es m atc h in g th e filte r c a n
a c t o n req u es ts .

T h is is u s ed to c a ll rem o te s la v es w ith th e h elp o f s im p le c o m m a n d -line to o ls .

T h is is u s ed to w rite c u s to m re p o rts a b o ut yo u r in fra s tru c tu re .

Catalogs

T h e en tire c o n fig u ra tio n a n d m a n ifes t file s th a t a re w ritte n in P u p p e t a re c h a n g e d in to a


c o m p iled fo rm at. Th is c o m p iled fo rm a t is k no w n a s a c a ta lo g , a n d th e n w e c a n a p p ly th is
c a ta lo g to th e ta rg et m a c h in e.

A ll th e re q u ired s ta tes o f s la ve re s o u rc e s a re d es c rib ed in th e c a ta lo g .

Class

Lik e o th er p ro g ra m m in g la n g u a g es , th e p u p p et a ls o s u p p o rts a c la s s to o rg a n ize th e c o d e


in a b etter w a y. P u p p et c la s s is a c o llec tio n o f va rio u s res o u rc es th a t a re g ro u p ed in to a
s in g le u n it.

Nodes

T h e n o d e s a re th e lo c a tio n w h e re th e p u p p et s la ve s a re in s ta lle d u s e d to m a n a g e a ll th e
c lien ts a n d s erv ers .

Deployment tools
Chef

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

C h e f is a n o p en s o u rc e te c h n o lo g y d e ve lo p ed b y O p s c o d e. A d a m J a c o b , c o -fo u n d er o f
O p s c o d e is k n o w n a s th e fo u n d er o f C h ef. T h is te c h n o lo g y u s es R u b y en c o d in g to
d e ve lo p b a s ic b u ild in g b lo c k s lik e re c ip e a n d c o o k b o o k s . C h ef is u s ed in in fra s tru c tu re
a u to m a tio n a n d h e lp s in re d u c in g m anual and re p e titive ta s k s fo r in fra s tru c tu re
m a n a g em e n t.

C h e f h a ve g o t its o w n c o n ve n tio n f o r d iffere n t b uild in g b lo c k s , w h ic h a re req u ire d to


m a n a g e a n d a u to m a te in fra s tru c tu re.

Why Chef?

C h e f is a c o n fig u ra tio n m a n a g e m e n t tec h no lo g y u s e d to a u to m a te th e in fra s tru c tu re


p ro vis io n in g . It is d e ve lo p e d o n th e b a s is o f R u b y D S L la n g u a g e . It is us e d to s trea m lin e
th e ta s k o f c o n f ig u ra tio n a nd m a n a g in g th e c o m p a n y’ s s erve r. It h a s th e c a p a b ility to
g e t in teg ra ted w ith a n y o f th e c lo u d te c h n o lo g y.

In D ev O p s , w e u s e C h e f to d e p lo y a n d m a n ag e s erve rs a n d a p p lic a tio n s in -h o u s e a n d o n


th e c lo u d .

F ea tu res o f C h ef

F o llo w in g a re th e m o s t p ro m in e n t fe a tu re s o f C h ef −

C h ef u s e s p o p u la r R u b y la n g u a g e to c re a te a d o m a in -s p e c ific la n g u a g e.
C h ef d o e s n o t m a k e a s s u m p tio n s o n th e c u rren t s ta tu s o f a n o d e. It u s e s its
m e c h a n is m s to g e t th e c u rre n t s ta tu s o f m a c h in e .
C h ef is id ea l fo r d e p lo yin g a n d m a n a g in g th e c lo u d s e rv er, s to ra g e , a n d s o f tw a re.

Advantages of Chef

C h e f o ffe rs th e fo llo w in g ad va n ta g e s −

Lower barrier for entry − A s C h e f us e s n a tiv e R u b y la n g u a g e fo r c o n fig ura tio n , a


s ta n d a rd c o n fig u ra tio n la n g u a g e it c a n b e e a s ily p ic k e d u p b y a n yo n e h a v in g s o m e
d ev elo p m en t ex p e rien c e.
Excellent integration with cloud − U s in g th e k n ife u tility, it c a n b e e a s ily in teg ra te d
w ith a n y o f th e c lo ud tec h n o lo g ie s . It is th e b es t to o l fo r a n o rg a n iz a tio n th a t
w is h es to d is trib u te its in fras tru c tu re o n m u lti-c lo u d en v iro n m e n t.

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Disadvantages of Chef

S o m e o f th e m a jo r d ra w b ac k s o f C h e f a re a s f o llo w s −

O n e o f th e h u g e d is a d va n ta g e s o f C h e f is th e w a y c o o k b o o k s a re c o n tro lled . It n ee d s
c o n s ta n t b a b yin g s o th a t p eo p le w h o a re w o rk in g s h o u ld n o t m e s s u p w ith o th ers
coo kbo oks.
O n ly C h ef s o lo is a va ila b le .
In th e c u rre n t s itu a tio n , it is o n ly a g o o d fit fo r A W S c lo u d .
It is n o t ve ry e as y to lea rn if th e p ers o n is n o t f a m ilia r w ith R u b y.
D o c u m e n tatio n is s till la c k in g .

Key Building Blocks of Chef


Recipe

It c a n b e d ef in e d a s a c o llec tio n o f a ttrib u tes w h ic h a re u s e d to m a n ag e th e in fra s tru c tu re.


T h es e a ttrib u tes w h ic h a re p res e n t in th e rec ip e a re us e d to c h a n g e th e ex is tin g s ta te o r
s ettin g a p a rtic u la r in fra s tru c tu re n o d e. T h e y a re lo a d ed d u rin g C h e f c lien t ru n a n d
c o m p a rte d w ith th e e xis tin g a ttrib u te o f th e n o d e (m a c h ine ). It th e n g ets to th e s ta tu s
w h ic h is d e fin e d in th e n o d e re s o u rc e o f th e rec ip e . It is th e m a in w o rk h o rs e o f th e
co okb oo k.

Cookbook

A c o o k b o o k is a c o lle c tio n o f re c ip e s . T h e y a re th e b a s ic b u ild in g b lo c k s w h ic h g et


u p lo a d ed to C h e f s erv er. W h e n C h ef ru n ta k es p la c e, it e ns u re s th a t th e rec ip es p re s en t
in s id e it g ets a g ive n in fra s tru c tu re to th e d e s ire d s ta te a s lis ted in th e re c ip e .

Resource

It is th e b as ic c o m p o n en t o f a rec ip e u s ed to m a n a g e th e in fra s tru c ture w ith d ifferen t k in d


o f s ta te s . T h ere c a n b e m u ltip le res o u rc es in a re c ip e , w h ic h w ill h elp in c o n fig u rin g a n d
m a n a g in g th e inf ra s tru c tu re . F o r ex a m p le −

package − M a n a g es th e p a c k a g e s o n a n o d e
service − M a n a g e s th e s e rvic e s o n a n o d e
user − M a n a g e s th e u s e rs o n th e n o d e
group − M a n a g e s g ro u p s
template − M a n a g e s th e files w ith e m b ed d ed R u b y tem p la te

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

cookbook_file − Tra n s fe rs th e file s fro m th e files s u b d ire c to ry in th e c o o k b o o k to a


lo c a tio n o n th e n o d e
file − M a n a g es the c o n te n ts o f a file o n th e n o d e
directory − M a n a g es th e d irec to rie s o n th e n o d e
execute − E xe c u te s a c o m m a n d o n th e n o d e
cron − E d its a n ex is tin g c ro n f ile o n th e n o d e

Chef - Architecture

C h ef w o rk s o n a th ree-tie r c lien t s erve r m o d el w h e rein th e w o rk in g u n its s u c h a s


c o o k b o o k s a re d e ve lo p e d o n th e C h ef w o rk s ta tio n . F ro m th e c o m m a n d lin e u tilities
s u c h a s k n ife , th e y a re u p lo a d ed to th e C h ef s erv er a n d a ll th e n o d es w h ic h a re
p re s en t in th e a rc h itec tu re a re reg is te re d w ith th e C h e f s e rve r.

In o rd er to g e t th e w o rk in g C h e f in f ra s truc tu re in p la c e, w e n e ed to s e t u p m u ltip le
th in g s in s e q u e n c e .
In th e a b o v e s etu p , w e h a v e th e fo llo w in g c o m p o n en ts .
C h ef W o rk s ta tio n

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

T h is is th e lo c a tio n w h e re a ll th e c o nf ig u ra tio n s a re d e ve lo p e d . C h ef w o rk s ta tio n is


in s ta lle d o n th e lo c a l m a c h in e . D eta ile d c o n fig u ra tio n s tru c tu re is d is c u s s ed in th e
la ter c h a p te rs o f th is tu to ria l.
C h ef S erv er
T h is w o rk s a s a c en tra liz ed w o rk in g u n it o f C h ef s e tu p , w h e re a ll th e c o n fig u ra tio n files
a re u p lo a d e d p o s t d e ve lo p m en t. T h e re a re d iffe ren t k in d s o f C h ef s e rv er, s o m e a re
h o s te d C h e f s erve r w h e re a s s o m e a re b u ilt-in p re m is e.
C h ef N o d es
T h e y a re th e a c tu a l m ac h in es w h ic h a re g o in g to b e m a n a g e d b y th e C h e f s e rv er. A ll
th e n o d e s c a n h a v e d ifferen t k in d s o f s e tu p a s p e r req u ire m e n t. C h e f c lien t is th e
k e y c o m p o n en t o f a ll th e n o d es , w h ic h h e lp s in s e ttin g u p th e c o m m u n ic a tio n
b etw ee n th e C h e f s e rv er a n d C h ef n o d e. T h e o th e r c o m p o n e n ts o f C h e f n o d e is
O h a i, w h ic h h e lp s in g e ttin g th e c urren t s ta te o f a n y n o d e a t a g ive n p o in t o f tim e.

Salt Stack

S a lt S ta c k is a n o p en -s o u rc e c o n fig u ra tio n m a n a g e m e n t s o ftw a re a n d rem o te e xe c u tio n


en g in e. S a lt is a c o m m a n d -lin e to o l. W h ile w ritte n in Pyth o n , S a ltS ta c k c o n fig u ra tio n
m a n a g em e n t is la n g ua g e a g n o s tic an d s im p le . S a lt p la tfo rm u s e s th e p u s h m o d el fo r
ex ec u tin g c om m ands via th e SSH p ro to c o l. The d e fa u lt c o n fig u ra tio n s ys tem
is YAML a n d Jinja templates. S a lt is p rim a rily c o m p etin g w ith Puppet, Chef a n d Ansible .

S a lt p ro v id e s m a n y fe a tu res w h en c o m p a re d to o th e r c o m p etin g to o ls . S o m e o f th e s e
im p o rta n t fe a tu res a re lis te d b e lo w .

Fault tolerance − S a lt m in io n s c a n c o n n e c t to m u ltip le m a s te rs a t o n e tim e b y


c o n f ig u rin g th e m a s ter c o n fig u ra tio n p a ra m eter a s a Y A M L lis t o f a ll th e a v a ila b le
m a s ters . A n y m a s te r c a n d ire c t c o m m a n d s to th e S a lt in fra s tru c tu re.
Flexible − T h e e n tire m a n a g em en t a p p ro a c h o f S a lt is ve ry flex ib le. It c a n b e
im p le m e n te d to fo llo w th e m o s t p o p u la r s ys te m s m a n a g e m e n t m o d els s u c h a s
A g e n t a n d S erve r, A g en t-o nly, S erve r-o n ly o r a ll o f th e a b o v e in th e s a m e
en viro n m en t.
Scalable Configuration Management − S a ltS ta c k is d es ig n e d to h a n d le te n th o u s a n d
m in io n s p e r m a s te r.
Parallel Execution model − S a lt c a n en a b le c o m m a n d s to ex ec u te rem o te s ys tem s in

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

a p a ra llel m a n n e r.
Python API − S a lt p ro vid e s a s im p le p ro g ra m m in g in te rfa c e a n d it w a s d es ig n e d to b e
m o d u la r a n d e a s ily e xten s ib le , to m a k e it ea s y to m o ld to d ive rs e a p p lic a tio n s .
Easy to Setup − S alt is ea s y to s e tu p a n d p ro v id e s a s in g le re m o te e xe c u tio n
arc h ite c tu re th a t c a n m a n a g e th e d iv ers e req u irem e n ts o f a n y n u m b e r o f s e rv ers .
Language Agnostic − S a lt s tate c o n fig u ra tio n files , tem p la tin g en g in e o r file typ e
s up p o rts a n y typ e o f la n g ua g e.

Benefits of SaltStack

B ein g s im p le a s w e ll a s a fe a tu re -ric h s ys te m , S a lt p ro vid es m a n y b en ef its a n d th e y c a n


b e s u m m a riz ed as b elo w −

Robust − S a lt is p o w erfu l a n d ro b u s t c o n fig u ratio n m a n a g em en t f ra m ew o rk a n d


w o rk s a ro u n d te ns o f th o u s a n d s o f s ys tem s .
Authentication − Sa lt m a n a g es s im p le S SH k e y p a irs fo r a u th en tic a tio n .
Secure − S a lt m a n a g es s e c u re d a ta u s in g a n e n c ryp te d p ro to c o l.
Fast − S a lt is ve ry fa s t, lig h tw e ig h t c o m m u n ic a tio n b u s to p ro v id e th e fo un d a tio n f o r a
re m o te ex ec u tio n e n g in e.
Virtual Machine Automation − Th e S a lt V irt C lo u d C o n tro lle r c a p ab ility is u s ed fo r
au to m a tio n .
Infrastructure as data, not code − S a lt p ro v id e s a s im p le d ep lo ym en t, m o d e l d riv en
c o n f ig u ra tio n m a n ag em e nt a n d c o m m a n d e xe c u tio n fra m e w o rk .

Introduction to ZeroMQ

Salt is b a s e d o n th e ZeroMQ lib ra ry a n d it is a n e m b ed d a b le n etw o rk in g lib ra ry. It is


lig h tw e ig h t a n d a fa s t m e s s a g in g lib ra ry. T he b a s ic im p lem en ta tio n is in C/C++ a nd n a tiv e
im p lem en ta tio n s f o r s e ve ra l la n g u a g es in c lu d in g Java a n d .Net is a v a ila b le .

Z ero M Q is a b ro k er-les s p ee r-p ee r m e s s a g e p ro c es s in g . Z e ro M Q a llo w s yo u to d e s ig n a


c o m p lex c o m m u n ic a tio n s ys te m e as ily.

Z ero M Q c o m es w ith th e fo llo w in g fiv e b a s ic p a ttern s −

Synchronous Request/Response − Use d fo r s en d in g a req u es t a n d re c e iv in g


s ub s eq u en t re p lies fo r e a c h o n e s e n t.

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Asynchronous Request/Response − R eq u es to r in itia tes th e c o n ve rs a tio n b y s en d in g


a R e q u e s t m e s s a g e a n d w a its fo r a R e s p o n s e m e s s a g e . P ro v id er w a its fo r th e
in c o m in g R e q u es t m es s a g e s a n d re p lies w ith th e R e s p o n s e m es s a g e s .
Publish/Subscribe − U s ed fo r d is trib u tin g d a ta fro m a s in g le p ro c e s s (e. g . p u b lis h er)
to m u ltip le re c ip ie n ts (e .g . s u b s c rib e rs ) .
Push/Pull − U s ed fo r d is trib u tin g d a ta to c o n n e c ted n o d e s .
Exclusive Pair − U s ed f o r c o n n e c tin g tw o p ee rs to g eth er, fo rm in g a p a ir.

Z ero M Q is a h ig h ly f le xib le n etw o rk in g to o l fo r ex c h a n g in g m e s s a g e s a m o n g c lu s ters ,


c lo u d and o th er m u lti s ys te m e n viro n m en ts . Z e ro M Q is th e default transport
library p res e nte d in S a ltS ta c k .

SaltStack – Architecture

T h e a rc h ite c tu re o f S a ltS ta c k is d es ig n ed to w o rk w ith a n y n u m b er o f s e rv ers , f ro m lo c a l


n etw o rk s ys te m s to o th er d ep lo ym e n ts a c ro s s d if feren t d a ta c en ters . A rc h itec tu re is a
s im p le s e rv er/ c lien t m o d el w ith th e n ee d e d f u nc tio n a lity b u ilt in to a s in g le s et o f
dae m ons.

T a k e a lo o k a t th e fo llo w in g illu s tra tio n. It s h o w s th e d iffe re n t c o m p o n en ts o f S a ltS ta c k


a rc h itec tu re.

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

SaltMaster − S a ltM a s ter is th e m a s te r d ae m o n . A S altM a s te r is u s e d to s e n d


c o m m a n d s a n d c o n f ig u ra tio n s to th e S a lt s la ve s . A s in g le m a s ter c a n m a n a g e
m u ltip le m a s te rs .
SaltMinions − S a ltM in io n is th e s la v e d a e m o n . A S a lt m in io n rec eiv es c o m m a n d s a n d
c o n f ig u ra tio n fro m th e Sa ltM a s te r.
Execution − M o d u le s a n d A d h o c c o m m a n d s ex ec u te d fro m th e c o m m a n d lin e
ag a in s t o n e o r m o re m in io n s . It p e rf o rm s R e a l-tim e M o n ito rin g .
Formulas − F o rm u la s a re p re -w ritte n S a lt S ta tes . T h ey a re a s o p e n-en d ed a s S a lt
S ta te s th em s elv es a n d c a n b e u s ed fo r ta s k s s u c h a s in s ta llin g a p a c k a g e ,
c o n fig u rin g an d s ta rtin g a s e rvic e , s ettin g u p u s ers o r p erm is s io n s a n d m a n y o th er
c o m m o n ta s k s .
Grains − G ra in s is a n in terfa c e th a t p ro v id es in fo rm a tio n s p ec if ic to a m in io n . T h e
in fo rm a tio n a v a ila b le th ro u g h th e g ra in s in te rf a c e is s ta tic . G ra in s g e t lo a d ed w h e n
th e S a lt m in io n s ta rts . T h is m ea n s th a t the in fo rm a tio n in g ra in s is u n c h a n g in g .
T h ere fo re, g ra in s in fo rm a tio n c o u ld b e a b o u t th e ru n n in g k ern el o r th e o p e ra tin g
s ys tem . It is c as e in s e n s itiv e.
Pillar − A p illa r is a n in terfa c e th a t g e ne ra te s an d s to re s h ig h ly s e n s itiv e d a ta s p ec ific
to a p a rtic u la r m in io n , s u c h a s c ryp to g ra p h ic k e ys a n d p a s s w o rd s . It s to re s d a ta in
a k ey/ va lu e p a ir a n d th e d a ta is m a n a g e d in a s im ila r w a y a s th e S a lt Sta te T ree .
Top File − M a tc h es S a lt s ta te s a nd p illa r d a ta to S a lt m in io n s .
Runners − It is a m o d u le lo c a te d in s id e th e S a ltM a s te r a n d p e rfo rm s ta s k s s u c h a s
jo b s ta tu s , c o n n ec tio n s ta tu s , re a d d a ta fro m ex te rn a l A P Is , q u ery c o n n ec ted s a lt
m in io n s a n d m o re .
Returners − R e tu rn s d a ta f ro m S a lt m inio n s to a n o th e r s ys tem .
Reactor − It is re s p o n s ib le fo r trig g e rin g rea c tio n s w h en ev en ts o c c u r in yo u r
S a ltS ta c k e n viro n m en t.
SaltCloud − S a lt C lo u d p ro vid e s a p o w erfu l in te rfa c e to in te ra c t w ith c lo u d h o s ts .
SaltSSH − R u n S a lt c o m m a n d s o ve r S S H o n s ys tem s w ith o u t u s in g S a lt m in io n .

Docker

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

D o c k e r is a c o n ta ine r m a n a g em en t s erv ic e. Th e k eyw o rd s o f D o c k er a re develop,


ship a n d run a n yw h ere . T h e w h o le id ea o f D o c k e r is fo r d ev elo p ers to e a s ily d ev elo p
a p p lic a tio n s , s h ip th e m in to c o n ta in ers w h ic h c a n th e n b e d ep lo yed a ny w h e re .

T h e in itia l relea s e o f D o c k er w a s in M a rc h 2 0 1 3 a n d s in c e th en , it h a s b ec o m e th e
b u z zw o rd fo r m o d e rn w o rld d e ve lo p m en t, e s p e c ia lly in th e f a c e o f A g ile-b a s e d p ro jec ts .

F ea tu res o f D o c k er
D o c k er h a s th e a b ility to red u c e th e s iz e o f d ev elo p m e n t b y p ro v id in g a s m a ller
fo o tp rin t o f th e o p era tin g s ys te m via c o n tain e rs .
W ith c o n ta in ers , it b ec o m es ea s ier fo r te a m s a c ro s s d if feren t u n its , s u c h as
d ev elo p m en t, Q A a n d O p e ra tio n s to w o rk s e a m le s s ly a c ro s s a p p lic atio n s .
Y o u c a n d ep lo y D o c k er c o n ta in e rs a n yw h ere, o n an y p h ys ic a l a n d virtu a l m a c h in e s a n d
ev en o n th e c lo u d .
Sin c e D o c k e r c o n ta in e rs a re p re tty lig h tw e ig h t, th e y a re v ery ea s ily s c a la b le .

C o m p o n e n ts o f D o c k er

D o c k e r h a s th e fo llo w in g c o m p o n e n ts

Docker for Mac − It a llo w s o n e to ru n D o c k e r c o n tain e rs o n th e M a c O S .


Docker for Linux − It a llo w s o n e to ru n D o c k er c o n ta in ers o n th e Lin u x O S .
Docker for Windows − It a llo w s o n e to ru n D o c k er c o n ta in e rs o n th e W in d o w s O S .
Docker Engine − It is u s e d fo r b u ild in g D o c k er im a g e s an d c rea tin g D o c k e r c o n ta in e rs .
Docker Hub − T h is is th e re g is try w h ic h is u s e d to h o s t va rio u s D o c k e r im a g es .
Docker Compose − T h is is u s e d to d efin e a p p lic a tio n s u s in g m u ltip le D o c k er
c o n ta in ers .

Docker architecture

D o c k e r u s e s a c lie n t-s e rve r a rc h itec tu re. T h e D o c k er ta lk s to th e D o c k er ,


w h ic h d o e s th e h e a vy lif tin g o f b u ild ing , ru nn in g , a nd d is trib u tin g yo u r D o c k er
c o n ta in e rs . T h e D o c k er c lie n t a n d d a em o n ru n o n th e s a m e s ys tem , o r yo u c a n
c o n n ec t a D o c k e r c lie nt to a re m o te D o c k er d a e m o n . Th e D o c k er c lien t a n d
d a e m o n c o m m u n ic a te u s in g a R E S T A P I, o ve r U N IX s o c k e ts o r a n etw o rk in te rfa c e.
A n o th e r D o c k e r c lien t is D o c k er C o m p o s e, th a t le ts yo u w o rk w ith a p p lic a tio n s
c o n s is tin g o f a s e t o f c o nta in ers .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

The Docker daemon

T h e D o c k e r d a e m o n ( d o c k erd ) lis te n s f o r D o c k er A P I re q u es ts a n d m a n a g es D o c k er
o b je c ts s u c h a s im a g e s , c o n ta in e rs , n e tw o rk s , a n d vo lu m es . A d a e m o n c a n a ls o
c o m m u n ic a te w ith o th e r d a em o n s to m a n a g e D o c k e r s e rv ic e s .

The Docker client

T h e D o c k e r c lie n t (d o c k er) is th e p rim a ry w a y tha t m an y D o c k er u s e rs in tera c t w ith


D o c k e r. W h en yo u us e c o m m a n d s s u c h a s d o c k er ru n , th e c lien t s e nd s th es e c o m m a n d s
to d o c k e rd , w hic h c a rries the m o u t. T h e d o c k er c o m m a n d u s es th e D o c k er A P I. T h e
D o c k e r c lie n t c a n c o m m u n ic a te w ith m o re th a n o n e d a em o n .

Docker Desktop

D o c k e r D es k to p is a n e a s y-to -in s ta ll a p p lic a tio n f o r yo u r M a c , W in d o w s o r L in ux


en v iro n m e n t th a t en a b le s y o u to b u ild a n d s h a re c o n ta in erize d ap p lic a tio n s a n d
m ic ro s erv ic es . D o c k e r D e s k to p in c lu d e s th e D o c k er d a em o n (d o c k e rd ), th e D o c k e r c lien t
(d o c k er), D o c k er C o m p o s e , D o c k er C o n ten t T ru s t, K u b e rn e te s , a n d C re d en tia l H elp e r. F o r
m o re in fo rm a tio n , s ee D o c k er D es k to p .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

Docker registries

A D ocke r s to re s D o c k er im a g es . D o c k e r H u b is a p u b lic reg is try th at a n yo n e c a n


u s e, a n d D o c k e r is c o n fig u red to lo o k fo r im a g e s o n D o c k e r H u b b y d ef au lt. Y o u c a n ev en
ru n yo u r o w n p riv a te re g is try.

W h e n yo u u s e th e d o c k er p u ll o r d o c k e r ru n c o m m a n d s , th e re q u ired im a g es a re p u lle d
fro m yo u r c o n fig u red reg is try. W h e n yo u u s e th e d o c k e r p u s h c o m m a n d , yo u r im a g e is
p u s h e d to yo u r c o n fig u red re g is try.

Docker objects

W h e n yo u u s e D o c k e r, yo u a re c rea tin g a n d u s in g im a g es , c o n ta ine rs , n etw o rk s , vo lu m e s ,


p lu g in s , a n d o th er o b jec ts . T h is s ec tio n is a b rie f o v ervie w o f s o m e o f th o s e o b jec ts .

Images

An is a re a d -o n ly te m p la te w ith in s tru c tio n s fo r c re a tin g a D o c k e r c o n ta in er. O f te n ,


a n im a g e is a n o th er im a g e , w ith s o m e a d d itio n a l c u s to m iz a tio n . F o r e xa m p le ,
yo u m a y b u ild a n im a g e w h ic h is b a s ed o n the u b u n tu im a g e , b u t in s ta lls th e A p a c h e w e b
s erv er a n d yo u r a p p lic a tio n , a s w e ll a s th e c o n fig u ra tio n d eta ils n e ed ed to m a k e yo u r
a p p lic a tio n ru n .
Y o u m ig h t c re a te yo ur o w n im a g e s o r yo u m ig h t o n ly u s e th o s e c rea te d b y o th ers a n d
p u b lis h e d in a re g is try. T o b u ild yo ur o w n im a g e , yo u c rea te a w ith a s im p le
s yn ta x fo r d ef in in g th e s te p s n e ed ed to c re ate th e im a g e a n d ru n it. E a c h in s tru c tio n in a
D o c k e rf ile c rea tes a lay er in th e im a g e. W h e n yo u c h a n g e th e D o c k e rf ile a n d re b u ild th e
im a g e, o n ly th o s e la yers w h ic h h a ve c h a n g e d a re re b u ilt. T h is is p a rt o f w h a t m a k es
im a g es so lig h tw e ig h t, s m a ll, and fa s t, when c o m p a red to o th er virtu a liza tio n
tec h n o lo g ie s .

Containers

A c o n ta in er is a ru n n a b le in s ta n c e o f a n im a g e . Y o u c a n c rea te, s ta rt, s to p , m o v e, o r


d e lete a c o n ta in e r u s in g th e D o c k er A P I o r C LI. Y o u c a n c o n n e c t a c o n ta in er to o n e o r
m o re n etw o rk s , a tta c h s to ra g e to it, o r e ve n c rea te a n ew im a g e b a s e d o n its c u rren t s tate .

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

B y d efa u lt, a c o n ta in er is rela tiv ely w e ll is o la te d fro m o th er c o n tain e rs a n d its h o s t


m a c h in e. Y o u c a n c o n tro l h o w is o la ted a c o n ta ine r’ s n etw o rk , s to ra g e, o r o th er
u n d e rlyin g s u b s ys te m s a re fro m o th er c o n ta in e rs o r fro m th e h o s t m a c h in e.

A c o n ta in er is d e fin ed b y its im a g e a s w e ll a s a n y c o n fig u ra tio n o p tio n s yo u p ro v id e to it


w h en yo u c rea te o r s ta rt it. W h en a c o n ta in e r is re m o ve d , a n y c h a n g e s to its s ta te th a t a re
n o t s to red in p e rs is ten t s to rag e d is a p p e a r.

Example docker run command


T h e fo llo w in g c o m m a n d ru n s a n u b u n tu c o n ta in e r, a tta c h es in tera c tive ly to yo u r lo c a l
c o m m a n d -lin e s es s io n , a n d ru n s /b in/ b as h .
$ d o c k er ru n -i -t u b u n tu / b in /b a s h

W h e n yo u ru n th is c o m m a n d , th e fo llo w in g h ap p e n s (a s s u m in g yo u a re u s in g th e d ef a u lt
reg is try c o n f ig u ra tio n ):

If yo u d o n o t h a ve th e u b u n tu im a g e lo c a lly, D o c k e r p u lls it fro m yo u r c o n fig u re d


reg is try, a s th o u g h yo u h a d ru n d o c k er p u ll u b u n tu m a n u a lly.
D o c k e r c re a te s a n ew c o n ta in er, a s th o u g h yo u had ru n a d o c k er c o nta in er
c re a te c o m m a n d m a n u a lly.
D o c k e r a llo c a tes a re a d -w rite files ys tem to th e c o n ta in e r, a s its f in a l la ye r. T h is a llo w s
a ru n n in g c o n ta in e r to c re a te o r m o d ify files a n d d irec to rie s in its lo c a l f ile s ys te m .

D o c k e r c re a tes a n etw o rk in terfa c e to c o n n ec t th e c o n ta ine r to th e d efa u lt n etw o rk ,


s in c e yo u d id n o t s p ec ify a n y n e tw o rk in g o p tio n s . Th is in c lu d es a s s ig nin g a n IP
a d d res s to th e c o n ta in e r. B y d e fa u lt, c o n ta in e rs c a n c o n n ec t to ex tern a l n etw o rk s
u s in g th e h o s t m a c h in e ’ s n etw o rk c o n n e c tio n .

D o c k e r s ta rts th e c o n ta in e r a n d ex ec u te s / b in / b a s h . B e c a u s e th e c o n ta in er is ru n n in g
in te ra c tiv ely a n d a tta c h ed to yo u r term in a l ( d u e to th e -i a n d -t fla g s ), yo u c a n
p ro vid e in p u t u s in g yo u r k eyb o a rd w h ile th e o u tp u t is lo g g ed to yo u r te rm in a l.
W h e n yo u typ e ex it to term in a te th e / b in /b a s h c o m m a n d , th e c o n ta in e r s to p s b u t is
n o t rem o v ed . Y o u c a n s ta rt it a g a in o r rem o v e it.

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

The underlying technology

D o c k e r is w ritte n in the G o p ro g ra m m in g la n g u a g e a n d tak e s a d v a n ta g e o f s e ve ra l


fe a tu res o f th e L in ux k e rn el to d e liv er its fu n c tio n a lity. D o c k er u s e s a tec h n o lo g y
c a lled n a m e s p a c es to p ro v id e th e is o la ted w o rk s p ac e c a lle d th e c o n ta in er. W h e n yo u ru n
a c o n ta in er, D o c k e r c rea tes a s et o f n a m e s p a c es fo r th a t c o n ta in e r.
T h es e n a m es p a c e s p ro vid e a la yer o f is o la tio n . E a c h a s p e c t o f a c o n tain e r run s in a
s ep a ra te n a m es p a c e a n d its a c c es s is lim ite d to th a t n a m e s p a c e.

Sample questions for Internal exam with key


SUBJECT: DEVOPS
YEAR:-III

UNIT – I:-Introduction
In tro d u c tio n , A g ile d e ve lo p m e n t m o d el, D ev O p s , and IT IL. D e vO p s p ro c e s s and
C o n tin u o u s D elive ry, R ele a s e m a n a g em en t, S c ru m , K a n b a n , d elive ry p ip elin e, b o ttle n ec k s ,
ex a m p les .
PART A:
E x p la in b rie fly a b o ut S d lc ?
W h a t is w a te rfa ll m o d e l?
W h a t is a g ile m o d el?
W h y D e vo p s ?
W h a t is D e vo p s ?
W h a t is IIT L ?
W h a t is c o n tin u o u s d ev elo p m en t?

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

W h a t is c o n tin u o u s In te g ra tio n ?
W h a t is c o n tin u o u s T e s tin g ?
W h a t is c o n tin u o u s d elive ry?
W h a t is c o n tin u o u s d ep lo ym en t?
W h a t is S c ru m ?
W h a t is K a n b a n ?

PART B:
W ha t is th e d if feren c e b etw e en a g ile a n d D ev o p s ?
W ha t a re th e d iffe re n c e s b etw ee n ag ile a n d w a te rf all m o d e l?
E xp la in D e vo p s p ro c e s s flo w in d e ta il?
W ha t is c o n tin u o u s d e liv ery a n d h o w it w o rk s ?
E xp la in c o m p o n e n ts o f d e liv ery p ip e lin e ?

UNIT-II:- Software development models and DevOps


D e vO p s L ifec yc le fo r B u s in es s A g ility, D e vO p s , a nd C o n tin u o u s T es tin g . D ev O p s in flu en c e
o n A rc h ite c tu re: In tro d u c in g s o ftw a re a rc h ite c tu re, T h e m o n o lith ic s c en a rio , A rc h ite c tu re
ru le s o f th u m b , T h e s ep a ra tio n o f c o n c ern s , H a n d lin g d a ta b a s e m ig ra tio n s , M ic ro s erv ic es ,
a n d th e d a ta tie r, D ev O p s , a rc h ite c tu re , a n d res ilien c e.
PART A:
W h a t a re d iffere nt s o f tw a re d e ve lo p m e nt lif ec yc le m o d els ?
W h a t is d a ta tie r in D e vo p s ?
W h a t is m o n o lith ic a rc h ite c tu re ?
W h a t a re b en e fits o f m o no lith ic a rc h itec tu re ?

PART B:
E xp la in D e vo p s lifec yc le iin d eta il?
W ha t a re D e vo p s c o m p o n e n ts ?

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

E xp la in a b o u t D ev o p s a rc h itec tu re in d e ta il?
W ha t a re m ic ro s ervic es a n d h o w d o es m ic ro s e rv ic es a rc h itec tu re w o rk ?
E xp la in a rc h itec tu re ru le s o f th u m b ?
E xp la in d a ta b a s e m ig ra tio n ?
W ha t a re th e a d v a nta g es o f m ig ra tio n to o ls ?

UNIT-III:- Introduction to project management:


In tro d u c tio n to p ro je c t m a n ag em e nt: T h e n ee d fo r s o u rc e c o d e c o n tro l, T h e h is to ry o f
s o u rc e c o d e m a n a g em en t, R o les a n d c o d e, s o u rc e c o d e m an a g em en t s ys tem a n d
m ig ratio n s , S h a red a u th en tic a tio n , H o s ted G it s erve rs , D iffere n t G it s e rv er
im p lem en ta tio n s , D o c k er in te rm is s io n , G e rrit, T h e p u ll re q u e s t m o d el, G itLa b .
PART A:
W h a t is th e n ee d fo r s o u rc e c o d e c o n tro l in D e vo p s ?
W h a t a re th e ro le s a n d c o d es in d ev o p s ?
W h a t a re th e b en e fits o f s o u rc e c o d e m a n a g em en t in D ev o p s ?
W h a t is s h a red a u th en tic a tio n in D ev o p s ?
W h a t is p u ll re q u e s t m o d el in D ev o p s ?

PART B:

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

W ha t is ve rs io n c o n tro l, E x p la in typ e s o f v ers io n c o n tro l s ys tem s a n d b e n ef its


o f ve rs io n c o n tro l s ys te m s ?
W ha t is G errit a n d ex p la in th e a rc hitec tu re o f g e rrit?
W ha t is d o c k e r in term is s io n a n d w h at a re th e d iff eren c es b e tw e en D o c k er a n d
m a c h in e ?
E xp la in g e rrit a n d its a rc h ite c tu re?

UNIT-IV:- Integrating the system

In teg ra tin g th e s ys tem : B u ild s ys tem s , J en k in s b u ild s erve r, M a n a g in g b u ild d e p e nd en c ies ,


J e n k in s p lu g in s , a n d file s ys tem la yo u t, T h e h o s t s erve r, B u ild s la ve s , S o ftw a re o n th e
h o s t, T rig g ers , Jo b c h a in in g a n d b u ild p ip elin es , B u ild s erve rs a n d in fra s tru c tu re a s c o d e ,
B u ild in g b y d e p en d en c y o rd e r, B u ild p h a s e s , A ltern a tiv e b u ild s erv ers , C o llatin g q u a lity
m ea s u res .

PART A:

W h a t is G it p lu g in ?
W h a t is m a n a g in g b u ild d e p e n d e n c ies in D ev o p s ?
W h a t is b u ild p ip elin es ?

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

W h a t is jo b c h a in in g ?
E x p la in c o lla tin g Q u a lity m e a s u res ?
W h a t a re a ltern a tiv e b u ild s e rv ers ?

PART B:

W h a t is J en k in a n d ex p la in its w o rk flo w ?
E xp la in J en k in m a s te r s la ve a rc h itec tu re an d J en k i a p p lic a tio n s ?
W h a t a re b u ild s la ve s in D e vo p s ?
W h a t is in fra s tru c tu re a s a c o d e in D e vo p s ?
W h a t a re d iffe re n t b u ild p h a s es in D ev o p s ?

UNIT-V:- Testing Tools and automation and Deployment of the system


T es tin g T o o ls a n d a u to m a tio n : V a rio u s typ e s o f tes tin g , A u to m a tio n o f te s tin g P ro s a n d
c o n s , S elen iu m - In tro d u c tio n , S e le n iu m fea tu res , J a va S c rip t te s tin g , Te s tin g b a c k e n d
in te g ra tio n p o in ts , T e s t-d riv en d ev elo p m e n t, R E P L-d riv en d e ve lo p m e n t D ep lo ym e n t o f th e
s ys tem : D e p lo ym en t s ys te m s , V irtu a liz a tio n s ta c k s , c o d e e xe c u tio n a t th e c lie n t, P u p p et

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

m a s te r a n d a g en ts , A n s ib le , D e p lo ym en t to o ls : C h ef , S a lt S ta c k a nd D o c k er.
PART A:
W h a t is ja v a s c rip t tes tin g ?
W h a t a re th e d if feren t to o ls u s ed fo r b a c k e n d tes tin g ?
E x p la in T D D v s T ra d itio n a l T e s tin g ?
W h a t is a c c ep tan c e T D D a nd D e ve lo p e r T D D ?
W h a t is R E P L d rive n d ev elo p m en t?
W h a t is d e p lo ym e n t o f th e s ys te m ?
W h a t is v irtu a liz a tio n o f th e s ta c k ?

PART B:
W ha t is te s tin g a n d E xp la in d iffe ren t typ es o f tes tin g ?
P ro s a n d c o n s o f tes tin g ?
W ha t is s e len iu m a n d E xp la in s ele n iu m fea tu res ?
W ha t a re b a c k en d in teg ra tio n p o in ts a n d ex p la in b a c k en d tes tin g va lid a tio n ?
W ha t a re a d v a n ta g es a n d d is a d va n ta g e s o f b a c k en d tes tin g ?
W ha t is T T D a n d h o w it is p erfo rm ed ?

OBJECTIVE TYPE UNIT WISE QUESTIONS


UNIT-1
1 ) W h a t is th e m a in p h ilo s o p h y o f A g ile d ev elo p m e n t?
a . T o d elive r w o rk in g s o ftw a re freq u e n tly
b . T o p rio ritize c u s to m er s a tis fa c tio n
c . To re s p o n d to c h a n g e o v er fo llo w in g a p la n
d . A ll o f th e a b o ve
A n s w e r: d . A ll o f th e a b o ve

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

2 ) W h a t is th e m o s t c o m m o n ly u s ed A g ile m eth o d o lo g y?
a. S c ru m
b. K anban
c . W a terfa ll
d . X P ( E x trem e P ro g ra m m in g )
A n s w e r: a . S c ru m
3 ) In Sc ru m , w h a t is th e ro le o f th e S c ru m M a s ter?
a. T o le a d th e d e ve lo p m e n t tea m
b . T o m a n a g e th e p ro jec t s c h ed u le
c . T o fa c ilita te th e S c rum p ro c es s
d . T o d irec t th e w o rk o f th e d ev elo p m e n t tea m
A n s w e r: c . T o f ac ilita te th e S c ru m p ro c e s s
4 ) In Sc ru m , w h a t is th e p u rp o s e o f th e d a ily s ta n d -u p m e etin g ?
a. T o re vie w p ro g res s
b . T o p la n th e n ex t s p rin t
c . T o in s p e c t th e p rev io u s s p rin t
d . T o c o o rd in a te w o rk b e tw e en tea m m em b ers
A n s w e r: a . T o rev ie w p ro g res s
4 ) W h a t is th e m a in p u rp o s e o f s p rin t re tro s p ec tiv es in S c rum ?
a . T o e va lu a te th e s p rin t a n d id e n tify a rea s fo r im p ro v em en t
b . T o p la n th e n ex t s p rin t
c . T o rev ie w p ro g res s
d . T o c o o rd in a te w o rk b e tw e en tea m m em b ers
A n s w e r: a . T o ev a lu ate th e s p rin t a nd id en tify a re a s fo r im p ro ve m e n t
5 ) W h a t is p a ir p ro g ra m m in g in X P (E xtrem e P ro g ra m m in g ) ?
a . T w o p ro g ra m m e rs w o rk in g o n th e s a m e ta s k
b . T w o p ro g ram m ers w o rk in g o n d iffe re n t ta s k s
c . O n e p ro g ra m m e r w o rk in g a lo n e
d . N o n e o f th e a b o v e
A n s w e r: a . T w o p ro g ra m m ers w o rk in g o n th e s a m e ta s k
6 ) W h a t is IT IL (In f o rm a tio n T ec h n o lo g y In fra s tru c tu re Lib ra ry)?
a. A s et o f b e s t p ra c tic es fo r IT s erv ic e m a n a g e m e n t
b . A fra m ew o rk fo r m a n a g in g a nd d e liv erin g IT s ervic es
c . A m eth o d o lo g y fo r c o n tin u o u s d elive ry a n d in teg ra tio n
d . A ll o f th e a b o ve
A n s w e r: a . A s et o f b es t p ra c tic es fo r IT s e rv ic e m a n a g e m e n t
7 ) W h a t is th e m a in g o a l o f IT IL ?
a . T o im p ro v e th e q u a lity o f IT s ervic es

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

b . T o red u c e th e c o s t o f IT s ervic es
c . T o im p ro ve th e e ffic ie n c y o f IT s e rv ic e d elive ry
d . A ll o f th e a b o v e
A n s w e r: d . A ll o f th e a b o ve
8 ) W h a t is th e rela tio n s h ip b e tw e en IT IL a nd D e vO p s ?
a. IT IL a n d D ev O p s a re c o m p letely s ep a rate a n d ha v e n o re la tio n s h ip
b . IT IL is a m e th o d o lo g y th a t c a n b e u s e d to s u p p o rt D ev O p s
c . D e vO p s is a m eth o d o lo g y th a t c a n b e us e d to s u p p o rt IT IL
d . B o th IT IL a n d D ev O p s a re c o m p lete ly in teg ra ted a n d c a n n o t b e us e d s e p a ra te ly
A n s w e r: b . IT IL is a m eth o d o lo g y th a t c a n b e u s e d to s u p p o rt D ev O p s
9 ) W h ic h IT IL p ro c e s s is c o n c e rn e d w ith th e d e liv ery o f IT s erv ic es to c us to m e rs ?
a. In c id e n t M a n a g e m e n t
b . S erv ic e D e liv ery
c . S erv ic e L ev el M a n a g em en t
d . C a p a c ity M a n a g e m e n t
A n s w e r: b . S e rv ic e D elive ry
1 0 ) W h a t is th e p u rp o s e o f th e C h a n g e M a n a g em e n t p ro c e s s in IT IL ?
a. T o en s u re th a t c h a n g es to IT s ervic es a re p ro p erly p la n n ed a n d te s te d
b . T o m in im ize th e d is ru p tio n c a u s ed b y c h a n g e s to IT s e rv ic e s
c . T o e n s u re th a t c h a n g e s are im p lem e n te d in a c o n tro lle d a n d c o o rd in a ted m a n n e r
d . A ll o f th e a b o ve
A n s w e r: d . A ll o f th e a b o ve
1 1 ) W h ic h IT IL p ro c es s is c o n c ern ed w ith th e m a n a g e m e n t o f IT s e rvic e c o n tin u ity?
a. In c id e n t M a n a g e m e n t
b . S erv ic e D e liv ery
c . S erv ic e L ev el M a n a g em en t
d . C o n tin u ity M a n a g e m e n t
A n s w e r: d . C o n tin u ity M a n a g em en t
1 2 ) W h a t is th e m a in p u rp o s e o f u s in g K a n b a n in D ev O p s ?
a) T o in c re a s e e ffic ien c y in th e d e ve lo p m e n t p ro c e s s
b ) T o m a n a g e th e e n tire s o ftw a re d e ve lo p m en t lif ec yc le
c ) T o in c rea s e s p e ed a n d a g ility in d e liv erin g s o f tw a re
d ) T o v is u a lize th e f lo w o f w o rk
A n s w e r: d
1 3 ) W h a t is th e m a in d iffe re n c e b e tw ee n S c ru m a n d K a n b a n ?
a ) S c ru m h a s tim e-b o x ed ite ra tio n s , w h ile K an b a n d o e s n o t
b ) K a n b a n fo c u s e s o n d elive rin g s o ftw a re q u ic k ly, w h ile S c ru m fo c u s es o n te am w o rk
c ) S c rum h a s d ef in e d ro les a n d c erem o n ie s , w hile K a n b a n d o e s n o t

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

d ) K a n b a n is m a in ly u s ed f o r m a in te n a n c e a n d o p era tio n s , w h ile S c ru m is m a in ly u s e d


fo r n ew d ev elo p m e n t
A n s w e r: a
1 4 ) H o w is w o rk p rio ritize d in a K a n b a n s ys tem ?
a ) B a s ed o n the o rd e r in w h ic h it w a s rec eive d
b ) B as e d o n th e a v a ila b ility o f te a m m em b e rs
c )B a s ed o n th e p rio rity s et b y th e c u s to m er
d ) B as e d o n th e im p o rta n c e o f the w o rk
A n s w e r: c
1 5 ) In a K a n b a n s ys te m , w h a t is th e p u rp o s e o f a "p u ll" s ys tem ?
a ) T o a s s ig n ta s k s to te a m m em b e rs
b ) T o en s u re w o rk is o n ly s ta rte d w h en th ere is c a p a c ity a v a ila b le
c ) T o c o n tro l th e flo w o f w o rk
d ) T o p rio ritiz e ta s k s
A n s w e r: b
1 6 ) W h a t is th e m a in p u rp o s e o f a d e liv ery p ip elin e in D ev O p s ?
a) T o au to m a te th e s o f tw a re d e liv ery p ro c es s
b ) T o m a n a g e th e e n tire s o ftw a re d e ve lo p m en t lif ec yc le
c ) T o in c rea s e s p e ed a n d a g ility in d e liv erin g s o f tw a re
d ) T o v is u a lize th e f lo w o f w o rk
A n s w e r: a
1 7 ) W h a t a re th e m a in s ta g e s in a typ ic a l d elive ry p ip e lin e ?
a ) D ev elo p m e n t, te s tin g , d ep lo ym en t
b ) R e q u ire m e n ts g a th e rin g , d e s ig n , c o d in g
c ) P la n n in g , e xe c u tio n , m o n ito rin g
d ) C o n tin u o u s in te g ra tio n , c o n tin u o u s d elive ry, c o n tin u o u s d e p lo ym e n t
A n s w e r: d
1 8 ) W h a t is th e p u rp o s e o f c o n tin uo u s in te g ra tio n in a d elive ry p ip elin e?
a ) T o a u to m a te the te s tin g p ro c es s
b ) T o inte g ra te c o d e c h a n g e s fro m m u ltip le d ev elo p ers
c ) T o d e p lo y s o ftw a re to p ro d u c tio n
d ) T o m a n a g e th e e n tire s o ftw a re d e ve lo p m en t lif ec yc le
A n s w e r: b
1 9 ) W h a t is th e p u rp o s e o f c o n tin uo u s d e liv ery in a d e liv ery p ip e lin e ?
a) T o au to m a te th e tes tin g p ro c es s
b ) T o in te g ra te c o d e c h a n g e s fro m m u ltip le d ev elo p ers
c ) T o d e p lo y s o ftw a re to p ro d u c tio n w ith a s in g le c lic k
d ) T o m a n a g e th e e n tire s o ftw a re d e ve lo p m en t lif ec yc le

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

A n s w e r: c
2 0 ) W h a t is th e p u rp o s e o f c o n tin uo u s d e p lo ym en t in a d e liv ery p ip eline ?
a) T o au to m a te th e tes tin g p ro c es s
b ) T o inte g ra te c o d e c h a n g e s fro m m u ltip le d ev elo p ers
c ) T o d e p lo y s o ftw a re to p ro d u c tio n w ith a s in g le c lic k
d ) T o a u to m a tic a lly d e p lo y s o f tw a re to p ro d u c tio n w h en ev er c h a n g es a re m a d e
A n s w e r: d

OBJECTIVE TYPE UNIT WISE QUESTIONS


UNIT-2
1 ) W h a t a re th e m a in s ta g es o f th e D ev O p s lifec yc le ?
a) D ev elo p m en t, te s tin g , d e p lo ym e nt
b ) P lan , c o d e, d ep lo y
c ) C o n tin u o u s in teg ra tio n , c o n tin u o u s d elive ry, c o n tin u o u s d ep lo ym e n t
d ) P lan , b u ild , tes t, relea s e , d e p lo y, o p e rate , m o n ito r
A n s w e r: d
2 ) W h a t is th e p u rp o s e o f th e "p la n" s ta g e in th e D ev O p s life c yc le ?
a) T o p la n th e d ev elo p m e n t a n d d ep lo ym en t p ro c es s
b ) T o b u ild th e s o f tw a re
c ) T o tes t th e s o ftw a re
d ) T o relea s e th e s o ftw are
A n s w e r: a
3 ) W h a t is th e p u rp o s e o f th e "b u ild " s ta g e in th e D e vO p s life c yc le?
a) T o p la n th e d ev elo p m e n t a n d d ep lo ym en t p ro c es s
b ) T o b u ild th e s o f tw a re
c ) T o tes t th e s o ftw a re
d ) T o relea s e th e s o ftw are
A n s w e r: b

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

4 ) W h a t is th e p u rp o s e o f th e "te s t" s ta g e in th e D ev O p s lifec yc le ?


a) T o p la n th e d ev elo p m e n t a n d d ep lo ym en t p ro c es s
b ) T o b u ild th e s o f tw a re
c ) T o tes t th e s o ftw a re
d ) T o relea s e th e s o ftw are
A n s w e r: c
5 ) W h a t is th e p u rp o s e o f th e "re le a s e" s ta g e in th e D ev O p s lifec yc le ?
a) T o p la n th e d ev elo p m e n t a n d d ep lo ym en t p ro c es s
b ) T o b u ild th e s o f tw a re
c ) T o tes t th e s o ftw a re
d ) T o relea s e th e s o ftw are
A n s w e r: d
6 ) W h a t is th e p u rp o s e o f th e "d ep lo y" s ta g e in th e D e vO p s lif ec yc le?
a) T o d ep lo y th e s o ftw a re to p ro d u c tio n
b ) T o b u ild th e s o f tw a re
c ) T o tes t th e s o ftw a re
d ) T o rele a s e the s o ftw a re
A n s w e r: a
7 ) W h a t is th e p u rp o s e o f th e "o p e ra te " s ta g e in th e D ev O p s life c yc le ?
a) T o o p e ra te a n d m a in ta in th e s o ftw a re
b ) T o b u ild th e s o f tw a re
c ) T o tes t th e s o ftw a re
d ) T o rele a s e the s o ftw a re
A n s w e r: a
8 ) W h a t is th e p u rp o s e o f th e "m o n ito r" s ta g e in th e D e vO p s lif ec yc le?
a ) T o m o n ito r th e p erfo rm a n c e a n d s ta b ility o f th e s o ftw a re
b ) T o b u ild th e s o ftw a re
c ) T o tes t th e s o ftw a re
d ) T o relea s e th e s o ftw are
A n s w e r: a
9 ) W h a t is a m o n o lith ic a rc h ite c tu re in D ev O p s ?
a) A n a rc h itec tu re in w h ic h a ll c o m p o n e n ts a re tig h tly c o u p le d a n d c an n o t b e s ep a rate d
b ) A n a rc h ite c tu re in w h ic h c o m p o n en ts a re lo o s ely c o u p le d a n d c a n b e s ep a ra ted
c ) A n a rc h itec tu re in w h ic h c o m p o n en ts a re d ep en d en t o n ea c h o th e r
d ) A n a rc h ite c tu re in w h ic h c o m p o n en ts a re in d e p e n d e n t o f ea c h o th e r
A n s w e r: a
1 0 ) W h a t a re th e m a in b en ef its o f a m o n o lith ic a rc h ite c tu re in D e vO p s ?
a) S c a lab ility a n d flex ib ility

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

b ) E a s e o f d e p lo ym e n t
c ) S im p lic ity a n d e as e o f m a in te n an c e
d ) Is o la tio n o f c o m p o n en ts
A n s w e r: c
1 1 ) W h a t a re th e m a in d ra w b a c k s o f a m o n o lith ic a rc h itec tu re in D e vO p s ?
a ) S c a la b ility a n d fle xib ility
b ) E a s e o f d e p lo ym en t
c ) S im p lic ity a n d ea s e o f m a in ten a n c e
d ) Is o la tio n o f c o m p o n en ts
A n s w e r: a
1 2 ) H o w d o e s a m o n o lith ic a rc h itec tu re im p a c t d e p lo ym e nt in D ev O p s ?
a) D ep lo ym en t is d iffic u lt b e c a u s e a ll c o m p o n e n ts a re tig h tly c o u p led
b ) D e p lo ym e nt is e a s y b e c a u s e a ll c o m p o n en ts a re lo o s e ly c o u p le d
c ) D e p lo ym e n t is n o t im p a c te d b y th e a rc h itec tu re
d) D ep lo ym e n t is made m o re c o m p lex be ca use of th e in te r-d e p e n d e nc ies of
c o m p o n e n ts
A n s w e r: a
1 3 ) H o w d o e s a m o n o lith ic a rc h itec tu re im p a c t s c a la b ility in D ev O p s ?
a) S c a lab ility is d if fic u lt b ec au s e a ll c o m p o n e n ts a re tig h tly c o u p le d
b ) S c a la b ility is ea s y b e c a u s e a ll c o m p o n e n ts a re lo o s ely c o u p led
c ) S c a la b ility is n o t im p a c ted b y th e a rc h itec tu re
d ) S c a la b ility is m a d e m o re c o m p lex b ec a u s e o f th e in ter-d ep e n d e n c ies o f c o m p o n en ts
A n s w e r: a
1 4 ) W h a t is th e m a in p u rp o s e o f d a ta b a s e m ig ratio n s in D ev O p s ?
a ) T o m o v e d a ta fro m o n e d a ta b a s e to a n o th er
b ) T o c h a n g e th e s c h e m a o f a d a ta b as e
c ) T o s to re d a ta in a d a ta b a s e
d ) T o retrie ve d a ta fro m a d a ta b a s e
A n s w e r: b
1 5 ) W h a t a re th e m a in c h a lle ng es o f ha n d lin g d a ta b a s e m ig ra tio n s in D e vO p s ?
a ) D ata lo s s a n d d o w n tim e
b ) In c o m p a tib ility w ith d iffere nt d a ta b a s e s ys te m s
c ) La c k o f a u to m a tio n
d ) A ll o f th e ab o v e
A n s w e r: d
1 6 ) H o w c a n d a ta b a s e m ig ra tio n s b e a u to m a te d in D ev O p s ?
a ) B y u s in g m a n u a l s c rip ts
b ) B y u s in g d a ta b a s e m ig ra tio n to o ls

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

c ) B y u s in g c o n tin uo u s in te g ra tio n a n d c o n tin u o u s d e p lo ym en t (C I/C D ) p ip e lin e s


d ) B y u s in g d a tab a s e b a c k u p to o ls
A n s w e r: c
1 7 ) W h a t is th e p u rp o s e o f u s in g d a ta b a s e m ig ra tio n to o ls in D ev O p s ?
a) T o au to m a te th e p ro c es s o f d a ta b a s e m ig ra tio n s
b ) T o s to re d a ta in a d a ta b as e
c ) T o retrie ve d a ta f ro m a d a ta b a s e
d ) T o m o v e d a ta fro m o n e d a ta b a s e to an o th er
A n s w e r: a
1 8 ) H o w c a n d a ta b a s e d o w n tim e b e m in im ize d d u rin g m ig ra tio n s in D ev O p s ?
a) B y u s in g m a n ua l s c rip ts
b ) B y u s in g d a tab a s e m ig ra tio n to o ls
c ) B y u s in g c o n tin u o u s in te g ra tio n a n d c o n tin u o u s d e p lo ym e n t (C I/C D ) p ip elin es
d ) B y u s in g d a tab a s e b a c k u p to o ls
A n s w e r: b

1 9 ) W h a t is a m ic ro s ervic e a rc h ite c tu re in D ev O p s ?
a ) A n a rc h ite c tu re in w h ic h a la rg e a p p lic a tio n is d ivid ed in to s m a ll, in d e p en d en t
s erv ic es
b ) A n a rc h ite c tu re in w h ic h a la rg e a p p lic a tio n is tig h tly c o u p le d a n d c a n n o t b e
s ep a ra te d
c ) A n a rc h itec tu re in w h ic h a la rg e a p p lic a tio n is lo o s ely c o up led a n d c a n b e s e p a ra ted
d ) A n a rc h ite c tu re in w h ic h a la rg e a p p lic a tio n is d e p e n d e n t o n a s in g le s e rv ic e
A n s w e r: a
2 0 ) W h a t a re th e m a in b en ef its o f u s in g m ic ro s e rv ic es in D e vO p s ?
a) S c a lab ility a n d flex ib ility
b ) E a s e o f d e p lo ym e n t
c ) S im p lic ity a n d e as e o f m a in te n an c e
d ) A ll o f th e a b o ve
A n s w e r: d
2 1 ) W h a t a re th e m a in d ra w b a c k s o f u s in g m ic ro s erv ic es in D ev O p s ?
a ) C o m p lex ity o f m a n a g in g m u ltip le s ervic e s
b ) In ter-s erv ic e c o m m u n ic a tio n o v erh e a d
c ) La c k o f s c a la b ility
d ) A ll o f th e a b o ve
A n s w e r: a
2 2 ) H o w d o e s u s in g m ic ro s ervic e s im p a c t d ep lo ym en t in D e vO p s ?

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

a) D ep lo ym en t is m o re c o m p lex b ec a u s e m u ltip le s e rv ic e s m u s t b e d ep lo yed


b ) D e p lo ym e nt is s im p le r b e c a u s e s ervic e s c a n b e d ep lo ye d in d ep en d en tly
c ) D e p lo ym e n t is n o t im p a c te d b y th e a rc h itec tu re
d ) D e p lo ym e n t is m a d e ea s ie r b ec a u s e o f th e in te r-d e p e nd en c ies o f s e rv ic e s
A n s w e r: b

OBJECTIVE TYPE UNIT WISE QUESTIONS


UNIT-3

1 ) W h a t is th e p u rp o s e o f s o u rc e c o d e m a n a g e m e n t in D ev O p s ?
a) T o m a n a g e a n d tra c k c h a n g e s to s o u rc e c o d e
b ) T o s to re s o u rc e c o d e
c ) T o c o m p ile s o u rc e c o d e
d ) T o d is trib u te s o u rc e c o d e
A n s w e r: a
2 ) W h a t a re th e m a in b e n efits o f u s in g s o u rc e c o d e m a n a g em e n t in D ev O p s ?
a) Im p ro ve d c o lla b o ra tio n a nd c o o rd in a tio n b etw ee n d ev elo p e rs
b ) In c re a s ed v is ib ility in to c o d e c h a n g es
c ) B etter o rg a n iza tio n o f s o u rc e c o d e
d ) A ll o f th e a b o ve
A n s w e r: d
3 ) W h a t a re th e m a in to o ls u s ed f o r s o u rc e c o d e m a n a g em en t in D ev O p s ?
a) G it
b ) S u b v ers io n
c ) M erc u ria l
d ) A ll o f th e a b o ve
A n s w e r: a
4 ) H o w d o es u s in g s o u rc e c o d e m a n a g e m en t im p a c t d ep lo ym e n t in D e vO p s ?
a ) D ep lo ym e n t is n o t im p a c ted b y s o u rc e c o d e m a n a g em en t
b ) D ep lo ym en t is m a d e m o re c o m p le x b e c a u s e o f th e n ee d to m a n a g e c o d e c h a n g e s
c ) D e p lo ym en t is s im p lified b ec a u s e c o d e c h a n g e s a re tra c k e d a n d c a n b e ea s ily ro lle d
bac k
d ) D ep lo ym en t is m a d e e a s ier b e c a u s e c o d e c h a n g es a re a u to m a tic a lly c o m p ile d
A n s w e r: c
5 ) H o w d o es u s in g s o u rc e c o d e m a n a g em en t im p a c t c o lla b o ra tio n b e tw e en d ev elo p ers

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

in D ev O p s ?
a ) C o lla b o ra tio n is n o t im p a c ted b y s o u rc e c o d e m a n a g e m e n t
b ) C o lla b o ra tio n is m a d e m o re c o m p lex b ec a u s e o f th e n e ed to m a n a g e c o d e c h a n g es
c ) C o lla b o ra tio n is s im p lif ie d b ec a u s e c o d e c h a n g e s a re tra c k ed a nd c a n b e ea s ily
rev ie w ed
d ) C o lla b o ra tio n is m a d e ea s ie r b e c a u s e c o d e c h a ng es a re a u to m a tic a lly c o m p ile d
A n s w e r: c
6 ) W h a t is a m ig ra tio n in D ev O p s ?
a) A p ro c es s o f m o v ing d a ta f ro m o n e lo c a tio n to a n o th er
b ) A p ro c es s o f c h a n g in g in fra s tru c tu re
c ) A p ro c e s s o f u p d atin g s o ftw a re
d ) A p ro c e s s o f c h a n g in g d ev elo p m en t p ro c e s s es
A n s w e r: a
7 ) W h a t a re th e m a in b e n efits o f u s in g m ig ra tio n s in D ev O p s ?
a) Im p ro ve d s ta b ility o f s ys tem s
b ) In c re a s ed e ffic ie n c y o f s ys tem s
c ) B etter a b ility to s c a le s ys tem s
d ) A ll o f th e a b o ve
A n s w e r: d
8 ) W h a t a re th e m a in c h a llen g e s a s s o c ia ted w ith m ig ra tio n s in D ev O p s ?
a ) D ata lo s s
b ) D o w n tim e
c ) In c re a s ed c o m p le xity o f s ys te m s
d ) A ll o f th e a b o ve
A n s w e r: d
9 ) H o w d o m ig ra tio n s im p a c t d ep lo ym en t in D ev O p s ?
a) D ep lo ym en t is n o t im p a c ted b y m ig ra tio n s
b ) D e p lo ym e nt is m a d e m o re c o m p le x b ec a u s e o f th e n ee d to m a n a g e d a ta m ig ra tio n s
c ) D e p lo ym en t is s im p lified b ec a u s e m ig ra tio n s a re a u to m a te d
d ) D ep lo ym en t is m a d e e a s ier b e c a u s e m ig ra tio ns a re a u to m a tic a lly p e rfo rm e d
A n s w e r: b
1 0 ) H o w d o m ig ra tio n s im p a c t c o lla b o ra tio n b etw ee n te a m s in D ev O p s ?
a) C o lla b o ra tio n is n o t im p a c te d b y m ig ra tio n s
b ) C o lla b o ra tio n is m a d e m o re c o m p lex b e c a u s e o f th e n e ed to c o o rd in a te m ig ra tio n s
c ) C o lla b o ra tio n is s im p lifie d b e c a u s e m ig ra tio n s a re tra c k e d a n d c a n b e ea s ily re view e d
d ) C o lla b o ra tio n is m a d e e a s ie r b ec a u s e m ig ra tio n s a re a u to m a tic a lly p erfo rm e d
A n s w e r: b
1 0 ) W h a t is s h a re d a u th en tic a tio n in D e vO p s ?

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

a ) A s ys tem fo r s h a rin g a u th en tic a tio n c re d en tia ls b etw ee n d iffere n t s ys tem s


b ) A s ys te m f o r s to rin g a u th en tic a tio n c red en tia ls
c ) A s ys tem f o r m a n a g in g a u th en tic a tio n c red en tia ls
d ) A s ys tem fo r d is trib u tin g a u th en tic a tio n c red en tia ls
A n s w e r: a
1 1 )W h a t are th e m a in b en e fits o f u s in g s h a red a u th e n tic atio n in D ev O p s ?
a ) Im p ro ve d s ec u rity
b ) In c rea s e d e ffic ien c y
c ) B ette r a b ility to m a n a g e a uth e n tic a tio n c re d e n tia ls
d ) A ll o f th e ab o v e
A n s w e r: d
1 2 ) W h a t a re th e m a in c h a llen g es a s s o c ia te d w ith s h a re d a u th en tic a tio n in D e vO p s ?
a ) L a c k o f c o n tro l o ve r a u th en tic a tio n c red en tia ls
b ) In c rea s e d ris k o f u n a u th o riz ed a c c e s s
c ) In c re as e d c o m p lex ity o f s ys te m s
d ) A ll o f th e ab o v e
A n s w e r: d
1 3 ) H o w d o e s s h a re d a u th en tic a tio n im p a c t d ep lo ym e n t in D e vO p s ?
a ) D ep lo ym e n t is n o t im p a c ted b y s h a re d a u th e n tic a tio n
b ) D e p lo ym en t is m a d e m o re c o m p le x b ec a u s e o f th e n e ed to m a n a g e s h a re d
a u th en tic a tio n c red en tia ls
c ) D e p lo ym en t is s im p lified b ec a u s e a u th e n tic a tio n is c e n tra lize d
d ) D ep lo ym en t is m a d e e a s ier b e c a u s e a u th en tic a tio n is a u to m a tic a lly p e rfo rm ed
A n s w e r: b
1 4 ) H o w d o e s s h a re d a u th en tic a tio n im p a c t c o lla b o ra tio n b e tw e en te a m s in D e vO p s ?
a ) C o lla b o ra tio n is n o t im p a c ted b y s h a re d a u th en tic a tio n
b ) C o lla b o ra tio n is m a d e m o re c o m p le x b ec a u s e o f th e n ee d to c o o rd in a te s h a re d
a u th en tic a tio n c red en tia ls
c ) C o lla b o ra tio n is s im p lifie d b e c a u s e a u th en tic a tio n is c en tra liz ed
d ) C o lla b o ra tio n is m a d e e a s ie r b ec a u s e a u th e n tic a tio n is a u to m a tic a lly p e rfo rm e d .
1 5 ) W h a t is G it?
a ) A v ers io n c o n tro l s ys tem
b ) A file b a c k u p s ys te m
c ) A p ro jec t m a n a g em e n t to o l
d ) A s o ftw a re d is trib u tio n p la tfo rm
A n s w e r: a
1 6 ) W h a t a re th e m a in b en ef its o f u s in g G it in s o ftw a re d e ve lo p m e n t?
a) Im p ro ve d c o lla b o ra tio n

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

b ) In c rea s e d e ffic ien c y


c ) B ette r a b ility to m a n a g e c o d e c h a n g es
d ) A ll o f th e ab o v e
A n s w e r: d
1 7 ) W h a t is th e d e fa u lt b ra n c h in a G it rep o s ito ry?
a) m a s ter
b ) d e ve lo p
c ) tru n k
d ) m a in
A n s w e r: a
1 8 ) H o w d o e s G it h a n d le c o n f lic ts b e tw e en m u ltip le c o d e c h a n g es ?
a) G it a u to m a tic a lly m e rg es c h a n g e s
b ) G it p ro m p ts th e u s e r to m a n u a lly res o lv e c o n flic ts
c ) G it d is c a rd s c o n flic tin g c h a n g e s
d ) G it s to re s c o n flic tin g c h an g es a s s ep a ra te b ra n c h es
A n s w e r: b
1 9 ) W h a t is th e p u rp o s e o f a G it s ta s h ?
a ) T o s a v e c h a n g es tem p o ra rily w ith o u t c o m m ittin g th e m
b ) T o d is c a rd c h a n g e s
c ) T o re ve rt c o d e c h a n g e s
d ) T o s to re c h a n g es a s a n e w b ra n c h
2 0 ) W h a t is G itH u b ?
a) A ve rs io n c o n tro l s ys te m
b ) A c o d e h o s tin g p la tf o rm
c ) A p ro jec t m a n a g e m e n t to o l
d ) A s o f tw a re d is trib u tio n p la tfo rm
A n s w e r: b
2 1 ) W h a t a re th e m a in b en ef its o f u s in g G itH u b in s o ftw a re d ev elo p m e n t?
a) Im p ro ve d c o lla b o ra tio n
b ) In c rea s e d v is ib ility o f c o d e c h a n g e s
c ) B etter a b ility to m a n a g e c o d e c h a n g e s
d ) A ll o f th e a b o ve
A n s w e r: d
2 2 ) W h a t is a G itH u b rep o s ito ry?
a) A c o llec tio n o f c o d e a n d re late d files
b ) A p la c e to s to re c o d e b a c k u p s
c ) A p ro jec t m a n a g e m e n t to o l
d ) A s o f tw a re d is trib u tio n p la tfo rm

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

A n s w e r: a
2 3 ) W h a t is a p u ll req u es t in G itH u b ?
a ) A req u es t fo r c o d e c h a n g e s to b e m erg e d in to a rep o s ito ry
b ) A re q u e s t fo r c o d e to b e s to re d in a rep o s ito ry
c ) A re q u e s t fo r a rep o s ito ry to b e d e leted
d ) A re q u e s t fo r c o d e to b e re view e d
A n s w e r: a
2 4 ) W h a t is a G itH u b is s u e?
a) A p la c e to rep o rt b u g s o r req ue s t f ea tu re s
b ) A p la c e to s to re c o d e b a c k u p s
c ) A p ro jec t m a n a g e m e n t to o l
d ) A s o f tw a re d is trib u tio n p la tfo rm
A n s w e r: a
2 5 ) W h a t is D o c k e r?
a ) A v irtu a l m a c h in e s o ftw a re
b ) A c o n ta in eriza tio n p la tfo rm
c ) A c o n fig u ra tio n m a n a g e m en t to o l
d ) A s o f tw a re d is trib u tio n p la tfo rm
A n s w e r: b
2 6 ) W h a t a re th e m a in b en ef its o f u s in g D o c k e r in s o ftw a re d e ve lo p m en t?
a) Im p ro ve d a p p lic a tio n p o rta b ility
b ) In c re a s ed e ffic ie n c y in d ep lo yin g a p p lic a tio n s
c ) B etter a b ility to m a n a g e d e p e n d e nc ies
d ) A ll o f th e a b o ve
A n s w e r: d
2 7 ) W h a t is a D o c k er im a g e?
a ) A p re -c o n fig u red en v iro nm e n t fo r ru n n in g ap p lic a tio n s
b ) A s et o f in s tru c tio n s f o r b u ild in g c o n ta in ers
c ) A p la c e to s to re c o n fig u ra tio n d a ta
d ) A w a y to m a n a g e c o nta in er re s o u rc e s
A n s w e r: a
2 8 ) W h a t is a D o c k er c o n ta in er?
a) A p re-c o n fig u re d en v iro n m e n t fo r ru n n in g a p p lic a tio n s
b ) A s et o f in s tru c tio n s f o r b u ild in g c o n ta in ers
c ) A p la c e to s to re c o n fig u ra tio n d a ta
d ) A ru n n in g in s ta n c e o f a D o c k er im a g e
A n s w e r: d
2 9 ) W h a t is th e p u rp o s e o f a D o c k e rf ile ?

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

a ) T o s to re c o n fig u ra tio n d a ta fo r a D o c k er c o n ta in er
b ) T o s p e c ify th e s te p s to b u ild a D o c k e r im a g e
c ) T o ru n a D o c k e r c o n ta in er
d ) T o m a n a g e c o n ta in e r re s o u rc e s
A n s w e r: b
3 0 )W h a t is G e rrit?
a ) A v ers io n c o n tro l s ys tem
b ) A c o d e h o s tin g p la tfo rm
c ) A c o d e re view to o l
d ) A s o ftw a re d is trib u tio n p la tfo rm
A n s w e r: c
3 1 ) W h a t a re th e m a in b en ef its o f u s in g G e rrit in s o f tw a re d e ve lo p m e nt?
a) Im p ro ve d c o lla b o ra tio n
b ) In c re a s ed v is ib ility o f c o d e c h a n g e s
c ) B etter a b ility to m a n a g e c o d e c h a n g e s
d ) A ll o f th e a b o ve
A n s w e r: d
3 2 ) W h a t is a G errit c h a n g e?
a) A s et o f c o d e c h a n g e s in a re p o s ito ry
b ) A req u es t f o r c o d e c h a ng es to b e m e rg ed
c ) A req u es t fo r c o d e rev iew
d ) A p la c e to s to re c o d e b a c k u p s
A n s w e r: a
3 3 ) W h a t is a G errit p a tc h s e t?
a) A ne w v ers io n o f a c h a n g e in G errit
b ) A req u es t f o r c o d e c h a ng es to b e m e rg ed
c ) A req u es t fo r c o d e rev iew
d ) A p la c e to s to re c o d e b a c k u p s
A n s w e r: a
3 4 ) W h a t is a G errit rev ie w ?
a ) A n e va lu a tio n o f c o d e c h a n g e s in G e rrit
b ) A re q u e s t fo r c o d e c h a n g es to b e m e rg ed
c ) A req u es t fo r c o d e rev iew
d ) A p la c e to s to re c o d e b a c k u p s
A n s w e r: a

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

OBJECTIVE TYPE UNIT WISE QUESTIONS


UNIT-4
1 ) W h a t is J e n k ins ?
a) A virtu a l m a c h in e s o ftw a re
b ) A c o n tin u o u s in teg ra tio n a n d c o n tin u o u s d elive ry ( C I/ C D ) to o l
c ) A c o n fig u ra tio n m a n a g e m en t to o l
d ) A s o f tw a re d is trib u tio n p la tfo rm
A n s w e r: b
2 ) W h a t a re th e m a in b e n efits o f u s in g J en k in s in s o f tw a re d e ve lo p m e n t?
a ) Im p ro ve d c o lla b o ra tio n
b ) In c rea s e d e ffic ien c y in s o ftw a re d e liv ery
c ) B ette r a b ility to m a n a g e b u ild a n d d e p lo ym e nt p ro c es s e s
d ) A ll o f th e ab o v e
A n s w e r: d
3 ) W h a t is a J e nk in s jo b ?
a ) A s e t o f in s tru c tio n s fo r b u ild in g a n d d ep lo yin g s o ftw a re
b ) A p la c e to s to re c o d e b a c k u p s
c ) A p ro jec t m a n a g em e n t to o l
d ) A s o ftw a re d is trib u tio n p la tfo rm
A n s w e r: a
4 ) W h a t is a J e n k in s b u ild ?
a ) T h e p ro c e s s o f b u ild in g a n d c o m p ilin g s o ftw a re
b ) A p la c e to s to re b u ild a rtifa c ts
c ) A re q u e s t fo r c o d e rev ie w
d ) A ru n n in g in s ta n c e o f a D o c k er im a g e
A n s w e r: a
5 ) W h a t is a J e nk in s p ip elin e?
a ) A s e t o f in s tru c tio n s fo r b u ild in g a n d d ep lo yin g s o ftw a re
b ) A c o n tin u o u s d elive ry p ip elin e
c ) A p la c e to s to re c o n fig u ra tio n d a ta
d ) A w a y to m a n a g e c o nta in er re s o u rc e s
A n s w e r: b

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

6 ) W h a t is a J e nk in s p lu g in ?
a ) A s o ftw a re c o m p o n en t th a t ad d s fu n c tio n ality to J e n k ins
b ) A ve rs io n c o n tro l s ys te m
c ) A c o d e re view to o l
d ) A s o ftw a re d is trib u tio n p la tfo rm
A n s w e r: a
7 ) W h a t a re th e m a in b e n efits o f u s in g J en k in s p lu g in s in s o ftw a re d ev elo p m e n t?
a) Im p ro ve d e ffic ien c y in s o f tw a re d e liv ery
b ) In c rea s e d fle xib ility in c u s to m iz in g J en k in s
c ) B ette r a b ility to in teg ra te w ith o th e r to o ls a n d s ys te m s
d ) A ll o f th e ab o v e
A n s w e r: d
8 ) W h a t is th e p u rp o s e o f th e J en k in s G it p lu g in ?
a ) T o in teg ra te G it ve rs io n c o n tro l w ith J e n k in s
b ) T o m a n a g e J en k in s jo b s
c ) T o a u to m a te c o d e rev iew p ro c es s e s
d ) T o d is trib u te s o ftw a re p a c k a g es
A n s w e r: a
9 ) W h a t is th e p u rp o s e o f th e J en k in s Pip elin e p lu g in ?
a) T o d ef in e a nd m a n a g e J en k in s p ip e lin e s
b ) T o a u to m a te c o d e rev iew p ro c es s e s
c ) T o d is trib u te s o ftw a re p a c k a g es
d ) T o m a n a g e D o c k e r im a g e s
A n s w e r: a
1 0 ) W h a t is th e p u rp o s e o f th e J e n k in s D e p lo y m e n t P ip e lin e p lug in ?
a) T o au to m a te d ep lo ym e n t p ro c e s s es in J e n k in s
b ) T o m a n a g e J e n k in s jo b s
c ) T o in te g ra te ve rs io n c o n tro l w ith J en k in s
d ) T o d is trib u te s o ftw a re p a c k a g es
A n s w e r: a
1 1 ) W h a t is a trig g er in D e vO p s ?
a) A n e ve n t o r c o n d itio n th a t in itia tes a p ro c es s o r a c tio n
b ) A v ers io n c o ntro l s ys tem
c ) A c o d e re vie w to o l
d ) A s o f tw a re d is trib u tio n p la tfo rm
A n s w e r: a
1 2 ) W h a t a re th e m a in typ e s o f trig g ers in D ev O p s ?
a) S c h ed u le d trig g e rs

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

b ) E v en t-b a s ed trig g e rs
c ) M a nu a l trig g ers
d ) A ll o f th e a b o ve
A n s w e r: d
1 3 ) W h a t is th e p u rp o s e o f s c h ed u le d trig g ers in D ev O p s ?
a) T o in itia te p ro c e s s es o r a c tio n s a t p re-d eterm in e d tim e s
b ) T o res p o n d to e ve n ts o r c o n d itio n s
c ) T o m a n u a lly in itia te p ro c es s e s o r a c tio n s
d ) T o d is trib u te s o ftw a re p a c k a g es
A n s w e r: a
1 4 ) W h a t is th e p u rp o s e o f e ve n t-b a s ed trig g ers in D e vO p s ?
a) T o re s p o n d to ev en ts o r c o n d itio n s
b ) T o in itia te p ro c es s e s o r a c tio n s a t p re-d e te rm in ed tim es
c ) T o m a n u a lly in itia te p ro c es s e s o r a c tio n s
d ) T o d is trib u te s o ftw a re p a c k a g es
A n s w e r: a
1 5 ) W h a t is th e p u rp o s e o f m a n u a l trig g e rs in D ev O p s ?
a) T o m a n u a lly in itia te p ro c e s s es o r a c tio n s
b ) T o res p o n d to e ve n ts o r c o n d itio n s
c ) T o in itia te p ro c es s e s o r a c tio n s at p re -d e te rm in ed tim es
d ) T o d is trib u te s o ftw a re p a c k a g es
A n s w e r: a
1 6 ) W h a t is th e p u rp o s e o f b u ild p ip elin es in D e vO p s ?
a ) T o a u to m a te the p ro c es s o f b u ild in g s o ftw a re
b ) T o m a n a g e ve rs io n c o n tro l
c ) T o a u to m a te c o d e rev ie w p ro c e s s es
d ) T o d is trib u te s o ftw a re p a c k a g es
A n s w e r: a
1 7 ) W h a t is th e d iffe re n c e b etw ee n b u ild p ip e lin e s an d o rc h e s tra tio n in D e vO p s ?
a ) B u ild p ip e lin e s a re a s eries o f a uto m a ted s te p s fo r b u ild in g s o ftw a re, w h ile
o rc h es tra tio n in vo lv es c o o rd in a tin g a n d a u to m a tin g th e va rio u s s te p s a n d p ro c e s s es
in vo lv ed in s o ftw a re d e liv ery
b ) B u ild p ip elin es a re a m a n ua l p ro c e s s , w h ile o rc h es tra tio n in v o lve s au to m a tin g
p ro c e s s es
c ) B u ild p ip e lin e s a re o n ly fo r c o d e rev ie w , w h ile o rc h e s tra tio n in v o lve s th e en tire
s o f tw a re d e liv ery p ro c es s
d ) T h ere is n o d iffe ren c e , th ey refe r to th e s a m e th in g
A n s w e r: a

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

1 8 ) W h a t a re th e b e n ef its o f u s in g b u ild p ip elin es in D ev O p s ?


a ) Im p ro ve d eff ic ien c y in s o ftw a re d e liv ery
b ) In c rea s e d tra n s p a re n c y in s o ftw a re d e ve lo p m en t p ro c es s e s
c ) B ette r a b ility to id en tif y a n d re s o lve p ro b le m s e a rly in th e d ev elo p m en t p ro c e s s
d ) A ll o f th e ab o v e
A n s w e r: d
1 9 ) W h a t a re th e b e n ef its o f u s in g o rc h es tra tio n in D ev O p s ?
a ) Im p ro ve d eff ic ien c y in s o ftw a re d e liv ery
b ) In c rea s e d c o lla b o ra tio n a m o n g tea m s
c ) Im p ro v ed a b ility to s c a le p ro c es s e s a nd s ys te m s
d ) A ll o f th e ab o v e
A n s w e r: d
2 0 ) H o w d o es o rc h es tra tio n in D ev O p s h e lp w ith c o n tin uo u s d e liv ery a n d c o n tin u o u s
d e p lo ym e n t?
a ) B y c o o rd in a tin g a n d a u to m a tin g th e v a rio u s s tep s a nd p ro c e s s es in vo lve d in s o ftw a re
d e liv ery b ) B y m a n ua l rev ie w a n d ap p ro v a l o f ev ery s te p in th e d elive ry p ro c e s s
c ) B y o nly b u ild in g s o ftw a re, w ith o u t c o o rd in a tin g a n d a u to m a ting d e liv ery p ro c es s e s
d ) B y o n ly d is trib u tin g s o ftw a re p a c k a g es , w ith o u t c o o rd in a tin g a n d a uto m a tin g d e liv ery
p ro c e s s es
A n s w e r: a

OBJECTIVE TYPE UNIT WISE QUESTIONS


UNIT-5
1 ) W h a t is th e m a in g o a l o f tes tin g in D ev O p s ?

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

a ) T o e n s u re th a t s o ftw a re is o f h ig h q u a lity a n d m e ets c u s to m e r req u irem e n ts


b ) T o in c rea s e d ev elo p m en t s p e ed
c ) T o im p lem en t ve rs io n c o n tro l
d ) T o a u to m a te c o d e rev iew p ro c es s e s
A n s w e r: a
2 ) W h a t a re th e b e ne fits o f in c o rp o ra tin g tes tin g in to th e D ev O p s p ro c e s s ?
a) F a s ter tim e-to -m a rk e t fo r s o ftw a re rele a s es
b ) Im p ro v ed s o ftw a re q u a lity a n d relia b ility
c ) In c re a s ed tra n s p a ren c y in th e d e ve lo p m e nt p ro c es s
d ) A ll o f th e ab o v e
A n s w e r: d
3 ) W h a t is c o n tin u o u s te s tin g in D e vO p s ?
a ) T h e p ra c tic e o f te s tin g s o ftw a re c o n tin u o u s ly th ro u g h o u t th e d ev elo p m e n t p ro c e s s
b ) A m a n u a l te s tin g p ro c es s
c ) O n ly te s tin g s o ftw a re a fter it h a s b e en b u ilt
d ) O n ly te s tin g s o ftw a re b efo re it is d ep lo yed
A n s w e r: a
4 ) W h a t is th e ro le o f a u to m a tio n in te s tin g in D e vO p s ?
a ) A uto m a tio n h elp s to m a k e tes ting fa s te r, m o re eff ic ien t, a n d m o re reliab le
b ) A u to m a tio n is n o t n ec es s a ry in tes tin g
c ) A u to m a tio n s lo w s d o w n th e te s tin g p ro c e s s
d ) A u to m a tio n o n ly m a k e s tes tin g m o re m a n u a l
A n s w e r: a
5 ) W h a t is th e p u rp o s e o f te s t-d rive n d ev elo p m en t (T D D ) in D e vO p s ?
a) T o en s u re tha t c o d e m e ets re q u irem en ts b ef o re it is ev en w ritte n
b ) T o te s t c o d e a fter it h a s b ee n w ritte n
c ) T o m a n u a lly re vie w a n d a p p ro v e c o d e
d ) T o o n ly d is trib u te s o ftw a re p a c k a g es
A n s w e r: a
6 ) W h a t is S e len iu m u s e d fo r in s o ftw a re tes tin g ?
a) A u to m a te d te s tin g o f w eb a p p lic a tio n s
b ) A u to m a ted tes tin g o f d es k to p a p p lic a tio n s
c ) A u to m a ted tes tin g o f m o b ile a p p lic a tio n s
d ) A u to m a ted tes tin g o f c o m m a n d -lin e a p p lic a tio n s
A n s w e r: a
7 ) W h a t p ro g ram m ing la n g u a g e s c a n b e u s e d w ith S elen iu m ?
a ) J a v a , P yth o n , R u b y , a n d C #
b ) A s s em b ly la n g u a g e o n ly

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

c ) S w ift o n ly
d ) V is u a l B a s ic o n ly
A n s w e r: a
8 ) W h a t is th e S e le n iu m W e b D rive r?
a ) A lib ra ry f o r a u to m a tin g w e b b ro w s e rs
b ) A lib ra ry fo r a u to m a tin g d es k to p a p p lic a tio n s
c ) A lib ra ry fo r a u to m a tin g m o b ile a p p lic a tio n s
d ) A lib ra ry fo r a u to m a tin g c o m m a n d -lin e a p p lic a tio n s
A n s w e r: a
9 ) W h a t a re th e c o m p o n en ts o f th e S e le n iu m S u ite ?
a ) S e le n ium W eb D rive r, S e len iu m G rid , a n d S elen iu m ID E
b ) S elen iu m W e b D riv er o n ly
c ) S elen iu m G rid o n ly
d ) S ele niu m ID E o n ly
A n s w e r: a
1 0 ) W h a t is th e p u rp o s e o f S e le n iu m G rid in th e S e le n iu m S u ite ?
a ) T o d is trib u te te s ts a c ro s s m u ltip le m a c h in es a n d en v iro n m e n ts fo r p a ra llel ex ec u tio n
b ) T o ru n tes ts s e q u e n tia lly o n a s in g le m a c h in e
c ) T o m a n u a lly re vie w a n d a p p ro v e tes ts
d ) T o o n ly d is trib u te te s t res u lts
A n s w e r: a
1 1 ) W h a t is th e m a in g o a l o f J a v a S c rip t te s tin g in D e vO p s ?
a) T o en s u re the fu n c tio n a lity a n d relia b ility o f J a v a S c rip t c o d e
b ) T o en s u re th e fu n c tio n a lity a nd re lia b ility o f o n ly s erv er-s id e c o d e
c ) T o en s u re th e fu n c tio n a lity a n d re lia b ility o f o n ly d a ta b a s e c o d e
d ) T o en s u re th e fu n c tio n a lity a n d re lia b ility o f o n ly H T M L a n d C S S c o d e
A n s w e r: a
1 2 ) W h a t a re s o m e c o m m o n to o ls u s ed fo r J a va S c rip t te s tin g in D e vO p s ?
a) J e s t, M o c h a , a n d K a rm a
b ) G it, J en k in s , a n d D o c k e r
c ) S ele n iu m , A p p iu m , a n d E s p re s s o
d ) O ra c le , M yS Q L, a n d P o s tg re S Q L
A n s w e r: a
1 3 ) W h a t is u n it tes ting in J a v a Sc rip t tes tin g ?
a ) T e s tin g in d iv id u a l u n its o f J a va S c rip t c o d e in is o la tio n
b ) T es tin g th e en tire J a v a S c rip t a p p lic a tio n a s a w h o le
c ) T es ting o n ly s erve r-s id e c o d e
d ) T es tin g o n ly d a ta b a s e c o d e

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

A n s w e r: a
1 4 ) W h a t is in te g ra tio n te s tin g in J a va S c rip t te s tin g ?
a) T e s tin g th e in te g ra tio n o f in d ivid u a l u n its o f J a va S c rip t c o d e w ith th e res t o f th e
a p p lic a tio n
b ) T es tin g th e en tire J av a S c rip t a p p lic atio n a s a w h o le
c ) T e s tin g o n ly s e rv er-s id e c o d e
d ) T e s tin g o n ly d ata b a s e c o d e
A n s w e r: a
1 5 ) H o w c a n J a v a S c rip t te s tin g im p ro v e th e s p ee d a n d re lia b ility o f s o ftw a re d elive ry in
D e vO p s ?
a) B y q u ic k ly id en tifying a n d res o lvin g is s u es in J a va S c rip t c o d e, red u c in g th e ris k o f
c a u s in g p ro b le m s in la ter s ta g es o f th e s o ftw a re d elive ry p ro c e s s
b ) B y s lo w in g d o w n th e s o ftw a re d e liv ery p ro c es s
c ) B y h a vin g n o im p a c t o n th e s o ftw a re d e liv ery p ro c es s
d ) B y in c re a s in g th e m a n u a l effo rt req u ire d fo r s o ftw a re d e liv ery
A n s w e r: a
1 6 ) W h a t is P u p p et M a s ter?
a ) A n o p e n -s o u rc e c o nf ig u ra tio n m a n a g em e n t to o l
b ) A ve rs io n c o n tro l s ys te m
c ) A c lo u d s ervic e p ro v id e r
d ) A c o n tin u o u s in teg ra tio n to o l
A n s w e r: a
1 7 ) W h a t is th e m a in p u rp o s e o f u s in g P u p p et M a s te r in D ev O p s ?
a ) T o a u to m a te the c o n fig u ra tio n a n d m a n a g e m e n t o f IT in fra s tru c ture
b ) T o a u to m a te th e d ev elo p m e n t p ro c e s s
c ) T o a u to m a te th e d ep lo ym e n t p ro c e s s
d ) T o a u to m a te a ll s ta g es o f th e s o ftw a re d e liv ery p ro c es s
A n s w e r: a
1 8 ) W h a t k in d o f in fra s tru c tu re c a n b e m a n a g e d u s in g P u p p et M a s ter?
a) P h ys ic al s erv ers , virtu al m a c h in es , a n d c lo u d -b a s e d s ys tem s
b ) O n ly p h ys ic a l s erv ers
c ) O n ly virtu a l m a c h in es
d ) O n ly c lo u d -b a s e d s ys tem s
A n s w e r: a
1 9 ) W h a t is a Pu p p e t m o d u le in P u p p et M a s te r?
a ) A p re -w ritten s et o f P u p p et c o d e th a t c a n b e u s e d to a u to m a te s p ec ific ta s k s
b ) A m a n u al p ro c e s s th a t req u ire s m a n u a l c o d in g
c ) A to o l fo r c o d e c o lla b o ra tio n

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

d ) A to o l fo r c o d e d e p lo ym en t
A n s w e r: a
2 0 ) W h a t a re th e b e n ef its o f u s in g P u p p et M a s ter in D ev O p s ?
a) Im p ro ve d s p e ed , relia b ility, a n d c o n s is ten c y o f IT in fra s tru c tu re m a n a g e m en t
b ) In c re a s ed m a n u a l e ffo rt re q u ired f o r IT in fra s tru c tu re m a n a g e m e n t
c ) N o im p a c t o n IT in f ra s tru c tu re m a n a g em en t
d ) S lo w er a n d les s relia b le IT in fra s tru c tu re m a na g em en t
A n s w e r: a
2 1 ) W h a t is A n s ib le ?
a) A n o p e n -s o u rc e c o n fig u ra tio n m a n a g e m e n t to o l
b ) A v ers io n c o ntro l s ys tem
c ) A c lo u d s erv ic e p ro vid e r
d ) A c o n tin u o u s in teg ra tio n to o l
A n s w e r: a
2 2 ) W h a t is th e m a in p u rp o s e o f u s in g A n s ib le in D ev O p s ?
a) T o au to m a te th e c o n fig u ra tio n a n d m a n a g e m en t o f IT inf ra s tru c tu re
b ) T o a u to m a te th e d ev elo p m en t p ro c es s
c ) T o a u to m a te th e d ep lo ym en t p ro c es s
d ) T o a u to m a te a ll s ta g e s o f th e s o ftw a re d elive ry p ro c e s s
A n s w e r: a
2 3 ) W h a t k in d o f in fra s tru c tu re c a n b e m a n a g e d u s in g A n s ib le ?
a) P h ys ic al s erv ers , virtu al m a c h in es , a n d c lo u d -b a s e d s ys tem s
b ) O n ly p h ys ic a l s erv ers
c ) O n ly virtu a l m a c h in es
d ) O n ly c lo u d -b a s ed s ys te m s
A n s w e r: a
2 4 ) W h a t is a n A n s ib le p la yb o o k in A n s ib le ?
a) A p re-w ritten s e t o f A n s ib le c o d e th a t c a n b e u s e d to a u to m a te s p ec ific ta s k s
b ) A m a n u al p ro c e s s th a t req u ire s m a n u a l c o d in g
c ) A to o l fo r c o d e c o lla b o ra tio n
d ) A to o l fo r c o d e d e p lo ym e n t
A n s w e r: a
2 5 ) W h a t a re th e b e n ef its o f u s in g A n s ib le in D e vO p s ?
a) Im p ro ve d s p e ed , relia b ility, a n d c o n s is ten c y o f IT in fra s tru c tu re m a n a g e m en t
b ) In c re a s ed m a n u a l e ffo rt re q u ired f o r IT in fra s tru c tu re m a n a g e m e n t
c ) N o im p a c t o n IT in f ra s tru c tu re m a n a g em en t
d ) S lo w er a n d les s re lia b le IT in fra s tru c tu re m a n a g em en t
A n s w e r: a

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I
De vO p s

2 6 ) W h a t is C h e f?
a) A n o p e n -s o u rc e c o n fig u ra tio n m a n a g e m e n t to o l
b ) A v ers io n c o ntro l s ys tem
c ) A c lo u d s erv ic e p ro vid e r
d ) A c o n tin uo u s in te g ra tio n to o l
A n s w e r: a
2 7 0 W h a t is th e m a in p u rp o s e o f u s in g C h ef in D e vO p s ?
a ) T o a u to m a te the c o n fig u ra tio n a n d m a n a g e m e n t o f IT in fra s tru c ture
b ) T o a u to m a te th e d ev elo p m en t p ro c es s
c ) T o a u to m a te th e d ep lo ym en t p ro c es s
d ) T o a u to m a te a ll s ta g es o f th e s o ftw a re d elive ry p ro c e s s
A n s w e r: a
2 8 ) W h a t k in d o f in fra s tru c tu re c a n b e m a n a g e d u s in g C h e f?
a) P h ys ic al s erv ers , virtu al m a c h in es , a n d c lo u d -b a s e d s ys tem s
b ) O n ly p h ys ic a l s erv ers
c ) O n ly virtu a l m a c h in es
d ) O n ly c lo u d -b a s e d s ys tem s
A n s w e r: a
2 9 ) W h a t is a C h ef rec ip e in C h e f?
a) A p re-w ritten s e t o f C h ef c o d e th a t c a n b e u s ed to a u to m a te s p e c ific ta s k s
b ) A m a n u al p ro c e s s th a t req u ire s m a n u a l c o d in g
c ) A to o l fo r c o d e c o lla b o ra tio n
d ) A to o l fo r c o d e d e p lo ym en t
A n s w e r: a
3 0 ) W h a t a re th e b e n ef its o f u s in g C h e f in D ev O p s ?
a) Im p ro ve d s p e ed , relia b ility, a n d c o n s is ten c y o f IT in fra s tru c tu re m a n a g e m en t
b ) In c re a s ed m a n u a l e ffo rt re q u ired f o r IT in fra s tru c tu re m a n a g e m e n t
c ) N o im p a c t o n IT in f ra s tru c tu re m a n a g em en t
d ) S lo w er a n d les s re lia b le IT in fra s tru c tu re m a n a g em en t
A n s w e r: a

P r e p a r e d b y M s . P . N a li n i M R I T S C S E ( A I& M L ) I II-I I

You might also like