SlideShare uma empresa Scribd logo
1 de 48
Baixar para ler offline
Enable your Agile
Team with
Continuous
Delivery Pipelines
Esteban Garcia
Chief Technologist @ Nebbia Technology
Microsoft Regional Director
@EstebanFGarcia
Chief Technologist at Nebbia Technology
ALM MVP, Azure Insider, Regional Director
Pluralsight Author
Orlando .NET User Group | Orlando DevOps
ALMGuide.com
esteban@nebbiatech.com
@EstebanFGarcia
/in/estebangarcia
@EstebanFGarcia
Continuous
Delivery
• Build
• Release
• Cloud
• Infrastructure as Code
• Instrumentation
• Feedback
@EstebanFGarcia
Technology/Products
that you will see
today
Visual Studio Team Services
• Backlog
• Build
• Release
ARM Templates
Azure
.NET Core
Angular
Containers
Cosmos DB
@EstebanFGarcia
And you can do CI/CD with many others
@EstebanFGarcia
@EstebanFGarcia
Potentially
Shippable
Product
• PBIs delivered each sprint
• Focuses on velocity
• We forget that our product has
to ACTUALLY ship
• Produces working code, but
not necessarily operational
code
• Leads to feature factories
@EstebanFGarcia
Cannot measure value
only based on number of
features delivered
@EstebanFGarcia
An unreleased feature loses value every day that it
sits on the shelf
@EstebanFGarcia
Continuous
Delivery • Continuous Integration
• Continuous Testing
• Constant Monitoring
• Pipeline Analytics
@EstebanFGarcia
@EstebanFGarcia
Why
Continuous
Delivery?
• Time to market - Reduce
the cycle-time between an
idea and production
• Enable feedback loops
• Increased quality
• Reduce risk related to long
release cycles
• Sustainability
@EstebanFGarcia
Challenges
Budget
Time
Priority
Skillset
Organization Buy-in
Measure
deploys per day
instead of
lead time
@EstebanFGarcia
How long does it take you to go
from code commit to
successfully running in
production?
@EstebanFGarcia
Shift Left
Enable Feedback
Loops
• Big loops
developer -> feature ->
release -> backlog
• Small loops
CI (integration and test)
@EstebanFGarcia
Feedback in action
• Peer review vs external
change approval
• Proactive monitoring
• Collaboration between Dev
and Ops
• Customers access a
production system
• Customers get a say on
your backlog
@EstebanFGarcia
Development practices are evolving
@EstebanFGarcia
Where do we
start?
CI – Verify code quality
CD – Automated deployment
Instrumentation –
Understand usage
Feedback – Learn and evolve
@EstebanFGarcia
DevOps lifecycle
Development Operations
@EstebanFGarcia
DevOps drivers
• Troubleshooting performance and
availability is often difficult
• Operations cannot keep up with
development and release fast enough
• Agile methodologies speed up the
development cycle
• Prioritization of investments is not
based on real-world usage patterns
Development Operations
@EstebanFGarcia
It starts with an idea – and a plan
how to turn this idea into reality …
Manage work
Develop + Test 1
Plan
Project starts
PlanTrack progress
@EstebanFGarcia
Write Code
Unit Testing
2
Build
Version Control
Build Verification
Release
Once the iteration starts, developers
turn great ideas into features …
Develop + Test
@EstebanFGarcia
Continuous Integration (CI)
Issues
• Delivery delays
• Non-working/low-quality code
• Incomplete solutions
• Rework
Value
• Frequent integration
• Higher quality
• Repeatability
cspkg
DEV
@EstebanFGarcia
Automate build and test
Triggered on commit
Collaborate through integration
Understand code quality
Rapid feedback
Continuous
Integration
@EstebanFGarcia
What’s
involved?
Single Source Repository
Automate the build
Self-testing
Commit often (at least daily)
Build upon commit
Keep it fast
Build output should be accessible
Build results should be visible
CI Tools
VSTS Build
Jenkins
TeamCity
Travis CI
Go CD
Bamboo
CircleCI
@EstebanFGarcia
Build agent
Build trigger
Repository access
Test results
Code coverage
Build outputs
CI
Concepts
@EstebanFGarcia
Demo - CI
Test Automation
Because it’s not just about compiling
Demo – Test automation
Cloud
Load Testing
Integration testing
environment
Automated functional
testing environment
3
Pre-production
environment
Staging
environmen
t
Monitor + Learn
When all tests pass, the build is deployed to testing
environments for each stage in the release process
Release
@EstebanFGarcia
Continuous Delivery (CD) – a DevOps practice
Issues
• Slow delivery cadence
• Limited predictability when deploying
• Complexity when deploying
Value
• Consistency
• Accelerated deployment
• Repeatability
• Human error reductionDEV
@EstebanFGarcia
Build trigger
Task execution
Artifact store
Orchestration
Gates
Environment definition
Notifications
Release
Management
@EstebanFGarcia
@EstebanFGarcia
Source: Redgate
CD Tools
VSTS Release
ElectricFlow
Octopus Deploy
CA Release Automation
IBM UrbanCode
Serena Deployment
@EstebanFGarcia
Demo - Release
Hyperscale
Deploy anywhere
Removes physical constraints
Quickly create and tear down
Easily support multiple
environments
Cloud
@EstebanFGarcia
Descriptive way to manage
infrastructure
Version controlled
Key DevOps practice
Enables production-like
environments
Repeatable
Infrastructure as
Code
@EstebanFGarcia
@EstebanFGarcia
Ansible
Puppet
Chef
Terraform
ARM (Azure)
Cloud Formation (AWS)
Infrastructure as
Code options
Demo - IaC
Learn and understand how users use your app, how it reacts
and quickly fix issues and bugs
Monitor + Learn
4
Monitor
Feedback
Plan the next iteration
@EstebanFGarcia
Demo - Instrumentation and Feedback
Practices that
enable agility
• Source control everything
• Automate all things!
• Builds
• Test
• Infrastructure
• Deployments
• More
@EstebanFGarcia
New Normal
• Deploy as soon as a feature is done
• Practice deployments early and often –
production is no longer an event
• Inject quality throughout the process
• Engage operations early – work together
Thank you
Esteban Garcia
@EstebanFGarcia
esteban@nebbiatech.com

Mais conteúdo relacionado

Mais procurados

JIRA Performance Testing in Pictures - Edward Bukoski Michael March
JIRA Performance Testing in Pictures - Edward Bukoski Michael MarchJIRA Performance Testing in Pictures - Edward Bukoski Michael March
JIRA Performance Testing in Pictures - Edward Bukoski Michael March
Atlassian
 

Mais procurados (20)

Zalenium - How to run Selenium Script using Docker and Selenium Grid
Zalenium - How to run Selenium Script using Docker and Selenium GridZalenium - How to run Selenium Script using Docker and Selenium Grid
Zalenium - How to run Selenium Script using Docker and Selenium Grid
 
Pivotal Tracker Overview
Pivotal Tracker OverviewPivotal Tracker Overview
Pivotal Tracker Overview
 
Alm with tfs 2013
Alm with tfs 2013Alm with tfs 2013
Alm with tfs 2013
 
IaC? VSTS to the rescue! Abbreviations explained
IaC? VSTS to the rescue! Abbreviations explainedIaC? VSTS to the rescue! Abbreviations explained
IaC? VSTS to the rescue! Abbreviations explained
 
Story Testing Approach for Enterprise Applications using Selenium Framework
Story Testing Approach for Enterprise Applications using Selenium FrameworkStory Testing Approach for Enterprise Applications using Selenium Framework
Story Testing Approach for Enterprise Applications using Selenium Framework
 
Continuous delivery from the trenches
Continuous delivery from the trenchesContinuous delivery from the trenches
Continuous delivery from the trenches
 
Build sfdx plugin in 15 minutes
Build sfdx plugin in 15 minutesBuild sfdx plugin in 15 minutes
Build sfdx plugin in 15 minutes
 
SenchaCon 2016: Developing and Delivering Quality Code, Frequently - Neil Manvar
SenchaCon 2016: Developing and Delivering Quality Code, Frequently - Neil ManvarSenchaCon 2016: Developing and Delivering Quality Code, Frequently - Neil Manvar
SenchaCon 2016: Developing and Delivering Quality Code, Frequently - Neil Manvar
 
#ESPC18 How to do #devops with the #SharePoint Framework and why it matters?
#ESPC18 How to do #devops with the #SharePoint Framework and why it matters?#ESPC18 How to do #devops with the #SharePoint Framework and why it matters?
#ESPC18 How to do #devops with the #SharePoint Framework and why it matters?
 
Jenkins as the Test Reporting Framework
Jenkins as the Test Reporting FrameworkJenkins as the Test Reporting Framework
Jenkins as the Test Reporting Framework
 
Sencha Roadshow 2017: Best Practices for Implementing Continuous Web App Testing
Sencha Roadshow 2017: Best Practices for Implementing Continuous Web App TestingSencha Roadshow 2017: Best Practices for Implementing Continuous Web App Testing
Sencha Roadshow 2017: Best Practices for Implementing Continuous Web App Testing
 
Continous integration and delivery for single page applications
Continous integration and delivery for single page applicationsContinous integration and delivery for single page applications
Continous integration and delivery for single page applications
 
Hidden Treasure - TestComplete Script Extensions
Hidden Treasure - TestComplete Script ExtensionsHidden Treasure - TestComplete Script Extensions
Hidden Treasure - TestComplete Script Extensions
 
Merge hells!! feature toggles to the rescue
Merge hells!! feature toggles to the rescueMerge hells!! feature toggles to the rescue
Merge hells!! feature toggles to the rescue
 
Key alias dev standard final
Key alias   dev standard finalKey alias   dev standard final
Key alias dev standard final
 
Appium vs Espresso and XCUI Test
Appium vs Espresso and XCUI TestAppium vs Espresso and XCUI Test
Appium vs Espresso and XCUI Test
 
Microsoft Team Foundation Server Build 2015
Microsoft Team Foundation Server Build 2015Microsoft Team Foundation Server Build 2015
Microsoft Team Foundation Server Build 2015
 
JIRA Performance Testing in Pictures - Edward Bukoski Michael March
JIRA Performance Testing in Pictures - Edward Bukoski Michael MarchJIRA Performance Testing in Pictures - Edward Bukoski Michael March
JIRA Performance Testing in Pictures - Edward Bukoski Michael March
 
Lap around ALM with Visual Studio and TFS 2013
Lap around ALM with Visual Studio and TFS 2013Lap around ALM with Visual Studio and TFS 2013
Lap around ALM with Visual Studio and TFS 2013
 
Grokking TechTalk #19: Software Development Cycle In The International Moneta...
Grokking TechTalk #19: Software Development Cycle In The International Moneta...Grokking TechTalk #19: Software Development Cycle In The International Moneta...
Grokking TechTalk #19: Software Development Cycle In The International Moneta...
 

Semelhante a deliver:agile - Enable your Agile Team with Continuous Delivery Pipelines

Acing application lifecycle management in SharePoint
Acing application lifecycle management in SharePointAcing application lifecycle management in SharePoint
Acing application lifecycle management in SharePoint
Jeremy Thake
 
From 0 to DevOps in 80 Days [Webinar Replay]
From 0 to DevOps in 80 Days [Webinar Replay]From 0 to DevOps in 80 Days [Webinar Replay]
From 0 to DevOps in 80 Days [Webinar Replay]
Dynatrace
 
Build software like a bag of marbles, not a castle of LEGO®
Build software like a bag of marbles, not a castle of LEGO®Build software like a bag of marbles, not a castle of LEGO®
Build software like a bag of marbles, not a castle of LEGO®
Hannes Lowette
 

Semelhante a deliver:agile - Enable your Agile Team with Continuous Delivery Pipelines (20)

Continuous Integration
Continuous IntegrationContinuous Integration
Continuous Integration
 
DevOps in an Embedded World
DevOps in an Embedded WorldDevOps in an Embedded World
DevOps in an Embedded World
 
DevOps for AI Apps
DevOps for AI AppsDevOps for AI Apps
DevOps for AI Apps
 
Acing application lifecycle management in SharePoint
Acing application lifecycle management in SharePointAcing application lifecycle management in SharePoint
Acing application lifecycle management in SharePoint
 
CI/CD for mobile at HERE
CI/CD for mobile at HERECI/CD for mobile at HERE
CI/CD for mobile at HERE
 
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as CodeConfoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
Confoo-Montreal-2016: Controlling Your Environments using Infrastructure as Code
 
Modern Web-site Development Pipeline
Modern Web-site Development PipelineModern Web-site Development Pipeline
Modern Web-site Development Pipeline
 
Lean-Agile Development with SharePoint - Bill Ayers
Lean-Agile Development with SharePoint - Bill AyersLean-Agile Development with SharePoint - Bill Ayers
Lean-Agile Development with SharePoint - Bill Ayers
 
Dev ops using Jenkins
Dev ops using JenkinsDev ops using Jenkins
Dev ops using Jenkins
 
Continuous integration and delivery for java based web applications
Continuous integration and delivery for java based web applicationsContinuous integration and delivery for java based web applications
Continuous integration and delivery for java based web applications
 
Continuous delivery @wcap 5-09-2013
Continuous delivery   @wcap 5-09-2013Continuous delivery   @wcap 5-09-2013
Continuous delivery @wcap 5-09-2013
 
Continuos Integration and Delivery: from Zero to Hero with TeamCity, Docker a...
Continuos Integration and Delivery: from Zero to Hero with TeamCity, Docker a...Continuos Integration and Delivery: from Zero to Hero with TeamCity, Docker a...
Continuos Integration and Delivery: from Zero to Hero with TeamCity, Docker a...
 
From 0 to DevOps in 80 Days [Webinar Replay]
From 0 to DevOps in 80 Days [Webinar Replay]From 0 to DevOps in 80 Days [Webinar Replay]
From 0 to DevOps in 80 Days [Webinar Replay]
 
Perforce on Tour 2015 - Optimising the Developer Pipeline: Deliver Faster & ...
Perforce on Tour 2015 -  Optimising the Developer Pipeline: Deliver Faster & ...Perforce on Tour 2015 -  Optimising the Developer Pipeline: Deliver Faster & ...
Perforce on Tour 2015 - Optimising the Developer Pipeline: Deliver Faster & ...
 
Continuous Integration as a Development Team’s Way of Life
Continuous Integration as a Development Team’s Way of LifeContinuous Integration as a Development Team’s Way of Life
Continuous Integration as a Development Team’s Way of Life
 
Udvid din test portefølje med coded ui test og cloud load test
Udvid din test portefølje med coded ui test og cloud load testUdvid din test portefølje med coded ui test og cloud load test
Udvid din test portefølje med coded ui test og cloud load test
 
Build software like a bag of marbles, not a castle of LEGO®
Build software like a bag of marbles, not a castle of LEGO®Build software like a bag of marbles, not a castle of LEGO®
Build software like a bag of marbles, not a castle of LEGO®
 
Continuous integration
Continuous integrationContinuous integration
Continuous integration
 
DevOpsCon 2015 - DevOps in Mobile Games
DevOpsCon 2015 - DevOps in Mobile GamesDevOpsCon 2015 - DevOps in Mobile Games
DevOpsCon 2015 - DevOps in Mobile Games
 
Introduction to jenkins
Introduction to jenkinsIntroduction to jenkins
Introduction to jenkins
 

Mais de Esteban Garcia

TFS Build - Continuous Integration
TFS Build - Continuous IntegrationTFS Build - Continuous Integration
TFS Build - Continuous Integration
Esteban Garcia
 

Mais de Esteban Garcia (11)

Agile Orlando - Business Agility
Agile Orlando - Business AgilityAgile Orlando - Business Agility
Agile Orlando - Business Agility
 
Orlando Code Camp 2015 Keynote
Orlando Code Camp 2015 KeynoteOrlando Code Camp 2015 Keynote
Orlando Code Camp 2015 Keynote
 
Managing tfs
Managing tfsManaging tfs
Managing tfs
 
Intro to Microsoft Test Manager
Intro to Microsoft Test ManagerIntro to Microsoft Test Manager
Intro to Microsoft Test Manager
 
CI with TFS
CI with TFSCI with TFS
CI with TFS
 
Succeeding with Scrum
Succeeding with ScrumSucceeding with Scrum
Succeeding with Scrum
 
ONETUG opening - July 2011
ONETUG opening - July 2011ONETUG opening - July 2011
ONETUG opening - July 2011
 
Scrum - Atlanta Code Camp
Scrum - Atlanta Code CampScrum - Atlanta Code Camp
Scrum - Atlanta Code Camp
 
MTM - Atlanta Code Camp
MTM - Atlanta Code CampMTM - Atlanta Code Camp
MTM - Atlanta Code Camp
 
OPASS - Microsoft Test Manager
OPASS - Microsoft Test ManagerOPASS - Microsoft Test Manager
OPASS - Microsoft Test Manager
 
TFS Build - Continuous Integration
TFS Build - Continuous IntegrationTFS Build - Continuous Integration
TFS Build - Continuous Integration
 

Último

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
giselly40
 

Último (20)

Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
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...
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
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)
 
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
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 

deliver:agile - Enable your Agile Team with Continuous Delivery Pipelines