SlideShare uma empresa Scribd logo
1 de 50
Breaking the 2 Pizza Paradox with
your Platform as a Application
Mark Rendell
mark.rendell@accenture.com
@markosrendell
http://markosrendell.wordpress.com
Day Job
“Develop and Operate Platforms optimised for rapid delivery”
A globally networked pool of resources providing
projects the option to have key areas of their DevOps
delivered as a service. By emphasising Continuous
Delivery, we are able to vastly improve your Software
Delivery Lifecycle at all each stages including
Transformation, Mobilisation and Assessment
Software Configuration Management
Release Management
Environment Management
We can…
1. Take a project from a standing-start to a working Development
and Tools infrastructure in days
2. Increase Agility by using our pioneering methods for Continuous
Delivery
3. Increase productivity and predictability through fully automated
environments
4. Reduce Cost by using proven processes and
expertise to reduce errors and downtime
Build & Deploy Automation
Continuous Delivery
Tools
5. Increase quality and efficiency
Infrastructure as code
CloudPaaS
DCSC
@markosrendell
The Objective
@markosrendell
Value Stream
Idea Value
@markosrendell
DevOps definition (of the moment):
We value:
Enhancing IT systems
to meet the Business’ needs
over
IT operating efficiency
@markosrendell
6
Value Stream
ValueIdea
@markosrendell
The Problem
@markosrendell
Development
Team
Portal
CMS
PIM
ERP
CRM
IB
Operations
Team
Portal
CMS
PIMERP
CRM
IB
Platform
@markosrendell
Enterprise
Architects
Portal
CMS
PIMERP CRM
IB
Platform
Project Rel 1
Team
Portal
CMS
PIM
ERP
CRM
IB
Platform
Project Rel. 2
Team
Portal
CMS
PIM
ERP
CRM
IB
Platform
Legacy System
Operations Team
Portal
PIMERP
CRM
Platform
Legacy System
App Maint, Team
Portal
PIMERP
CRM
Platform
Server and
Storage Team
Porta
l
CMS
PIMERP CRM
IB
Platform
Networks
Team
Portal
CMS
PIM
ERP
CRM
IB
Platform
SysAdmin
Team
Portal
CMS
PIM
ERP
CRM
IB
Platform
UI Design
Team
Portal
CMS
Project Rel. 3
Team
Portal
CMS
PIM
ERP
CRM
IB
Platform
Enterprise Systems
Dev Team
Portal
CMS
PIM
ERP
CRM
IB
Platform
DBA Team
Porta
lCM
S
PIMERP CR
M
IB
Platform
@markosrendell
DevOps?
Portal
CMS
PIMERP
CRM
IB
Platform
@markosrendell
Big pizzas are good
Big teams are bad
@markosrendell
Idea
Value
Idea Plan Develop Package Deploy Test Release Operate
Problem Space
Content Management System
Portal
ERP System
CRM System
@markosrendell
http://img04.deviantart.net/51c8/i/2009/202/3/7/noah__s_ark_2_by_dinzydragon.jpg
Rainforests not Zoos
Idea Plan Develop Package Deploy Test Release Operate
@markosrendell
Enterprise
Architects
Project Rel 1 Team
Project
Rel. 2
Team
Legacy
System
Operations
Team
Legacy System App
Maint, Team
Server and
Storage
Team
Networks
Team
DBA Team
UI Design
Team
Project
Rel. 3
Team
Enterprise Systems
Dev Team
SysAdmin Team
The Solution
@markosrendell
Enterprise
Architects
Project Rel 1 Team
Project
Rel. 2
Team
Legacy
System
Operations
Team
Legacy System App
Maint, Team
Server and
Storage
Team
Networks
Team
DBA Team
UI Design
Team
Project
Rel. 3
Team
Enterprise Systems
Dev Team
SysAdmin Team
Idea Plan Develop Package Deploy Test Release Operate
@markosrendell
Content Management System
Portal
ERP System
CRM System
Enterprise
Architects
Project Rel 1 Team
Project
Rel. 2
Team
Legacy
System
Operations
Team
Legacy System App
Maint, Team
Server and
Storage
Team
Networks
Team
DBA Team
UI Design
Team
Project
Rel. 3
Team
Enterprise Systems
Dev Team
SysAdmin Team
Idea Plan Develop Package Deploy Test Release Operate
Content Management System
Portal
ERP System
CRM System
Development and Operations Team
Development and Operations Team
Development and Operations Team
Development and Operations Team
@markosrendell
Idea Plan Develop Package Deploy Test Release Operate
Enterprise
Architects
Project Rel 1 Team
Project
Rel. 2
Team
Legacy
System
Operations
Team
Legacy System App
Maint, Team
Server and
Storage
Team
Networks
Team
DBA Team
UI Design
Team
Project
Rel. 3
Team
Enterprise Systems
Dev Team
SysAdmin Team
Content Management System
Portal
ERP System
CRM System
Development and Operations Team
Development and Operations Team
Development and Operations Team
Development and Operations Team
@markosrendell
Services
Development and Operations Team
Development and Operations Team
Development and Operations Team
DevOps definition (of the moment):
Organising for throughput by
forming teams that both
Develop and Operate
Products end-to-end
@markosrendell
Enterprise
Architects
Project Rel 1 Team
Project
Rel. 2
Team
Legacy
System
Operations
Team
Legacy System App
Maint, Team
Server and
Storage
Team
Networks
Team
DBA Team
UI Design
Team
Project
Rel. 3
Team
Enterprise Systems
Dev Team
SysAdmin Team
Idea Plan Develop Package Deploy Test Release Operate
SysAdmin Team
Content Management System
Portal
ERP System
CRM System
Development and Operations Team
Development and Operations Team
Development and Operations Team
Development and Operations Team
Development and Operations Team
Development and Operations Team
Legacy
System
Operations
Team
Networks
Team
DBA Team
@markosrendell
Server and
Storage
Team
SysAdmin Team
Services
Enterprise
Architects
Project Rel 1 Team
Project
Rel. 2
Team
Legacy
System
Operations
Team
Legacy System App
Maint, Team
Server and
Storage
Team
Networks
Team
DBA Team
UI Design
Team
Project
Rel. 3
Team
Enterprise Systems
Dev Team
SysAdmin Team
Content Management System
Portal
ERP System
CRM System
Idea Plan Develop Package Deploy Test Release Operate
Services
Development and Operations Team
Development and Operations Team
Development and Operations Team
Development and Operations Team
Development and Operations Team
Development and Operations Team
Development and Operations Team
Platform Application
@markosrendell
Business Applications
Platform as an Application
(Could use Infrastructure as a Service)
@markosrendell
Idea Plan Develop Package Deploy Test Release Operate
Development and Operations Team
Development and Operations Team
Development and Operations Team
Development and Operations Team
Development and Operations Team
Content Management System
Portal
ERP System
CRM System
Platform
Development and Operations Team
@markosrendell
https://upload.wikimedia.org/wikipedia/commons/c/cb/Kabul_diving_platform.jpg
Public PaaS?
@markosrendell
Build or Buy?
https://www.flickr.com/photos/nicorien/118131870
We say yesBuild or Buy?
https://farm2.staticflickr.com/1370/898160943_35ef6551c7_o_d.jpg@markosrendell
Engineered
Sonar Code
Analysis
Run Unit Tests
Package
Committer: jdoe
Story:25
Commit ID: 113
https://github.com/bbatsov/rubocop
http://rspec.info/
Platform data
centre
Dev/Test data
centre
Prod data centre
Create
Platform
Test Platform
Create
Platform
Test Platform
Create
Platform
Test Platform
@markosrendell
Platform and basic infra automation >
Virtual Private Cloud
Networks
Virtual Machines
Re-creatable
@markosrendell
28
Networks
Virtual Private Cloud
Virtual Machines
Software Installs
Third Party Software >
@markosrendell
Re-creatable
29
Networks
Virtual Private Cloud
Virtual Machines
Software Installs
Jenkins Deploy
Deployment architecture >
@markosrendell
Re-creatable
Business Applications
Security model
Deployment architecture
Logical environment separation
Third Party Installations
Platform Infrastructure orchestration
Basic Infrastructure orchestration
Hardware management
Interface
Opinions
Business Applications
Platform Interface (Opinions)
@markosrendell
Release Manageable
Sonar Code
Analysis
Run Unit Tests
Package
Committer:
jdoe
Story:25
Commit ID: 113
Platform data centre Dev/Test data centre Prod data centre
Create Platform Test Platform Create Platform Test Platform Create Platform Test Platform
@markosrendell
Integration Tested
@markosrendell
Whole Solution
Version: 46
Website
Version: 12
Order
Service
Version: 1.0.2.12
Email
Service
Version: 1.0.0.3
Payment
Service
Version: 1.2.0.23
Deployment
tools
Version: 1.2.3.2
Platform
Version: 83
Cloud
Foundry
Version: 23
MySQL
Version: 12
Cassandra
Version: 24
RabbitMQ
Version: 12
Infrastructure
Version: 19
Platform data centre: v1.3.9
Compile
and package
Unit Tests
Platform env
deploy
Monitoring testsCheck
in
Compile
and package
Unit Tests
Platform env
deploy
Monitoring testsCheck
in
Compile
and package
Unit Tests
Platform env
deploy
Monitoring testsCheck
in
Compile
and package
Unit Tests
Platform env
deploy
Monitoring testsCheck
in
Compile
and package
Unit Tests
Platform env
deploy
Monitoring testsCheck
in
Platform
Proddatacentre:v1.3.9
Nonproddatacentre:v1.3.9
Compile
and package
Static Code
Analysis
Unit Tests
Run Functional
Tests
Run Security
Tests
CT env
deploy
Check
in
Compile
and package
Static Code
Analysis
Unit Tests
Run Functional
Tests
Run Security
Tests
CT env
deploy
Check
in
Compile
and package
Static Code
Analysis
Unit Tests
Run Functional
Tests
Run Security
Tests
CT env
deploy
Check
in
Compile
and package
Static Code
Analysis
Unit Tests
Run Functional
Tests
Run Security
Tests
CT env
deploy
Check
in
PT env deploy Run Tech Tests
Production
deploy
PT env deploy Run Tech Tests
Production
deploy
PT env deploy Run Tech Tests
Production
deploy
PT env deploy Run Tech Tests
Production
deploy
@markosrendell
Integration Tested
Proddatacentre:v1.3.9
Nonproddatacentre:v1.3.9
Platform data centre: v1.4.4
Compile
and package
Unit Tests
Platform env
deploy
Monitoring testsCheck
in
Compile
and package
Unit Tests
Platform env
deploy
Monitoring testsCheck
in
Compile
and package
Unit Tests
Platform env
deploy
Monitoring testsCheck
in
Compile
and package
Unit Tests
Platform env
deploy
Monitoring testsCheck
in
Compile
and package
Unit Tests
Platform env
deploy
Monitoring testsCheck
in
Platform
Compile
and package
Static Code
Analysis
Unit Tests
Run Functional
Tests
Run Security
Tests
PT env deploy Run Tech Tests
CT env
deploy
Production
deploy
Check
in
Compile
and package
Static Code
Analysis
Unit Tests
Run Functional
Tests
Run Security
Tests
PT env deploy Run Tech Tests
CT env
deploy
Production
deploy
Check
in
Compile
and package
Static Code
Analysis
Unit Tests
Run Functional
Tests
Run Security
Tests
PT env deploy Run Tech Tests
CT env
deploy
Production
deploy
Check
in
Compile
and package
Static Code
Analysis
Unit Tests
Run Functional
Tests
Run Security
Tests
PT env deploy Run Tech Tests
CT env
deploy
Production
deploy
Check
in
@markosrendell
Integration Tested
Proddatacentre:v1.3.9
Nonproddatacentre:v1.4.4
Platform data centre: v1.4.4
Compile
and package
Unit Tests
Platform env
deploy
Monitoring testsCheck
in
Compile
and package
Unit Tests
Platform env
deploy
Monitoring testsCheck
in
Compile
and package
Unit Tests
Platform env
deploy
Monitoring testsCheck
in
Compile
and package
Unit Tests
Platform env
deploy
Monitoring testsCheck
in
Compile
and package
Unit Tests
Platform env
deploy
Monitoring testsCheck
in
Platform
Compile
and package
Static Code
Analysis
Unit Tests
Run Functional
Tests
Run Security
Tests
CT env
deploy
Check
in
Compile
and package
Static Code
Analysis
Unit Tests
Run Functional
Tests
Run Security
Tests
CT env
deploy
Check
in
Compile
and package
Static Code
Analysis
Unit Tests
Run Functional
Tests
Run Security
Tests
CT env
deploy
Check
in
Compile
and package
Static Code
Analysis
Unit Tests
Run Functional
Tests
Run Security
Tests
CT env
deploy
Check
in
@markosrendell
Integration Tested
Proddatacentre:v1.3.9Proddatacentre:v1.4.4
Nonproddatacentre:v1.4.4
Platform data centre: v1.4.4
Compile
and package
Unit Tests
Platform env
deploy
Monitoring testsCheck
in
Compile
and package
Unit Tests
Platform env
deploy
Monitoring testsCheck
in
Compile
and package
Unit Tests
Platform env
deploy
Monitoring testsCheck
in
Compile
and package
Unit Tests
Platform env
deploy
Monitoring testsCheck
in
Compile
and package
Unit Tests
Platform env
deploy
Monitoring testsCheck
in
Platform PT env deploy Run Tech Tests
Production
deploy
PT env deploy Run Tech Tests
Production
deploy
PT env deploy Run Tech Tests
Production
deploy
PT env deploy Run Tech Tests
Production
deploy
Compile
and package
Static Code
Analysis
Unit Tests
Run Functional
Tests
Run Security
Tests
CT env
deploy
Check
in
Compile
and package
Static Code
Analysis
Unit Tests
Run Functional
Tests
Run Security
Tests
CT env
deploy
Check
in
Compile
and package
Static Code
Analysis
Unit Tests
Run Functional
Tests
Run Security
Tests
CT env
deploy
Check
in
Compile
and package
Static Code
Analysis
Unit Tests
Run Functional
Tests
Run Security
Tests
CT env
deploy
Check
in
@markosrendell
Integration Tested
In practice
@markosrendell
Develop and Operate Platforms
optimised for rapid delivery
A globally networked pool of resources providing
projects the option to have key areas of their DevOps
delivered as a service. By emphasising Continuous
Delivery, we are able to vastly improve your Software
Delivery Lifecycle at all each stages including
Transformation, Mobilisation and Assessment
Software Configuration Management
Release Management
Environment Management
We can…
1. Take a project from a standing-start to a working Development
and Tools infrastructure in days
2. Increase Agility by using our pioneering methods for Continuous
Delivery
3. Increase productivity and predictability through fully automated
environments
4. Reduce Cost by using proven processes and
expertise to reduce errors and downtime
Build & Deploy Automation
Continuous Delivery
Tools
5. Increase quality and efficiency
Infrastructure as code
CloudPaaS

DCSC
@markosrendell@markosrendell
Insurer
Enterprise Scale is Heterogeneous
Bank Retailer
Government
Service
Government
Service
Cloud
Broker
Retailer
Retailer
Retailer
Energy Provider
Energy
Provider
@markosrendell
Trading Platform
Divide and deliver
Bank
Platform
Development and
Operations Team
@markosrendell
Platform
Development and
Operations Team
Platform
Development and
Operations Team
Platform
Development and
Operations Team
Platform
Development and
Operations Team
Platform
Development and
Operations TeamPlatform
Development and
OperationsTeam
Platform
Development and
Operations Team
Platform
Development and
Operations Team
Platform
Development and
Operations Team
Platform
Development and
Operations Team Platform
Development and
Operations Team
Platform
Development and
Operations Team
@markosrendell
Insurer
Bank Retailer
Government
Service
Government
Service
Cloud
Broker
Retailer
Retailer
Retailer
Energy Provider
Energy
Provider
Trading Platform
Divide and deliver
Platform
Development and
Operations Team
Platform
Development and
Operations Team
Retailer
@markosrendell
Trading Platform
Divide and deliver
Platform
Development
and Operations
Team
Platform
Development
and Operations
Team
Platform
Development
and Operations
Team
Platform
Development
and Operations
Team
Platform
Development
and Operations
Team
Platform
Development
and Operations
Team
Platform
Development
and Operations
Team
@markosrendell
Retailer
Trading Platform
Divide and deliver
Sharing over shared
Platform
Development and
Operations Team
Shared Tools Service
@markosrendell
Insurer
Bank Retailer
Government
Service
Government
Service
Cloud
Broker
Retailer
Retailer
Retailer
Energy Provider
Trading
Platform
Energy
Provider
Starting over studying
@markosrendell
Bootstraps over blueprints
@markosrendell
Re-use over standards
@markosrendell
Insurer
Bank Retailer
Government
Service
Government
Service
Cloud
Broker
Retailer
Retailer
Retailer
Energy Provider
Energy
Provider
Trading Platform
“Top 5 Takeaways”
@markosrendell
1. Optimise for throughput not efficiency
2. Build end to end teams
3. Treat the platform as an application
4. Implement Continuous Delivery for
your platform and via your platform
5. Lower the barrier to adoption
What I’m looking for help with
@markosrendell
• Collaboration on our forthcoming DevOps
Platform open source project
• More sharing of:
• Platform opinions
• How to subdivide big platforms into smaller components
• Successes doing this
Thank you!
Markos
Mark Rendell
mark.rendell@accenture.com
@markosrendell
http://markosrendell.wordpress.com
@markosrendell

Mais conteúdo relacionado

Mais procurados

The DevOps Journey in an Enterprise - DOES 2021
The DevOps Journey in an Enterprise - DOES 2021The DevOps Journey in an Enterprise - DOES 2021
The DevOps Journey in an Enterprise - DOES 2021Anders Lundsgård
 
DevOps Transformation - technical and organizational goals
DevOps Transformation - technical and organizational goalsDevOps Transformation - technical and organizational goals
DevOps Transformation - technical and organizational goalsAgron Fazliu
 
An Introduction to Dependency Injection
An Introduction to Dependency InjectionAn Introduction to Dependency Injection
An Introduction to Dependency InjectionAdam Stephensen
 
The State of DevOps Tools: A Primer
The State of DevOps Tools: A PrimerThe State of DevOps Tools: A Primer
The State of DevOps Tools: A PrimerDevOps.com
 
Drive Continuous Delivery With Continuous Testing
Drive Continuous Delivery With Continuous TestingDrive Continuous Delivery With Continuous Testing
Drive Continuous Delivery With Continuous TestingCA Technologies
 
DevOps-as-a-Service: Towards Automating the Automation
DevOps-as-a-Service: Towards Automating the AutomationDevOps-as-a-Service: Towards Automating the Automation
DevOps-as-a-Service: Towards Automating the AutomationKeith Pleas
 
Is BDD Worth It? Considerations for Advanced Test Automation
Is BDD Worth It? Considerations for Advanced Test AutomationIs BDD Worth It? Considerations for Advanced Test Automation
Is BDD Worth It? Considerations for Advanced Test AutomationPerfecto by Perforce
 
DevOps Workshop, DevOps for DoD Professionals
DevOps Workshop, DevOps for DoD ProfessionalsDevOps Workshop, DevOps for DoD Professionals
DevOps Workshop, DevOps for DoD ProfessionalsTonex
 
DevOps Days Columbus - Derek Weeks - 2019
DevOps Days Columbus - Derek Weeks - 2019DevOps Days Columbus - Derek Weeks - 2019
DevOps Days Columbus - Derek Weeks - 2019Sonatype
 
Inflectracon2020: Advantages of Integrating a DevSecOps Pipeline with the Spi...
Inflectracon2020: Advantages of Integrating a DevSecOps Pipeline with the Spi...Inflectracon2020: Advantages of Integrating a DevSecOps Pipeline with the Spi...
Inflectracon2020: Advantages of Integrating a DevSecOps Pipeline with the Spi...Inflectra
 
Continuous Delivery in a Legacy Shop - One Step at a Time
Continuous Delivery in a Legacy Shop - One Step at a TimeContinuous Delivery in a Legacy Shop - One Step at a Time
Continuous Delivery in a Legacy Shop - One Step at a TimeGene Gotimer
 
Deliver Flawless Mobile Apps Faster with CI/CD & CT
Deliver Flawless Mobile Apps Faster with CI/CD & CTDeliver Flawless Mobile Apps Faster with CI/CD & CT
Deliver Flawless Mobile Apps Faster with CI/CD & CTPerfecto by Perforce
 
How to Eliminate Escaped Defects With a Proven Test Automation Coverage Strategy
How to Eliminate Escaped Defects With a Proven Test Automation Coverage StrategyHow to Eliminate Escaped Defects With a Proven Test Automation Coverage Strategy
How to Eliminate Escaped Defects With a Proven Test Automation Coverage StrategyPerfecto by Perforce
 
Best Practices for Shifting Left Performance and Accessibility Testing
Best Practices for Shifting Left Performance and Accessibility TestingBest Practices for Shifting Left Performance and Accessibility Testing
Best Practices for Shifting Left Performance and Accessibility TestingPerfecto by Perforce
 
Dev ops tutorial for beginners what is devops & devops tools
Dev ops tutorial for beginners what is devops & devops toolsDev ops tutorial for beginners what is devops & devops tools
Dev ops tutorial for beginners what is devops & devops toolsJanBask Training
 

Mais procurados (20)

The DevOps Journey in an Enterprise - DOES 2021
The DevOps Journey in an Enterprise - DOES 2021The DevOps Journey in an Enterprise - DOES 2021
The DevOps Journey in an Enterprise - DOES 2021
 
DevOps Transformation - technical and organizational goals
DevOps Transformation - technical and organizational goalsDevOps Transformation - technical and organizational goals
DevOps Transformation - technical and organizational goals
 
An Introduction to Dependency Injection
An Introduction to Dependency InjectionAn Introduction to Dependency Injection
An Introduction to Dependency Injection
 
The State of DevOps Tools: A Primer
The State of DevOps Tools: A PrimerThe State of DevOps Tools: A Primer
The State of DevOps Tools: A Primer
 
Drive Continuous Delivery With Continuous Testing
Drive Continuous Delivery With Continuous TestingDrive Continuous Delivery With Continuous Testing
Drive Continuous Delivery With Continuous Testing
 
A True Story of Why QA Loves DevOps
A True Story of Why QA Loves DevOpsA True Story of Why QA Loves DevOps
A True Story of Why QA Loves DevOps
 
Introduction to DevOps
Introduction to DevOpsIntroduction to DevOps
Introduction to DevOps
 
DevOps-as-a-Service: Towards Automating the Automation
DevOps-as-a-Service: Towards Automating the AutomationDevOps-as-a-Service: Towards Automating the Automation
DevOps-as-a-Service: Towards Automating the Automation
 
Is BDD Worth It? Considerations for Advanced Test Automation
Is BDD Worth It? Considerations for Advanced Test AutomationIs BDD Worth It? Considerations for Advanced Test Automation
Is BDD Worth It? Considerations for Advanced Test Automation
 
DevOps Workshop, DevOps for DoD Professionals
DevOps Workshop, DevOps for DoD ProfessionalsDevOps Workshop, DevOps for DoD Professionals
DevOps Workshop, DevOps for DoD Professionals
 
DevOps Days Columbus - Derek Weeks - 2019
DevOps Days Columbus - Derek Weeks - 2019DevOps Days Columbus - Derek Weeks - 2019
DevOps Days Columbus - Derek Weeks - 2019
 
An introduction to DevOps
An introduction to DevOpsAn introduction to DevOps
An introduction to DevOps
 
Inflectracon2020: Advantages of Integrating a DevSecOps Pipeline with the Spi...
Inflectracon2020: Advantages of Integrating a DevSecOps Pipeline with the Spi...Inflectracon2020: Advantages of Integrating a DevSecOps Pipeline with the Spi...
Inflectracon2020: Advantages of Integrating a DevSecOps Pipeline with the Spi...
 
Continuous Delivery in a Legacy Shop - One Step at a Time
Continuous Delivery in a Legacy Shop - One Step at a TimeContinuous Delivery in a Legacy Shop - One Step at a Time
Continuous Delivery in a Legacy Shop - One Step at a Time
 
Lightning talk Accenture
Lightning talk AccentureLightning talk Accenture
Lightning talk Accenture
 
devops
devops devops
devops
 
Deliver Flawless Mobile Apps Faster with CI/CD & CT
Deliver Flawless Mobile Apps Faster with CI/CD & CTDeliver Flawless Mobile Apps Faster with CI/CD & CT
Deliver Flawless Mobile Apps Faster with CI/CD & CT
 
How to Eliminate Escaped Defects With a Proven Test Automation Coverage Strategy
How to Eliminate Escaped Defects With a Proven Test Automation Coverage StrategyHow to Eliminate Escaped Defects With a Proven Test Automation Coverage Strategy
How to Eliminate Escaped Defects With a Proven Test Automation Coverage Strategy
 
Best Practices for Shifting Left Performance and Accessibility Testing
Best Practices for Shifting Left Performance and Accessibility TestingBest Practices for Shifting Left Performance and Accessibility Testing
Best Practices for Shifting Left Performance and Accessibility Testing
 
Dev ops tutorial for beginners what is devops & devops tools
Dev ops tutorial for beginners what is devops & devops toolsDev ops tutorial for beginners what is devops & devops tools
Dev ops tutorial for beginners what is devops & devops tools
 

Semelhante a Breaking the 2 Pizza Paradox with your Platform as an Application

Tech foundations-slides
Tech foundations-slidesTech foundations-slides
Tech foundations-slidestranquynh93
 
KCD Munich - Cloud Native Platform Dilemma - Turning it into an Opportunity
KCD Munich - Cloud Native Platform Dilemma - Turning it into an OpportunityKCD Munich - Cloud Native Platform Dilemma - Turning it into an Opportunity
KCD Munich - Cloud Native Platform Dilemma - Turning it into an OpportunityAndreas Grabner
 
DevOps For Everyone: Bringing DevOps Success to Every App and Every Role in y...
DevOps For Everyone: Bringing DevOps Success to Every App and Every Role in y...DevOps For Everyone: Bringing DevOps Success to Every App and Every Role in y...
DevOps For Everyone: Bringing DevOps Success to Every App and Every Role in y...Siva Rama Krishna Chunduru
 
The DevOps paradigm - the evolution of IT professionals and opensource toolkit
The DevOps paradigm - the evolution of IT professionals and opensource toolkitThe DevOps paradigm - the evolution of IT professionals and opensource toolkit
The DevOps paradigm - the evolution of IT professionals and opensource toolkitMarco Ferrigno
 
The DevOps Paradigm
The DevOps ParadigmThe DevOps Paradigm
The DevOps ParadigmNaLUG
 
SDLC & DevOps Transformation with Agile
SDLC & DevOps Transformation with AgileSDLC & DevOps Transformation with Agile
SDLC & DevOps Transformation with AgileAbdel Moneim Emad
 
Tejaswi Desai Resume ASP Dot Net WPF WCF MVC LINQ Agile
Tejaswi Desai Resume ASP Dot Net WPF WCF MVC LINQ AgileTejaswi Desai Resume ASP Dot Net WPF WCF MVC LINQ Agile
Tejaswi Desai Resume ASP Dot Net WPF WCF MVC LINQ AgileTejaswi Desai
 
DCSF19 How To Build Your Containerization Strategy
DCSF19 How To Build Your Containerization Strategy  DCSF19 How To Build Your Containerization Strategy
DCSF19 How To Build Your Containerization Strategy Docker, Inc.
 
Application Modernisation with PKS
Application Modernisation with PKSApplication Modernisation with PKS
Application Modernisation with PKSPhil Reay
 
Application Modernisation with PKS
Application Modernisation with PKSApplication Modernisation with PKS
Application Modernisation with PKSPhil Reay
 
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 successAdam Stephensen
 
Platform governance, gestire un ecosistema di microservizi a livello enterprise
Platform governance, gestire un ecosistema di microservizi a livello enterprisePlatform governance, gestire un ecosistema di microservizi a livello enterprise
Platform governance, gestire un ecosistema di microservizi a livello enterpriseGiulio Roggero
 
Improve Developer Experience with Developer Portal
Improve Developer Experience with Developer PortalImprove Developer Experience with Developer Portal
Improve Developer Experience with Developer PortalKumton Suttiraksiri
 
tarun 16 may sr.system eng Resume
tarun 16 may sr.system eng Resumetarun 16 may sr.system eng Resume
tarun 16 may sr.system eng Resumetarun prakash singh
 
DCEU 18: How To Build Your Containerization Strategy
DCEU 18: How To Build Your Containerization StrategyDCEU 18: How To Build Your Containerization Strategy
DCEU 18: How To Build Your Containerization StrategyDocker, Inc.
 
A Software Factory Integrating Rational & WebSphere Tools
A Software Factory Integrating Rational & WebSphere ToolsA Software Factory Integrating Rational & WebSphere Tools
A Software Factory Integrating Rational & WebSphere Toolsghodgkinson
 
7 flavours of devops implementation
7 flavours of devops implementation7 flavours of devops implementation
7 flavours of devops implementationAspire Systems
 

Semelhante a Breaking the 2 Pizza Paradox with your Platform as an Application (20)

Tech foundations-slides
Tech foundations-slidesTech foundations-slides
Tech foundations-slides
 
KCD Munich - Cloud Native Platform Dilemma - Turning it into an Opportunity
KCD Munich - Cloud Native Platform Dilemma - Turning it into an OpportunityKCD Munich - Cloud Native Platform Dilemma - Turning it into an Opportunity
KCD Munich - Cloud Native Platform Dilemma - Turning it into an Opportunity
 
DevOps For Everyone: Bringing DevOps Success to Every App and Every Role in y...
DevOps For Everyone: Bringing DevOps Success to Every App and Every Role in y...DevOps For Everyone: Bringing DevOps Success to Every App and Every Role in y...
DevOps For Everyone: Bringing DevOps Success to Every App and Every Role in y...
 
The DevOps paradigm - the evolution of IT professionals and opensource toolkit
The DevOps paradigm - the evolution of IT professionals and opensource toolkitThe DevOps paradigm - the evolution of IT professionals and opensource toolkit
The DevOps paradigm - the evolution of IT professionals and opensource toolkit
 
The DevOps Paradigm
The DevOps ParadigmThe DevOps Paradigm
The DevOps Paradigm
 
SDLC & DevOps Transformation with Agile
SDLC & DevOps Transformation with AgileSDLC & DevOps Transformation with Agile
SDLC & DevOps Transformation with Agile
 
Tejaswi Desai Resume ASP Dot Net WPF WCF MVC LINQ Agile
Tejaswi Desai Resume ASP Dot Net WPF WCF MVC LINQ AgileTejaswi Desai Resume ASP Dot Net WPF WCF MVC LINQ Agile
Tejaswi Desai Resume ASP Dot Net WPF WCF MVC LINQ Agile
 
Elastic-Engineering
Elastic-EngineeringElastic-Engineering
Elastic-Engineering
 
DCSF19 How To Build Your Containerization Strategy
DCSF19 How To Build Your Containerization Strategy  DCSF19 How To Build Your Containerization Strategy
DCSF19 How To Build Your Containerization Strategy
 
Application Modernisation with PKS
Application Modernisation with PKSApplication Modernisation with PKS
Application Modernisation with PKS
 
Application Modernisation with PKS
Application Modernisation with PKSApplication Modernisation with PKS
Application Modernisation with PKS
 
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
 
Platform governance, gestire un ecosistema di microservizi a livello enterprise
Platform governance, gestire un ecosistema di microservizi a livello enterprisePlatform governance, gestire un ecosistema di microservizi a livello enterprise
Platform governance, gestire un ecosistema di microservizi a livello enterprise
 
Legacy Migration Overview
Legacy Migration OverviewLegacy Migration Overview
Legacy Migration Overview
 
Legacy Migration
Legacy MigrationLegacy Migration
Legacy Migration
 
Improve Developer Experience with Developer Portal
Improve Developer Experience with Developer PortalImprove Developer Experience with Developer Portal
Improve Developer Experience with Developer Portal
 
tarun 16 may sr.system eng Resume
tarun 16 may sr.system eng Resumetarun 16 may sr.system eng Resume
tarun 16 may sr.system eng Resume
 
DCEU 18: How To Build Your Containerization Strategy
DCEU 18: How To Build Your Containerization StrategyDCEU 18: How To Build Your Containerization Strategy
DCEU 18: How To Build Your Containerization Strategy
 
A Software Factory Integrating Rational & WebSphere Tools
A Software Factory Integrating Rational & WebSphere ToolsA Software Factory Integrating Rational & WebSphere Tools
A Software Factory Integrating Rational & WebSphere Tools
 
7 flavours of devops implementation
7 flavours of devops implementation7 flavours of devops implementation
7 flavours of devops implementation
 

Mais de Mark Rendell

Fostering an Extraordinary Team (ignite presentation)
Fostering an Extraordinary Team (ignite presentation)Fostering an Extraordinary Team (ignite presentation)
Fostering an Extraordinary Team (ignite presentation)Mark Rendell
 
Scaling DevOps Adoption
Scaling DevOps AdoptionScaling DevOps Adoption
Scaling DevOps AdoptionMark Rendell
 
Seacon Continuous Delivery Pipeline Tools Track
Seacon Continuous Delivery Pipeline Tools TrackSeacon Continuous Delivery Pipeline Tools Track
Seacon Continuous Delivery Pipeline Tools TrackMark Rendell
 
Config Management Camp 2017 - If it moves, give it a pipeline
Config Management Camp 2017 - If it moves, give it a pipelineConfig Management Camp 2017 - If it moves, give it a pipeline
Config Management Camp 2017 - If it moves, give it a pipelineMark Rendell
 
Overcoming Continuous Delivery Impedance
Overcoming Continuous Delivery ImpedanceOvercoming Continuous Delivery Impedance
Overcoming Continuous Delivery ImpedanceMark Rendell
 
Ignite: When You Need A DevOps Team
Ignite: When You Need A DevOps TeamIgnite: When You Need A DevOps Team
Ignite: When You Need A DevOps TeamMark Rendell
 

Mais de Mark Rendell (6)

Fostering an Extraordinary Team (ignite presentation)
Fostering an Extraordinary Team (ignite presentation)Fostering an Extraordinary Team (ignite presentation)
Fostering an Extraordinary Team (ignite presentation)
 
Scaling DevOps Adoption
Scaling DevOps AdoptionScaling DevOps Adoption
Scaling DevOps Adoption
 
Seacon Continuous Delivery Pipeline Tools Track
Seacon Continuous Delivery Pipeline Tools TrackSeacon Continuous Delivery Pipeline Tools Track
Seacon Continuous Delivery Pipeline Tools Track
 
Config Management Camp 2017 - If it moves, give it a pipeline
Config Management Camp 2017 - If it moves, give it a pipelineConfig Management Camp 2017 - If it moves, give it a pipeline
Config Management Camp 2017 - If it moves, give it a pipeline
 
Overcoming Continuous Delivery Impedance
Overcoming Continuous Delivery ImpedanceOvercoming Continuous Delivery Impedance
Overcoming Continuous Delivery Impedance
 
Ignite: When You Need A DevOps Team
Ignite: When You Need A DevOps TeamIgnite: When You Need A DevOps Team
Ignite: When You Need A DevOps Team
 

Último

How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
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 slidevu2urc
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
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 Scriptwesley chun
 
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.pptxHampshireHUG
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
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 2024Results
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
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...Enterprise Knowledge
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
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?Igalia
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
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.pptxKatpro Technologies
 
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 RobisonAnna Loughnan Colquhoun
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
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 textsMaria Levchenko
 
[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.pdfhans926745
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
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?Antenna Manufacturer Coco
 
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 Servicegiselly40
 

Último (20)

How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
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
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
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
 
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
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
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
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
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...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
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?
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
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
 
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
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
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
 
[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
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
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?
 
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
 

Breaking the 2 Pizza Paradox with your Platform as an Application

  • 1. Breaking the 2 Pizza Paradox with your Platform as a Application Mark Rendell mark.rendell@accenture.com @markosrendell http://markosrendell.wordpress.com
  • 2. Day Job “Develop and Operate Platforms optimised for rapid delivery” A globally networked pool of resources providing projects the option to have key areas of their DevOps delivered as a service. By emphasising Continuous Delivery, we are able to vastly improve your Software Delivery Lifecycle at all each stages including Transformation, Mobilisation and Assessment Software Configuration Management Release Management Environment Management We can… 1. Take a project from a standing-start to a working Development and Tools infrastructure in days 2. Increase Agility by using our pioneering methods for Continuous Delivery 3. Increase productivity and predictability through fully automated environments 4. Reduce Cost by using proven processes and expertise to reduce errors and downtime Build & Deploy Automation Continuous Delivery Tools 5. Increase quality and efficiency Infrastructure as code CloudPaaS DCSC @markosrendell
  • 5. DevOps definition (of the moment): We value: Enhancing IT systems to meet the Business’ needs over IT operating efficiency @markosrendell
  • 9. Enterprise Architects Portal CMS PIMERP CRM IB Platform Project Rel 1 Team Portal CMS PIM ERP CRM IB Platform Project Rel. 2 Team Portal CMS PIM ERP CRM IB Platform Legacy System Operations Team Portal PIMERP CRM Platform Legacy System App Maint, Team Portal PIMERP CRM Platform Server and Storage Team Porta l CMS PIMERP CRM IB Platform Networks Team Portal CMS PIM ERP CRM IB Platform SysAdmin Team Portal CMS PIM ERP CRM IB Platform UI Design Team Portal CMS Project Rel. 3 Team Portal CMS PIM ERP CRM IB Platform Enterprise Systems Dev Team Portal CMS PIM ERP CRM IB Platform DBA Team Porta lCM S PIMERP CR M IB Platform @markosrendell
  • 11. Big pizzas are good Big teams are bad @markosrendell
  • 12. Idea Value Idea Plan Develop Package Deploy Test Release Operate Problem Space Content Management System Portal ERP System CRM System @markosrendell
  • 14. Idea Plan Develop Package Deploy Test Release Operate @markosrendell Enterprise Architects Project Rel 1 Team Project Rel. 2 Team Legacy System Operations Team Legacy System App Maint, Team Server and Storage Team Networks Team DBA Team UI Design Team Project Rel. 3 Team Enterprise Systems Dev Team SysAdmin Team
  • 16. Enterprise Architects Project Rel 1 Team Project Rel. 2 Team Legacy System Operations Team Legacy System App Maint, Team Server and Storage Team Networks Team DBA Team UI Design Team Project Rel. 3 Team Enterprise Systems Dev Team SysAdmin Team Idea Plan Develop Package Deploy Test Release Operate @markosrendell Content Management System Portal ERP System CRM System
  • 17. Enterprise Architects Project Rel 1 Team Project Rel. 2 Team Legacy System Operations Team Legacy System App Maint, Team Server and Storage Team Networks Team DBA Team UI Design Team Project Rel. 3 Team Enterprise Systems Dev Team SysAdmin Team Idea Plan Develop Package Deploy Test Release Operate Content Management System Portal ERP System CRM System Development and Operations Team Development and Operations Team Development and Operations Team Development and Operations Team @markosrendell
  • 18. Idea Plan Develop Package Deploy Test Release Operate Enterprise Architects Project Rel 1 Team Project Rel. 2 Team Legacy System Operations Team Legacy System App Maint, Team Server and Storage Team Networks Team DBA Team UI Design Team Project Rel. 3 Team Enterprise Systems Dev Team SysAdmin Team Content Management System Portal ERP System CRM System Development and Operations Team Development and Operations Team Development and Operations Team Development and Operations Team @markosrendell Services Development and Operations Team Development and Operations Team Development and Operations Team
  • 19. DevOps definition (of the moment): Organising for throughput by forming teams that both Develop and Operate Products end-to-end @markosrendell
  • 20. Enterprise Architects Project Rel 1 Team Project Rel. 2 Team Legacy System Operations Team Legacy System App Maint, Team Server and Storage Team Networks Team DBA Team UI Design Team Project Rel. 3 Team Enterprise Systems Dev Team SysAdmin Team Idea Plan Develop Package Deploy Test Release Operate SysAdmin Team Content Management System Portal ERP System CRM System Development and Operations Team Development and Operations Team Development and Operations Team Development and Operations Team Development and Operations Team Development and Operations Team Legacy System Operations Team Networks Team DBA Team @markosrendell Server and Storage Team SysAdmin Team Services
  • 21. Enterprise Architects Project Rel 1 Team Project Rel. 2 Team Legacy System Operations Team Legacy System App Maint, Team Server and Storage Team Networks Team DBA Team UI Design Team Project Rel. 3 Team Enterprise Systems Dev Team SysAdmin Team Content Management System Portal ERP System CRM System Idea Plan Develop Package Deploy Test Release Operate Services Development and Operations Team Development and Operations Team Development and Operations Team Development and Operations Team Development and Operations Team Development and Operations Team Development and Operations Team Platform Application @markosrendell
  • 22. Business Applications Platform as an Application (Could use Infrastructure as a Service) @markosrendell
  • 23. Idea Plan Develop Package Deploy Test Release Operate Development and Operations Team Development and Operations Team Development and Operations Team Development and Operations Team Development and Operations Team Content Management System Portal ERP System CRM System Platform Development and Operations Team @markosrendell
  • 25. Build or Buy? https://www.flickr.com/photos/nicorien/118131870 We say yesBuild or Buy? https://farm2.staticflickr.com/1370/898160943_35ef6551c7_o_d.jpg@markosrendell
  • 26. Engineered Sonar Code Analysis Run Unit Tests Package Committer: jdoe Story:25 Commit ID: 113 https://github.com/bbatsov/rubocop http://rspec.info/ Platform data centre Dev/Test data centre Prod data centre Create Platform Test Platform Create Platform Test Platform Create Platform Test Platform @markosrendell
  • 27. Platform and basic infra automation > Virtual Private Cloud Networks Virtual Machines Re-creatable @markosrendell
  • 28. 28 Networks Virtual Private Cloud Virtual Machines Software Installs Third Party Software > @markosrendell Re-creatable
  • 29. 29 Networks Virtual Private Cloud Virtual Machines Software Installs Jenkins Deploy Deployment architecture > @markosrendell Re-creatable
  • 30. Business Applications Security model Deployment architecture Logical environment separation Third Party Installations Platform Infrastructure orchestration Basic Infrastructure orchestration Hardware management Interface Opinions Business Applications Platform Interface (Opinions) @markosrendell
  • 31. Release Manageable Sonar Code Analysis Run Unit Tests Package Committer: jdoe Story:25 Commit ID: 113 Platform data centre Dev/Test data centre Prod data centre Create Platform Test Platform Create Platform Test Platform Create Platform Test Platform @markosrendell
  • 32. Integration Tested @markosrendell Whole Solution Version: 46 Website Version: 12 Order Service Version: 1.0.2.12 Email Service Version: 1.0.0.3 Payment Service Version: 1.2.0.23 Deployment tools Version: 1.2.3.2 Platform Version: 83 Cloud Foundry Version: 23 MySQL Version: 12 Cassandra Version: 24 RabbitMQ Version: 12 Infrastructure Version: 19
  • 33. Platform data centre: v1.3.9 Compile and package Unit Tests Platform env deploy Monitoring testsCheck in Compile and package Unit Tests Platform env deploy Monitoring testsCheck in Compile and package Unit Tests Platform env deploy Monitoring testsCheck in Compile and package Unit Tests Platform env deploy Monitoring testsCheck in Compile and package Unit Tests Platform env deploy Monitoring testsCheck in Platform Proddatacentre:v1.3.9 Nonproddatacentre:v1.3.9 Compile and package Static Code Analysis Unit Tests Run Functional Tests Run Security Tests CT env deploy Check in Compile and package Static Code Analysis Unit Tests Run Functional Tests Run Security Tests CT env deploy Check in Compile and package Static Code Analysis Unit Tests Run Functional Tests Run Security Tests CT env deploy Check in Compile and package Static Code Analysis Unit Tests Run Functional Tests Run Security Tests CT env deploy Check in PT env deploy Run Tech Tests Production deploy PT env deploy Run Tech Tests Production deploy PT env deploy Run Tech Tests Production deploy PT env deploy Run Tech Tests Production deploy @markosrendell Integration Tested
  • 34. Proddatacentre:v1.3.9 Nonproddatacentre:v1.3.9 Platform data centre: v1.4.4 Compile and package Unit Tests Platform env deploy Monitoring testsCheck in Compile and package Unit Tests Platform env deploy Monitoring testsCheck in Compile and package Unit Tests Platform env deploy Monitoring testsCheck in Compile and package Unit Tests Platform env deploy Monitoring testsCheck in Compile and package Unit Tests Platform env deploy Monitoring testsCheck in Platform Compile and package Static Code Analysis Unit Tests Run Functional Tests Run Security Tests PT env deploy Run Tech Tests CT env deploy Production deploy Check in Compile and package Static Code Analysis Unit Tests Run Functional Tests Run Security Tests PT env deploy Run Tech Tests CT env deploy Production deploy Check in Compile and package Static Code Analysis Unit Tests Run Functional Tests Run Security Tests PT env deploy Run Tech Tests CT env deploy Production deploy Check in Compile and package Static Code Analysis Unit Tests Run Functional Tests Run Security Tests PT env deploy Run Tech Tests CT env deploy Production deploy Check in @markosrendell Integration Tested
  • 35. Proddatacentre:v1.3.9 Nonproddatacentre:v1.4.4 Platform data centre: v1.4.4 Compile and package Unit Tests Platform env deploy Monitoring testsCheck in Compile and package Unit Tests Platform env deploy Monitoring testsCheck in Compile and package Unit Tests Platform env deploy Monitoring testsCheck in Compile and package Unit Tests Platform env deploy Monitoring testsCheck in Compile and package Unit Tests Platform env deploy Monitoring testsCheck in Platform Compile and package Static Code Analysis Unit Tests Run Functional Tests Run Security Tests CT env deploy Check in Compile and package Static Code Analysis Unit Tests Run Functional Tests Run Security Tests CT env deploy Check in Compile and package Static Code Analysis Unit Tests Run Functional Tests Run Security Tests CT env deploy Check in Compile and package Static Code Analysis Unit Tests Run Functional Tests Run Security Tests CT env deploy Check in @markosrendell Integration Tested
  • 36. Proddatacentre:v1.3.9Proddatacentre:v1.4.4 Nonproddatacentre:v1.4.4 Platform data centre: v1.4.4 Compile and package Unit Tests Platform env deploy Monitoring testsCheck in Compile and package Unit Tests Platform env deploy Monitoring testsCheck in Compile and package Unit Tests Platform env deploy Monitoring testsCheck in Compile and package Unit Tests Platform env deploy Monitoring testsCheck in Compile and package Unit Tests Platform env deploy Monitoring testsCheck in Platform PT env deploy Run Tech Tests Production deploy PT env deploy Run Tech Tests Production deploy PT env deploy Run Tech Tests Production deploy PT env deploy Run Tech Tests Production deploy Compile and package Static Code Analysis Unit Tests Run Functional Tests Run Security Tests CT env deploy Check in Compile and package Static Code Analysis Unit Tests Run Functional Tests Run Security Tests CT env deploy Check in Compile and package Static Code Analysis Unit Tests Run Functional Tests Run Security Tests CT env deploy Check in Compile and package Static Code Analysis Unit Tests Run Functional Tests Run Security Tests CT env deploy Check in @markosrendell Integration Tested
  • 38. Develop and Operate Platforms optimised for rapid delivery A globally networked pool of resources providing projects the option to have key areas of their DevOps delivered as a service. By emphasising Continuous Delivery, we are able to vastly improve your Software Delivery Lifecycle at all each stages including Transformation, Mobilisation and Assessment Software Configuration Management Release Management Environment Management We can… 1. Take a project from a standing-start to a working Development and Tools infrastructure in days 2. Increase Agility by using our pioneering methods for Continuous Delivery 3. Increase productivity and predictability through fully automated environments 4. Reduce Cost by using proven processes and expertise to reduce errors and downtime Build & Deploy Automation Continuous Delivery Tools 5. Increase quality and efficiency Infrastructure as code CloudPaaS DCSC @markosrendell@markosrendell
  • 39. Insurer Enterprise Scale is Heterogeneous Bank Retailer Government Service Government Service Cloud Broker Retailer Retailer Retailer Energy Provider Energy Provider @markosrendell Trading Platform
  • 40. Divide and deliver Bank Platform Development and Operations Team @markosrendell
  • 41. Platform Development and Operations Team Platform Development and Operations Team Platform Development and Operations Team Platform Development and Operations Team Platform Development and Operations TeamPlatform Development and OperationsTeam Platform Development and Operations Team Platform Development and Operations Team Platform Development and Operations Team Platform Development and Operations Team Platform Development and Operations Team Platform Development and Operations Team @markosrendell Insurer Bank Retailer Government Service Government Service Cloud Broker Retailer Retailer Retailer Energy Provider Energy Provider Trading Platform Divide and deliver
  • 42. Platform Development and Operations Team Platform Development and Operations Team Retailer @markosrendell Trading Platform Divide and deliver
  • 43. Platform Development and Operations Team Platform Development and Operations Team Platform Development and Operations Team Platform Development and Operations Team Platform Development and Operations Team Platform Development and Operations Team Platform Development and Operations Team @markosrendell Retailer Trading Platform Divide and deliver
  • 44. Sharing over shared Platform Development and Operations Team Shared Tools Service @markosrendell Insurer Bank Retailer Government Service Government Service Cloud Broker Retailer Retailer Retailer Energy Provider Trading Platform Energy Provider
  • 47. Re-use over standards @markosrendell Insurer Bank Retailer Government Service Government Service Cloud Broker Retailer Retailer Retailer Energy Provider Energy Provider Trading Platform
  • 48. “Top 5 Takeaways” @markosrendell 1. Optimise for throughput not efficiency 2. Build end to end teams 3. Treat the platform as an application 4. Implement Continuous Delivery for your platform and via your platform 5. Lower the barrier to adoption
  • 49. What I’m looking for help with @markosrendell • Collaboration on our forthcoming DevOps Platform open source project • More sharing of: • Platform opinions • How to subdivide big platforms into smaller components • Successes doing this

Notas do Editor

  1. The benefits treating your Platform as an Application
  2. Work for Accenture and have the absolute pleasure of running a team of around 180 people who are all heavily into DevOps P We work on 10s engagements, Which means 100s of environments, and thousands of git repos and maybe 10s of thousands of Jenkins jobs and monitoring checks P More about my team later when I talk about putting my theories into practice
  3. I’m gonna start with what I think we are trying to achieve with DevOps
  4. The simplest way I can think about our objective is as follows: Someone has an idea. They need to get it implemented and in front of customers so that as soon a possible If the idea is good the business will start generating more value P If not, well at least we learnt quickly If that change involves an IT system, we’re interested in helping make this as easy as possible P
  5. I think it’s an earned indulgence that if you are presenting on DevOps, you get to add a definition to the mix. Right now, I’m going for this: <click> We value enhancing IT System to meet the business’ needs over IT operating efficiency P So it’s all about throughput of change. P I’m not saying we aren’t conscious of costs, of course we are But we need to be very up front that DevOps is not about replacing the IT folk with automation and building a factory of robots,
  6. It does seem to have been a bit of a popular idea lately that the robots are coming for our jobs… No. DevOps, is about making IT within an organisation, and hence the business better.
  7. So why might improving throughput be so hard? P
  8. We all know how to draw a diagram of DevOps Draw two circles and you are halfway there P You’ll note I’ve drawn on a few typical enterprise systems – a Portal, an ERP system, a CRM systems, standard stuff. Both teams interact with these systems in different ways… And neither team interacts well with each other P So is this what DevOps looks like in an enterprise? P Well actually… No… Absolutely not! I have never seen anything this simple This looks lovely
  9. This is a far more typical example A nightmare of lots of teams, everywhere! This was from somewhere I worked several years back. I drew this slide a week ago and I still keep on remembering more teams. P Far from a one development team, there were at least 5 teams, some working on the same code just targeting different releases P And far from one IT Ops team, there was a Server team, the DBAs, the SysAdmins (actually one team for Windows, one for Linux – don’t put those guys together… P I believe this is far closer to the organisation structure that most enterprises have to consider when looking at to increase throughput P
  10. So why don’t we just do this… Try building a massive team? P Obviously this is just unrealistic Inevitably a team of this scale would be unmanageable, it will subdivide and organisational muscle memory would restore things to exactly how they were P
  11. Beside which, not only giant teams, but large teams are it generally considered quite bad. For example Jeff Bezos from Amazon is reported to recommend teams that can all be fed with two pizzas. P When I quote this, it always provokes a great discussion about how many people that actually means. There’s always at least one person who claims they could eat 2 pizzas to them self. But anyway, it’s designed to mean that teams should not be bigger than 6-8 people. P How in a big enterprise, do you create end-to-end teams to deliver high throughput complex IT without the side effect of large teams?  This is what I call: “The Two Pizza Paradox.” P
  12. Einstein is reported to have said: “If I had an hour to solve a problem I'd spend 55 minutes thinking about the problem and 5 minutes thinking about solutions.” Well I’m not claiming to be Einstein and we don’t have an hour. So let’s spend a couple of minutes visualising the problem space P <click> This is a simple abstraction of the end to end software lifecycle And our problem is getting working solutions through this end-to-end P <click> And let’s not forget that we have a lot of systems that may be impacted by the change This list is definitely too short for most enterprises and I’d expect far more systems
  13. Now traditionally what do we do with our people? P Especially in operations, we group them by skillset. Let’s put the database experts in a DBA team Let’s group the systems administrators (don’t mix Windows and Linux) Let’s put the Java developers over there The testers over there It’s really a lot more like we’re organising a zoo. P And with a zoo you certainly aren’t thinking about getting the animals to collaborate towards a common goal P No when you organise a zoo, you are trying to stop animals eating each other, Or worse eating people! P The zoo metaphor goes even further for me because ironically zoos necessarily a great environment for nature to thrive in If you think about a rainforest there is an amazing thriving autonomous ecosystem filled with incredible symbiotic relationships P Zoos take a lot of money and micro management just to keep running.
  14. Let’s think back to traditional teams P They are literally scattered over the process we are trying to optimise I haven’t even tried to draw lines of communication on here Conway would have a field day
  15. So what can we do?
  16. Well I think we have to rethink our lines of division And we have to go back to prioritising our products. <click> These are the things we need to optimise for There are what we need to protect end to end.
  17. So let’s create end to end teams to develop and operate products. P Each product now just has one owning team primality concerned with it’s welfare and hence their ability to evolve it as fast as the business needs,
  18. Now to keep team sizes down, we may well need to decompose products And the logical conclusion here is implementing a microservices architecture… Valuable and trendy! I feel another DevOps definition coming on…
  19. DevOps means Organising for throughput by forming teams that both Develop and Operate Products end-to-end So I think re-interpreting the name puts us on a pretty good path.
  20. So this approach has a lot of promise for applications But what about these guys … <click> The problem with this approach is that it doesn’t necessarily improve the quality of our platform and these typical very technical, traditionally operations concerns P We could consider trying to embed them also into the end to end application teams But in reality that is going to cause those teams to get too big. And it is also likely to lead to duplication and potentially un-necessary complexity and fragmentation. P
  21. So let’s recognise that the platform is also a first class product P It will also benefit from an end to end team And potentially we now have a new approach and a new mind-set for something that has traditionally been very hard to define and had ownership shared by lots of teams, And we have a way to tackle something I think is almost always the greatest constraint to throughput
  22. So let’s define a platform application Essentially it is the thing on which everything else is run <click> Everything else could be called your business applications I think so platform-centrically, I think of them as guest applications So what does a platform need to do, to provide this service? Well it’s all an exercise of abstracting away un-necessary detail Or if you like encapsulating complexity. <click> Firstly it needs to be the only thing aware of hardware and we need to ensure that we have full programmatic access to control that. Now both of these are taken care of for you if you use Infrastructure as a service (or IaaS) – which I highly recommend <click> Next we need to recognise the need to support high-availability, auto recovery and auto-scaling. Essentially we need the platform to have inbuilt logic for handling failure and a dynamic workload. <click>We need to handle installation and configuration of all software that sits on top of the operating system, but below the business applications, so this could be a MySQL installation, or RabbitMQ etc. <click>Next we need a strategy for producing different test environments. A good platform application will have a well defined approach for easily creating, re-creating and deleting environments – and needs to be self service <click>A great platform application will also take care of supporting easy deployments of the business applications onto it – it needs to be very easy to use. <click>Finally like all applications, security and in particular role based access control is an essential concern. For an application as powerful as this we need to be able to control it’s use. P So if we use a model like this, we can start to recognise the logical product that we have to work on.
  23. The great thing about defining your platform as an application is that it suddenly has a lot more in common with the other applications <click> All components need to be developed and supported and owned end to end All teams are essentially doing the same process: Controlling scope, developing code, testing it, managing dependencies with other applications releasing it, ideally doing Continuous Delivery
  24. So could you just use a public PaaS? If you can find one the with features and terms and conditions that suit your needs then it’s a real option. Personally I haven’t seen that many enterprises doing this SaaS yes, IaaS increasingly, PaaS no. Overall I think really the most important question should be: – is your platform part of your business differentiation? If so you are going to have to build it. As a believer in platforms, I think generally it is worth self-managing
  25. Just like business applications for example a CRM system, with a platform you also have the option to build or buy off the shelf P Having spent many years battling COTS products and trying to do build and deployment automation with them… I have a learnt preference to build P Having said that, we built a platform for a UK public service and used community cloud foundry and it worked out very well
  26. So to explore the idea a little further I’m going to go through a number of things you do with a good platform application The first is that you need to engineer it like any other application. This means building one or more Continuous Delivery pipelines The normal rules apply Start with everything in version control, have some static code analysis Have some run time tests Deploy and run an instance And run your tests continuously For the case of the platform the good thing is that there is already standard practice for this – called monitoring!
  27. You must be able to recreate the platform from scratch I think it was Martin Fowler who first compared rebuilding a data centre from scratch as being like a phoenix bird rising from the ashes In my team we like to treat phoenix as a verb. “When did we last phoenix the platform instance.?” And this really should mean everything The network and base servers
  28. The Third Party Installations and configuration
  29. And all of the application code, configuration and base data deployment
  30. All applications need a interface to let other applications know how to work with them and the platform is no different. These are often called platform opinions P In the case of platform applications, the interfaces tells business applications what they need to do so that they can be hosted. P Typical opinions might be views on how and where to log What package format you need to produce so that you application can be deployed How you application consumes configuration values The 12 Factor App is a great example of this Very clearly written and very easy to find P When you have strong platform opinions, I think the old adage “good boundaries make good neighbours” fits very nicely. P
  31. If we’ve defined an interface or set of opinions for out platform we have to recognise that change is inevitable. So we need a clear approach to releasing new versions of our platform application. P Semantic versioning is a release version naming standard where the numbers reflect the compatibility of the release relative to earlier releases. I think it can nicely be applied to platforms as well. There are three levels of change and very simple interpretation would be: A minor means minimal testing, a medium release means testing is required and a major release means application re-work is probably required. P It’s great to have a very clear, standardised, visible way of demonstrating that something in the underlying infrastructure has changed.
  32. And once we recognise that our platform application changes, we need to support testing the integration of the upgraded platform with other systems. This is the component breakdown structure from a recent project I was working on The platform components are over on the right. In this case our platform application was an extended version of cloud foundry.
  33. We started by building our own “platform development” instance of the platform. We built pipelines for those components and when we were confident, we created an instance for people to test their applications in Once they were happy we could build an instance for production and they could start releasing code
  34. Whenever we needed to update our platform application, we needed to agree the upgrade of the non-production instance
  35. And after we’d upgraded that, we couldn’t release to production until
  36. Production was also upgraded
  37. So let’s talk about this in practice
  38. I mentioned earlier that I run a team of people into DevOps, but I wasn’t much more specific than that. What we actually consider ourselves to do is: Operate like a very accommodating in house platform-as-a-service (or Paas) provider. So we develop and operate tools and automated environments as a service with a focus on maximising the agility and predictability of our customer’s delivery. And is an approach that I think will work for others. By accommodating, I mean that within reason, we will produce a platform to support whatever is requested If someone needs a platform that supports Hybris, We say yes Java? Yes Adobe Experience Manager? Yes Websphere Commerce Server? Ye-es You get the picture …
  39. So in my job, Enterprise scale looks a little bit like this. I’ve got 10s of projects to support Each wanting a platform where they can release rapidly So a fairly heterogeneous landscape, but nothing wildly more complicated than I believe many enterprises have to contend with
  40. So I need to keep things small and simple We divide up the problem Each engagement gets it’s own team and they have their own platform application to develop and operate And of course they get their own pizzas The team is responsible end-to-end for their platform application And primarily concerned with the throughput that the platform supports And hence their impact on the performance of the business they support
  41. So we just keep repeating that pattern
  42. And if we find we have a really big platform. And people are going hungry (not enough pizza) We divide things up again
  43. We need to decompose the platform into smaller components Usually dividing according to groups of hosted business applications And build teams around those
  44. We do have room for some shared services So for example we have a tools platform that services multiple clients - but not all. Our emphasis is on promoting the act of sharing ideas, techniques and software i.e. tools and scripts over trying to get everyone into a multi tenancy solution which might enforce choices or constraints they don’t need.
  45. One of the biggest keys to establishing continuous delivery as a way of working is lowering as far as possible the barrier to adopting tools and automation If getting started is takes a lengthy tool assessment process, procurement, installation, configuration, Engagements may run away and be forging manual habits before you know it. We’ve tackled this by basically automating to the extreme spinning up tools and reference implementations. In fact we’ve got it down to 10 minutes to go from nothing to all of these tools pre-configured and usable. Leaving use to focus on the environments. We call this our DevOps platform (partly because with a name like that – who could not want it) And we’re hoping to open source it fairly soon.
  46. And when we need to get started for a particular technology for example: Mule ESB, Or NodeJS, Or Hybris We have a concept of bootstraps P Far from being just designs or reference architectures, they are effectively plugins to the platform that enable us to add: the means to create the environments, example code, and example continuous delivery jobs for a particular technology. So when one exists, we re-use and extend it and if not, we build it. It’s far easier for people to see and experience what good looks like rather than stare at a representation of it on a page.
  47. So it’s very key to us that we make everything as easy to re-use as possible. However, no-one is forced to use anything for example Git and Jenkins, I’ve found people are far more motivated if you empower them to make the right choices for themselves And I think even more motivated if they know others are going to be interested in reusing their work. So this has the effect that unofficial or rather unenforced standards do start to emerge. And we continuously improve organically.
  48. So my key takeaways are as follows (no pizza pun intended) Optimise for throughput not efficiency – I do see people talking about efficiency through automation still and as a movement I think we need to defend against that logic Build end to end teams – I really see no better re-interpretation of the word DevOps than saying that team should develop and operate things. Treat the platform as an application – I think I’ve said enough about that Implement Continuous Delivery for your platform and via your platform – i.e. eat your own dog food (and wash it down with your own champagne) 5. Lower the barrier to adoption – DevOps is hard, I’m a firm believer in starting small and avoiding anything that just can be avoided
  49. And here is where I’d like help Firstly It’s a little early for me to ask, but when you see our DevOps platform open source project launched, please take a look Secondly if you are working with platform applications please share more with the community. For example documenting your own platform opinions or version of the 12 factor app Documenting how you’ve decomposed a big platform application into smaller concerns And finally show off, if this is working for you don’t take it for granted, please spread the word.
  50. So this takes me to the end I hope I’ve inspired you to think a little differently about platform applications And some of you will be interested to try some of this at home Thanks very much for listening!