Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.
Breaking the 2 Pizza Paradox with
your Platform as a Application
Mark Rendell
mark.rendell@accenture.com
@markosrendell
ht...
Day Job
“Develop and Operate Platforms optimised for rapid delivery”
A globally networked pool of resources providing
proj...
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...
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....
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...
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....
The Solution
@markosrendell
Enterprise
Architects
Project Rel 1 Team
Project
Rel. 2
Team
Legacy
System
Operations
Team
Legacy System App
Maint, Team
S...
Enterprise
Architects
Project Rel 1 Team
Project
Rel. 2
Team
Legacy
System
Operations
Team
Legacy System App
Maint, Team
S...
Idea Plan Develop Package Deploy Test Release Operate
Enterprise
Architects
Project Rel 1 Team
Project
Rel. 2
Team
Legacy
...
DevOps definition (of the moment):
Organising for throughput by
forming teams that both
Develop and Operate
Products end-t...
Enterprise
Architects
Project Rel 1 Team
Project
Rel. 2
Team
Legacy
System
Operations
Team
Legacy System App
Maint, Team
S...
Enterprise
Architects
Project Rel 1 Team
Project
Rel. 2
Team
Legacy
System
Operations
Team
Legacy System App
Maint, Team
S...
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
Deve...
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...
Engineered
Sonar Code
Analysis
Run Unit Tests
Package
Committer: jdoe
Story:25
Commit ID: 113
https://github.com/bbatsov/r...
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 >
@markosrende...
Business Applications
Security model
Deployment architecture
Logical environment separation
Third Party Installations
Plat...
Release Manageable
Sonar Code
Analysis
Run Unit Tests
Package
Committer:
jdoe
Story:25
Commit ID: 113
Platform data centre...
Integration Tested
@markosrendell
Whole Solution
Version: 46
Website
Version: 12
Order
Service
Version: 1.0.2.12
Email
Ser...
Platform data centre: v1.3.9
Compile
and package
Unit Tests
Platform env
deploy
Monitoring testsCheck
in
Compile
and packa...
Proddatacentre:v1.3.9
Nonproddatacentre:v1.3.9
Platform data centre: v1.4.4
Compile
and package
Unit Tests
Platform env
de...
Proddatacentre:v1.3.9
Nonproddatacentre:v1.4.4
Platform data centre: v1.4.4
Compile
and package
Unit Tests
Platform env
de...
Proddatacentre:v1.3.9Proddatacentre:v1.4.4
Nonproddatacentre:v1.4.4
Platform data centre: v1.4.4
Compile
and package
Unit ...
In practice
@markosrendell
Develop and Operate Platforms
optimised for rapid delivery
A globally networked pool of resources providing
projects the o...
Insurer
Enterprise Scale is Heterogeneous
Bank Retailer
Government
Service
Government
Service
Cloud
Broker
Retailer
Retail...
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 Team
Retailer
@markosrendell
Trading Platform...
Platform
Development
and Operations
Team
Platform
Development
and Operations
Team
Platform
Development
and Operations
Team...
Sharing over shared
Platform
Development and
Operations Team
Shared Tools Service
@markosrendell
Insurer
Bank Retailer
Gov...
Starting over studying
@markosrendell
Bootstraps over blueprints
@markosrendell
Re-use over standards
@markosrendell
Insurer
Bank Retailer
Government
Service
Government
Service
Cloud
Broker
Retailer
Ret...
“Top 5 Takeaways”
@markosrendell
1. Optimise for throughput not efficiency
2. Build end to end teams
3. Treat the platform...
What I’m looking for help with
@markosrendell
• Collaboration on our forthcoming DevOps
Platform open source project
• Mor...
Thank you!
Markos
Mark Rendell
mark.rendell@accenture.com
@markosrendell
http://markosrendell.wordpress.com
@markosrendell
Nächste SlideShare
Wird geladen in …5
×

Breaking the 2 Pizza Paradox with your Platform as an Application

985 Aufrufe

Veröffentlicht am

In my experience many large enterprises would love the adoption of DevOps to be as simple as bringing Development closer to Operations. In practice they need to consider many development teams, multiple suppliers, multiple service providers, not to mention multiple business divisions. I describe my experiences of implementing Continuous Delivery in large enterprises with heterogeneous technology stacks and share my belief that Platform Applications will be the saviour of enterprise DevOps.

Veröffentlicht in: Technologie
  • Als Erste(r) kommentieren

Breaking the 2 Pizza Paradox with your Platform as an Application

  1. 1. Breaking the 2 Pizza Paradox with your Platform as a Application Mark Rendell mark.rendell@accenture.com @markosrendell http://markosrendell.wordpress.com
  2. 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
  3. 3. The Objective @markosrendell
  4. 4. Value Stream Idea Value @markosrendell
  5. 5. DevOps definition (of the moment): We value: Enhancing IT systems to meet the Business’ needs over IT operating efficiency @markosrendell
  6. 6. 6 Value Stream ValueIdea @markosrendell
  7. 7. The Problem @markosrendell
  8. 8. Development Team Portal CMS PIM ERP CRM IB Operations Team Portal CMS PIMERP CRM IB Platform @markosrendell
  9. 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
  10. 10. DevOps? Portal CMS PIMERP CRM IB Platform @markosrendell
  11. 11. Big pizzas are good Big teams are bad @markosrendell
  12. 12. Idea Value Idea Plan Develop Package Deploy Test Release Operate Problem Space Content Management System Portal ERP System CRM System @markosrendell
  13. 13. http://img04.deviantart.net/51c8/i/2009/202/3/7/noah__s_ark_2_by_dinzydragon.jpg Rainforests not Zoos
  14. 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
  15. 15. The Solution @markosrendell
  16. 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. 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. 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. 19. DevOps definition (of the moment): Organising for throughput by forming teams that both Develop and Operate Products end-to-end @markosrendell
  20. 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. 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. 22. Business Applications Platform as an Application (Could use Infrastructure as a Service) @markosrendell
  23. 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
  24. 24. https://upload.wikimedia.org/wikipedia/commons/c/cb/Kabul_diving_platform.jpg Public PaaS? @markosrendell
  25. 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. 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. 27. Platform and basic infra automation > Virtual Private Cloud Networks Virtual Machines Re-creatable @markosrendell
  28. 28. 28 Networks Virtual Private Cloud Virtual Machines Software Installs Third Party Software > @markosrendell Re-creatable
  29. 29. 29 Networks Virtual Private Cloud Virtual Machines Software Installs Jenkins Deploy Deployment architecture > @markosrendell Re-creatable
  30. 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. 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. 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. 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. 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. 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. 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
  37. 37. In practice @markosrendell
  38. 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. 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. 40. Divide and deliver Bank Platform Development and Operations Team @markosrendell
  41. 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. 42. Platform Development and Operations Team Platform Development and Operations Team Retailer @markosrendell Trading Platform Divide and deliver
  43. 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. 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
  45. 45. Starting over studying @markosrendell
  46. 46. Bootstraps over blueprints @markosrendell
  47. 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. 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. 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
  50. 50. Thank you! Markos Mark Rendell mark.rendell@accenture.com @markosrendell http://markosrendell.wordpress.com @markosrendell

×