SlideShare une entreprise Scribd logo
1  sur  17
Agile DevOps: Environment Automation
Ben Tomasini
Software Developer, Agile Coach
First Principles
Our highest priority is to
satisfy the customer
through early and
continuous delivery
of valuable software.
http://agilemanifesto.org

Software
Environment
Necessary Focus
Developers must also support the operational use of their
software — a combination that’s become known as “devops.”
This further motivates writing good code and testing it
thoroughly. Developers’ personal stake in keeping the system
running smoothly complements the engineering procedures and
lets the system maintain quality at scale. Methodologies and tools
aren’t enough by themselves because they can always be
misused. Thus, a culture of personal responsibility is critical.
Kent Beck - Facebook - https://www.facebook.com/publications/514128035341603
Environmental Impediments
•
•
•
•
•
•

Ubiquitous in Agile initiatives
Common impediment at stand-ups at this moment
Unavailable environments
Costly to spin up another test environment
Inconsistent and stale configurations - system failures
Communication barriers between development and operations
Agile
Continuous Delivery
Short Cycle Times
Focus on Quality
Low Technical Debt
Individuals and Interactions

Dev

Ops

Delivery and
maintenance of the
software product

Delivery and
maintenance of the
systems on which the
software product
runs

How can we apply Agile practices to both?
Complementary Delivery
Pipelines
A Deeper Vertical Slice?
UI
Business Logic
Data Access
Server Environment
<< User Stories
It’s all software now ...
•
•

Virtualization has revolutionized system operations

•

Let’s apply known practices to both application development and
system development

•

Let’s develop our systems - using build automation,TDD, and
CI

We have historically run our software on systems, now lets use
software to build those systems
Three reasons why this won’t work :)
•

Reason 1: System provisioning is much more variable than building
software

•
•

Reason 2: Systems are more heavyweight than software artifacts
Reason 3: Doing this involves possibly unfamiliar tools and skills

•

Operations write software? That’s for developers.

•

Developers manage systems? That’s for operations.
Too variable ?
•

Traditional system provisioning involves

•
•
•
•

Many steps
Specialized knowledge
Manual input

One solution: make provisioning deterministic
Deterministic Process
Inputs

Process
(closed system)
The inputs guarantee the outputs
No “hidden” inputs
Only automate a deterministic system
Use tests to assert outputs

Outputs
Opscode Chef
•
•
•
•
•

Environment automation solution
Cook up servers with recipes
Free and Open Source
Vibrant Community
Influenced by Puppet, which was influenced by CFEngine
Too heavyweight ?
•

Solution: lightweight virtualization tools

•
•

Abstract away the hardware
Command line integrates with build system
http://dev.devops1.solutionsiq.com
Too unfamiliar?
•

Explore new areas:

•
•
•
•

Developers - Learn sysamin stuff - bash, init.d scripts, managing public
keys, vi instead of Eclipse
System engineers - Dig into software development - Ruby, Java, TDD

Embrace new tools
Dev/Ops collaboration - pairing, post release retrospectives
Questions?
Thank You

Ben Tomasini
btomasini@solutionsiq.com

www.solutionsiq.com

Contenu connexe

Tendances

iSQI Certification Days DASA – DevOps & ISTQB Frank Frambach
iSQI Certification Days DASA – DevOps & ISTQB Frank FrambachiSQI Certification Days DASA – DevOps & ISTQB Frank Frambach
iSQI Certification Days DASA – DevOps & ISTQB Frank Frambach
Ievgenii Katsan
 
Compasspoint Measurement Workshop
Compasspoint Measurement WorkshopCompasspoint Measurement Workshop
Compasspoint Measurement Workshop
Beth Kanter
 

Tendances (20)

Scaling Agile and Scrum (cPrime/Angela Johnson)
Scaling Agile and Scrum (cPrime/Angela Johnson)Scaling Agile and Scrum (cPrime/Angela Johnson)
Scaling Agile and Scrum (cPrime/Angela Johnson)
 
iSQI Certification Days DASA – DevOps & ISTQB Frank Frambach
iSQI Certification Days DASA – DevOps & ISTQB Frank FrambachiSQI Certification Days DASA – DevOps & ISTQB Frank Frambach
iSQI Certification Days DASA – DevOps & ISTQB Frank Frambach
 
DevOps Maturity Curve v5
DevOps Maturity Curve v5DevOps Maturity Curve v5
DevOps Maturity Curve v5
 
DevOps Transition Strategies
DevOps Transition StrategiesDevOps Transition Strategies
DevOps Transition Strategies
 
Building a DevOps Team that Isn't Evil
Building a DevOps Team that Isn't EvilBuilding a DevOps Team that Isn't Evil
Building a DevOps Team that Isn't Evil
 
Bn1006 demo ppt devops
Bn1006 demo ppt devopsBn1006 demo ppt devops
Bn1006 demo ppt devops
 
Puppet Labs EMC DevOps Day NYC Aug-2015
Puppet Labs  EMC DevOps Day NYC Aug-2015Puppet Labs  EMC DevOps Day NYC Aug-2015
Puppet Labs EMC DevOps Day NYC Aug-2015
 
DevOps in action - Azure DevOps
DevOps in action - Azure DevOpsDevOps in action - Azure DevOps
DevOps in action - Azure DevOps
 
Compasspoint Measurement Workshop
Compasspoint Measurement WorkshopCompasspoint Measurement Workshop
Compasspoint Measurement Workshop
 
DevOps
DevOpsDevOps
DevOps
 
DOES16 London - Darren Hague - SAP’s DevOps Journey: From Building an App to ...
DOES16 London - Darren Hague - SAP’s DevOps Journey: From Building an App to ...DOES16 London - Darren Hague - SAP’s DevOps Journey: From Building an App to ...
DOES16 London - Darren Hague - SAP’s DevOps Journey: From Building an App to ...
 
Professional Developer by Alexandre Cuva
Professional Developer by Alexandre CuvaProfessional Developer by Alexandre Cuva
Professional Developer by Alexandre Cuva
 
Daimler’s Community Approach to TAS Platform Monitoring
Daimler’s Community Approach to TAS Platform MonitoringDaimler’s Community Approach to TAS Platform Monitoring
Daimler’s Community Approach to TAS Platform Monitoring
 
DevOps Transformation - Another View
DevOps Transformation - Another ViewDevOps Transformation - Another View
DevOps Transformation - Another View
 
Scrum in Distributed Teams
Scrum in Distributed TeamsScrum in Distributed Teams
Scrum in Distributed Teams
 
DevOps unraveled - Nyenrode masterclass on Agile Management
DevOps unraveled - Nyenrode masterclass on Agile ManagementDevOps unraveled - Nyenrode masterclass on Agile Management
DevOps unraveled - Nyenrode masterclass on Agile Management
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
 
Essential SAFe and Launching your first Agile Release Train
Essential SAFe and Launching your first Agile Release TrainEssential SAFe and Launching your first Agile Release Train
Essential SAFe and Launching your first Agile Release Train
 
An introduction to DevOps
An introduction to DevOpsAn introduction to DevOps
An introduction to DevOps
 
Modernize Development with Agile Engineering Practices
Modernize Development with Agile Engineering PracticesModernize Development with Agile Engineering Practices
Modernize Development with Agile Engineering Practices
 

Similaire à Agile DevOps: Environment Automation

Introduction to dev ops
Introduction to dev opsIntroduction to dev ops
Introduction to dev ops
Len Bass
 
RubyDay-Turin13_Nov_15
RubyDay-Turin13_Nov_15RubyDay-Turin13_Nov_15
RubyDay-Turin13_Nov_15
Pierluigi Riti
 
Training Bootcamp - MainframeDevOps.pptx
Training Bootcamp - MainframeDevOps.pptxTraining Bootcamp - MainframeDevOps.pptx
Training Bootcamp - MainframeDevOps.pptx
Nashet Ali
 

Similaire à Agile DevOps: Environment Automation (20)

DevOps Overview in my own words
DevOps Overview in my own wordsDevOps Overview in my own words
DevOps Overview in my own words
 
How to Fit Performance Testing into a DevOps Environment
How to Fit Performance Testing into a DevOps EnvironmentHow to Fit Performance Testing into a DevOps Environment
How to Fit Performance Testing into a DevOps Environment
 
Dev ops != Dev+Ops
Dev ops != Dev+OpsDev ops != Dev+Ops
Dev ops != Dev+Ops
 
Introduction to devops
Introduction to devopsIntroduction to devops
Introduction to devops
 
Introduction to DevSecOps. An intuitiv approach
Introduction to DevSecOps. An intuitiv approachIntroduction to DevSecOps. An intuitiv approach
Introduction to DevSecOps. An intuitiv approach
 
26.1a.Introduction to DEVOPS_v2.pptx
26.1a.Introduction to DEVOPS_v2.pptx26.1a.Introduction to DEVOPS_v2.pptx
26.1a.Introduction to DEVOPS_v2.pptx
 
Introduction to dev ops
Introduction to dev opsIntroduction to dev ops
Introduction to dev ops
 
Agile & DevOps - It's all about project success
Agile & DevOps - It's all about project successAgile & DevOps - It's all about project success
Agile & DevOps - It's all about project success
 
RubyDay-Turin13_Nov_15
RubyDay-Turin13_Nov_15RubyDay-Turin13_Nov_15
RubyDay-Turin13_Nov_15
 
CI-CD and DevOps with Ruby
CI-CD and DevOps with RubyCI-CD and DevOps with Ruby
CI-CD and DevOps with Ruby
 
DevOps Online Training | DevOps Training Institute in Hyderabad
DevOps Online Training | DevOps Training Institute in HyderabadDevOps Online Training | DevOps Training Institute in Hyderabad
DevOps Online Training | DevOps Training Institute in Hyderabad
 
Application Lifecycle Management
Application Lifecycle ManagementApplication Lifecycle Management
Application Lifecycle Management
 
Devops
DevopsDevops
Devops
 
DevOps Training institute in Ameerpet
DevOps Training institute in Ameerpet DevOps Training institute in Ameerpet
DevOps Training institute in Ameerpet
 
Training Bootcamp - MainframeDevOps.pptx
Training Bootcamp - MainframeDevOps.pptxTraining Bootcamp - MainframeDevOps.pptx
Training Bootcamp - MainframeDevOps.pptx
 
Continuous delivery
Continuous deliveryContinuous delivery
Continuous delivery
 
DevOps and Build Automation
DevOps and Build AutomationDevOps and Build Automation
DevOps and Build Automation
 
The Journey to DevOps #MFSummit2017
The Journey to DevOps #MFSummit2017The Journey to DevOps #MFSummit2017
The Journey to DevOps #MFSummit2017
 
Introduction To Software Concepts Unit 1 & 2
Introduction To Software Concepts Unit 1 & 2Introduction To Software Concepts Unit 1 & 2
Introduction To Software Concepts Unit 1 & 2
 
Making software development processes to work for you
Making software development processes to work for youMaking software development processes to work for you
Making software development processes to work for you
 

Plus de Accenture | SolutionsIQ

PIMped Papyrus - A Language Workbench for UML DSLs
PIMped Papyrus - A Language Workbench for UML DSLsPIMped Papyrus - A Language Workbench for UML DSLs
PIMped Papyrus - A Language Workbench for UML DSLs
Accenture | SolutionsIQ
 

Plus de Accenture | SolutionsIQ (12)

The Product Wall Release Planning Workshop by Alan Dayley
The Product Wall Release Planning Workshop by Alan DayleyThe Product Wall Release Planning Workshop by Alan Dayley
The Product Wall Release Planning Workshop by Alan Dayley
 
The DNA of an Innovative Product Owner by Anu Smalley
The DNA of an Innovative Product Owner by Anu SmalleyThe DNA of an Innovative Product Owner by Anu Smalley
The DNA of an Innovative Product Owner by Anu Smalley
 
Who Killed Agile?
Who Killed Agile?Who Killed Agile?
Who Killed Agile?
 
Active Portfolio Management
Active Portfolio ManagementActive Portfolio Management
Active Portfolio Management
 
Lambda The Extreme: Test-Driving a Functional Language
Lambda The Extreme: Test-Driving a Functional LanguageLambda The Extreme: Test-Driving a Functional Language
Lambda The Extreme: Test-Driving a Functional Language
 
Agile2014 Briefing Deck
Agile2014 Briefing DeckAgile2014 Briefing Deck
Agile2014 Briefing Deck
 
It's OK to Fail: Creating a Safe Space to Learn from Failure
It's OK to Fail: Creating a Safe Space to Learn from FailureIt's OK to Fail: Creating a Safe Space to Learn from Failure
It's OK to Fail: Creating a Safe Space to Learn from Failure
 
Active Portfolio Management
Active Portfolio ManagementActive Portfolio Management
Active Portfolio Management
 
PIMped Papyrus - A Language Workbench for UML DSLs
PIMped Papyrus - A Language Workbench for UML DSLsPIMped Papyrus - A Language Workbench for UML DSLs
PIMped Papyrus - A Language Workbench for UML DSLs
 
Fear and Loathing in Agility: Long Live the Accounting Department
Fear and Loathing in Agility: Long Live the Accounting DepartmentFear and Loathing in Agility: Long Live the Accounting Department
Fear and Loathing in Agility: Long Live the Accounting Department
 
Active portfolio management
Active portfolio managementActive portfolio management
Active portfolio management
 
Agile2013 Briefing Deck
Agile2013 Briefing DeckAgile2013 Briefing Deck
Agile2013 Briefing Deck
 

Dernier

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Dernier (20)

Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 

Agile DevOps: Environment Automation

  • 1. Agile DevOps: Environment Automation Ben Tomasini Software Developer, Agile Coach
  • 2. First Principles Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. http://agilemanifesto.org Software Environment
  • 3. Necessary Focus Developers must also support the operational use of their software — a combination that’s become known as “devops.” This further motivates writing good code and testing it thoroughly. Developers’ personal stake in keeping the system running smoothly complements the engineering procedures and lets the system maintain quality at scale. Methodologies and tools aren’t enough by themselves because they can always be misused. Thus, a culture of personal responsibility is critical. Kent Beck - Facebook - https://www.facebook.com/publications/514128035341603
  • 4. Environmental Impediments • • • • • • Ubiquitous in Agile initiatives Common impediment at stand-ups at this moment Unavailable environments Costly to spin up another test environment Inconsistent and stale configurations - system failures Communication barriers between development and operations
  • 5. Agile Continuous Delivery Short Cycle Times Focus on Quality Low Technical Debt Individuals and Interactions Dev Ops Delivery and maintenance of the software product Delivery and maintenance of the systems on which the software product runs How can we apply Agile practices to both?
  • 7. A Deeper Vertical Slice? UI Business Logic Data Access Server Environment << User Stories
  • 8. It’s all software now ... • • Virtualization has revolutionized system operations • Let’s apply known practices to both application development and system development • Let’s develop our systems - using build automation,TDD, and CI We have historically run our software on systems, now lets use software to build those systems
  • 9. Three reasons why this won’t work :) • Reason 1: System provisioning is much more variable than building software • • Reason 2: Systems are more heavyweight than software artifacts Reason 3: Doing this involves possibly unfamiliar tools and skills • Operations write software? That’s for developers. • Developers manage systems? That’s for operations.
  • 10. Too variable ? • Traditional system provisioning involves • • • • Many steps Specialized knowledge Manual input One solution: make provisioning deterministic
  • 11. Deterministic Process Inputs Process (closed system) The inputs guarantee the outputs No “hidden” inputs Only automate a deterministic system Use tests to assert outputs Outputs
  • 12. Opscode Chef • • • • • Environment automation solution Cook up servers with recipes Free and Open Source Vibrant Community Influenced by Puppet, which was influenced by CFEngine
  • 13. Too heavyweight ? • Solution: lightweight virtualization tools • • Abstract away the hardware Command line integrates with build system
  • 15. Too unfamiliar? • Explore new areas: • • • • Developers - Learn sysamin stuff - bash, init.d scripts, managing public keys, vi instead of Eclipse System engineers - Dig into software development - Ruby, Java, TDD Embrace new tools Dev/Ops collaboration - pairing, post release retrospectives