devops - its just agile done right
TRANSCRIPT
DEVOPS Its just Agile done right
Tomas Riha ([email protected])
• Domain Architect Delivery Engine VGT/WirelessCar
• Great at Delivery, Change, Quality, Efficiency and Fun
• Bad at Manual & Repetitive Tasks, Following written instructions
• Huge Project Liability
1990 The IT Department
Business Developement Prod
1990 Feedback Loop Features
Business Developement Prod
Year(s)
1990 Feedback Loop Runtime
Business Developement Prod
Day(s)
2000 RUP
Business Developement
Developement
Test
Test Prod
2000 Feedback Loop Features
Business Developement
Developement
Test
Test Prod
Month(s) Month(s) Month(s)
Year(s)
2000 Feedback Loops Runtime
Business Developement
Developement
Test
Test Prod
Month(s) Month(s) Month(s)
? ? ?
2001 The Agile Manifesto
AGILE!
cooperation
embrace change
small deliveries often
simplicity
individuals
autonomous team trust
Test Developement
2005 Scrum
Business
Prod Test Developement
Test Developement
2005 Feedback Loop Features
Business
Prod Test Developement
Week(s) Week(s)
Month(s)
Test Developement
2005 Feedback Loop Runtime
Business
Prod Test Developement
Week(s) Week(s)
Month(s)
2008 DevOps Days DevOps
!
2011 Continuous Delivery
Continuous Delivery!
Jez & Dave
Prod
Test Dev
2011 Continuous Delivery & DevOps
Business
Test Dev
Prod Test Dev
Prod Test Dev
Test Dev Prod Test Dev
Full Responsiblity
Prod
Test Dev
2011 Feedback Loops
Business
Test Dev
Prod Test Dev
Prod Test Dev
Test Dev Prod Test Dev
Hour(s)
Principles behind the Agile Manifesto
1. Our highest priority is to satisfy the customer
through early and continuous delivery
of valuable software.
What is a Team?
Work Group Team
Organisational Unit
Organizational Unit
Workgroup
Team
Responsible for what?
! ? ! ? !
Architecture
Login Invite
Config
Build Test and Operate
Login Invite
Config
Login Invite
Config
Only Depend on APIs
Test Levels – Component Testing
Test Env
App
API
Config
Mock
Test Env
Test Levels – Contract Testing
App
API
Config
Mock
Test Env
App
API
Test Levels – Simulation & Monitoring
QA & PROD Environments
App
API
Test Envenvironment
App
API
Config
Mock
Test Envenvironment
App
API
App
API
App
API
What Roles does a Team need?
What capabilites does a Team need?
• Team Leadership
• Requirement Analysis
• Requirement Verification
• Test Architecture
• Test Automation
• Architecture
• API Design
• Development
• Database Design
• Database Implementation
• Deployment
• Logging
• Monitoring
Riha-Floren Team Competence Chart
Team Leadership
Requirement Analysis
Requirement Verification
Test Automation
Test Architecture
Architecture
Frontend design
Frontend development
Backend development
Database Design
Database Development
Database Admin
Logging
Monitoring
Operative System
Networking
Riha-Floren Team Competence Chart
Team Leadership
Requirement Analysis
Requirement Verification
Test Automation
Test Architecture
Architecture
Frontend design
Frontend development
Backend development
Database Design
Database Development
Database Admin
Logging
Monitoring
Operative System
Networking
Riha-Floren Team Competence Chart
Team Leadership
Requirement Analysis
Requirement Verification
Test Automation
Test Architecture
Architecture
Frontend design
Frontend development
Backend development
Database Design
Database Development
Database Admin
Logging
Monitoring
Operative System
Networking
Riha-Floren Team Competence Chart
Team Leadership
Requirement Analysis
Requirement Verification
Test Automation
Test Architecture
Architecture
Frontend design
Frontend development
Backend development
Database Design
Database Development
Database Admin
Logging
Monitoring
Operative System
Networking
What Roles does a Team need?
Team Leadership
Requirement Analysis
Requirement Verification
Test Automation
Test Architecture
Architecture
Frontend design
Frontend development
Backend development
Database Design
Database Development
Database Admin
Logging
Monitoring
Operative System
Networking
BA
Architect
Tester
Developer
DBA
Operations Specialist
The Team and the Individuals
Engineer in Test - Test Spec, Glue Code, DSL, Bug fixes, Backend Code
Engineer in Architecture – Architecture, Prototype, Backend Code, Bug Fixes , Test Spec
Engineer in Backend - Backend Code, Bug Fixes, Glue Code, DSL, Test Spec
Engineer in GUI Test - Test Spec, Glue Code, DSL, Bug fixes, GUI Code
Engineer in Frontend - GUI Code, Bug Fixes, Glue Code, DSL, Test Spec
Engineer in Infrastructure - Infrastructure Code, Bug Fixes, Glue Code, DSL, Test Spec
Definition of Done
In production delivering value and meeting SLA.
Definition of Done
Or is it actually….
When service is decommissioned.
The DevOps miss concepts
You don’t have “a DevOps team” that supports the other
teams.
You don’t hire “a DevOp” to put in your development teams.
You don’t hire a Dev to put in your operations teams.
DevOps DevOps is a Culture
All teams are DevOps teams
All teams have full responsibility of a service lifecycle
All teams are autonomous
Organization must support DevOps
• Create an Organization that matches Delivery Model and
Architecture
Now Im Done!
Catch me at the coffee machine or
• Blog http://continuous-delivery-and-more.blogspot.se
• Twitter @TomasRihaSE
• Mail [email protected]