100% found this document useful (2 votes)
412 views

DASA DevOps Fundamentals 2.0 Course Book Evlreconv

Uploaded by

Mio
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
100% found this document useful (2 votes)
412 views

DASA DevOps Fundamentals 2.0 Course Book Evlreconv

Uploaded by

Mio
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/ 334

CO U R S E B O O K

DASA DEVOPS
F U N D A M E N TA L S
Copyright and Disclaimer

DASA DevOps Fundamentals | r2.0.1

Copyright
Copyright © Devops Agile Skills Association LLC 2020. All rights reserved.
This is a commercial confidential publication. All rights reserved. This document may not, in a whole or
in part, be copied, reproduced, translated, photocopied, or reduced to any medium without prior and
express written consent from the publisher.
This course includes copyrightable work under license and is protected by copyright. No part of this
publication may be reproduced, distributed, or transmitted in any form or by any means, including
photocopying, recording, or other electronic or mechanical methods, without the prior written
permission of the publisher, except in the case of brief quotations embodied in critical reviews and
certain other noncommercial uses permitted by copyright law or further disseminated without the
express and written permission of the legal holder of that particular copyright. The Publisher reserves
the right to revoke that permission at any time. Permission is not given for any commercial use or sale
of this material.

Trade Marks
DevOps FundamentalsTM is a registered trademark of DASA Limited.
ITIL® is a registered trade mark of AXELOS Limited, used under permission of AXELOS Limited.
All rights reserved.

Disclaimer
Information provided about the course, modules, topics and any services for courses including
simulations or handouts, are an expression of intent only and are not to be taken as a firm offer or
undertaking. The Publisher reserves the right to discontinue or vary or maintain such course, modules,
topics, or services at any time without notice and to impose limitations on enrolment in any course.
The course materials provided may have hypertext links to a number of other web sites as a reference
to users. This service does not mean that the publisher endorses those sites or material on them in
any way. The publisher is not responsible for the use of a hypertext link for which a commercial charge
applies. Individual users are responsible for any charges that their use may incur.
The publisher is also not responsible for the discontinued service if any, for example, the Web links in
the course might not work in future.
The information in this course is written using a blend of British and American English. Although
every effort has been made regarding the usage of correct spelling, punctuation, vocabulary, and
grammar with regard to the Standard English, the publisher accepts no responsibility for any loss or
inconvenience caused due to the regional differences in the usage of the English language.

ii  │ Copyright © 2020


Contents
MoDuLe 1: InTroDuCIng DASA DevopS FunDAMenTALS 1
Let’s Get to Know Each Other 1
Module Objectives 1
Module Topics 2
DASA DevOps Fundamentals – An Introduction 2
Case Study - Easy Journey Airways 7
Module Summary 9

MoDuLe 2: BuILDIng The DevopS ConTexT 11


DevOps Journey at the Fundamental Level – Where are you? 11
Module Objectives 12
Module Topics 12
DevOps Evolution 12
Business Benefits of DevOps  18
DASA DevOps Principles 23
Goals and Measurements 30
Module Summary 37
Case Study: Easy Journey Airways – Assignment 2  38

MoDuLe 3: KnowIng DevopS For InDIvIDuALS 39


DevOps Journey at the Fundamental Level – Where are you? 39
Module Objectives 40
Module Topics 40
T-Shape Profiles  40
DevOps Capabilities by DASA  48
DASA DevOps Certifications  53
Module Summary  59

MoDuLe 4: geTTIng ACquAInTeD wITh DevopS CuLTure AnD BehAvIor 61


DevOps Journey at the Fundamental Level – Where are you? 61
Module Objectives 62
Module Topics 62
Embracing a DevOps Culture 62
Core Elements of a DevOps Culture 71
Implementation of a DevOps Culture  88
Module Summary 90
Case Study: Easy Journey Airways – Assignment 3 90

MoDuLe 5: unDerSTAnDIng The vALue oF DevopS For TeAMS AnD orgAnIzATIonS 91


DevOps Journey at the Fundamental Level – Where are you? 91
Module Objectives 92
Module Topics 92
Organizational Models 92
Team Autonomy  98
DevOps at Scale  105
Module Summary  108
Case Study: Easy Journey Airways – Assignment 4 109

Copyright © 2020 │  iii


MoDuLe 6: geTTIng FAMILIAr wITh DevopS MAnAgeMenT prACTICeS 111
DevOps Journey at the Fundamental Level – Where are you? 111
Module Objectives 112
Module Topics 112
ITSM 112
Lean  125
AGILE 133
Module Summary 144
Case Study: Easy Journey Airways – Assignment 5  145
Case Study: Easy Journey Airways – Assignment 6  145

MoDuLe 7: geTTIng FAMILIAr wITh DevopS TeChnICAL prACTICeS 147


DevOps Journey at the Fundamental Level – Where are you? 147
Module Objectives  148
Module Topics  148
Architecture  148
Modern Infrastructure and Cloud  158
Operations 169
Module Summary  175

MoDuLe 8: enABLIng DevopS TeAM perForMAnCe Through ConTInuouS DeLIvery AnD AuToMATIon 177
DevOps Journey at the Fundamental Level – Where are you? 177
Module Objectives  178
Module Topics  178
Software Delivery Automation Concepts  178
Continuous Delivery Core Concepts  182
Continuous Delivery Automation Concepts 192
Continuous Delivery Automation Focus Topics  198
Module Summary  205
Case Study: Easy Journey Airways – Assignment 7  205

MoDuLe 9: MeASurIng The perForMAnCe - The nexT STepS 207


DevOps Journey at the Fundamental Level – Where are you? 207
Module Objectives  208
Module Topics  208
Analyze the Current Situation  208
Improve Incrementally 211
Module Summary 213

CASe STuDy 215

exAM prepArATIon guIDe 225

MoCK exAM 229

AppenDIx A: AnSwerS 275

AppenDIx B: SyLLABuS 285

AppenDIx C: gLoSSAry 307

AppenDIx D: reLeASe noTeS 325

AppenDIx e: pArTICIpAnT FeeDBACK ForM 327

iv  │ Copyright © 2020


1
IntroducIng dASA devopS
FundAmentAlS
Let’s Get to Know Each Other
Introduce yourself in the following format:
 Name
 Qualification
 Organization
 Professional experience
 Experience in application development, infrastructure
development, and/or operations
 Knowledge of DevOps concepts and their practice
 Expectations from this course

Module Objectives
At the end of this module, you will be able to:
 Know about the basic structure of the DASA DevOps
Fundamentals course, such as:
{ Structure of Modules
{ Exam Specification
{ Course Agenda
 Relate DASA DevOps Fundamentals course with DASA and
Easy Journey Airways.
 Explain what role does DASA play in the DevOps world.
Copyright © 2020 │  1
Course Book | DASA DevOps Fundamentals

Module Topics
 DASA DevOps Fundamentals – An Introduction
 Case Study - Easy Journey Airways

INFO dASA devopS FundAmentAlS – An


12 key knowledge and skill IntroductIon
competences:
overview
Skill Areas:
„ Courage
This 2-day course provides learners an extensive introduction to the
core Agile DevOps principles. It covers all 12 key knowledge and
„ Teambuilding
skill competences that have been defined by the DevOps Agile
„ DevOps Leadership
Skills Association (DASA). With the help of key DevOps concepts and
„ Continuous Improvement
terminology, cases or scenarios, group discussions, and examples
Knowledge Areas: included in the course, you will acquire fundamental knowledge of
DevOps.
„ Business Value Optimization
„ Business Analysis DevOps Fundamentals is the starting point for anyone involved in an
„ Architecture and Design Agile and/or DevOps team. Improved workflows and faster deployment
„ Programming
start with a core understanding of DevOps fundamentals by all team
„ Continuous Delivery
members. This course is designed to provide the core education
necessary to build your DevOps vocabulary and to understand its
„ Test Specification
principles and practices. The course will inspire you to serve as a
„ Infrastructure Engineering
change champion by sharing and using what you have learned, and
„ Security, Risk, and Compliance continue to learn, about DevOps to lead and mentor others.

course objectives
Course Objectives
DevOps principles
into tangible
practices for teams

Critical success
DevOps factors for a
als – An Key concepts and
duction principles of DevOps DevOps
transformation

– Easy
Airways Organizational models
and architectures for
DevOps DevOps with
Lean, Agile, and
ITSM

Cloud and delivery


Drivers responsible pipeline automation
for the emergence
of DevOps
Modern operations
in DevOps context

Business benefits of
Automation of test, DevOps and
infrastructure, build, and Continuous Delivery
deployment

Copyright © 2019 | 6

2  │ Copyright © 2020
Module 1 | Introducing DASA DevOps Fundamentals

At the end of this course, you will be able to:


— Explain the drivers responsible for the emergence of DevOps.
— Define and discuss the key concepts and principles of DevOps.
— List and explain the business benefits of DevOps and continuous 
delivery.
— Know how teams can translate DevOps principles into tangible
practices.
— Learn about modern operations in a DevOps context.
— Explain the concepts of automating test, infrastructure, build,
and deployment processes.
— Describe how DevOps relates to Lean, Agile, and ITSM
methodologies.
— Get insight into the various organizational DevOps models and
architectures.
— Identify how Cloud and Delivery Pipeline Automation optimize
and accelerate the ways of working.
— Discuss the critical success factors for DevOps transformation.

devops Journey at the Fundamental level – the course


Structure

Steps of a DevOps Journey or


Different Sections of the Course

DevOps - The DevOps for DevOps for Teams


DevOps Practices The Next Steps
Context Individuals and Organizations

► Introducing ► Knowing DevOps ► Getting ► Getting Familiar ► Measuring the


DASA DevOps for Individuals Acquainted with with DevOps Performance -
Fundamentals DevOps Culture Management The Next Steps
and Behavior Practices
► Building the
DevOps Context ► Understanding ► Getting Familiar
the Value of with DevOps
DevOps for Technical
Teams and Practices
Organizations ► Enabling DevOps
Teams Perfor-
mance Through
Continuous
Delivery and
Automation

Modules of the
Course

The course is divided into various sections that further consist of one
or more modules. These sections relate to the steps of a successful
DevOps journey at the fundamental level. Copyright © 2020 │  3
Course Book | DASA DevOps Fundamentals

Course Material
course material

Slide References and


Supporting Material

Knowledge Check
DevOps
als – An Assignments
duction
Case Study
– Easy
Airways Exam Preparation Guide

Mock Exam
Course
Book Glossary

Syllabus

Pre- and Post-course Reading


Material

Quick Reference Cards

Practice Paper
Learning Track
Components

The course material consists of two primary components:


Copyrig
— Course Book: You can refer to the Course Book after the training
session to go through the concepts taught in each module. It
is a comprehensive source of information that is structured to
make learning easy, simple, and consistent.
— Learning Track Components: The components make the
journey of the course exciting. It consists of various items that
you  should  consider  completing  at  a  specific  time  during  the 
course journey.
{ Before the training session: You should go through the
Pre-reading Course Material to know a little about the
course. It helps you get excited by preparing yourself for the
training.
{ After the course completion: You should go through the
Post-reading Course Material to know about the leaders’
and gurus’ thoughts about DevOps.
{ During exam preparation: Quick Reference Cards and
Practice Paper helps you prepare for the certification exam. 
The cards consist of quick reference information (or notes)
important from the exam perspective. The practice paper
resembles  the  structure  of  the  certification  exam  and  will 
help you practice attempting the exam question before the
actual exam.

4  │ Copyright © 2020
Module 1 | Introducing DASA DevOps Fundamentals

course Agenda

total time
module # Subject Start end
(In hours)
1 DASA DevOps Fundamentals – An Introduction 09:00 10:00 01:00
2 Building the DevOps Context 10:00 11:00 01:00
Break 11:00 11:15 00:15
2 Building the DevOps Context (Contd.) 11:15 11:45 00:30
3 Knowing DevOps for Individuals 11:45 12:30 00:45
Getting Acquainted with DevOps Culture and
4 12:30 13:00 00:30
Behavior
dAY 1

Lunch 13:00 13:45 00:45


Getting Acquainted with DevOps Culture and
4 13:45 14:45 01:00
Behavior (Contd.)
Understanding the Value of DevOps for Teams
5 14:45 15:45 01:00
and Organizations
Break 15:45 16:00 00:15
Understanding the Value of DevOps for Teams
5 16:00 16:45 00:45
and Organizations (Contd.)
End of Day Debrief 16:45 17:00 00:15
Total (Less Breaks and Lunch) 06:45
Total 08:00

total time
module # Subject Start end
(In hours)
Review of Day 1 09:00 09:15 00:15
Getting Familiar with DevOps Management
6 09:15 10:45 01:30
Practices
Break 10:45 11:00 00:15
Getting Familiar with DevOps Technical
7 11:00 12:45 01:45
Practices
dAY 2

Lunch 12:45 13:30 00:45


Enabling DevOps Team Performance Through
8 13:30 15:15 01:45
Continuous Delivery and Automation
9 The Next Steps 15:15 15:45 00:30
Break 15:45 16:00 00:15
Mock Exam 16:00 17:00 01:00
Total (Less Breaks and Lunch) 06:45
Total 08:00

Copyright © 2020 │  5
Course Book | DASA DevOps Fundamentals

Though the Mock Exam is provided in the Course Book, you need
to visit the DASA website, http://www.devopsagileskills.org/, for the
latest version. Therefore, it is possible for the Mock Exam provided in
the Course Book to be different from the one provided on the website.

type of Activities
The course contains group discussions, exercises, and
Group discussions, exercises, assignments spread out in all modules with the intent of enhancing
and assignments participants’ understanding, adding context to the content, broadening
Group discussions and exercises participants’ perspective, reinforcing knowledge, and building
in the course are there to check confidence.
your DevOps knowledge basis the
topics covered. The assignments By interacting among themselves and responding to the varying
are based on the Case study – viewpoints, participants tend to learn continually. These exercises and
Easy Journey Airways that will discussions will allow the participants to come across the thoughts of
enable you to apply your DevOps their peers, which help them know about each other’s experiences,
knowledge in real-life situations. perspectives, and opinions in the context of the topic in discussion.

exam
At the end of the course, an exam will be conducted. The exam details
are:
— Bloom Level: 1 (Knowledge) and 2 (Comprehension)
— question Type: Multiple Choice Questions (MCQs)
— question number and passing Mark: 40 questions with a
minimum passing rate of 65% (26 correct out of 40) 
— Time:  60  minutes  (15  minutes  extra  for  non-native  English 
speaker)
— exam Type: Closed book
Attempt the exam later — recommendation: Attempt the exam only after completing the
It is recommended to attempt course but within 10 days (the best retention time)
the exam within 10 days, which
It is not necessary to appear for the Certification Exam just after the
is considered to be the best
training. You might be requiring some self-study time to go through
retention time for the newly
the Course Book. Therefore, you can attempt the exam later as well
gained concepts.
based on your preparation to score high marks.

Activity: Group Activity: Your Expectations

Activity Time: 10 Minutes


Write down your expectations from this training on a sticky note
and attach it to a wall.

6  │ Copyright © 2020
Module 1 | Introducing DASA DevOps Fundamentals

topic Summary
In this topic, you learned that:
— DASA DevOps Fundamentals is designed to provide the basic
education required to build your DevOps vocabulary and
understand its principles and practices.
— What are the various objectives that this course will help you
accomplish?
— What is the 2-day schedule of the training?
— The course contains various types of activities to enable learners
to better understand the concepts.
— The exam for this course will have 40 MCQs, and its duration
will be 60 minutes.

Knowledge check

q1. how many questions at minimum do you need to attempt


correctly to become DASA Devops Fundamentals certified?
a) 24 out of 40

b) 26 out of 40

c) 28 out of 40

d) 32 out of 40

cASe StudY - eASY JourneY AIrwAYS

INFO
Dream journeys do come true! Easy Journey Airways
The assignments included in the course are based on a fictitious Go through the case study
airline company, Easy Journey Airways. The corresponding case thoroughly to better attempt the
study is provided in the Course Book after the modules. assignments included in the course.

Copyright © 2020 │  7
Course Book | DASA DevOps Fundamentals

goal, vision, and mission

Goal Vision Mission


Offer a high Deliver a personal Deliver highest quality
quality product and engaging flight of Customer Service
with a personal experience from with a sense of
touch that makes booking till the warmth, friendliness,
us stand out. The customer returns individual pride, and
core of EJ Airways home. Company Spirit using
is to provide the latest technology.
friendly, reliable, To achieve this, we aim
at making slick
and low-cost air
customer connections,
travel.
minimizing cost, and
providing smart and
easy journeys.

Focus onFocus
Customer Journey
on customer Journey

Hotel & Travel


Services
Claim
Baggage
DASA DevOps
Fundamentals – An
Introduction

In-flight
Case Study – Easy
Services
Journey Airways
First
Impression

Take Get Airport


Inspiration Information

Search
Destination Check-In
Baggage

Get Flight
Complete Information
Booking
Copyright © 2019

8  │ Copyright © 2020
Module 1 | Introducing DASA DevOps Fundamentals

topic Summary
In this topic, you learned that:
Easy Journey Airways is the case study that you will be using in this
course to perform the various assignments.
Easy Journey Airways is a fictitious airline company with the vision
to deliver a personal and engaging flight experience throughout the
customer journey.

Knowledge check
what is the goal of easy Journey Airways?
a) Provide friendly, reliable, and low-cost air travel.
b) Deliver a personal and engaging flight experience.
c) Deliver the highest quality of Customer Service using the latest
technology.
d) Make slick customer connections, minimize cost, and provide
smart and easy journeys.

module SummArY

In this module, I have learned:

Make a list of key points that you have learned in this module.

Activity: Assignment 1: Identifying Assumptions and Issues with EJ Airways

Activity Time: 15 Minutes


Read the EJ Airways case study thoroughly and perform the following tasks:
1. Make a list of assumptions that you make while reading the case study.
2. Make a list of organizational issues that relate to how EJ Airways is organized.

Keep on adding more points to the two lists with each assignment that you will be working on
during the course.

Copyright © 2020 │  9
2
BuIldIng the devopS
context
DevOps Journey at the Fundamental Level – Where
are you?
DevOps - The DevOps for DevOps for Teams
DevOps Practices The Next Steps
Context Individuals and Organizations

► Introducing ► Knowing DevOps ► Getting ► Getting Familiar ► Measuring the


DASA DevOps for Individuals Acquainted with with DevOps Performance -
Fundamentals DevOps Culture Management The Next Steps
and Behavior Practices
► Building the
DevOps Context ► Understanding ► Getting Familiar
the Value of with DevOps
DevOps for Technical
Teams and Practices
Organizations ► Enabling DevOps
Teams Perfor-
mance Through
Continuous
Delivery and
Automation

Hope you remember the infographic! It is the same infographic that


is introduced to you in Module 1 – Introducing DASA Devops
Fundamentals. This module will help you complete the first step of
the DevOps journey, Devops – The Context.

Copyright © 2020 │  11
Course Book | DASA DevOps Fundamentals

Module Objectives
At the end of this module, you will be able to:
 Explain the evolution of DevOps.
 Discuss the pitfalls of traditional ways of working in IT.
 Define the central idea behind and the business benefits of 
DevOps.
 Explain the key DevOps principles defined by DASA.
 Discuss the role of setting goals and measuring performance.

Module Topics
 DevOps Evolution
 Business Benefits of DevOps
 DASA DevOps Principles
 Goals and Measurements

devopS evolutIon

Activity: Group Discussion: Challenges with Traditional Ways of Working in IT Organizations

Activity Time: 10 Minutes


What do you think are the possible reasons behind the challenges that the traditional IT
organizations face?

Low Creativity Manual Releases Low Quality

Product Backlog Communication Sporadic Releases


Problems

High Cost Less Happiness Wall of Confusion

12  │ Copyright © 2020


Module 2 | Building the DevOps Context

In many organizations, IT continues to be a road blocker than a


business enabler. The key challenges faced by organizations are
manual releases, low-quality products, sporadic releases, product
backlog, and others resulting in cost escalation. It becomes imperative
for the organization to find a solution to these challenges to survive in
an extremely competitive and dynamic environment.
Out of the various challenges, the most basic or primary challenge is the
wall of confusion, impacting the overall performance of organizations.
This wall occurs between the two teams of an organization, especially
the Development and Operations teams, due to their competition and
contracting objectives and leads to other problems. Let us discuss the
Wall of Confusion in detail.

wall of confusion
The wall of confusion between different teams of an organization
occurs due to differences in their mindset (motivation and goals),
processes, and tools.

Wall of Confusion

We need Different Mindset We need


change . stability .

Different Processes
Development Operations

Different Tools

The wall of confusion lead to many problems in production, such as: FOOD FOR THOUGHT
— In the absence of a procedural transition from Development Wall of Confusion
to Operations, the Operations team faces challenges in the
The wall of confusion exists in an
production. It gets back to Development team for solutions
organization because people allow
resulting in delay.
it to exist. Will it be possible to tear
— The Operations team is involved in managing Production down this wall by adopting any
environment and can share relevant information which can help framework or methodology? Think
Development team. However, lack of communication results in about it!
loss of sharing.
Copyright © 2020 │  13
Course Book | DASA DevOps Fundamentals

— The knowledge articles play an important role in building the


cohesiveness between Development and Operations team. The
knowledge articles include solutions to known challenges and
are missed in the environment of conflicting interests between 
two teams.

The goal of DevOps is to change and enhance the relationship


between the different teams of an organization by advocating better
communication and collaboration.

Breaking down the wall – the challenges


IT organizations face a variety of challenges due to the wall of
confusion between the different teams. Tearing down this wall is,
therefore, difficult due to the various challenges.

Biased Feedback Organizational Silos

Incohesive Processes
Different Mindsets

Build Rollback
Different Tools

Blame Game
Different Environments

— organizational Silos: Development and Operations teams


work in insolation and interact only during the transition. This
TIPS limited interaction cause unavoidable stress.
Tearing down the wall of — Different Mindsets: The Development team attempts to
confusion introduce new techniques to bring effectiveness, while the
The success of any organization Operations team resists these changes due to instability.
depends on its people’s attitude and — Different Tools: Development and Operations teams use
behavior. The same is required to different tools, leading to errors and bugs. Both teams avoid
tear down the wall of confusion. The learning tools used by the other team. The Development team
different teams need each other to uses tools such as Docker and GitHub, whereas the Operations
achieve the organizational goal. team uses tools such as Jira.
— Different environments: The different environments, such
as Development, Test, and Production, are one of the largest
sources of errors and bugs raised by the different teams.
— Blame game: Both the teams try to blame each other for the bugs
and errors, further escalating the stress between the two teams.
— Build rollback: Build rollbacks are frequently required to meet
incorrect client requirements, incorrect database in the QA or
Production environment, incompatible tools, and others.

14  │ Copyright © 2020


Module 2 | Building the DevOps Context

— Incohesive processes: The processes within two teams are


generally based on different frameworks, such as ITIL, COBIT,
and Scrum. The development processes do not integrate well DO YOU KNOW?
with the Operations processes, leading to disjointed processes
between both teams. DevOps
DevOps is not a job title or a special
— Biased Feedback: The feedback loops get biased and result in
role. Organizations still look for
a further escalation of confusion.
developers, testers, administrators,
and managers. The only difference
devops and wall of confusion is that they look for people who are
Devops allows to bridge the gap between the Development and practicing DevOps and have a sound
Operations teams by unifying them for better, faster outcomes. knowledge of DevOps concepts.

One Team with One Goal

Dev Ops

No Confusion

Collaboration
ation Integ
munic rati
Com on

DevOps focuses on providing business value through Agility, quality,


and stability.

devops Story of emergence


DevOps emerged as the answer to the problems caused by the wall
of confusion between Development and Operations. However, the
emergence of DevOps has its own history and series of events. Let
us go back in history to analyze the events that gave rise to DevOps.

Copyright © 2020 │  15
Course Book | DASA DevOps Fundamentals

Popularity of “10
Deploys A Day” and
“DevOpsDays” 
DevOps Analysis and
Movement Debates and Development of
Germinated in Discussion due to Various Tools for Forrester Focused
Belgium by Converging Adjacent Development and Rise of DevOps on Implementing
Patrick Debois Technologies Operations Texts DevOps at Scale

2018 to
2007 2008 2009 2010 2011 2012 2013 2014-16 2017 Now

Rise of the Agile Continuation of DevOpsDays Become More Emphasis on More and More
System Administration Series of Debates the Must-Attend Creating Flow and Focus
Group on Google and Discussions at Events a Culture of on Integrating
Groups Conferences and High-Performance Security into
Twitter IT Software Delivery
Lifecycle

According to Damon Edwards, a co-founder of DTO Solutions, the


DevOps movement was germinated in Belgium back in 2007. Patrick
Debois, an IT consultant, was frustrated by conflicting interests and
lack of communication between the Development and Operations
departments. He found himself straddling between the two teams
while working on a huge data center migration project for the Belgium
Government Ministry. Patrick was, however, confident that there was
a better way of working, which would allow bridging the substantial
gap between the two teams.
At the Agile 2008 Conference in Toronto, Patrick Debois had a meeting 
with Andrew Shafer, a partner at Reductive Labs. They both had an in-
depth discussion about their mutual frustrations. This discussion gave
rise to the Agile System Administration group on Google Groups by
Andrew Shafer and Patrick Debois. Although the group was not overly
popular, it leads to some fascinating discussion.
Moving forward in the year 2009, John Allspaw and Paul Hammond
of Flickr made the famous presentation “10 Deploys A Day” in Velocity
Conference at San Jose. In the same year, DevOpsDays was born,
and the first event was conducted from October 30th to 31st at Ghent
in Belgium. The event attracted administrators, developers, and
managers from all around the world. The event’s success inspired
other DevOpsDays events in different countries. The DevOpsDays
events acted as a catalyst for the conversation and a grassroots
movement.
During the same time, the IT industry was flourished with converging
adjacent technologies such as Agile, Lean, Operations Management,
and IT Service Management. It resulted into series of debates and
discussions at conferences and twitter throughout 2009 and 2010.
These discussions eventually formulated the underpinning philosophy
that has become DevOps. This convergence is popularly referred to
as “Perfect Storm.”
16  │ Copyright © 2020
Module 2 | Building the DevOps Context

While the DevOps Practitioners, such as Patrick Debois and Andrew


Shafer, had a strong desire to popularize the DevOps movement, the
movement was not gaining much attention from vendors, analysts, and
large scale enterprises. To ignite the movement, the ongoing DevOps
community and collaboration began to analyze various tools used
for development and operations, and, in 2011, started to build open-
source tools such as Vagrant. A tidal wave of Agile and open-source
toolsets including tools such as Chef, Puppet, Jenkins, Hudson, and
JuJu washed away the old legacy toolsets.
With the emergence of enterprise class open source tools and
initiatives such as the DevOpsDays, DevOps started moving towards
Enterprise scale adoption across leading global organizations. By
the year 2012, DevOpsDays were popping up around the world and
become the must-attend events to know about the latest and innovative
thinking and happenings in the DevOps world.
The next year 2013 was the year of the rise of DevOps texts. A flood
of DevOps related books, such as the Phoenix Project by Gene Kim,
were released. One important voice in the DevOps texts is Mike
Loukides, vice president of content strategy for O’Reilly Media. He,
along with Debois, edits some of the most fundamental DevOps texts.
From 2014 to 2017, established brands such as IBM, Target, and INFO
Nordstrom embraced the Devops movement. This period was
also witnessing the transformation in DevOps philosophy. DevOps the DevOps movement
was getting more mainstream in organizations and moved out of the More and more companies are
pure Development and Operations space. The emphasis was put on embracing DevOps to deliver quality
creating flow in organizations and a culture of high-performance IT. products to their customers in the
In other words, it was found that DevOps does not purely focus on shortest possible time. A lot has
automation alone, or methods, frameworks, and products in the IT happened since 2007, but DevOps
space. However, it covers organizational transformation, culture, way is still in its early phase and DevOps
of working, and people aspects as well. community is continuously making
efforts to improve it even further.
About two-thirds of organizations started using DevOps by the end
of 2017 to support a specific business process. Forrester, a market
research company, described 2017 as the “Year of DevOps.” It aimed
at increasing clients’ questions and discussions around implementing
DevOps at scale than just defining DevOps.
From 2018 to now, the primary focus is on integrating security more  FOOD FOR THOUGHT
and more into the software delivery lifecycle. Security is prioritized
from the top and incentivize all teams to share responsibility. Security frameworks
teams need to be great partners to the rest of the business, enabling Try to relate DevOps concepts with
other teams to establish sound practices. Some of the key findings the various processes of other
related to security, according to State of DevOps Report 2019, are: frameworks, such as ITIL and
— Doing DevOps well enables you to do security well. COBIT. Think about how different
frameworks can contribute to
— Integrating security deeply into the software delivery lifecycle adopting DevOps.
makes teams more than twice as confident of their security posture.
— Integrating security throughout the software delivery lifecycle
leads to positive outcomes.
— Integration security is messy, especially in the middle stages of
evolution. Copyright © 2020 │  17
Course Book | DASA DevOps Fundamentals

topic Summary
In this topic, you learned that:
— The key challenges faced by traditional organizations are
manual releases, low quality products, sporadic releases,
product backlog and others resulting in cost escalation.
— The wall of confusion between different teams of an organization
occurs due to the differences in their mindset (motivation and
goals), processes, and tools.
— DevOps allows brindging the gap between the teams by unifying
them for better, faster outcomes.
— The DevOps movement was germinated in Belgium back in 2007.
— Patrick Debois is known to be the father of DevOps.

Knowledge check
q1. which can be a challenge for IT organizations following
traditional ways of developing products?
a) High Creativity
b) Improved Speed to Market
c) Increased Employee Engagement
d) Sporadic Releases

BuSIneSS BeneFItS oF devopS


EXAMPLE
why do It organizations need to practice devops?
Fast movers
Some of the examples include Fast movers are there in almost every industry and are displacing the
Spotify or Apple Music, Apple Pay/ traditional companies. Why is this happening? The answer is digital
Google wallet, Netflix, and Uber. technologies that are changing the business world rapidly.

IT SPEED ONENESS

IT is the Automation, No confusion


strategic Continuous between teams.
differentiator. Improvement, The Development
and Simplified and Operations
Operating Models teams are in
are the factors for sync.
moving fast.
18  │ Copyright © 2020
Module 2 | Building the DevOps Context

To stay in business, organizations these days are more focused on


the four key criteria: faster delivery, improved stability, innovation, and
reduced cost.

Characteristics of Digital Enterprise

Faster Improved Focus on Reduced


Delivery Continuity / Stability Innovation Cost

DevOps supports the four criteria in delivering value to the customer


with the typical synergy between IT Development and IT Operations
departments. That is why DevOps is increasingly being used as an
umbrella term representing a new IT order. DevOps ensures a faster
time to deliver the product, reduction in production cost, room for
innovative products/ideas, and improvement in stability. Thus, you can
say that these criteria are the most compelling business benefits of
DevOps.
These key benefits are driving organizations to break down the wall
between business and IT. The organizations have started to realize that
IT offers a strategic differentiation. Embracing a digital transformation
is now key to survival, and the four key criteria are now placed high on
the agenda of top management.

why digital enterprises need to be Antifragile?

“Just as spending a month in bed leads to muscle atrophy,


complex systems are weakened or even killed when deprived of
stressors.”
Taleb, Antifragile

Antifragility is the ability of systems (or organizations) to get


better as a result of stress and tension (shock, disruptions, or
disorder).

Copyright © 2020 │  19
Course Book | DASA DevOps Fundamentals

core Ingredients of an Antifragile organization

management Innovation lean Startup devops


„ Multiply funding for new „ Implement experimentation „ Continuous iterative
initiatives systems innovation
„ Learn from the fringe „ An experiment is a product „ Embrace a culture of failing
„ Community over hierarchy „ Instill entrepreneurship fast
„ Employees first „ Customer-first „ Make DevOps teams
„ Ensure transparency in „ validated learning responsible
decision making „ Minimum Viable „ Empower employees to put
„ Kill bureaucracy Bureaucracy (MVB)/Lean customers first
„ Think competencies and „ Think digital innovation „ Short feedback loops and
platforms measure end-to-end
„ Honor end customer value
„ Honor web-inspired value „ System Thinking, crossing
„ Self-management
silos
„ Reinvent management „ Pivot
„ Innovate digitally and use
„ Speed
cloud platforms
„ Honor end customer value
„ Self-management
„ Flow
Focus on human component Focus on people’s time Focus on accelerating
innovation

Adapted from Design to Disrupt Whitepaper, Mastering Digital Disruption with DevOps, Sogeti VINT, March 2016

When the concept of antifragile is applied to an organization, it


implies creating an environment adaptable to the stressful and
unexpected atmosphere, leading to a better transformation.
Management Innovation, Lean Startup, and DevOps are three integral
characteristics of an antifragile organization. DevOps aims to be a
cultural aspect. Lean Startup tends to focus more on a method for
product development. Both of these explicitly work on Management
Innovation and put up a vigorous fight against bureaucracy, make teams
and staff responsible, and urge the customer to get involved when it
comes to digital innovations. This is how speed, staff engagement,
and customer obsession come within reach of any organization.

FOOD FOR THOUGHT IT organizations need to be antifragile as the world of IT is changing


rapidly. Businesses need their IT organizations to be responsive and
antifragile IT architectures to be adaptable to shocks or disruptions. DevOps
Are antifragile organizations the attempts to create this kind of environment, creating organizational
same as robust organizations? Think units that can autonomously act on the software and hardware
about it! required to deliver the IT service. DevOps requires short delivery times
to ensure disruptions (in the form of different choices resulting from
market changes) can readily be accommodated and used to improve
the IT service.

20  │ Copyright © 2020


Module 2 | Building the DevOps Context

Impacts of devops practices in It organizations

AGILE

Faster and Smarter Agility is the Key Reduced Risk Increased Value
Deployment Delivery

Increased Faster A Penny Saved is


Stability Time-to-Market a Penny Earned

Source: 7 Reasons How DevOps Benefits Your Business By Shilpa Rao

In the current fast-paced environment, organizations must adopt new


ways of working to be ahead of the competition. When implemented
correctly, DevOps culture cannot only transform your software
process but also create value for both employees and customers,
ultimately enhancing your business performance. By capitalizing on
the DevOps benefits, organizations can streamline the relationship
between developers and the operations team, thereby making them
more productive.
Here is the list of top business benefits that DevOps can bring out to
the organizations:
— Faster and Smarter Deployment:  The  core  benefits  of  the 
DevOps process undoubtedly lies in its ability to take inputs from
all the stakeholders and develop new systems more rapidly.
This approach ensures innovation and deployment to become
synonymous with each other, thereby making the process faster
and easier.
— Agility is the Key: The ability of an organization to be Agile in
their adoption and implementation plays a vital role in bringing
about transformation within a business. Through DevOps,
scalability could be quickly achieved, helping the business
staying ahead of the competition. DevOps culture truly enables
Agile practice to flourish.
— reduced risk: With organizations taking to digital
transformation, risks associated with security failure and error-
prone changes increase exponentially. Hence, ensuring that the

Copyright © 2020 │  21
Course Book | DASA DevOps Fundamentals

security check is in place becomes imperative. With DevOps


practice, security could be easily introduced to the software
delivery life cycle, thereby reducing risk and saving time and
effort.
— Increased value Delivery: DevOps adoption means creating
an environment of continuous integration and delivery. It results
in ensuring a continuous focus on new changes and enhanced
value creation through Digital Transformation.
— Increased Stability: With DevOps practice is in place, the
Development and Operations teams do not work as silos. It
helps standardize the performance metrics and makes it much
easier for the business to evaluate the performance of a different
team, thereby ensuring stability.
— Faster Time-to-Market: With continuous integration and
deployment being the core of the DevOps process, lack of
communication between the development and operations
teams is not anymore a challenge. This, in turn, ensures that the
turnaround time from the stage of ideation to the implementation
of working software is the shortest, enabling the business to
take the solution faster to the market.
— A penny Saved is a penny earned: Automation forms the
core of DevOps practice. Activities like regression, performance
testing, and frequent backups help make the development
process more robust and stable. With such automation in place,
an  organization  benefits  by  saving  manual  costs  and  thereby 
increasing their revenue.

DevOps may be disruptive but is definitely to stay. The benefits that


DevOps can derive are not only quick but also measurable. Hence, for
any organization aiming to stay ahead of the competition, implementing
DevOps becomes the need of the hour.
Source: 7 Reasons How DevOps Benefits Your Business By Shilpa Rao

topic Summary
In this topic, you learned that:
— There  are  several  benefits  of  practicing  DevOps  in  an 
IT organization that contribute to increasing the overall
organizational performance, such as:
{ Faster Delivery
{ Improved Continuity / Stability
{ Focus on Innovation
{ Reduced Cost
{ Antifragility
{ Faster and Smarter Deployment

22  │ Copyright © 2020


Module 2 | Building the DevOps Context

{ Agility
{ Reduced Risk
{ Increased Value Delivery
{ Increased Stability

Knowledge check
q1. Identify the factors enabling IT organizations to move fast.
1. Automation
2. Continuous Improvement
3. Oneness
4. Simplified Operating Models

a) 1, 2, and 3

b) 1, 2, and 4

c) 1, 3, and 4

d) 2, 3, and 4

dASA devopS prIncIpleS

devops core principles by dASA

Create with the End Cross-Functional Automate Everything


in Mind Autonomous Teams You Can

1 3 5

2 4 6

Customer-Centric End-to-End Continuous


Action Responsibility Improvement

As you already know, DevOps has no specific definition. It is, therefore,


not at all useful to try defining DevOps in your own way when planning
to adopt DevOps. The best way is to consider DevOps principles that
are defined by DASA after a deep thought process.
Copyright © 2020 │  23
Course Book | DASA DevOps Fundamentals

1. Customer-centric Action: Customers are always on the driving


seat of organizational success. Therefore, all the activities
involved in the product development process should revolve
around customers. Being customer-centric does not only mean
offering an excellent customer experience. It means providing
great customer experience from the initiation stage. You can do
it by knowing your customer well and having a 360-degree view
of the changing requirements.
2. Create with the end in Mind: Having a clear vision of the
results is necessary to move in the right direction. You can
work towards developing successful products and services that
meet the customers’ needs only when you have a complete
understanding of the customers’ requirements. In other words,
this principle focuses on the holistic view of how to develop the
IT product/service considering its usability.
3. end-to-end responsibility: Customers are not only concerned
with the products and services but also about the whole
experience of doing business with a company. Being end-to-
end responsible for the quantity and quality of a product is,
therefore, essential for creating a positive customer experience.
It requires companies or organizations to put themselves in
the shoes of their customers to understand each requirement
and assume responsibility for ensuring every aspect of doing
business creates a consistently positive experience.
4. Cross-Functional Autonomous Teams: Cross-functional
autonomous teams consist of people from different business
units. They work as problem solvers in a collaborative way to
achieve the stated objective as they are not only responsible for
implementing the solutions. They are self-directed and own the
end-to-end responsibility of determining solutions to problems
within the business constraints.
5.  Continuous Improvement: It is an on-going improvement
process to make breakthrough enhancements in products,
services, and processes to generate the most value for
your customer. Organizations can achieve it by identifying
opportunities for streamlining work, minimizing waste, and
optimizing speed, costs, and ease of delivery.
6. Automate everything you Can: Automation enables people to
be more productive and innovative by freeing them from boring,
repetitive manual tasks. Automating repetitive manual tasks
helps reduce the number of errors (improve accuracy), improve
speed to market (reduce delays), and minimize boredom.

24  │ Copyright © 2020


Module 2 | Building the DevOps Context

devops principle #1: customer-centric Action


To be customer-centric, DevOps encourages an open organizational DO YOU KNOW?
culture.
customer-centric
Characteristics of Customer-Centric Whenever a customer-centric
Action and Open Culture organization makes a decision,
its people thoroughly analyze its
impact on the customers. It is a
way of doing business and ensuring
positive customer experience at
every stage of the customer journey.

Feedback Loops No Bureaucracy Courage Risk Takers Innovation

— Feedback Loops: People are open to feedback. Short


feedback loops with the customers help organizations to focus
on customer-centric actions.
— no Bureaucracy: Bureaucracy is not at all encouraged, which
results in more confidence and motivation.
— Courage: People are free to ask as many questions as they
can. The aim is to bring everyone on the same stage with the
360 degree view of the requirements.
— risk Takers: People have the authority to take calculated risks
to achieve the desired goal.
— Innovation: People are more focused on creativity to produce
valuable ideas to enhance the customer experience.

devops principle #2: create with the end in mind


Organizations should begin with a result-oriented plan with the
complete understanding of the customer’s requirements. Such an
DO YOU KNOW?
approach requires organizations to appreciate certain aspects (or
characteristics). result-oriented plan
Characteristics of Create with Following a result-oriented plan
the End in Mind gives you a higher chance of being
successful. It pushes you to take
ownership and be flexible in defining
your priorities. Most importantly,
it enables you to measure your
progress basis the set standards.

Product and Collaboration Engineering Trust Early Feedback


Service Thinking Mindset

Copyright © 2020 │  25
Course Book | DASA DevOps Fundamentals

— product and Service Thinking: This thinking approach is


about determining the problem that the end users are trying to
solve. When you know the correct problem, the solution you
propose will surely solve the users’ problem.
— Collaboration: Always collaborate keeping the end in mind by
defining  the  problem  in  advance  (the  agenda).  It  helps  utilize 
the  time  more  efficiently,  create  a  process  for  accountability, 
and be more productive.
— engineering Mindset: Curiosity is the heart of the engineering
mindset. It is the key to solving the given problem in a meaningful
and valuable way.
— Trust: Trust is essential to an effective team. It provides a
sense of safety to open up, share the required knowledge, take
calculated risks, expose vulnerabilities, and be more creative
and innovative.
— early Feedback: Receiving early feedback about your products
is crucial to adding more value and enhancing the user
experience.

devops principle #3: end-to-end responsibility


DevOps encourages organizations to practice the concept of cradle
concept of cradle to grave
to grave to enable the teams to be end-to-end responsible and taking
In the context of business, control of almost everything.
cradle to grave is used to
describe an organization’s or Characteristics of
company’s perspective on the End-to-End Responsibility
environmental impact created by
their products or activities from
the beginning of its life cycle to
its end or disposal.

Vertically-Oriented Decision Making Learning Performance Simplicity


Teams (Control)

— vertically-oriented Teams: The teams are organized vertically


to deliver as much customer value as possible rather than just
producing the outputs. Such teams pass through each stage
of the product development process to deliver independent,
valuable, and testable products.
— Decision Making (Control): Teams are responsible for
identifying a decision, gathering information, and assessing
alternative resolutions. They have the authority to take calculated
risks and make effective decisions.

26  │ Copyright © 2020


Module 2 | Building the DevOps Context

— Learning: Being end-to-end responsible, people collaborate


to learn, adapt, and improve to deliver delightful customer
experience. It helps them to acquire new knowledge and
enhance their existing knowledge, skills, behaviors, values, and
preferences.
— performance: The teams are responsible for providing end-
to-end support to products that helps enhance their overall
performance.
— Simplicity: End-to-end responsibility helps bring simplicity into
the process by streamlining the work.

devops principle #4: cross-Functional Autonomous teams


DevOps encourages organizations to create cross-functional cross-functional
autonomous teams that share the same goal, and hence the shared Think about how an organization
success. can flourish by establishing cross-
functional teams in contrast to
Characteristics of Cross-Functional
Autonomous Teams
competency-based teams or
culture of heroes.

Cross-Functional Autonomous Self-Directed T-Shaped Complementary


Profiles Skills

— Cross-Functional: When the people from the different functional


units with a variety of skills work together with the same goal,
they can solve even the complex problems.
— Autonomous: Such teams are independent and have the
freedom to control things and make effective decisions when
required.
— Self-Directed: People work for a purpose by setting a set of
rules and deadlines as they do not have a boss or manager.
— T-Shaped Profiles: People are T-shaped, having deep
knowledge and skills in a specific area of specialization and are 
capable of applying knowledge across disciplines.
— Complementary Skills: When people with different skill sets
work together for a purpose, they share different viewpoints,
which is essential to know the 360-degree view of the given
problem.

Copyright © 2020 │  27
Course Book | DASA DevOps Fundamentals

devops principle #5: continuous Improvement


Continuous improvement is an approach to identify opportunities to
streamline work and reduce waste. DevOps encourages organizations
to practice Lean to improve continually by streamlining work.

Characteristics of
Continuous Improvement

Structured Experimentation Measurement Minimum Waste Optimization


Problem-Solving

— Structured problem-Solving: It is a systematic process to identify


problem areas and work towards finding the correct solution.
— experimentation: Trying out new ideas is essential to
maximize work and customer value. It enables you to measure
the impact of the products or services that you are developing.
Experimenting with new ideas requires the courage of failing
fast and achieving the desired value.
— Measurement: You can improve if you can measure success
of processes, people, and tools. An effective performance
DO YOU KNOW? measuring system is, therefore, essential. It helps identify the
required problems/challenges in the existing processes, proposed
measure success of processes,
and implemented solutions, and products and services.
people, and tools
DevOps seeks measurement of — Minimum waste: Continuous improvement is all about
processes, people, and tools through minimizing waste by removing the unnecessary activities from
the following metrics: Performance the value chain and streamlining the workflow. 
Metrics, Process Metrics, Innovation — optimization: The ultimate aim of continuous improvement is to
Metrics, Culture Metrics, and innovate to optimize speed, cost, and ease of delivery. It requires
Support Metrics. experimenting out new ideas and the courage to learn from failures.

devops principle #6: Automate everything You can


DevOps encourages organizations to move away from manual efforts
to automation to maximize customer experience and minimize human
boredom.

Characteristics of
Automate Everything You Can

Increased Improved Consistency Increased Scalability


28  │ Copyright © 2020 Productivity Quality Availability
Module 2 | Building the DevOps Context

— Increased productivity: Automation increases the productivity FOOD FOR THOUGHT


of people by automating the boring, repetitive manual tasks by
maximizing the process flow. It helps them to utilize their time in  automation
doing some other work and be more innovative. Think about how automation leads
to enhanced quality and maximized
— Improved quality: Manual tasks are prone to human errors.
flow of value to customers.
Automation increases the overall quality by eliminating human
errors at a faster rate and lower cost.
— Consistency: Automation helps reduce errors as it produces
results  based  on  a  defined  set  of  rules  within  the  code  and 
increases performance due to the efficiency of the platform.
— Increased Availability: Automation makes the systems more
flexible  by  enabling  these  to  perform  24x7,  which  in  turn 
increases the turnaround time.
— Scalability: Automaton helps to make the systems scalable,
which are essential to meet the ever-changing requirements of
the customers.

Activity: Exercise: Relation Between DevOps Principles

Activity Time: 20 Minutes


How do the DASA DevOps principles relate to each other? Create a matrix to show the relation
between the various principles and their characteristics.

DevOps customer- create end-to-end cross- continuous Automate


Principles centric with the responsibility Functional Improvement everything
Action end in Autonomous You can
mind teams
customer-
NA
centric Action
create with
the end in NA
mind
end-to-end
NA
responsibility
cross-
Functional
NA
Autonomous
teams
continuous
NA
Improvement
Automate
everything NA
You can

Copyright © 2020 │  29
Course Book | DASA DevOps Fundamentals

topic Summary
In this topic, you learned that:
— The six DASA DevOps principles are:
{ Customer-Centric Action
{ Create with the End in Mind
{ End-to-End Responsibility
{ Cross-Functional Autonomous Teams
{ Continuous Improvement
{ Automate Everything You Can

Knowledge check
q1. which is the characteristic of an autonomous team?
a) 24x7 Availability

b) Bureaucratic

c) Horizontally-Oriented Teams

d) Self-Directed

goAlS And meASurementS

Aspects of measurement
Establishing measurements at various levels is crucial to gather
constant feedback on how the teams and the organization are
performing. These levels are also known as aspects of measurement,
as shown in the following figure.

Aspects of Measurement

Indicators and
Value Goals and Objectives Compliancy
Metrics

► Value definition ► Shared goals ► Business-driven, ► Continuous


and measurement end-to-end compliance
► Cascading
metrics
► Value driven indicators ► Built-in controls
prioritization ► Rigorous  and audit trails
► Transparency 
automated
► Optimized flow of ► Risk-aware and
► Ownership measurement
value autonomous teams

30  │ Copyright © 2020


Module 2 | Building the DevOps Context

DevOps organizations strongly support the concept of measuring


everything as much as possible to keep enhancing their performance.
The various aspects of measurement help an organization to
implement the concept of measurements. Let’s discuss these aspects
in detail.
— value: The primary success factor of any business is delivering
the desired value to customers. It is, therefore, necessary for
everyone in an organization to have a clear understanding of
the customer value. The value helps you know how much are
the customers satisfied. However, measuring usage behavior is 
important to understand whether the value is being delivered.
— goals and objectives:  Goals  define  the  purpose  that  an 
organization wants to achieve. It defines goals at various levels: 
strategic, tactical, and operational. It is, therefore, necessary to
measure  whether  the  defined  goals  are  met.  They  do  this  by 
setting the required objectives considering the various types of
work to track the progress.
— Indicators and Metrics: Metrics quantify operations results and
provide the foundation required for evaluating and reviewing
work in progress. It is, therefore, important to define consistent 
metrics across the entire organization to deliver more value
faster at a higher level of quality. Indicators, also known as
Key Performance Indicators (KPIs), are calculated measures
of performance against the achievement of strategic objectives
and consist of a set of different metrics. These contain complex
data and provide a more accurate view of whether everything
is on track.
— Compliancy: Compliance push an organization to work INFO
according to a set of processes to comply with internal rules
of conduct and external rules and regulations. Organizations Compliance
must be able to easily provide evidence that they are compliant Large organizations may include
with these rules and regulations. These can be the company’s a general counsel’s office for
written values, its ethics policy, the employee handbook, and compliance. However, it tends
policies for complying with legal obligations, such as taxes and to reside, informally, within the
corporate reporting. The organization should include these rules functions of the chief executive
and regulations in day-to-day operations to minimize the effort officer, chief financial officer, and
required to prove compliance. head of HR in smaller organizations.

the Business case for devops is clear But You need goals
Organizations often fail to drive the full adoption of DevOps primarily
due to people’s resistance or lack of knowledge. The following figure
lists the steps that can help organizations to be successful in their
DevOps initiative.

Copyright © 2020 │  31
Course Book | DASA DevOps Fundamentals

Identify Goals and Objectives


Recognize the short-, medium-,
and long-term goals that the
organization wants to achieve
along with the corresponding
SMART objectives.

Formulate the Vision Statement Define Measures, Indicators,


Express the WHY behind the DevOps and Metrics
initiative of the organization. The Define measures, indicators,
statement defines the need for and metrics to track whether
applying DevOps principles. you are achieving the set goals.

Let’s discuss the steps in detail.


1. Formulate the vision Statement: When an organization
decides to adopt the DevOps way of working, it requires
everyone in an organization to work the DevOps way for the
initiative’s success. However, bringing everyone on the same
stage is challenging due to various reasons, such as behavior,
existing work culture, and the impact on an individual’s work.
Therefore, expressing the reason behind the organization’s
want to adopt the DevOps way of working is crucial to enable its
people to understand the business need (success or survival)
behind the DevOps initiative.
{ primary Tasks:

a. Ensure to define the vision considering the DevOps


principles.
b. Communicate it to everyone in the organization to
establish a standard understanding.
c. Describe how you see the organization operating in
five to ten years.
d. Derive a medium- to a long-term plan for at most the
next three years for the organization.
2. Identify goals and objectives: Organizations provide focus
to its people by defining specific goals and objectives at various 
levels. These make it clear to everyone what they need to focus on
during a specific period and prioritize their tasks accordingly. The 
DevOps initiative will fail in the absence of goals and objectives.
{ primary Tasks:
SMART objectives a. Turn the plan created during Step 1 into specific and
Objectives that are Specific, measurable goals.
Measurable, Achievable, b. Ensure to define goals and SMArT objectives
Realistic, and Time-bound. considering the DevOps principles.

32  │ Copyright © 2020


Module 2 | Building the DevOps Context

c. Communicate these to everyone in the organization to


establish a standard understanding.
d. Make the vision and goals accessible and visible to all
by using Visual Management.
e. Ensure to distinguish between operational goals from INFO
the organizational vision.
operational goals from the
3. Define Measures, Indicators, and Metrics: The organization organizational vision
must  define  how  it  will  measure  the  success  of  its  DevOps 
The operational goals are tasks that
initiative.  It  performs  such  measurements  by  defining  and 
you need to perform daily, whereas
implementing the required measures, metrics, and indicators.
the organizational vision helps
{ primary Tasks: people set their work priorities and
determine their daily goals.
a. Define the measures to track the progress.
b. Identify behaviors to influence measures.
c. Define metrics and KPIs.

Activity: Exercise: Developing Vision, Goals, and


Measurements for DevOps Adoption

Activity Time: 20 Minutes


Identify and define the vision, goals, and measurements to
successfully implement the DevOps way of working in your
organization.

Survivorship Bias: choosing the right metrics


It’s the human tendency to get biased between successes and
failures. People often encouraged by success stories ignoring the
accompanying failures.

“Beware of advice from the


successful.”
— Barnaby James

result: They end up adopting opinions, organizing business, and


making decisions without analyzing all the data due to lack of visibility
and often lead to failure.

Survivorship Bias is the phenomenon of considering success


stories along with the accompanying failures.

Copyright © 2020 │  33
Course Book | DASA DevOps Fundamentals

During Work War II, the allied forces wanted to add protective armor
to their warplanes. Since the resources were hurt, they could not add
armor to the entire plane. Experts decided to allocate the armor to the
most vulnerable areas of attack that would benefit most from additional
protection. With this aim, they analyzed the planes that were shot but
successfully made it back home. They found these planes did not get
any bullet holes in the engine or cockpit. As a result, they thought of
placing armor everywhere on the planes except for the cockpit and
engine. However, the mathematician, Abraham Wald, addressed a
weakness in their plan. The experts were considering only those planes
that had made it home safely. They were ignoring the fact behind the
return journey of a plane. The fact that the location of the bullet holes
was not fatal to the planes and, therefore, the aircraft had not been
brought down. Abraham recommended the military to place the armor
to the surviving areas of the aircraft - the engine and the cockpit. As a
result, Abraham Wald introduced the concept of Survivorship Bias by
studying the planes that had failed and was able to save many lives.

Actions Based on measurements


If you do not take action based on the results of the measurement,
there is no point in measuring. While measuring performance, you
should consider asking such questions:
— What do we need to measure?
— Are we using the right techniques for measurement?
— Are we selecting the right KPIs for measurement?
— Will this measurement help the organization in improvement?

Metrics or Key Performance Indicators (KPIs) are used to measure


performance. These are vital to understand whether the organization
is achieving its goals. Therefore, these should be clearly defined. The
two key attributes of a KPI are quantifiability (you must be able to
reduce it to a number) and that it directly captures a key business
driver.

performance metrics vs. performance predictors (lagging


Indicators vs. leading Indicators)

performance metrics performance predictors


Performance metrics are Performance predictors are
typically output oriented, easy typically input oriented, hard to
to measure, but hard to improve measure, and easy to influence.
or influence.
An indicator of pas performance An indicator that helps predict
that measures how we future performance.
performed.
Examples: Weight, Customer Examples: Calories intake per
satisfaction day, User guide usage

34  │ Copyright © 2020


Module 2 | Building the DevOps Context

Performance metrics and performance predictors are two types


of measurements that help assess performance in a business or
organization. Performance predictors are useful for predicting an
outcome and steering teams and organizations in enhancing the
probability of a satisfactory outcome.

top practices (leading Indicators) correlated to performance


metrics

Leading Indicators for Deployment Frequency:


► Continuous Delivery
► Version Control

Leading Indicators for Lead Time for Changes:


► Version Control
► Automated Testing

Leading Indicators for MTTR:


► Version Control
► Monitoring System and Application Health

Change Fail rate: The researchers of the State-of-DevOps


2014 report did not find any specific practices correlating with this
metric. But they did find that high-performing IT organizations
have 50% lower change fail rates than the non-high performers.

Source: 2014 State-of-DevOps Report (PuppetLabs)

IT performance or the performance of an organization is measured


through two attributes, throughput and stability, which are essential
for achieving IT. The leading indicators that make up the performance
are deployment frequency, lead time for changes, and mean time
to recover from failure. Throughput is measured by deployment
frequency and lead time for changes, whereas stability is measured by
mean time to recover. To increase performance, organizations need
to invest in practices that increase throughput and stability measures.
The top practices that correlate with performance are:
— Leading Indicators for Deployment Frequency:
{ Continuous Delivery: Ensures that software is always in
the releasable state. Also, any build can be released to
users on demand.
Copyright © 2020 │  35
Course Book | DASA DevOps Fundamentals

{ version Control: Keeps all IT artifacts, such as software,


software  configuration,  test  specifications,  documentation, 
deployment  scripts,  and  configuration  files,  under  version 
control. It has a great impact on throughput.
— Leading Indicators for Lead Time for Changes:
{ version Control: Puts changes into production in a
repeatable way with low risks. The version control helps in
delivery, deployment, and provisioning.
{ Automated Testing: Provides a reliable and comprehensive
set of automated tests. Both, automated testing and version
control, help in reducing risk (stability) and swiftness
(throughput) of changes.
— Leading Indicators for MTTr:
{ version Control: Enables the quick rollback to the last
working state of the affected IT infrastructure when problems
occur in the Production environment. It also helps in solving
problems and searching for any root causes, thus reducing
the time to recover.
{ Monitoring System and Application health: Provides
(real-time) feedback on the health of IT services through
extensive logging and monitoring. It also makes it easy to
detect failures, identify the triggered events such a failure,
and  proactively  prevent  these  from  happening  in  the  first 
place.

Activity: Group Discussion: Metrics for Throughput and Stability

Activity Time: 10 Minutes


What kind of metrics can you use to measure throughput and
stability?

topic Summary
In this topic, you learned that:
— The various aspects of measurement are Value, Goals and
Objectives, Indicators and Metrics, and Compliancy.
— The steps that can help organizations to be successful in their
DevOps initiative are Formulate the Vision Statement, Identify
Goals  and  Objectives,  and  Define  Measures,  Indicators,  and 
Metrics.
— Survivorship Bias is the phenomenon of considering success
stories along with the accompanying failures.
— If you do not take action based on the results of the measurement,
there is no point in measuring.

36  │ Copyright © 2020


Module 2 | Building the DevOps Context

— Performance metrics are typically output-oriented, easy to


measure,  but  hard  to  improve  or  influence.  Performance 
predictors are typically input-oriented, hard to measure, and
easy to influence.
— IT performance or the performance of an organization is
measured through two attributes, throughput and stability, which
are essential for achieving IT.
— Throughput is measured by deployment frequency and lead
time for changes, whereas stability is measured by mean time
to recover.

Knowledge check
q1. which indicator ensures that software is always in the
releasable state?
a) Continuous Delivery

b) Version Control

c) Automated Testing

d) Monitoring System and Application Health

module SummArY

In this module, I have learned:

Make a list of key points that you have learned in this module.

Copyright © 2020 │  37
Course Book | DASA DevOps Fundamentals

cASe StudY: eASY JourneY AIrwAYS –


ASSIgnment 2

Activity: Assignment 2: Transforming EJ Airways

Activity Time: 15 Minutes


Although several small Agile experiments and Lean initiatives were
not immediately successful, Jonas Masters, CEO of EJ Airways,
is considering embracing DevOps and transforming the entire
organization to make that possible. With this aim, he has asked
you to perform the following tasks:
1. Develop an elevator pitch  on  the  benefits  of  DevOps. 
Emphasize the use of specific keywords related to the area 
of improvement.
elevator pitch
An elevator pitch is a short pre- 2. How can EJ Airways implement the DevOps core principles?
prepared speech that explains Which  DevOps  principles  will  be  the  most  difficult  to 
what your initiative is about, implement?
what it is meant to achieve, 3. Create a list of proven combinations of performance metrics
clearly and succinctly. It needs and performance predictors. Where should EJ Airways start?
to be persuasive, interesting,
4. Which metrics can assist in the preparation of a draft
and memorable to convince the
proposal for the insource part of the work that is currently
stakeholders why they would
done by partners/suppliers.
benefit in supporting your ideas.

38  │ Copyright © 2020


3
KnowIng devopS For
IndIvIduAlS
DevOps Journey at the Fundamental Level – Where
are you?
DevOps - The DevOps for DevOps for Teams
DevOps Practices The Next Steps
Context Individuals and Organizations

► Introducing ► Knowing ► Getting ► Getting Familiar ► Measuring the


DASA DevOps DevOps for Acquainted with with DevOps Performance -
Fundamentals Individuals DevOps Culture Management The Next Steps
and Behavior Practices
► Building the
DevOps Context ► Understanding ► Getting Familiar
the Value of with DevOps
DevOps for Technical
Teams and Practices
Organizations ► Enabling DevOps
Teams Perfor-
mance Through
Continuous
Delivery and
Automation

In this module, you will learn about the second section or step, Devops
for Individuals, which consists of only one module – Knowing
Devops for Individuals.

Copyright © 2020 │  39
Course Book | DASA DevOps Fundamentals

Module Objectives
At the end of this module, you will be able to:
 Understand the role of T-shape profiles. 
 Explain the essence of T-shape profiles for DevOps 
professionals.
 Know about the 12 capabilities required for a DevOps
professional.
 Know about the various DevOps certifications offered by 
DASA.

Module Topics
 T-Shape Profiles
 DevOps Capabilities by DASA
 DASA DevOps Certifications

t-ShApe proFIleS

no role Silo

EXAMPLE DevOps discourage working in silos and following the Waterfall


approach. The answers to the following questions will help you
working in silos
understand the idea behind discouraging silos.
At the beginning of an interview with
Elisabeth Hendrickson, she discusses
working at a product company which When do silos occur?
was suffering a series of quality
What is the fundamental problem?
problems. As a result, they hired a VP
of QA who set up a QA division. The Why does the problem occur?
net result of this, counterintuitively,
was to increase the number of bugs. What is the solution?
One of the major causes of this was
that developers felt that they were What are the benefits?
no longer responsible for quality,
and instead focussed on getting
their features into “test” as quickly Let’s discuss the answers.
as they could. Thus they paid less — when do silos occur? Structuring the various departments of
attention to making sure the system an  organization  to  focus  on  their  specific  goals  instead  of  the 
was of high quality in the first place, organizational objectives creates silos.
which in turn put more stress on the
— what is the fundamental problem? Silos lead to opposed
testers. This created a death spiral of
relationships between various departments and abstract people
increasingly poor quality, which led
away from the consequences of their actions, leading to a
to increased stress on the testers,
reduced level of efficiency.
and so on. Elisabeth wrote this up
in a paper called “Better testing – — why does the problem occur? Abstracting people away
worse quality?” back in 2001. from the consequences of their actions push them to practice

40  │ Copyright © 2020


Module 3 | Knowing DevOps for Individuals

bad behavior. It happens as silos do not allow information-


sharing, transparency, and effective communication that
prevent different teams from forming trust and mutual respect.
The absence of a trustworthy and open information-sharing
system  leads  to  delayed  workflow  and  an  increased  level  of 
misinterpretations. As a result, silos impact employee morale
negatively.
— what is the solution? DevOps, these days, is the first choice 
for organizations when they want to shift their attitude from
departmental focus to organizational goals. DevOps supports
them to successfully make this move by preventing them from
the complicated task of eliminating all silos at once.
— What are the benefits? Breaking silos with DevOps prevents
organizations from overspending on departments with maximum
resistance to change. Organizations can then encourage these
teams for upcoming changes with the end goal of fostering a
collaborative mindset within every department.

role of devops engineer


DevOps Engineer or System Administrator DevOps Engineer helps
organizations facilitate the transition from departmental focus to
organizational goals.

DevOps Engineer

The primary steps that they focus on during this facilitation are:
1. Awareness: Make people aware of the consequences of their
actions.
2. responsibility: Make people responsible for the consequences
of their actions.

The engineer acts as a mediator between various departments to


communicate and apply the DevOps methodology while driving cultural
differences to facilitate cross-team collaboration. They primarily focus

Copyright © 2020 │  41
Course Book | DASA DevOps Fundamentals

on creating awareness and encouraging responsibility. Let’s discuss


these two steps.
1. Make people aware of the consequences of their actions.
You can do this by rotating developers through operations teams,
allowing operations people to attend developers’ standups and
showcases, running lunch and learn sessions, having people
blog, or going and grabbing lunch with someone working in a
different functional silo to yours.
2. Make people responsible for the consequences of their
actions. This is where things get serious. You can achieve
this by having developers carry pagers, or own the service
level agreements for the products and services they build (for
example, the dev team is L3 support, and is on the hook for the
uptime of the service).

A major reason people can’t move to step two in the plan is that most
large organizations just aren’t set up in a way that makes this possible.
The culprit here is the fact that software development efforts are usually
run as if they were civil engineering projects. When a project is complete,
the system gets tossed over the wall to operations to run and maintain
as part of a “business as usual” effort, and all the people in the project
team get reallocated to new work. The project model is fundamentally
flawed as a way of doing software development that should be treated
as product development instead.
Source: https://dzone.com/articles/there%E2%80%99s-no-such-thing-
%E2%80%9Cdevops

Forming a devops team


DevOps Engineer applies the concept of setting up cross-functional
teams for each product or service to make people responsible for the
DO YOU KNOW? consequences of their actions.
cross-functional teams Core Team
Creating teams from the existing
Development and Operations teams
responsible for the deployment of
Operations Development Quality Assurance
the system was traditionally known
as release management before
DevOps became popular.

Cross-Functional Teams

Security Engineer Security Engineer

Ops Dev QA Ops Dev QA

Product Owner Scrum Master Product Owner Scrum Master


42  │ Copyright © 2020
Module 3 | Knowing DevOps for Individuals

A cross-functional team is a self-directed product development team.


It can have a local Scrum Master(s) and (or) a local Product Owner(s).
A cross-functional team can have additional roles other than the
standard roles of Scrum, such as:
— Chief Scrum Master (Scrum of Scrums Master): He heads or
helps the entire project follows the framework in collaboration
with the local Scrum Masters. A person can be the local Scrum
Master for multiple teams. It is not necessarily a full-time job.
— Chief product owner: He/she takes care of the Product
Backlog  in  collaboration  with  local  Product  Owners  to  fulfill 
the product ownership responsibilities. Some people in the
workplace are often against the concept of having multiple
Product Owners. However, under certain situations, it can be
impossible or unrealistic for one Product Owner to collaborate
with a huge number of people or team members, especially in
the case of a big team of hundreds of developers. Consider an
example of making User Stories clear and concise.
Avoid creating a team by inserting a layer of indirection between
the Development and Operations teams. Naming such a team as a
DevOps team rather than creating a cross-functional team from the
existing Development and Operations teams will not work. It will lead
to creating another silo or task-oriented team.
An organization has different types of profiles, such as I-shape, Dash- INFO
shape, and T-shape. DevOps encourages having T-shaped profiles types of profiles
when forming teams. Let’s learn about the importance of being a Some of the other types of profiles
T-shaped team member. include V-Shaped, M-shaped,
X-shaped, Pi-shaped, and Comb-
different types of profiles shaped profiles. These are out of the
The three primary types of profiles are I-shaped, Dash-shaped, and scope of this course.
T-shaped.

I-Shape (Specialist) Dash-Shape (Generalist) T-Shape (Generalizing


Specialist)
► Vertical Bar: Functional ► Horizontal Bar: Cross- ► Horizontal and Vertical
Disciplinary Skill – Jack Discipline Skills - Jack Bars: Classic Agile Team
of no trade, and master of many trades, and Member - Jack of many
of (at least) one. master of none. trades, and master of
(at least) one.

► Profile: Poor ► Profile: Poor ► Profile: Good


► Examples: ► Examples: ► Examples:
■ Microsoft CRM Expert ■ Utility Player in Baseball ■ Social Manager
■ Mobile Analytics ■ Project Coordinator ■ Content Marketer

Copyright © 2020 │  43
Course Book | DASA DevOps Fundamentals

having t-Shaped team members


The other important consideration when forming a DevOps team is to
have T-shaped persons (or T-shaped skills). The term describes the
abilities of persons across the two bars forming the letter T, as shown
in the following figure.

Characteristics of T-Shaped People

Generalization

Cross-Discipline Competencies
Teamwork, Communication, Perspective, Critical Thinking,
Global Understanding, Project Management, …

T-Shaped Profile Many Systems


Many Disciplines Understanding and Communications
Understanding and Communications

Deep Expertise in Deep Expertise in


At Least One At Least One
Discipline System Generalizing Specialist
Analytic Thinking and Analytic Thinking and Jack of many trades, and
Problem Solving Problem Solving master of (at least) one.

Specialization

Let’s discuss the characteristics of the two bars.


— vertical Bar: It indicates an individual’s expertise or depth of
knowledge in a particular field or discipline. The specialized skills in 
one disciple enable a person to contribute to the innovative process.
— horizontal Bar: It indicates the cross-discipline knowledge or skills
of an individual, enabling them to be emphatic and enthusiastic
about other disciplines. These skills allow them to understand
the perspectives of others and collaborate effectively across
disciplines. In other words, cross-discipline knowledge enables
people to apply their broad skills in other areas of expertise.

A T-shaped profile provides the benefits of specialization and


INFO
generalization and is also known as Generalizing Specialist. They are
David Guest described the concept of
the “Jack of many trades, and master of (at least) one.”
T-shaped skills in 1991. However, it
got popularized by Tim Brown, CEO why do devops professionals need to be t-shaped?
of design firm IDEO, when describing
the type of people he wanted to Organizations or teams adopting the DevOps way of working should
work for his organization. focus on T-shaped profiles due to its several benefits.

44  │ Copyright © 2020


Module 3 | Knowing DevOps for Individuals

Benefits of Having
T-Shaped Profiles

► Effective Cross-Discipline ► More Focus on Innovation


Collaboration

► Diverse Experience with ► Eye-Catchy Profiles for


Satisfaction of Depth Employers

Let’s discuss the benefits in detail.


— effective Cross-Discipline Collaboration: The broad range of
skills or generalized knowledge makes it easy for T-shaped people
to communicate and collaborate effectively with specialists in
other fields. Consider an example of a developer writing code 
for a website and having a basic understanding of graphics
creation. He will be able to communicate the requirements and
work more effectively with a graphics designer.
— Diverse experience with Satisfaction of Depth: Specialists
keep  on  working  for  a  specific  discipline(s). After  a  period,  it 
becomes monotonous regardless of how interesting the topic
is. A T-shaped person avoids this monotony by trying his hands
in other areas. Such a person experiences the satisfaction
of depth by removing the associated monotony (or boredom)
through continuous learning in other areas.
— More Focus on Innovation: The depth and breadth of skills
of T-shaped people make them capable of coming up with
innovative ideas or ways of working. Innovative ideas take birth
when people from diverse disciplines exchange knowledge and
work with each other. It supports the popular saying or belief in
business or arts that greatest ideas happen at the intersection
of disciplines. For example, Vihart’s YouTube channel shows
you what happens at the meeting of math, music, and visual art.
— Eye-Catchy Profiles for Employers: Curious? How? A T-shaped
profile  focuses  on  both  specialization  (the  primary  competence) 
and generalization (cross-discipline skills) compared to just
specialization or generalization. Such a combination stands out from
other profiles and brings more to a job compared to just meeting 
the job requirements. The other important factor that adds further to
a T-shaped profile is an interesting engagement. T-shaped persons 
are more engaging and interesting. Everyone likes to converse with
interesting people, and the same is true for the interviewer.

You must be excited by now how to become a T-shaped person. Right! Let’s
move to discuss how you can take the necessary steps in this direction.

Copyright © 2020 │  45
Course Book | DASA DevOps Fundamentals

Becoming a t-Shaped person


You do not need any silver bullets to become a T-shaped person.
Although there is no standard procedure, the following steps can help
you move forward in the appropriate direction.
Steps to Becoming a T-Shaped Person

1 2 3 4 5
Identify your Identify the Assess your Take the necessary Continue learning
type of profile. required skills and current skills. actions. and assessing
learning. yourself.

Let’s discuss the steps in detail.


1. Identify your type of profile.  Analyze  what  type  of  profile 
do  you  carry.  Are  you  an  I-shaped  or  Dash-shaped  profile? 
I-shaped persons are specialists and do not possesses any
general knowledge, whereas Dash-shaped persons possess a
diverse range of general knowledge without any specialization.
2. Identify the required skills and learning. Identify what skills
you  need  to  learn  and  build  to  work  on  your  profile  to  be  a 
T-shaped. The process does not have any specific solution. The 
analysis purely depends on the goals and the value that you
have defined for yourself.
3. Assess your current skills. You can follow any process to
assess your skills in each discipline. The most basic one is to
use a scale of 0-5 as follows:
{ 0 – Know nothing: You hardly not know about the skill or
the concept and want to learn and practice it.
{ 1 – novice: You have started your journey of learning the
defined skill and know about its WHAT and WHY. However, 
you do not know HOW to do it.
{ 2 – Advanced Beginner: You are still in your learning
process and can perform a few tasks but with lots of
guidance and formulas.
{ 3 – Competent: You are at the application level and can
apply the skill.
{ 4 – Proficient: You are good at performing many tasks
using your newly gained skill. Most people even cannot think
of it. However, you are still not perfect in specific complex 
situations.

46  │ Copyright © 2020


Module 3 | Knowing DevOps for Individuals

{ 5 – expert: You can do magic or wonders with your newly


gained skill combining it with your intuition compared to
others.
4. Take the necessary actions. People’s wishes are usually
higher, and they end up assessing themselves higher on
different skills or areas. Therefore, defining the action steps for 
achieving the desired level of expertise is necessary. Consider
the  following  aspects  when  defining  the  next  action  steps  for 
yourself:

a) Where do you want to improve your knowledge/ability?


b) Where are you comfortable maintaining?
c) What do you want to add?
d) Where do you want to go deep?
5.  Continue learning and assessing yourself. After taking
the necessary actions, move to step 2. Perform an honest
assessment, and continue with your learning.

Activity: Exercise: Assess Your Profile

Activity Time: 15 Minutes


Develop a detailed analysis report of your profile by following the
various steps of becoming a T-shaped person.

profile Assessment
1. Type of Profile
2. Required Skills and
Learning
3. Skill Assessment
4. Next Steps

topic Summary
In this topic, you learned that:
— DevOps encourages structuring the various teams of an
organization with the focus on the overall organizational goals
instead of creating silos of departments with a different focus.
— DevOps Engineer helps organizations facilitate the transition
from departmental focus to organizational goals by making
people aware of and responsible for the consequences of their
actions.
— DevOps encourages forming a cross-functional team with
T-shaped team members to making people responsible for the
consequences of their actions.
Copyright © 2020 │  47
Course Book | DASA DevOps Fundamentals

— A T-shaped person is a generalized specialist with capabilities,


such as Effective Cross-Discipline Collaboration, Diverse
Experience with Satisfaction of Depth, More Focus on Innovation,
and Eye-Catchy Profiles for Employers (or Interesting People).
— You can become a T-shaped person by practicing the following
steps:
1. Identify your type of profile.
2. Identify the required skills and learning.
3. Assess your current skills.
4. Take the necessary actions.
5.  Continue learning and assessing yourself.

Knowledge check
q1. people of which profile are interesting to converse with and
focuses on innovation?
a) I-Shape

b) Dash-Shape

c) T-Shape

d) V-Shape

devopS cApABIlItIeS BY dASA

who is dASA?
DevOps Agile Skills Association (DASA) is an open, global initiative
to develop standards for DevOps competencies that will benefit the
individual, team, and organization. DASA has set out to promote a
knowledge and skills model for DevOps based on the set principles.
DASA develops and evangelizes a vendor-neutral DevOps qualification
program for professionals, generates interest and awareness for the
need for knowledge and skill development, promotes open source
certification for DevOps knowledge and skills, and ensures the quality
of training for the market through a logical and threshold-driven
qualification program.

You can find more information on DASA on the DASA website,


http://www.devopsagileskills.org/.

48  │ Copyright © 2020


Module 3 | Knowing DevOps for Individuals

dASA competence model


The competence model is the core body of knowledge for DASA. It
provide eight knowledge areas and four skill areas, as mentioned in
the following figure.

Knowledge Areas Skills Areas

Business Value Optimization Courage

Business Analysis Teambuilding

Architecture and Design DevOps Leadership

Programming Continuous Improvement

Continuous Delivery

Test Specification

Infrastructure Engineering

Security, Risk, and Compliance

All capabilities (or areas) need to be mastered at the Expert level by


the team in order to perform well. Not everyone needs to operate at
the Expert level, some people are better at specific capabilities than
others, but as a team, they need to master the Expert level.

dASA competence model: Skill Areas


The skill areas are the fabric of the DevOps culture. The following table
lists the various qualities required to be proficient in each skill area.

courage Evangelism, Coaching, Self-confidence, Proactivity, Reflection, Trust,


Open discussions, Experimentation, Fail fast, Courage to change
teambuilding Understand the other’s point of view, Collaboration, Mutual accountability,
Common purpose, Ability to integrally support the service/product
devops leadership Facilitating teams to high performance, Humility, Service lifecycle mindset,
Stakeholder management
continuous Today we do our work better than yesterday, Kaizen mindset, Quality at
Improvement the source, First time right, Knowledge-sharing, Adaptiveness

The following pieces of information help you understand what is meant


by each skill area:
— Courage  covers  more  than  just  having  the  confidence  to  act. 
It is also about trusting team members, being open, and being
prepared to speak out.
— Teambuilding focuses on ensuring the team bonds to a set
of people that interact effectively in for common cause. In the
course of doing so, they hold each other accountable and
support each other.
Copyright © 2020 │  49
Course Book | DASA DevOps Fundamentals

— DevOps leadership is not reserved for management or other


formal leadership positions. It is fundamentally about facilitating
teams to reach a high level of performance through formal and
informal leaders.
— Continuous improvement is a built-in desire to do better today
than the team did yesterday. At the same time, it includes
recognizing successes and failures, celebrating both for what
they are, or opportunities to learn. This skill is also the basis for
creating an autonomous team with all the knowledge necessary
to serve the customer.

dASA competence model: Knowledge Areas


The eight knowledge areas represent the entire knowledge set that a
DevOps team needs to be effective for its customers. The following
table lists the various qualities required to be proficient in each
knowledge area.

Business value Use of the IT service in real life, including direct feedback loop of user
optimization comments to the team, Service level management, Definition of Done,
Business activity/performance monitoring, Business case management
Business Analysis Functional requirements, Non-functional requirements, Longer-term
development of business process (based on the translation of market
developments), Data analysis, Refinement
Architecture and Ensuring fit between developments and current situation, Overall service
design design, Patterns and styles
programming Software engineering mastery, Everything as code, Data management
continuous delivery Automated testing, Deployment and release management, Configuration
management, Version control, Cloud, Containerization, Feature-driven
delivery
test Specification Design of test cases, Test concepts
Infrastructure Technical monitoring, Performance management (for example, Load
engineering balancing), Capacity and availability management, Reliability engineering,
Cloud, Containerization
Security, risk, and Security, Service continuity planning
compliance

The following pieces of information help you understand what is meant


by each knowledge area:
— Business value optimization is to look at the use of IT service
in real life. The DevOps team should know about the usage
of their IT service in practice and its impact on the further
development of the service. It is vital to understand the business
process the IT service supports to be able to build a business
case for improvements.

50  │ Copyright © 2020


Module 3 | Knowing DevOps for Individuals

— Business Analysis is to analyze data and processes to


determine what improvements have a maximum effect on the
business. It is about detailing the requirements but also doing
Value Stream Mapping. It also includes the ability to refine the 
backlog of desired improvements.
— Architecture and Design encompass, principally, the overall
design of the IT service including creating a view of the direction
in which the service is developing. In other words, it involves
defining architectural scenarios.
— programming is the core knowledge area for all DevOps team
members. It is essential to develop applications. However, with
the creation of infrastructure as code, programming has found its
way into the infrastructure domain. In both cases, application and
infrastructure, it is crucial for people managing the Production
environment to have strong programming knowledge.
— Continuous Delivery covers the central DevOps process
of getting the newly developed code from the development
environment into production using a solid set of tests with
reliable version control.
— Test Specification is closely related to Business Value
Optimization and Business Analysis. Developing a set of tests
is a good way to specify the functionality to be developed. Test-
Driven Development (TDD) is an example of a method that
promotes this way of developing applications, describing the
required business value in terms of the tests that need to be
passed and then develop the code.
— Infrastructure engineering includes knowledge of load
balancing and other such performance management aspects.
It also means building effective monitoring solutions that work
as predictors for incidents or problems. Capacity and availability
management are part of this knowledge area.
— Security, risk, and Compliance are vital for all IT products
and services. It is essential to integrate this knowledge into
the DevOps team rather than relying on outside knowledge.
This knowledge area plays a vital role in building Quality at the
Source.

dASA devops competence Quickscan™


DASA DevOps Competence Quickscan™ will help you assess your
DevOps competencies. Would you like to assess your readiness to
engage in a DevOps team before continuing with the course?
We strongly recommend you to visit https://scan.devopsagileskills.
org/ and complete the scan.

Copyright © 2020 │  51
Course Book | DASA DevOps Fundamentals

topic Summary
In this topic, you learned that:
— The  DASA  DevOps  Competence  Model  identifies  eight 
knowledge areas and four skill areas that are required for DevOps
professionals, teams, and organizations to be successful.
— The four skill areas are Courage, Teambuilding, DevOps
Leadership, and Continuous Improvement.
— The eight knowledge areas are Business Value Optimization,
Business Analysis, Architecture and Design, Programming,
Continuous  Delivery,  Test  Specification,  Infrastructure 
Engineering, and Security, Risk, and Compliance.

Knowledge check
q1. According to DASA, what are the skill areas that you need
to be proficient at to be an effective Devops team member?
a) Continuous Delivery, Courage, DevOps Leadership,
Teambuilding

b) Business Value Optimization, Courage, DevOps Leadership,


Teambuilding

c) Business Value Optimization, Business Analysis, Continuous


Delivery, Programming

d) Continuous Improvement, Courage, DevOps Leadership,


Teambuilding

52  │ Copyright © 2020


Module 3 | Knowing DevOps for Individuals

dASA devopS certIFIcAtIonS

dASA devops certification Scheme

DASA offers certifications to all key profiles and comes up with the
certification program, as shown in the preceding figure. It includes the
following three levels, ensuring the right certification for the right audience:
— The Foundational level focuses on ‘knowing’ and helps
individuals to build an understanding of DevOps, its principles,
DASA’s approach to DevOps, and puts DevOps into a business
perspective.
— The professional  level  certification  level  provides  capability 
oriented  certifications  that  helps  professionals  learn  the  key 
traits of their job and apply DevOps in real life. This level includes
three  certification  programs,  one  for  each  of  the  professional 
profiles that we identify in a team.
— The Leadership level focuses on the ability to lead and enable.
This program does not focus on building capabilities. It also
does not explain the tools that are there in the toolbox for the
professional. It focuses on how the professionals can best
operate in his/her role, such as managing the process, removing
barriers for people, and leading the team.

Copyright © 2020 │  53
Course Book | DASA DevOps Fundamentals

dASA devops Fundamentals certification

The DASA DevOps Fundamentals certification provides an extensive


introduction to the core agile DevOps principles covering the essential
knowledge and skill competences that have been defined by
DASA. It is the starting point for an organization going on a DevOps
journey. Improved workflows and faster deployment start with a core
understanding of DevOps fundamental concepts by anyone involved
in an Agile and/or DevOps team.
DASA DevOps Fundamentals brings all Knowledge and Skill Areas to
the Competent level. Having said this, the Fundamentals course does
not provide, for example, practical Business Analysis or Programming
experience. Such practical knowledge needs to be acquired through
specific training.

54  │ Copyright © 2020


Module 3 | Knowing DevOps for Individuals

dASA devops professional certifications


DASA Devops professional: enable and Scale

Teambuilding
5
DevOps
Courage Leadership
4

3
3
3
2
Architecture Continuous
and Design Improvement

2 1 3

2 DASA DevOps
Professional
2
Business Enable and Scale Infrastructure
Value Engineering
Optimization
2
2

2
2
2
Business Security, Risk,
Analysis Compliance

Continuous
Test Delivery
Specification
Programming

1. Novice / 2. Competent / 3. Proficient / 4. Expert / 5. Master

DASA DevOps Professional: Enable and Scale brings the Skill Areas
to the Proficient level. Enable and Scale is about ensuring that a
DevOps team can be successful in its environment. The Enable and
Scale certification:
— Validates the candidate has a practical understanding and
experience of leading DevOps teams.
— Enables members to become effective, ensuring the team
works optimally.
— Covers the effective coexistence and cooperation of multiple
DevOps teams.

In other words, it answers the question, “How do you turn a traditional


IT organization into a DevOps organization?”

Copyright © 2020 │  55
Course Book | DASA DevOps Fundamentals

DASA Devops professional: Specify and verify

Teambuilding
5
DevOps
Courage Leadership
4

2 Continuous
Architecture 2
2 Improvement
and Design 3
1
2

DASA DevOps
3
Professional
Business 2 Infrastructure
Specify and Verify
Value Engineering
Optimization

3 2

2
2
Business 3 Security, Risk,
Analysis Compliance

Continuous
Test Delivery
Specification
Programming

1. Novice / 2. Competent / 3. Proficient / 4. Expert / 5. Master

DASA DevOps Professional: Specify and Verify focuses on the


following competencies:
— Architecture and Design
— Business Value Optimization
— Business Analysis
— Test Specification

According to estimates, these areas of expertise involve approximately


a third of the team. The focus of these areas is to ensure customers’
requirements are understood and translated into a team. In other
words, these knowledge areas confirm that the requirements can be
integrated into IT service.
The ultimate responsibility of the role, Specify and Verify, is to
ensure the design of the service is future proof, both technologically
56  │ Copyright © 2020
Module 3 | Knowing DevOps for Individuals

and functionally. The role confirms that the ability to test any new
functionality is optimally facilitated by Test Specification that takes
both the customer usage of the system and the need for speed into
account.
DASA Devops professional: Create and Deliver

Teambuilding
5
DevOps
Courage Leadership
4

2 Continuous
Architecture 2
and Design 2 Improvement

2 1
2

2 DASA DevOps
Professional
Business 3 Infrastructure
Create and Deliver
Value Engineering
Optimization
2

3
2

Business Security, Risk,


Analysis 3 Compliance
3

Continuous
Test Delivery
Specification
Programming

1. Novice / 2. Competent / 3. Proficient / 4. Expert / 5. Master

The majority of a DevOps team falls into the competency area of


Create and Deliver. The core knowledge areas of this competency
are:
— Programming
— Continuous Delivery
— Security, Risk, and Compliance
— Infrastructure Engineering

This competency is the heart of the team’s capabilities. The exact


balance of skills, particularly Programming vs. Infrastructure
Copyright © 2020 │  57
Course Book | DASA DevOps Fundamentals

Engineering, depends on the total area of responsibility of the team.


DevOps is being used to deliver infrastructure services, which in
turn deliver application services. A vital aspect that helps deliver a
successful service is monitoring. In practice, full-stack DevOps teams
responsible for everything from the user interface to the server and
network hardware is rarely seen. It is the technology stack that
ultimately determines the balance of knowledge required in a team.

dASA devops leadership certifications


DASA offers three distinct Leadership certifications as part of the
certification scheme. The Leadership level does not cover the practical
tools and capabilities covered in the Professional Certifications, but
focuses on leading and enabling teams and organizations. It helps the
individuals in these roles navigate within their organization and drive
the best decisions forward.

DASA DevOps DASA DevOps DASA DevOps


Product Owner Leader Coach

Let us discuss how these certifications help you in gaining the required
skills:
— In a DevOps environment, the Product Owner is a critical
leadership role and responsible for managing the full lifecycle of
a product from concept to the grave. This certification program 
helps the Product Owner realize maximum business value,
engage with stakeholders, and deal with future requirements as
well as operational challenges.
— The DevOps Leader is responsible for leading the DevOps
initiative and creating the framework for teams to scale and
achieve  maximum  business  value.  This  certification  program 
helps leaders understand leadership in the context of DevOps,
discusses leadership development models, and explains the
efficient way of building teams and transforming the organization.
— The DevOps Coach helps team members and other stakeholders
in the organization to apply DevOps concepts and principles
within their organization. The coach oversees the transformation
and guides the organization through their journey in building
high-performing teams.

Activity: Group Discussion: What is your profile?

Activity Time: 5 Minutes


What do you think would be your profile?
58  │ Copyright © 2020
Module 3 | Knowing DevOps for Individuals

topic Summary
In this topic, you learned that:
— DASA  DevOps  certification  scheme  recognizes  three  maturity 
levels: Foundational, Professional, and Leadership.
— The  Foundational  level  has  only  one  certification  -  DASA 
DevOps Fundamentals.
— The Professional level has three certifications: DASA DevOps 
Professional - Enable and Scale, DASA DevOps Professional -
Create and Deliver, and DASA DevOps Professional - Specify
and Verify.
— The  Leadership  level  also  has  three  certifications:  DASA 
DevOps Product Owner, DASA DevOps Coach, and DASA
DevOps Leader.

Knowledge check
q1. which DASA certification will help you to be proficient in
the four skills areas?
a) DASA DevOps Coach

b) DASA DevOps Professional: Create and Deliver

c) DASA DevOps Professional: Enable and Scale

d) DASA DevOps Professional: Specify ad Verify

module SummArY

In this module, I have learned:

Make a list of key points that you have learned in this module.

Copyright © 2020 │  59
4
gettIng AcQuAInted
wIth devopS culture And
BehAvIor
DevOps Journey at the Fundamental Level – Where
are you?
DevOps - The DevOps for DevOps for Teams
DevOps Practices The Next Steps
Context Individuals and Organizations

► Introducing ► Knowing DevOps ► Getting ► Getting Familiar ► Measuring the


DASA DevOps for Individuals Acquainted with with DevOps Performance -
Fundamentals DevOps Culture Management The Next Steps
and Behavior Practices
► Building the
DevOps Context ► Understanding ► Getting Familiar
the Value of with DevOps
DevOps for Technical
Teams and Practices
Organizations ► Enabling DevOps
Teams Perfor-
mance Through
Continuous
Delivery and
Automation

This module takes you to the third step of your DevOps journey -
Devops for Teams and organizations. The step consists of two
modules, as listed in the preceding infographic.

Copyright © 2020 │  61
Course Book | DASA DevOps Fundamentals

Module Objectives
At the end of this module, you will be able to:
 Describe the DevOps culture.
 Explain the core elements of a DevOps culture.
 Identify the important aspects to implement a DevOps culture.

Module Topics
 Embracing a DevOps Culture
 Core Elements of a DevOps Culture
 Implementation of a DevOps Culture

emBrAcIng A devopS culture

what people Say about culture/organizational culture

“Culture is how organizations ‘do things’.”


— Robbie Katanga

“Organizational culture defines a jointly shared description of an


organization from within.”
— Bruce Perron

“Organizational culture is civilization in the workplace.”


— Alan Adler

what is culture?
Organizational culture involves the values and behaviors of a particular
set of people, contributing to the unique social and psychological
environment of an organization.

62  │ Copyright © 2020


Module 4 | Getting Acquainted with DevOps Culture and Behavior

Motivated in an
Committed to values, architecture of
purposes, mindsets, organizational practices
and behaviors. and behaviors

Organizational
culture make us

Transparent with Evident in rituals,


team, customers, and stories, and day–to
other stakeholders day practice

Culture is the sum of behavior and mindset of an organization,


supported and enhanced by the values and beliefs of that organization.
The organizational culture influences the way people interact, the
context within which knowledge is created, the resistance they will
have towards certain changes, and ultimately the way they share
knowledge.
Organizational culture consists of the norms, values, and rules of
conduct of an organization as well as management styles, priorities, Reference Reading:
beliefs, and interpersonal behaviors. Together they create a climate https://hbr.org/2013/05/what-is-
that influences how well people communicate, plan, and make organizational-culture
decisions.

what is devops culture?


DevOps culture emphasizes small, multidisciplinary teams, who
work autonomously and take collective accountability for how actual
users experience their software. For a DevOps team, there’s no place
like production. Everything they do is about making customers’ live
experience better.
The primary characteristic of DevOps culture is to increase the
collaboration between the roles of development and operations
teams. There are some important cultural shifts within teams and at
an organizational level, that support this collaboration. An attitude of
shared responsibility is an aspect of DevOps culture that encourages
closer collaboration.

Copyright © 2020 │  63
Course Book | DASA DevOps Fundamentals

DevOps is positioned around collaboration, which is both encouraged


and harnessed by culture. Communication is the fundamental crux
upon which DevOps is founded with the focus on the flow of information.
Such information sharing acts as a key to a shared understanding and
the association of previously disparate IT silos.

core of devops culture


A DevOps culture focuses on a service mindset. The following figure
shows how this mindset helps to deliver a high-quality product.

Core of Product Product Integral


DevOps Usage Lifecycle Responsibility

Service High Quality Continuous Overall Health of


Mindset Product Support the Product

The core of DevOps culture is a service mindset that ensures a high-


quality product meets the needs of the customer. Therefore, a DevOps
team must get regular updates on how their product is being used,
analyze the product throughout its lifecycle, and make the necessary
modifications to maintain their product’s effectiveness.
A DevOps team is responsible for the overall health of the product or
service. It does it by practicing the following habits.

It does not develop


It fulfills the needs problems as a result
of the business of its further growth
process it supports. and development
throughout the
product’s lifecycle.

It works as
intended without
problems.

64  │ Copyright © 2020


Module 4 | Getting Acquainted with DevOps Culture and Behavior

typical cultural Aspects of a devops team


The following table lists some important cultural aspects that every
organization based on DevOps principles follows.

team cultural Aspect description


Continuous Learning & The desire to explore and learn should be there in teams. Working
Continuous Improvement together with transparency and knowledge-sharing is necessary.
experimentation & risk Always conduct experiments using solid methodologies to capture
Taking highly accurate data.
Build quality in Always show full transparency in teams for the work the team is
doing as it ensures building quality products.
An engineering Culture Utilize knowledge, skills, and creativity to solve problems, implement
product features, and optimize the delivery process.
A Culture of Measure effectiveness, culture, and efficiency to optimize DevOps
effectiveness transformation.
A Culture of product Ensure that applications must deliver value on their execution in
Thinking production.
A Culture of Taking Every member of the DevOps team should be responsible for the
responsibility complete product lifecycle.
Inspirational and Fun An environment in which people perform at best, where they feel
environment inspired, where they want to be, feel welcomed and are encouraged
to think out of the box.

growing a culture
A culture change cannot be achieved through a top-down mandate. A
culture is grown. It lives in the collective hearts and habits of people
and their shared perception of “how things are done around here.”
Someone with authority can demand compliance, but they cannot
command optimism, trust, conviction, or creativity.
Culture is like the wind. It is invisible, yet its effect can be seen and
felt. When it is blowing in your direction, it results in for smooth sailing.
When it is blowing against you, everything is more difficult.
For organizations seeking to become more adaptive and innovative,
culture change is often the most challenging part of the transformation.
Innovation demands new behaviors from leaders and employees
that are often antithetical (opposite) to corporate cultures, historically
focused on operational excellence and efficiency.

Copyright © 2020 │  65
Course Book | DASA DevOps Fundamentals

what context to provide to facilitate growth areas for teams?

team growth Areas tips to Facilitate


Continuous Learning and Organize by teams, facilitate knowledge sessions, conduct
Continuous Improvement hackathons, make people responsible, use concepts of MVP, set a
clear DoD, and coach teams with the Agile way of working.
experimentation and Provide time, use instant sandbox environment, remove hurdles,
risk-Taking applaud ideas, fail safely, and award failure.
Build quality in Advocate end-to-end responsibility; Encourage the team to utilize
their skills as they know the best; avoid cutting corners; practice
automation (test, deploy, and provision), continuous improvement,
and transparency (monitors).
An engineering Culture Hire people with matching ambitions, move away from the function-
title model, support experimentation, support automating manual
tasks, and do not focus only on utilization.
A Culture of Begin with the end in mind, in retrospectives: ask people why?
effectiveness People are responsible for choosing activities in teams, avoid or
eliminate handover moments, move away from rigid processes,
achieve results in small batches, and generate awareness by Lean.
A Culture of product Encourage customers to attend demos, implement user feedback
Thinking into a storyboard, allow customers to write about the product and
respond, organize people around the product, and encourage the
team to write blogs about the product (you build it; you run it).
A Culture of Taking Do not explain ‘how’ to do, ask ‘what’ is required, address derailment
responsibility openly, let people figure out how to do things, reward responsibility,
reward failure, and bring transparency in what everyone is doing.
Inspirational and Fun Provide good coffee, create nice and open environments, invest in
environment additional facilities like games, conduct contests, arrange drinks at
the end of the week, and allow teams to modify or tailor the office to
their needs.

Culture is about exhibiting specific practices or behaviors in the context


to operate. The following lists mention some tips or examples to
practice the behavior supported by DevOps, as listed in the preceding
table.
— Continuous Learning and Continuous Improvement:
{ Develop multidisciplinary teams than resource pools to
create shorter feedback loops to enable everyone to
understand the implications of an action.
{ Conduct well-funded knowledge sessions (partly) during
work time and encourage everyone that investing in these
sessions is necessary. Do not forget good food and fun to
make these sessions exciting to attend.

66  │ Copyright © 2020


Module 4 | Getting Acquainted with DevOps Culture and Behavior

{ Conduct hackathons/innovation days to let everyone


understand the importance of innovation to the business.
Again, it requires encouraging everyone to invest time.
{ Build a sense of responsibility to enable people to do the
expected job.
{ Advocate the concepts of a Minimal Viable Product (MVP)
and encourage people to apply these when trying out new
ideas.
— experimentation and risk-Taking:
{ Provide the required time and means to enable people to
explore new ideas.
{ Ensure that obtaining infrastructure/playground/sandbox
does not pose a hurdle to try out new ideas. Systems need
to be made instantly available as soon as needed, just like
in the cloud.
{ Trust people and appreciate new ideas. Provide them little
space to try out new ideas and do the right job.
{ Conduct knowledge sharing sessions and offer a platform to
people to showcase their new ideas.
{ Create an environment that encourages safe-to-fail
experiments.
— Build quality in:
{ Encourage people to be end-to-end responsible for the
product or service.
{ Ask the team to provide insight into the amount of
functionality that can be delivered as they know best about
software development.
{ Develop transparency through feedback loops. Equip
people with the means to measure their performance. Install
open monitors on the work floor that provide a detailed view 
of the status of selected jobs and display test results in the
open floor.
{ Test and deliver often. Correlating test results of tasks
performed over the last couple of hours is easier compared
to weeks.
{ Add  to  the  Definition  of  Done  (DoD),  as  per  Scrum 
terminology, when delivering software. Ensure to verify the
software at various stages of testing.
{ Make continuous improvement, the way of working. Ensure
to reserve 10% of the time for continuous improvement. In 
Scrum, retrospectives focus on continuous improvement.
{ Automate manual tasks to ensure producing consistent
results. Automate tests, deployments, and provisioning.

Copyright © 2020 │  67
Course Book | DASA DevOps Fundamentals

— An engineering Culture:
{ Ensure matching interviewee ambitions with that of the
company.
{ Assign products to people considering their “added skill or
knowledge.” Avoid following the function-title model.
{ Reserve 10% of the time for automating slow, repetitive, and 
costly manual tasks to avoid human errors.
{ Develop a supportive culture where people help one another
to solve issues other than managing utilization.
{ Provide a standard playground/sandbox to people for
experimentation.
— A Culture of effectiveness:
{ Begin your work considering the end in mind. Focus on
doing value-add activities, ignoring the non-value-add
process steps.
{ Help people build quality by not cutting corners but by
automating tests and manual (often boring) activities.
{ Focus on team autonomy (independent teams) and remove
the source of inefficiency by eliminating handover moments 
as much as possible.
{ Avoid following rigid processes without any profound
thought and discussions. Allow the team to choose activities
to achieve results in different situations.
{ Encourage working in small batches to assess whether
everyone is heading in the right direction. Iterate when
working on products.
{ Make people aware of the concept of value-add activities
by providing Lean training or introducing Lean principles to
enable them to start thinking about it considering their work
activities.
— A Culture of product Thinking:
{ Allow the entire team to connect with the customer, not just
the Product owner. Ensure to provide product demo to the
customer after each sprint.
{ Reduce the feedback loops by incorporating customer or
user feedback straight into the user storyboard.
{ Encourage customers to provide feedback about the product
and allow the team to respond to the feedback. Ensure the
team understands the what and why behind the given work.
{ Make teams product-based, end-to-end responsible, and
capable of handling multiple projects.

68  │ Copyright © 2020


Module 4 | Getting Acquainted with DevOps Culture and Behavior

{ Aim at complete autonomy of the teams and the products.


{ Encourage teams to write about their products, such as
the company blog or speak about the product at seminars/
customer engagements.
— A Culture of Taking responsibility:
{ Allow or support people to think of ways to perform their
tasks rather than how to do it.
{ Provide the required authority to enable people to make
relevant decisions as and when required. For example, let
the teams decide when to go live and allow teams to access
systems for which they request somewhere else.
{ Make people end-to-end responsible for a product.
{ Allow people to talk about anyone who is avoiding
responsibility by providing a platform to bring transparency,
such as Scrum Board, and address derailment of the
process.
{ Develop a fail-to-safe environment by rewarding people for
taking responsibility, a failure for experimenting out new
ideas, and speaking about something that does not seem
to work.
— Inspirational and Fun environment:
{ Provide good coffee to the people. They drink it the most
during the day.
{ Develop a friendly and open environment.
{ Bring some excitement to the workplace by investing in fun
activities, such as games and an outing. These activities
allow people to know each other outside their work
environment.
{ Encourage the team to develop their own space to help
them create a sense of ownership.

ron westrum typologies of organizational culture


Transforming the culture is about making it more measurable, for
example, by relating it to the ability to process information within
an organization. Culture is one of the primary considerations for
measuring job satisfaction.

“...job satisfaction is the biggest predictor of profitability, market


share, and productivity. The biggest predictor of job satisfaction,
in turn, is how effectively organizations process information…”
By Ron Westrum

Copyright © 2020 │  69
Course Book | DASA DevOps Fundamentals

Ron Westrum’s model of organizational culture is theoretical. It


provides the key message of changing the culture of an organization.
The model consists of three typologies, as listed in the following figure.

► Low cooperation
► Messengers shot
► Responsibilities shirked
► Bridging discouraged

► Failure leads to scapegoating

► Novelty crushed

Pathological
(power-oriented)
► High cooperation ► Modest cooperation
► Messengers trained ► Messengers neglected
► Risks are shared ► Narrow responsibilities
► Bridging encouraged Ron Westrum ► Bridging tolerated

► Failure leads to enquiry Typologies and nt tic ► Failure leads to justice

► Novelty implemented Characteristics ► Novelty leads to problems


(p
Ge form ted)

)
ed
rie ra
er rien
ne an

-o c
le eau
o

rat ce

(ru ur
ive -

Let’s discuss a little about the three typologies.


— pathological organizations consist of vast amounts of fear and
threat. The people of such organizations often keep a lot of
information with them for political reasons or prove themselves
more desirable or popular.
— Bureaucratic organizations focus on protecting departments.
Each department tries hard to become superior and lay down
their ground of rules following their book of rules and standards.
— generative organizations are mission-focused. They focus only
on  accomplishing  the  defined  goals  and  achieving  excellent 
performance.

Activity: Group Discussion: Identifying the Culture of Your Organization

Activity Time: 10 Minutes


How will you describe the culture of your organization, from different perspectives, such as service
mindset, high-quality product, continuous support, and overall health of the product?

70  │ Copyright © 2020


Module 4 | Getting Acquainted with DevOps Culture and Behavior

topic Summary
In this topic, you learned that:
— Organizational culture involves the values and behaviors of a
particular set of people, contributing to the unique social and
psychological environment of an organization.
— The primary characteristic of DevOps culture is to increase the
collaboration between the roles of development and operations
teams.
— A service mindset ensures that a high-quality product is not just
available but also meets the needs of the customer.
— For organizations seeking to become more adaptive and
innovative, culture change is often the most challenging part of
the transformation.
— The typical cultural elements of a DevOps team include Continuous
Learning & Continuous Improvement, Experimentation & Risk
Taking, Build Quality in, An Engineering Culture, A Culture of
Effectiveness, A Culture of Product Thinking, A Culture of Taking
Responsibility, and Inspirational and Fun Environment.
— The three typologies, Pathological, Bureaucratic, and
Generative, of Ron Westrum’s model provides the key message
of changing the culture of an organization.

Knowledge check
q1. which cultural aspect of a Devops team specifies that
applications must deliver value on their execution in
production?
a) Build quality In

b) A culture of product thinking

c) An engineering culture

d) A culture of effectiveness

core elementS oF A devopS culture

what is behavior?

Behavior is the observable and measurable attributes of people of an organization. In other words,
you should be able to see or hear someone exhibiting some behavior.

what factors affect job performance, employee interaction, job commitment, leadership,
and managerial styles?

Copyright © 2020 │  71
Course Book | DASA DevOps Fundamentals

INFO It is the way the people of any organization behave. That is why
organizations expect their people to exhibit some set behavior. The
organization behave human behavior of an organization depicts its culture. It determines
Organizational behavior is the the impact of human behavior in the work environment on job structure,
study of both group and individual performance, communication, motivation, and leadership.
performance and activity within an
organization. Let’s discuss the problem and the solution associated with human
behavior in an organization.
— problem:  Organizations  find  it  significantly  difficult  to  push 
people to start exhibiting some expected behavior due to
personal habits and resistance.
— Solution:  Make  the  process  easy  for  people  by  defining  small 
and tangible sub-behaviors. Such a subdivision enables teams to
progress visibly towards the new behaviors in incremental steps.

Behaviors expected from a devops team


The following figure lists some of the primary behaviors expected from
DevOps professionals or a team.

Multi-
disciplinary

Empathy Transparency

Knowledge Ownership
Sharing

Fail-Safe Prioritization

Improve
Continually

Characteristics or Expected Behavior of DevOps Professionals

Let’s discuss the behaviors in detail.


— Multidisciplinary: A DevOps professional do not hesitate to
offer help or pick up the tasks of its team member who is too
busy or unavailable.
— Transparency: A DevOps team shares the real-time progress
with everyone to be open and honest, for example, by publishing
real-time progress reports on the floor monitors.
72  │ Copyright © 2020
Module 4 | Getting Acquainted with DevOps Culture and Behavior

— ownership: The Product Owner of a DevOps team, who is


a DevOps professional, keeps all the stakeholders informed
about product progress and the required deliverables. He/
she encourages stakeholders to attend demonstrations of the
product at every stage to gather feedback. He/she involves his/
her team members when interacting with stakeholders to enable
the team to understand the feedback and the requirements and
respond to address the queries raised.
— prioritization: The Product Owner and the Team Managers
meet at least once per sprint to discuss the work priorities for
both functional and non-functional work items.
— Improve Continually: DevOps professionals work with the
mindset of continuous improvement. Hence, a DevOps team
does not wait for a critical incident to think of ways of improving
its products. They share ideas and opportunities at every release
of a product to plan its further improvement. If a severe incident
occurs, they do a blameless postmortem and involve everyone
to shares ideas and opportunities for improvement.
— Fail-Safe: The manager(s) of a DevOps team openly reward
the identification, prevention, ánd resolution of errors. They also 
inquire about what lesson has everyone learned from these errors.
— Knowledge Sharing: DevOps professionals personally share
their experiences and knowledge amongst their fellow team
members. The way helps them to stay updated immediately.
— empathy: Everyone in a DevOps team, including the Product
Owner, the Scrum Master, or Team Managers, do not hesitate
to discuss their concerns openly and ask for required support.

Key Beliefs (or elements) of devops


The true nature of DevOps relates to the way we interact and learn to
build secure applications and services. While there is no one way for
building DevOps into your organization, you can do this by following a
set of core beliefs necessary to achieve a collaborative DevOps culture.

Key Beliefs, Cultural Elements, or Core Ingredients of DevOps

Teambuilding and Continuous Courage and Leadership


Collaboration Improvement and Experimentation and Feedback
Problem-Solving

Copyright © 2020 │  73
Course Book | DASA DevOps Fundamentals

Let’s discuss the cultural elements that help to develop an effective


DevOps culture.
— Teambuilding and Collaboration: A DevOps culture is
characterized by a high degree of collaboration across roles,
focus on business instead of departmental objectives, trust,
and a high value placed on learning through experimentation.
Collaboration among cross-functional teams is key to building a
successful team. A key to collaboration is open communication
with clear transparency of information among people, including
senior management.
— Continuous Improvement and problem-Solving: Continuous
improvement helps teams to think of new ways of working, build
better quality products, improve productivity, and reduce costs.
— Courage and experimentation: DevOps teams require to
leave old ways of working and adopt best practices to optimize
the existing processes of the organization. They should have
the courage to deliver added value to the customers. The key
activity for an effective DevOps team is experimentation and the
cultural space to fail.
— Leadership and Feedback: As a DevOps leader, you need
to manage an array of complex systems during a digital
transformation. Managing systems is not more complex than
the network of humans you will be working with to get the
project done. You need to encourage and facilitate ownership
and responsibility for the work.

teambuilding and collaboration


Teambuilding is a process where individuals with similar interests
and attitudes come together (or collaborate) to work for a common
objective.

Core Elements

Teamwork Visual Management Collaboration

74  │ Copyright © 2020


Module 4 | Getting Acquainted with DevOps Culture and Behavior

teamwork
Teamwork is the combined action of people working
towards the same end goal. When people talk about
teamwork, they mean more than just completing a task.
They mean the work that comes from people working
together effectively.
People joining a DevOps team often come from different
technical teams but have similar skills. However,
they do not always have the same purpose or goals.
They might be working together with other people
(outside their group) to achieve the enterprise’s goals.
Therefore, when transitioning from a technical team to
a DevOps team, it is essential to give proper attention
to teambuilding.

visual management
Visual Management is one of the strongest tools to communicate. EXAMPLE
In its most basic form, Visual Management includes three boards, as
shown in the following figure. One of the popular tools for doing Visual tools
Management is Kanban. Kanban is a key tool of Visual
— A visual board or Kanban board is an Agile project management
Management that stimulates
tool designed to help visualize work, limit work-in-progress, and
collaboration to uncover pitfalls.
maximize efficiency (or flow). 
— Visual management boards use cards, columns, and continuous
improvement to help technology and service teams commit to
the right amount of work, and get it done.

Progress on Problem-Solving

Week Board Day Board

Problems Problems

Improvement
Board

Copyright © 2020 │  75
Course Book | DASA DevOps Fundamentals

Each board has its specific use, such as:


— Day Board: Managing the daily progress of work
{ Teams can use a simple (To Do-Doing-Done) or a
complicated approach to track the progress.
— week Board: Ensuring the work is planned and agreed
{ Teams should discuss Key Performance Indicators (KPIs)
daily, which is impossible. Therefore, they should have such
a discussion at least weekly.
{ The board acts as a repository for comments from customers
and employees.
— Improvement Board: Gathering all the problems or
improvements initiatives to be solved or carried out
{ Team members should communicate and share solutions
and learnings.
{ The board shows the progress of problem-solving.

Using the three boards, a DevOps team can manage long-term trends,
short-term planning, and improvements.

collaboration
The most important behavior of teamwork is collaboration.

“Successful DevOps requires business, development, QA, and


operations organizations to coordinate and play significant roles
at different phases of the application lifecycle.”
“It may be difficult, even impossible, to eliminate silos, but
collaboration is essential.”
By Laurie Wurster et al. in a recent Gartner report

While the disconnect between Dev and Ops created the motivation
for its creation, DevOps extends far beyond the IT organization. The
need for collaboration extends to everyone with a stake in the delivery
of software.
Cooperation is often used as an interchangeable term for collaboration.
However, the two terms do not exactly share the same meaning.
Therefore, it is essential to understand the differences between the
two terms.
— Collaboration: Collaboration refers to the action of working
with someone to produce or create something. From a business
perspective, collaboration can be perceived as practice for
individuals to work together for achieving a common, shared
goal or objective.
— Cooperation: Cooperation is working with others to achieve
your goals, which may be part of a common goal.

Collaboration can be effective with the active and passive participation


76  │ Copyright © 2020 of all individuals and teams. With just cooperation, we often end up
Module 4 | Getting Acquainted with DevOps Culture and Behavior

with silos. This may result in the achievement of the individual group
goals; however, the organizational goals may not be achieved.
For cooperation to become collaboration, it is important to understand
how all of the individuals and teams are successful and what is their
value in contributing to the success. This requires that the goals and
KPIs of all the individuals and teams are shared and integrated, and
not just aligned.”
Quoted text is based upon AXELOS ITIL® materials. Material is used under licence
from AXELOS Limited. All rights reserved.

Collaboration offers several benefits but also brings with it several


pitfalls if not implemented effectively, as listed in the following table.

Benefits pitfalls
Combines different perspectives Irrational decision-making due to group thinking
Encourages creativity Ambiguity in roles and responsibility
Takes advantage of synergies High cost of collaboration
Brings balance in decision making Longer decision times
Improves delivery times Conflict within the group

To achieve the benefits, the team should learn to accept or avoid the
pitfalls.

Activity: Exercise: Team Activities

Activity Time: 5 Minutes


Traditional organizations hire people to perform specific tasks. Therefore, its people are task-
oriented. However, DevOps teams are involved in other activities and have a more extensive
scope of responsibility. List some of those activities of a DevOps team.

DevOps teams perform a much broader range of tasks compared to


task-oriented teams, varying from hiring team members to working
standby shifts (pager duty). Some of the primary activities of a DevOps
team are:
— Define, design, build, validate, release, and evaluate features/
patches
— Define and document hiring profiles or conduct interviews
— Conduct market research
DevOps Safari
— Analyze application usage DevOps safari provides a learning
— Analyze production incident platform that enables a team to
connect with another team to
— Document and share incident postmortems/lessons learned
enhance their knowledge from
— Conduct Devops Safari one another’s practices and
— Improve delivery process effectiveness experiences.
— Research a new technology/tool │  77
Copyright © 2020
Course Book | DASA DevOps Fundamentals

— Refine/align product vision
— Support customers/application users and answer their questions

continuous Improvement and problem-Solving


Finding new ways to do things, learning new programming languages
or methodologies, and solving problems in new ways is all part of a
DevOps culture.

Core Elements

Continuous Problem solving/Kaizen Quality at the


improvement mindset source

Visual Management serves as a base for continuous improvement


and stimulates employee involvement to manage and improve quality.
The willingness to try new things, learn new skills, or implement new
technologies is important to maintain the DevOps mindset.

continuous Improvement: All About problem-Solving


Continuous improvement is integral to an engineering culture.
Developing such a culture within a DevOps team requires them to
focus on:
— Facts
— Data from technical components
— Use of a service by its customers

Engineers build things that solve problems. You don’t have to be a


computer scientist or have any particular degree to be an engineer.
You just have to speak up when things aren’t right, evaluate ideas
on their merits, and build things that fix what’s broken.”
Palantir Technologies, USA

EXAMPLE problem-solving is integrating Kaizen into the behavior and mindset


Problem-solving within a team. Kaizen is all about building continuous improvement in
the way of working. It works in two ways:
The other problem-solving methods
include Kepner-Tregoe (KT), — Daily Kaizen, looking for small improvements every day.
KepnerandFourie (KandF), and Plan- — Kaizen events, handling larger problems using the Kaizen
Do-Check-Act (PDCA). structured  problem-solving  method  of  the  Define,  Measure, 
Analyze, Improve, and Control (DMAIC) steps.
78  │ Copyright © 2020
Module 4 | Getting Acquainted with DevOps Culture and Behavior

Structured problem Solving


The key tool for continuous improvement is a structured problem-
solving method. A well-known method to facilitate continuous
improvement is DMAIC.

Define
Define the problem

1 Measure
Control Collect data and facts
Maintain the solution about the problem
5 2

4 3
Improve Analyze
Define alternative Analyze the cause
solutions and implement of the problem
improvements

DMAIC stands for the five steps of this method:


1. Define:  Defining  a  problem  includes  describing  the  current 
situation and why it is not acceptable. Therefore, you should
ensure the onboard stakeholders agree with the statement
defining the problem. You cannot solve a problem unless you 
first Define it.
2. Measure:  When  the  problem  has  been  defined,  you  should 
Measure the additional data to quantify the problem. It is vital to
ensure that the data is correct.
3. Analyze: The next step is to Analyze the gathered data. At this
point, it is possible to analyze whether the problem is valid or
whether it is a random event that does not have a specific cause 
that can be corrected.
4. Improve:  It  defines  potential  solutions  to  the  problem.  Once 
a number of solutions are generated for Improve, decide the
improvement to implement.
5.  Control: After ensuring whether a particular solution works,
embed the solution into the organization’s way of working in the
Control phase and share any lessons learned.

Copyright © 2020 │  79
Course Book | DASA DevOps Fundamentals

Kaizen mindset
The Kaizen mindset means integrating the following three behaviors into the DevOps team:

Seeing and prioritizing Solving problems Sharing lessons


problems ► Understand the root learned
► Identify problems causes of problems ► Share the lessons
► Accept these as a ► Resolve the problems learned with others,
part of daily life completely so that they can
benefit from it

Temporary solution

Leak

Traditional Approach and No Quality at the Source


Kaizen means improvement. In Kaizen, problems are seen as opportunities to improve. The Kaizen
methodology is based on making little changes, monitoring the results, and readjusting.

Products that Approach


traditional traditionaland
organizations develop
no Quality at lack quality at the source and leads to
the Source
making customers unhappy, as shown in the following figure.
Products that traditional organizations develop lack quality at the source and leads to making
customers unhappy, as shown in the following figure.

Automated
Version Commit Manual Support and
Team Acceptance Release
Control Stage Validation Monitor
Test

Check-in Approval

Feedback

Problem-solving

► Problems are identified at the time of release, when it is too late.


► Solving problems is difficult and expensive.
► Customers do not like problems (or errors) and want a quick
solution that is almost difficult with a traditional development.
Unhappy
Customers

Legend: Code Code Failed Code Passed

Traditional organizations follow a time-consuming product development process due to the following reasons:
Copyright © 2019 | 32

— Lack of automated IT processes


— Absence of an MVP approach

80  │ Copyright © 2020


Module 4 | Getting Acquainted with DevOps Culture and Behavior

As a result, the process takes a long time for uncovering problems


Quality at the
and identifying Source
solutions after updating the product or service.

Quality at the Source


DevOps team strives for high quality and performance and works with the service mindset.
DevOps team strives for high quality and performance and works with
the service mindset.
ng a DevOps
Culture
Automated
Version Commit Manual Support and
Elements of a Team Acceptance Release
Control Stage Validation Monitor
Test
vOps Culture

Check-in Trigger
ementation of ► Problems are identified early in the process.
vOps Culture Feedback ► Solving problems is easier and cheaper.
► Customers like a good product and quick
Check-in Trigger solutions.
Feedback

Legend:
Check-in Trigger
Trigger Approval
Code
Feedback

Code Failed
Check-in Trigger
Trigger Approval Approval Happy Code Passed
Feedback
Customers

The service mindset of DevOps teams focuses on the ultimate goal of Copyright © 2019 | 33

offering excellent products or services to the customers. They focus on


maintaining quality at the source (“first time right”) and detecting problems
early in the process using automated IT processes and exhibiting the
required behaviors. As a result, they can prevent introducing errors in
the production environment.
The DevOps way of working enables people to:
— Understand the need and benefits of working under architecture
— Ensure accurate versioning of the product (or software)
— Develop a more secure code due to the early detection of
problems or errors

courage and experimentation


DevOps teams dare to experiment, with the potential of failure. They
know how to fail fast, take the next step, or go back a couple of steps
under time pressure to ensure there is quality at the source.

Core Elements

│  81
Courage Experimentation Experimentation
Copyright © 2020
Meetups
Course Book | DASA DevOps Fundamentals

courage to Act: A Key Behavior of a devops team


To ensure that experimentation is embedded in the culture and the
way of working, a DevOps team needs to take some steps, as shown
in the following figure.

1 Ensure customer
STEP buy-in

Define and deliver a Minimum 2


Viable Product (MVP) STEP

3 Focus on the goal, “delivering


STEP customer value first time right
with the desired flow.”

Take small steps and do not 4


carry out large experiments STEP

courage requires Safety


Businesses need innovation, but people cannot innovate in an unsafe
environment due to apathy, fear, and complacency, as shown in the
following figure.
Provide Safety

Through: Innovation
Complacency
► Communication
DevOps teams
► Mission need to be here
► Support
► Tools
► …
Apathy Fear

Urge Courageous Behavior

A safe environment is an environment where everybody is free to


speak out their thoughts/ideas, critique, and others without the fear
of being fired. For a team to exhibit courageous behavior, such as

82  │ Copyright © 2020


Module 4 | Getting Acquainted with DevOps Culture and Behavior

experimenting, failing fast, and taking many small steps quickly, there
needs to be a safe environment where people can talk and act without
fear of reprisals. Therefore, the primary role of the organization’s
leadership is to develop a safe environment, within teams, between
teams, and across the hierarchy. A safe environment can be provided
through communication, mission, support, and tools.

experimentation

“Culture has always been a key part of the DevOps, Agile, and
Lean movements.”
— State of DevOps 2018

— Culture is the ability to act in the face of uncertainty or danger


while understanding and minimizing the risks. Courage is to
take risks, and the underlying key behavior is experimentation.
— A high-performing DevOps team has a culture of experimentation.
Successful DevOps teams build what-if innovations in their
routines.

experimentation comes with complications


Experimentation is about understanding and analyzing a problem, and
determining which solutions will work the best. To experiment with low
risk, you should have hypotheses that you want to test.

Hypotheses are tested in a Hypotheses are tested in a


running business when: changing IT environment when:
„ Business requirements tend „ Parts of the IT service are
to evolve over time. changed or the service itself
is changed. The baseline
„ Gaining consensus on
changes thereby create new
requirements might be
possibilities or impossibilities.
difficult.
„ New tools and capabilities
of IT make actions that were
difficult previously.

A DevOps team gathers its courage from the fact that experimentation
should occur in a live business environment with varying requirements.
However, these days the IT environment is regularly changing and
making it difficult to run longer-term experiments. Considering the
changing requirements, the aim of a DevOps team should be to take
calculated risks, fail fast in a small way, and learn which solutions will
work the best.

Copyright © 2020 │  83
Course Book | DASA DevOps Fundamentals

Experimentation Meetups: A Key Tool of Courage


experimentation meetups: A Key tool of courage
A key tool to Aencourage
key tool toexperimentation are meetings
encourage experimentation where
are new actions
meetings or initiatives are
where new
tested. Experimentation meetings, such as hackathon, is a great way to simulate
actions or initiatives are tested. Experimentation meetings, such as creative
Embracing a DevOps actions. hackathons, are a great way to stimulate creative actions.
Culture

Core Elements of a
DevOps Culture

Implementation of
a DevOps Culture

Hackathon, Codefest, Hack Day, or Hackfest

Source: http://venturebeat.com/2013/10/23/running-a-hackathon-challengepost-will-
help-you-organize-it-for-free/
Source: http://venturebeat.com/2013/10/23/running-a-hackathon-challengepost-will-help-you-organize-it-for-free/

Copyright © 20
Hackathon is an event on software projects that involves developers
and other people involved in the development and delivery of IT
services.

leadership and Feedback


One of the behaviors to make a DevOps team successful is leadership.
The key tool that leaders should use and stimulate is feedback.

Core Elements

Empowerment Facilitating Leadership Feedback

leadership in a devops environment


Leadership is associated with management. It is about making
decisions, acting following the goals of the team, and being accountable
for the actions taken by the team.

84  │ Copyright © 2020


Module 4 | Getting Acquainted with DevOps Culture and Behavior

A DevOps team must be encouraged to lead. In DevOps, leadership is


to facilitate teams with a focus on the following two aspects:
— Mission command: Ensures the DevOps team knows its mission
and goal, and is free to act to achieve the mission.
— Empowerment: Ensures the DevOps team is capable and
authorized to take the required decisions.

DevOps focuses on leading teams through empowerment. In other


words, DevOps teams should feel empowered to make appropriate
decisions. It requires them to have sufficient knowledge and authority
to act on their decision-making. Therefore, management needs to
act as a facilitator, especially to remove the obstacles impeding the
team’s progress.

leadership: mission command vs. central command


The following figure lists the characteristics of the two ways of leading
a team.

Mission Command Versus Central Command

Today’s world! Probabilistic Deterministic


Assumptions
Unpredictable Predictable

Decentralization Centralization
Spontaneity Coercion
Informality Formality
Loose Rein Tight Rein
Self-discipline Behavioral Imposed Discipline
What we Initiative Trends Obedience
need!
Cooperation Compliance
Faster Acceptable Decisions Optimal Decisions (but later)
Echelons Ability Ability Focused at the Top
Higher Tempo

Implicit Explicit
Communication
Vertical and Horizontal Vertical
Styles
Interactive Linear

Delegating Leadership Directing


Transformational Styles Transactional

Central Command, also known as Detailed Command, is leading


through detailed instructions. It can feel like micro-management.
Mission Command is leading through vision and empowerment. The
idea is to give people the information they need and the authority to
take action. The DevOps culture relates to the Mission Command.
The DevOps teams exist in a world that is unpredictable and requires
them to accept uncertainty.

Copyright © 2020 │  85
Course Book | DASA DevOps Fundamentals

leadership: Five Barriers of effective collaboration


A DevOps team needs to ensure the team functions and collaborates
correctly, removing away the barriers to effective collaboration. Patrick
Lencioni (2002) identified the following five dysfunctions of a team or
barriers to effective collaboration.

Inattention to Results
Inattention to results means the team is lacking focus on the
5 goals of the team.
n

Lack of Commitment
io
rat

Lack of commitment means the team members do not


4
bo

support each other in committing decisions.


lla
Co

Avoidance of Accountability
ive

3 Avoidance of accountability means that the teams do


ect

not take accountability for each other’s work.


Effo
rs t

Fear of Conflict
rie

Fear of conflict means the team is afraid of


Bar

2 discussing the differences of opinion.

Lack of Trust
Lack of trust between the team members is
1 like a team of individuals working together.

leadership: Style
Go, See, Ask, Why, Show, and Respect represents how Lean
leadership contributes to the development of a DevOps culture.

“Senior management
must spend time on “Use the “Why?”
the plant floor.” Go Ask technique daily.”

See Why
Show
Respect

“Respect your
people.”

Chairman Fujio Cho, Toyota Corporation

86  │ Copyright © 2020


Module 4 | Getting Acquainted with DevOps Culture and Behavior

In a DevOps environment, the management and other leaders must


ensure that they support teams in developing effective behavior
and habits. The Lean style of Leadership encourages to see what
is happening on the work floor, challenge the way work is done by
investigating why activities are carried out the way they are, and
always deal with people in a respectful way.
An example of Go See, Ask Why, and Show Respect is “management
by walking around.” It means being present on the work floor, asking
open questions, and listening carefully while following a respectful
approach.

Feedback: A Key leadership tool


Feedback is an essential tool for every team member. Therefore, they
need to learn and practice giving and receiving feedback respectfully.
The following figure lists some of the points that they should consider
while sharing feedback.

While receiving feedback While giving feedback

1 Be an active listener. 1 Be specific by describing


concrete observations.
2 Show appreciation by avoiding
the discussion or excuses. 2 Wait and listen to clarify
questions/reasons
3 Clarify doubts by asking questions.
3 Provide appropriate suggestions.
4 Analyze and then decide what
to do with the feedback. 4 Make it one-on-one.

5 End it on a positive note.

Effective feedback helps develop a culture of experimentation,


teambuilding, and improvement.

Activity: Group Discussion: Leadership and Management

Activity Time: 10 Minutes


What kind of leadership and management do you recognize in your organization? What are the
recognizable elements of both in your organization?

topic Summary
In this topic, you learned that:
— Behavior is the observable and measurable attributes of people
of an organization.
— Some of the primary behaviors expected from DevOps
professionals include Multidisciplinary, Transparency,
Ownership, Prioritization, Improve Continually, Fail-Safe,
Knowledge Sharing, and Empathy. Copyright © 2020 │  87
Course Book | DASA DevOps Fundamentals

— The core beliefs necessary to achieve a collaborative DevOps


culture are:
{ Teambuilding and Collaboration: Teamwork, Visual
Management, and Collaboration
{ Continuous Improvement and problem-Solving:
Continuous Improvement, Structured Problem solving/
Kaizen Mindset, and Quality at the Source.
{ Courage and experimentation: Courage to Act,
Experimentation, and Experimentation Meetups
{ Leadership and Feedback: Empowerment, (Facilitating)
Leadership, and Feedback

Knowledge check
q1. which step of the DMAIC model defines potential solutions
to the problem?
a) Define

b) Measure

c) Analyze

d) Improve

ImplementAtIon oF A devopS culture

Building a devops culture


There is no specific order or set of rules that you can follow to build a
DevOps culture.
Creating a DevOps culture is a step-by-step improvement of the
following four elements:

Courage

Teambuilding

Leadership
Continuous
improvement

88  │ Copyright © 2020


Module 4 | Getting Acquainted with DevOps Culture and Behavior

The primary success factor behind the DevOps culture is a shared


responsibility. It is not the job of only one team or team member.
It is everyone’s job that requires a shift toward transparency,
communication, and collaboration across development, IT/Ops, and
the business.

changing the culture: A collective movement


Changing the culture is a collective movement that requires adjusting
people’s behavior, attitude, and mindset through feedback. Feedback
enables individuals and the team to move from the current status to
the desired situation, as shown in the following table.

From (current culture) to (devops culture)


„ Group „ Team
„ Separate technical departments „ Integrated multidisciplinary teams
„ Turf conflicts regarding responsibility „ Integral responsibility for a service
„ Large distance from the customer „ Close to the customer
Feedback
„ Specialist roles „ Generalist roles with a specialism(s)
„ Individual thinking „ Creative Action
„ Problem avoidance „ Fail fast
„ … „ …

The cultural development of a team (or organization) starts with the


end in mind. A DevOps team needs to describe the To situation, which
is the DevOps culture. In the preceding table, the To column lists the
characteristics of a DevOps team, and the From column describes
the current situation. It is an opportunity for the team to work on giving
feedback and understanding and solving the fundamental problems.

topic Summary
In this topic, you learned that:
— Creating a DevOps culture is a step-by-step improvement of the
four elements:
{ Teambuilding
{ Courage
{ Continuous improvement
{ Leadership
— The cultural development of a team (or organization) starts with
the end in mind.

Copyright © 2020 │  89
Course Book | DASA DevOps Fundamentals

Knowledge check
q1. which cultural element helps Devops teams to overcome
the barriers of communication?
a) Teambuilding and Collaboration

b) Continuous Improvement

c) Leadership and Feedback

d) Courage and Experimentation

module SummArY

In this module, I have learned:

Make a list of key points that you have learned in this module.

cASe StudY: eASY JourneY AIrwAYS –


ASSIgnment 3

Activity: Assignment 3: Developing the DMAIC Model

Activity Time: 15 Minutes


Discuss the following questions:
1. What would EJ Airways need to do to change their culture towards DevOps?
2. What would you advise them to start with considering the growth areas?
3. What would you suggest to facilitate the growth areas?
4. What will most likely be the hardest hurdle to overcome?

Develop a DMAIC model with required descriptions for one of the preceding questions.

Note
The five steps of the DMAIC model will most likely lead to additional items in the two lists created in Module-End Exercise of
Module 2.

90  │ Copyright © 2020


5
underStAndIng the vAlue
oF devopS For teAmS And
orgAnIzAtIonS
DevOps Journey at the Fundamental Level – Where
are you?
DevOps - The DevOps for DevOps for Teams
DevOps Practices The Next Steps
Context Individuals and Organizations

► Introducing ► Knowing DevOps ► Getting ► Getting Familiar ► Measuring the


DASA DevOps for Individuals Acquainted with with DevOps Performance -
Fundamentals DevOps Culture Management The Next Steps
and Behavior Practices
► Building the
DevOps Context ► Understanding ► Getting Familiar
the Value of with DevOps
DevOps for Technical
Teams and Practices
Organizations ► Enabling DevOps
Teams Perfor-
mance Through
Continuous
Delivery and
Automation

This module helps you complete the third step of your DevOps
journey - Devops for Teams and organizations.

Copyright © 2020 │  91
Course Book | DASA DevOps Fundamentals

Module Objectives
At the end of this module, you will be able to:
 Describe “How are DevOps organizations structured across
Business System teams and Platform teams?”
 Explain the need for DevOps organizations to be product-centric.
 Discuss the need for autonomous teams.
 Explain the need for scaling and its mitigation.

Module Topics
 Organizational Models
 Team Autonomy
 DevOps at Scale

orgAnIzAtIonAl modelS
— Describes how the business or organization is structured in
departments, units, and teams.
— Provides an outline of how the various activities are directed to
achieve a specific goal.
— Determines how information flows between the different levels 
within a company.

CEO

President

Director

Development Head Operations Head IT Head HR Head Marketing Head Sales Head

… … … … … … … … … … … …

92  │ Copyright © 2020


Module 5 | Understanding the Value of DevOps for Teams and Organizations

devops Impact on the organizational model

traditional environment devops environment (Achieving high-


performance It through effective
collaboration)
People work in technically-oriented silos or teams. DevOps focuses on one team doing the
For example, there is often one department for work, hence, reducing communication and
running the applications (Operations) and one coordination issues.
department for developing the applications
(Development).
The multiple teams share different priorities, goals, The team shares the same goal of providing a
time frames, and cultures, making successful valuable customer experience.
communication and cooperation difficult.
Many traditional organizations are not aligned DevOps focuses on an operational model that
with the way the IT services are structured and facilitates collaboration within and between
organized, with multiple or distributed teams the teams to provide a valuable customer
working on producing and delivering the same IT experience.
service.

organizational model and conway’s law


Any piece of software reflects the organizational structure.

Organizations which design systems are constrained to produce


designs which are copies of the communication structures of
these organizations.
Conway, Melvin E. (April 1968)

Complexity of
High Organizational Use the force, Conway’s
Structure law cannot be broken.

Complexity of
Technical
Low Solution

Low High

Melvin Conway described the relation between the organizational


structure and software and designs that organizations produce
through Conway’s law. The law states that:
— Any  piece  of  software  reflects  the  organizational  structure. 
Organizations that design systems are constrained to produce
designs, which are copies of the communication structures of
these organizations. Copyright © 2020 │  93
Course Book | DASA DevOps Fundamentals

It is somewhat similar to what Abraham Maslow stated, “If the only tool
you have is a hammer, it’s tempting to treat everything as if it were a nail.”
Conway’s law, in other words, means that complex organizations
end up with complicated and convoluted systems. The complicated
organizational structure and the design do not allow teams to perform
the following tasks:
— Experiments, especially with larger services
— Fast and reliable changes, resulting in less happy customers

The law is difficult to break, meaning, complex organizations are


bound to create complex architectures. If an organization wants a
simple architecture, it first needs to organize itself simply. This is the
reason many organizations, such as Netflix and Amazon, organize
themselves around multiple small teams responsible for (part of a)
services. These teams are autonomous, independent, and end-to-end
responsible for the entire lifecycle of the services they create.
The DevOps Approach to Organizational Model
the devops Approach to organizational model
Organizations usually end up creating Business Systems teams to
Organizations usually end up create
creating Business Systems
independent teams toteams
and autonomous create independent
keeping and
the platform
autonomous teams keeping the platform structure intact. These teams has all the required
structure intact. These teams have all the required knowledge and
knowledge and skills and might help
skills andin might
creating
helpainbetter setup.
creating However,
a better the reusability
setup. However, is
reusability
zero. is zero.

Business System Teams

Product Owner,
Storage Developers, Product Owner,
Testers, Database Administrators, Storage Developers,
System Administrators, Testers, Database Administrators,
Product Owner, System Administrators,
Network Specialist Storage Developers, Network Specialist
Testers, Database Administrators,
System Administrators,
Network Specialist

Copyright © 2019 | 8

Such a setup requires many dependencies due to which various


Business System teams cannot operate completely independent from
each other. They need centralized capabilities that lead to waste.
Therefore, taking DevOps literally is no solution.
Let us explain this using a scenario of a traditional organization
where people are distributed among different departments based on
their specialty. In such a setup, each department works for specific
functionality and has a strong dependency on other departments. In
94  │ Copyright © 2020
Module 5 | Understanding the Value of DevOps for Teams and Organizations

such a dependency, if there is a new requirement or a change in the


existing feature of an application, what will happen?
You have to connect with each department to discuss the requirements
and raise the required request. Moreover, you have to wait when
the request moves from one department to another for processing.
Sometimes, such a wait can lead to even more than 90% of the entire 
turnaround time.
In a DevOps environment, Business Systems teams are structured
around a self-service platform, as shown in the following figure.

Business System Teams Platform Team

PaaS: Monitoring, Deployment, Logging, Control,


Service Discovery, Auto Handling

IaaS: Security, Backup and Recovery, Auto Update


Team 1 Team 2 …..
Application Programming Interfaces (APIs)

Self Service

Self Service

Self Service

The self-service platform is a product in itself and is maintained


by the Platform team. This platform (or the Platform team) offers
a comprehensive set of standardized self-service capabilities to
Business System teams, such as monitoring and security. Such a
setup enables Business System teams to operate autonomously by
placing their application and infrastructure code on the self-service
platform and completely managing their products. On the other hand,
the Platform team manages and monitors the system qualities of its
products independently from the associated application products.
Such an organizational model enables teams to take end-to-end
responsibility for their products or services. Therefore, both the teams,
Business System teams and Platform teams, are responsible for the
qualities of their products, such as availability and performance.
As the Business System teams use the platform products/services
and are the customers of the Platform team, it is essential for both
the teams to interact with each other. This is where APIs help them
to interact with each other. It is a piece of software that allows two
applications to talk with each other. Such an infrastructure setup in a
DevOps organization results in various reusability benefits, such as
Microsoft Azure, Amazon Web services, and Google Cloud.

Copyright © 2020 │  95
Course Book | DASA DevOps Fundamentals

Business System teams and platform teams

Business System teams platform teams


Manage end users, services, Manage platform products used
and products. by Business System teams.
Take end-to-end responsibility Support Business System
for the products/services with teams to work more effectively
the required support from the by providing platform (or
Platform teams. Infrastructure) services through
self-service and automation.

Business System teams and Platform teams need to work closely


to ensure the correctness of the services. It requires separation of
roles and responsibilities between the teams to prevent unauthorized
transactions that can be performed through the platform.

product-Focused Approach - the Benefits


By introducing Business Systems teams, organizations move away
from the siloed activity focused approach and move towards a product
focused approach.

Activity Focused (Silo Approach) Product Focused (Team Approach)

Embrace Specialism Embrace Multiple Skills

Organized Functionally Organized in Teams

Focus on Projects Focus on Products

Optimize for Resource Optimize for Speed


Utilization
Limited Responsibility End-to-End Responsibility

Let us discuss the differences between the two approaches to


understand the benefits of the product-focused approach.
Activity Focused (Silo Approach):
— embrace Specialism:  Each  individual  performs  a  specific 
activity or task at a time, such as creating the user interface.
— organized Functionally: People are added to specific resource 
pools basis their specializations, such as a pool of programmers.

96  │ Copyright © 2020


Module 5 | Understanding the Value of DevOps for Teams and Organizations

— Focus on projects: The team is created for a specific project. 
Once the project completes, individuals are assigned different
projects. They can also be assigned multiple projects at a time.
— optimize for resource utilization: The activity-focused
organizations are optimized for resource utilization.
— Limited responsibility: The team is responsible and
accountable for the working product throughout the project
lifecycle.

product Focused (Team Approach):


— embrace Multiple Skills: People are oriented on delivering
work requiring multiple skills, such as, a programmer who writes
the code also knows how to automate a delivery process.
— organized in Teams: People are organized in teams and are
end-to-end responsible for a product that it delivers and/or
maintains.
— Focus on products: The team works for delivering or
maintaining the products or services with the customer-centric
approach.
— optimize for Speed: The product-focused organizations are
optimized for lowering the cycle time for a product.
— end-to-end responsibility: The team is solely responsible
and accountable for the overall quality of the working product
throughout its entire lifecycle, including the production
environment.

Activity: Exercise: Organizing Service Teams

Activity Time: 10 Minutes


Considering your current organization, how would you organize the
service teams? Create at least two variants and list their pros and cons.

Aspect pros cons


Communication
Responsibility
Autonomy
Initiative

topic Summary
In this topic, you learned that:
— The organizational model describes how the business or
organization is structured in departments, units, and teams.
DevOps focuses on one team doing the work, hence, reducing
communication and coordination issues.
Copyright © 2020 │  97
Course Book | DASA DevOps Fundamentals

— Organizations which design systems are constrained to produce


designs which are copies of the communication structures of
these organizations. (Conway’s Law)
— In a DevOps environment, Business Systems teams are
structured around a self-service platform. By introducing
Business Systems teams, organizations move away from the
siloed, activity-focused approach and move towards a product-
focused approach.
— Business System teams and Platform teams need to work
closely to ensure the correctness of services.

Knowledge check
q1. what is the possible way of organizing people of Devops
organizations?
a) Activity-based teams

b) Technically-oriented teams

c) Business System teams and Platform teams

d) Platform teams through a self-service API

teAm AutonomY

Autonomy - the meaning

Autonomy is the independence that results in self-directed


actions.

Autonomy is the ability that enables people to make decisions


independently about what to do without being influenced by
someone else.

Autonomy is the freedom from external control that allows people


to govern themselves and organize their activities.

Autonomy for devops teams – the need


Autonomy is essential for DevOps Teams as it strongly supports the
three DASA DevOps principles: End-to-End Responsibility, Customer-
Centric Action, and Cross-Functional Autonomous Teams.

98  │ Copyright © 2020


Module 5 | Understanding the Value of DevOps for Teams and Organizations

End-to-End Responsibility
The power and freedom bring with it more
responsibility. Being self-directed means more
accountability and responsibility for the products
or services.

Customer-Centric Action
Autonomy Autonomy allows you to consider the
for DevOps customer’s needs and deliver the maximum
Teams value.

Cross-Functional Autonomous Teams


These teams are problem solvers, and they
cannot work without having the required freedom.

Achieving Autonomy through devops


In a DevOps environment, autonomy is primarily achieved by
structuring the teams around distinct services and products and
making them independent.

Team Structure Independent Teams

Business System Teams uous Deli


ntin ve
Co ry

Self
Service Enables Autonomy

Platform Team
Makes Teams Truly Independent

how does team structure enable autonomy?


In a DevOps environment, the Business System teams are structured
around automated self-services, which are maintained by the Platform
team. These services enable Business System teams to manage
their products or services almost autonomously. In the same way, the
Platform teams monitor and manage their products independently

Copyright © 2020 │  99
Course Book | DASA DevOps Fundamentals

from the availability of the application products, which use the platform
products. Both, the Platform teams and the Business System teams
are responsible for the qualities of their own products.
how do independent teams help achieve autonomy?
The focus on Continuous Delivery helps independent teams to become
autonomous. With this ultimate aim, they work almost independently
from other teams to deliver continuous value to the customers. It is
possible only when they have are free to make their own decisions
and can solve the problems. Being independent, these teams are end-
to-end responsible for the quality of the product or service throughout
the entire product lifecycle, thus removing the need for any methodical
handover.

determining the Autonomy of teams


The three-step design criteria help organizations to determine the
autonomy of teams.

CUSTOMER TECHNOLOGY STACK KNOWLEDGE

► Uses the product/service. ► Defines the team’s area of ► Ensures the team’s has the
► Is responsible for the existence responsibility. required knowledge and skills.
of the business process. ► Determines the technology ► Identifies the team’s strength
required to deliver the to deliver value.
Aspects to Consider: product/service.
► Who is your customer? Aspects to Consider:
► What are their requirements? Aspects to Consider: ► What skills do the team require
► What services are they looking ► What type of application does to deliver the product/service?
for? the team need to build? ► What are the units-of-work, the
► What is the development cost team will be processing?
and time to market? ► What is the Definition of Done
► Is the application secure and (DoD) for the units-of-work?
scalable?

Let us discuss the three steps in detail.


1. Customer: Customers use the products/services, therefore, it is
essential to know your customer, understand their requirements,
and determine the type of services they are looking for. Such an
analysis of your customer makes it easy to determine customer
value.

100  │ Copyright © 2020


Module 5 | Understanding the Value of DevOps for Teams and Organizations

2. Technology Stack: Considering the customer’s requirements


and the types of services, the technology stack is created for
the team. The team is, therefore, majorly dependent on the
technology for the successful delivery of the customer value. It
means deeper the technology stack, more knowledge and skills
the team requires. Cloud technology helps minimize the team’s
dependency on the underlying technology.
3. Knowledge: Considering the customer and the technology
stack,  the  required  skills  and  knowledge  are  identified  for  the 
team. This step ensures whether the team has the identified skills 
and knowledge required to deliver the value to the customer. It
also determines the number of people required within the team
by estimating units-of-work, such as service requests, customer
demand, incidents, changes, and problems.

Intrinsically motivated teams


DevOps teams are intrinsically motivated and care about what they do.
According to Daniel Pink, three primary aspects of intrinsic motivation
are Autonomy, Mastery, and Purpose.

Autonomy Mastery

Being Self-Directed Enhancing Skills

Purpose

Having Clear Knowing Your


Meaning Contribution

Aspects of Intrinsic Motivation

Let’s discuss the three aspects in detail.


— Autonomy means being self-directed. People should be able to
direct or control their life and work. Self-direction keeps people
fully motivated by enabling them to control what they do, when
they do it, who they do it with, and how they do it. Such a control
motivates them to think creatively and build trust. Organizations
that focus on autonomy free their people from the additional
pressure of following the traditional workplace rules, such as
regular office hours, dress codes, and numerical targets. 

Copyright © 2020 │  101


Course Book | DASA DevOps Fundamentals

INFO — Mastery is  people’s  desire  to  improve  their  skills  in  specific 
areas. It requires dedication, hard work, and space to learn and
Motivation 3.0 practice. The desire or mindset to become masters enables
Daniel Pink sets out a new vision for people to see their potential as being unlimited. People want to
workplace motivation (“Motivation attain mastery for their benefits, and organizations utilize those 
3.0”) in his book Drive. He explains master skills for business benefits.
that it is an upgraded version of
primitive survival (“Motivation — purpose enables people to understand the bigger picture and
1.0”) and the culture of reward and the  reason  (often  an  altruistic  (selflessness)  reason)  behind 
punishment (“Motivation 2.0”). any work they are doing. The absence of a purpose leads to
disengaged and demotivated people at the workplace, as they
EXAMPLE do not know where they are investing in the bigger organizational
goals. People who know they are working toward something
Autonomy
larger and more important than themselves are often the most
Most of the software organizations hardworking, productive, and engaged.
practice motivating their people
through autonomy. They allow Daniel Pink’s model of motivation throws away the idea of motivating
their engineers to work on their people through reward and punishment. It aims at making people care
development projects by providing about what they do. He called this way of motivating people at the
sufficient time. An organization workplace as Motivation 3.0 in his book, Drive.
does this to enable its engineers to Let’s discuss the three aspects in the context of DevOps.
try out and test new ideas that can
deliver organizational benefits, such — Autonomy: DevOps teams are made independent to the
as improved processes or innovative maximum extent by setting these up organizationally and
solutions. technologically.  Independence  helps  teams  obtain  significant 
autonomy to act on behalf of their customers.
EXAMPLE — purpose: DevOps teams work closely with their customers. As
Purpose a result, their sense of purpose triggers on a day-to-day basis.
Organizations should look for — Mastery: The independent nature of a DevOps team encourages
ways to encourage their workforce its members to practice mastery to act more timely and
by supporting them in finding effectively. Engineers usually get several opportunities in this
their work purposes, such as by direction to develop the required skills. However, they need to
connecting their personal goals work equally on their generalized skills (or broader knowledge)
to organizational targets. The way to be an efficient DevOps team member. That is why the need 
helps organizations to win their for engineers for a DevOps team is in demand these days.
people’s minds and hearts.
Importance of a decoupling point within the technology Stack
EXAMPLE
Mastery A decoupling point is essential to establish autonomy for the various
Business System teams of a DevOps organization.
A developer who is an expert in core
Java programming motivated by
mastery might want to become an where does one start and the other end?
expert in Java mobile applications.
Any appreciation, reward, or medals
are less important for mastery The decoupling point defines the point within the technology stack
motivated people than continuous where the responsibility is transferred between the Business System
improvement. team and the Platform team.

102  │ Copyright © 2020


Module 5 | Understanding the Value of DevOps for Teams and Organizations

In a DevOps organization, the Platform team provides a platform in the


form of a self-service product that requires maintenance, innovation,
and ownership. Such a model offers the following benefits to the
Business Systems teams:
— Infrastructure reuse: Business System teams can reuse the
infrastructure without impeding their speed and autonomy.
— end-to-end responsibility: Business System teams take full
responsibility for their service during its complete lifecycle.

Spotify: An example for Autonomous teams


A good example of an organization that is using autonomous teams
is Spotify. Let us view a video to understand how Spotify uses
autonomous teams and achieves collaboration between these teams
and ensure sharing and reuse of skills and knowledge.

https://player.vimeo.com/video/212699581

With the establishment of autonomous teams focused on specific (set


of) services, Spotify is able to embrace DevOps principles to become
truly customer-centric, end-to-end responsible, and experimenting and
innovative in nature. As a result, a proper feedback loop is established,
enabling these teams to learn faster and better.
Spotify has organized its employees in teams called Squads. These
teams are small, multidisciplinary, and autonomous. Each Squad is
similar to the Business System team and focus on specific services.
They incorporate every component necessary to support a service
through its entire lifecycle, from idea to production. Squads decide
their own way of collaborating and are stimulated to apply Lean
Startup principles, such as Minimal Viable Product and Validated
Learning.
Squads that work in related areas or use similar skills and knowledge
are organized as Tribes. The Tribes function as a sort of a startup
company and have a fair degree of freedom and autonomy. A Tribe
Lead heads a Tribe who is responsible for providing the best possible
habitat for the Squads within that Tribe. The Squads in a Tribe are
all physically present in the same office, normally right next to each
other, and the lounge areas nearby to promote collaboration between
the Squads. Tribes hold gatherings regularly. Such a get together
includes live demos of working software, new tools and techniques,
and others.
You have identified the benefits of autonomous Squads and Tribes, but
full autonomy has its downside too. A potential downside to autonomy
is the lack of communication and sharing of knowledge among people
with similar skills. That’s why Spotify includes Chapters and Guilds.

Copyright © 2020 │  103


Course Book | DASA DevOps Fundamentals

A Chapter is a small family of people having similar skills who work


within the same general competency area and the same Tribe.
These people come together to ensure their way of working can be
discussed and improved, or at least standardized, with colleagues
learning best practices from one another. The Chapter is all about
maintaining, developing, and improving standards in a particular area
of expertise.
Guilds act as a community of people who share knowledge, tools,
code, and practices. Unlike Chapters that are always located in the
same Tribe, Guilds spread across the entire organization. Some of
the examples of Guilds are Developer Guild, Tester Guild, and Agile
Coach Guild.
With many teams, it becomes really challenging for Spotify to enhance
the skills and performance on a continuous basis. To aid in this, there
are quarterly surveys for all the Squads. The given figure shows the
result of one such survey for five Squads grouped together within a
Tribe.

Activity: Group Discussion: Autonomy and Decoupling Points

What is the level of autonomy and decoupling points in your organization?


„ Are the responsibilities clear?
„ Are the boundaries clear?
„ What kind of overlap exists in responsibilities?
„ What are the various gaps in responsibilities?

topic Summary
In this topic, you learned that:
— Autonomy is essential for DevOps teams as it supports three
DASA DevOps principles: End-to-End Responsibility, Customer-
Centric Action, and Cross-Functional Autonomous Teams.
— In a DevOps environment, autonomy is primarily achieved by
structuring the teams around distinct services and products and
making them independent.
— Organizations can determine the autonomy of teams using the
three-step design criteria: Customer, Technology Stack, and
Knowledge.
— The three primary aspects of intrinsic motivation are Autonomy,
Mastery, and Purpose.
— A decoupling point defines the point within the technology stack 
where the responsibility is transferred between the Business
System team and the Platform team.

104  │ Copyright © 2020


Module 5 | Understanding the Value of DevOps for Teams and Organizations

Knowledge check
q1. which DASA Devops principle does autonomy support the best?
a) Automate Everything You Can
b) Continuous Improvement
c) Create with the End in Mind
d) Customer-Centric Action

devopS At ScAle

the First rule of Scaling


The first rule of scaling is “Don’t Scale.”

why?
A larger team (or organization) takes a long time for its work
to flow through the system. In other words, the work takes
a long time to produce the desired value for the customer.

Avoid scaling to the maximum extent as the ultimate aim behind the
DevOps way of working is to increase the flow of work. Lean and Agile,
the practices that DevOps support, also aim at improving workflow by
reducing batch size, avoiding huge amounts of work, and employing
small teams with small work items. However, under certain conditions,
scaling becomes necessary for the business.

why is scaling inevitable?


Scaling becomes inevitable or unavoidable for organizations as they
need to often deal with complex dynamics.

Examples of Complex Dynamics

Turbulent Complex Formal and


markets and products and informal social
changing dependencies structures and
customer between prod- communication
demands ucts, systems, lines
and teams

Multi-vendor Different Compliance and


or cloud combinations regulatory
landscapes of skills, influences
attitudes, and
behaviors

Copyright © 2020 │  105


Course Book | DASA DevOps Fundamentals

An organization cannot go away with complexity. Therefore, its people


need to learn the art of dealing with it. Some of the most popular ways
or strategies that they can use to deal with complexity include:
— Experimentation
Cynefin — Constraints enablement
A Cynefin framework is a — Continuous adoption of emergent practices
problem-solving tool to analyze
situations more accurately and To increase the effectiveness of the DevOps transformation,
respond appropriately based organizations are also practicing the following ways:
on five “domains” defined by — Look for guidance, connect to learn from each other, and seek
cause-and-effect relationships. industry learning.
These domains are Complex,
— Apply principles and practices from several scaling frameworks.
Complicated, Disorder, Chaotic,
The best approach to deal with scaling issues is to utilize the
and Obvious.
Cynefin framework (complex domain).

Scaling Models/Frameworks
Scaling models/Frameworks

Framework

Source: https://www.scrum.org/resources/nexus-framework-poster Source: https://less.works/

SAFe Framework
Framework

Source: https://thinkacloud.wordpress.com/2015/10/05/will-enterprises- Source: https://www.scaledagileframework.com/what-is-safe/


reorganize-into-agile-squads-as-they-embrace-cloud/
Copyright © 2019 | 29

INFO Several frameworks or models are available that an organization can


use to deal with complexity associated with DevOps transformation.
mitigating scaling The preceding figure lists some of the most popular scaling
You will learn about the principles of frameworks. These frameworks, more or less, follow the same
mitigating scale in the next subtopic. principles of mitigating scaling. They differ in their approach, scope,
and depth of guidance. All of the frameworks have not incorporated

106  │ Copyright © 2020


Module 5 | Understanding the Value of DevOps for Teams and Organizations

DevOps principles and practices explicitly. However, these do not


exclude DevOps as well.

principles of mitigating Scaling


You can mitigate scaling utilizing any of the several scaling frameworks,
models, or practices. These frameworks share some common
characteristics or principles.

Principles of Mitigating Scaling

Ensure alignment Create common Organize for Maximize Facilitate


between teams goals and optimal value transparency leadership
(joint events like practices (share delivery (value (visual (be a servant
planning or review, practices and streams, value management). leader).
cadence, direct tools where measurement).
communication). desired).

Organizations should also consider the following aspects when dealing


with scaling (Agility at scale):
— Create only one Product Backlog for one product regardless of
the number of teams working on it.
— Segregate work between multiple self-directed, cross-functional
teams
— Ensure to keep the user stories independent in the Product
Backlog to the maximum extent.
— Do not force different teams working on different products to
have a global Definition of Done (DoD).
— Ensure compatibility between the various DoDs so that on
combining their outputs, a potentially releasable increment will
be produced.

topic Summary
In this topic, you learned that:
— The first rule of scaling is “Don’t Scale.“
— Scaling becomes inevitable or unavoidable for organizations as
they need to often deal with complex dynamics.
— Several frameworks or models are available that an organization
can use to deal with complexity associated with DevOps
transformation.
Copyright © 2020 │  107
Course Book | DASA DevOps Fundamentals

— Some of the standard characteristics or principles of mitigating


scaling are:
{ Ensure alignment between teams
{ Create common goals and practices
{ Organize for optimal value delivery
{ Maximize transparency
{ Facilitate leadership

Knowledge check
q1. which is a characteristic of mitigating scaling?
a) Develop a single Definition of Done

b) Ensure to have team-specific Product Backlogs of a product

c) Keep the user stories dependent to the maximum extent

d) Organize for optimal value delivery

module SummArY

In this module, I have learned:

Make a list of key points that you have learned in this module.

108  │ Copyright © 2020


Module 5 | Understanding the Value of DevOps for Teams and Organizations

cASe StudY: eASY JourneY AIrwAYS –


ASSIgnment 4

Activity: Assignment 4: Adopting the Product-focused Approach

Activity Time: 15 Minutes


EJ Airways’ internal IT department started to work the Agile way a few years ago. Currently, they
are facing several issues, such as:
„ Huge backlog
„ Low velocity
„ Many daily and weekly meetings between the teams
„ Low level of employee satisfaction

Management is thinking of switching from an activity-focused approach to a product-focused


approach and is expecting you to perform the following analysis:
„ What activities are required to make this switch?
„ What are the prerequisites?
„ What impediments do you expect?
„ Indicate each point as organizational or technical.

Note
The list of organizational issues will grow during this exercise.

Copyright © 2020 │  109


6
gettIng FAmIlIAr wIth
devopS mAnAgement
prActIceS
DevOps Journey at the Fundamental Level – Where
are you?
DevOps - The DevOps for DevOps for Teams
DevOps Practices The Next Steps
Context Individuals and Organizations

► Introducing ► Knowing DevOps ► Getting ► Getting Familiar ► Measuring the


DASA DevOps for Individuals Acquainted with with DevOps Performance -
Fundamentals DevOps Culture Management The Next Steps
and Behavior Practices
► Building the
DevOps Context ► Understanding ► Getting Familiar
the Value of with DevOps
DevOps for Technical
Teams and Practices
Organizations ► Enabling DevOps
Teams Perfor-
mance Through
Continuous
Delivery and
Automation

This module takes you to the fourth step of your DevOps journey -
Devops practices. It consists of three modules, as listed in the
preceding infographic.

Copyright © 2020 │  111


Course Book | DASA DevOps Fundamentals

Module Objectives
At the end of this module, you will be able to:
 Explain the basic concepts of ITSM and its relation to DevOps.
 Identify the various types of wastes involved in product
development.
 Suggest the Lean ways at a high-level to improve the flow of work.
 Describe the importance of the concept of Lean Startup.
 Differentiate traditional product development from Agile
development.
 Discuss the various values and principles of the Agile Manifesto.
 Explain the Scrum approach to developing products.

Module Topics
 ITSM
 Lean
 Agile

ItSm
Introduction
Introduction
ITIL 4 provides organizations with a comprehensive framework for IT
ITIL 4 provides organizations with a comprehensive framework for IT Service Management
Service Management (ITSM) that supports the DevOps way of working.
(ITSM) that supports the DevOps way of working. It is designed to ensure that an effective,
ITSM
It is designed
efficient, to ensure that
flexible, coordinated, an effective,
and integrated systemefficient, flexible,
for governance and coordinated,
management of IT
services is established
and integrated and continually
system improving and
for governance in themanagement
organization. of IT services
Lean is established and continually improving in the organization.

Agile

INFO Based on AXELOS ITIL® Foundation (ITIL® 4 edition), 2019 material. Reproduced
ITIL 4 under licence from AXELOS Limited. All rights reserved.

ITIL 4 is the latest version of the The purpose of ITIL 4 is to provide organizations with comprehensive
service management framework guidance for the management of IT-enabled service in the digital
Based on AXELOS ITIL® Foundation (ITIL® 4 edition), 2019 material. Reproduced under licence from AXELOS Limited. All rights reserved.
that focuses on principles, practices economy. ITIL 4 also provides a holistic end-to-end approach that Copyright © 2020 | 5

(than processes), and service integrates frameworks such as Lean, Agile, and DevOps. ITSM talks
delivery through continuously about services. Understanding how a product is different from a service
optimizing value streams. is, therefore, essential before moving on to the ITSM concepts.

products vs Services

product, according to ITIL® 4, is a configuration of resources,


created by the organization that will be potentially valuable for
their customers. In simple words, it is an offering that organizations
sell to their customers.
112  │ Copyright © 2020
Module 6 | Getting Familiar with DevOps Management Practices

Service, according to ITIL® 4, is a means of enabling value co-


creation by facilitating outcomes that customers want to achieve
without the customer having to manage specific costs and risks.
It is an offering that includes intangible elements.

Key Differentiators (or Characteristics) of Services

Co-creation of value No transfer of Perishable, intangible,


ownership and and interaction-related
management of costs nature (at least partly)
and risks to customers

A product is tangible. You can pick it up, put it in a cabinet, and feel it.
A service is often a combination of one or more tangible products and
intangible elements. For example, if you are hungry, you can go to the
supermarket to buy some foodstuff, such as a pizza (product). You can
also decide to go to a restaurant and order a pizza. The price of the
restaurant is higher. It involves indirect costs of services (or intangible
elements), such as the salary of the cook and the waiter, background
music, and rent of the building. In the case of the restaurant, its owner
bears the risks if anything goes wrong, for example, serving a burnt
pizza. The owner might need to give the pizza free of cost to the
customer or provide him/her with another one. On the other hand,
when you burn the pizza bought from the supermarket, you need to
pay again to get another pizza and might put in an effort to go to the
supermarket again. Hence, the costs and the risks associated with a
service (often) lie at the provider’s side.
ITIL 4
ItIl 4

ITIL44guides
ITIL guides modern
modern organizations,
organizations, planning
planning totoadopt
adoptthe
thelatest technologies, operational
latest
processes, and concepts, in a service context using the key elements, as listed in the
technologies, operational processes, and concepts, in a service
ITSM
following
context figure.
using the key elements, as listed in the following figure.
Key Elements of ITIL 4
Lean
Service Value System (SVS) Four Dimensions

Agile

Based
Based onon AXELOS
AXELOS ITIL®(ITIL
ITIL® Foundation Foundation (ITIL® 4Reproduced
® 4 edition), 2019 material.
edition), 2019
under licence material. Reproduced
from AXELOS Limited. All rights reserved.

under licence from AXELOS Limited. All rights reserved. 2020 ©│ 
Copyright ©Copyright 113
2020 | 7
Course Book | DASA DevOps Fundamentals

The two key elements are:


— Service value System (SvS): The central element of the SVS
is the service value chain, an operating model that outlines the
key activities required to respond to demand and facilitate value
creation through the creation and management of products and
services.
— Four Dimensions: The four dimensions of service management
form the critical four pillars to support the SVS, the Service
Value Chain, and the Practices.

Service Value System


Let’s discuss the two elements in detail.

Service value System


A key component of the ITIL 4 framework is the ITIL Service Value
A key component of the ITIL 4 framework is the ITIL Service Value System (SVS). There are
System (SVS). There are five core components of the SVS, and the
five core componentsservice
of SVSvalue
andchain
service value chain is one of these components. The
is one of these components. The following figure
ITSM
given figure shows theshows
structure of the of
the structure SVS.
the SVS.

Lean

Agile

Based on AXELOS ITIL® Foundation (ITIL® 4 edition), 2019 material. Reproduced


Based on AXELOS ITIL® Foundation (ITIL® 4 edition), 2019 material. Reproduced under licence from AXELOS Limited. All rights reserved.
under licence from AXELOS Limited. All rights reserved.
Copyright © 2020

The SVS supports every type of organization, including High-Velocity


IT organizations. It includes the primary components an organization
needs to take into account to be able to transform any opportunity or
demand into valuable outcomes as efficient and effective as possible.
The left side of the figure shows inputs (opportunity/demand) feeding
into the SVS, and the right side shows the output created for the
organization, its customers, and other stakeholders. The middle part
shows the components of the ITIL SVS. The main inputs to the SVS are
opportunity and demand. Opportunities refer to options or possibilities
that can add value for customers and stakeholders or otherwise help
the organization to improve. Demand refers to the need for products
and services among consumers. Opportunity and demand generate

114  │ Copyright © 2020


Module 6 | Getting Familiar with DevOps Management Practices

activities within the ITIL SVS, which lead to the creation of value. This
value is the output/outcome of the ITIL SVS. The value represents
the perceived benefits, usefulness, and importance of something. The
ITIL SVS enables the creation of many different types of value for a
wide group of stakeholders.
The ITIL SVS includes the following components:
— Service value Chain: Refers to a set of activities performed by
an organization to deliver a valuable product or service to its
consumers.
— guiding principles: Refer to recommendations that guide
organizations in all circumstances, regardless of changes in its
goals, strategies, type of work, or management structure.
— practices: Refer to a set of organizational resources designed
to perform work or accomplish an objective.
— Continual Improvement: Refers to a recurring activity
performed at all levels to ensure that an organization’s
performance continually meets stakeholders’ expectations.

Service Value Chain


— governance: Refers to how (or the
organization is directed and controlled.
means by which) an

Service value chain


The service value chain is the central element of SVS.
The service value chain is the central element of SVS.

Based on AXELOS ITILBased


® Foundation (ITIL® 4 edition), 2019
on AXELOS ITIL® Foundation material. Reproduced
(ITIL®under licence from
4 edition), AXELOS
2019 Limited. All
material. rights reserved.
Reproduced
under licence from AXELOS Limited. All rights reserved. Copyright © 2020 | 9

The service value chain is an operating model that defines the key
activities required to respond to demand and enable value creation
through the formation and management of products and services.

Copyright © 2020 │  115


Course Book | DASA DevOps Fundamentals

The ITIL service value chain includes six value chain activities that
lead to the creation of products and services and, in turn, value. The
six value chain activities are:
— plan: Ensures a shared understanding of the vision, current
status, and improvement direction for all four dimensions and
all products and services across the organization.
— Improve: Ensures continual improvement of products, services,
and practices across all value chain activities and the four
dimensions of service management.
— engage: Provides a good understanding of stakeholder
needs, transparency, continual engagement, and the need for
maintaining healthy relationships with all stakeholders.
— Design and Transition: Ensures the products and services
continually meet stakeholders’ expectations for quality, costs,
and time-to-market.
— obtain/Build: Ensures the service components are available
when and where required, and meet agreed specifications.
— Deliver and Support: Assures the services are delivered and
supported according to agreed specifications and stakeholders’ 
expectations.

The value chain activities represent the steps an organization takes to


create value. Each activity contributes to the value chain by converting
specific inputs into outputs. The inputs may be demands from outside
the value chain or maybe the outputs of other activities. In this way,
activities interact with each other, wherein each activity receives and
provides triggers for further actions to be taken.
To convert inputs into outputs, the value chain activities take different
combinations of ITIL practices. Each activity may use internal or
third-party resources, skills, and competencies from one or more
practices. “For example, the engage value chain activity might draw
on a number of practices including supplier management, service
desk management, relationship management, and service request
management to respond to new demands for products and services,
decisions, or information from various stakeholders.”
Quoted text Source is ITIL® Foundation (ITIL® 4 edition), 2019. Copyright © AXELOS
Limited 2019. Material is reproduced under licence from AXELOS Limited. All rights
reserved.

guiding principles
The seven ITIL 4 guiding principles are:
1. Focus on value
2. Start where you are
3. Progress iteratively with feedback
4. Collaborate and promote visibility
der licence from AXELOS Limited. All rights reserved.

Copyright © 2020 | 10

116  │ Copyright © 2020


Module 6 | Getting Familiar with DevOps Management Practices

5.  Think and work holistically


6. Keep it simple and practical
7. Optimize and automate

Let’s discuss the principles in detail.


— Focus on value: Everything that the organization does need
to map, directly or indirectly, to value for the stakeholders. The
focus on value principle encompasses many perspectives,
including the experience of customers and users.
— Start where you are: Do not start from scratch and build
something new without considering what is already available
to be leveraged. There is likely to be a great deal in the current
services, processes, programs, projects, and people that can
be used to create the desired outcome. The current state
should be investigated and observed directly to ensure it is fully
understood.
— progress iteratively with feedback: Do not attempt to do
everything at once. Even huge initiatives must be accomplished
iteratively. By organizing work into smaller, manageable sections
that can be executed and completed in a timely manner, it
is easier to maintain a sharper focus on each effort. Using
feedback before, throughout, and after each iteration ensures
the actions are focused and appropriate, even if circumstances
change.
— Collaborate and promote visibility: Working together
across boundaries produces results that have greater buy-
in, more relevance to objectives, and a better likelihood of
long-term success. Achieving objectives requires information,
understanding, and trust. Work and consequences should
be made visible, hidden agendas should be avoided, and
information should be shared to the greatest degree possible.
— Think and work holistically: No service, or element used to
provide a service, stands alone. The outcomes achieved by the
service provider and service consumer will suffer unless the
organization works on the service as a whole, not just on its
parts. Results are delivered to internal and external customers
through  the  effective  and  efficient  management  and  dynamic 
integration of information, technology, organization, people,
practices, partners, and agreements, which should all be
coordinated to provide a defined value.
— Keep it simple and practical: If a process, service, action,
or metric provides no value, or produces no useful outcome,
eliminate it. In a process or procedure, use the minimum number
of steps necessary to accomplish the objective(s). Always use
outcome-based thinking to produce practical solutions that
deliver results.

Copyright © 2020 │  117


Course Book | DASA DevOps Fundamentals

— optimize and automate: Resources of all types, particularly


human resources (HR), should be used to their best effect.
Eliminate anything that is truly wasteful and use technology to
achieve whatever is possible. Human intervention should only
happen where it contributes value.
Based on AXELOS ITIL® Foundation (ITIL® 4 edition), 2019 material. Reproduced
under licence from AXELOS Limited. All rights reserved.

practices
In ITIL, a management practice is a set of organizational resources
designed for performing work or accomplishing an objective. ITIL
4 includes 34 practices. Out of these 34 practices, 14 are general
management practices, 17 are service management practices, and 3
are technical management practices.
A DevOps team needs ITSM best practices to meet the goal of
deploying changes faster and without disruption. The integration or
implementation of ITIL 4 practices in DevOps helps identify, reduce,
and eliminate risks and challenges. These practices are utilized during
Practices Service Value Chain activities to support and realize different value
streams.

General Management Practices Service Management Practices Technical Management Practices

► Architecture management ► Availability management ► Deployment management


► Continual improvement ► Business analysis ► Infrastructure and platform
SM ► Information security ► Capacity and performance management
management management ► Software development and
► Knowledge management ► Change enablement management
an ► Measurement and reporting ► Incident management
► Portfolio management ► IT asset management
► Organizational change ► Monitoring and event
ile management management
► Project management ► Problem management
► Relationship management ► Release management
► Risk management ► Service catalogue management
► Service financial management ► Service configuration
► Strategy management management
► Supplier management ► Service continuity management
► Workforce and talent ► Service design
management ► Service desk
► Service level management
► Service request management
► Service validation and testing

Based on AXELOS ITIL® Foundation (ITIL® 4 edition), 2019 material. Reproduced under licence®from AXELOS Limited. All rights
® reserved.
Based on AXELOS ITIL Foundation (ITIL 4 edition), 2019 material. Reproduced
under licence from AXELOS Limited. All rights reserved. Copyright © 2020 | 11

118  │ Copyright © 2020


Module 6 | Getting Familiar with DevOps Management Practices

Adopting ITIL practices in Devops

Resources are
organized differently.

Product
Value streams
teams work
and Practices are
autonomously.
automated.

People
are aware about
the need to adapt
to change.
Design & Teams are
Transition, end-to-end
Support, Build/Obtain responsible for
and Quality are the design,
included within the implementation,
same team. and execution of
the product
All teams
come together to
define strategy.

ITIL practices are important in a DevOps organization but require


special attention. The implementation of the practices might differ from
how the implementation is done in siloed structured organizations.
Some of the reasons why applications of ITIL practices require
attention in DevOps organizations are:
— resources are organized differently: Resources are
organized as product teams, resulting in fewer handovers, less
complex process descriptions, and minimal documentation.
— product teams work as autonomously as possible: The
teams are free to do any tasks or activities required to deliver
the product without alignment and approvals of other teams.
— people are aware that processes may obstruct the ability to
adapt to change: People are aware that they need to adapt to a
continuously changing environment. Rigid process descriptions
can get in the way of dealing with change.
— processes are automated as much as possible: Processes
have low variability and are an excellent candidate to automate.
Therefore, the major focus is on automating processes to make
these faster, more reliable, and repeatable.

Copyright © 2020 │  119


Course Book | DASA DevOps Fundamentals

— All teams come together to define the strategy: Often, it is the


Product Owners and lead engineers from different teams who
work to define the strategy. Topics related to Service Strategy 
are where all product teams connect through the use of Product
Vision boards.
— Teams are end-to-end responsible for the design,
implementation, and execution of the product: The product-
centric approach entails the complete responsibility of the
product with the team.
Continual Improvement
continual Improvement
The goal of any organization is to create value for its customers,
The goal of any organizationstakeholders,
is to createand value for itsTo
partners. customers,
achieve thisstakeholders, and
goal, every organization
partners. To achieve this goal, every
takes organization
part in continual
takes partToinsupport
continual improvement. improvement.
continual improvement To
support continual improvement
at allat all levels,
levels, the
the ITIL SVSITIL SVS includes:
includes:

Continual
Improvement

The ITIL continual improvement The improve service value The continual improvement
model chain activity practice
► Provides a structured approach to ► Embeds continual improvement ► Supports organizations in their
organizations for implementing into the value chain day-to-day improvement efforts
improvements

Copyright © AXELOS Limited 2019. Reproduced under licence from AXELOS Limited. All rights reserved
Copyright © AXELOS Limited 2019. Reproduced under licence from AXELOS Limited.
Copyright © 2020 | 13
All rights reserved

The ITIL Continual Improvement Model


The continual improvement model provides a structured approach
continual improvement
to implement improvements through its seven steps. The scope and
Continual improvement is details of each step of the model vary significantly based on the
a recurring activity that is subject and the type of improvement. However, this model should
performed at all levels to ensure be recognized as a workflow to be used as a high-level reminder of
the organization’s performance a sound thought process to ensure the improvements are properly
continually meets stakeholders’ managed. The flow seeks to ensure the improvements are linked
expectations. to the organization’s goals and properly prioritized. It also ensures
improvement actions produce sustainable results.
You should always apply logic and common sense when using the
continual improvement model. The steps do not need to be carried out
in a linear fashion, and it may be necessary to re-evaluate and return
to a previous step at some point.
120  │ Copyright © 2020
Module 6 | Getting Familiar with DevOps Management Practices

The Improve Service value Chain Activity


The purpose of this value chain activity is to ensure continual INFO
improvement of products, services, and practices across all value
chain activities and the four dimensions of service management. value chain activities
To better understand the purpose or what is done in the activity, it is You have already learned about the
important to know the following outputs that are produced as the result various value chain activities in the
of this activity: Service Value Chain subtopic of this
— Improvement initiatives and plans TO all
topic.

— Improvement status reports TO all value chain activities


— Value chain performance information TO the Plan activity and
the governing body
— Contract and agreement requirements TO the Engage activity
— Service performance information TO the Design and Transition
activity

The Continual Improvement practice


The purpose of the continual improvement practice is to align the
organization’s practices and services with changing business needs
through the ongoing identification and improvement of services,
service components, practices, or any element involved in the efficient
and effective management of products and services.

governance

Governing Body
Governance is the means by which an organization is directed
and controlled. A governing body is a group
of people who has the sole
responsibility and authority
to exercise governance over
an organization. They are
accountable at the highest
level for the performance and
Governance is the Governance includes Organizational compliance of the organization.
practice of the the establishment of governance includes
governing body policies and the evaluation, direction,
to make effective continual monitoring and monitoring of
decisions to of their proper the various activities,
successfully direct implementation by including service
the company. the governing body. management, that
are performed in an
organization.

Characteristics of Governance

Governance is deliberately separated from management. The


Governance part is usually done at the strategic level and provides

Copyright © 2020 │  121


Course Book | DASA DevOps Fundamentals

clear direction based on the evaluation of the stakeholder’s needs.


Management, on the other hand, Plans, Builds, Runs, and Monitors
the progress and realization of the direction given by the board of
Four Dimensions directors.

Four dimensions

To support a holistic approach to service management, ITIL defines four dimensio


To support a holistic approach to service management, ITIL defines
four dimensions that collectively are important for the effective and
collectively are important for theof effective
efficient facilitation andfour
the value. The efficient facilitation
dimensions of value.
are depicted in The fou
ITSM
dimensions are thedepicted
followinginfigure.
the following figure.

Lean

Agile

Based on AXELOS ITIL® Foundation (ITIL® 4 edition), 2019 material. Reproduced under licence from AXELOS Limited. All rights reserved.
Based on AXELOS ITIL® Foundation (ITIL® 4 edition), 2019 material. Reproduced
under licence from AXELOS Limited. All rights reserved.

While working on initiatives, organizations often start focusing on only


one area, ignoring the others. This may lead to unexpected results,
loss of work, and delays. Therefore, organizations should consider all
dimensions of service management to work effectively.
These dimensions do not have sharp boundaries. Therefore, there
is a probability of having overlapping dimensions. For example, if
members of the service desk team (organizations and people) are being
supplied by the third-party service provider, a special consideration
must be given to information security and the application of policies
and procedures (information and technology).
You might find these dimensions interacting in unusual ways based
on the level of complexity and uncertainty in which an organization
operates. If you fail to address any of the dimensions, it can lead to
undeliverable services and unmet expectations concerning quality or
efficiency.

122  │ Copyright © 2020


Four Dimensions (Contd.) Module 6 | Getting Familiar with DevOps Management Practices

The Four Dimensions and Service Value System


The Four Dimensions and Service value System

ITSM ► Roles and responsibilities ► Information and knowledge


► Formal organizational ► Technologies required
structure ► Relationships between
Lean ► Organizational culture different components of
► Required staffing and the SVS
competences
Agile

► Relationship with other ► Define activities and


organizations workflows
► Contracts and agreements ► Service integration and
► Service integration and management
management ► Enable value creation

Based on AXELOS ITIL® Foundation (ITIL® 4 edition), 2019 material. Reproduced


under licence from AXELOS Limited. All rights reserved.
Based on AXELOS ITIL® Foundation (ITIL® 4 edition), 2019 material. Reproduced under licence from AXELOS Limited. All rights reserved.

Copyright © 2020 | 16
All four dimensions should be considered for the efficient working of
the entire SVS. These four dimensions represent perspectives that
are relevant to the whole SVS, including the service value chain and
all ITIL practices.

devops in relation to ItSm processes and value Streams


Let’s first revisit the movement of IT organizations from the traditional
task-oriented approach to a modern service-based approach.

traditional It organizations modern Agile or devops organizations


„ These consist of task-oriented silos, „ These consist of customer-centric, service-
requiring specialized skills. oriented teams directly and closely integrated
with the customers, requiring business
„ The teams need formal processes for
representation skills and End-to-End
managing services, leading to waste.
responsibility.
„ The teams require a Process Manager, a
„ The teams are cross-functional and
Process Owner, and KPIs for managing
autonomous, fully responsible for the lifecycle
and (or) aligning the various silos, leading
of products and services, leading to having
to a lot of overhead, and hence, waste.
Development and Operations in the same
„ Challenge: Results in a complex matrix team.
organization involving many handovers
„ The  focus  is  on  optimizing  the  flow  via  value 
and transition moments, leading to a lot of
streams.
waste.
„ Challenge: Scaling up teams is a challenge,
as maintaining a standard strategy and
governance is difficult.

Copyright © 2020 │  123


DevOps and
Course Book | DASA ITSM
DevOps Processes – The Relation (Contd.)
Fundamentals

ITSM in the DevOps WorldITSM in the Devops world


► — TheChain
The ITIL SVS and Service Value support
ITIL SVS High-Velocity
and Service Value ChainIT in optimizing
support speed and
High-Velocity
IT in optimizing speed and quality. These also enable teams
quality. These also enable teams to deliver the required outputs to the customer and
to deliver the required outputs to the customer and realize the
realize the necessary outcomes.
necessary outcomes.
► The ITIL 4 practices are supporting Value
— The ITIL Streams
4 practices arethat help optimize
supporting the flow
Value Streams thatand
helpreduce
the amount of waste. optimize the flow and reduce the amount of waste.
► ITIL 4 Practices help optimize
— value
ITIL 4 delivery
Practices based on thevalue
help optimize organization’s / team’s
delivery based on theneeds
by supporting the steps in the values streams.
organization’s / team’s needs by supporting the steps in the
values streams.
► ITIL also helps in automating the required tasks, collaborating with other teams, and
— ITIL also helps in automating the required tasks, collaborating
managing an end-to-end service.
with other teams, and managing an end-to-end service.

Chatbots, Event
Swarming for Incident Peer Reviews for eXperience Level
Automation, Predictive
Management Change Approval Agreements (XLAs)
Analytics

Examples of Novel Practices Utilizing ITSM

Copyright © 2020 | 18
Many organizations still have a mix of the centralized service desk
and legacy systems.

Activity: Group Discussion: ITIL and DevOps

Activity Time: 10 Minutes


How does ITIL and DevOps compliment each other and why?

topic Summary
In this topic, you learned that:
— The purpose of ITIL 4 is to provide organizations with
comprehensive guidance for the management of IT-enabled
services in the digital economy.
— ITIL 4 guides modern organizations in a service context using
the two key elements, Service Value System (SVS) and four
dimensions.
— The ITIL SVS includes the following components: Service Value
Chain, Guiding Principles, Practices, Continual Improvement,
and Governance.
— The central element of the SVS is the service value chain,
an operating model that outlines the key activities required to
respond to demand and facilitate value creation through the
creation and management of products and services.

124  │ Copyright © 2020


Module 6 | Getting Familiar with DevOps Management Practices

— The four dimensions of service management form the critical


four pillars to support the SVS, Service Value Chain, and ITIL
Practices.
— The four dimensions are Organizations & People, Information
& Technology, Value Streams & Processes, and Partners &
Suppliers.

Knowledge check
q1. which component of the Service value System (SvS)
includes a set of activities that an organization performs to
deliver a valuable product or service to its consumers?
a) Guiding Principles

b) Governance

c) Practices

d) Service Value Chain

leAn

what is lean?

MURI
Customer Value

Resource Value
MUDA MURA

LE
LEA
EAN

The core idea of Lean is to maximize customer value while minimizing


waste. In simple terms, Lean means creating more value for customers
with fewer resources.
— Lean works on three principles:
— Eliminating waste (Muda)
— Eliminating overburden (Muri)
— Eliminating in lack of balance in workloads (Mura)

Copyright © 2020 │  125


Course Book | DASA DevOps Fundamentals

Lean is a systematic approach to identifying and eliminating waste from


a process. The goal of Lean is to include Continuous Improvement
in the DNA of organizations. Organizations can accomplish Lean by
forming Kaizen project teams that work towards transforming major
improvements to quick wins.

lean: Satisfying the customer by delivering value


Lean focuses on creating maximum customer value using a process
that has zero (or minimum) waste. The waste is of different types that
act as obstacles in creating the desired customer value.

Types of Waste

Remember the eight types of waste using the acronym DOWNTIME.

Non-utilized Talent Inventory Extra-Processing


Overproduction Under utilizing people’s Storing products (or parts (Overprocessing)
Producing more than skills and delegating of products), materials, More work due to
what is required in the tasks with inadequate and documentation ahead higher quality than
current situation training of requirements required

D O W N T I M E

Defects Waiting Transportation Motion


Efforts wasted by Time wasted in waiting Unnecessary Unnecessary
rework, scrap, and for the required parts, movements of movements of people
incorrect information, instructions, people, products,
documentation and equipment and information

There are high chances that about two-third of the work you are doing
is of either zero or negative value to the customers. Such work is
defined as waste and impacts the costs in three ways: development
costs, lost opportunity to do more valuable work, and cost of added
complexity.
Taiichi Ohno, considered as the father of Lean, was instrumental in
developing the “Seven Wastes” model, which has become core in
many academic approaches. An eighth waste, non-utilized skills, is
commonly overlooked, but it is also a waste. Refer to the preceding
figure for the eight types of wastes.
To implement Lean techniques to maximize customer value,
organizations follow a five-step thought process. This thought process
is easy to remember, but not always easy to achieve.

126  │ Copyright © 2020


Module 6 | Getting Familiar with DevOps Management Practices

5. Seek Perfection 1. Identify Customer Value


Start the process again for Define the customer value
further enhancements and considering the customer’s
continue it until a perfect needs, deadline, and cost.
value is created with no
waste.
Lean
Principles
4. Establish Pull 2. Map the Value Stream
Deliver products to the Create the process flow to
customers as and when eliminate the waste by
required using the identifying all the non-value
Just-in-Time approach steps.
in production.

3. Ensure Flow
Ensure the remaining steps will flow
smoothly in production without any
interruptions, delays, or bottlenecks.

Lean principles took birth in the Toyota production factory to minimize


resources. Lean principles provide the foundation for building the
DevOps culture. For example, Value Stream Mapping, a tool used
in Lean for removing the imperfections out of the process chain, DO YOU KNOW?
finds a ready acceptance to visualize the DevOps value stream and „ Far more than 50% of
measure it. Such measurements help improve the delivery pipeline by functionality in software are
eliminating bottlenecks, and making it more efficient and productive. rarely or never used. These
Organizations can apply Lean principles in many contexts, tools, and aren’t just marginally valued
methods with multiple sources. features; many are no-value
features.
optimizing a process using value Stream mapping Source: The Standish Group, reported in the
IEEE conference 2002
1 „ On average 45% of projects
Define Customer exceed budget, 7% runs over
Objectives and schedule and 56% delivers less
2 Process Actors
value than expected.
Define Activities Source: McKinsey group with University of
3 Oxford.
Define Work in
Progress
„ 60%–90% of ideas do not
4 improve the metric they were
Identify Rework intended to improve.
5 Source: From Lean Enterprises: data
Assess Activities gathered from A/B tests by Ronny Kohavi,
6 who directed Amazon’s Data Mining and
Determine Personalization group
Proccess Cycle
Efficiency 7
Determine Value
Add for Each Activity

Copyright © 2020 │  127


Course Book | DASA DevOps Fundamentals

Value Stream Mapping (VSM) is a tool to gain insight into the workflow of a process. It can be used
to identify both value-adding activities and non-value-adding activities in a process stream, while
providing insight for optimizing the process chain.
Value stream mapping is a Lean management tool that helps visualize the steps required to take from
product creation to delivering it to the end-customer. These steps are:
1. Define customer objectives and process actors: Ensure to start working with one process
and  define  customer  objectives.  Secondly,  with  a  group  of  people,  determine  all  the  actors, 
such as organizations, persons, and teams that are part of the current process.
2. Define activities: Define the activities that need to be done within each process actor.
3. Define work in progress: Describe the number of requirements/objects/activities that are
currently in the process between actors.
4. Define rework: Determine the actors where the rework happens and what are the causes of rework.
5.  Assess activities: Take out some time to assess the activities being done.
6. Determine process cycle efficiency: Start adding information related to timing, such as
process time, wait time, and lead time for determining Process Cycle Efficiency.
7. Determine value add for each activity: Identify value-add and non-value-add activities for the
customer.

Improve the Flow of work


The ultimate aim of DevOps is to achieve high-performance (delivering more value to customers more
quickly and at a higher level of quality) by improving the flow of work throughout the organization.
During the process of creating flow, a continuous decision-making process is essential to ensure a
focus on value-add activities.

Without Flow

VA NVA VA NVA VA NVA VA NVA

With Flow

► Automate, Automate, and


Automate!
► Identify and Solve Problems
VA NNVA VA NNVA VA NNVA VA NNVA
► Remove Waste
► Increase Release Frequency
► Shorten Processes

Legend:
VA - Value-Add Activities; NVA - Non-Value-Add Activities; NNVA – Necessary Non-Value-Add

128  │ Copyright © 2020


Module 6 | Getting Familiar with DevOps Management Practices

Working in silos (different departments or teams) leads to a lot of INFO


waste due to several non-value-add activities, such as handover and
transformation moments, manual processes, and repetitive tasks. On
ways
the other hand, working as a Business System team (cross-functional) The possible ways to improve the
helps minimize this amount of waste enormously and optimize the flow of work, according to David
overall flow. Anderson’s groundbreaking book,
“Kanban: Successful Evolutionary
There is always some Necessary Non-Value-Add (NNVA) activities Change for Your Technology
that organizations cannot ignore and consider these as a small part of Business,” are the five essential
the value-add work. properties for the consistent
You can improve the flow of work to the maximum extent in some implementations of the Kanban
ways, as shown in the following figure. method.

Possible Ways to Improve the Flow of Work

Visualize the Limit work in Create a pull Make process Improve


workflow. progress. and flow. policies explicit. collaboratively.

lean Startup

A startup is a human institution designed to create a new product


or service under conditions of extreme uncertainty.”
― Eric Ries, The Lean Startup

Startup success can be engineered by following the process,


which means it can be learned, which means it can be taught.
- By Eric Ries

The Lean Startup is a scientific approach to creating and managing


startups and getting the desired product to customers’ hands faster.

Copyright © 2020 │  129


Course Book | DASA DevOps Fundamentals

Reducing the total time to market


using this loop
Find

Bu
ild

rn
Idea

Lea
Validate Minimal Viable Execute
Product

Data Code

M e a s u re

The Lean Startup Methodology

According to the book by Eric Ries, The Lean Startup, entrepreneurs


can begin their journey of a Lean Startup following the loop of three
steps: Find, Execute, and Validate. Let’s discuss the three steps in
detail.
INFO 1. Find the Business Idea: Choose the business idea by
“The big question of our time is answering, “Should this product be built?” compared to the
not Can it be built? but Should it be traditional methodology of answering, “Can this product be built?”
built? This places us in an unusual Knowing the answer is essential to analyze whether the product
historical moment: our future will have sufficient features to solve customers’ problems. They 
prosperity depends on the quality of spend money on a product only when it solves their problems.
our collective imaginations.” Therefore, analyzing customers’ problems before starting with
the development of a product is crucial for its success and the
– Eric Ries, The Lean Startup
business. After all, the product is going to gain the customers’
attention only when they will be actively looking for a solution.
INFO 2. execute the Business Idea: You have the business idea, and
“As you consider building your it’s time to start building the Minimum Viable Product (MVP). An
own minimum viable product, let MVP is a version of a product with limited but enough features
this simple rule suffice: remove that allow gathering as maximum information as possible about
any feature, process, or effort that the potential customers and their feedback on the product. An
does not contribute directly to the MVP should not include any feature, process, or effort that does
learning you seek.” not contribute directly to the learning you seek. The Lean Startup
methodology supports Kickstarter Approach for releasing the
– Eric Ries, The Lean Startup
product. The approach suggests selling the unfinished product 
to create brand awareness, drive up the product’s interest in the
market, and raise funds for the Lean Startup.

130  │ Copyright © 2020


Module 6 | Getting Familiar with DevOps Management Practices

3. validate the Business Idea: Validating the product or the INFO


business idea is the most essential step to developing a “Startups exist not just to make
successful Lean Startup. The step suggests experimenting stuff, make money, or even
with the idea in the real world by allowing real customers (early serve customers. They exist to
adopters and others) to test the product in the marketplace (or learn how to build a sustainable
the live environment). The purpose is gathering the required business. This learning can be
information for analyzing the viability of the product. Based validated scientifically by running
on this analysis and the business strategy, organizations can frequent experiments that allow
continue with the further development of the product (the MVP) entrepreneurs to test each element
and the required modifications as follows: of their vision.”
{ Mostly positive results: Continue building the product – Eric Ries, The Lean Startup
basis the original business strategy along with incorporating
feedback from testers.
{ A mix of positive and negative results: Modify the product
and (or) the business strategy to meet the customers’
requirements to the maximum extent.
{ Mostly negative results: Pivot (completely turn) the
product and (or) the business strategy. Organizations might
need to completely change the method and work towards
meeting the gathered requirements of the customers. The
almost negative results can also push a Lean Startup to exit
the marketplace.

minimal viable product (mvp)


A Minimal Viable Product (MVP) is a development technique in which
a new product is developed with enough features that are sufficient
to satisfy early adopters. The final, complete set of features is only
designed and developed after considering feedback from the product’s
initial users.
The following figure will help you better understand an MVP.

Traditional Product
Development:
Unfinished, not
Sellable Product

MVP Approach:
Unfinished, Sellable
Product

The purpose of developing MVP is to test a product hypothesis


with minimal resources, reduce waste, provide the product to early
customers as soon as possible, get the base ready for other products,
quickly build the base for brand, and so on.
Copyright © 2020 │  131
Course Book | DASA DevOps Fundamentals

Complex systems are quite often built without the upfront verification
of whether the system will ever be used. Also, when designing
new systems, it is difficult to anticipate how the end-user will use
it. Predicting usage is undoable if you are not incorporating your
customer’s feedback. This is where the MVP comes into play. The
MVP allows you to launch a product quickly, based on your idea, with
a small budget. The approach allows you to collect user’s feedback
for the primary product and include it in future iterations. With the help
of an MVP, one can find the right audience, pull the ideas based on
experience, and save time.
The MVP cycle starts with having an ‘idea.’ This idea is subsequently
built, resulting in ‘code.’ The code is deployed to production and
accessed by the end-user, allowing an organization to measure the
end-user behavior. These measurements lead to valuable ‘data’ from
which the organization can ‘learn.’ Such learning helps generate new
ideas, and you can continue with the MVP cycle.

Activity: Exercise: Developing a Value Stream

Activity Time: 10 Minutes


Create a value stream of something like “Doing the organizational
training course” and let customers (here, internal) experience how
that goes and what kind of challenges occur.

topic Summary
In this topic, you learned that:
— The core idea of Lean is to maximize customer value while
minimizing waste.
— There are high chances that about two-thirds of the work you
are doing is of either zero or negative value to our customers.
The abbreviation DOWNTIME depicts the eight types of Lean
wastes.
— The  five  Lean  principles  are  identifying  the  customer  value, 
mapping the value stream, ensuring flow, establishing pull, and 
seeking perfection.
— Value stream mapping is a Lean management tool that helps
visualize the steps required to take from product creation to
delivering it to the end-customer.
— The possible ways to improve the flow of work are visualizing 
the workflow, limiting work in progress, creating a pull and flow, 
making process policies explicit, and improving collaboratively.
— The  Lean  Startup  is  a  scientific  approach  to  creating  and 
managing startups and getting the desired product to customers’
hands faster following a loop of three steps: Find, Execute, and
Validate.
132  │ Copyright © 2020
Module 6 | Getting Familiar with DevOps Management Practices

— A Minimal Viable Product (MVP) is a development technique in


which a new product is developed with enough features that are
sufficient to satisfy early adopters.

Knowledge check
q1. which type of Lean waste specifies the efforts are wasted
due to rework?
a) Defects

b) Inventory

c) Motion

d) Transportation

AgIle

Agile: Satisfying the customer through continuous value


delivery
Agile is described as an iterative and incremental approach to software
development.

Effort

User Stories

Plan a delivery date


Iteration 1
Plan module-wise
delivery

List risks and challenges Iteration 2


.
.
.
.
.
Provide the delivery to Iteration N
customer
Time (in days)
1 2 3 4 N

Agile breaks the development of new functionalities into smaller Reference Reading:
functional units according to user stories and prioritizes these to “The Art of Agile Development” by
continuously deliver the software in short cycles, known as iterations. James Shore.
It aims to build software incrementally from the start of the project.
Agile focuses on smaller functional units instead of developing the
complete software in a go.

traditional vs Agile product development


Agile refers to a group of software development methodologies based
on iterative development, where requirements and solutions evolve
through collaboration between self-organizing, cross-functional teams.
Copyright © 2020 │  133
Course Book | DASA DevOps Fundamentals

traditional development Agile development


„ It starts with a complete product design. „ It is focused on delivering functional product
„ Building the product is followed by testing every Sprint.
the final product. „ It is an iterative way to deliver products
„ The final product is tested in the live  starting with the basic functionality and
environment. adding features with each iteration (Sprint).
„ It involves no feedback loops. „ It is focused on delivering value to the
customer early through Continuous Delivery.
„ It is a systematic way to develop products.
(Value-Driven)
(Plan-Driven)
„ It is focused on the deliverable, which is the
„ It is focused on activities. (Activity-Focused)
product. (Product-Focused)

Agile breaks the development of new functionalities into smaller


functional units according to user stories. The units are continuously
prioritized to deliver the software in short cycles, known as iterations.
DevOps, in many ways, fits uniquely well with Agile. The two unique
approaches are almost synonymous except for prevue in scope. The
convergence of development methodologies and delivery solutions
has paved the way for numerous companies to reap huge success
and improvements.
plan Driven vs value Driven

Plan Driven (Traditional Development) Value Driven (Agile Development)

Functionality (Scope of Work) Resources (Cost) Time (Schedule)

Fixed Constraints

Quality

Quality

Estimated

Resources (Cost) Time (Schedule) Functionality (Scope of Work)

Management measures the success of any product based on three


constraints: time, cost, and scope. The three constraints are related
to each other. Changes in one of the constraints will impact the other
two, and hence the overall quality, as depicted in the preceding figure.
The traditional way of developing products follows the traditional
approach to project management. According to this approach, the
management estimates the schedule and the cost keeping the scope
fixed. If there is a change in scope, this approach requires replanning
and rebaselining the schedule and the cost.
134  │ Copyright © 2020
Module 6 | Getting Familiar with DevOps Management Practices

Agile development is vision-driven and focuses on delivering value.


Therefore, it estimates the scope, which can deliver value, keeping
the schedule and the cost fixed. As a result, the team feels confident
by delivering the value based on set standards and without stressing
about the schedule or the cost. The Agile approach also helps
stakeholders to understand creating value with a clear vision in Sprints
(or over a period).
Activity Focused vs product Focused

Aspect Activity-Focused product-Focused


Development Style „ Traditional Way of Product „ Agile Way of Product
Development Development
working Style „ Work with Individuals (in silos) „ Collaborative Work (as one team)
people „ Functionally Organized „ Team Organized
Team „ Project Focused „ Product Focused
responsibility „ Work-oriented Limited „ End-to-end Responsibility
Responsibility

Agile teams — multidisciplinary Feature teams


Multidisciplinary feature teams have multiple skills and are responsible
for a fully working product.

Database
Developer Administrator Tester

Operator Designer Analyst

The Agile teams are multidisciplinary teams with a variety of skills.


Members of such a team can exhibit multiple skills. In an organization
that implements a DevOps culture, the resources usually exhibit
multiple skills. Every team member is equally responsible and
accountable for a product. Having all skills working as one product-
focused team reduces expensive handover moments and optimizes
process throughput.

Copyright © 2020 │  135


Course Book | DASA DevOps Fundamentals

12 principles of the Agile manifesto

Our highest priority Welcome changing requirements,


is to satisfy the customer even late in development. Agile
through early and continuous
1 7
2 processes harness change for the
delivery of valuable software. customer's competitive advantage.

Deliver working software Business people and developers


frequently, from a couple of weeks
to a couple of months, with a
3 4 must work together daily
throughout the project.
preference to the shorter timescale.

The most efficient and effective


Build projects around motivated method of conveying information to
individuals. Give them the 5 6 and within a development team is
environment and support they need, face-to-face conversation.
and trust them to get the job done.
Agile processes promote sustainable
Working software is the development. The sponsors,
primary measure of progress. 7 8 developers, and users should be able
to maintain a constant pace indefinitely.

Continuous attention to technical Simplicity‒the art of maximizing


excellence and good design the amount of work not done‒is
enhances agility.
9 10 essential.

At regular intervals, the team reflects


The best architectures, on how to become more effective,
requirements, and designs emerge 12
from self-organizing teams.
11 then tunes and adjusts its behavior
accordingly.

Source: http://agilemanifesto.org

Organizations, teams, or individuals should consider the 12 principles when adopting the Agile way
of working.

136  │ Copyright © 2020


Module 6 | Getting Familiar with DevOps Management Practices

the Agile manifesto

Agile Manifesto
We are uncovering better ways of developing
software by doing it and helping others do it.
Through this work we have come to value:

Individuals & Interactions OVER


Processes & Tools

Working Software OVER


Comprehensive Documentation

Customer Collaboration OVER


Contract Negotiation

Responding to Change OVER


Following a Plan

“While there is value in the items on the right,


we value the items on the left more.”

Source: http://agilemanifesto.org

The Agile manifesto focuses on choosing the activity that provides Reference Reading:
more value in realizing the end product. h t t p : / / a g i l e m a n i f e s t o. o r g /
principles.html
Agile umbrella of Several methods and Frameworks
Agile is not a method at itself. It is an umbrella term for all the methods INFO
and methodologies (frameworks) that satisfy the four values and the
twelve principles of the Agile Manifesto. Organizations can use any of methods and methodologies
these methodologies to become Agile. The exam will not have any questions
related to the specific details of
various methods and methodologies
listed in the figure. It is out of the
scope of this course.

Copyright © 2020 │  137


Agile is not a method at itself. It is an umbrella term for all the methods and methodologies
(frameworks) that satisfy the four values and the twelve principles of the Agile Manifesto.
Course Book | DASA DevOps Fundamentals

Organizations can use any of these methodologies to become Agile.

Agile Umbrella

Lightweight Approaches for One Team Comprehensive Approaches for Multiple Teams
► Scrum ► Scrum-of-Scrums
► Lean Software Development ► Scrum at Scale (Scrum@Scale)
► Kanban ► Large Scale Scrum (LeSS)
► eXtreme Programming (XP) ► Scaled Agile Framework (SAFe)
► Continuous Integration (CI) ► Discipline Agile Delivery (DAD)
► Continuous Delivery (CD) ► Dynamic Systems Development Method (DSDM)
► Feature Driven Development (FDD) ► Agile Project Management (Agile PM)
► Test Driven Development (TDD) ► Agile Unified Process (AUP)
► Crystal Clear ► Open Unified Process (OpenUP)
► … ► …

Copyright © 2020 | 4

the Scrum Approach

Scrum Master
Daily Scrum
24 H

SPRINT
1-4 WEEKS
Sprint
Product Owner Team Review
+
Sprint
Retrospective

Product Sprint Planning Sprint Finished


Backlog Meeting Backlog Work

The Scrum framework specifies that a product is built via a series


of sprints, which are fixed-length iterations. Sprints are time-boxed
events that are not more than a month-long. Usually, these are of two
weeks.
The Scrum framework is a set of roles, artifacts, events, flow, social
objects, and improvement cycles.

138  │ Copyright © 2020


Module 6 | Getting Familiar with DevOps Management Practices

Scrum roles

Scrum Master
Daily Scrum
24 H

SPRINT
1-4 WEEKS
Sprint
Product Owner Team Review
+
Sprint
Retrospective

Product Sprint Planning Sprint Finished


Backlog Meeting Backlog Work

Scrum has three main roles: Team, Scrum Master, and Product Owner.
— Scrum Team: The Scrum team is a multidisciplinary, self-
organizing team. It consists of usually 3 to 9 members, who
work together to deliver the requested and committed product in
increments. The team itself decides what tasks it can accomplish
in one sprint and shares a common goal.
— Scrum Master: The Scrum Master servers as a Servant Leader.
The primary responsibilities of a Scrum Master include ensuring:
{ The Scrum process is being followed.
{ The team is working according to Scrum rules and behaviors.
{ The team is performing the required tasks to develop the
end product without any distractions.
— product owner: The Product Owner is a holder of product value
and is responsible for maximizing the value of the product. The
primary responsibilities of a Product Owner include:
{ Identifying the tasks that need to be done and setting the
priorities to deliver the highest value to customers
{ Maintaining the product backlog and defining user stories
{ Ensuring the user stories adhere to the Definition of Ready 
(DoR) in terms of how requirements are described

Copyright © 2020 │  139


Course Book | DASA DevOps Fundamentals

the Scrum Artifacts

Scrum Master
Daily Scrum
24 H

SPRINT
1-4 WEEKS
Sprint
Product Owner Team Review
+
Sprint
Retrospective

Product Sprint Planning Sprint Finished


Backlog Meeting Backlog Work

Artifacts provide the key information that the Scrum Team and the
stakeholders need to know for understanding the product being
developed and the activities related to it. The three main artifacts in
Scrum are:
— product Backlog: Product Backlog is a continuously evolving,
ordered list of items to be done in a project. It is a single source
of truth for any modifications to be made to the product. 
— Sprint Backlog:  Sprint  backlog  specifies  the  changes  to  be 
carried out in one sprint. It also contains the plan for Development
team  that  specifies  how  they  are  going  to  deliver  the  product 
increment at the end of a Sprint.
— potentially Shippable product: As per Scrum Inc, “a Potentially
Shippable Product is the outcome of the Product Backlog Items
delivered at each Sprint. Delivering Potentially Shippable
Product at each Sprint is essential to the Scrum because when
work is divided into simple pieces, it can be finished in a short 
iterations.”

It is important to note that the artifacts are not limited to these.

140  │ Copyright © 2020


Module 6 | Getting Familiar with DevOps Management Practices

Scrum events

Scrum Master
Daily Scrum
Backlog 24 H
Refinement

SPRINT
1-4 WEEKS
Sprint
Product Owner Team Review
+
Sprint
Retrospective

Product Sprint Planning Sprint Finished


Backlog Meeting Backlog Work

The flow of the Scrum framework is defined by a sequence of events.


The six vital events of Scrum are:
— Sprint planning: The Sprint Planning includes the planning for
the work to be performed in a sprint. It occurs at the start of each
sprint. Sprint Planning is time-boxed to a maximum of eight
hours for a one-month Sprint. For shorter Sprints, the event is
usually shorter. During this session/planning, the Scrum Team
determines the amount of work required to fulfill a new activity.
— Sprint: It refers to the heart of the Scrum. During this session, a
product increment is developed. In the Sprint event, a potentially
releasable product increment is created. It is a time-boxed event
of one month or less. A new Sprint starts immediately after the
conclusion of the previous Sprint.
— Daily Standup: The Daily Scrum/Daily Standup is a 15-minute 
time-boxed event for the Scrum Team. During this meeting, the
team  specifies  what  they  did  the  previous  day  and  what  they 
are going to do today. The team also lists the impediments or
backlogs that prevent the team from meeting the Sprint goal.
— Sprint review: A Sprint Review occurs at the end of the Sprint.
In this session, the Scrum Team and stakeholders look at what
was done in the Sprint. The attendees of the Sprint Review
session also look at the items that need to be done to optimize
value in the next Sprint.
— Sprint retrospective: The Sprint Retrospective event helps
the team to inspect itself and create a plan for improvements.
The event occurs after the Sprint Review and before the next
Sprint Planning. It is a time-boxed event of 3 hours for a 1-month
Sprint. For shorter Sprints, the event is usually shorter.

Copyright © 2020 │  141


Course Book | DASA DevOps Fundamentals

— Backlog Refinement: The Backlog Refinement session helps the 
Product Owner and the Scrum Team to keep the backlog clean
and orderly. The session usually happens when the Sprint is about
to end, and the Product Owner tries to improve the user stories.

Including the mvp in an Agile process


An MVP can improve Agile project management planning by ensuring
the teams iterate intelligently. In an Agile process, one needs to ensure
the selection of tasks from the product backlog is done in such a way
that an MVP is delivered at the end of the Sprint.

Vision Statement
Minimal Viable
Product Backlog Product
Product Vision
Board

Change!

Feedback

Some Advantages of Working Agile


Users

Some Advantages of working Agile

Visibility Risk

Business Value Security

► Fast fixes in case of vulnerabilities


Agile Development
► Lower risk-surface-area by (Continuous Delivery)
developing the right things only

► Team coherence and product


focus leads to “build quality in” Traditional
Development

142  │ Copyright © 2020 Copyright © 2020 | 48


Module 6 | Getting Familiar with DevOps Management Practices

The Agile way of working has many advantages, some of which


are hard to quantify. Topics such as team dynamics, customer
involvement, and the feeling of product ownership are not easy to
measure. However, from a business point of view, some of the topics
that can be measured include:
— visibility: As Product Owner and business are involved with
product development regularly, for instance by attending the
Sprintly demo or by launching new shippable features regularly,
visibility of what to be delivered is far higher compared to the
traditional development methods. Parts of the product are
delivered regularly.
— risk: Optimization of product visibility lowers the risk. It
becomes clear early in the process whether the team is moving
in the right direction and building the right product. It is all about TIPS
feedback and using this feedback to lower risk.
Continuously delivering a
— Business value: By delivering a shippable product at the end product also helps from a security
of each Sprint, the product can be used to generate business perspective as defects and
value throughout the product development cycle. Features are vulnerabilities are fixed faster.
prevented to avoid getting ‘stuck’ in the development cycle Building just the functionality that is
and are shipped straight away. The approach contradicts the used by the customer helps keep the
“traditional way of working,” where the product is shipped only “risk-surface-area” (usually the code
near the end of the project, preventing the team from considering amounting to functionalities seldom
the valuable feedback of the end-customer through the software or even never used) to a minimum.
development cycle.

From a security perspective, having the ability to deliver a product


continuously places a positive impact on security-related topics, as
defects and vulnerabilities are fixed faster compared to the traditional risk-surface-area
quarterly release cycle. Building the limited functionality (that will
be used by the customers) leads to a minimum risk-surface-area.
Risk-surface-area refers to the
Moreover, the team will work more coherent towards securing quality
code amounting to functionalities
aspects of the product due to their focus on product delivery compared
seldom or even never used.
to performing activities, which in itself have no meaning.

Activity: Group Discussion: Waterfall vs Agile Management of Projects

Activity Time: 10 Minutes


List some projects that are managed using the Waterfall approach and some that are managed by
the Agile approach. Provide reasons for the same.

topic Summary
In this topic, you learned that:
— Agile is a product-focused, value-driven, iterative, and
incremental approach to developing software.
— The Agile teams are multidisciplinary teams with a variety of
skills. Members of such a team often exhibit multiple skills.

Copyright © 2020 │  143


Course Book | DASA DevOps Fundamentals

— The Agile manifesto focuses on choosing the activity that


provides more value in realizing the end product.
— Agile is an umbrella term for all the methods and methodologies
(frameworks) that satisfy the four values and the twelve
principles of the Agile Manifesto.
— The Scrum framework specifies that a product is built via a series 
of sprints, which are fixed-length iterations. Scrum focuses on 
three primary roles, three artifacts, and six events.
— An MVP can improve Agile project management planning by
ensuring the teams iterate intelligently.
— Some advantages of working Agile are visibility, risk, business
value, and security.

Knowledge check
q1. which is a characteristic of the Agile way of working?
a) Oneness

b) Project-Focused

c) Plan-Driven

d) Work-oriented

module SummArY

In this module, I have learned:

Make a list of key points that you have learned in this module.

144  │ Copyright © 2020


Module 6 | Getting Familiar with DevOps Management Practices

cASe StudY: eASY JourneY AIrwAYS – ASSIgnment 5

Activity: Assignment 5: Identifying Changes in the Current Processes

Activity Time: 10 Minutes


EJ Airways is planning a meeting with all service management process/function owners to discuss
necessary changes in the current processes. Prepare the agenda for this meeting. Keep in mind
that these process/function owners participated in a Lean course two years ago, and from that
perspective, they have scrutinized their processes.

NOTE
Reuse the results of the previous assignments.

cASe StudY: eASY JourneY AIrwAYS – ASSIgnment 6

Activity: Assignment 6: Adopting the Agile Manifesto

Activity Time: 10 Minutes


EJ Airways likes to encourage team members to use the Agile Manifesto as a checklist for
themselves and their teams. Which principles are likely to require the most attention?

Copyright © 2020 │  145


7
gettIng FAmIlIAr wIth
devopS technIcAl
prActIceS
DevOps Journey at the Fundamental Level – Where
are you?
DevOps - The DevOps for DevOps for Teams
DevOps Practices The Next Steps
Context Individuals and Organizations

► Introducing ► Knowing DevOps ► Getting ► Getting Familiar ► Measuring the


DASA DevOps for Individuals Acquainted with with DevOps Performance -
Fundamentals DevOps Culture Management The Next Steps
and Behavior Practices
► Building the
DevOps Context ► Understanding ► Getting Familiar
the Value of with DevOps
DevOps for Technical
Teams and Practices
Organizations ► Enabling DevOps
Teams Perfor-
mance Through
Continuous
Delivery and
Automation

This module takes you further to the fourth step of your DevOps
journey - Devops practices - that you started in the previous module.

Copyright © 2020 │  147


Course Book | DASA DevOps Fundamentals

Module Objectives
At the end of this module, you will be able to:
 Explain the impact of DevOps on architecture.
 Describe the need for using microservice architecture.
 Explain “How to build systematic resilience?”
 Describe the role of modern infrastructure and cloud in the
DevOps world.
 State the relevance of monitoring and logging.

Module Topics
 Architecture
 Modern Infrastructure and Cloud
 Operations

ArchItecture

Aim of It Architecture: Functional and non-Functional


requirements
IT architecture aims at delivering value by providing a solution that
meets the needs of the stakeholders and the business.

Solution requirements
Functional requirements (Functionality) non-Functional requirements (Quality)
„ These are the primary requirements stated „ These are the secondary requirements that
by the stakeholders that describe the describe the quality characteristics/attributes
features and the behavior of a product. of a system.
„ Describes how a product should function to „ Some of the attributes include accessibility,
meet the given requirements. compliance, fault tolerance, autonomy,
portability, resiliency, maintainability,
testability, scalability, and reliability.
„ Defines the tasks a system should do to  „ If these requirements are ignored, the product/
deliver the required product/service. service does not function as expected.

Non-functional requirements sound much like those items that should


not function. This is not true. These requirements are not deliverable
but are indirectly linked to customer value. Therefore, a product should
meet these requirements as well.

148  │ Copyright © 2020


Module 7 | Getting Familiar with DevOps Technical Practices

Let’s understand the concept with the help of an example.


— Functional requirement of the System: Sending an email
whenever a certain condition is met, such as an order is placed,
and a customer signs up.
— non-Functional requirement of the System: Emails should
be sent with a latency of no greater than 12 hours from such an
activity.

role of non-Functional requirements in Building Qualities


Quality can be defined as the sum total of features (functionality) and
the inherent characteristics of a product that enable it to meet the given
requirements. Therefore, considering non-functional requirements
simultaneously with the functional requirements is essential to achieve
the required quality.

Traditional Approach Quality First


100 100
Other qualities (%)

Other qualities (%)

Functionality Functionality

Source: Practice to perfect, the quality first model, Bertrand Meyer, 1997

The traditional approach to developing products/services focuses on


the functional requirements first, which results in delivering a functional
(often unstable) system first. The non-functional requirements are
considered late in the development process when the bugs are
identified in the system.
In today’s era, when the focus is too much on the continuous delivery
of customer value, non-functional requirements should be considered
from the start of the development process. If this is not done, ‘broken’
features will be continuously added to the functional end product,
breaking the operational system as a whole.

Building Qualities through Smaller Services – the Impact


To achieve quality through Continuous Delivery, organizations focus
on delivering smaller services. These services should be independent
that can carry out a business function, without impacting other
business functions. Reducing the size of IT services is not always the

Copyright © 2020 │  149


Course Book | DASA DevOps Fundamentals

solution to decrease the number of issues and increase the quality, as


depicted in the following figure.

Traditional Approach Smaller Services


(Complex Architecture) (More Complex and Lower Quality)
S S S S S S S S
UI UI UI

S S S S S S
Business Services

To S S S S S S S
BPM ESB

Integrator Services S S S S S S S S

SAP Siebel DWH SAP Siebel DWH

Slow, Resource Hungry, and Expensive Slower, Worse, and More Expensive

UI: User Interface BPM: Business Process Management ESB: Enterprise Service Bus SAP: Systems, Applications, Products
DWH: Data Warehouse S: Smaller Service

Transforming a complex architecture to an architecture with smaller


services can be difficult to manage. Due to a larger number of smaller
services, the architecture can even become more complex. It makes
the changes to the application slow as it affects the entire system.
Even a small modification in the system can lead to redeveloping and
redeploying the entire application. Scaling specific functions of an
application might lead to scaling the entire application. As a result, the
ultimate goal of building qualities will fail.

Quality, complexity, and number of Services – the relation


The number of services is directly proportional to complexity, which in turn
is indirectly proportional to quality, as depicted in the following graphs.
Quality of Any System
Complexity

Number of Services Complexity

Number of Services and Complexity Complexity and Quality

150  │ Copyright © 2020


Module 7 | Getting Familiar with DevOps Technical Practices

The first graph shows when the number of services grows, the
complexity also grows. The second graph shows when complexity
grows, quality of the system, such as reliability, maintainability, or
scalability, falls down.

Building Qualities through microservice Architecture – the Benefits


Microservice Architecture (MSA) or microservices is an alternative
architectural style to a larger number of smaller services that help reduce
complexity. MSA helps build an application as a suite of small services,
each running in its own process and is independently deployable.

Smaller Services Microservices

UI UI UI UI

Business Services

MS MS
BPM ESB To

MS MS MS MS
Integrator Services

SAP Siebel DWH

Slow, Resource Hungry, Expensive Faster, Better, Cheaper

UI: User Interface BPM: Business Process Management ESB: Enterprise Service Bus SAP: Systems, Applications, Products
DWH: Data Warehouse MS: Microservice

INFO
Microservices are loosely coupled modular components that enable
continuous delivery/deployment of large, complex applications faster, faster, better, and cheaper
better, and cheaper. These also enable an organization to evolve its Many trends in the software
technology stack. development support the goal of
creating better software, faster and
Microservices are reactive. The four primary qualities of reactive cheaper, such as:
systems, according to Reactive Manifesto, are responsive, resilient, „ Agile Organizations: Dedicated

elastic, and loosely coupled (message-driven). teams over resourcing, products over
projects, prioritization over planning,
and outcome over output
„ Continuous Delivery: Cycle time

measured in hours or even minutes


„ Autonomous Teams: You build it,

you run it, shared something is more


important than aiming to deliver the
best quality
„ Reactive Manifesto: Responsive,

resilient, scalable, and loosely-


coupled (message-driven) systems
that are easy to develop and change
„ Platform as a Service (PaaS):

Cheap, easy, and fast runtime


environments for apps
Copyright © 2020 │  151
Course Book | DASA DevOps Fundamentals

guidelines to developing Faster, cheaper, Better


microservices

Primary Guidelines for Developing MSA

Autonomous System Simplicity Low Coupling/High


Cohesion
► The system should have ► The system should
services that can indepen- have a minimum number ► The system should have
dently deliver business. of components and low coupling between
interactions. services.
The system should follow
► the end-to-end principle ► The system should be as ► The system should have
from data storage (back- simple as possible, but it high cohesion within
end) to user interface does not mean simpler. services.
(front-end) functions.

There are many common guidelines for MSA, but on a high level the
most important ones are:
— Autonomous Systems:
{ Ability to deliver business value, independent of other
services
{ End-to-end from data storage to user interface functions
— Simplicity:
{ Minimum number of components and interactions
{ As simple as possible, not simpler
— Low Coupling/High Cohesion:
{ Low coupling between services
{ High cohesion within services

152  │ Copyright © 2020


Module 7 | Getting Familiar with DevOps Technical Practices

characteristics of mSA
An organization should use MSA to avoid the complexity associated
with smaller services.

Characteristics of MSA

Organized Smart
Componentization Products not Decentralized
Around Business Endpoints and
via Services Projects Governance
Capabilities Dumb Pipes

Decentralized Infrastructure Design for Evolutionary


Data Automation Failure Design
Management

By James Lewis and Martin Fowler

MSA is an approach to developing a single application as a suite of


Conway’s Law
small services, each running in its own process and communicating
with lightweight mechanisms. MSA does not have any specific Any organization that designs
definition but shares some standard characteristics around the a system (defined broadly) will
organization, business capability, automated deployment, intelligence produce a design whose structure
in the endpoints, and decentralized control of languages and data. is a copy of the organization’s
The preceding figure lists these characteristics. Let’s discuss these in communication structure.
little detail.
By Melvin Conway, 1968
— Componentization via Services: A component is an
independent replaceable, upgradeable, deployable, cloud-
ready, and scalable unit of software. Using services as
components provides a more explicit component interface.
— organized Around Business Capabilities: Microservices
are divided into services considering the business capability INFO
and Conway’s Law. These services make the teams cross- you build, you run it
functional, including the full range of skills necessary for the
Amazon appreciates the mindset
development, such as user experience, database, and project
of “you build it, you run it.” Its
management.
development team takes end-to-
— products not projects: The product mentality helps an end responsibility for the software
organization in connecting its teams and products with business in production. The approach enables
capabilities. The characteristic focuses on a team’s end-to-end them to know how their software
responsibility for a product throughout its lifecycle. Organizations behaves in production on a daily
can do this by encouraging the teams by providing the required basis, leading to enhancing their
freedom by appreciating “you build, you run it.” relationships with users.

Copyright © 2020 │  153


Course Book | DASA DevOps Fundamentals

— Smart endpoints and Dumb pipes: These are simple


interfaces, such as Enterprise Service Bus (ESB), used for
building communication structures between different processes.
ESB products usually incorporate advanced facilities for
message routing, choreography, transformation, and applying
business rules.
— Decentralized governance: Unlike centralized governance,
it does not support the standardization on a single technology
platform. However, standardization is not always a perfect
solution for each situation. Decentralized governance focuses
on using the appropriate tool to get the job done.
— Decentralized Data Management: Transactions help with
consistency but impose temporal coupling. The decentralized
management of data means having different conceptual data
models between systems. It is a common issue, when integrating
data across a large enterprise, for example, the sales view of a
customer can differ from the support view.
— Infrastructure Automation: Teams that build microservices
products or services make extensive use of infrastructure
automation techniques, such as Continuous Delivery and
Continuous Integration. These techniques help them ensure
everything works through automated tests and automated
deployments.
— Design for Failure: The unavailability of the supplier fails
service calls. It requires clients to respond to this unavailability
as gracefully as possible, detect the failures quickly, and restore
the service (automatically).
— evolutionary Design: The design focuses on creating
independent replaceable and upgradeable components. The
INFO approach supports rewriting a component, if required, without
Legacy Systems any impact on its contributors.
It does not necessarily mean these
versions of computer systems will be moving from legacy to Smaller Services
old. These are old compared to the Legacy systems are those systems that use an outdated version of
available upgraded versions. computer systems, programming languages, or application software.

Problem Reason Solution

► The challenge for IT ► Legacy systems ► The most suitable


organizations or often require high approach is to draw a
teams is effectively maintenance line between old and
modernizing software involving complicated new implementations,
development and modifications. where new implemen-
operations with the tations will utilize the
operational legacy much-desired DevOps
infrastructure. and Agile methodology.

154  │ Copyright © 2020


Module 7 | Getting Familiar with DevOps Technical Practices

what about legacy environments?

Problem Reason Solution


► Many organizations ► Difficult to automate ► Use evolutionary

prefer to adjust to the processes or architecture, an


the existing hard to services developed iterative approach
test or deploy through legacy to improve the
services to avoid systems. design of the
rearchitecting the enterprise system.
entire design of the
enterprise system.

oving fromEvolutionary
Legacyarchitecture
to Smaller Services
works (Contd.)
with the fact of rearchitecting
successful products and services during their lifecycle to meet the
varying requirements of customers.

rangler Pattern or Application


Strangler pattern or–Application
An Example of example
– An Evolutionary Architecture
of evolutionary
Architecture

Iterative Approach to Improving the Design of an Enterprise System

Strangler Pattern or Application

Customers Customers Customers

Dispatcher Dispatcher
Existing
Monolithic
Application Original Original
New New
Monolithic Monolithic
Module Module
Application Application

New New
Module Module

INFO
Source: http://continuousdelivery.com/implementing/architecture/
e: http://continuousdelivery.com/implementing/architecture/ Strangler Application
Strangler Application or Pattern is an example of evolutionary Copyright © 2020 | 14

architecture that uses an iterative approach to improving the design of Organizations prefer to use a
the enterprise system. It replaces the monolithic architecture iteratively Strangler Application over a cut-
with a more componentized one, as shown in the preceding figure. over rewrite due to reduced risk. A
During the process of iterative replacement, it ensures: Strangler Application gives value
steadily, and the frequent releases
— The new work done is as per the principles of Service-Oriented
allow monitoring its progress more
Architecture (SOA).
carefully. Using shorter release
— The new architecture well delegates to the system, it is replacing. cycles with Strangler, organizations
With time, more and more functionality keeps on adding to the new avoid a lot of unnecessary features
architecture, replacing the old system being ‘strangled.’ that cut-over rewrites often produce.
Copyright © 2020 │  155
Course Book | DASA DevOps Fundamentals

Organizations should design a new application with the mindset that it is


going to be strangled in the near future. Working with mindset helps them:
— Prepare for tomorrow’s legacy software today only.
— Enable the graceful fading away of today’s work.

designing resilient Systems: readiness for unexpected events


Resilient systems are designed to be available (or continue its
operation), might be with limited or minimum capability, under difficult
situations. Therefore, it is essential to have answers to the questions
related to developing a resilient system. Some of these include:

► What are the weak areas across the whole chain?

► Do we have single point of failure? If yes, what are these?

► What is the impact when it goes down?

► To what extent does the management and provisioning of the


automated environments avoid mistakes?
► Is the deployment process fully automated and does it prevent
configuration errors?
► Are individual components able to repair themselves or take
over tasks in order to contribute to the overall stability?
► To what extent is the testing process automated?

Keeping systems highly available and resilient to difficult situations


is not rocket science. It is all about preventing errors and automating
recovery actions, which require an in-depth analysis of the given
system and knowing its boundaries in different areas. Such an analysis
requires answering several questions. Some of these are listed in the
preceding figure. The overall performance of resilient systems comes
from multiple areas that it should cater to.

Group Activity:
Discussion: Group
High-Performing IT Structure IT Structure
Discussion: High-Performing
Activity Time: 5 Minutes
Activity Time: 15 Minutes
What are your ideas of moving from a legacy system to the more modern high-performing
What are your ideas of moving from a legacy system to a more
IT structure?
Architecture modern high-performing IT structure?

Modern Infrastructure
and Cloud

► Replace the legacy system.


Operations
► Interface with the legacy system.
► Continue with the legacy system.

156  │ Copyright © 2020


Module 7 | Getting Familiar with DevOps Technical Practices

topic Summary
In this topic, you learned that:
— Functional requirements are the primary requirements that
describe the features and the behavior of a product. Non-
functional requirements describe the quality characteristics/
attributes of a system.
— To achieve quality through Continuous Delivery, organizations
focus on delivering smaller services. However, reducing the
size of IT services is not always the solution to decrease the
number of issues and increase quality.
— The number of services is directly proportional to complexity,
which in turn is indirectly proportional to quality.
— Microservice Architecture (MSA) is an alternative architectural
style to a larger number of smaller services that help reduce
complexity. It does not have any specific definition but shares 
some standard characteristics.
— Evolutionary architecture works with the fact of rearchitecting
successful products and services, developed through legacy
systems, during their lifecycle to meet the varying requirements
of customers.
— Strangler Application or Pattern is an example of evolutionary
architecture that uses an iterative approach to improving the
design of the enterprise system.
— Resilient systems are designed to be available (or continue its
operation), might be with limited or minimum capability, under
difficult situations.

Knowledge check
q1. which of the following attributes are important for the
realization of the customer value?
1. Reliability
2. Resiliency
3. Scalability
4. Portability

a) 1 and 2

b) 1, 2, and 3

c) 1, 2, and 4

d) 1, 2, 3, and 4

Copyright © 2020 │  157


Course Book | DASA DevOps Fundamentals

modern InFrAStructure And cloud

modern Infrastructure: pets vs. cattle – the metaphor to


Symbolize Servers

pets vs. Cattle

In the old way of doing things, we treat our servers like pets, for
example Bob the mail server. If Bob goes down, it’s all hands on
deck. The CEO can’t get his email and it’s the end of the world.
In the new way, servers are numbered, like cattle in a herd. For
example, www001 to www100. When one server goes down, it’s
taken out back, shot, and replaced on the line.
By Randy Bias of CloudScaling

The pets vs. cattle metaphor is a useful way to think about IT operations.
It relates to managing servers. Manual system provisioning has
many similarities with keeping pets, and automated provisioning has
similarities with managing cattle.

how is managing pets similar to manual provisioning?

pets manual provisioning


Pets are given names, Servers are given distinct names.
such as Pussy and Tiger.
People raise them with The servers are handled manually,
proper care and love. which includes activities such as
updating and configuring the software.
INFO They are unique. Most systems become unique over
pet servers time as a result of the applied manual
software and configuration changes.
Some of the examples of pet servers
includes databases, mainframes, When they are unwell, When the server does not perform,
solitary servers, load balancers and the owners take them to its (unique) problems are analyzed
firewalls, big data, and stateful an animal health care for and fixed. Everyone notices the
proper nursing. unavailability of these servers.
applications.

You scale pet servers by making these big.

158  │ Copyright © 2020


Module 7 | Getting Familiar with DevOps Technical Practices

how is managing cattle similar to automated provisioning?

cattle Automated provisioning


Cattle are given numbers, Servers are assigned random numbers.
such as A001 and A002.
People manage them as They are managed as a group.
livestock.
They are identical. They are standardized. Software and configuration are defined
centrally and applied automatically to many systems.
When they are unwell, the When there is a problem with any server (or any server fails),
owners replace them with human intervention is not required. The servers can automatically
the other one. route around failures by restarting or simply replacing itself.
Therefore, no one notices the unavailability of these servers.

You scale cattle servers by creating more of these. INFO

Automate environments through desired State configuration cattle servers


All stateless applications are
Automating provisioning is about automating the different environments,
examples of managing servers like
especially the production environment. Desired State Configuration
cattle.
(DSC) is a useful approach to automating environments.

DSC specifies the desired software and hardware configuration INFO


of systems using a declarative model. It uses a simple standard DSC
approach to specify “how you want to configure a server or DSC is the single source of truth
workstation?” that is easy to maintain and understand. You do not for the various servers that you are
need to get into the details of “how the configuration should happen?” managing. It is like one server that
rules over all the other servers.

types of Architecture with dSc


You can have two types of architecture with DSC, pull and push, as
shown in the following figure.

Push Mode Pull Mode

Push System
Pull Server

Represents DSC Represents DSC Request

Copyright © 2020 │  159


Course Book | DASA DevOps Fundamentals

Let’s discuss the two types of architecture in brief.


push Mode
The system that holds the DSC pushes the desired configurations
(or triggers the desired state create/update event) to the managed
systems/servers to apply the desired state. The administrators are
responsible for pushing the desired configurations to the managed
systems/servers. So, only one-way communication is possible.
pull Mode
configuration drift The Pull server that holds the DSC gets the request of applying the
When manual updates apply to desired state from each of the managed system/server upon their
managed systems, there will be initialization or on set intervals of time (by default, the interval is of
differences between the desired 15 minutes). If the desired state is available, the Pull server applies 
configuration specification and the desired state to the requested managed system/server. So, the
the actual configuration of the communication is bidirectional.
managed system. This difference
is called configuration drift, which Automated provisioning with mutable Infrastructure
can lead to unexpected system
“In a traditional mutable server infrastructure, servers are continually
behavior and inconsistencies
updated and modified in place. In other words, these servers are
between managed systems.
mutable; they can be changed after they’re created.”

Managed System

Create Instance A
App v1.0
Specification 1 OS v1.0

Instance A Instance A
Update
App v1.0 App v1.1
OS v1.0 Reboot App v1.0
Specification 2
OS v1.0
Desired State

Configuration Drift Due to Manual Changes

Provisioning of Mutable Components

The quoted text is from https://www.digitalocean.com/community/tutorials/what-is-


immutable-infrastructure.

“Servers in mutable infrastructures can suffer from configuration


snowflake-like servers drift, which is when undocumented, impromptu changes cause
Snowflake servers are similar to servers’ configurations to become increasingly divergent from each
pets. They are servers that are other and from the reviewed, approved, and originally-deployed
managed by hand, frequently configuration. These increasingly snowflake-like servers are hard
updated and tweaked in place, to reproduce and replace, making things like scaling and recovering
leading to a unique environment. from issues difficult. Even replicating issues to debug them becomes
challenging because of the difficulty of creating a staging environment
By Hazel Virdó, Senior Technical that matches the production environment.
Writer, DigitalOcean
The importance or necessity of a server’s different configurations
becomes unclear after many manual modifications, so updating or
160  │ Copyright © 2020
Module 7 | Getting Familiar with DevOps Technical Practices

changing any of it may have unintended side effects. Even in the best
case, making changes to an existing system isn’t guaranteed to work,
which means deployments that rely on doing so risk failing or putting
the server into an unknown state.
With this in mind, the primary benefits of using an immutable
infrastructure are deployment simplicity, reliability, and consistency,
all of which ultimately minimize or eliminate many common pain points
and failure points.”
The quoted text is from https://www.digitalocean.com/community/tutorials/what-is-
immutable-infrastructure.

Automated provisioning with Immutable Infrastructure


“An immutable infrastructure is another infrastructure paradigm in
which servers are never modified after they’re deployed.”

Managed System

Create Instance A
App v1.0
Specification 1 OS v1.0

Instance A Instance B
Update
App v1.0 App v1.1
Destroy
OS v1.0 OS v1.0
Specification 2
Provision
Desired State

Provisioning of Immutable Components

The quoted text is from https://www.digitalocean.com/community/tutorials/what-is-


immutable-infrastructure.

“If something needs to be updated, fixed, or modified in any way, new


servers built from a common image with the appropriate changes are
provisioned to replace the old ones. After they’re validated, they’re put
into use and the old ones are decommissioned.”
The quoted text is from https://www.digitalocean.com/community/tutorials/what-is-
immutable-infrastructure.

“The concept for immutable infrastructure is to build the infrastructure


components to an exact set of specifications. No deviation, no
changes. It is what it is. If a change to a specification is required, then
a whole new set of infrastructure is provisioned based on the updated
requirements, and the previous infrastructure is taken out of service
as it is obsolete.
This concept is similar to what is happening in other industries like
consumer electronics. It is now very common for mobile phones to
have batteries that cannot be replaced, or storage that cannot be
upgraded. So instead of upgrading devices in the field, those devices
are now immutable and the whole device needs to be replaced. This
provides a level of consistency that makes support easier. Regardless
Copyright © 2020 │  161
Course Book | DASA DevOps Fundamentals

of the number of devices in service, you know exactly what the


specifications of each device are and can easily replace as-is in the
event of a problem.
The primary technology that makes immutable infrastructure possible
at any scale is virtualization (both software and hardware) across
networking, servers, and storage. Virtualization is at the core of
the modern data center, and makes cloud computing possible.
Provisioning and retiring physical hardware to accommodate for every
change is cost and time prohibitive. That is why mutable Infrastructure
has been the norm in all but the biggest companies, until very recently
when virtualization became commonplace. Containers (ex: Docker)
are the newest trend in the immutable infrastructure space, and they
are simply another layer of virtualization.”
The quoted text is from https://www.sumologic.com/insight/mutable-immutable-
infrastructure/.

continuous delivery for platform products

Continuous Delivery: An Optimized Flow of Software Delivery

► Improve quality
► Deliver right ► Test continuously
things fast and ► Reduce defects
often and costs
1 3 ► Continuous
► Output: product flow of code
Agile
Automated
Organization
Test

2 4

Automated Automated
Build ► Continuous Deployment
flow of code

► Improve quality. ► Release


► Compile and continuously (trust)
construct ► Release
continuously consistently
► Reduce defects
Indicates characteristics. and costs

Adopting the Continuous Delivery practice is equally important


for Platform teams especially, when they want to have automated
provisioning components. It enables Platform teams, like the
Business Systems teams, to optimize their delivery process using the
Continuous Delivery principles and provides them various features,
such as extensive version control, tracking, (automated) tests, and
automated rollout of the platform products.

162  │ Copyright © 2020


Module 7 | Getting Familiar with DevOps Technical Practices

what is cloud technology?


Cloud technology is the on-demand delivery of computing services EXAMPLE
over the Internet (the Cloud). With the pay-as-you-go pricing model,
the Cloud or computing services enable organizations to operate operate their business at lower
their business at lower costs. costs
Organizations can use Cloud
Some of the computing services include:
services to run their infrastructure
— Servers more efficiently and can even scale
— Storage it basis the changes in business
requirements.
— Databases
— Networking
— Software
— Analytics
— Intelligence

The ultimate aim of computing (or Cloud) services is to provide fast


innovation, flexible resources, and economies of scale.

cloud Service models


The three main cloud service models are Software as a Service
(SaaS), Platform as a Service (PaaS), and Infrastructure as a Service
(IaaS).

Software as
a Service (SaaS), which
provides applications
Software to users.
Applications

Platform as
a Service (PaaS), which
provides specialized software
Platform components and programming
Software Components tools to developers.

Infrastructure
as a Service (IaaS),
which provides computing
Infrastructure infrastructure resources as a
Servers, Computing Resources service to administrators.

Let’s discuss the characteristics of the three models.


— Software as a Service:
{ The cloud provider runs business applications.
{ Applications are accessible from a browser.
{ User-specific application configuration settings are limited.

Copyright © 2020 │  163


Course Book | DASA DevOps Fundamentals

— platform as a Service:
{ The consumer deploys applications on the cloud using
programming languages, libraries, services, and tools
supported by the provider.
{ The consumer has control only over the deployed
applications and application configuration settings.
— Infrastructure as a Service:
{ The consumer can provision processing, storage, networks,
Cloud Service Provider
and other fundamental computing resources.
A cloud service provider can be
a person, organization, or entity { The consumer controls over operating systems, storage, and
responsible for making a service deployed applications and has limited control for selecting
available to cloud consumers/ networking components (for example, host firewalls).
subscribers. A subscriber can be
a person or organization that traditional versus cloud (Shared) responsibility model
maintains a business relationship
The following figure displays how the responsibility is shared between
with cloud providers and uses
the organization (consumer/subscriber) and the Cloud service
their service(s).
provider.

Separation of Responsibilities
Cloud Computing

On-Premises Infrastructure Platform Software


(as a Service) (as a Service) (as a Service)
Subscriber

Applications Applications Applications Applications


Subscriber

Data Data Data Data


Resource owners

Runtime Runtime Runtime Runtime


Service provider

Middleware Middleware Middleware Middleware


Service provider

OS OS OS OS
Service provider

Virtualization Virtualization Virtualization Virtualization

Servers Servers Servers Servers

Storage Storage Storage Storage

Networking Networking Networking Networking

The traditional model (on-premises/private) is completed managed


by the organization itself. In IaaS and PaaS, the responsibilities are
partially managed by the service provider and the organization. SaaS
is mostly managed by the service provider with limited control to the
consumer (user preferences and configuration settings).

164  │ Copyright © 2020


Module 7 | Getting Familiar with DevOps Technical Practices

nISt cloud characteristics

Automated
consumer- centric search,
selection, and provisioning
On-Demand Self Service

Broad Network Access Five Essential Measured Service


Cloud service allows accessible Characteristics Metered resource usage with
connectivity to a range of devices of Cloud monitoring, reporting, and charging
and networks Computing mechanisms

Resource Pooling Rapid Elasticity


Shared resources for one or many Automated provisioning and scaling
tenants supporting different for one or many tenants
demand and supply capacity

Let’s discuss the five characteristics in detail.


— “on-demand Self-Service: A consumer can unilaterally
provision computing capabilities, such as server time and
network storage, as needed automatically without requiring
human interaction with each service provider. For example,
ATM.
— Broad network Access: Capabilities are available over the
network and accessed through standard mechanisms that
promote use by heterogeneous thin or thick client platforms,
such as mobile phones, laptops, and PDAs. For example, an
Executive travelling across continents/countries can access
latest updates to website and reports which are available on
laptops, tablets, desktops, and so on. Note that the device/
endpoint in this view is part of the network.
— resource pooling: The provider’s computing resources
are pooled to serve multiple consumers using a multi-tenant
model, with different physical and virtual resources dynamically
assigned and re-assigned according to consumer demand.
There is a sense of location independence in that the customer
generally has no control or knowledge over the exact location of
the provided resources but may be able to specify location at a
higher level of abstraction, such as country, state, or datacentre.
Examples of resources include storage, processing, memory,
and network bandwidth. For example, car pooling and taxi/cab
sharing.

Copyright © 2020 │  165


Course Book | DASA DevOps Fundamentals

— rapid elasticity: Capabilities can be rapidly and elastically


provisioned, in some cases automatically, to quickly scale
out and rapidly released to quickly scale in. To the consumer,
the capabilities available for provisioning often appear to be
unlimited and can be purchased in any quantity at any time.
— Measured Service: Cloud systems automatically control and
INFO
optimize resource use by leveraging a metering capability
Metering Capability at some level of abstraction appropriate to the type of service,
It is usually done on a pay-per-use or (for example, storage, processing, bandwidth, and active user
charge-per-use basis. accounts). Resource usage can be monitored, controlled,
and reported providing transparency for both the provider and
consumer of the utilized service.”
The quoted text is from NIST.

devops organizations Adopting cloud


Some of the implications of adopting Cloud in DevOps organizations are:
— A clear separation of responsibilities and accountability across
teams
— Self-service concepts required for optimized delivery of valuable
software to customers (Continuous Delivery)
— Data center optimization using extensive automation
— Standardization and productization of infrastructure components

In DevOps organizations, Business System teams use Platform


products autonomously through self-services. Therefore, DevOps
Platform teams can adopt cloud principles for their platform product
development. The various characteristics of Cloud help Platform teams
in enabling Business System teams to perform their job independently
with minimal/negligible interference.

Services required by devops Business System teams

Services required for Successful Services required for Successful delivery of changes
execution of Applications and tools
„ Application management self-services, „ Software source configuration/version 
such as backup restore, server restart, management self-services
and changing log levels
„ Test automation and reporting self-services
„ Logging self-services (aggregated)
„ Continuous Integration and reporting self-services
„ Monitoring self-services (aggregated)
„ Application deployment self-services
„ Billing services
„ Artifact sharing, validation (among other security),
and publication self-services
„ Test data syndication (or replication) self-services
(ensure volatile, anonymized production data is
available for certain types of tests)
„ Release orchestration self-services

166  │ Copyright © 2020


Module 7 | Getting Familiar with DevOps Technical Practices

Business System teams require platform capabilities or services for


the successful execution and delivery of their applications or products.
The preceding table lists some of these services.
Business System teams require various services to exploit the
products that enable them to perform an effective root cause analysis.
The analysis allows them to identify the activities (such as executing
a post mortem for production incident) that are essential to structurally
improve the system (incrementally).

devops platform teams as cloud Service providers INFO


Platform teams in DevOps organizations can best support Business Use Case
System teams by offering Cloud services. To meet the needs of It refers to a specific situation/
Business System teams as a Cloud Service Provider, they must ensure scenario during which a product or
that each product supports the two use cases, Request Products and service could potentially be used.
Use Products.

Request Products

Business System Teams Platform Team


A
P
I PaaS: Monitoring, Deployment, Logging,
Control, Service Discovery, Auto Handling
Team 1 Team 2 ........
IaaS: Security, Backup and Recovery,
Auto Update

Use Products

Request Products use cases refer to situations where Business


System teams acquire products through automated self-services. Use
Products use cases refer to situations where Business System teams
use the acquired products.
Suppose Business System teams need a database for their
application. The Platform team can create a self-service portal,
where the DevOps Business System teams can request a database
with a fully automated self-service. Once the database is created
(automatically), the Business System teams can use the database for
persistent storage of data.
DevOps Business System teams also require support tools to optimize
their delivery process based on Continuous Delivery principles. A
Platform team can also provide these tools as products. Acquiring
these tools (or products) can also be done using a self-service portal
and a fully automated delivery of the (tool) product. Once it becomes
available to the Business System teams, they can use the delivery

Copyright © 2020 │  167


Course Book | DASA DevOps Fundamentals

tool(s) to optimize their software delivery process. Note that these


delivery tool products can be classified as Software as a Service
(SaaS) products.
Developing automated self-services requires investing time and
money. Someone has to analyze the common tasks and define the new
standards for product development. Therefore, the automated nature
of the products requires profound standardization. A standardized
platform product can be used by many DevOps Business System
teams. Such a standardized platform product does not have any
application-specific characteristics.

different types of clouds to operate


Do DevOps organizations need Platform teams in the presence of
cloud service products?

deciding Factors (types of cloud)


private Cloud public Cloud
A private cloud gives a single Cloud consumer The cloud infrastructure is made available to
organization the exclusive access to and the general public or a large industry group
usage of the infrastructure and computational and is owned by an organization selling cloud
resources. services.
on-Site private outsourced private No need of Platform teams If you are planning
Cloud Cloud to use only public cloud services.
Build and manage Build and manage your
your cloud end-to- cloud by a third-party
end in-house. provider.

Each type of cloud has its own benefits and drawbacks considering
the business requirements. Other than the type of cloud, there are
other considerations that can be a deciding factor in choosing the type
Hybrid Cloud of cloud, such as cost, legal aspects, and unavailability of the required
Hybrid cloud infrastructure is organizational specific services as a public cloud service.
a composition of two or more
Organizations can also go by using the combined services of the
distinct cloud infrastructures,
different types of cloud known as the hybrid cloud. For example,
such as private and public, that
a Platform team can build a platform product for the middleware
remain unique entities but are
(platform as a service product in-house) and can go with using a
bound together by standardized
public cloud service for delivering a virtual machine that includes the
or proprietary technology that
operating system (IaaS product offered by a public cloud provider). In
enables data and application
the same way, a managed service provider (outsourced private cloud)
portability.
can choose to base their products on public cloud services.

Activity: Group Discussion: Identifying Cloud Services

Activity Time: 10 Minutes


What are the Cloud services that your organization is using?
What are the characteristics of these services? Identify the type of
service model.
168  │ Copyright © 2020
Module 7 | Getting Familiar with DevOps Technical Practices

topic Summary
In this topic, you learned that:
— The pets vs. cattle metaphor is a useful way to think about
IT operations. It relates to managing servers. Manual system
provisioning has many similarities with keeping pets, and
automated provisioning has similarities with managing cattle.
— DSC specifies the desired software and hardware configuration 
of systems using a declarative model. You can have two types
of architecture with DSC, pull and push.
— Components of mutable infrastructure, once created, can
be changed. On the other hand, components of immutable
infrastructure, once deployed, cannot be changed.
— Cloud technology is the on-demand delivery of computing
services over the Internet (the Cloud). The three main cloud
service models are SaaS, PaaS, and IaaS.
— The various characteristics of cloud are on-demand self-service,
broad network access, resource pooling, rapid elasticity, and
measured service.
— The various characteristics of cloud help Platform teams
in enabling Business System teams to perform their job
independently with minimal/negligible interference.

Knowledge check
q1. Consider the following characteristics of managing servers:
1. Most systems become unique over time.
2. No one notices the unavailability of servers.
3. Servers are managed as a group.
4. Servers have distinct names.

Which of the characteristics relate to manual provisioning?


a) 1 and 2

b) 1 and 4

c) 2 and 4

d) 3 and 4

operAtIonS

Automated provisioning concepts can be adopted by Platform teams.


continuous monitoring: the Key to understand what is
going on
DevOps puts a strong focus on transparency. Every IT organization
requires transparency to enable everyone to have a clear understanding
of what is going on in the system. Copyright © 2020 │  169
Course Book | DASA DevOps Fundamentals

Continuous monitoring helps generate greater transparency.


It helps to continuously ensure the health, performance, and
reliability of your application and infrastructure as it moves from
development to production.

ct P
A

la
n
Without complete
transparency, it would
Continuous be difficult to apply
Improvement
the “Plan, Do, Check,
Act” or PDCA rules of
Ch

continuous improvement.
ck
e

Do

With the introduction of continuous delivery, automated testing and


deployment, continuous integration, and others, the need for faster,
better, and integrated feedback and alerts has been growing. In
the absence of quick and integrated feedback from continuous
monitoring, it is difficult to identify the type of problems that can occur
and eliminate the potential root causes. Integrating this trend with the
end-to-end responsibility of product teams explains that the focus on
good monitoring is more than just the basic infrastructure level.

Scope of monitoring

Monitoring Infrastructure: It includes the basic level


of infrastructure monitoring, such as servers, storage
devices, load balancers, and networking.
Monitoring Platform: It includes monitoring the platforms
provided and used by the Platform teams (or Business
System teams) to run their applications.
Monitoring Application: Having a healthy infrastructure
and platform is not good enough for an application to
function correctly.

Monitoring Business: Monitoring should provide


feedback to the business at the earliest to take
corrective actions.
Monitoring the Monitoring: With the growing emphasis on
monitoring, the need to monitor the monitoring infrastructure
is growing.
Log Aggregation Monitoring: Tooling for log aggregation
is capable of using all the data to detect issues that might
have gone unnoticed.

170  │ Copyright © 2020


Module 7 | Getting Familiar with DevOps Technical Practices

monitoring optimized for devops

Monitoring should not DevOps teams are Visualize every- A single source
be an afterthought, end-to-end responsible thing, including speeds up solving
but a part of the and need the direct the real-time problems and
design of products feedback on the quality status of prevents unnecessary
and services. of their work. services. discussion.

Monitoring Alerts/Incidents Real-Time Single


Tool Agents Directly to Dashboards Point of Truth
Teams for All

Standardization Incorporate
Service Track Social
and Niche
Management Media
Tools
Data

Experimentation, Such a system and Social media is one of the


MVP, and courage knowledge provides a quickest ways to find out
are stimulated when great source of insight what customers are doing
niche tools are into the behavior of with our services/products
allowed. your users and in the market.
customers.

Monitoring requirements at various levels should be a part of the


service design from the initial stages. During the design phase,
the emphasis should be on automation. A good monitoring design
enhances the continuous improvement cycle and helps DevOps
teams to speed up their ability to resolve issues. Predictive monitoring
prevents systems from falling apart. As a result, customer satisfaction
will rise and business results will improve.

Copyright © 2020 │  171


Course Book | DASA DevOps Fundamentals

modern operations
The primary concepts of modern operations include machine Learning,
Site Reliability Engineering (SRE), and intelligent swarming. The
following figure shows the characteristics of these three concepts.

Primary Concepts of
Modern Operations

Machine Learning (ML) Site Reliability Engineering (SRE) Intelligent Swarming


Chatbots and self-service, Using software engineering Cross-functional, rotating
recommendation engines, techniques to achieve reliability, teams swarming to create
anomaly detection, ticket implementing Service Level more value, networks over
completion, intelligent Objectives (SLOs), eliminating toil, hierarchy, collaboration over
routing, predictive analytics, and defining error budgets escalation, and suitable not
intelligent and contextual only for major incidents
search, and smart
notifications

Let’s discuss the three concepts in detail.


— Machine Learning (ML)  is  one  of  the  fields  of  Artificial 
Intelligence (AI). It produces AI based on experience. It enables
IT systems to recognize patterns based on existing algorithms
and data sets and develop adequate solution concepts. In simple
words, ML depicts the ability of IT systems to find solutions to 
problems independently by recognizing patterns in databases.

The primary aim of ML is to allow the systems to learn


automatically without human intervention or assistance and
adjust actions accordingly. Enabling these systems to produce
solutions independently requires people to perform the following
two steps in advance:
{ Update the systems with the required algorithms and data
{ Define the analysis rules for the recognizing patterns in the 
data stock

These two steps are necessary to perform the following tasks


through ML:
{ Finding, extracting, and summarizing relevant data
172  │ Copyright © 2020
Module 7 | Getting Familiar with DevOps Technical Practices

{ Making predictions based on the analysis data


{ Calculating probabilities for specific results
{ Adapting to certain developments autonomously
{ Optimizing processes based on recognized patterns
— Site reliability engineering (Sre) aims at creating scalable
and highly reliable software systems by incorporating and
applying the aspects of software engineering to infrastructure
and operations problems. According to Ben Treynor, founder
of Google’s Site Reliability Team, SRE is “what happens when
a software engineer is tasked with what used to be called
operations.”

An SRE software system is highly automatic and self-healing. INFO


Therefore, a Site reliability engineer needs to divide their
work between operations and development tasks. Site Reliability Engineer
{ operations:  The  engineer  should  spend  around  50%  of  An ideal Site Reliability Engineer
their time doing operations work, such as issues, on-call, candidate can be a software engineer
and manual intervention. with sufficient administrative
knowledge or a highly skilled system
{ Development:  He  (or  She)  should  spend  the  other  50%  administrator with the knowledge
of their time on development tasks, such as new features, of coding and automation.
scaling, or automation.

SRE supports the DevOps way of working, and its principles


or characteristics are very much similar to DevOps principles,
such as:
{ Reduce organizational silos
{ Accept failure as normal
{ Implement gradual changes
{ Leverage tooling and automation
{ Measure everything
— Intelligent Swarming: Intelligent Swarming is a collaborative, INFO
Agile framework enabling organizations to align resources to
work. It is also known as collaboration on steroids. It involves
collaborative, Agile framework
the following two primary tasks: Intelligent Swarming is a
collaborative framework within the
{ Remove the tiers of support. Knowledge-Centered Support (KCS)
{ Call the collective expertise of a “swarm” of analysts, when methodology. The only difference is
required. that KCS focuses more on the content
part, whereas Intelligent Swarming
Intelligent Swarming focuses on the following two goals to compliments it by focusing on
enable collaboration: people.
{ Humans  are  naturally  collaborative  and  find  ways  to 
collaborate, despite hierarchies and escalation models.
{ Improve relevancy by understanding the customer who
raised the issue, the situation, and the responder.

Copyright © 2020 │  173


Course Book | DASA DevOps Fundamentals

As Intelligent Swarming focuses on people, therefore, its


objectives revolve around them only:
{ Perform skill assessment and utilization.
{ Optimize people’s ability to contribute (create value).
{ Increase engagement and loyalty for your customers and
your employees.
INFO { Improve customer success and realized value through
resolve requests improved problem-solving.

Intelligent Swarming framework Intelligent Swarming does not follow any linear way of escalation
provides a useful indicator to know and encourages collaboration to resolve requests. It matches
who to collaborate with and whom the request to the first person who is most likely to resolve it.
to approach for a specific request. The person owns the request until it is resolved.

logging: Stakeholders and usage examples


Logging is the process of creating an on-going record of application
events in the form of log files, also known as logs.

Stakeholder Agenda Activities


Auditing Building Audit Developing a trail of data for auditors to support them in
Trail performing their audits
Business Analysis Collecting data for Business Intelligence (BI) analysis to
understand customer behavior
Business Monitoring Identifying anomalies
DevOps Team Monitoring Identifying issues, trends, and anomalies
DevOps Team Troubleshooting Analyzing information and error messages to understand
what is happening in the Production environment
Security Tracking Access Tracking successful and unsuccessful access attempts
and intrusion detection

examples of Logs
Log files provide a tracking mechanism to review any event within a
system, or the usage of IT services by users and customers, including
failures and state transformations. Logs can be the source of important
data for everything from forensic analysis to audit records. Some of
the benefits of utilizing log data are as follows:
— Help identify the cause of performance problems.
— Enable DevOps teams to troubleshoot issues by analyzing
changes that resulted in error reporting.
— Act as a compliancy or security tool that helps serve the
stakeholders’ needs.

174  │ Copyright © 2020


Module 7 | Getting Familiar with DevOps Technical Practices

topic Summary
In this topic, you learned that:
— With the introduction of continuous delivery, automated testing
and deployment, continuous integration, and others, the need
for faster, better, and integrated feedback and alerts has been
growing.
— Scope for monitoring includes monitoring infrastructure,
monitoring platform, monitoring application, monitoring business,
monitoring the monitoring, and log aggregation monitoring.
— Monitoring requirements at various levels should be a part of
the service design from the initial stages.
— The three primary concepts of modern operations are Machine
Learning, Site Reliability Engineering, and Intelligent Swarming.
— Logging is the process of creating an on-going record of
application events in the form of log files, also known as logs.

Knowledge check
q1. what is a tracking mechanism that gives insight into the
usage of IT services by users and customers?
a) Logs

b) Measure

c) Monitoring

d) Automation

module SummArY

In this module, I have learned:

Make a list of key points that you have learned in this module.

Copyright © 2020 │  175


8
enABlIng devopS teAm
perFormAnce through
contInuouS delIverY And
AutomAtIon
DevOps Journey at the Fundamental Level – Where
are you?
DevOps - The DevOps for DevOps for Teams
DevOps Practices The Next Steps
Context Individuals and Organizations

► Introducing ► Knowing DevOps ► Getting ► Getting Familiar ► Measuring the


DASA DevOps for Individuals Acquainted with with DevOps Performance -
Fundamentals DevOps Culture Management The Next Steps
and Behavior Practices
► Building the
DevOps Context ► Understanding ► Getting Familiar
the Value of with DevOps
DevOps for Technical
Teams and Practices
Organizations ► Enabling DevOps
Teams Perfor-
mance Through
Continuous
Delivery and
Automation

This module completes the fourth step of your DevOps journey -


DevOps Practices.

Copyright © 2020 │  177


Course Book | DASA DevOps Fundamentals

Module Objectives
At the end of this module, you will be able to:
 Describe the impact of automation on software delivery processes.
 Explain the key principles of Continuous Delivery.
 Explain the Continuous Delivery focus topics.
 State the key benefits of Continuous Delivery.

Module Topics
 Software Delivery Automation Concepts
 Continuous Delivery Core Concepts
 Continuous Delivery Automation Concepts
 Continuous Delivery Automation Focus Topics

SoFtwAre delIverY AutomAtIon conceptS

Group Discussion: Impact of Automation on


Activity:
Routine Jobs

Activity Time: 5 Minutes


What do you interpret from the following graph related to the impact
of automation on routine jobs? What is the impact of automation
on software delivery?
Employment (persons, millions)

50

40

30

20

10

0
lan 1983
lan 1985

lan 1987

lan 1989
lan 1991

lan 1993
lan 1995
lan 1997

lan 1999

lan 2001
lan 2003

lan 2005

lan 2007
lan 2009

lan 2011
lan 2013

lan 2018

Nonroutine cognitive Routine manual


Routine cognitive Nonroutine manual

Job Trends in uS: routine vs. nonroutine, Cognitive vs. Manual

Source: Federal Reserve Bank of St. Louis

178  │ Copyright © 2020


Module 8 | Enabling DevOps Team Performance Through Continuous Delivery and Automation

routine jobs or repetitive tasks are most likely to get affected due to INFO
automation in IT. You can interpret clearly from the preceding graph
that the routine jobs, whether cognitive or manual, are not growing due
Routine jobs
to automation. Once the manual routine tasks are identified, these can The tasks that organizations
be automated with engineering tasks. outsource are mostly routine tasks.
Due to concepts of Continuous Delivery and Data Center/Cloud
Automation, organizations are in the process of automating routine
jobs involved in software delivery, such as installation and deployment
activities. Agile and Lean principles play a major role in identifying the
routine tasks in any business process.

charles perrow topology of technology

Routine Tasks
Programming Possible
Easy to Analyze
High

En
ly g
b De ineer
s sem sig ing
A k na
t i ne Tas nd Softw
u n e Co
Ro Li din are
g
Variability

Routine Tasks Low High


Nonroutine Tasks
Task Automation Shifts Tasks Analyzability
Few Exceptions Many Exceptions
Task

Cra
a rch
ft C s e
on e Re ent
Wo struc n
uti elop
m
rk ti on n r o ev
No nd D
a

Low

Nonroutine Tasks Task Variability refers to the


Programming Impossible number of exceptions to the
Difficult to Analyze standard procedures that are
encountered in the application
of a given technology. It helps
Charles proposed a framework/model to analyze organizational
to discover the various ways to
technology in 1967. He used the variability and analyzability of tasks
perform the given task.
as the means of differentiating technologies. Placing these two
dimensions, Task variability and Task Analyzability, in a 2x2 matrix Task Analyzability is a research
yields to four types of technology: process to find the most suitable
— Craft (Low variability and Low Analyzability): It yields to method to deal with Task
unpredictable outcomes. One of the examples of this technology Variability (or when an exception
is building construction. is encountered).

Copyright © 2020 │  179


Course Book | DASA DevOps Fundamentals

— routine (Low Analyzability and high variability): Traditional


manufacturing technologies that use assembly lines come
under this technology.
— nonroutine (Low variability and high Analyzability): It
includes tasks related to strategic planning and research and
development. One of the examples of this technology is space
engineering.
— engineering (high variability and high Analyzability): It
INFO requires in-depth knowledge of the technology to perform the
required tasks, such as designing and coding software.
predicted and standardized
outputs
Automation and devops
According to Joan Woodward,
technical complexity is the extent Highly programmed and automated processes result in predicted and
to which a production process can standardized outputs. The repeatable nature of automated processes
be programmed so that it can be helps minimize the cost of process execution. Therefore, organizations
controlled and made predictable. keep looking for automating processes/tasks as much as possible.

Performing
Organizations The routine engineering tasks
identify the routine tasks are automated requires an organic DevOps principles
tasks (High with engineering structure consisting help organizations
Analyzability and tasks (High of autonomous, to successfully
Low Variability) Analyzability and multidisciplinary, implement the
in the existing High Variability). self-organized, organic structure.
value stream. engineering teams.

Technological advancements are reshaping organizations by


automating more and more types of tasks. Let us look at a few of the
tasks that organizations these days prefer to automate to make their
business processes highly integrated and streamlined.

time-consuming Steps delivery process platform Standardization


„ Requires working with „ Results in automated „ Minimizes IT costs
multidisciplinary, self- installations and
„ Keeps the hardware and
organizing Agile teams configurations
software as consistent as
„ Helps to take out waste by „ Improves delivery speed, possible
applying Lean concepts quality, consistency,
„ Avoids compatibility
„ Results in the optimization reliability, repeatability,
problems
of technical interfaces scalability, and visibility
„ Prevents a lot of changes/
„ Reduces costs and turn
variations in the source
around times
(minimizes defects and
delays)

180  │ Copyright © 2020


Module 8 | Enabling DevOps Team Performance Through Continuous Delivery and Automation

Let’s discuss the tasks in detail.


— Time-Consuming Steps: One of the major focus of organizations
is to have optimized technical interfaces to provide a simple
and easy to use experience to the users. The first step in this 
direction is to automate the time-consuming steps of a process.
Identifying such steps requires teams to work in an Agile way
and apply the Lean concepts to take out unnecessary waste
from the current process.
— Delivery process: Organizations focus on automating the
delivery process to enable teams to focus more on engineering
tasks essential to deliver value to the customers. Ensuring an
optimized flow and applying Continuous Delivery practices helps 
organizations to keep on improving the quality of the product by
adding new features.
— platform Standardization: It helps reduce the burden of IT
teams and brings compatibility and consistency to the system.
Automating platform standardization enables organizations
to minimize a lot of changes to the source. Maintaining each
variation  in  the  source  requires  specific  procedures  that  are 
essential to keep track of changes (variations) to avoid defects.

everything as code: Journey of It Automation and


Standardization
Everything as code, as the name itself implies, is the concept of
having code behind everything, whether it is infrastructure, security,
compliance, and operations. (Automation)
The ultimate aim behind this concept is to treat everything as application
code and allow these to follow the same software development
lifecycle practices. (Standardization)

topic Summary
In this topic, you learned that:
— Placing the two dimensions, Task Variability and Task
Analyzability, in a 2x2 matrix yields four types of technology:
craft, routine, nonroutine, and engineering.
— Organizations automate routine tasks with engineering tasks,
which require an organic structure.
— Some of the tasks that organizations these days prefer to
automate to make their business processes highly integrated
and streamlined include time-consuming steps, delivery
process, and platform standardization.
— Everything as code is the concept of having code behind
everything, whether it is infrastructure, security, compliance,
and operations.

Copyright © 2020 │  181


Course Book | DASA DevOps Fundamentals

Knowledge check

q1. what does automating the routine tasks through engineering


imply?
a) High Analyzability and High Variability

b) High Analyzability and Low Variability

c) Low Analyzability and Low Variability

d) Low Analyzability and High Variability

contInuouS delIverY core conceptS

where does continuous delivery come from?


The concept of Continuous Delivery came from the Agile world. It is
the most important principle of the Agile Manifesto, which is:

Agile principle 1:
Our highest priority is to satisfy the customer through early and
continuous delivery of valuable software.

what is continuous delivery?

Continuous Delivery is a software development discipline where


you build software in such a way that the software can be released
to production at any time.
By Martin Fowler, ThoughtWorks

Continuous Delivery is the ability to get changes of all types—


including new features, configuration changes, bug fixes and
experiments—into production, or into the hands of users, safely
and quickly in a sustainable way.
https://continuousdelivery.com/

The ultimate aim of Continuous Delivery is to enable businesses to


Deployment Ready 24x7
deploy the development version of software/product into production
Gathering fast, automated at the touch of a button in a matter of seconds or minutes. It requires:
feedback on the readiness of
— Deployable software throughout its lifecycle: Continuous
systems due to any change made
Delivery requires a ready-to-deploy version of the development
to the software is quite easy at
software throughout its lifecycle. Therefore, the team working on
any point in time.
the existing or new features of the software needs to prioritize
their tasks to make it deployment (production) ready 24x7.

182  │ Copyright © 2020


Module 8 | Enabling DevOps Team Performance Through Continuous Delivery and Automation

— Push-button deployments: Push-button deployments enable


organizations to meet the business demand for Continuous
Delivery. These deployments, as the name implies, allow a
business or its users to initiate the automated deployment of
any version (deployment-ready) of the development software to
any environment as and when required.

continuous delivery and continuous deployment


Continuous Delivery is often confused with Continuous Deployment.
Continuous Deployment implies Continuous Delivery. However, the
converse is not true.

continuous deployment continuous delivery


Continuous deployment is the practice of Continuous Delivery just means that you are
releasing every good build to users—a more able to do frequent deployments but may
accurate name might have been “continuous choose not to do it, usually due to businesses
release.” preferring a slower rate of deployment. In order
By Jez Humble, ThoughtWorks
to do Continuous Deployment, you must be
doing Continuous Delivery.
By Martin Fowler, ThoughtWorks

Continuous Deployment ensures the changes to the software pass INFO


through the Deployment Pipeline before getting these in the production
environment. Continuous Deployment is all about deploying the Amazon, Netflix, and Etsy
software in the production environment as and when required 24x7. Amazon engineers deploy code on an
Companies these days even go for making deployments in minutes or average rate of 11.7 seconds. Netflix
seconds, for example, Amazon, netflix, and etsy. engineers deploy code thousands of
times per day. Etsy performs more
Deployment Pipeline than 50 deployments a day with
fewer disruptions.
One of the challenges of an automated build and test environment
is you want your build to be fast so that you can get fast feedback,
INFO
but comprehensive tests take a long time to run. A deployment Deployment pipelines are a
pipeline is a way to deal with this by breaking up your build into central part of Continuous
stages. Each stage provides increasing confidence, usually Delivery
at the cost of extra time. Early stages can find most problems A preferred way for organizations
yielding faster feedback, while later stages provide slower and planning to implement Continuous
more through probing. Deployment pipelines are a central part Delivery should be:
of Continuous Delivery.
Step 1: Model the existing delivery
By Martin Fowler, ThoughtWorks
process as a deployment pipeline.
Step 2: Analyze the pipeline for
What do you want at the push of a button? You can ensure this only bottlenecks, opportunities for
through the Deployment Pipeline, or you can say automation. Why? automation, and collaboration points.
The prerequisite for the Deployment Pipeline is automation only.
However, it is not at all necessary to automate everything in a go. The
preferred way is to start automating some parts of your build, deploy,
test, and release processes that might be the bottleneck in the current
scenario. You can then continue automating things gradually over time.
Copyright © 2020 │  183
Course Book | DASA DevOps Fundamentals

continuous delivery and continuous Integration

Continuous Integration is a software development practice where


members of a team integrate their work frequently, usually each
person integrates at least daily - leading to multiple integrations
per day. Each integration is verified by an automated build
(including test) to detect integration errors as quickly as possible.
Many teams find that this approach leads to significantly reduced
integration problems and allows a team to develop cohesive
software more rapidly.
Source: Martin Fowler, ThoughtWorks

Continuous Integration usually refers to integrating, building, and


testing code within the development environment. Continuous
Delivery builds on this, dealing with the final stages required for
production deployment.
Source: Martin Fowler, ThoughtWorks

Continuous Integration is a process that consists of the following two


steps:
1. Integrates (or merges) the code written by developers to a
central repository
2. Validates the integration of code through an automated build or
test

Let us explain what happens technically during Continuous Integration.

EXAMPLES The process includes a server that hosts a Continuous Integration


tool. The role of this tool is to keep an eye on the version control
Continuous Integration tool
tool. Whenever there are changes to the code and a check-in is
Some of the popular tools that can found, the Continuous Integration tool initiates a trigger for automated
be used for Continuous Integration compilation, build, and runs unit testing. It also includes some basic
include Jenkins, TeamCity, Tarvis level of static code analysis and automated security testing.
CI, Bamboo, Gitlab CI, CircleCI,
Codeship, and Integrity. continuous Integration, delivery, and deployment – the
Similarities
The three practices, Continuous Integration, Continuous Delivery,
and Continuous Deployment, are related to the software development
cycle with the same goal of making the software development and
release process faster and more robust.
The three practices strongly depends on the comprehensive
automation of the build, test, and deployment processes. Such
comprehensive automation requires effective collaboration between
everyone (developers, testers, DBAs, systems administrators, users,
and the business) involved in the process.

184  │ Copyright © 2020


Module 8 | Enabling DevOps Team Performance Through Continuous Delivery and Automation

continuous Integration, delivery, and deployment – the


differences
The three practices differ in the scope of automation, as depicted in
the following figure.

Continuous Integration

Deploy Deploy
Code Build Test UAT (Staging) (Production)

Automated

Continuous Delivery

Deploy Deploy
Code Build Test UAT (Staging) (Production)

Automated
Human
Decision
Continuous Deployment

Deploy Deploy
Code Build Test UAT (Staging) (Production)

Automated
Software Development Lifecycle

It is clear from the figure that:


— Continuous Integration is part of both Continuous Delivery and INFO
Continuous Deployment.
three practices
— Deployments to the production environment in Continuous Adopting any of the three practices
Delivery are manual (push-button deployments). involves significant costs. However,
— Continuous Deployment includes automated deployments to the benefits that these practices
production. In other words, the entire software development provide usually win over the cost
lifecycle is automated. involved.

Copyright © 2020 │  185


Course Book | DASA DevOps Fundamentals

principles of continuous delivery


According to the Jolt Award Winner book, Continuous Delivery by Jez
Humble and Dave Farley, there are eight principles of Continuous
Delivery.

7 Everybody Is Continuous
Responsible 8 Improvement
for the Delivery
Process 

6 1
Create a
Done Means
Repeatable,
Released
Reliable
Process for
Releasing
Software
Principles
of Continuous
5
Delivery
Build 2
Quality In
Automate
Almost
Everything

4 If It Hurts, Do It Keep 3
More Frequently, Everything
and Bring the in Version
Pain Forward Control

1. Create a repeatable, reliable process for releasing


Software: When you have different release processes in
different environments, you have to face several challenges to
solve  the  raised  issues  whenever  there  is  any  modification  in 
the software. You can avoid such issues by using a standard
release process (as simple as pressing a button) under all
environments. Repeatability and reliability depend on two
INFO principles, Automate Almost Everything and Keep Everything in
Benefits of Version Control: Version Control.
„ Makes it possible to identify the 2. Automate Almost everything: You cannot consider a manual
build of an application deployed process of deploying software as repeatable and reliable. Manual
to different environments. processes are more prone to errors and are less efficient. An 
„ Helps you know from where the automated process requires less effort for their execution and
different versions of builds of an monitoring. Therefore, spend efforts in automating repeatable
application originate. and manual tasks to bring reliability and consistency.
„ Enables team members (even a 3. Keep everything in version Control: A reliable source of truth
new one) to build and deploy an helps you create a stable foundation to build your processes.
application in any environment Therefore, keep track of changes related to building, deploying,
by executing the corresponding testing, and releasing an application using a version control
command(s). system. It helps everyone to refer to the changesets through

186  │ Copyright © 2020


Module 8 | Enabling DevOps Team Performance Through Continuous Delivery and Automation

a single identifier, such as a build number or a version control  EXAMPLE
changeset number. If It Hurts, Do It More Frequently,
4. If It hurts, Do It More Frequently, and Bring the pain and Bring the Pain Forward
Forward: Doing the same task every day, instead of doing it Consider an example of deploying a
occasionally,  helps  people  to  become  experts  of  that  specific  database schema. If this is tricky and
task and increase their productivity. Instead of ignoring or difficult for you, you would prefer not
avoiding  the  difficult  tasks,  put  your  efforts  to  perform  these  to do it. If it is essential, you would
more often. Doing the same task, again and again, helps you to prefer to perform it later or do it less
improve. As a result, the same difficult task will become easy for  number of times (might be once in a
you. Once you handle the painful areas, the rest will most likely month). This is human nature! In fact,
be easier to perfect. instead of ignoring the deployment,
5.  Build quality In: Resolving issues later in the process is
you should perform it more often
complicated and expensive. Therefore, look for issues early in
(might be once a day if possible) to
the process to develop high-quality code. Feedback loops help
excel in schema deployments.
in this direction by letting developers know about the issues as Everybody Is Responsible for the
soon  as  the  code  is  developed.  Identifying  and  fixing  issues  Delivery Process
during the development phase before executing the build is Everyone in the company should
easier. know that companies earn profits
6. Done Means released: Whenever anyone in the team says only when working products
DONE, it should mean the software/product is released in meeting the customer’s expectations
production.  The  definition  of  DONE  should  be  the  same  for  are in the production environment
everyone right from the start to have better communication and on time. Working with this mindset
realization of customer value. The ownership should not be is essential not only to increase
limited only to the assigned task like “It’s DONE. I have checked profits but also helps individuals to
in the code.” So, DONE implies the ownership of the entire team grow professionally. For example:
for a working product in the hands of the customers. „ When developing code,
7. everybody Is responsible for the Delivery process: “It is
developers should consider how
working on my system. It’s good to go from my side.” Should the
it will be deployed in production.
„ When doing project planning,
responsibility of team members be limited to their workstation
only? Of course, not. Anything which is working on anyone’s project managers should consider
workstation  is  not  going  to  contribute  to  the  company’s  profit.  deployment.
„ When testing the code, testers
Right! In the same way, if a team has no project plan, the
project will never be released. If it gets released, it will never should look for deployment
be  a  success.  Again,  no  profit  for  the  company.  Therefore,  defects with equal attention as
responsibility should extend all the way to production. Such a they do for code defects.
cultural change is hard to implement, but not impossible. With
Continuous Improvement
the required support from the management and an enthusiastic
champion, organizations can practice the culture of end-to-end Continuous Improvement is the
responsibility. most important practice for effective
automation.
8.  Continuous Improvement: Do not stop once the product is
released. There is always a scope to improve. Like practice makes
a man perfect, in the same way, continuous improvement is
an ongoing improvement of products, services, or processes
through incremental and breakthrough improvements. It helps
identify opportunities to enhance the quality of products or
streamline work and remove waste from the existing process.
Continuous improvement is also essential to keep your systems
up-to-date with the changing technology.

Copyright © 2020 │  187


Course Book | DASA DevOps Fundamentals

Fully Automated continuous delivery – the Focus topics


Considering the various business benefits that Continuous Delivery
provides, organizations can successfully adopt a fully automated
Continuous Delivery process using the six focus topics, as listed in
the following figure.

Focus Topics

1 3 5
Agile Automated Automated
Organization Test Provisioning

6 Architecture
2 4

Automated Automated
Build Deployment

Let’s discuss the six focus topics.


INFO — Agile organization: Agile organizations are known for the
fast and often delivery of right products. They do it to respond
Agile organizations quickly to the changes in the market to meet customers’ needs
Agile organizations focus on the as soon as possible. To achieve this, they have autonomous,
needs of their customers and do multidisciplinary teams who apply the combined principles of
not believe in offering standardized Agile and Lean.
products/services. They work toward
— Automated Build: The automated build is an automated process
customizing their products/services
of writing and committing code, scanning the code for errors,
basis the customer’s feedback.
compiling it, running automated tests, and reporting errors, if
any. When automated tests identify any errors, the development
team  receives  an  immediate  notification  to  fix  these  quickly. 
Some of the benefits of the automated build include Continuous 
Integration, improved quality, and increased predictability.
— Automated Test: Tests are performed before releasing the
product/software in the production environment to validate
whether it is functioning correctly and meeting customer’s
expectations. When such tests are performed through
automation using testing tools, these are known as automated
tests. These tests include a sequence of test scripts that testing
tools execute.
— Automated Deployment: It is an automated process of deploying
published deployment artifacts to different environments. It
includes various tasks to make the target machines ready for
deployment, such as:
{ Moving artifacts to the target machines
{ Configuring the target machines for the successful execution 
188  │ Copyright © 2020 of the software/product
Module 8 | Enabling DevOps Team Performance Through Continuous Delivery and Automation

{ Configuring the other components required to execute the  INFO
software successfully
Automated Provisioning
— Automated provisioning: It is the ability to deploy, update, Do not consider automated
and repair the complete application infrastructure (such as provisioning as a specific technology.
network components, server components, and runtime software It is a design philosophy to implement
stacks) using a predefined set of automated procedures. Such  the required specification-driven,
provisioning enables Development and Quality Assurance teams end-to-end automation.
to  operate  a  more  efficient  and  reliable  application  lifecycle 
by providing safe self-service capabilities for deploying and
managing their environments. Automated provisioning also EXAMPLE
enables system administrators in production environments to Software delivery process of
operate their applications with unachievable levels of efficiency  teams
and reliability. „ Whenever there is a need to change

— Architecture: The architecture of any system includes its the code, it is the architecture that
components, their relationships, and the way these interact with helps determine the complexing
each other. It is defined at various levels in an organization, such  of adopting that change.
as enterprise, business, application, and technical. Therefore, „ If the teams are highly coupled

architecture plays a key role in optimizing the software delivery due to cross-team dependencies,
process of teams. it will lead to low autonomy.

continuous delivery and devops

HOW? WHAT?

Agile CI/CD  DevOps 


Focus: Processes Focus: Software-defined Focus: Culture
Highlight: Change Lifecycles Highlight: Roles
Accelerate: Delivery Highlight: Tools Emphasize: Responsiveness
Emphasize: Automation
DevOps

Continuous
Delivery (CD)

Continuous
Integration (CI)

Agile
Integration and
Iteration
Automation

Software Development Lifecycle

Fully automated Continuous Delivery combines the Continuous


Delivery principles and its six focus topics. Such a Continuous
Delivery closely relates to DevOps concepts and principles. You can
Copyright © 2020 │  189
Course Book | DASA DevOps Fundamentals

say that the two complement each other. However, the two cannot be
considered as a part of each other. DevOps and Continuous Delivery
have different origins, and each of these might put more emphasis on
certain topics or aspects.
You cannot do DevOps. You can start with Agile development by
Continuous Integration (CI) upstream and Continuous Delivery (CD)
downstream. Success with CI and CD depends heavily on automation
as it helps save time, reduce defects, increase consistency, and
enable self-service. By automating CI and CD and encouraging open
communication and collaboration, organizations begin to dissolve the
gap separating the upstream from the downstream and establish the
foundation for a DevOps transformation.

Automated continuous delivery – the Benefits

More Productivity: Automation Faster Speed to Market: More


allows the software development frequent deployments to production,
team to delegate tedious and making the new features available to
repetitive tasks to tools. customers as soon as possible.

Lower Level of Risk: Identifying Faster Feedback: Faster speed to


errors/bugs in a small piece of code market implies faster feedback from
is easier to detect or fix. the customers.

Let’s discuss the benefits in brief.


— Faster Speed to Market: To stay in business in the competitive
TIPS world, organizations aim to provide a feature faster to their
Faster Speed to Market customers. Continuous Delivery enables the software delivery
team to have a feature ready for production and allows business
Do not consider speed as the only
users to deploy it as and when required.
success metric. If the product lacks
quality, releasing it in production — Faster Feedback: Faster speed to market implies faster
at speed will be of no value. It will feedback from the customers. The faster the customers start
be suicidal speed then. So, focus on using the new features, the faster you receive feedback about
responsible and valuable speed. it. The feedback helps organizations to know about what is
working, what is not working, and what the other expectations
INFO are. As a result, the software development team will have the
Faster Feedback requirements for the new feature.
Releasing a product starting from its — Lower Level of risk: Changes in software always involve a
minimal viable state and improving risk of introducing errors/bugs. If the deployment to production
by gathering feedback from the includes a small change in code, the Development team has to
customers gives them a feeling of co- go through a small chunk of code to identify the errors/bugs. In
ownership and loyalty. Consequently, addition, it is easier to rollback small changes, if required. On the
they are more likely to forgive when other hand, performing a deployment after a long period (say in
you stumble (in case of errors). a month) that involves the entire software or many new features

190  │ Copyright © 2020


Module 8 | Enabling DevOps Team Performance Through Continuous Delivery and Automation

is quite difficult. The Development team has to go through a lot 
of code, and identifying the errors/bugs will be more complex
and time-consuming.
— More productivity: Little human-intervention leads to increased
productivity. As a result, people can focus more on other
important tasks rather than getting stuck with the tedious and
repetitive tasks. Automation allows the software development
team to delegate such tasks to tools.

Activity: Exercise: Continuous Delivery Principles

Activity Time: 10 Minutes


How do the principles listed in the following table relate to the three processes: Continuous Delivery,
Continuous Deployment, and Continuous Integration?

principle continuous continuous continuous


Integration deployment delivery
Create a Repeatable, Reliable
Process for Releasing
Software
Automate Almost Everything
Keep Everything in Version
Control
If It Hurts, Do It More
Frequently, and Bring the Pain
Forward
Build Quality In
Done Means Released
Everybody Is Responsible for
the Delivery Process
Continuous Improvement

topic Summary
In this topic, you learned that:
— Continuous Delivery is a software development discipline
where you build software in such a way that the software can
be released to production at any time.
— Continuous deployment is the practice of releasing every
good build to users—a more accurate name might have been
“continuous release.”
— Continuous Integration is a software development practice
where members of a team integrate their work frequently,
usually each person integrates at least daily, leading to multiple
integrations per day.

Copyright © 2020 │  191


Course Book | DASA DevOps Fundamentals

— The eight principles of Continuous Delivery are:


1. Create a Repeatable, Reliable Process for Releasing Software
2. Automate Almost Everything
3. Keep Everything in Version Control
4. If It Hurts, Do It More Frequently, and Bring the Pain Forward
5.  Build Quality In
6. Done Means Released
7. Everybody Is Responsible for the Delivery Process
8.  Continuous Improvement
— The six focus topics of Continuous Delivery are Agile
organization, automated build, automated test, automated
deployment, automated provisioning, and architecture.

Knowledge check
q1. which principle of Continuous Delivery focuses on tracking
changes related to building, deploying, testing, and
releasing a software product?
a) Automate Almost Everything
b) Build Quality In
c) Create a Repeatable, Reliable Process for Releasing Software
d) Keep Everything in Version Control

contInuouS delIverY AutomAtIon conceptS

traditional Software delivery: A process of weeks or months


Traditional Phased Software Delivery Lifecycle

► Manual setup
► Inventory ► Manual tests and maintenance
► Wait (speed, defects, of systems (speed,
► Over processing timing) ► Manual defects, timing)
handover ► Manual setup
► Handover of and maintenance
1 3 of code and 5
documents documents of systems (speed,
Siloed Manual Manual defects, timing)
Teams Test Provisioning

6 Architecture
2 4

Manual Manual
Build Deployment ► Manual
► Manual
handover of handovers Servers
code and of apps,
documents documents,
► Builds on different ► Manual
and ► Inconsistent
systems deployments configurations
► Manual handover (speed, defects, systems
► Defects through wait timing) (configuration
drift, defects,
timing)
Indicates waste in the process. Indicates a manual process.

192  │ Copyright © 2020


Module 8 | Enabling DevOps Team Performance Through Continuous Delivery and Automation

In the absence of the Continuous Delivery approach, it is quite


common for the software delivery lifecycle to consume weeks or even
months. The delay is due to the lack of flow in the process because of
the various types of waste.

continuous delivery: A process of minutes

Continuous Delivery: An Optimized Flow of Software Delivery

► Increase setup
► Improve quality
► Deliver right speed
► Test continuously
things fast and ► Reduce cost
► Reduce defects
often ► Reduce defects
and costs
1 3 ► Continuous 5 ► Consistent
► Output: product flow of code
Agile systems
Automated Automated
Organization Provisioning
Test

6 Architecture
2 4

Automated Automated
Build ► Continuous Deployment ► Continuous Servers
flow of code flow of
apps and
configurations
► Improve quality ► Release ► Up-to-date
► Compile and continuously (trust) end-product
construct ► Release @ customer
continuously consistently
► Reduce defects
and costs
Indicates characteristics.

When DevOps teams work together to automate the various phases


of software delivery, such as build, deployment, provisioning, and
testing, through a deployment pipeline, it results in an optimized
flow. Automation enables developers to perform the various tasks
continuously throughout the delivery process, ensuring quality is
built into products and services from the beginning. It also enables
developers to remove the various phases of the traditional software
delivery lifecycle by incorporating integration and regression testing
into their daily work. The automation tools help developers to perform
regression testing and other tasks within a matter of minutes and
push software changes (code) to the production environment in
minutes.

Copyright © 2020 │  193


Course Book | DASA DevOps Fundamentals

INFO continuous delivery and devops team performance


Some of the characteristics of
DevOps is about high-performing IT. Therefore, the key area that
an optimized flow include high-
high-performing DevOps teams focus on is to have an optimized flow
performing DevOps teams, Agile
in the delivery process. Such a flow keeps enhancing the products by
way of working, maximum flow,
releasing one feature at a time (or a small chunk of code) and getting
automated build, automated
the early feedback.
testing, automated employment,
and automatic provisioning
and management of runtime
environments.
Continuous Iterative
Improvement Releases

► Work on the feedback ► Focus on one feature


immediately. at a time that involves
► Fail fast and in a smart way. small chunks of code.
► Learn from failures. ► Push release frequently.

Fast Feedback Loops

► Get early and true feedback of


the product’s value from the customers.

Continuous Delivery automation optimizes the software delivery


process in such a manner that it enables frequent releases of small
chunks of functionality or software features in minutes. Frequent
releases ensure getting regular feedback both from the delivery
process (quality delivered) and the customer (product value). Regular
feedback enables a team to incorporate the feedback rapidly in their
software. It also enables them to become a fast learning team and
optimize their output (performance) by following the principles of
failing fast, continuous improvement, and experimentation.

194  │ Copyright © 2020


Module 8 | Enabling DevOps Team Performance Through Continuous Delivery and Automation

Feedback loops in Software development

Agile Organization

Agile Agile QA
Team 1 Team 2
Infrastructure
DevOps
Team
........ Agile Dev Ops
Team N

Feedback Loop 1
1
Feedback on Build and Tests
Explains the internal
quality of software.
Feedback Loop 2
2
Feedback on Deployment

Feedback Loop 3
3
Feedback on Provisioning and Runtime Behavior
Explains the external
quality of software.
Feedback Loop 4
4
Feedback from Customers

Flow of Feedback on Software Delivery Process

A feedback loop is essential to reduce risk, improve quality, and INFO


ensure a better response to changes. The shorter the loop is, the
better the software/product will be. The preceding figure shows an internal quality
example of feedback loops for a software delivery process. The The internal quality of software
software development and delivery teams receive a lot of feedback relates to its structure or design, and
from different sources that they can utilize to optimize the current have a meaning for the development
delivery process. The feedback on build, tests, and deployments tells team. The lower level of internal
the team about the internal quality of the software. However, the quality means the lesser capability
feedback on runtime behavior and feedback from customers explains of software to adapt to the new
the external quality. changes in the future, which can
lead to refactoring, clear coding,
Fail Fast and often relentless testing, and more.
Failing fast is a non-intuitive technique that focuses on visible and INFO
immediate failure. Immediate failure results in early feedback and
more transparency, which helps make the software more robust. Bugs
external quality
are easier to find and fix, so fewer go into production. The external quality of software
relates to its functioning and checks
whether it is fit for purpose (delivering
the required customer value). It is
visible to customers and affects them
directly. On the other hand, internal
quality is invisible to customers and
affects them indirectly.
Copyright © 2020 │  195
Course Book | DASA DevOps Fundamentals

EXAMPLES
Failing fast
„ When there is missing
environment variable or start-
up parameters, instead of still
starting up the system normally FAILURE
or using fall-back strategy (fall- TRY
(Early Feedback)
SUCCESS
back to default environments/
parameters), the system should
fail and stop so that we can be
notified and fix the problem right
away.
Start End
„ When a client sends a request Failing Fast: A System of Immediate
with invalid parameters, instead and Visible Failure!
of silently correct the parameters
and continue handling the
“Some people recommend making your software robust by working
request, the server should let the
around problems automatically. This results in the software “failing
request fail so that client can be
slowly.” The program continues working right after an error but fails
notified and fix the problem as
in strange ways later on. A system that fails fast does exactly the
soon as possible.
opposite: when a problem occurs, it fails immediately and visibly.
„ Exceptions should never be
silently swallowed. Exceptions why Fail-Fast?
should only be caught when the Fail-fast makes bugs and failures appear sooner, thus:
catcher know how to handle it;
— Bugs it takes fare earlier to detect, easier to reproduce, and
otherwise, let the exception be
faster to fix.  
thrown outside. And let the app
crash if no part of the app knows — It’s faster to stabilize software.
how to handle it (An exception
— Fewer bugs and defects will go into production, thus leading to
caused by unexpected bugs).
higher-quality and more production-ready software.
https://dzone.com/articles/fail-fast-principle-in-
software-development — The cost of failures and bugs are reduced.

The longer it takes for a bug to appear on the surface, the longer it
takes to fix, and the greater it costs.”
Fail-fast is the principle behind many Agile practices, such as Test-
Driven Development (TDD) and Continuous Integration.
The quoted text is from https://dzone.com/articles/fail-fast-principle-in-software-
development.

196  │ Copyright © 2020


Module 8 | Enabling DevOps Team Performance Through Continuous Delivery and Automation

continuous delivery Automation – the Benefits

Let’s
summarize
the benefits of
automated
Continuous
Delivery. Optimized Team
Improved Time Delivery
to Market
The focus on continuous
Continuous Delivery enables teams to improvements helps team to optimize
make smaller releases to production the delivery process, thus enabling
more often. them to find the required solution to
remove obstacles in the Continuous
Limited Set of Delivery focus topics.
Changes
Negligible/
The focus of the team following
No Delays
the Continuous Delivery practice is on
smaller releases with a limited set Checking or troubleshooting
of changes. the limited code is easy compared
Reduced Number to releasing multiple features in a go.
of Defects Thus, Continuous Delivery helps
eliminate delays caused by severe
Limited set of changes defects.
in production leads to less
number of undetected
defects.

The various benefits of automating continuous delivery contribute to


faster, cheaper, and better delivery.
— Faster delivery as an automated task execution does not
depend on the availability of humans, so the wait time is
eliminated. It requires no human-to-machine interaction time
and reduces the need for (manual) meta tasks (like a review of
an installation document).
— Cheaper delivery as an automated task execution is more
reliable than manual task execution due to the following reasons:
{ Manual execution errors are expensive and might not be repeatable
detected immediately. Automated task execution
{ Automated task execution is more repeatable than manual requires standardization, based
task execution. on minimal required variations.
{ Automated task execution requires no human effort (which Every variation requires specific
is more expensive than machine time). procedures and maintenance.
— Better delivery as automation provides the following capabilities:
{ Results in predictable, standardized, reliable, and repeatable
outcomes Eliminates manual task execution errors
{ Results in faster feedback loops (test automation) leading to
early detection of defects in the process
{ Enables measurement-driven evaluation of the delivered
software features Copyright © 2020 │  197
Course Book | DASA DevOps Fundamentals

Activity: Group Discussion: Software Has to Flow

Activity Time: 10 Minutes


How does the software products flow in your organization from the
development and delivery point of view? How optimized is product
flow? What are the pitfalls that you see in the current flow?

topic Summary
In this topic, you learned that:
— Continuous Delivery means “software has to flow.”
— The key area that high-performing DevOps teams focus on is
to have an optimized flow in the delivery process. Such a flow 
involves keeps enhancing the products, releasing one feature at
a time (or a small chunk of code), and getting the early feedback.
— The feedback on build, tests, and deployments tells the
Development team about the internal quality of the software.
However, the feedback on runtime behavior and feedback from
customers explains the external quality of the software.
— Some  of  the  benefits  of  fully  automated  Continuous  Delivery 
are improved time to market, a limited set of changes, reduced
number of defects, negligible delays, and optimized team delivery.

Knowledge check

q1. Feedback during which phase of Software Development


Lifecycle helps enhance the external quality of your software
product?
a) Build

b) Deploy

c) Test

d) Provisioning

contInuouS delIverY AutomAtIon


FocuS topIcS

INFO Focus topics – An overview


Focus topics Focus topics, regardless of whether automated or not, help define
Out of the six focus topics of and implement Continuous Delivery practices. Organizations that
Continuous Delivery, four are have adopted or are adopting Continuous Delivery practices use
automated (2, 3, 4, and 5), and two a number of frameworks and tools for these topics to successfully
(1 and 6) are non-automated. implement Continuous Delivery.

198  │ Copyright © 2020


Module 8 | Enabling DevOps Team Performance Through Continuous Delivery and Automation

Focus Topics

1 3 5
Agile Automated Automated
Organization Test Provisioning

6 Architecture
2 4

Automated Automated
Build Deployment

The best fit solution for each organization depends on the application
and infrastructure technology, DevOps maturity, and the problem/
business domain.
This topic focuses on the automated focus topics.

Automated Build: An Automated Flow in Software


package delivery

TEST

Automated
Build Process
UAT

Deployment Pipeline
PROD

Team Members Different


Committing Code Environments
Changes
Enabling Automated Software Package Delivery
Flow Through Automated Build

UAT = User Acceptance Test and PROD = Production

Build automation is the process of automatically transforming the changes deployable components
in code to a collection of published deployment artifacts (or Deployment
Pipeline), which are the deployable components of your application
Deployable components are
software. The preceding figure depicts the automated build process.
always ready to be deployed in
different environments.
Copyright © 2020 │  199
Course Book | DASA DevOps Fundamentals

INFO Whenever changes in the code are committed by the Development


Build automation team, the automated build process performs the various tasks.
These are:
An automated build system usually
contains Source Version Control 1. Merge the new changes.
System, Continuous Integration 2. Analyze and compile the complete code.
Server, Code Quality Analysis and
Reporting, Artifact Repository, Build 3. Perform unit tests.
Tools, Static Analysis, and Unit Test 4. Assemble the code.
and Test Runner Frameworks.
5.  Create a new deployment package.
6. Publish it to an artifact repository.

The six steps are performed in a sequence, thus, enabling continuous


flow from the code commit to the validated deployment package.
The automated build is the first point of receiving feedback related to
the quality of your product/application software. It provides feedback
on the committed code changes. If there are errors in the code, the
build fails. The Development team rapidly takes the required actions to
fix the errors and executes the automated build process again. In this
way, automated build supports the concept of failing fast and often.

Automated test: merging Specification and verification


Several techniques are available today to automate the testing
process. Organizations can use any technique or combination of
techniques to perform automated testing. Two of the popular and
effective software development techniques that involve automated
testing are Test-Driven Development (TDD) and Behavior-Driven
Development (BDD).

tdd Bdd
During TDD, developers write During BDD, a product owner/
the automated test cases business analyst/QA defines
before writing the functional the user behavior before writing
pieces of the code. the automated test cases and
the functional pieces of code.
Both techniques, TDD and BDD, are popular in Agile
methodologies and end up with a shippable product at the end of
a sprint.

The various steps involved in TDD are:


1. A developer writes automated test cases/scripts considering the
given requirements.
2. The Development team executes the automated test case
against the currently developed functionality. All tests fail for the
first time in the absence of any functionality.
3. The Development team writes enough code to make the
automated test pass.

200  │ Copyright © 2020


Module 8 | Enabling DevOps Team Performance Through Continuous Delivery and Automation

4. The Development team refactor the code (without adding any


new functionality) to improve the quality.
5.  The Development team produces a tested deliverable at the
end of the sprint.

The various steps involved in BDD are:


1. A  product  owner/business  analyst/QA  defines  the  user’s 
behavior in simple English.
2. A developer (or concerned person) transforms the user’s
behavior to automated test case/script.
3. The Development team writes the code to implement the
required functionality.
4. The Development team refactor the code (without adding any
new functionality) to improve the quality.
5.  The Development team produces a tested deliverable at the
end of the sprint.

Automated deployment: Behind the Scene


Automated deployment is about automatic application deployments. Application deployments
It is the point where the two worlds (Development and Operations)
Application deployments
meet! You can also call it the confusion point as the two teams are
define the package of software
concerned about their own tasks. However, the flashlight should be on the
components that make up
PRODUCTION server, which can be described as “grown works of art.”
an application in a particular
Installing and
environment.
updating
applications INFO
confusion point
Scaling the Configuring Developers are concerned with their
application to resources and specific tasks, such as understanding
the enterprise middleware requested features, designing
level components components, writing code and test
cases, compiling code, and testing
code. Operators are concerned with
their specific tasks, such as installing
server hardware and Operating
Pro
Production
oduction
Software, configuring servers, network,
Verifying Server Starting/ and storage, monitoring servers,
the various stopping responding to outages, applying
components components security measures, and maintaining
disaster recovery protocols.

INFO
Configuring the
grown works of art
installed application
and systems like load An unknown number of ad-hoc
balancers and routers commands are executed often on
the production server over time.
what does an application deployment include?
Copyright © 2020 │  201
Course Book | DASA DevOps Fundamentals

Due to the lack of the complete understanding of the Production


environment, reproducing it becomes difficult. Restoring an
environment through backups will be an option, however, the success
will still be uncertain. How frequently do you verify your backup
strategy and assess the Mean Time to Recover (MTTR)? In addition,
it involves considerable efforts (the resources).
Restoring an environment through backups is manual and time-
consuming. You cannot even think of rapidly and reliably recreating
any environment on demand - from development to production – due to
the lack of flexibility and agility. Continuous Delivery, therefore, focuses
on automated push-button deployments to different environments and
ensures repeatability and reliability.

Automated deployment: minimizing Feature cycle time


The automatic, rapid, and reliable deployments of Agile software
DO YOU KNOW? products to the different environments help minimize feature cycle
time, which is the ultimate aim of Continuous Delivery. The automated
feature cycle time deployments through Agile development, thus, have the power to
Cycle time is also known as feature minimize the time that it takes from ideation of features to the final
cycle time or lead time. product at customers by reducing waste.

Business

Idea Feature Cycle Time Product @ Customers

Time-to-market is always the most important consideration. Being fast


in making the new feature available to the users requires you to be
faster in knowing its market acceptance. As a result, the organization
will also be faster in earning profits.

Automated provisioning
Automated provisioning is the ability to deploy, update, and repair the
complete application infrastructure (such as network components,
server components, and runtime software stacks) using a predefined
set of automated procedures. It usually takes a toolchain approach as
shown in the following figure.

202  │ Copyright © 2020


Module 8 | Enabling DevOps Team Performance Through Continuous Delivery and Automation

Command and Orchestration Application Deployment and


Control Service Management

Configuration Middleware System Configuration Management

Operating Operating System Installation


System
Bootstrapping
Image Launch
Infrastructure
(Cloud or Virtual Machine)

Automated Provisioning

The figure consists of three parts:


— Bootstrapping: Prepare any specific version of the operating 
system and have it automatically stamped out across multiple
machines, such as physical, local virtual machines and cloud-
based virtual machines. A variation of this step that has become
popular with the rise of cloud infrastructure is to “pre-bake” and
manage a library of mostly configured virtual machine images 
that can be copied and produced when required. There are
trade-offs with either approach.
— Configuration: After deploying the operating system, there is
still a considerable amount of work that needs to take place. You
must ensure that all of the OS, network, and security settings
are correct for each specific instance. You also must ensure that 
all of the correct versions of libraries and base packages are at
the required locations. This layer of automation also gives you
the ability to automatically spot and correct “configuration drift” 
or unintended changes as they take place.
runbook
— Command and Control: It is related to Orchestration, which
In a computer system or network,
“is concerned with coordinating actions that have to take place
a runbook is a compilation of
across multiple tiers (Web, application, database) and multiple
routine procedures and operations
servers to start, update, and manage the integrated system. Like
that the system administrator
the Configuration layer of automation, Orchestration must also 
or operator carries out. System
be specification driven. Dependencies and ordering are critical. 
administrators in IT departments
The Orchestration layer of automation can also provide the
and NOCs use runbooks as a
facilities and runbook necessary to speed ad-hoc management
reference. Runbooks can be in
and emergency troubleshooting.
either electronic or in physical
Automated provisioning enables Development and Quality Assurance book form.
teams to operate a more efficient and reliable application lifecycle by h t t p s : / / e n . w i k i p e d i a . o rg / w i k i /
providing safe self-service capabilities for deploying and managing R u n b o o k # : ~ : te x t = I n % 2 0 a % 2 0
their environments. Automated provisioning also enables system computer%20system%20or,or%20
administrators in production environments to operate their applications in%20physical%20book%20form.
with unachievable levels of efficiency and reliability.
Copyright © 2020 │  203
Course Book | DASA DevOps Fundamentals

Activity: Group Discussion: Continuous Delivery Focus Topics

Activity Time: 5 Minutes


How does your organization apply Continuous Delivery Focus topics?
Focus Topics

1 3 5
Agile Automated Automated
Organization Test Provisioning

6 Architecture
2 4

Automated Automated
Build Deployment

topic Summary
In this topic, you learned that:
— Build automation is the process of automatically transforming
the changes in code to a collection of published deployment
artifacts (or Deployment Pipeline), which are the deployable
components of your application software.
— Two of the popular and effective software development
techniques that involve automated testing are TDD and BDD.
— Automated deployment is about automatic application
deployments.
— Automated deployments through Agile development have the
power to minimize the time that it takes from ideation of features
to the final product at customers by reducing waste.
— Automated provisioning is defined as the fully automated delivery 
and maintenance of application environment components.

Knowledge check

q1. which focus topic of Continuous Delivery automatically


transforms the changes in code to a collection of published
deployment artifacts?
a) Automated Build

b) Automated Deployment

c) Automated Provisioning

d) Automated Test

204  │ Copyright © 2020


Module 8 | Enabling DevOps Team Performance Through Continuous Delivery and Automation

module SummArY

In this module, I have learned:

Make a list of key points that you have learned in this module.

cASe StudY: eASY JourneY AIrwAYS –


ASSIgnment 7

Activity: Assignment 7: Identifying Automation Maturity of EJ Airways

Activity Time: 10 Minutes


Automation maturity is low within EJ Airways. Analyze the situation by considering the following
aspects:
„ Which steps do you take first to enable continuous delivery?
„ What are the prerequisites?
„ What impediments do you expect?
„ Indicate each point as organizational or technical.

Copyright © 2020 │  205


9
meASurIng the
perFormAnce - the next
StepS
DevOps Journey at the Fundamental Level – Where
are you?
DevOps - The DevOps for DevOps for Teams
DevOps Practices The Next Steps
Context Individuals and Organizations

► Introducing ► Knowing DevOps ► Getting ► Getting Familiar ► Measuring the


DASA DevOps for Individuals Acquainted with with DevOps Performance -
Fundamentals DevOps Culture Management The Next Steps
and Behavior Practices
► Building the
DevOps Context ► Understanding ► Getting Familiar
the Value of with DevOps
DevOps for Technical
Teams and Practices
Organizations ► Enabling DevOps
Teams Perfor-
mance Through
Continuous
Delivery and
Automation

This module completes the last step of your DevOps journey – The
next Steps.

Copyright © 2020 │  207


Course Book | DASA DevOps Fundamentals

Module Objectives
At the end of this module, you will be able to:
 Analyze the existing situation of an organization.
 Take the necessary actions to improve its performance.

where and how to start?

The previous modules explained several concepts necessary for


the success of the DevOps team. Considering these concepts, you
know that you need to do a lot for the successful adoption of DevOps.
However, how and where to start is still the question? Right! This
module helps you answer this question.

Module Topics
 Analyze the Current Situation
 Improve Incrementally

The two topics are the steps that help you answer where and how to
start?

AnAlYze the current SItuAtIon

Step 1: map the context


The first step for analyzing the current situation is to study the existing
team composition from the DevOps perspective. You can utilize the
three design criteria for an autonomous team to do this analysis.

Basic Design Criteria for an Autonomous Team

1 3

Customer Technology Stack Knowledge


Define the customer Map the technology Recognize the
and the product or stack related to the knowledge or skills
service to be delivered product or service. required to deliver the
to the customer. product or service.

208  │ Copyright © 2020


Module 9 | Measuring the Performance - The Next Steps

DevOps requires organizing the teams from a new way. It requires


understanding the three factors or aspects (listed in the preceding
figure) as follows:
1. The value that customers derive from the different types of
services
2. The extent of the technology stack that is necessary to deliver
the service
3. Knowledge and skills required in the team considering the
defined value and the service(s)

Step 2: Assemble the team

Business System Teams

Storage Database System Network


Product Owner Testers
Developers Administrators Administrators Specialist

Identifying and knowing the knowledge and skills that the team requires is just the starting point
and brings with it several challenges.

Let’s discuss the challenges.


— understanding of expectations: It is necessary to ensure
each team member is product-focused and understands the
expectations of the new team—delivering the product or service
to the customer.
— purpose and goals: The task does not end up just forming a
team. It involves defining the purpose and creating challenging 
goals for the team to produce the required business value.
— Behavior and Beliefs:  One  of  the  most  difficult  aspects  is 
making people understand the value of throwing away the
old ingrained behaviors and beliefs, such as the production
environment is for the operations people.
— number of people: Finalizing the appropriate number of team
members is not as easy as it sounds. Ineffective measurement
can lead to unreliable or inaccurate calculation of workload.
Beware of inefficiencies inherent in the siloed way of working.

Copyright © 2020 │  209


Course Book | DASA DevOps Fundamentals

INFO — Intensive Knowledge-Sharing: The team members often carry


the experience of working in the traditional departments. Having
intensive knowledge sharing overlapping skills and knowledge within the team is, therefore,
Intensive knowledge sharing difficult. Team members can reach the desired level of skills and 
requires team members to focus on knowledge through intensive knowledge sharing.
continuous learning all their way to
work together following the DevOps Step 3: do the dASA competence Scan
principles.
The last step of analyzing the current situation is to identify the
competence improvement areas for each team member. The following
steps will help you perform this analysis.

STEP 1 STEP 2 STEP 3

Do the DASA Share results of Identify the


Competence the scan. improvements.
Scan.

Let’s discuss the steps in detail.


1. Ensure each team member do the DASA Competence Scan
using the following Web link: https://scan.devopsagileskills.org/.
2. Allow team members to share their scan results with the team.
Bringing the results of all scans help identify the existing
capabilities of the team.
3. Identify the improvement areas for each team member to help
them become more T-shaped. It enables the team to achieve
the capabilities required for producing the defined value.

topic Summary
In this topic, you learned that:
— Knowing  various  concepts  of  DevOps  is  not  sufficient  for  a 
successful DevOps transformation. “Where and how to start
with  it?”  requires  organizations  or  teams  to  first  analyze  the 
current situation by performing the following steps:
1. Map the Context
2. Assemble the Team
3. Do the DASA Competence Scan

Knowledge check
q1. how can an organization analyze the existing team
composition considering the Devops transformation?
a) Embedding the cultural elements
b) Following the basic design criteria for an autonomous team
c) Identifying the competence improvement areas for each
team member
d) Identifying and knowing the knowledge and skills that the
210  │ Copyright © 2020 team requires
Module 9 | Measuring the Performance - The Next Steps

Improve IncrementAllY

Step 1: train the team


Step 1: Train the Team
DASA offers a complete set of training that helps organizations
in acquiring the knowledge required to be effective in working in a
DASA offers a complete set of training that helps organizations in acquiring the knowledge
DevOps team and effective in leading these teams.
required to be effective in working in a DevOps team and effective in leading these teams.
the Current
Situation
Lead and Enable
LEADERSHIP

DASA DevOps DASA DevOps DASA DevOps


crementally
Product Owner Leader Coach
PROFESSIONAL
Know and Apply

DASA DevOps DASA DevOps DASA DevOps


Professional Professional Professional
Enable and Scale Specify and Verify Create and Deliver
FOUNDATIONAL
Know

DASA DevOps Fundamentals Starting Point

Copyright © 2020 | 11

The DASA competence model (the preceding figure) enables team INFO
members to achieve the desired level of capabilities required to be
working in a DevOps team. DASA competence model
You have already learned about the
Step 2: Focus on cultural elements competence model in Module 3 of
this course.
Forming teams is not sufficient. Working as a team requires its
members and leaders to focus on embedding the cultural elements.

Core Beliefs of a DevOps Team

Teambuilding and Continuous Courage and Leadership and


Collaboration Improvement and Experimentation Feedback
Problem-Solving

The four primary areas that a team needs to consider are:


— Teambuilding and Collaboration: Developing practices to
encourage collaboration and openness, such as standups,
retrospectives, and planning sessions
— Continuous Improvement and problem-Solving: Supporting
each other to address small problems or investigate big ones
regularly
Copyright © 2020 │  211
Course Book | DASA DevOps Fundamentals

— Courage and experimentation:  Defining  and  planning  the 


experiments to improve the flow of work through the team 
— Leadership and Feedback: Organizing customers’ feedback
to understand what think of the product or service

People often think embedding the cultural elements is quite simple.


However, moving away from traditional behavioral patterns is difficult
and requires time and dedication. The primary consideration is
ensuring openness within the team so that they can openly discuss the
value of the cultural elements. The other one is their will to adopting
the change in culture, ignoring its potentially disruptive effect.

Step 3: Improve the Flow of work


The ultimate aim of DevOps is to achieve high-performance (delivering
more value to customers more quickly and at a higher level of quality)
by improving the flow of work throughout the organization.

Without Flow

VA NVA VA NVA VA NVA VA NVA

With Flow

► Automate, Automate, and


Automate!
► Identify and Solve Problems
VA NNVA VA NNVA VA NNVA VA NNVA
► Remove Waste
► Increase Release Frequency
► Shorten Processes

Legend:
VA - Value-Add Activities; NVA - Non-Value-Add Activities; NNVA – Necessary Non-Value-Add

The concepts covered in this course directly or indirectly focuses on


the ultimate aim of DevOps. Automation, problem-solving, increasing
deployment frequency, and shortening processes require removing
waste (or non-value-add activities) from the service creation and
delivery system, leading to a significant decrease in the cost of
delivering the service.

212  │ Copyright © 2020


Module 9 | Measuring the Performance - The Next Steps

topic Summary
In this topic, you learned that:
— After analyzing the current situation, the DevOps transformation
focuses on improving incrementally by performing the following
steps:
1. Train the Team
2. Focus on Cultural Elements
3. Improve the Flow of Work

Knowledge check
q1. what is the primary success factor for embedding the
Devops cultural elements in a team?
a) Courage

b) Encouragement

c) Openness

d) Problem-Solving Attitude

module SummArY

In this module, I have learned:

Make a list of key points that you have learned in this module.

Copyright © 2020 │  213


case Study
eASY JourneY AIrwAYS
(eJ AIrwAYS)

Dream journeys do come true!

BAcKStorY

When we started EJ Airways 5 years ago, we only had 3 planes and 6 
pilots servicing short hop legs between 7 airports. Today, we operate
a  fleet  of  15  aircraft,  35  pilots,  and  a  supporting  aircrew  of  70.  Our 
customers, on an average, are increasing by 10% each year. We have 
managed to deliver quality services to more than 24 million customers
this year with more than 4,800 employees. 
Even with growing number of customers (expected to double its number
in the next 5 years), we ensure that our employee growth is the most 
economical to maintain our quality objectives. Our IT professionals,
no doubt, are capable to handle the increased number of customers,
employees, destinations, and aircraft. They have done a marvellous
job, and we expect them to keep up the momentum under the current
challenging situations.

Copyright © 2020 │  215


Course Book | DASA DevOps Fundamentals

Our focus is to become smarter to help our customers continue to


have an easy journey. In today’s highly competitive world, EJ Airways
will surely take brave steps to ensure its future as a leading airline
with global ambitions. No doubt, EJ Airways is committed to an
unprecedented transformation of its products and services.
We will continue to optimize our value streams and practices, this year
also, to become even more efficient, agile, and responsive. We benefit
from multiple strengths to support our transformation efforts, such as
innovation, openness, fighting spirit, close customer relationships, and
reliability, which are at the heart of our corporate culture and history.

our goAl

Offer a high-quality product with a personal touch that makes us stand


out. The core of EJ Airways is to provide friendly, reliable, and low-
cost air travel.

our vISIon

Deliver a personal and engaging flight experience from booking till the
customer returns home.

our mISSIon

EJ Airways is dedicated to the highest quality of Customer Service


delivered with a sense of warmth, friendliness, individual pride, and
Company Spirit using the latest technology. To achieve this, we aim at
making slick customers connections, minimizing cost, and providing
smart and easy journeys.

our Future

We will keep on encouraging creativity and innovation to improve the


effectiveness of EJ Airways. Using the latest technology, we will try to
minimize the cost without impacting our standards and eliminate the
waste at the check-in counters to reorganise our resources for the
more important purpose of maintaining customer relations. We will set
ourselves apart every single day by helping customers to reach to the
places, events, and people that are most important to them with great
comfort on time, every time.

216  │ Copyright © 2020


Case Study | Easy Journey Airways (EJ Airways)

our KeY goAlS

Considering the primary goal, some of the high-level key goals of EJ


Airways are:
— Safety: Our primary concern, no risk is worth a customer, crew
or employee’s life.
— Market reputation: Increase market reputation and position,
to that of world class, even on local hops.
— Competitive edge: Be more competitive through best
practices and innovative services and to select the right areas
for development to make the most of our investment.
— Customer experience: Be known for being customer centric
as their positive experience is paramount. It is essential for the
success to motivate and have committed people.
— Simplicity: Change the way we work, focus on simplicity in
organization, value streams, and processes.

our oBJectIveS
— Increase the connection and analysis accuracy of safety data
across industry partners and relevant government bodies
to improve access, reporting, and use of safety operational
information.
— With increased accuracy of safety reporting, identify and
manage potential and active threats to our customers, staff, and
company in faster timelines using more responsive methods.
— Increase collaboration between the PR department and other
departments of EJ Airways to ensure marketing campaigns are
consistent and fortified. 
— Improve the ways to gather customer satisfaction feedback and
reporting, and create a better management process to act on
the results.
— Achieve more than one million in bottom-line savings over the
next three years.
— Reengineer value streams, processes and technology where
required to minimize waste of time and resources used to
achieve outcomes.

Copyright © 2020 │  217


Course Book | DASA DevOps Fundamentals

whAt our people SAY

My mission is to There is never a dull


accompany everyone moment, something
throughout the ground new is happening every
experience ensuring day! My coworkers are
that it is as rapid and always happy and
serene as possible. ready to help out.

Elizabeth Walker, Station Keisha Baroney,


Agent at Central Airport Customer Service Agent

On every trip I work, I


We work hard, learn something new.
especially in the high It may be about our
peak fly periods, but overnight destination
I love the fun and or a trick to make our
support of working job easier and more
with the Baggage efficient. This job
Handling team. brings a smile to my
Kaelan Brown, face everyday. Jorgen Pettersen,
BHS Team Flight Attendant

AIrlIne ServIceS

The following services are available to support the customer journey:


— Online/Mobile Booking, Check-in, and e-Ticket
— Frequent Flyer Program
— Early Boarding
— Door-to-Hotel (Limo Service)

note: The organization, EJ Airways, is not fully mature. Some systems


might be missing, and you can consider this fact while working on the
assignments.

technologY SYStemS

The following systems are used by EJ Airways:


— Reservation Systems
— Check-in
— Baggage Handling
— Security
— HR-Admin System
— Financial System
— Project and Planning System
— Scheduling System

218  │ Copyright © 2020


Case Study | Easy Journey Airways (EJ Airways)

— Social Media and Collaboration Tools


— Mobile Booking App
— ITSM Systems:
{ Incident and Request Management
{ Problem Management
{ Change Enablement
{ Configuration Management

cmdB hIerArchIcAl Structure

Business Services
from IT

Flight Booking and Check-in Service Internet on Board


Reservation Service Service

Network Application Database Storage Supporting


Services Services Services Services Services

Hardware Software
Documentation Other
Components Components

Servers Application A Process A


Documents

Routers Application B SLA B


Documents

Switches Application C Underpinning C


Contract

… … … ...

ServIce mAnAgement vAlue StreAmS And


SupportIng prActIceS wIthIn It

Within the IT organization, the following IT service management value


streams/practices are implemented:
— Business Relationship Management/Service Level Management
— Supplier Management
— Availability, Capacity, Performance, and Service Continuity
Management

Copyright © 2020 │  219


Course Book | DASA DevOps Fundamentals

— Incident Management
— Problem Management
— Change Enablement
— IT Asset Management and Configuration Management
— Request Fulfilment
— Service Desk
— IT Operations
— Information Security Management

All of the practices mentioned are having a Practice Owner, who are
facilitating different value streams. However, the level of maturity is
unknown.

SocIAl medIA chAnnelS

EJ Airways is quite active on social media for different reasons, such


as:
— News Updates
— Vacancies
— Promotions
— Customer Comments and Queries
— Personal Messages from Board Members and Flight Crew

twitter

@EJAirlines

#bagdrop #InternetonBoard #EasyJourney #Funflights #findmybag #askEJA

Youtube
Our YouTube channel provides a great space not only to share our
vision and values with the customers but also to provide them tips
and services that explain what services are available and how to use

220  │ Copyright © 2020


Case Study | Easy Journey Airways (EJ Airways)

them. We also use this space to showcase our interesting and fun-
loving moments behind the scenes with staff that show how we look
after our customers at every step on their journey.

Facebook
EJ Airways also uses Facebook as a forum to share news and
promotional material. The forum is an active space to showcase EJ
Airway events, team photos, and achievements. It also acts as a Q&A
area for a more informal customers to communicate with us.
An essential point is that any particular incidents or requests made by
customers on this channel are recorded in our Customer Relationship
Management Systems (CRMs) to ensure that:
— We respond to the incidents within the service levels we
communicate on our website.
— The incidents are managed consistently across any interaction
channel we use.

orgAnIzAtIonAl chArt

Organizational Chart

Chief Executive Officer


- Jonas Masters

Chief People and Chief Operations Chief Legal and Chief Marketing Chief Finance Chief Investment Chief
Admin Officer Officer Regulatory Officer Officer Officer and Technology Commercial
Officer Officer
VP Personnel VP Flight VP Legal VP Marketing VP Finance VP Corporate
Management Operations Compliances VP Cargo
Development and IT
VP Sales
VP Training VP Regulatory (Domestic) VP Accounting and
VP Cabin Crew Financial Control VP International VP Ground
Authorities
Relations and Operations
VP Sales Alliances
VP Human VP Integrated (Region 1) VP General
Resources Operation Control Purchasing VP Investment VP Regional
VP Sales (Region 2) Management Flights
VP Social and Chief Finance Officer
Administrative Affairs
VP Production VP Catering and
Planning Inflight Products
VP Crew
Planning
VP Corporate
Communication

VP Corporate
Marketing and
Distribution Channels

EJ Airways’ internal IT department is working on:


— Developing and maintaining all applications that are not built by
partners/suppliers
— Connecting internally and externally with built applications

Copyright © 2020 │  221


Course Book | DASA DevOps Fundamentals

pArtnerS And SupplIerS

Airbuy Sky (AS)


Airline Reservation System (ARS)
We cannot imagine our partner EJ Airways without ARS. It is a direct
contact point for passengers. The system provides an unbeatable
flight experience by offering more flexible travel options with access
to the ancillary services, such as a comprehensive pool of hotels, car
rental, and insurance companies. ARS is not limited to just a receipt
of flight ticket. The seamless integration of this system has resulted in
minimum IT investment with maximum revenue generation from our
travel services to meet the passengers’ expected needs.
The Operations Manager and the PR Head of EJ Airways work closely
with our IT Service Desk Manager when their customers have any
issues. Unfortunately, at this time, the interface of the EJ Airways
ITSM System to log, track, and manage issues to resolution does not
meet the same criteria as per the fields in our Incident System. We
are working with them to come up with a solution that suits both the
organizations from the process flow and financial perspectives.

valise voyage (vv)


Baggage Handling System (BHS)
One of the systems at our airports to keep our passengers happy
is automated BHS. It is a kind of a conveyor system that transports
passengers’ baggage from ticket counters to airplanes, or vice-
versa. The function of this system is not limited to the automated
transportation of baggage. It also helps to sort the passengers’ bags
considering the information associated with them to get them to the
correct location in the airport.
The optimum performance of the successful integration of BHS is
the combined result of innovative systems, intelligent software, and
lifecycle services. It is the only supplier to offer and integrate all
advanced technologies, including robotics, security screening, vision
technology, and Radio-Frequency Identification (RFID).
With some recent software releases in our security screening
software, we have noticed that errors are increasing in the RFID
system. EJ Airways is also reporting to us that there are a number
of complaints about baggage either not arriving or being found at the
wrong destination. The two issues may be related.

view everywhere (ve)


Inflight Entertainment System and Connectivity (IFEC)
To those of us involved In-Flight Entertainment (IFE), these are
exciting times. The model of airline-selected Hollywood movies shown
on airline-supplied screens that has dominated IFE for its entire

222  │ Copyright © 2020


Case Study | Easy Journey Airways (EJ Airways)

existence (the first regular service was from TWA in 1961, but the first
ever in-flight movie was shown in 1921) is on the verge of complete
disruption.
Not very far into the future, travel technologists will be able to take for
granted passenger hardware and broadband connectivity in the airline
cabin. Solutions vary from hardware and wireless IFE (wIFE), or a
combination of these two.
Two things transforming IFEC are:
— Passenger-supplied consumer digital hardware
— Internet connectivity

EJ Airways is anxious to have our system in their Aircraft as soon as


possible. We know they have made their announcement but they have
yet to decide on a strategy, approve a business case, and select who
in their engineering and IT teams will be involved. We hope to work
closely with them as if we were a part of their own company. However,
we have to ensure that we protect our technology IP and any network
integration with EJ Airways IT is clearly defined and resilient against
cyber attacks.
In-flight internet has been slow, the first consumer product launched in
2004 but flopped because passengers didn’t have many Wi-Fi devices
and weren’t quite as they were not addicted to the Internet as we are
now. Plus, these systems require massive capital outlays and lots of
difficult engineering (just try and build a communications satellite and
put it in geostationary orbit for less than half a billion dollars).
But now in-flight connectivity is coming online in force. Just revealed
is a new rotating antenna which can provide high-speed connections,
which will support uninterrupted Wi-Fi, video streaming, and live TV
around the world. In-flight entertainment solution that lets airlines
customize their aircraft configuration for embedded IFE, overhead
IFE, wIFE or all three, whatever suits the airline’s route strategy.
IFEC,  now  serves  1,500  commercial  aircraft  and  is  upgrading  its 
network to LTE speeds. A new generation of satellites from ViaSat and
others is going online, promising real global broadband from a host of
resellers, including SeatA, LiveAir, and LiveTV.

Copyright © 2020 │  223


exam
preparation
guide

Module Learning Objectives


 Identify the structure of the exam.
 Indicate the key components of the exam.
 Practice the exam.

Topics Covered in This Module


1.  Qualification Learning Objectives
2. Learning Level of the Syllabus
3.  Certification
3.1 Certification Value
4. Exam Instructions
4.1 Exam Format
4.2 Types of Questions
4.3 Scoring System
5.  Tips for Taking Exam 

1. QuAlIFIcAtIon leArnIng oBJectIveS

The DASA DevOps Fundamentals qualification proves knowledge


and understanding of DevOps. The qualification holder:
— Explain the drivers responsible for the emergence of DevOps.
— Define and discuss the key concepts and principles of DevOps.
— List and explain the business benefits of DevOps and continuous 
delivery.

Copyright © 2020 │  225


Course Book | DASA DevOps Fundamentals

— Know how teams can translate DevOps principles into tangible


practices.
— Learn about modern operations in a DevOps context.
— Explain the concepts of automating test, infrastructure, build,
and deployment processes.
— Describe how DevOps relates to Lean, Agile, and ITSM
methodologies.
— Get insight into the various organizational DevOps models and
architectures.
— Identify how Cloud and Delivery Pipeline Automation optimize
and accelerate the ways of working.
— Discuss the critical success factors for DevOps transformation.

2. leArnIng level oF the SYllABuS

The modern version of Bloom’s taxonomy of learning is a widely


used classification framework for course syllabi and assessments
for certification. The taxonomy classifies learning into six ascending
levels.
Level 1—the Knowledge Level: Exhibit memory of previously learned
materials by recalling facts, terms, basic concepts, and answers.
Level 2—the Comprehension level: Demonstrate understanding of
facts and ideas by organizing, comparing, translating, interpreting,
giving descriptions, and stating main ideas.
Level 3—the Application level: Use new knowledge. Solve problems
to new situations by applying acquired knowledge, facts, techniques,
and rules.
Level 4—the Analysis level: Examine and break information into parts
by identifying motives or causes. Make inferences and find evidence
to support generalizations.
Level 5—the Evaluation level: Present and defend opinions by making 
judgments about information, validity of ideas, or quality of work based
on a set of criteria.
Level 6—the Creation level: Compile information together by combining
elements in a new pattern or proposing alternative solutions
The examination questions for the DASA DevOps Fundametal course
are based on blooms level 1 and 2 (Knowledge and Comprehension).
The DASA DevOps Fundamentals course is expected to provide a
foundation level of proficiency for a candidate. The examinations tests
this level. The examination format offers/will offer multiple choice
questions with a series of corresponding possible answers. Only one
answer will be correct.

226  │ Copyright © 2020


Exam Preparation Guide

3. certIFIcAtIon

DevOps Agile Skills Association (DASA) is the accreditor of this course


and intends to accelerate successful adoption of DevOps through
training and certification. In line with this, DASA aims to provide
the most comprehensive in-depth DevOps training and certification
program in the world.

3.1 certification value


You will receive the required certification from DASA on successful
completion of the DASA DevOps Fundamentals exam.

4. exAm InStructIonS

4.1 exam Format

prerequisites There are no prerequisite qualifications for signing up to do the


fundamentals exam
Supervised Live or Web Proctored
exam type Web-Based
exam duration 60 minutes (Additional 15 minutes for non-native English speaker)
pass Score 65% (26 or more correct answers)
Format of exam (open Closed book
book/closed book)
number of Questions 40

4.2 types of Questions


The foundation level exam is based on multiple-choice questions.
4.3 Scoring System
For all questions, the score is based on the correct answer.

5. tIpS For tAKIng exAm

In order to successfully take the exam, you are advised to keep the
following points in mind:
— Read the questions carefully.
— If you are stuck on a question, you should guess the most likely
option, mark the question, and come back to it at the end. This
way, you will at least have a guess answer if you run out of time.

Copyright © 2020 │  227


Course Book | DASA DevOps Fundamentals

— Use theoretical knowledge to answer the questions and select


the best option. Eliminate the distracters by using theoretical
knowledge and assessment of the information provided.
— When in doubt, you should guess—there is no negative marking.
Time is your biggest enemy. Calculate the time you have per
question, make a guess and move on to the next question if you
are not sure within the given time. Or start with answering all
the questions you know for sure and go back from the start to
answer the difficult questions.
— Where possible convert all questions to true/false statements. If
a question looks tricky then it is better to consider them as true/
false statements. You can do this to all objective questions by
considering each option separately.
— Remember:
{ Try to rule out any obviously incorrect options
{ Remember the BEST option is preferred when choosing
from multiple correct options
{ Favor look-alike options. Look for repetition of keywords
from the question in the responses. If words are repeated,
the option is worth considering

228  │ Copyright © 2020


mock exam

DASA DEVOPS
FUNDAMENTALS
Mock Exam
v2.1 - April 2020

© 2020 - DevOps Agile Skills Association

All rights reserved. No part of this publication may be published,


reproduced, copied or stored in a data processing system or
circulated in any form by print, photo print, microfilm or any other
means without written permission by DASA

229
Course Book | DASA DevOps Fundamentals

EXAM DETAILS

Exam Duration 60 minutes (Additional 15 minutes


for non-native English speaker)

Format of Exam (Open Closed book


book/Closed book)

No. of Questions 40

Pass Percentage 65% (26 or more correct answers)

230
Mock Exam

QUESTION SET

QUESTION 1
In a traditional setup, what should an organization do to
avoid problems that occur in production?
A. Encourage group discussions between Development
and QA teams in the earlier phases of product
development.
B. Encourage sharing the required information between
the Development and Operations teams.
C. Automate feedback from customers on usability
issues.
D. Develop knowledge articles for unknown issues.

QUESTION 2
Which way can help you dissolve the Wall of Confusion?
A. Advocating people to be end-to-end responsible for
delayed delivery or errors
B. Avoiding feedback loops to prevent delays
C. Implementing different ways to perform a given work
to ensure compatibility
D. Executing build rollbacks to maintain data accuracy

231
Course Book | DASA DevOps Fundamentals

QUESTION 3
How does DevOps help in reducing risk associated with
digital transformation?

1. Deploying often and in smaller, indivisible groups allow


engineers to troubleshoot and resolve issues faster.

2. Scalability could be quickly achieved, helping the business


stay ahead of the competition.

3. Security could be easily introduced to the software


delivery life cycle and helps save both time and effort.

4. Systems not only entertains the functional requirements


but also meets the nonfunctional requirements

A. 1, 2, and 3
B. 1, 2, and 4
C. 1, 3, and 4
D. 2, 3, and 4

QUESTION 4
Which DevOps principle focuses on increasing efficiency and
consistency in the product deployment process?
A. Customer-Centric Action
B. Create with the End in Mind
C. Cross Functional Autonomous Teams
D. Automate Everything You Can

232
Mock Exam

QUESTION 5
Which DevOps principle best supports the vertical
organization of teams?
A. Cross Functional Autonomous Teams
B. Continuous Improvement
C. Create with the End in Mind
D. End-to-End Responsibility

QUESTION 6
Which characteristic supports an open DevOps culture?
A. Removal of unnecessary bureaucracy
B. Individual technical specialists
C. Not taking risks during development
D. Stable systems that seldom change

QUESTION 7
Which DevOps principle has a high trust culture and the
avoidance of blame as key elements?
A. Automate everything you can
B. Cross-functional autonomous teams
C. Continuous improvement
D. Create with the end in mind

233
Course Book | DASA DevOps Fundamentals

QUESTION 8
Which of the following ways to measure success is
input-oriented?
A. Continuous Improvement
B. Leading Indicators
C. Performance Metrics
D. Survivorship Bias

QUESTION 9
When an organization decides to work the DevOps way,
what should be the logical next move?
A. Define measures that the organization wants to use to
track the progress.
B. Formulate the reasons why the organization wants to
apply DevOps principles.
C. Identify short-, medium-, and long-term goals that the
organization wants to achieve.
D. Implement built-in controls, audit trails, and risk-aware
and autonomous teams.

234
Mock Exam

QUESTION 10
Which descriptions best differentiate the I-shaped profiles
from the T-shaped ones?
A. I-shaped profiles are focused on functional disciplinary
skills, whereas T-shaped ones can apply knowledge
across situations.
B. I-shaped profiles are masters of a specific area
with knowledge across different domains, whereas
T-shaped ones are masters of multiple areas having
the capability to provide the overall holistic view of a
given situation.
C. I-shaped profiles are vertical lines (only specialism),
whereas T-shaped ones are horizontal (only
generalism).
D. The only point of difference between the two is the
capability to have effective collaboration across teams.

QUESTION 11
Which practice will you follow to facilitate a culture of
product thinking within the teams?
A. Allow people to fail safely.
B. Encourage customers to attend demos.
C. Let people figure out how to do things.
D. Use an instant sandbox environment.

235
Course Book | DASA DevOps Fundamentals

QUESTION 12
What is the role of Day Board in Visual Management?
A. Ensures the work is planned and agreed, and Key
Performance Indicators are defined.
B. Manages the progress of work using a simple setup or
a complicated approach.
C. Pushes team members to share solutions and learning.
D. Serves as a repository for comments from customers
and employees.

QUESTION 13
Which step of the DMAIC method defines and tests
hypotheses regarding the problem?
A. Analyze
B. Control
C. Define
D. Measure

236
Mock Exam

QUESTION 14
What are the behavioral trends of leading a team through
Central Command?

1. Decentralization

2. Informality

3. Obedience

4. Tight Rein (Imposed Discipline)

A. 1 and 3
B. 2 and 3
C. 2 and 4
D. 3 and 4

QUESTION 15
Which is the best way to grow a culture in which people pay
attention to the level of quality?
A. Create an environment in which it is safe to fail.
B. Eliminate handover moments.
C. Strive towards complete autonomy of the teams.
D. Test and deliver often to correlate test results to
recently performed tasks.

237
Course Book | DASA DevOps Fundamentals

QUESTION 16
Which dysfunction results in disappointed progress due to a
team of individuals?
A. Fear of conflict
B. Avoidance of accountability
C. Lack of commitment
D. Lack of trust

QUESTION 17
What is the “specialty oriented” characteristic of an activity-
focused organization?
A. Resources are added to specific resource pools
reflecting specialisms.
B. Resources perform one specific task in a chain of
events at a time.
C. Resources work on multiple projects at the same time.
D. The organization is structured for resource
optimization.

10

238
Mock Exam

QUESTION 18
Which are the process-throughput related issues in siloed
organizations?

1. Buildup of Work in Progress (WIP)

2. Difficult for resources to improve

3. Low responsibility for end-result

4. Too much product-focus

A. 1 and 2
B. 1 and 3
C. 1 and 4
D. 1, 2, and 3

QUESTION 19
What is the focus of the Technology Stack design criteria for
autonomous teams?
A. People who use the service
B. Responsibility of the business process
C. The knowledge and skills the team require
D. The team’s area of responsibility

11

239
Course Book | DASA DevOps Fundamentals

QUESTION 20
What is the characteristic of autonomous teams?
A. Communication between teams is unimportant as the
focus is on working independently from each other.
B. The teams are responsible for the qualities of their
products, such as availability and performance.
C. The teams operate collaboratively to deliver individual
packages of software changes.
D. There is proper methodical handover or transfer of
responsibility and accountability.

QUESTION 21
What are the complex dynamics that enterprises usually
deal with during the scaling process?

1. Complex Products and Dependencies

2. Emergent Practices

3. Experimentation

4. Turbulent Markets

A. 1 and 4
B. 2 and 3
C. 2 and 4
D. 3 and 4

12

240
Mock Exam

QUESTION 22
Which is the possible focus area of DevOps Business Service
teams?
A. Common strategy and governance
B. Close integration with the customers
C. Formal processes to manage services
D. Process Manager for ITIL processes

QUESTION 23
Which component of ITIL 4 Service Value System refers to a
set of organizational resources designed to perform work or
accomplish an objective?
A. Continual Improvement
B. Governance
C. Practices
D. Service Value Chain

13

241
Course Book | DASA DevOps Fundamentals

QUESTION 24
Which ITIL 4 practices are used by Business System teams
in their day-to-day activities?

1. Portfolio Management

2. Continual Improvement

3. Incident Management

4. Release Management

A. 1 and 2
B. 1, 2, and 3
C. 2, 3, and 4
D. 3 and 4

QUESTION 25
Which possible improvement can help organizations
improve the flow of work?
A. Creating flow through push
B. Determining work in progress
C. Making process policies explicit
D. Visualizing the MVP

14

242
Mock Exam

QUESTION 26
Which Lean principle focuses on evaluating all the activities
of the business process from the customer’s perspective?
A. Flow
B. Perfection
C. Pull
D. Value Stream

QUESTION 27
Which type of waste relates to a user story that is not yet
finished (as per the Definition of Done)?
A. Inventory
B. Overprocessing
C. Transportation
D. Waiting

QUESTION 28
Which product development approach is plan-driven and
starts with a complete design?
A. Agile
B. DevOps
C. Lean
D. Traditional waterfall

15

243
Course Book | DASA DevOps Fundamentals

QUESTION 29
What does the Agile Manifesto say about Customer
Collaboration?
A. Customer Collaboration over Comprehensive
Documentation
B. Customer Collaboration over Contract Negotiation
C. Customer Collaboration over Following a Plan
D. Customer Collaboration over Processes and Tools

QUESTION 30
How does the Agile way of working help organizations in
lowering risk?

1. Ensuring the team is moving in the right direction

2. Generating more business value on the longer term

3. Conducting feedback sessions in a continuous manner

4. Implementing powerful methods for IT delivery and


support

A. 1 and 3
B. 3 and 4
C. 1, 3, and 4
D. 2, 3, and 4

16

244
Mock Exam

QUESTION 31
What impact will decreasing the number of services have on
complexity as well as on quality of the service?
A. Complexity and quality will go up
B. Complexity and quality will go down
C. Complexity will go up, and quality will go down
D. Complexity will go down, and quality will go up

QUESTION 32
Which is a characteristic of Microservices Architecture (MSA)
that helps support the goal of creating better software,
faster and cheaper?
A. Autonomous Teams
B. Continuous Deployment
C. Lean Organizations
D. Software as a Service

QUESTION 33
Which characteristic of Microservices Architecture (MSA)
focuses on simple interfaces having no logic in between?
A. Componentization via Services
B. Evolutionary Design
C. Organized Around Business Capabilities
D. Smart Endpoints and Dumb Pipes

17

245
Course Book | DASA DevOps Fundamentals

QUESTION 34
Which characteristic of the automation element of
continuous delivery results in cheaper services?
A. Automation enables measurement driven evaluation
of the delivered software features.
B. Automation (with test automation) results in faster
feedback loops.
C. Automated task execution is focused on
standardization, based on minimal required variations.
D. Automated task execution does not depend on the
availability of humans.

QUESTION 35
Which characteristic would you expect in a non-optimized
software delivery process?
A. The flow of work through the teams has been
maximized.
B. The process is based on an organization with siloed
teams.
C. There is automated provisioning of runtime
environments.
D. Pushed software changes can be released in minutes.

18

246
Mock Exam

QUESTION 36
What do you call the creation of components of
environments by using pre-defined procedures that
are carried out electronically without requiring human
intervention?
A. Automated Build
B. Automated Deployment
C. Automated Provisioning
D. Automated Test

QUESTION 37
Which type of cloud service will you choose when you have
teams with diverse workloads?
A. Infrastructure as a Service
B. On-premise
C. Platform as a Service
D. Software as a Service

19

247
Course Book | DASA DevOps Fundamentals

QUESTION 38
What is the characteristic of automated provisioning of
mutable components?
A. Components can be changed once these are created.
B. Provisioned components are destroyed when new
changes are applied.
C. Delta upgrades of components are not considered.
D. Components are replaced instead of applying
changes.

QUESTION 39
Which monitoring strategy will you use to have insight into
the behavior of your users/customers?
A. Monitor tool agents baked into deployments.
B. Implement standardization when possible and niche
tools when required.
C. Incorporate the Service Management System (SMS)
or data, historical knowledge, and workflows in case of
alerts.
D. Implement a single platform (‘single point of truth’) to
know how an application is performing.

20

248
Mock Exam

QUESTION 40
What should organizations undergoing DevOps
transformation do when mapping the context during
situation analysis?
A. Assemble the teams to ensure team members
understand the expectations of the new DevOps
teams.
B. Conduct training to train the new teams for the
required knowledge and skills.
C. Define the customer and the product, map the
technology stack, and identify the knowledge required.
D. Improve the flow of work by shortening processes
through automation and removing waste.

21

249
Course Book | DASA DevOps Fundamentals

ANSWER KEY

QUESTION CORRECT BLOOM REFERENCE REFERENCE


NO. ANSWER LEVEL MODULE TOPIC
1 B 1 DevOps - The DevOps
Context Evolution
2 A 1 DevOps - The DevOps
Context Evolution
3 C 2 DevOps - The Business
Context Benefits of
DevOps
4 D 1 DevOps - The DASA DevOps
Context Principles
5 D 1 DevOps - The DASA DevOps
Context Principles
6 A 2 DevOps - The DASA DevOps
Context Principles
7 B 2 DevOps - The DASA DevOps
Context Principles
8 B 1 DevOps - The Goals and
Context Measurement
9 B 2 DevOps - The Goals and
Context Measurement
10 A 2 DevOps for From Roles
Individuals to T-shape
DevOps
Profiles
11 B 1 DevOps for Culture and
Teams and Behavior
Organizations

22

250
Mock Exam

QUESTION CORRECT BLOOM REFERENCE REFERENCE


NO. ANSWER LEVEL MODULE TOPIC
12 B 1 DevOps for Culture and
Teams and Behavior
Organizations
13 A 1 DevOps for Culture and
Teams and Behavior
Organizations
14 D 1 DevOps for Culture and
Teams and Behavior
Organizations
15 D 2 DevOps for Culture and
Teams and Behavior
Organizations
16 D 2 DevOps for Culture and
Teams and Behavior
Organizations
17 B 1 DevOps for Organizational
Teams and Models
Organizations
18 D 2 DevOps for Organizational
Teams and Models
Organizations
19 D 1 DevOps for Team
Teams and Autonomy
Organizations
20 B 2 DevOps for Team
Teams and Autonomy
Organizations
21 A 1 DevOps for DevOps at
Teams and Scale
Organizations
22 B 1 DevOps ITSM
Practices

23

251
Course Book | DASA DevOps Fundamentals

QUESTION CORRECT BLOOM REFERENCE REFERENCE


NO. ANSWER LEVEL MODULE TOPIC
23 C 1 DevOps ITSM
Practices
24 C 2 DevOps ITSM
Practices
25 C 1 DevOps Lean
Practices
26 D 1 DevOps Lean
Practices
27 A 2 DevOps Lean
Practices
28 D 1 DevOps Agile
Practices
29 B 1 DevOps Agile
Practices
30 C 2 DevOps Agile
Practices
31 D 1 DevOps Architecture
Practices
32 A 1 DevOps Architecture
Practices
33 D 2 DevOps Architecture
Practices
34 C 1 DevOps Continuous
Practices Delivery and
Automation
35 B 1 DevOps Continuous
Practices Delivery and
Automation
36 C 2 DevOps Continuous
Practices Delivery and
Automation

24

252
Mock Exam

QUESTION CORRECT BLOOM REFERENCE REFERENCE


NO. ANSWER LEVEL MODULE TOPIC
37 A 1 DevOps Modern
Practices Infrastructure
and Cloud
38 A 1 DevOps Modern
Practices Infrastructure
and Cloud
39 C 1 DevOps Operations
Practices
40 C 1 The Next Analyze
Steps the Current
Situation

25

253
Course Book | DASA DevOps Fundamentals

RATIONALS

QUESTION 1
Correct Answer: B

Rational: In the presence of Wall of Confusion, there is no


methodical hand-over to the Operations. As a result, the
Operations team faces problems in production that they
are unable to solve and look to the Development team for
resolving the problem. Such a feedback loop delays problem
resolution. Having healthy group discussions, sharing
information, and developing knowledge articles for the
known issues help avoid such a situation to occur.

QUESTION 2
Correct Answer: A

Rational: Option A is correct. For each error, bug, or resulting


incident, each team tries to ensure they are not identified as
the cause of the issue. Therefore, they tend to pass on the
blame of delayed delivery or errors to each other, leading
to further irritation, lack of understanding, and intensifying
the wall of confusion. Advocating the people to avoid blame
games and being end-to-end responsible is one of the key
ways that helps in dissolving the Wall of Confusion.

Option B and Option C will contribute in making the Wall of


Confusion stronger.

26

254
Mock Exam

Option D can be one of the solutions to ensure data


accuracy that might occur due to a variety of causes, such
as incorrect client requirements, incorrect database in the
QA or Production environment, incompatible tools and
others.

QUESTION 3
Correct Answer: C

Rational: The ways 1, 3, and 4 somehow contribute to


reducing the level of risk. Faster troubleshooting helps
organizations with minimum or negligible business
loss. Security is always a big risk factor. Focusing on
nonfunctional requirements along with functional ones helps
enhance the quality of the systems, thereby reducing the risk
of failure (more success rate of acceptance).

QUESTION 4
Correct Answer: D

Rational: Moving away from manual efforts to automation,


derives efficiency and consistency in the process.
Automation provides several ways to increase the speed,
reduce the cost, and enhance the quality of IT.

QUESTION 5
Correct Answer: D

Rational: In a DevOps organization, teams are vertically


organized so that they can be end-to-end responsible (fully
accountable) for their services.
27

255
Course Book | DASA DevOps Fundamentals

QUESTION 6
Correct Answer: A

Rational: The four key characteristics support an open


DevOps culture: no bureaucracy, no fear of asking questions,
risk taking, Innovating. Only option A supports this list.

QUESTION 7
Correct Answer: B

Rational: Cross-functional teams are required to collaborate


effectively to make DevOps work. Trust and avoiding a
blame culture are central to this.

QUESTION 8
Correct Answer: B

Rational: Performance metrics are typically output oriented,


easy to measure, but hard to improve or influence. These
metrics are known as lagging indicators. Performance
predictors are typically input oriented, hard to measure,
and easy to influence. These metrics are known as leading
indicators.

28

256
Mock Exam

QUESTION 9
Correct Answer: B

Rational: The first step in moving towards DevOps is to


formulate the reasons WHY your organization wishes to
apply DevOps principles. The second step is to identify
the short, medium and long-term goals you are trying to
achieve. The third step is defining the measures you wish to
use to identify whether you are achieving those goals.

QUESTION 10
Correct Answer: A

Rational:

• Option A is correct. I-shaped profiles have functional


disciplinary skills, which means specialist in a specific area.
T-shaped profiles have the ability to apply knowledge
across situations and are specialists in one or more areas.
• Option B is incorrect as I-shaped do not have the ability to
apply knowledge across different domains.
• Option C is incorrect as T-shaped profiles are not only
horizontal. They are the combination of both vertical and
horizontal.
• The point of difference between the two is not only the
capability to have effective collaboration across teams.
Please refer to the preceding points.

29

257
Course Book | DASA DevOps Fundamentals

QUESTION 11
Correct Answer: B

Rational: Some of the tips to facilitate a culture of product


thinking are:

• Encourage customers to attend demos.


• Implement user feedback into a storyboard.
• Allow customers to write about products and respond.
• Organize people around the product.
• Encourage the team to write blogs about products (you
build it; you run it).

QUESTION 12
Correct Answer: B

Rational: Visual Management includes the following three


boards. Each board has its own role, such as:

• The Day board is used to manage the progress of work


on a daily basis. The management can be done using the
simple “To Do-Doing-Done” setup or a more complicated
approach.
• The Week board is used to ensure the work is planned and
agreed. It is also a place where a team should discuss their
Key Performance Indicators (KPIs). Such a discussion is
preferred on a daily basis. However, if it is impossible, the
discussion should happen at least once a week. The board
also serves as a repository for comments from customers
and employees.

30

258
Mock Exam

• The Improvement board is where all the problems or


improvements initiatives are collected that need to be
solved or carried out. It is the place where the team
members should communicate and share solutions and
learnings. It also shows the progress on problem-solving.

QUESTION 13
Correct Answer: A

Rational: You cannot solve a problem, unless you first


Define it. Defining a problem includes describing the current
situation and why it is not acceptable. Therefore, you should
ensure the on-board stakeholders agree with the statement
defining the problem. You should then Measure the variables
that can influence the problem by collecting the related
data and facts. It is vital to ensure that the data is correct.
The next step is to Analyze the gathered data. Such an
analysis includes structuring and visualizing the data into a
format that will allow you to understand what the data is all
about and converting it into information. You can then use
the information to test hypotheses regarding the problem.
Having understood the dynamics of the problem, you can
now move on to the Improve phase, which defines potential
solutions to the problem. Once a number of solutions are
generated, decide the improvement to implement. After
ensuring whether a particular solution works, embed the
solution into the organization’s way of working in the Control
phase and share any lessons learned.

31

259
Course Book | DASA DevOps Fundamentals

QUESTION 14
Correct Answer: D

Rational:

QUESTION 15
Correct Answer: D

Rational: Testing is done to check whether the products


are meeting the acceptance and quality criteria from the
customers and users. When the test fails, then the team is
dealing with rework (waste). Creating good products and
services results in successful tests and helps to create a
culture to pay more attention to the level of quality. Other
options A, B, and C relate to the other areas of culture.

• Option A helps grow a culture of experimentation.


• Option B helps grow a culture of effectiveness.
• Option C helps grow a culture of product thinking.

32

260
Mock Exam

QUESTION 16
Correct Answer: D

Rational: Answer D is correct. Lack of trust between the


team members is like a team of individuals working together.
Such a team often results in disappointed progress.

QUESTION 17
Correct Answer: B

Rational: The characteristics of an activity-focused


organization include:

• Specialty Oriented: Resources are specialty oriented. In


other words, resources perform one specific task in a chain
of events at a time, such as updating a database.
• Functionally Organized: Resources are functionally
organized implying resources are added to specific
resource pools reflecting specialisms, for example, a pool
of database administrators.
• Project Focused: Resources work on projects with a
beginning and an end, and resources can be assigned to
multiple projects at once.
• Work with Individuals: The organization works with
individuals who are seen to be interchangeable.
• Optimized for Resource Utilization: This type of
organization is optimized for resource utilization.

33

261
Course Book | DASA DevOps Fundamentals

QUESTION 18
Correct Answer: D

Rational:

A. Incorrect. Delay in throughput might build up WIP.

B. Incorrect. For a person in a silo, it is hard to sense the


implications of his/her actions in another silo.

C. Incorrect. When software construction activities are


divided over multiple resources in different silos, a single
resource will not feel responsible for the end-result.

D. Correct. Product focus helps to focus on the end-result


and to improve the process towards the end-result.

QUESTION 19
Correct Answer: D

Rational: The following three design criteria for an


autonomous teams focus on:

• Customer:
• People who use the service
• Responsibility of the business process
• Technology Stack:
• The team’s area of responsibility
• Knowledge:
• The knowledge and skills the team require

34

262
Mock Exam

QUESTION 20
Correct Answer: B

Rational: Some of the characteristics of autonomous teams


considering the options provided in the question include:
• Interfaces between different teams are clearly defined
through Application Programming Interfaces (APIs).
• The teams are responsible for the qualities of their
products, such availability and performance.
• The teams operate (largely) autonomously and work
(largely) independently from one another to deliver a
continuous stream of (software) change.
• The teams have an end-to-end responsibility. There is no
handover or transfer of responsibility and accountability.

QUESTION 21
Correct Answer: A

Rational: When scaling, enterprises usually deal with


complex dynamics, such as:

• Turbulent markets and changing customer demands


• Complex products and dependencies between products,
systems, and teams
• Formal and informal social structures and communication
lines
• Multi-vendor/cloud landscapes
• Different blends of skills, attitudes, and behaviors
• Inevitable compliance and regulatory influences
The incorrect points 2 and 3 are the ways to deal with
scaling complexity, not the complex dynamics.
35

263
Course Book | DASA DevOps Fundamentals

QUESTION 22
Correct Answer: B

Rational:

• One of the challenges for DevOps teams is to maintain a


common strategy and governance.
• One of the focus areas of DevOps service teams is to
integrate closely with the customers to understand the
demand.
• Traditional organizations require formal processes to
manage services.
• Traditional organizations need a Process Manager for ITIL
processes.

QUESTION 23
Correct Answer: C

Rational:

• Continual improvement: Refers to a recurring activity


performed at all levels to ensure that an organization’s
performance continually meets stakeholders’ expectations.
• Governance: Refers to the means by which an organization
is directed and controlled.
• Practices: Refer to a set of organizational resources
designed to perform work or accomplish an objective.
• Service value chain: Is the operating model and refers to a
set of activities performed by an organization to deliver a
valuable product or services to its consumers.

36

264
Mock Exam

QUESTION 24
Correct Answer: C

Rational: Portfolio Management is usually done at a higher


level in an organization. The other three are focused on day-
to-day operational activities.

QUESTION 25
Correct Answer: C

Rational: Possible improvements which can help


organizations improve the flow of work are:

• Visualize the workflow.


• Limit WIP.
• Create pull and flow.
• Make process policies explicit.
• Improve collaboratively.

QUESTION 26
Correct Answer: D

Rational: Value Stream assesses if all the activities in the


process add value in the eyes of the customer. Flow creates
a continuous flow in production with the Just-in-Time
approach and reduces peak and low volumes. Pull triggers
the process chain in order to reduce stock. Perfection
focuses on first time right and quality prevention of defects.

37

265
Course Book | DASA DevOps Fundamentals

QUESTION 27
Correct Answer: A

Rational:

A. Correct. Such a story can be defined as WIP.

B. Incorrect. Overprocessing is related to more work or more


quality than is required by the customer.

C. Incorrect. In software development, transportation is


related to task switching.

D. Incorrect. Waiting is related to delay in general.

QUESTION 28
Correct Answer: D

Rational: Traditional way of developing products is plan-


driven and starts with a complete product design. The
development is followed by testing the final product. Agile
starts with delivering basic functionality to which features
are added. Lean provides tools to visualize the value stream
and measure it. Such measurements help improve the
delivery pipeline by eliminating bottlenecks, and making
it more efficient and productive. DevOps focuses on the
cultural aspects of developing a product.

38

266
Mock Exam

QUESTION 29
Correct Answer: B

Rational:

Agile Manifesto:

We are uncovering better ways of developing software by


doing it and helping others to do it. Through this work we
have come to value:

• Individuals & Interactions over Processes & Tools


• Working Software over Comprehensive Documentation
• Customer Collaboration over Contract Negotiation
• Responding to Change over Following a Plan
“While there is value in the items on the right, we value the
items on the left more.”

QUESTION 30
Correct Answer: C

Rational: Points 1, 3, and 4 helps in reducing the likelihood of


risk either directly or indirectly.

• Point 1: Ensuring the team is doing the right things


according to the direction is all about analyzing risk and
taking the necessary action(s) to lower the likelihood of risk
involved.
• Point 3: Conducting feedback in a continuous manner
is about learning from the mistakes and the feedback
received. The knowledge and experience further helps in
reducing risk.

39

267
Course Book | DASA DevOps Fundamentals

• Point 4: Implementing powerful methods for IT delivery


and support helps reduce the risks of being inefficient and
ineffective.
Point 2 is the only incorrect option as generating more
business value on the longer term is focused on generating
more revenue.

QUESTION 31
Correct Answer: D

Rational: Number of services is directly proportional to


complexity, and complexity is indirectly proportional to
quality. In other words, as the number of services goes
down, the complexity will also go down. As the complexity
goes down, the quality will go up.

QUESTION 32
Correct Answer: A

Rational: Many trends in the software development support


the goal of creating better software, faster and cheaper,
such as:

• Agile Organizations: Dedicated teams over resourcing,


products over projects, prioritization over planning, and
outcome over output
• Continuous Delivery: Cycle time measured in hours or even
minutes
• Autonomous Teams: You build it, you run it, shared nothing
is more important than aiming to deliver the best quality

40

268
Mock Exam

• Reactive Manifesto: Responsive, resilient, scalable, and


loosely-coupled (message-driven) systems that are easy
to develop and change
• Platform as a Service (PaaS): Cheap, easy, and fast
runtime environments for apps

QUESTION 33
Correct Answer: D

Rational:

• Componentization via Services: It is independently


deployable, cloud-ready, and scalable.
• Evolutionary Design: The design supports independent
replacement and upgradeability.
• Organized Around Business Capabilities: Organizations
are organized around business capabilities (MSAs) and
use Melvin Conway’s law.
• Smart Endpoints and Dumb Pipes: These are simple
interfaces having no logic in between, such as the
Enterprise Service Bus.

QUESTION 34
Correct Answer: C

Rational: Automating continuous delivery results in cheaper


services as:

• Automated task execution is more reliable than manual


task execution. Manual execution errors are expensive and
might not be detected immediately.

41

269
Course Book | DASA DevOps Fundamentals

• Automated task execution is more repeatable than


manual task execution.
• Automated task execution requires no human effort (which
is more expensive than machine time).
• Automated task execution requires standardization, based
on minimal required variations. Every variation requires
specific procedures and maintenance.

QUESTION 35
Correct Answer: B

Rational: It is visible where individuals work on (functional)


specialty tasks with many handovers between the different
specialties. For example, an architect writes a solution
architecture document. Once completed, there is a
handover to the Information Analyst to specify the functional
design.

QUESTION 36
Correct Answer: C

Rational: Automated provisioning creates environments,


such as network components, server components, and
runtime software stacks.

Such an environment can be created on demand using a


fully automated (system provisioning) process. Automated
deployment refers to the application environment.
Automated test refers to the execution of testing and
Automated build refers to the committed code to deployable
artifacts.

42

270
Mock Exam

QUESTION 37
Correct Answer: A

Rational: Some examples that can help you choose the right
type of cloud service are:

• On-Premise: If you have strict regulations where your data


might be stored or need specific hardware, you might
choose to do everything on-premise, for example, banks or
government organizations.
• Infrastructure as a Service (IaaS): When you have teams
with diverse workloads, you can go with IaaS. It provides
the teams the most flexibility when removing the burden of
maintaining the physical infrastructure.
• Platform as a Service (PaaS): If you have more of
homogeneous workload, you can go with PaaS.
Standardizing the deployment and the target stack
application helps teams to focus on the development of
their applications.
• Software as a Service (SaaS): If you want to use a
functionality but do not want to develop the software, you
can choose SaaS. This approach allows you to remove
management of everything except the configuration of the
application.

QUESTION 38
Correct Answer: A

Rational: Automated provisioning of mutable components


implies that the components which are provisioning can
be changed after these have been created. Options B, C,
and D, are the characteristics of automated provisioning of
immutable components.
43

271
Course Book | DASA DevOps Fundamentals

QUESTION 39
Correct Answer: C

Rational:

• Real-time dashboards for all involved, including customers


and business helps visualize everything, including the real-
time status of services.
• Standardization when possible and niche tools when
required help stimulate experimentation, MVP, and
courage.
• Incorporate the Service Management System (SMS) or
data, historical knowledge, and workflows in case of alerts
provide a great source of insight into the behavior of your
users/customers.
• Incorporate social media (when applicable) data in the
monitoring for monitoring the business is one of the
quickest ways to find out what customers are doing with
our services/products in the market.

QUESTION 40
Correct Answer: C

Rational: Organizations undergoing DevOps transformation


map the context during situation analysis and focus on
design criteria. They define the customer and the product,
map the technology stack, and identify the knowledge
required.

44

272
Mock Exam

© 2020 - DevOps Agile Skills Association

All rights reserved. No part of this publication may be


published, reproduced, copied or stored in a data processing
system or circulated in any form by print, photo print, microfilm
or any other means without written permission by DASA

www.devopsagileskills.org

45

273
Appendix A
AnSwerS

Knowledge checK AnSwerS

module 1: Introducing dASA devops Fundamentals

DASA DevOps Fundamentals – An Introduction

q1. how many questions at minimum do you need to attempt correctly to become DASA
Devops Fundamentals certified?
a) 24 out of 40

b) 26 out of 40

c) 28 out of 40

d) 32 out of 40

The correct answer option is B.

Case Study - Easy Journey Airways

q1. what is the goal of easy Journey Airways?


a) Provide friendly, reliable, and low-cost air travel.

b) Deliver a personal and engaging flight experience.

c) Deliver the highest quality of Customer Service using the latest technology.

d) Make slick customer connections, minimize cost, and provide smart and easy journeys.

The correct answer option is A.

275
Course Book | DASA DevOps Fundamentals

module 2: Building the devops context

DevOps Evolution

q1. which can be a challenge for IT organizations following traditional ways of developing
products?
a) High Creativity

b) Improved Speed to Market

c) Increased Employee Engagement

d) Sporadic Releases

The correct answer option is D.

Business Benefits of DevOps

q1. Identify the factors enabling IT organizations to move fast.


1. Automation
2. Continuous Improvement
3. Oneness
4. Simplified Operating Models

a) 1, 2, and 3

b) 1, 2, and 4

c) 1, 3, and 4

d) 2, 3, and 4

The correct answer option is B.

DASA DevOps Principles

q1. which is the characteristic of an autonomous team?


a) 24x7 Availability

b) Bureaucratic

c) Horizontally-Oriented Teams

d) Self-Directed

The correct answer option is D.

276
Appendix A | Answers

Goals and Measurements

q1. which indicator ensures that software is always in the releasable state?
a) Continuous Delivery

b) Version Control

c) Automated Testing

d) Monitoring System and Application Health

The correct answer option is A.

module 3: Knowing devops for Individuals

T-Shape Profiles

q1. people of which profile are interesting to converse with and focuses on innovation?
a) I-Shape

b) Dash-Shape

c) T-Shape

d) V-Shape

The correct answer option is C.

DevOps Capabilities by DASA

q1. According to DASA, what are the skill areas that you need to be proficient at to be an
effective Devops team member?
a) Continuous Delivery, Courage, DevOps Leadership, Teambuilding

b) Business Value Optimization, Courage, DevOps Leadership, Teambuilding

c) Business Value Optimization, Business Analysis, Continuous Delivery, Programming

d) Continuous Improvement, Courage, DevOps Leadership, Teambuilding

The correct answer option is D.

277
Course Book | DASA DevOps Fundamentals

DASA DevOps Certifications

q1. which DASA certification will help you to be proficient in the four skills areas?
a) DASA DevOps Coach

b) DASA DevOps Professional: Create and Deliver

c) DASA DevOps Professional: Enable and Scale

d) DASA DevOps Professional: Specify ad Verify

The correct answer option is C.

module 4: getting Acquainted with devops culture and Behavior

Embracing a DevOps Culture

q1. which cultural aspect of a Devops team specifies that applications must deliver value on
their execution in production?
a) Build quality In

b) A culture of product thinking

c) An engineering culture

d) A culture of effectiveness

The correct answer option is B.

Core Elements of a DevOps Culture

q1. which step of the DMAIC model defines potential solutions to the problem?
a) Define

b) Measure

c) Analyze

d) Improve

The correct answer option is D.

278
Appendix A | Answers

Implementation of a DevOps Culture

q1. which cultural element helps Devops teams to overcome the barriers of communication?
a) Teambuilding and Collaboration

b) Continuous Improvement

c) Leadership and Feedback

d) Courage and Experimentation

The correct answer option is C.

module 5: understanding the value of devops for teams and organizations

Organizational Models

q1. what is the possible way of organizing people of Devops organizations?


a) Activity-based teams

b) Technically-oriented teams

c) Business System teams and Platform teams

d) Platform teams through a self-service API

The correct answer option is C.

Team Autonomy

q1. which DASA Devops principle does autonomy support the best?
a) Automate Everything You Can

b) Continuous Improvement

c) Create with the End in Mind

d) Customer-Centric Action

The correct answer option is D.

279
Course Book | DASA DevOps Fundamentals

DevOps at Scale

q1. which is a characteristic of mitigating scaling?


a) Develop a single Definition of Done

b) Ensure to have team-specific Product Backlogs of a product

c) Keep the user stories dependent to the maximum extent

d) Organize for optimal value delivery

The correct answer option is D.

module 6: getting Familiar with devops management practices

ITSM

q1. which component of the Service value System (SvS) includes a set of activities that an
organization performs to deliver a valuable product or service to its consumers?
a) Guiding Principles

b) Governance

c) Practices

d) Service Value Chain

The correct answer option is D.

Lean

q1. which type of Lean waste specifies the efforts are wasted due to rework?
a) Defects

b) Inventory

c) Motion

d) Transportation

The correct answer option is A.

280
Appendix A | Answers

Agile

q1. which is a characteristic of the Agile way of working?


a) Oneness

b) Project-Focused

c) Plan-Driven

d) Work-oriented

The correct answer option is A.

module 7: getting Familiar with devops technical practices

Architecture

q1. which of the following attributes are important for the realization of the customer value?
1. Reliability
2. Resiliency
3. Scalability
4. Portability

a) 1 and 2

b) 1, 2, and 3

c) 1, 2, and 4

d) 1, 2, 3, and 4

The correct answer option is D.

281
Course Book | DASA DevOps Fundamentals

Modern Infrastructure and Cloud

q1. Consider the following characteristics of managing servers:


1. Most systems become unique over time.
2. No one notices the unavailability of servers.
3. Servers are managed as a group.
4. Servers have distinct names.

Which of the characteristics relate to manual provisioning?


a) 1 and 2

b) 1 and 4

c) 2 and 4

d) 3 and 4

The correct answer option is B.

Operations

q1. what is a tracking mechanism that gives insight into the usage of IT services by users
and customers?
a) Logs

b) Measure

c) Monitoring

d) Automation

The correct answer option is A.

module 8: enabling devops team performance through continuous delivery and Automation

Software Delivery Automation Concepts

q1. what does automating the routine tasks through engineering imply?
a) High Analyzability and High Variability

b) High Analyzability and Low Variability

c) Low Analyzability and Low Variability

d) Low Analyzability and High Variability

The correct answer option is B.

282
Appendix A | Answers

Continuous Delivery Core Concepts

q1. which principle of Continuous Delivery focuses on tracking changes related to building,
deploying, testing, and releasing a software product?
a) Automate Almost Everything

b) Build Quality In

c) Create a Repeatable, Reliable Process for Releasing Software

d) Keep Everything in Version Control

The correct answer option is D.

Continuous Delivery Automation Concepts

q1. Feedback during which phase of Software Development Lifecycle helps enhance the
external quality of your software product?
a) Build

b) Deploy

c) Test

d) Provisioning

The correct answer option is D.

Continuous Delivery Automation Focus Topics

q1. which focus topic of Continuous Delivery automatically transforms the changes in code
to a collection of published deployment artifacts?
a) Automated Build

b) Automated Deployment

c) Automated Provisioning

d) Automated Test

The correct answer option is A.

283
Course Book | DASA DevOps Fundamentals

module 9: measuring the performance - the next Steps

Analyze the Current Situation

q1. how can an organization analyze the existing team composition considering the Devops
transformation?
a) Embedding the cultural elements

b) Following the basic design criteria for an autonomous team

c) Identifying the competence improvement areas for each team member

d) Identifying and knowing the knowledge and skills that the team requires

The correct answer option is B.

Improve Incrementally

q1. what is the primary success factor for embedding the Devops cultural elements in a
team?
a) Courage

b) Encouragement

c) Openness

d) Problem-Solving Attitude

The correct answer option is C.

284
Appendix B
SYllABuS

DASA DEVOPS
FUNDAMENTALS
Syllabus

Version 2.0.0
September 2019

285
Course Book | DASA DevOps Fundamentals

RELEASE VERSION DATE

Previous 1.0.4 January 2019

Current 2.0.0 September 2019

Next TBD TBD

SCOPE AND PURPOSE OF THIS DOCUMENT


The purpose of this document is to inform all parties
interested in the DASA DevOps Fundamentals course of the
areas covered in the course.

286
Appendix B | Syllabus

THE DASA DEVOPS


COMPETENCE MODEL
The DevOps Agile Skills Association (DASA) competence
framework identifies 8 knowledge areas and 4 skills that are
relevant in DevOps, as shown in the following figure.

Teambuilding
5
r
ne

DevOps

DA
Ow

Courage Leadership

S
4

Op
P
ps

s
DASA DevOps
Professional

der
2 Enable and Scale
Architecture Continuous
and Design Improvement
1

DASA DevOps
Professional
Business Specify and Verify Infrastructure
Value DASA Engineering
Optimization DevOps
Fundamentals

DASA DevOps
Business Professional Security, Risk,
Analysis Create and Deliver Compliance

Continuous
Test Delivery
Specification
Programming

chh

1. Novice / 2. Competent / 3. Proficient / 4. Expert / 5. Master

287
Course Book | DASA DevOps Fundamentals

Every individual operating in a DevOps team requires to be


competent at all 8 knowledge areas and proficient at the 4
skill levels. In order for DevOps teams to be effective, they
require all 12 areas to be at the Expert level. Individual team
members can specialize in specific areas, in order for teams
to achieve these capabilities.

DASA DEVOPS FUNDAMENTALS


Up to 200 times faster software deployment, 30 times
increased deployment frequency, and 60 times higher
change success rates, organizations such as Netflix,
Spotify, and Facebook are revolutionizing the IT game by
successfully implementing DevOps principles. The data
does not lie. You do not have to be a hot Web company or
a monster enterprise to be a DevOps leader. Companies,
large or small, and young or old, have magnificently made
the transition and have the proof of success in their pockets.

DevOps training is the starting point for an organization


going on the DevOps journey. Improved workflows and
faster deployment starts with a core understanding of
DevOps fundamental concepts by anyone involved in an
Agile and/or DevOps team.

DASA develops and evangelizes a vendor neutral DevOps


qualification program for professionals, generates
interest and awareness for the need for knowledge and
skill development, promotes open source certification for
DevOps knowledge and skills, and ensures quality of training
for the market through a logical and threshold-driven
qualification program.

288
Appendix B | Syllabus

Anyone can participate in defining role-based


competencies, learning paths, and qualification schemes.
All existing learning content that maps against the DASA
knowledge and skill areas has value. DASA will map content
and demonstrate relevance and will maintain an open and
logical operating model for training delivery, as shown in the
following figure.

2 Days 2 Days 3 Days


LEADERSHIP
Lead and Enable

DASA DevOps DASA DevOps DASA DevOps


Product Owner Leader Coach

2 Days 2 Days 2 Days


PROFESSIONAL
Know and Apply

DASA DevOps DASA DevOps DASA DevOps


Professional Professional Professional
Enable and Scale Specify and Verify Create and Deliver

2 Days
FOUNDATIONAL
Know

DASA DevOps Fundamentals

DASA DevOps Fundamentals provides an extensive


introduction to the core Agile DevOps principles covering the
essential knowledge and skill competences that have been
defined by DASA.

The DevOps Fundamentals qualification is designed to


provide the core education necessary to build your DevOps
vocabulary and to understand its principles and practices.
With the help of key DevOps concepts and terminology, real-
life case studies, examples and interactive group discussions
and extensive exercises in each module you will acquire a
fundamental understanding of DevOps.

289
Course Book | DASA DevOps Fundamentals

QUALIFICATION OBJECTIVES
When you have acquired the required knowledge from this
course, you will be able to:

• Explain the drivers responsible for the emergence of


DevOps.

• Define and discuss the key concepts and principles of


DevOps.

• List and explain the business benefits of DevOps and


continuous delivery.

• Know how teams can translate DevOps principles into


tangible practices.

• Learn about modern operations in a DevOps context.

• Explain the concepts of test automation, infrastructure


automation, and build and deployment automation.

• Describe how DevOps relates to Lean and Agile


methodologies.

• Get insight into the various organizational DevOps


models

• Identify how Cloud and Delivery pipeline automation


optimize and accelerate the ways of working.

• Discuss the critical success factors for DevOps


transformation.

290
Appendix B | Syllabus

HOW DOES DEVOPS FUNDAMENTALS


FIT INTO THE DASA COMPETENCE
FRAMEWORK?
After completing this course, you will cover the area marked
as DevOps Fundamentals in the following figure of the
DASA qualification scheme. As a result, you will reach the
“Competent” level of the scheme.

Teambuilding
5
DevOps
Courage Leadership
4

2 Continuous
Architecture 2
and Design 2 Improvement

2 1
2

2 DASA
DevOps
Business 2 Infrastructure
Fundamentals
Value Engineering
Optimization
2
2

2
2
2
Business Security, Risk,
Analysis Compliance

Continuous
Test Delivery
Specification
Programming

1. Novice / 2. Competent / 3. Proficient / 4. Expert / 5. Master

291
Course Book | DASA DevOps Fundamentals

TARGET AUDIENCE
The DevOps Fundamentals qualification is primarily aimed at:

• Individuals involved in IT development, IT operations, or


IT service management

• Individuals whose role are touched by DevOps and


continuous delivery, such as the following IT roles:

◊ DevOps engineers

◊ Product owners

◊ Integration specialists

◊ Operations managers

◊ Incident and change managers

◊ System administrators

◊ Network administrators

◊ Business managers

◊ Automation architects

◊ Enterprise architects

COURSE REQUIREMENTS
Basic familiarity with Agile, Scrum, Lean, and ITSM principles
is beneficial.

292
Appendix B | Syllabus

CERTIFICATION REQUIREMENTS
You will receive the required certification from DASA on
successful completion of the DASA DevOps Fundamentals
exam.

EXAM DETAILS
The characteristics of the DASA DevOps Fundamentals
exam are:

Exam Format:
y Closed-book format

y Web-Based
y Participants may bring scratch paper

Questions:
y 40 multiple choice questions

Passing Score:
y 65%

Exam Duration:
y 60 minutes

y 15 minutes extra time for non-native English speakers.

293
Course Book | DASA DevOps Fundamentals

Exam Specifications:
Module Name Topics # Bloom Bloom
Questions Level 1 Level 2
DevOps - The Context DevOps 2 2
Evolution
Business 1 1
Benefits of
DevOps
DASA DevOps 4 2 2
Principles
Goals and 2 1 1
Measurement
DevOps for Individuals From Roles 1 1
to T-shape
DevOps
Profiles
DevOps for Teams and Culture and 6 4 2
rganizations Behavior
Organizational 2 1 1
Models
Team 2 1 1
Autonomy
DevOps at 1 1
Scale
DevOps Practices ITSM 3 2 1
Lean 3 2 1
Agile 3 2 1
Architecture 3 2 1
Continuous 3 2 1
Delivery and
Automation
Modern 2 2
Infrastructure
and Cloud
Operations 1 1
The Next Steps Analyze 1 1
the Current
Situation
Improve
Incrementally
Total # of Questions 40 26 14

10

294
Appendix B | Syllabus

LEARNING OUTCOMES
A classification widely used when designing assessments
for certification and education is Bloom's Taxonomy of
Educational Objectives. This classifies learning objectives
into six ascending learning levels, each defining a higher
degree of competencies and skills. (Bloom et al, 1956,
Taxonomy of Educational Objectives).

This structured approach helps to ensure:

• A clear delineation in learning level content between


different qualification levels

• Learning outcomes are documented consistently


across different areas of the guidance

• Exam questions and papers are consistent and are


created to a similar level of difficulty.

11

295
Course Book | DASA DevOps Fundamentals

The Fundamentals qualification examines learning


outcomes at levels 1 (knowledge) and 2 (comprehension).

DASA DEVOPS FUNDAMENTALS LEARNING OUTCOMES


1. 2. 3. 4.
Knowledge Comprehension Application Analysis
Generic Know key Understand key Be able to Be able to
Definition facts, terms concepts from the apply key analyze and
from and concepts manual/guidance concepts distinguish
Learning from the relating to the between
Outcomes manual/ syllabus area appropriate
guidance for a given and
scenario inappropriate
use of the
method/
guidance for a
given scenario
situation
Qualification Know facts, Understand
Learning including the concepts,
Outcomes terms, principles, and
concepts, dimensions of
principles, DevOps and can
tools and explain how these
techniques are applied.
from the
DevOps
Fundamentals
curriculum

SYLLABUS AREAS
The following syllabus areas are identified.
SYLLABUS AREA CODE SYLLABUS AREA TITLE
DC DevOps - The Context

DI DevOps for Individuals

DT DevOps for Teams and Organizations

DP DevOps Practices

NS The Next Steps

12

296
Appendix B | Syllabus

SyllAbuS
In the following tables, the key aspects of the DASA DevOps
Fundamentals Syllabus are described.

DevOpS - the cOntext


Syllabus Area Code: DC
Syllabus Area Title: DevOps - The Context
Topic Objectives

DevOps Evolution • Explain the Wall of Confusion


between Dev and Ops?
• List and discuss the various
problems that IT organizations face
due to Wall of Confusion.
• Discuss the brief history of DevOps
movement since its germination
• Explain how DevOps helps foster a
culture of high-performance IT.
Business Benefits of DevOps • Why companies need to radically
rethink their IT strategy considering
the digital world?
• List and discuss the various reasons
of adopting DevOps.
• List the example statistics to better
understand how DevOps practices
impact IT and organizational
performance.
• Discuss the role of Antifragility in the
DevOps world.
DASA DevOps Principles • Explain briefly the six DASA DevOps
principles.
• List and discuss the various
characteristics of each DASA
principle.

13

297
Course Book | DASA DevOps Fundamentals

Syllabus Area Code: DC


Syllabus Area Title: DevOps - The Context
Topic Objectives

Goals and Measurement • Discuss the role of values, goals,


metrics, and compliance for an
effective governance.
• What is the importance of setting
clear goals basis the vision in the
successful adoption of DevOps?
• How to create a vision based on
DASA principles and set clear goals?
• What is Survivorship Bias?
• Explain the need of taking required
actions based on measurements to
improve?
• What are Performance Metrics and
Performance Predictors? How these
differ from one another?
• List the top practices correlated
to Performance Metrics to make
improvements.

14

298
Appendix B | Syllabus

DEVOPS FOR INDIVIDUALS


Syllabus Area Code: DI
Syllabus Area Title: DevOps for Individuals
Topic Subtopics/Objectives

From Roles to T-shape DevOps Profiles • Explain the meaning of “No Role Silo
in a DevOps Team.”
• What is T-shape?
DASA DevOps Competence Model • What is DASA DevOps Competence
Model?
• Discuss the DASA DevOps Skill
Areas.
• Discuss the DASA DevOps
Knowledge Areas.
• Explain the importance of DASA
DevOps Competence Quickscan™.
• Introduce the various DASA DevOps
certifications.

15

299
Course Book | DASA DevOps Fundamentals

DEVOPS FOR TEAMS AND ORGANIZATIONS


Syllabus Area Code: DT
Syllabus Area Title: DevOps for Teams and Organizations
Topic Objectives

Culture and Behavior • What is culture?


• Explain DevOps Culture.
• List and discuss the typical cultural aspects of a
DevOps team.
• How to grow a culture?
• What context to provide to facilitate growth areas for
teams?
• Discuss “Ron Westrum: The Three Typologies of
Organizational Culture.”
• What is behavior?
• List the various elements of a DevOps culture.
• Explain team building and collaboration
• What is a team?
• What is Visual Management.
• Explain the role of collaboration as a success factor of
a team.
• List the various example team activities for effective
collaboration.
• Explain continuous improvement and problem-
solving.
• What is Kaizen?
• Explain structured problem-solving.
• Explain courage and experimentation.
• Discuss the role of “Courage to Act” as a key behavior
of a DevOps team.

16

300
Appendix B | Syllabus

Syllabus Area Code: DT


Syllabus Area Title: DevOps for Teams and Organizations
Topic Objectives

Culture and Behavior • Explain courage and experimentation.


(contd.)
• Why courageous behavior requires safety?
• Explain the role of experimentation meetups as key
tool of courage.
• Explain leadership and feedback.
• Discuss leadership in a DevOps Environment.
• Explain the differences between Mission Command
and Central Command of leadership.
• What are the various barriers of effective
collaboration
• Explain the style leadership requires.
• How to build a DevOps culture?
Organizational Models • Why change the organization?
• Explain the need to move from Project to Product.
• Why taking DevOps “Literally” is not at all a solution?
• Explain the practical approach to the organizational
model.
• Discuss the differences between DevOps Business
System and Platform Teams.
Team Autonomy • What is autonomy of teams?
• List and discuss the various criteria for autonomous
teams.
• Discuss Daniel’s Pink aspects of motivation.
DevOps at Scale • Why is scaling inevitable?
• How to mitigate scale?
• List the various scaling models/frameworks.

17

301
Course Book | DASA DevOps Fundamentals

DEVOPS PRACTICES
Syllabus Area Code: DP
Syllabus Area Title: DevOps Practices
Topic Subtopics/Objectives

ITSM • What is the difference between products and


services?
• List and discuss the various types of work.
• Discuss ITIL4.
• How DevOps relates to ITSM processes?
Lean • Explain Lean.
• Discuss Lean principles.
• List and discuss the various types of waste?
(TIMWOODS)
• Discuss different facts about waste.
• What is Value Stream Mapping (VSM)?
• How to improve the flow of work?
• Explain Lean Startup.
• What is a Minimal Viable Product (MVP)?
• Explain the role of including the MVP in an Agile
process.
Agile • How are traditional organizations different from Agile
organizations?
• What is Agile?
• Explain the Agile focus on satisfying the customers’
needs.
• Discuss Agile Manifesto.
• How is Agile an umbrella for several methods and
frameworks?
• What is Scrum and Scrum Framework?
• List and discuss some advantages of working Agile.

18

302
Appendix B | Syllabus

Syllabus Area Code: DP


Syllabus Area Title: DevOps Practices
Topic Subtopics/Objectives

Architecture • What is the ultimate aim of IT architecture?


• Explain the importance of building qualities.
• Relate Complexity and Quality.
• Discuss Conway’s Law and Organizations’
Architecture.
• What are Smaller Services?
• Exapin Microservices Architecture (MSA).
• Why is MSA a faster, cheaper, better approach to
software development?
• List and discuss the common characteristics of MSA.
• What is the need to move from legacy to smaller
services?
Continuous Delivery • Define Continuous Delivery.
and Automation
• How is Continuous Delivery different from Continuous
Integration and Continuous Deployment?
• Discuss the various benefits of automating
Continuous Delivery.
• Explain “Cycle Time Reduction” as the primary goal of
Continuous Delivery.
• List and discuss the various Continuous Delivery base
principles and focus topics.
• Discuss “Continuous Delivery Implies: Software has to
Flow.”
• Explain automated build, automated test, automated
deployment, and automated provisioning.
• Discuss the importance of having everything as code.

19

303
Course Book | DASA DevOps Fundamentals

Syllabus Area Code: DP


Syllabus Area Title: DevOps Practices
Topic Subtopics/Objectives

Continuous Delivery • How automation changes the focus towards


and Automation engineering tasks?
(contd.)
• Explain the role of Continuous Delivery in enabling
DevOps team performance.
• Explain the different types of feedback.
• Explain the importance of failing fast in a smart way.
• Summarize the automation approach to Continuous
Delivery.
Modern Infrastructure • Discuss the emergence of Cloud Computing.
and Cloud
• List and discuss the National Institute of
Standardization (NIST) Cloud Principles.
• Explain the different types of Cloud services.
• What are the services DevOps Business System
teams require?
• What is Continuous Delivery for Platform Products
and Teams?
• Why do DevOps organizations adopt Cloud
principles?
• Discuss DevOps Platform teams as a “Cloud” service
provider.
• What are the different types of Clouds to operate?
• Explain the concept of pets and cattle in the context
of software development.
• What is Desired State Configuration to automate
environments?
• Explain automated provisioning with mutable and
immutable infrastructure.

20

304
Appendix B | Syllabus

Syllabus Area Code: DP


Syllabus Area Title: DevOps Practices
Topic Subtopics/Objectives

Operations • Discuss the modern ways of doing Operations.


• Discuss monitoring at multiple levels.
• How to optimize monitoring for DevOps?
• Explain logging with stakeholders and usage
examples.

THE NEXT STEPS


Syllabus Area Code: NS
Syllabus Area Title: The Next Steps
Topic Subtopics/Objectives

Where to start? • Map the context.


• Assemble the team.
• Train the team.
• Do the DASA Competence Scan.
• Focus on the cultural elements.
• Improve the flow of work.

21

305
Course Book | DASA DevOps Fundamentals

© 2019 - DevOps Agile Skills Association

All rights reserved. No part of this publication may be published,


reproduced, copied or stored in a data processing system or
circulated in any form by print, photo print, microfilm or any
other means without written permission by DASA

www.devopsagileskills.org

22

306
Appendix c
gloSSArY

DASA DEVOPS
FUNDAMENTALS
Glossary

Version 1.0.0
November 2018

307
Course Book | DASA DevOps Fundamentals

Glossary Terms Description


Agile Agile is a time-boxed and iterative approach
of software delivery. It aims to build software
incrementally from the start of the project.

Agile Benefits Visibility: As Product Owner and business


are involved with product development on a
regular basis, for instance by attending the
sprintly demo (or by launching new shippable
features on a regular basis), visibility of what
is delivered is far higher than is the case with
traditional development methods. Parts of
the product are delivered on a regular basis.

Risk: Optimization of product visibility lowers


the risk, as it becomes clear early in the
process whether the team is moving into the
right direction and building the right things. It
is all about feedback and using this feedback
to lower risk.

Business Value: By delivering a shippable


product at the end of each sprint, this
product can actually be used to generate
business value throughout the product
development cycle. Features are prevented
to get ‘stuck’ in the development cycle and
are shipped straight away. This as opposed
to the “traditional way of working”, where
the product is shipped only near the end of
the project (preventing the team to used
valuable feedback from your end-customer
through the software development cycle).

308
Appendix C | Glossary

Glossary Terms Description


Automated Automated provisioning is defined as the
Provisioning fully automated delivery and maintenance
of application environment components.
Application environment components are
the deployment target containers of the
application. For example, a database server
or application runtime server. In a DevOps
organization, automated provisioning can be
the responsibility of DevOps Platform teams.

Backlog Refinement Scrum Term - This session is used to


Session anticipate and define what User Stories are
expected in next sprint and communicate
uncertainties for in case User Stories are
unclear. The session typically takes place half-
way a sprint, leaving room for Business and
Product Owner to improve User Stories where
needed, prior to the starts of the next sprint.

Build Automation Build automation transforms code changes,


committed by team members, automatically
to published deployment artifacts, ready
for deployment and validation in (test)
environments.

Burn Down Chart Scrum Term - During Planning Poker,


features are assigned so called velocity
points. When progressing in time, team
estimations will become more reliable. The
Burn Down chart outlines the burn rate
for the running sprint over times. This way,
a team can steer on making the needed
progress to burn all points for the sprint.

309
Course Book | DASA DevOps Fundamentals

Glossary Terms Description


CALMS Key ingredients for DevOps as defined by
Damon Edwards and John Willis. Culture,
Automation, Lean, Measure and Sharing.

Continuous Delivery Defined by Jez Humble - “Continuous


Delivery is about putting the release
schedule in the hands of the business, not
in the hands of IT. Implementing Continuous
Delivery means making sure your software
is always production ready throughout
its entire lifecycle – that any build could
potentially be released to users at the touch
of a button using a fully automated process
in a matter of seconds or minutes”.

Continuous Delivery y Rigorous Automation


Base Principles
y Extreme Feedback

y Continuous Change

Continuous Delivery Teams that adopted Continuous Delivery:


Benefits y Increase speed and repetitiveness
through automation.

y Are Agile as there is no Work in


Progress.

y Make sure there is flow in their


delivery.

y Are able to operate largely


autonomously.

y Are doing the right things right.

310
Appendix C | Glossary

Glossary Terms Description


Continuous “Continuous Deployment is subtly different
Deployment to Continuous Delivery in that release are
automatically pushed into production when
all tests pass. In Continuous Delivery, release
is a human decision.” Dave Farley

Continuous y Deliver value faster


Improvement
y Deliver value better
Objectives
y Supply services cheaper

y Create more meaning in work


y Create a healthier environmental
footprint

Continuous Continuous Integration (CI) is the practice,


Integration (CI) in software engineering, of merging all
developer working copies to a shared
mainline several times a day. (Wikipedia,
March 2016) “Continuous Integration usually
refers to integrating, building, and testing
code within the development environment.”
Martin Fowler

Culture Four elements of a DevOps culture:


y Teambuilding

y Courage

y Continuous Improvement

y Leadership

311
Course Book | DASA DevOps Fundamentals

Glossary Terms Description


Daily Stand-up Scrum Term - Every day, the team comes
up to the scrum board where each member
will explain what he/she did yesterday,
where he/she is now and what he/she will be
doing today. Impediments, blocking a team
member from progressing, are also raised in
this stand-up. A stand-up should never take
up more than 15 minutes of time.

DASA Competence The DASA Competence Framework identifies


Framework 8 Knowledge Areas and 4 Skills that are
relevant in DevOps.

DASA Knowledge 1. Business Value Optimization


Areas
2. Business Analysis

3. Architecture and Design

4. Programming

5. Continuous Delivery

6. Test Specification

7. Infrastructure Engineering

8. Security, Risk and Compliance

DASA Principles 1. Customer Centric Action

2. End to End Responsibility


3. Continuous Improvement

4. Create with the End in Mind


5. Cross Functional Autonomous Teams

6. Automate Everything You can

312
Appendix C | Glossary

Glossary Terms Description


DASA Skills 1. Courage

2. Teambuilding

3. Leadership
4. Continuous Improvement

Defects Rework that is required because an activity


was not properly executed in first instance.
This requires one to task-switch back to
the originating activity, stopping progress,
analyze the issue and fix the issue.

Definition of Done Scrum Term - A list of criteria (preferably


(DoD) attached next to the scrum board) describing
what topics need to be addressed in order
for a product to be considered ‘potentially
shippable’. It’s a simple list containing
restraints like these: code, unit and coverage
tested, functionally tested, performance
tested, user acceptance tested, reviewed,
documented. It clearly defines a finish-mark.
The team only delivers part of the product
that adhere to criteria on the list.

313
Course Book | DASA DevOps Fundamentals

Glossary Terms Description


Definition of Ready Scrum Term - A list of rule (preferably
(DoR) attached next to the scrum board)
describing to what standards a user story
should adhere in order to be accepted
by the Development team. Examples of
topics on the list could be: “the user story
is on the backlog”, “the development team
understands the problem”, “the user story
is estimated by the development team”, etc.
The DoR is there to make sure requirements
are clear from its inception and additional
conversations during sprint activity are kept
to an absolute minimum. It eliminates the
need for discussions as much as possible.

DevOps DevOps is a cultural and operational model


that fosters collaboration to enable high
performance IT to achieve business goals.

DMAIC A problem solving method: Define, Measure,


Analyze, Improve, Control.

Engineering Culture A definition of an Engineering Culture


(Palantir): “Engineers build things that solve
problems. You don’t have to be a computer
scientist or have any particular degree to be
an engineer. You just have to speak up when
things aren’t right, evaluate ideas on their
merits, and build things that fix what’s broken.”

Experimentation Experimentation means testing a hypothesis,


and in practice, it means trying something
new based on a need.

314
Appendix C | Glossary

Glossary Terms Description


Feedback Four types of feedback can be defined:
y Feedback on build an test activities.
For example, automated unit test
results, automated static code
analysis results.

y Feedback on deployability. For


example, automated deployment
execution results, automated
application deployment “smoke” tests,
automated application health checks.
y Feedback on runtime behavior. For
example, automated user interface
functional test results or automated
load test results.
y Feedback from the customers! For
example, revenue / conversion rates.

Impediment Board Scrum Term - This board contains topics


that keeps the team from doing its work,
but which is out of reach for the team itself.
Typically, the scrum master makes sure
impediments are dealt with. Impediment
boards should only contain topics for which
the team member itself already tried
addressing it. i.e. not ‘everything’ is thrown
onto this board. Items might include: “not
enough desks”, “team divided over multiple
locations slows us down”, “network is down
several times a day”.

315
Course Book | DASA DevOps Fundamentals

Glossary Terms Description


Inventory Waste caused by excess product taking up
space. In a software development context,
it generally means that the work (story) that
is not completely done as per your Definition
of Done, and hence you cannot demo or
release it, resulting tasks to remain in in-
progress state.

ITIL Information Technology Infrastructure


Library (ITIL), is a set of practices for IT
Service Management (ITSM) that focuses
on aligning IT services with the needs of
business.

Kanban Kanban is Japanese for “visual signal”. The


Kanban’s visual nature allows teams to
communicate more easily on what work
needed attention to make sure flow remains
in the process. Kanban is a great tool to
visualize work-build up, bottlenecks and
helps to reduce waste and maximize value.

Motion An example could be one copy machine on


only the second floor, requiring the user to
walk around the building for making a copy.
Another one is the unavailability of meeting
rooms, forcing a team to search for a spot
whenever they need some privacy to discuss.
In SW development, handover-moments
can also be considered a waste related to
motion.

10

316
Appendix C | Glossary

Glossary Terms Description


MTTR Mean Time To Recover

Non-Utilized Talent Waste caused by centering resources around


specialized activities. If one has to perform
only one type of task, other possible skills this
resource might exhibit (like board management,
organization, x-team communication,
presenting customer cases) are not used!

Over-processing Commonly this waste is caused when a


team is unable to understand the Voice of
Customer (VoC), or lack of understanding
the product-vision, resulting in gold-plating
a product. A product owner might play a
significant role steadying this type of waste.

Overproduction Producing more than is actually needed,


generating WIP (work in progress), requiring the
next step in the process to think about where
to (temporarily) store/archive the superfluous
artifacts and find it once it is needed again.

Planning Poker Scrum Term - At the start of each sprint


(and often during the backlog refinement
session), the team plays so-called planning
poker in order to size the amount of work
that is required to fulfill a new activity. In this
session a sizing is agreed by the complete
team and a ‘common view’ is established
on topics at hand. When performing more
poker sessions over time, sizings will become
more reliable and the team starts to exhibit
a specific burn-rate, defining how fast the
team is performing.
11

317
Course Book | DASA DevOps Fundamentals

Glossary Terms Description


Potentially Shippable Scrum Term - The product increment which
Product is delivered at the end of each sprint. If the
business deems required, this artifact can
be shipped to production straight away as it
does not have any tasks outstanding.

Product Backlog Scrum Term - A continuously evolving and


ordered list of requirements and topics,
required to make sure optimal product value
is achieved. The Product backlog is the one
single source of truth for modifications to the
product. One list to rule them all.

Product Demo Scrum Term - Each sprint closes off with


a product demo for team, product owner
and the business / customer. The demo is a
way to provide and receive feedback from
all stakeholder and inject this feedback into
the product during a next sprint. Attending
the product demo is essential for improving
collaboration, the next product backlog and
of course the product itself.

Scrum Scrum is the most commonly used manner


of introducing Agility to an organization. Its
simplicity and flexibility is appealing to many
organizations. Scrum emphasizes empirical
feedback, team self management, and
performs product increments within short
iterations.

12

318
Appendix C | Glossary

Glossary Terms Description


Scrum Board Scrum Term - A visual outline of activities
in a Kanban style manner, where activities
move from left to right over the board “To
do”, “Doing”, “Done”, “Impeded”.

Scrum Master Role in Scrum - Scrum Master – The person


responsible for making sure the team
adheres to scrum behaviors, rules and
guidelines. It is the facilitator making sure
everybody plays by the rules. The scrum
master not only explains to the team, but
also explains to the external stakeholders
the way things are done. The Scrum Master
enables the team to do the things that are
needed to make things work.

Scrum Product Owner Role in Scrum - Product Owner is


responsible for maximizing the value of
the product. This means that the Product
Owner knows the business and customer
and defines user stories that matter to
the business and customer and holds off
on other stories. The PO is the only person
responsible for maintaining the product
Backlog. The PO makes sure that User
Stories adhere to the Definition of Ready
(DoR) in terms of how requirements are
described, that the board is properly
prioritized in terms of value and that clear
and transparent communication between
development and business is achieved.

Scrum Roles Team, Scrum Master, Product Owner

13

319
Course Book | DASA DevOps Fundamentals

Glossary Terms Description


Scrum Team Role in Scrum - Team – A multidisciplinary
team which is allowed to work on the tasks
agreed at start of a sprint. Every discipline
required to deliver a shippable product (as
output of a sprint) is contained within the
team. Typically, a team might consist of
members with skills to define, develop, test,
deploy, maintain and communicate aspects
of the product. The team members organize
themselves and continuously improve their
own process. They take responsibility for the
way things are moving. A typical scrum team
is about 5 maximum 9 members in size.

Sprint Scrum Term - A predefined amount of time


in which activities on the sprint backlog are
performed. Sprints often are defined per
week or per every two weeks, but longer is
also used. Note that shortening a sprint will
also result in shorter backlog refinement,
poker and retrospective sessions, as the
amount of topics to discuss will become
much lesser as well.

Sprint Backlog Scrum Term - Sprint Backlog – A set of


product backlog items that have been
selected for the sprint, including required
tasks for delivering this new features at the
end of a sprint (i.e. activities like develop,
build, review, test, etc.). The sprint backlog
contains an internal prognoses of the
development team itself (no one else), for
the coming increment.

14

320
Appendix C | Glossary

Glossary Terms Description


Story Mapping Story mapping is an engaging activity where
all participants are involved in the process of
building the product backlog on a wall.

Story Mapping y A lower risk in development as


Benefits customer feedback is embedded into
the design process.

y An engaged customer as the system


is designed to his or her immediate
needs.

y Shorter project startup time due to


removal of endless up-front design
sessions.
y Fast ROI as the base-product is in the
customer’s hands at an early stage.

Task Classification Task classification quadrant by Charles


Quadrant Perrow. Method to determine if tasks have
a potential for automation. The quadrant is
based on two dimensions: tasks analyzability
and task variability.
1. Task Variability is defined by the
number of exceptions to standard
procedures encouraged in the
application of a given technology.
2. Task Analyzability is defined as the
extent to which, when an exception
is encountered, there are known
analytical methods for dealing with it.

15

321
Course Book | DASA DevOps Fundamentals

Glossary Terms Description


Team Retrospective Scrum Term - After every sprint, the team
evaluates what went well and what went
not-so-well, thus could use improvement.
This is an important aspect of scrum to
continuously improve on the way of working.

Transportation Waste caused by the need for transportation


(i.e. a refrigerator located far away from
the sink). In SW development this might be
task-switching as people are assigned by
more than one project. The fastest way to
complete two tasks is to perform them one
at a time.

Value Stream Lean Term - Value Stream Mapping (VSM)


Mapping is a tool to gain insight in the workflow of a
process and can be used to identify both
Value Adding Activities and Non-Value
Adding Activities in a process stream while
providing handles for optimizing the process
chain.

Waiting Wasted time since one has to wait on


another task (for instance caused by
overproduction) to be finished. Commonly, a
wait is caused by a bottleneck in the
end-to-end process or by irregular meetings
and handover-moments. Delays introduce
discontinuity into a process.

16

322
Appendix C | Glossary

Glossary Terms Description


Waste Lean Term - Lean defines 8 forms of waste:
Defects, Overproduction, Waiting, Non-
Utilized Talent, Transportation, Inventory,
Motion, and Overprocessing.

Woodward When processes are highly programmed


Technology Typology and automated they will result in predicted
and standardized output. Automated
processes are repeatable. Cost of process
execution is minimized.

17

323
Course Book | DASA DevOps Fundamentals

© 2018 - DevOps Agile Skills Association


All rights reserved. No part of this publication may be
published, reproduced, copied or stored in a data processing
system or circulated in any form by print, photo print, microfilm
or any other means without written permission by DASA
www.devopsagileskills.org

18

324
Appendix d
releASe noteS

DASA DevOps Fundamentals

Release Version No. Date


2.0.0 July 2020
Previous
2.0.1 September 2020
Current
TBD TBD
Next

Course Description Course Duration: 2 Days


Number of Modules: 9
Case Study Based: Yes
Associated Certification: DASA DevOps Fundamentals
Components Released Presentations, Course Book, Instructor Guide (eBook), PPT as PDF,
Pre- and post-course reading material, practice questions, quick
reference cards, and posters
New Features Minor modifications have been made to the Easy Journey Airways
case study considering the ITIL 4 terminology.

Bugs Reported Action Taken


NA NA

Known Issues Expected Fix


NA NA

Copyright © 2020 │  325


Appendix e
pArtIcIpAnt FeedBAcK
Form

Click here to complete the online feedback form

TrAInee ........................................... CoMpAny ...............................................................

e-MAIL ............................................... CourSe .................................................................

DATe .................................................. InSTruCTor ........................................................

Course Content
The content presented in this course was at the correct level. Strongly Agree Agree Neutral Disagree Strongly Disagree

The content met the stated objective and expectations. Strongly Agree Agree Neutral Disagree Strongly Disagree

The content was presented in a clear and concise manner. Strongly Agree Agree Neutral Disagree Strongly Disagree

group exercises
Reinforced how I might use the skills taught in the training. Strongly Agree Agree Neutral Disagree Strongly Disagree

Directly relate to the content. Strongly Agree Agree Neutral Disagree Strongly Disagree

Were engaging for the learners. Strongly Agree Agree Neutral Disagree Strongly Disagree

About the Instructor


Communicated the content effectively. Strongly Agree Agree Neutral Disagree Strongly Disagree

Addressed learner questions effectively. Strongly Agree Agree Neutral Disagree Strongly Disagree

What did the instructor do well and what can be improved?

Did Well:

Could improve:

Copyright © 2020 │  327


Course Book | DASA DevOps Fundamentals

overall
Communicated the content effectively. Yes No

Comments on course effectiveness:

What element of this course can be improved?  (This could include any specific module/topic/exercise.)

What are your overall impressions of this course?

Additional Comments:

The stated prerequisite requirements were appropriate and sufficient?  Yes No

The course materials were relevant and contributed to the achievement of


the learning objectives? Yes No

The time allotted to the course was appropriate for understanding the
learning objectives? Yes No

328  │ Copyright © 2020

You might also like