devops an introduction
TRANSCRIPT
DevOpsAn introduction
Eric Soudy - June 2016
DevOps history
DevOps came from:• Agile development
manifesto (Scrum, XP…)• Lean improvement (Lean
Software Development, Lean Manufacturing, TPS…)
• ITIL for some part of IT service management.
DevOps definition
DevOps, a clipped compound of development and operations, is a culture, movement or practice that emphasizes the collaboration and communication of both software developers and other information-technology (IT) professionals while automating the process of software delivery and infrastructure changes.It aims at establishing a culture and environment where building, testing, and releasing software, can happen rapidly, frequently, and more reliably.
From wikipedia
DevOps is the practice of operations and development engineers participating together in the entire service lifecycle, from design through the development process to production support, reducing the time to market of client value added components.
DevOps principles - CA(L)MS
Culture: People and process first, if you don’t have culture, all automation attempts will be fruitless.Automation: This is one of the places you start once you understand your culture. At this point, the tools can start to stitch together an automation fabric for Devops. Tools for release management, provisioning, configuration management, systems integration, monitoring and control, and orchestration become important pieces in building a Devops fabric.
Measurement: If you can’t measure, you can’t improve. A successful Devops implementation will measure everything it can as often as it can… performance metrics, process metrics, and even people metrics.Sharing: Sharing is the loopback in the CAMS cycle. Creating a culture where people share ideas and problems is critical. Jody Mulkey, the CIO at Shopzilla, told me that they get in the war room the developers and operations teams describe the problem as the enemy, not each other. Another interesting motivation in the Devops movement is the way sharing Devops success stories helps others. First, it attracts talent, and second, there is a belief that by exposing ideas you can create a great open feedback that in the end helps them improve.
Source: John Willis
+ L for LEAN
DevOps Cycle
DevOps is a way to bridge the gap between Developers and Operations team for frequent deployments. It could be called “Near Real Time” development or “Elastic” deployment cycle because you can automatically deploy as soon as a change is committed by the developers. Human intervention is minimized wherever possible. Automation throughout the development and release life cycle, continuous feedback and process improvement is the key for adopting DevOps.
DevOps Continuous Delivery
SourceContinuous delivery is a software engineering approach in which teams produce software in short cycles, ensuring that the software can be reliably released at any time. It aims at building, testing, and releasing software faster and more frequently.
The approach helps reduce the cost, time, and risk of delivering changes by allowing for more incremental updates to applications in production.
Traditional organisation
Technical or functionnal silos
CEO
Business CIO
Dev Ops
Requirements
Developments
Tests / QA
Integration
Production
Marketing
Products
Client supportTech support
DevOps possible organisations
Product or application silosPrevious images source: Jez Humble - Scaling DevOps
CEO
Business CIO
Application 1
Application 2
Business 1
Business 2Measure,
Monitoring
Architecture, Security, Governance
Infrastucture as code Cloud➽
Source
PO = Product Owner
A Squad is similar to a Scrum team, and is designed to feel like a mini-startup. They sit together, and they have all the skills and tools needed to design, develop, test, and release to production.
A Tribe is a collection of squads that work in related areas – such as the music player, or backend infrastructure.
A Chapter is a small family of people having similar skills and working within the same general competency area, within the same tribe. As a Guild is a wide-reaching “community of interest”.