Disciplined DevOps: Pragmatic Strategies for the Enterprise
-
Upload
scott-w-ambler -
Category
Software
-
view
493 -
download
1
Transcript of Disciplined DevOps: Pragmatic Strategies for the Enterprise
Scott W. Ambler Disciplined Agile Fellow
scott [at] scottambler.com
@scottwambler
Disciplined DevOps: Pragmatic Strategies for the Enterprise
© Disciplined Agile Consortium 3
Agenda
• DevOps Gap • Why DevOps? • Defining DevOps
– Continuous Delivery – Development + Operations – Disciplined DevOps – Our Definition
• The DevOps Mindset • How Disciplined DevOps Affects the Rest of IT
– In “Straightforward” Situations – At Scale
• Strategies for adopting Disciplined DevOps • Parting Thoughts
Do You Have a DevOps Gap?
© 2016 Disciplined Agile Consortium
Development Operations
Change Requests
Production Releases
• Production releases are seen as risky • Collaboration between development and operations is strained • Development doesn’t appreciate the realities of operations • Operations doesn’t understand new development strategies
4
Why DevOps?
• Decreased time to market (reduced cycle time) • Decreased cost to deploy • Improved mean time between deployments (deploy more often) • Improved quality • Improved market competitiveness • Improved decision making
© 2016 Disciplined Agile Consortium 5
One View: Continuous Delivery
• Practices: – Automated regression testing – Continuous integration (CI) – Continuous deployment (CD) – Canary tests – Split (A/B) tests
• Operations-friendly features: – Feature toggles – Feature-level access control – Built-in monitoring – Self testing – Self recovery
© 2016 Disciplined Agile Consortium 7
A Better View: Agile Delivery + Operations
© 2016 Disciplined Agile Consortium
• Multi-modal approach to software development
• Operations activities are also streamlined and “leaned out”
• Some teams will adopt a “you build it, you run it” philosophy, but a common operational infrastructure still required
8
Disciplined DevOps: A Definition
Disciplined DevOps is the streamlining of IT solution development and IT operations activities, and supporting enterprise-IT
activities, to provide more effective outcomes to an organization.
© 2016 Disciplined Agile Consortium 10
The DevOps Mindset
© 2016 Disciplined Agile Consortium 11
1. Streamline the end-to-end flow 2. Reduce the feedback cycle 3. Flexible people 4. Multidisciplinary “generalizing specialists” 5. Standardized infrastructure 6. Automation and tools 7. Standardized development guidelines 8. You build it, you run it
DevOps Changes Your Relationship with the Business
• Your business and IT processes must be integrated – Plans must be high-level with the details coming just in time (JIT) – Emphasize delivery of value via a consumable solution rather than
transitory work products of questionable value – Schedules and estimates must be given in ranges – Traditional business approaches will eliminate most benefits of
agile/DevOps • The new relationship with the business:
– They must be actively involved with development all the way through the lifecycle
– The greater visibility and control that they now have implies the need for greater accountability on their part
– They often don’t understand the implications of what they ask for, you need to educate them
– You need to demonstrate that disciplined agile delivery is not cowboy programming. It is very likely far more disciplined than their current processes
© 2016 Disciplined Agile Consortium 12
How DevOps Affects Development
• Adopt common development practices such as automated regression testing, continuous integration (CI), continuous delivery (CD), deployment testing, and development intelligence (automated dashboards)
• Adopt “new” practices such as canary tests, split tests
• Build in operations-friendly features such as feature access control, application instrumentation, feature toggles, self testing components, support alerts, and self-recovering components
© Disciplined Agile Consortium 14
How DevOps Affects Operations • Adopt common operations practices:
– Solution monitoring – Standard platforms – Operations intelligence (automated
dashboards) – Disaster planning
• At scale: – Scheduled disaster simulation – Unscheduled disaster simulations
(e.g. chaos monkey)
© Disciplined Agile Consortium 15
How DevOps Affects Support
• Self service options: – Online discussion forums – Online information
• Common support/help desk practices: – Synchronous and asynchronous
support options – Developer-led support (you build it, you
support it)
• Advanced strategies – Support alerts built into application – Support sandbox (for issue simulations)
© Disciplined Agile Consortium 16
How DevOps Affects Release Management • Common release practices:
– Continuous release availability – Release windows (quick cadence) – Release train – Release windows (slow cadence)
• Common supporting practices include integrated deployment planning, testing environments consistent with production, release service streams/levels, and shared release strategies
• At scale: – Many teams: Release coordination – Large teams: Release train – Regulatory: Separation of concerns will require access
control, logging, and decision-based deployments © Disciplined Agile Consortium 17
How DevOps Affects Data Management
• Data management, in particular database change deployment and data operations, is a key aspect of DevOps
• Many data management organizations are sorely behind the rest of IT when it comes to adopting Agile, Lean, and DevOps-friendly strategies
• Common practices: – Data and information guidelines – IT intelligence (automated dashboards)
• “New” practices: – Database regression testing – Database refactoring – Automated database deployments
© Disciplined Agile Consortium 18
DevOps Adoption Strategies
1. Stakeholders. Engage with your stakeholders 2. People. Educate, train, and coach your staff 3. Visualize. Visualize your delivery process from
beginning to end (and back again) 4. Focus. Identify your pain points and bottlenecks 5. Focus some more. Identify a minimum viable
cluster of applications that can be enabled for DevOps, and start there
6. Improve. Adopt a continuous learning/improvement mindset
7. Think. Beware of vendors and consultants offering quick or easy solutions
© Disciplined Agile Consortium 19
Parting Thoughts
• You don’t just do DevOps – You must also have the DevOps mindset
• DevOps improves IT’s ability to support the rest of the organization – The rest of the business needs to evolve too
• You have to build DevOps for yourself – You cannot buy it
• DevOps permeates IT – You don’t have a “DevOps Group”, nor “DevOps
Engineers”
© 2016 Disciplined Agile Consortium 22
DevOps Critical Success Factors
1. Build a collaborative and respectful culture across your entire IT organization
2. Focus on people, but don’t forget process and tooling
3. Choice is good
© 2016 Disciplined Agile Consortium 23
Important Resource
DisciplinedAgileDelivery.com/disciplineddevops/
© 2016 Disciplined Agile Consortium 24
Thank You! scott[at] scottambler.com
@scottwambler
AgileModeling.com AgileData.org Ambysoft.com
DisciplinedAgileConsortium.org DisciplinedAgileDelivery.com
ScottAmbler.com
Disciplined Agile Delivery
© Disciplined Agile Consortium 25
Scott W. Ambler
• Pioneered Agile Modeling and Agile Database techniques in the early 2000s
• Co-creator of the Disciplined Agile Delivery (DAD) framework
• Executive Transformation Coach
• scott [at] scottambler.com • @scottwambler
© Disciplined Agile Consortium
Helps IT departments around the world become awesome
26
Disciplined Agile Delivery (DAD) is a process decision framework The key characteristics of DAD:
– People-first – Goal-driven – Hybrid agile – Learning-oriented – Full delivery lifecycle – Solution focused – Risk-value lifecycle – Enterprise aware
© Disciplined Agile Consortium 27
Shuhari and Disciplined Agile Certification
At the shu stage you are beginning to learn the techniques and philosophies of
disciplined agile development. Your goal is to build a strong foundation from
which to build upon.
At the ha stage you reflect upon and question why disciplined agile strategies work, seeking to understand the range
of strategies available to you and when they are best applied.
At the ri stage you seek to extend and
improve upon disciplined agile techniques, sharing your learnings with
others.
© Disciplined Agile Consortium 28
Would You Like This Presented to Your Organization?
Contact us at ScottAmbler.com
© Disciplined Agile Consortium 29
Scott Ambler + Associates is the thought leader behind the Disciplined Agile Delivery (DAD) framework and its application. We are a boutique IT management consulting firm that advises organizations to be more
effective applying disciplined agile and lean processes within the context of your business.
Our website is ScottAmbler.com
We can help
© Disciplined Agile Consortium 30