DevOps I Verkligheten - TechWorld Event › wp-content › uploads › sites › ... · 1...
Transcript of DevOps I Verkligheten - TechWorld Event › wp-content › uploads › sites › ... · 1...
DevOps i Verkligheten
Mattias Sköld
DevOps coach / Solution Manager
10+ år ALM/DevOps, 20+ år i IT branchen
Sogeti har vunnit Microsoft ALM Awards
2009,10,11,12,13,14
@mattiasskold
http://mskold.blogspot.com
Hästar – Vanliga
organisationer, gör
så gott de kan
Inom DevOps pratar vi ibland om enhörningar, hästar & åsnor
Enhörningar – Mytiska djur, vad lever de av ? Finns de på riktigt ?
Åsnor Hårt lastade,
arbetsamma & envisa.
Stretar ofta på– i bland mot
Vad är DevOps
► The new decade of Agile / Agile 2.0
► Code goes into production 27 times a day
► Two pizza rule –Everyone on the team can feed on two pizzas
► Its only DevOps if developers have pagers
► There is no I in Team, no Operation in DevOps
Så pratar enhörningarna :
DevOps I grunden
Berör DevOps mig?
- Jag behöver inte springa fortare än tigern, bara fortare än dig
Det är inte enhörningarna du tävlar mot, det är dina konkurrenter!
Om du inte ser någon tiger?
► Nöjdare kunder
► Snabbare leveranser
► Högre produktivitet
DevOps är varken nytt eller svårt
DevOps = Enkelt ?
Processer och verktyg är väl beprövade och har funnits i 10 års tid.
Verktyg
► Microsoft
► Atlassian
Processer
► Agilt, Scrum
► Kanban, Lean
Det som har ändrats är gränsen för vad som är tänkbart & farten
Nya möjliggörare
► Mindset
► Molnet - Amazon, Microsoft Azure, PaaS tjänster
► Nisch spelare, Chef, Puppet, Docker …
Utmaningarna med DevOps
Gemensamma mål
Förståelse för helheten för
► Affär/verksamhet
► Utveckling
► Drift
Harmonisering Målbild & Styrning:
► Ta bort suboptimeringar
► Resurseffektivitet -> Värde skapande
Den svåra vägen: • Iterationer (Tid) • Ledningens engagemang/Tålamod • Kommunikation
Den snabba utvägen : • Avknoppning/ Innovation labs • Molnet
Förtroende
Den värsta DevOps dödssynden – Brist på förtroende
Bästa botemedlet är Transparens
Transpararens kräver Data & Spårbarhet
• Verktygsstöd
• Automation
För att våga vara transparant behöver man (oftast) börja med att städa upp
Börja med kund/affär/verksamheten.
Kvalitetssäkring
Kvalitet på tjänster
• Hur snabbt kan vi hitta fel i produktion ?
• Hur fort kan vi rätta fel i produktion ?
• Hur exponerat var felet ?
Test är inte enda verktyget för kvalitetssäkring
• Kodgranskning
• Statisk kod analys
• Teknisk skuld
Test i DevOps
Test skuld
• Test automation=Återbetalning
• Test automation garanterar konsistens inte kvalitet
Risk hantering
• Rätt MIX för din RISK
Test Automation
Test i
produktion
Manuell Test
Konsistens Verifiering Lärande
Affärsvärde
Enkelhet
Test Automation
UI
API/Service
Enhetstest
Test automation garanterar konsistens inte kvalitet
Test automatisering är en återbetalning
Mixen är viktig
Högt Affärsvärde
Svårt Dyrt
Enkelt Billigt
Inget affärsvärde
Manuella tester
Utforskande test
Exploratory
Testfall
Funktionell
Prioriterade testfall
Stabila
Inspelade
Regression
Testfall med definierade data
Repeterbar process
Data driven
Testfall förvalndlade till kod
Valideringar definierade
Automated
Mixen av manuella tester
Test i produktion
A/B Testning
Feature Flags
Stegvis utrullning
All test i produktion görs ej av kunden, men en del.
Tekniker : • Stegvis utrullning
• Feature Flags
• A/B testning
Case: Mobile DevOps
Bygga två mobilapplikationer för både iOs och Android på 3 veckor.
Team: Teknik
1 Produktägare (kund)
3 Utvecklare
1 Testare/test automatisering
Arkitekt, designer, azure-utvecklare, DevOps coach
Process
Backlog TFS
Utveckling
•Xamarin
•Git
Bygge
•iOS (Mac)
•Android
•Azure
Release
Team
•Test 1 device Xamarin Test Cloud
•Deploy till teamet via Hockey App
Alfa/kund
•Test 10 device Xamarin Test Cloud
•Deploy till teamet via Hockey App
Beta
•Test 25 device Xamarin Test Cloud
•Deploy till teamet via Hockey App
Public
•Test 250 device
•GoglePlay: Automatisk
•AppStore: Manuell
•Azure: Automatiskt
Case: Mobile DevOps
Resultat :
> 80 % delad kod
Automatisk bygge av iOS, Android & Azuretjänster
Release process med stegvis leverans & Test med Xamarin Testcloud & HockeyApp
30 automatiserade testfall, Ökande enhets täckning för varje steg i releases processen
Tid för en 1 kod raders ändring till produkt ägare, <1 h
Tidsåtgång
< 2 dagar för att sätta upp DevOps pipeline
Total <1 000 h
Det viktigaste punkterna
• DevOps kräver Gemensamma mål & Förtroende
• Test behövs, rätt MIX utifrån RISK
• Chansen är stor att du redan praktiserar delar i DevOps processen
• Har du en Microsoft plattform är chansen stor att du redan har de verktyg du behöver