DevOps adoption
Technology challenges
DevOps is…
A set of capabilities, across the IT Value Stream (PLAN – BUILD – RUN) which enhances throughput, quality and business value
Minimum Dev Capabilities
Minimum Test Capabilities
Functional/Acceptance test
Minimum Infrastructure Capabilities
Minimum Ops Capabilities
Good to have Business Capabilities
Good to have Dev Capabilities
Good to have Test Capabilities
Good to have Infrastructure Capabilities
Good to have Ops Capabilities
Support Analytics
Policies/Procedure/Methods Business
Policies/Procedure/Methods Dev
Policies/Procedure/Methods Testing
Progressive Test Automation
Policies/Procedure/Methods Infrastructure
Policies/Procedure/Methods Ops
Agile
Time boxed, iterative approach to software delivery that builds software incrementally from start of the project, instead of trying to deliver it all at once near the end.
Big room planning
Brings all the stakeholders who are responsible for delivery of software (business, dev, test, program management teams) together in a single room for about two days
Lean
State of a project achieved by collaboration, by ‘shifting left’ operational concerns early in the development lifecycle, by eliminating waste, rework and over-production i.e. using Lean Principles in DevOps
Feature Toggle
Releasing features to a selected cohort to get their responses prior to release to entire user base
Incremental Design
Based on SOLID principles
SOLID
Micro services
An architectural style to developing a single application as a suite of small services, each running in its own process and communicating with lightweight mechanisms.