devops awareness - wordpress.com...course book | devops awareness sample material - not for resale...
TRANSCRIPT
Copyright and Disclaimer
DevOps Awareness | r1.0.0
CopyrightCopyright © Devops Agile Skills Association LLC 2018. 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 MarksDevOps Awareness® is a registered trademark of DASA Limited.
DisclaimerInformation 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 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 © 2018Sample Material - Not for Resale
ContentsACknowLeDgeMenTS v
MoDuLe 1: CourSe InTroDuCTIon 1Let’s Get to Know Each Other 1Course Overview 1DASA Competence Framework 1Knowledge Areas and Skill Areas 2Competence Framework in Practice 4Course Objectives 5DASA: Mastering DevOps in Practice (Knowledge and Skills) 5Course Agenda 6Type of Activities 7Course Book 7Activity: Group Activity 7Module Summary 7
MoDuLe 2: DevopS InTroDuCTIon 9Module Topics 9Emergence of Devops 9Activity: Group Discussion 11Core Principles Of Devops 17Activity: Group Discussion 20Activity: Group Discussion 25Module Summary 26Module End Questions 27
MoDuLe 3: DevopS AnD IT ASpeCTS 29Module Topics 29Culture 29Activity: Group Discussion 33Organization 33Processes 39Activity: Group Discussion 43Activity: Task Switching/Game 47Automation 51Module Summary 63Module End Questions 65
AppenDIx A: MoDuLe enD queSTIonS AnSwerS 67
AppenDIx B: reLeASe noTeS 69
AppenDIx C: pArTICIpAnT FeeDBACk ForM 71
Copyright © 2018 │ iiiSample Material - Not for Resale
AcknowledgementsWe would like to sincerely thank the experts who have contributed to the development of the DevOps Awareness.
Lead Authors
Marcel Foederer
Master Trainer@ITpreneurs (ITIL/Cobit 5/ISo20k/prInCe2/kepner Tregoe/DASA Devops Fundamentals and practitioner/Cloud Service Management)
Marcel is responsible for developing this Awareness program based on DASA DevOps Fundamentals course. As an IT Service Management trainer, consultant and line manager with over twenty five years’ experience in IT, Marcel has performed strategic and tactical assignments in a wide variety of areas. His experience includes project and program management including process design, product management, requirements analysis and training delivery related to the IT Service Management international best practice, in both the private and public sectors on a global scale. His area of consulting expertise is in advising organizations on IT Service Management, based on ITIL® (IT Infrastructure Library) best practices, and in the management of these initiatives to improve organizational and operational efficiencies and service delivery quality. He also excels as an experienced facilitator, trainer and lecturer. He is committed to the successful delivery of total solutions to his client base, achieved through respect for the management of change issues involved in the resulting integration of people, process and technology.
rik Farenhorst
Business unit Manager at xebia
Rik has a PhD in software engineering and more than 10 years of experience in the business-IT domain. He has worked as Enterprise/IT Architect, Consultant, Trainer and Coach, and has later grown into Sr. Management positions. He guides organizations and individuals in raising their bar by making IT simpler, better, and of higher quality. Rik works as Business Unit Manager at Xebia, a specialized international IT consultancy, solutions and training company specialized in high-performance IT, digital transformation, and thought leader in DevOps. Rik is a member of the editorial board of the DevOps Agile Skills Association (DASA).
Copyright © 2018 │ vSample Material - Not for Resale
Michiel Sens
Solution Architect at xebia
Michiel Sens has worked in the IT Industry for over 18 years, is co-writer of the book ‘Continuous Delivery for Managers’ and works as a Principal Consultant/Solution Architect at Xebia in The Netherlands. Michiel specializes in Continuous Delivery and full lifecycle software development programs and as such focuses on coaching Agile Teams, setting up central build environments, automating tests, automating deployment over multiple environments and implementing fully automated PaaS platforms. He advocates the use of Continuous Delivery at seminars and meetups and remains in touch with details by performing actual implementations as well.
Frederik Schukken
Managing Consultant at quint wellington redwood
Frederik is a Managing Consultant at Quint Wellington Redwood where he and his team help businesses to adopt disruptive thinking and create high-performance IT. He is passionate about helping others to adopt Lean and DevOps methodologies and break out of rigid, traditional ways of working.
Thomas kruitbosch
Devops Consultant at xebia
Thomas is specialized in Continuous Delivery and optimizing IT for fast adoption of new technologies. Thomas has extensive experience and in-depth knowledge of both development and operations. As Consultant, Trainer, and Conference Speaker, Thomas advocates the use of Agile and Automation Delivery principles. Also, he performs technical implementations of Continuous Delivery Automation and (cloud) platforms.
niels Loader
Managing Consultant at quint wellington redwood
As an advisor to 10 of IT organizations, Niels has extensive knowledge and experience in implementing IT Service Management, IT Performance Management, Lean IT, and DevOps within IT organizations. In 2010 and 2011, he was one of the initiators of the Lean IT Foundation certification and spent four years as the Chief Examiner for the APMG Lean IT certification. He is the Lead of the Content team of the Lean IT Association.
vi │ Copyright © 2018
Course Book | DevOps Awareness
Sample Material - Not for Resale
Course IntroduCtIonLet’s Get to Know Each OtherIntroduce yourself in the following format:
� Name
� Company
� Role and background
� Familiarity with DevOps concepts and their practice
� Experience in application development, infrastructure development, and/or operations
� Expectations from this course
Course OverviewWhat is DevOps? Is it for the Development and Operations teams? How it is helpful for the IT professionals? What are the opportunities or career path in the DevOps field? The DevOps Awareness course helps you know the answers of those questions. DevOps Awareness is a 1-day course that is designed to provide the basic education required to build your DevOps vocabulary and understand its principles and practices.
DASA Competence FrameworkThis 1-day course provides learners an extensive introduction to the core Agile DevOps principles. It covers all 12 key knowledge and skill competences that have been defined by the DevOps Agile Skills Association (DASA).
1
Copyright © 2018 │ 1Sample Material - Not for Resale
2Copyright © 2018 |
DevOps
Awareness
This 1-day course provides learners an extensive introduction to the core Agile DevOps principles. It covers all 12 key knowledge and skill competences that have been defined by the DevOps Agile Skills Association (DASA).
DASA Competence Framework
Business Value Optimization
Business Analysis
Test Specification
Programming Continuous Delivery
Security, Risk, and Compliance
Infrastructure Engineering
Architecture and Design
Courage Teambuilding
Continuous Improvement
DevOps Leadership
1
2
3
4
5
1- Novice/ 2- Competent / 3- Proficient / 4 - Expert / 5 - Master
The course objectives and subsequently the module objectives in this course are built around the DASA Competence Framework. So, before you learn about the objectives of the course, it is important to understand the DASA Competence Framework.
Knowledge Areas and Skill AreasThe DASA Competence Framework identifies (8) Knowledge Areas and (4) Skill Areas that are relevant in DevOps.
3Copyright © 2018 |
DevOps
Awareness
The DASA Competence Framework identifies (8) Knowledge Areas and (4) Skill Areasthat are relevant in DevOps.
Knowledge Areas and Skill Areas
Courage
Teambuilding
DevOps Leadership
Continuous improvement
Business Value Optimization
Business Analysis
Architecture & Design
Programming
Continuous Delivery
Test Specification
Infrastructure Engineering
Security, Risk & Compliance
Knowledge Areas Skills Areas
The following points suggest 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.
2 │ Copyright © 2018
Course Book | DevOps Awareness
Sample Material - Not for Resale
� Teambuilding focuses on ensuring the team bonds to a set of people that interact effectively in a common cause. In the course of doing so, they hold each other accountable and support each other.
� Devops Leadership is not reserved for management or other formal leadership positions. It is fundamentally about facilitating teams to reach at high 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.
The following points suggest what is meant by each knowledge area: � Business value optimization is to look at the use of the 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.
� Business Analysis is to analyze data and processes to determine what improvements have the 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 encompasses, 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. Programming is essential to develop applications. However, with the creation of infrastructure as code, programming has found its way into the infrastructure domain. In both the 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
Copyright © 2018 │ 3
Module 1 | Course Introduction
Sample Material - Not for Resale
promotes this way of developing applications, i.e. describe 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 is 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.
Competence Framework in PracticeDASA’s Competence Framework guides organizations to develop high performing teams.
Every individual operating in a DevOps team should be at: � Level 2 - Competent in the (8) Knowledge Areas;
� Level 3 - Proficient in the (4) Skill Areas.
DevOps teams should strive for � Level 4 - expert level in all 12 Areas.
4Copyright © 2018 |
DevOps
Awareness
DASA’s Competence Framework guides organizations to develop high performing teams.
Every individual operating in a DevOps team should be at:
Level 2 - Competent in the (8) Knowledge Areas.
Level 3 - Proficient in the (4) Skill Areas.
DevOps teams should strive for
Level 4 - Expert level in all 12 Areas.
Competence Framework in Practice
1- Novice / 2- Competent / 3- Proficient / 4 - Expert / 5 - Master
Knowledge Areas
Skill Areas
Each member contributes their skills and knowledge to the overall competences of the DevOps team.
4 │ Copyright © 2018
Course Book | DevOps Awareness
Sample Material - Not for Resale
5Copyright © 2018 |
DevOps
Awareness
Each member contributes their skills and knowledge to the overall competences of the DevOps team.
Competence Framework in Practice (Contd.)
KatjaOps Admin
TomOps Engineer
GerardProduct Owner
DaveEngineer
KaitlinEngineer
DheerajProduct Owner
Business Value Optimization
Business Analysis
Architecture and Design
Continuous Delivery
Programming
Programming
Test Specification
Security, Risk, Compliance
Infrastructure Engineering
Infrastructure Engineering
Test Specification
Programming Continuous Delivery
Programming
Courage
Leadership
C Improvement
Teambuilding
Courage
Leadership
C Improvement
Teambuilding
Courage
Leadership
C Improvement
Teambuilding
Courage
Leadership
C Improvement
Teambuilding
Courage
Leadership
C Improvement
Teambuilding
Courage
Leadership
C Improvement
Teambuilding
TEAM ASSESSMENT
1- Novice / 2- Competent / 3 - Proficient4 - Expert / 5 - Master
Master
Novice
As you will learn later in the course, DevOps strives for autonomous teams that need to have complete set of competencies and skills to build and maintain software quickly and successfully. So, it is important to assess what competencies and skills are required and what are the areas in which the team need to improve. The team’s capabilities can be assessed by performing the assessment of each team member.
An example of the assessment for each member of a team is depicted in the preceding figure. When you roll up each individual’s assessment, you will get a team chart. This chart shows an example of the capabilities on the skills and knowledge areas for a specific DevOps team.
Course Objectives � At the end of this course, you will be able to:
� Discuss 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.
� Describe the Service Delivery process.
� Explain the automation concepts for the software delivery process.
� Describe how DevOps relates to Lean and Agile methodologies.
DASA: Mastering DevOps in Practice (Knowledge and Skills)DASA Competence Framework recognizes five maturity levels, as shown in the following figure.
Copyright © 2018 │ 5
Module 1 | Course Introduction
Sample Material - Not for Resale
7Copyright © 2018 |
DevOps
Awareness
DASA Competence Framework recognizes five maturity levels, as shown in the following figure.
DASA: Mastering DevOps in Practice (Knowledge and Skills)
DevOps: Fundamentals
DevOps Specialization: Specify and Verify
Devops Specialization: Enable and Scale
DevOps Specialization: Create and Deliver
DevOps: Practitioner
Novice
Master
Competent
Proficient
Expert
DASA recognizes five maturity levels ranging from Novice to Master. The intent of DASA certifications is to bring IT professionals from level 1, that is, Novice to level 4, that is Expert.
� The DevOps Fundamentals certification leads to level 2 maturity that is “Competent” on all skill and knowledge areas.
� The DevOps Practitioner training adds level 3 maturity that is “Proficient” on all the skill areas.
� The three specialization modules lead to level 4 maturity, that is, “Expert” on various parts of the competence framework.
� Level 5 is out of scope for DASA and requires much more than just DevOps specific trainings.
Course Agenda
dAY 1
Module subject
01 Course Introduction
02 DevOps Introduction
03 DevOps and IT Aspects
6 │ Copyright © 2018
Course Book | DevOps Awareness
Sample Material - Not for Resale
Type of Activitiesgroup Discussions
The course contains group discussions, spread out in all modules, with the intent of enhancing participants’ understanding, adding context to the content, broadening participants perspective, reinforcing knowledge, and building confidence.
By interacting among themselves and responding to the varying viewpoints, participants tend to learn continually. These discussion allow the participants to come across the thoughts of their peers, which help them know about each other’s past experience, perspectives, and opinions in the context of the topic in discussion.
Course BookThe Course Book is a comprehensive source of information and contains whatever is taught in each module. It is structured in such a way that makes learning easy, simple, and consistent. It also contains several useful exercises related to the course.
Activity: Group Activity
Activity Time: 10 mins
Write down your expectations from this training on a sticky and attach it to a wall.
Module suMMArY
In this module, you learned that: � DevOps Awareness is a 1-day course that 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 1-day schedule of the training?
� The course contains group discussions and activities for better understanding of the concepts.
� The Course Book is a comprehensive source of information and contains whatever is taught in each module.
Copyright © 2018 │ 7
Module 1 | Course Introduction
Sample Material - Not for Resale
devops IntroduCtIonModule Topics
� Emergence of DevOps
� Core Principles of DevOps
eMerGenCe oF devops
typical Challenges traditional It organizations Face
3Copyright © 2018 |
DevOps
Awareness
Emergence of DevOps
Core Principles of DevOps
Typical Challenges Traditional IT Organizations Face
Manual ReleaseLow Quality
Product Backlog Infrequent Releases
2
Copyright © 2018 │ 9Sample Material - Not for Resale
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 of software, sporadic releases, and product backlog 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.
The two key teams involved in software development and delivery, Development and Operations, work with contradicting objectives which results in the creation of wall of confusion.
need for Change and stability Causes tension
The typical challenge that traditional IT organizations face is to deal with the wall of confusion between Development and Operations.
DevOps
Awareness
Emergence of DevOps
Core Principles of DevOps
The typical challenge that traditional IT organizations face is to deal with the wall of confusion between Development and Operations.
Need for Change and Stability Causes Tension
What is the key goal of the Development team?
Wall of confusion
Change Stability
Development Operations
What is the function of Operations team?
Is the Development and the Operations teams connected to each other?
Development is more focussed toward creating new functionalities (Realizing functional requirements / Utility aspects of a service), while Operations is more focussed toward creating a stable environment with a high level of Availability, Security, Capacity, and Continuity (Nonfuntional requirements / Warranty aspects of a service).
The wall of confusion is a combination of conflicting motivations, processes, and tooling. It can result in the following problems in production:
� In the absence of a procedural transition from Development to Operations, the Operations team faces challenges in the production. It gets back to the Development team for solutions resulting in delay.
� The Operations team is involved in managing the Production environment and can share relevant information which can help the Development team. However, lack of communication results in loss of sharing.
� The knowledge articles play an important role in building the cohesiveness between Development and Operations teams.
Wall of ConfusionThink of the wall of confusion as a solid brick wall where no communication is possible between the people standing on either side. They cooperate by sharing something physical, such as a note written on a piece of paper. The traditional way of developing software works the same way. If the Development team is working on an application, they hand it over to the Operations team only when it is complete. This approach has many loopholes and ultimately results in severe problems in production that causes blast like situation.
10 │ Copyright © 2018
Course Book | DevOps Awareness
Sample Material - Not for Resale