SlideShare ist ein Scribd-Unternehmen logo
1 von 51
The DevOps
Handbook
HARISH K M
Manufacturing Value
Stream Technology Value
Stream
The sequence of activities an
organisation undertakes to deliver
upon.
The sequence of activities
required to design, produce, and
deliver a good or service to a
customer, including the dual flows
of information and material.
Same principle and pattern.
A process required to convert a
business hypothesis into a
technology enable service that
delivers value to the customer.
Lead Time Process Time
Clock starts when request
is made and ends when it
is full filled.
Clock starts when we begin
work on the customer
request. This omits the time
that the work is in queue,
waiting to be processed.
The Three Ways
The Firstway
The Principles of Flow
Enables fast left-to-right flow of work from
Development to Operations to the customer.
In order to maximise flow, we need to make work
visible, reduce our batch sizes and interval of work,
build in quality by preventing defects from being
passed to downstream work centres, and constantly
optimise for the global goals.
The Second Way
The Principles of Feedback
Enables the fast and constant flow of feedback from
right to left at all stages of our value stream. It
requires that we amplify feedback to prevent
problems from happening again, or enable faster
detection and recovery. By doing this, we create
quality at the source and generate or embed
knowledge where it is needed - this allows us to
create ever-safer systems of work where problems
are found and fixed long before a catastrophic
failure occurs.
The Third Way
The Principles of Continual Learning
Enables the creation of generative, high-trust
culture that supports a dynamic, disciplined, and
scientific approach to experimentation and risk-
taking, facilitating the creation of organisational
learning, both from success and failures.
The Firstway
The Principles of FLOW
The Principles of Flow
MAKE WORK VISIBLE e.g. Sprint Board, KANBAN
Board
The Principles of Flow
• REDUCE BATCH SIZES
Mass production vs Single piece flow
Batch is code
The Principles of Flow
• REDUCE THE NUMBER OF HANDOFFS
Automate as much as possible
• Continually identify and elevate our constraints
Environment Creation
Code Deployment
Test setup and run
Overly tight architecture
• ELIMINATE HARDSHIPS AND WASTE IN THE
VALUE STREAM
Partially done work
Extra processes, Extra Features
Task Switching, Waiting
Defects, Nonstandard or manual work
Heroics
The Principles of Flow
The Secondway
The Principles of
FEEDBACK
The Principles of
FEEDBACK
• WORKING SAFELY WITHIN COMPLEX SYSTEMS
• SEE PROBLEMS AS THEY OCCUR
• SWARM AND SOLVE PROBLEMS TO BUILD NEW
KNOWLEDGE
• KEEP PUSHING QUALITY CLOSER TO THE
SOURCE
• ENABLE OPTIMISING FOR DOWNSTREAM WORK
CENTERS
The Principles of
Continual Learning
ENABLE ORGANISATIONAL LEARNING AND A SAFETY
CULTURE
INSTITUTIONALISE THE IMPROVEMENT OF DAILY
WORK
TRANSFORM LOCAL DISCOVERIES INTO GLOBAL
IMPROVEMENTS
INJECT RESILIENCE PATTERNS INTO OUR DAILY
WORK
LEADERS REINFORCE A LEARNING CULTURE
WHERE TO START ?
Green Field Brown Field
Greenfield development is
when we build on
undeveloped land.
Greenfield DevOps projects
are often pilots to
demonstrate feasibility of
public or private clouds,
piloting deployment
automation, and similar
tools.
Brownfield development is
when we build on land that
was previously used for
industrial purposes,
potentially contaminated
with hazardous waste or
pollution.
Brownfield projects often
come with significant
amounts of technical debt,
such as having no test
automation or running on
unsupported platforms.
CREATE A VALUE STREAM MAP
TO SEE THE WORK
START WITH MOST SYMPATHETIC
AND INNOVATIVE GROUPS
IDENTIFY THE TEAMS
SUPPORTING OUR VALUE STREAM
Product Owner
Development
QA
Operations
InfoSec
Release Manager
Technology Executives or Value Stream Manager
What Else?
CREATE A DEDICATED TRANSFORMATION
TEAM
AGREE ON A SHARED GOAL
CONWAY’S LAW
“organisations which design systems... are
constrained to produce designs which are copies of
the communication structures of these
organisations…. The larger an organisation is, the
less flexibility it has and the more pronounced the
phenomenon.”
ORGANISATIONAL
ARCHETYPES
Functional Oriented Organisation
Matrix Oriented Organisation
Market Oriented Organisation
Functional
Organisation
Matrix
Organisation
Market
Oriented
Organisation
Optimise for
expertise,
division of labour,
or reducing cost.
Tall hierarchical
organisational
structure.
Have
Development &
Operations Team
separately.
Mix of Both Optimise for
responding
quickly to
customer
needs.
Flat
organisational
structure.
Adopt DevOps.
Functional vs Market
Orientation
Specialists vs Generalists
vs E-shaped
So, To get Greater
Outcome
• Design Team boundaries in accordance with Conway’s Law
• Create loosely coupled architectures to enable developer productivity and
safety
• Keep team sizes small (The two pizza team rule)
• Create shared services to increase developer productivity
• Embed DevOps engineer into our service teams
• Assign an DevOps liaison to each service team
• Invite DevOps to our dev stand-ups and retrospectives
• Make relevant DevOps work visible on shared KANBAN board
The Technical
Practices of Flow
The Technical Practices of
Flow
• Create the foundations of our deployment pipeline.
Create single repository of truth for the entire system
Enable On-Demand creation of Dev, Test, and Production environments
Spinning up a new environment in Cloud e.g. AWS
Infrastructure as a Code e.g. Terraform
Configuration Management Tools e.g. Ansible
Virtualised environment e.g. Vagrant
Make Infrastructure easier to rebuild than to repair.
• Modify Definition of Development “DONE” to include running in production-like
environments
• Enable Fast and Reliable Automated Testing
• Continuously build, test, and integrate our code and
environments.
The Technical Practices of
Flow
• Build a fast and reliable automated validation test suite
Unit Tests. Single method, Function or Class tested
in isolation. ‘Stub out’ Databases, Network calls
Acceptance Tests. Test the application as a whole.
Business acceptance criteria of a User Story.
Integration Tests. Testing application correctly
interacts with other production applications
• Catch errors as early in our automated testing as
possible
The Technical Practices of
Flow
The Technical Practices of
Flow
• Ensure tests run quickly(In parallel, if necessary)
• Test Driven Development. Write our Automated tests before we write the code.
Ensure tests fail
Ensure tests pass
Refactor & Ensure tests pass
• Automate as many of manual tests as possible
• Integrate Performance Testing into our Test suite
• Integrate Non functional requirements testing into our test suite
Availability, Scalability, Capacity, Security, and so forth
• Pull ‘Andon Cord’ when the deployment pipeline breaks
The Technical Practices of
Flow
• Enable and practice CI
• Adopt TRUNK based development practices
The Technical Practices of
Flow
• Automate and enable low risk releases.
• Ensure we maintain consistent environments.
• Deploying the same way to every environment.
• Automated Smoke testing our deployments.
The Technical Practices of
Flow
• Release Patterns
• Environment based release pattern
• Two or more environments. One environment receives customer’s
live traffic. New code is deployed to non-live environment, and the
release is performed moving traffic to this environment.
• E.g.
• Blue Green deployments pattern
• Canary Releases
• Cluster Immune Systems
The Technical Practices of
Flow
• Release Patterns
• Application based release pattern
• Modify the application and selectively release and expose
specific functionality by small configuration changes.
• E.g.
• Feature Flag. Visible to Development Team, Internal
employees, Selected customers.
• Dark Launch. Provides testing in production itself.
The Technical Practices of
Flow
• Blue Green deployment pattern
• Create two databases
• Decouple database changes from application
changes. Make only additive changes and never
mutate database objects.
The Technical Practices of
Flow
• The Canary release pattern
• Cluster Immune System release patterns.
Automatically rollback based on performance
threshold.
The Technical Practices of
Flow
• Architect for Low-Risk Releases
• Architectural Archetypes: Monoliths Vs
MicroServices
• Use Strangler Application pattern to safely evolve
our enterprise architecture.
The Technical Practices of
Flow
The Technical Practices of
Flow
The Technical Practices of
Flow
Strangler Application Pattern
Too tightly-coupled architecture.
Develop, Test, and Deploy the decoupled functionality
independently.
Placing existing functionality behind an API, where it remains
unchanged, and implementing new functionality using our
desired architecture, making calls to the old system when
necessary. When we implement strangler applications, we
seek to access all services through versioned APIs, also
called versioned services or immutable services.
The Technical
Practices of Feedback
The Technical Practices of
Feedback
• Create our centralised Telemetry Infrastructure
Data collection at the business logic, application,
and environments layer
An event router responsible for storing our events
and metrics.
• Create application logging telemetry that helps solving
production issues
DEBUG, INFO, WARN, ERROR, FATAL
The Technical Practices of
Feedback
• Create self-service access to telemetry and information radiators
• Find and fill any telemetry gaps
• Business Level. e.g. Number of sales transactions, revenue of sales
transactions, user signups etc.
• Application Level. e.g. Transaction times, User response times, application
faults etc.
• Infrastructure Level. e.g. WebServer traffic, CPU load, Disk usage etc.
• Client Software Level. e.g. JavaScript client errors, Mobile application errors,
crashes etc.
• Deployment Pipeline Level. e.g. deployment lead times, deployment
frequencies, environment status etc.
The Technical Practices of
Feedback
• Analyse Telemetry to Better anticipate problems
and achieve goals.
Use MEANS and STANDARD DEVIATIONS to
detect potential problems.
The Technical Practices of
Feedback
finally {
if ( !devOpsPrinciplesFollowed || !devOpsPracticesFollowed ) {
}
}
For Listening to `this.flow`
Do share `your.feedback`
Thanks

Weitere ähnliche Inhalte

Was ist angesagt?

What Is DevOps?
What Is DevOps?What Is DevOps?
What Is DevOps?Soumya De
 
Protecting Agile Transformation through Secure DevOps (DevSecOps)
Protecting Agile Transformation through Secure DevOps (DevSecOps)Protecting Agile Transformation through Secure DevOps (DevSecOps)
Protecting Agile Transformation through Secure DevOps (DevSecOps)Eryk Budi Pratama
 
Agile Metrics: Value, Flow, Quality, Culture
Agile Metrics: Value, Flow, Quality, CultureAgile Metrics: Value, Flow, Quality, Culture
Agile Metrics: Value, Flow, Quality, CultureBrad Appleton
 
SFA2018 Project to Product - Carmen DeArdo
SFA2018 Project to Product - Carmen DeArdoSFA2018 Project to Product - Carmen DeArdo
SFA2018 Project to Product - Carmen DeArdoCarmen DeArdo
 
ABN AMRO DevSecOps Journey
ABN AMRO DevSecOps JourneyABN AMRO DevSecOps Journey
ABN AMRO DevSecOps JourneyDerek E. Weeks
 
2019 DevSecOps Reference Architectures
2019 DevSecOps Reference Architectures2019 DevSecOps Reference Architectures
2019 DevSecOps Reference ArchitecturesSonatype
 
Kubernetes and Prometheus
Kubernetes and PrometheusKubernetes and Prometheus
Kubernetes and PrometheusWeaveworks
 
Integrating Hardware (Waterfall) and Software (Agile) Development
Integrating Hardware (Waterfall) and Software (Agile) DevelopmentIntegrating Hardware (Waterfall) and Software (Agile) Development
Integrating Hardware (Waterfall) and Software (Agile) DevelopmentIntland Software GmbH
 
Lean Agile Metrics And KPIs
Lean Agile Metrics And KPIsLean Agile Metrics And KPIs
Lean Agile Metrics And KPIsYuval Yeret
 
How to Get Started with DevSecOps
How to Get Started with DevSecOpsHow to Get Started with DevSecOps
How to Get Started with DevSecOpsCYBRIC
 
Comparing Ways to Scale Agile at Agile Product and Project Manager Meetup
Comparing Ways to Scale Agile at Agile Product and Project Manager MeetupComparing Ways to Scale Agile at Agile Product and Project Manager Meetup
Comparing Ways to Scale Agile at Agile Product and Project Manager MeetupBernd Schiffer
 
Setting up a Cloud Center of Excellence (CCoE) for Enterprise Customers
Setting up a Cloud Center of Excellence (CCoE) for Enterprise CustomersSetting up a Cloud Center of Excellence (CCoE) for Enterprise Customers
Setting up a Cloud Center of Excellence (CCoE) for Enterprise CustomersAli Asgar Juzer
 
[2019 DevOpsDays Taipei]Azure DevOps 建立 DevOps 團隊
[2019 DevOpsDays Taipei]Azure DevOps 建立 DevOps 團隊[2019 DevOpsDays Taipei]Azure DevOps 建立 DevOps 團隊
[2019 DevOpsDays Taipei]Azure DevOps 建立 DevOps 團隊Edward Kuo
 

Was ist angesagt? (20)

What Is DevOps?
What Is DevOps?What Is DevOps?
What Is DevOps?
 
Protecting Agile Transformation through Secure DevOps (DevSecOps)
Protecting Agile Transformation through Secure DevOps (DevSecOps)Protecting Agile Transformation through Secure DevOps (DevSecOps)
Protecting Agile Transformation through Secure DevOps (DevSecOps)
 
Agile Metrics: Value, Flow, Quality, Culture
Agile Metrics: Value, Flow, Quality, CultureAgile Metrics: Value, Flow, Quality, Culture
Agile Metrics: Value, Flow, Quality, Culture
 
Agile
AgileAgile
Agile
 
SFA2018 Project to Product - Carmen DeArdo
SFA2018 Project to Product - Carmen DeArdoSFA2018 Project to Product - Carmen DeArdo
SFA2018 Project to Product - Carmen DeArdo
 
ABN AMRO DevSecOps Journey
ABN AMRO DevSecOps JourneyABN AMRO DevSecOps Journey
ABN AMRO DevSecOps Journey
 
Azure dev ops
Azure dev opsAzure dev ops
Azure dev ops
 
2019 DevSecOps Reference Architectures
2019 DevSecOps Reference Architectures2019 DevSecOps Reference Architectures
2019 DevSecOps Reference Architectures
 
Kubernetes and Prometheus
Kubernetes and PrometheusKubernetes and Prometheus
Kubernetes and Prometheus
 
Integrating Hardware (Waterfall) and Software (Agile) Development
Integrating Hardware (Waterfall) and Software (Agile) DevelopmentIntegrating Hardware (Waterfall) and Software (Agile) Development
Integrating Hardware (Waterfall) and Software (Agile) Development
 
Lean Agile Metrics And KPIs
Lean Agile Metrics And KPIsLean Agile Metrics And KPIs
Lean Agile Metrics And KPIs
 
How to Get Started with DevSecOps
How to Get Started with DevSecOpsHow to Get Started with DevSecOps
How to Get Started with DevSecOps
 
Comparing Ways to Scale Agile at Agile Product and Project Manager Meetup
Comparing Ways to Scale Agile at Agile Product and Project Manager MeetupComparing Ways to Scale Agile at Agile Product and Project Manager Meetup
Comparing Ways to Scale Agile at Agile Product and Project Manager Meetup
 
Setting up a Cloud Center of Excellence (CCoE) for Enterprise Customers
Setting up a Cloud Center of Excellence (CCoE) for Enterprise CustomersSetting up a Cloud Center of Excellence (CCoE) for Enterprise Customers
Setting up a Cloud Center of Excellence (CCoE) for Enterprise Customers
 
DevOps and Tools
DevOps and ToolsDevOps and Tools
DevOps and Tools
 
DevOps
DevOps DevOps
DevOps
 
Api observability
Api observability Api observability
Api observability
 
DevOps intro
DevOps introDevOps intro
DevOps intro
 
SRE 101
SRE 101SRE 101
SRE 101
 
[2019 DevOpsDays Taipei]Azure DevOps 建立 DevOps 團隊
[2019 DevOpsDays Taipei]Azure DevOps 建立 DevOps 團隊[2019 DevOpsDays Taipei]Azure DevOps 建立 DevOps 團隊
[2019 DevOpsDays Taipei]Azure DevOps 建立 DevOps 團隊
 

Ähnlich wie The Devops Handbook

Testing in the new age of DevOps
Testing in the new age of DevOpsTesting in the new age of DevOps
Testing in the new age of DevOpsMoataz Mahmoud
 
Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0
Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0
Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0minseok kim
 
Using Lean Thinking to identify and address Delivery Pipeline bottlenecks
Using Lean Thinking to identify and address Delivery Pipeline bottlenecksUsing Lean Thinking to identify and address Delivery Pipeline bottlenecks
Using Lean Thinking to identify and address Delivery Pipeline bottlenecksSanjeev Sharma
 
Quantifying DevOps Adoption Empirically for Demonstrable ROI
Quantifying DevOps Adoption Empirically for Demonstrable ROIQuantifying DevOps Adoption Empirically for Demonstrable ROI
Quantifying DevOps Adoption Empirically for Demonstrable ROIDevOps for Enterprise Systems
 
How to go from waterfall app dev to secure agile development in 2 weeks
How to go from waterfall app dev to secure agile development in 2 weeks How to go from waterfall app dev to secure agile development in 2 weeks
How to go from waterfall app dev to secure agile development in 2 weeks Ulf Mattsson
 
Transforming to OpenStack: a sample roadmap to DevOps
Transforming to OpenStack: a sample roadmap to DevOpsTransforming to OpenStack: a sample roadmap to DevOps
Transforming to OpenStack: a sample roadmap to DevOpsNicolas (Nick) Barcet
 
Ncerc rlmca202 adm m4 ssm
Ncerc rlmca202 adm m4 ssmNcerc rlmca202 adm m4 ssm
Ncerc rlmca202 adm m4 ssmssmarar
 
Preparing for DevOps
Preparing for DevOpsPreparing for DevOps
Preparing for DevOpsEklove Mohan
 
ROLE OF iSAFE/iMobi IN SEAMLESS INTEGRATION OF THE DEVOPS ENVIRONMENT
ROLE OF iSAFE/iMobi IN SEAMLESS INTEGRATION OF THE DEVOPS ENVIRONMENTROLE OF iSAFE/iMobi IN SEAMLESS INTEGRATION OF THE DEVOPS ENVIRONMENT
ROLE OF iSAFE/iMobi IN SEAMLESS INTEGRATION OF THE DEVOPS ENVIRONMENTIndium Software
 
Continuous Delivery at DEK Technologies
Continuous Delivery at DEK TechnologiesContinuous Delivery at DEK Technologies
Continuous Delivery at DEK Technologiesdektech_se
 
Delivering applications at the pace of business
Delivering applications at the pace of businessDelivering applications at the pace of business
Delivering applications at the pace of businessAccenture Technology
 
Linked VI Introduction
Linked VI IntroductionLinked VI Introduction
Linked VI IntroductionClarence Ku
 
Enterprise Agile - Hybrid of Methods
Enterprise Agile - Hybrid of MethodsEnterprise Agile - Hybrid of Methods
Enterprise Agile - Hybrid of MethodsMaris Prabhakaran M
 
DEK Technologies Continuous Delivery one pager
DEK Technologies Continuous Delivery one pagerDEK Technologies Continuous Delivery one pager
DEK Technologies Continuous Delivery one pagermattiastronje
 
Creating an Operating Model to enable a high frequency organization
Creating an Operating Model to enable a high frequency organizationCreating an Operating Model to enable a high frequency organization
Creating an Operating Model to enable a high frequency organizationTom Laszewski
 

Ähnlich wie The Devops Handbook (20)

Testing in the new age of DevOps
Testing in the new age of DevOpsTesting in the new age of DevOps
Testing in the new age of DevOps
 
Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0
Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0
Pivotal korea transformation_strategy_seminar_enterprise_dev_ops_20160630_v1.0
 
SAFe and DevOps - better together
SAFe and DevOps - better togetherSAFe and DevOps - better together
SAFe and DevOps - better together
 
Using Lean Thinking to identify and address Delivery Pipeline bottlenecks
Using Lean Thinking to identify and address Delivery Pipeline bottlenecksUsing Lean Thinking to identify and address Delivery Pipeline bottlenecks
Using Lean Thinking to identify and address Delivery Pipeline bottlenecks
 
What is DevOps?
What is DevOps?What is DevOps?
What is DevOps?
 
Quantifying DevOps Adoption Empirically for Demonstrable ROI
Quantifying DevOps Adoption Empirically for Demonstrable ROIQuantifying DevOps Adoption Empirically for Demonstrable ROI
Quantifying DevOps Adoption Empirically for Demonstrable ROI
 
How to go from waterfall app dev to secure agile development in 2 weeks
How to go from waterfall app dev to secure agile development in 2 weeks How to go from waterfall app dev to secure agile development in 2 weeks
How to go from waterfall app dev to secure agile development in 2 weeks
 
Devops
DevopsDevops
Devops
 
Transforming to OpenStack: a sample roadmap to DevOps
Transforming to OpenStack: a sample roadmap to DevOpsTransforming to OpenStack: a sample roadmap to DevOps
Transforming to OpenStack: a sample roadmap to DevOps
 
Ncerc rlmca202 adm m4 ssm
Ncerc rlmca202 adm m4 ssmNcerc rlmca202 adm m4 ssm
Ncerc rlmca202 adm m4 ssm
 
Preparing for DevOps
Preparing for DevOpsPreparing for DevOps
Preparing for DevOps
 
ROLE OF iSAFE/iMobi IN SEAMLESS INTEGRATION OF THE DEVOPS ENVIRONMENT
ROLE OF iSAFE/iMobi IN SEAMLESS INTEGRATION OF THE DEVOPS ENVIRONMENTROLE OF iSAFE/iMobi IN SEAMLESS INTEGRATION OF THE DEVOPS ENVIRONMENT
ROLE OF iSAFE/iMobi IN SEAMLESS INTEGRATION OF THE DEVOPS ENVIRONMENT
 
Continuous Delivery at DEK Technologies
Continuous Delivery at DEK TechnologiesContinuous Delivery at DEK Technologies
Continuous Delivery at DEK Technologies
 
Delivering applications at the pace of business
Delivering applications at the pace of businessDelivering applications at the pace of business
Delivering applications at the pace of business
 
Linked VI Introduction
Linked VI IntroductionLinked VI Introduction
Linked VI Introduction
 
Isec
IsecIsec
Isec
 
Enterprise Agile - Hybrid of Methods
Enterprise Agile - Hybrid of MethodsEnterprise Agile - Hybrid of Methods
Enterprise Agile - Hybrid of Methods
 
DEK Technologies Continuous Delivery one pager
DEK Technologies Continuous Delivery one pagerDEK Technologies Continuous Delivery one pager
DEK Technologies Continuous Delivery one pager
 
DevOps
DevOpsDevOps
DevOps
 
Creating an Operating Model to enable a high frequency organization
Creating an Operating Model to enable a high frequency organizationCreating an Operating Model to enable a high frequency organization
Creating an Operating Model to enable a high frequency organization
 

Kürzlich hochgeladen

Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Cizo Technology Services
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Hr365.us smith
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...Technogeeks
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsSafe Software
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Matt Ray
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEEVICTOR MAESTRE RAMIREZ
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesPhilip Schwarz
 
Software Coding for software engineering
Software Coding for software engineeringSoftware Coding for software engineering
Software Coding for software engineeringssuserb3a23b
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfDrew Moseley
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Developmentvyaparkranti
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odishasmiwainfosol
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commercemanigoyal112
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsAhmed Mohamed
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationBradBedford3
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaHanief Utama
 
cpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.pptcpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.pptrcbcrtm
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 

Kürzlich hochgeladen (20)

Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
Global Identity Enrolment and Verification Pro Solution - Cizo Technology Ser...
 
Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)Recruitment Management Software Benefits (Infographic)
Recruitment Management Software Benefits (Infographic)
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data Streams
 
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
Open Source Summit NA 2024: Open Source Cloud Costs - OpenCost's Impact on En...
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
Cloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEECloud Data Center Network Construction - IEEE
Cloud Data Center Network Construction - IEEE
 
Folding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a seriesFolding Cheat Sheet #4 - fourth in a series
Folding Cheat Sheet #4 - fourth in a series
 
Software Coding for software engineering
Software Coding for software engineeringSoftware Coding for software engineering
Software Coding for software engineering
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdf
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Development
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
 
Cyber security and its impact on E commerce
Cyber security and its impact on E commerceCyber security and its impact on E commerce
Cyber security and its impact on E commerce
 
Unveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML DiagramsUnveiling Design Patterns: A Visual Guide with UML Diagrams
Unveiling Design Patterns: A Visual Guide with UML Diagrams
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
How to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion ApplicationHow to submit a standout Adobe Champion Application
How to submit a standout Adobe Champion Application
 
React Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief UtamaReact Server Component in Next.js by Hanief Utama
React Server Component in Next.js by Hanief Utama
 
cpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.pptcpct NetworkING BASICS AND NETWORK TOOL.ppt
cpct NetworkING BASICS AND NETWORK TOOL.ppt
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 

The Devops Handbook

  • 2. Manufacturing Value Stream Technology Value Stream The sequence of activities an organisation undertakes to deliver upon. The sequence of activities required to design, produce, and deliver a good or service to a customer, including the dual flows of information and material. Same principle and pattern. A process required to convert a business hypothesis into a technology enable service that delivers value to the customer.
  • 3. Lead Time Process Time Clock starts when request is made and ends when it is full filled. Clock starts when we begin work on the customer request. This omits the time that the work is in queue, waiting to be processed.
  • 5. The Firstway The Principles of Flow Enables fast left-to-right flow of work from Development to Operations to the customer. In order to maximise flow, we need to make work visible, reduce our batch sizes and interval of work, build in quality by preventing defects from being passed to downstream work centres, and constantly optimise for the global goals.
  • 6. The Second Way The Principles of Feedback Enables the fast and constant flow of feedback from right to left at all stages of our value stream. It requires that we amplify feedback to prevent problems from happening again, or enable faster detection and recovery. By doing this, we create quality at the source and generate or embed knowledge where it is needed - this allows us to create ever-safer systems of work where problems are found and fixed long before a catastrophic failure occurs.
  • 7. The Third Way The Principles of Continual Learning Enables the creation of generative, high-trust culture that supports a dynamic, disciplined, and scientific approach to experimentation and risk- taking, facilitating the creation of organisational learning, both from success and failures.
  • 9. The Principles of Flow MAKE WORK VISIBLE e.g. Sprint Board, KANBAN Board
  • 10. The Principles of Flow • REDUCE BATCH SIZES Mass production vs Single piece flow Batch is code
  • 11. The Principles of Flow • REDUCE THE NUMBER OF HANDOFFS Automate as much as possible • Continually identify and elevate our constraints Environment Creation Code Deployment Test setup and run Overly tight architecture
  • 12. • ELIMINATE HARDSHIPS AND WASTE IN THE VALUE STREAM Partially done work Extra processes, Extra Features Task Switching, Waiting Defects, Nonstandard or manual work Heroics The Principles of Flow
  • 14. The Principles of FEEDBACK • WORKING SAFELY WITHIN COMPLEX SYSTEMS • SEE PROBLEMS AS THEY OCCUR • SWARM AND SOLVE PROBLEMS TO BUILD NEW KNOWLEDGE • KEEP PUSHING QUALITY CLOSER TO THE SOURCE • ENABLE OPTIMISING FOR DOWNSTREAM WORK CENTERS
  • 15. The Principles of Continual Learning ENABLE ORGANISATIONAL LEARNING AND A SAFETY CULTURE INSTITUTIONALISE THE IMPROVEMENT OF DAILY WORK TRANSFORM LOCAL DISCOVERIES INTO GLOBAL IMPROVEMENTS INJECT RESILIENCE PATTERNS INTO OUR DAILY WORK LEADERS REINFORCE A LEARNING CULTURE
  • 17. Green Field Brown Field Greenfield development is when we build on undeveloped land. Greenfield DevOps projects are often pilots to demonstrate feasibility of public or private clouds, piloting deployment automation, and similar tools. Brownfield development is when we build on land that was previously used for industrial purposes, potentially contaminated with hazardous waste or pollution. Brownfield projects often come with significant amounts of technical debt, such as having no test automation or running on unsupported platforms.
  • 18. CREATE A VALUE STREAM MAP TO SEE THE WORK
  • 19. START WITH MOST SYMPATHETIC AND INNOVATIVE GROUPS
  • 20. IDENTIFY THE TEAMS SUPPORTING OUR VALUE STREAM Product Owner Development QA Operations InfoSec Release Manager Technology Executives or Value Stream Manager
  • 21. What Else? CREATE A DEDICATED TRANSFORMATION TEAM AGREE ON A SHARED GOAL
  • 22. CONWAY’S LAW “organisations which design systems... are constrained to produce designs which are copies of the communication structures of these organisations…. The larger an organisation is, the less flexibility it has and the more pronounced the phenomenon.”
  • 23. ORGANISATIONAL ARCHETYPES Functional Oriented Organisation Matrix Oriented Organisation Market Oriented Organisation
  • 24. Functional Organisation Matrix Organisation Market Oriented Organisation Optimise for expertise, division of labour, or reducing cost. Tall hierarchical organisational structure. Have Development & Operations Team separately. Mix of Both Optimise for responding quickly to customer needs. Flat organisational structure. Adopt DevOps.
  • 27. So, To get Greater Outcome • Design Team boundaries in accordance with Conway’s Law • Create loosely coupled architectures to enable developer productivity and safety • Keep team sizes small (The two pizza team rule) • Create shared services to increase developer productivity • Embed DevOps engineer into our service teams • Assign an DevOps liaison to each service team • Invite DevOps to our dev stand-ups and retrospectives • Make relevant DevOps work visible on shared KANBAN board
  • 29. The Technical Practices of Flow • Create the foundations of our deployment pipeline. Create single repository of truth for the entire system Enable On-Demand creation of Dev, Test, and Production environments Spinning up a new environment in Cloud e.g. AWS Infrastructure as a Code e.g. Terraform Configuration Management Tools e.g. Ansible Virtualised environment e.g. Vagrant Make Infrastructure easier to rebuild than to repair. • Modify Definition of Development “DONE” to include running in production-like environments
  • 30. • Enable Fast and Reliable Automated Testing • Continuously build, test, and integrate our code and environments. The Technical Practices of Flow
  • 31. • Build a fast and reliable automated validation test suite Unit Tests. Single method, Function or Class tested in isolation. ‘Stub out’ Databases, Network calls Acceptance Tests. Test the application as a whole. Business acceptance criteria of a User Story. Integration Tests. Testing application correctly interacts with other production applications • Catch errors as early in our automated testing as possible The Technical Practices of Flow
  • 33. • Ensure tests run quickly(In parallel, if necessary) • Test Driven Development. Write our Automated tests before we write the code. Ensure tests fail Ensure tests pass Refactor & Ensure tests pass • Automate as many of manual tests as possible • Integrate Performance Testing into our Test suite • Integrate Non functional requirements testing into our test suite Availability, Scalability, Capacity, Security, and so forth • Pull ‘Andon Cord’ when the deployment pipeline breaks The Technical Practices of Flow
  • 34. • Enable and practice CI • Adopt TRUNK based development practices The Technical Practices of Flow
  • 35. • Automate and enable low risk releases. • Ensure we maintain consistent environments. • Deploying the same way to every environment. • Automated Smoke testing our deployments. The Technical Practices of Flow
  • 36. • Release Patterns • Environment based release pattern • Two or more environments. One environment receives customer’s live traffic. New code is deployed to non-live environment, and the release is performed moving traffic to this environment. • E.g. • Blue Green deployments pattern • Canary Releases • Cluster Immune Systems The Technical Practices of Flow
  • 37. • Release Patterns • Application based release pattern • Modify the application and selectively release and expose specific functionality by small configuration changes. • E.g. • Feature Flag. Visible to Development Team, Internal employees, Selected customers. • Dark Launch. Provides testing in production itself. The Technical Practices of Flow
  • 38. • Blue Green deployment pattern • Create two databases • Decouple database changes from application changes. Make only additive changes and never mutate database objects. The Technical Practices of Flow
  • 39. • The Canary release pattern • Cluster Immune System release patterns. Automatically rollback based on performance threshold. The Technical Practices of Flow
  • 40. • Architect for Low-Risk Releases • Architectural Archetypes: Monoliths Vs MicroServices • Use Strangler Application pattern to safely evolve our enterprise architecture. The Technical Practices of Flow
  • 42. The Technical Practices of Flow Strangler Application Pattern Too tightly-coupled architecture. Develop, Test, and Deploy the decoupled functionality independently. Placing existing functionality behind an API, where it remains unchanged, and implementing new functionality using our desired architecture, making calls to the old system when necessary. When we implement strangler applications, we seek to access all services through versioned APIs, also called versioned services or immutable services.
  • 44. The Technical Practices of Feedback
  • 45. • Create our centralised Telemetry Infrastructure Data collection at the business logic, application, and environments layer An event router responsible for storing our events and metrics. • Create application logging telemetry that helps solving production issues DEBUG, INFO, WARN, ERROR, FATAL The Technical Practices of Feedback
  • 46. • Create self-service access to telemetry and information radiators • Find and fill any telemetry gaps • Business Level. e.g. Number of sales transactions, revenue of sales transactions, user signups etc. • Application Level. e.g. Transaction times, User response times, application faults etc. • Infrastructure Level. e.g. WebServer traffic, CPU load, Disk usage etc. • Client Software Level. e.g. JavaScript client errors, Mobile application errors, crashes etc. • Deployment Pipeline Level. e.g. deployment lead times, deployment frequencies, environment status etc. The Technical Practices of Feedback
  • 47. • Analyse Telemetry to Better anticipate problems and achieve goals. Use MEANS and STANDARD DEVIATIONS to detect potential problems. The Technical Practices of Feedback
  • 48.
  • 49. finally { if ( !devOpsPrinciplesFollowed || !devOpsPracticesFollowed ) { } }
  • 50.
  • 51. For Listening to `this.flow` Do share `your.feedback` Thanks