DevOps and metrics presentation, co-presentation by Dave van Herpen and Harold van Heeringen (both Sogeti Nederland B.V.). The key message of the presentation is the fact that metrics are important in DevOps environments and that it is important to do a thorough analysis of which metrics are important to collect and for which reasons.
8. Metrics
DevOps business drivers
Customer Satisfaction
Optimal value & risk
Short TTM
Efficient operations
Business
driven
Feedback
loops
Fast flow
Multidiscipl.
teams
9. Metrics
CD - DevOps
• Continuous Delivery:
– Integratie binnen de deployment pipeline
• DevOps:
– Beweging tbv samenwerking Dev, Ops, QA &
business
10. Metrics
CD - DevOps
Basis = principes
Naam = gewenste resultaat
Continuous
Basis = organisatie
Naam = implementatiewijze
DevOps
Delivery
12. Metrics
Agile Manifesto (2001)
Mensen en hun onderlinge interactie boven processen en tools
Werkende software boven allesomvattende documentatie
Samenwerking met de klant boven contractonderhandelingen
Inspelen op verandering boven het volgen van een plan
20. Metrics
DevOps culture
“I’ll tell you EXACTLY what DevOps means:
Devops means giving a shit about your job enough to not pass the buck.
Devops means giving a shit about your job enough to want to learn all the
parts and not just your little world.
Developers need to understand infrastructure. Operations people need to
understand code. People need to fucking work with each other and not just
occupy space next to each other.”
John Vincent | @lusis | http://goo.gl/X3joO2
21. Metrics
DevOps focus:
• Vooral focus op:
– Standaardisatie
– Automatiseren
– Nieuwe technologieën
• Te weinig focus op:
–
–
–
–
Functioneel Beheer
IT support
Complexe systemen & processen
Portfolio Management
Enterprise
DevOps
22. Metrics
Wat levert DevOps op?
Improved quality of
software deployments
More frequent
software releases
Improved visibility into
IT process and requirements
Cultural change
collaboration/cooperation
More responsiveness
to business needs
More agile
development
More agile
change management process
Improved
quality of code
63%
63%
61%
55%
55%
51%
45%
38%
PuppetLabs, IT Revolution Press (December 2012)
4000+ respondents
90+ countries
24. Metrics
Harold van Heeringen
Software Cost Engineer, Sogeti Nederland B.V.
President International Software Benchmarking Standards Group (ISBSG)
COSMIC IAC, Nederlandse afgevaardigde
Nederlandse Software Metrieken Associatie (NESMA) bestuurslid
werkgroep COSMIC (voorzitter)
werkgroep Benchmarking (voorzitter)
werkgroep FPA and quality metrics in contract(ing) (voorzitter)
@haroldveendam
haroldveendam
haroldvanheeringen
24
25. Metrics
Metrics & DevOps
• DevOps doel: continu verbeteren !
• Performance:
– inzicht;
– Trends;
– stuurmechanisme.
• Benchmarken:
– Intern – tussen teams / afdelingen;
– Extern – met de markt.
• Team commitment (competitie element)
• Bewijs dat DevOps werkt – communicatie !!
25
26. Metrics
Vele soorten metrics
• Business metrics
– Bijvoorbeeld: time-to-market
• Applicatie metrics
– Bijvoorbeeld: beschikbaarheid van de applicatie
• Team metrics
– Bijvoorbeeld productiviteit
• Er zijn duizenden metrieken denkbaar…
• Welke metrics kiezen? GQM!
26
27. Goal Question Metric (GQM)
Metrics
• Veel organisaties meten zaken waar niets mee wordt gedaan;
• Kost tijd, geld en levert weinig op;
• Metrieken moeten altijd gerelateerd zijn aan een
informatiebehoefte;
• Een informatiebehoefte moet altijd gekoppeld zijn aan een doel;
• Goal Question Metric (GQM) (Basili, 1992)
27
29. Metrics
•
•
•
•
•
•
•
•
Typische doelen DevOps
Verbeterde klantwaarde;
Verbeterde kwaliteit van de software;
Snellere time-to-market (sneller dan concurrent);
Snellere recovery na incidenten;
Verhoogde beschikbaarheid;
Verlaagde kosten;
Verbeterde besluitvorming;
Verhoogde voorspelbaarheid.
29
30. Metrics
Voorbeeld GQM DevOps
• Stakeholder : Business owner Applicatie X
– Goal: Verbeterde concurrentiepositie d.m.v. snellere
implementatie van features (time-to-value)
– Questions:
• Wat is de huidige implementatiesnelheid per feature?
• Wordt de implementatiesnelheid steeds korter?
• Is de implementatiesnelheid sneller dan
marktgemiddeld?
– Metrics:
• Implementatiesnelheid: FP per kalendermaand
(trend)
• Gemiddeld aantal dagen tussen indienen change en
implementatie
30
33. Agile: Story Points
Metrics
Relatieve omvangsmaat, meet de omvang van user stories t.o.v.
elkaar. Keuze van ‘referentie’, overige relatief.
VB: Hondpunten (o.b.v. hoogte).
Ras
Hondpunten
Poedel
5
Schnautzer
Team X: Duitse herder = 10
Team Y: Schnautzer = 10
Team Z: Chihuahua = 1
6
Duitse herder
Chihuahua
10
2
Labrador
11
Sint Bernhard
12
Bulldog
7
Hondpunten/Story points is geen standaard
Niet bruikbaar voor opbouwen historische
data
Niet bruikbaar voor begroten project
Niet bruikbaar voor benchmarking/metrics
Wel bruikbaar voor begroten sprint
Wel bruikbaar voor velocity/burn down
33
34. Metrics
b.v. Waarde
• Meer functionaliteit = meer waarde !!
• Uit te drukken in objectieve, herhaalbare, verifieerbare eenheid;
– Story points? Voldoet aan geen van deze kenmerken;
– Slocs? Geen maat voor waarde. Meer slocs is goed? Of slecht?;
– Usecases? Geen objectieve maat (verschillende niveaus);
– Functiepunten: Voldoet aan alle kenmerken!
• Functiepunt analyse – meet functionele omvang
– Onafhankelijk van techniek;
– Onafhankelijk van implementatiewijze;
– Onafhankelijk van ontwikkel methodologie.
34
35. Metrics
Functiepunten en Agile
•
•
•
•
•
•
•
Functiepunten worden als ‘ouderwets’ en ‘waterval’ gezien.
Niets is minder waar!!
Moderne variant van FPA: COSMIC FPA
Nauwkeurig meten van user requirements
Objectieve eenheid, herhaalbaar, verifieerbaar!
Zeer geschikt voor meten van documentatie in agile projecten
Zeer geschikt voor meten van real-time software, embedded
software, SOA architecturen, Mobile apps, Cloud, etcetera!
• Eenvoudiger toe te passen dan NESMA/IFPUG FPA
• Proces georiënteerd, niet data georiënteerd
• COSMIC FPA is perfect geschikt voor het meten van waarde!
35
37. Metrics
User stories en COSMIC
Vaak: User stories.
Als een <type gebruiker> wil ik <iets doen> zodat ik <er iets aan
heb>.
Als een boekkoper wil ik de klantbeoordelingen van een boek lezen,
zodat ik beter kan beslissen of ik het boek wil kopen.
Functioneel Proces: Lezen klantbeoordelingen
Entry: klik link ‘lezen klantbeoordelingen van boek’
Read: Ophalen beoordelingen boek
eXit: Toon beoordelingen boek
eXit: Toon gemiddelde score (berekening)
eXit: Meldingen (fout / boodschap)
5 COSMIC FP
37
38. COSMIC FPA / SP
Metrics
Kenmerk
COSMIC Functiepunten
Story Points
Objectief / herhaalbaar /
verifieerbaar
Ja
Nee
Basis
ISO standaard
Meningen teamleden
Eenvoud meten
Gecertificeerde analist
Eenvoudig
Begroten Project / Release
Ja, i.c.m historische data en
Nee
eventueel begrotingstools (bv
QSM of SEER-SEM)
Begroting Sprint
Ja
Ja
Benchmarking
Intern en Extern
Alleen binnen team (!?)
Historische Data
Ja (ISBSG > 500 projecten)
Nee
Project Bewaking /
forecast
Ja
Ja
Gebruik in contracten
Ja
Nee
Tijd / inspanning
1 a 2 dagen (afh. Van omvang) X teamleden * 1 a 2 uur
38
39. Metrics
•
•
•
•
•
•
•
•
•
•
Typische DevOps metrics
Productiviteit – bestede uren/functiepunt
Kosten – EUR / functiepunt
Velocity – functiepunten per sprint in productie gebracht
Speed – functiepunten per kalendermaand
Kwaliteit proces – defects per functiepunt
Onderhoudbaarheid – SIG sterren
Mean Time to Recover (minuten)
Deployment Rate/frequency (keren per dag)
Change Lead time (dagen)
Change Failure rate (%)
39