230 likes | 463 Views
Enterprise DevOps Grid. Jonny Wooldridge this deck available here: http:// www.enterprisedevops.com /resources/. Enterprise DevOps Grid. Use the grid to explain your DevOps journey. The background is set as a layout. Sometime you d on’t want the arrows (bottom
E N D
Enterprise DevOps Grid Jonny Wooldridge this deck available here: http://www.enterprisedevops.com/resources/
Enterprise DevOps Grid. Use the grid to explain your DevOps journey. The background is set as a layout. Sometime you don’t want the arrows (bottom left to top right) so there is one without them! Cheers, Jonny
Appendix 1 Using the grid
The position on the grid shows capability Team Software Agile/Lean practices Great Software Good practices Good Software Poor working practices Poor Software Bad working practices Bad Software
The size of the circls indicates the scale of the application Small app App 1 Large app App 1 How you determine size of app is up to you.
Appendix 2 Sample Uses of grid
Over Communicate your plan $ Understand the cost to the organisation of slow releases Excellence / Craftmanship $$ Integration test costs Cost of rework $$$ Cost of delay and hand off Cost of building the wrong thing $$$$ Cost of not asking the right question
API API API API API API API API Define the pace of your applications Not all applications should be treated in the same way Apps Front End UI Cust. Mgt Understand the pace layers of your apps and governance needed Digital Asset Core Ecomm Order Mgt How good are the major vendor Ecommerce and Finance/ERP systems? Finance Systems Payment
Define the pace of your applications But for everything? You want to be here! Apps Front End UI DevOps without legacy is easy. Cust. Mgt Fight the right battles with your legacy Digital Asset Core Ecomm Order Mgt Where you invest your $$ is critical. Invest in DevOps where it matters. Finance Systems Payment
Define the pace of your applications Moving existing legacy apps to faster delivery is hard Really? Don’t make the mistake of over promising! Legacy Zone Trying to improve all of your applications just won’t be practical.
Kill dependencies at all cost Components have no dependencies that require testing in a shared test environment with corporate applications Legacy Zone Many corporate dependencies that require testing with each other and co-ordination of data / process
Kill dependencies at all cost Reduce your legacy and create new capability Reduce size and complexity of slow moving applications Legacy Zone NEW E.g. consider creating a Front End separation layer enabling parts to be independently released
Kill dependencies at all cost Many organisations want to be lean and get value to their customers quickly Understand what is really a viable MVP Legacy Zone NEW A change considered fast is now very slow as it needs to be coordinated with a corporate release.
Don’t create new ‘legacy’ An example project: part 1 STEP 1: Start with good intentions In this example the team are aware of DevOps and start automating build/deploy/test and using Continuous Integration. The Operations team are involved early. Enterprise Project Methodology/Governance/Finance promotes integrated test phases and big bang deployment. The intention is to deploy independently hence it’s position on the grid. The plan is to think about Continuous Delivery later in the project NEW Legacy Zone
Don’t create new ‘legacy’ An example project: part 2 STEP 2: The inevitable project pressures show up The team is under pressure and functionality is prioritised over keeping automated test and deployment scripts updated. Ops team not as engaged as they had been. The team tried BDD but did not continue with it as the value wasn’t being seen. Project Manager requests a detailed plan for all tasks until go-live. Agility starts to slip. Technical debt increases. Legacy Zone NEW
Don’t create new ‘legacy’ An example project: part 3 STEP 3: Find corporate legacy dependencies The application was on track to be delivered but new dependencies are found (e.g with corporate reporting and finance systems or corporate middleware) The new application is now tied into a corporate release cycle. Importantly the application might now always be tied into corporate release cycle until the dependencies are broken (if that is possible) Legacy Zone NEW
Don’t create new ‘legacy’ Set the bar high for new initiatives / programmes • When a new initiative comes along and a new team is built to deliver it set the bar high with DevOps operational requirements and ways of working. • Encompass: • Behaviour Driven Development • Continuous Integration • Continuous Delivery • Full automation • Robust configuration management Legacy Zone NEW
Don’t create new ‘legacy’ Ensure your corporate project methodology encourages DevOps.. …else you’ll create legacy every time Legacy Zone NEW How do you measure success of your projects?
DevOps is not just an IT Problem Wrong team objectives & rewards Enterprise equilibrium tends to push your DevOps adoption backwards Wrong 3rd Party Suppliers Wrong hiring policy Wrong contractual & financial frameworks Make the wrong choice and the forces may be working against your goal of faster delivery. Wrong technology choice
You are unique. Think for yourself A shared DevOpscapabilty can speed-up other team’s DevOps adoption Shared Tooling A shared capability to assist environment creation and tool setup Automation Cloud Adoption Ways of Working Oil the enterprise machine by removing common impediments
You are unique. Think for yourself ? ? ✔ You’re going to have to think for yourself. ? There are still a lot of areas of enterprise DevOps that still need to be answered Keep an open mind and innovate yourself
Make your tools work for you Expensive Tooling won’t move the needle on its own $$$ Wrapping entire legacy applications in new automation deployment software isn’t the answer. Legacy Zone Don’t automate your legacy processes!
Make your tools work for you New Ways of working dictate new flexible connected tooling MULTIPLE DIGITAL TOOLSETS Embrace best of breed Open Source and make sure you don’t get tied to a particular tool.. Multiple sets of tools need to co-exist ..specifically don’t be tied to your corporate toolset TRADITIONAL TOOLSET