Från långsamhet och frustration till snabbhet och arbetsglädje | Martin Rosén-Lindholm &...
-
Upload
lean-tribe -
Category
Leadership & Management
-
view
157 -
download
0
description
Transcript of Från långsamhet och frustration till snabbhet och arbetsglädje | Martin Rosén-Lindholm &...
![Page 1: Från långsamhet och frustration till snabbhet och arbetsglädje | Martin Rosén-Lindholm & Christian Hollerup Mikkelsen | LTG-24](https://reader034.fdocument.pub/reader034/viewer/2022052412/5594d8a41a28ab36578b4600/html5/thumbnails/1.jpg)
CD @ MVNO @ Telenor DKfrån långsamhet och frustration till snabbhet och arbetsglädje
![Page 2: Från långsamhet och frustration till snabbhet och arbetsglädje | Martin Rosén-Lindholm & Christian Hollerup Mikkelsen | LTG-24](https://reader034.fdocument.pub/reader034/viewer/2022052412/5594d8a41a28ab36578b4600/html5/thumbnails/2.jpg)
Martin Rosén-Lidholmutvecklingschef
Christian Hollerup Mikkelsenseniorutvecklare
![Page 3: Från långsamhet och frustration till snabbhet och arbetsglädje | Martin Rosén-Lindholm & Christian Hollerup Mikkelsen | LTG-24](https://reader034.fdocument.pub/reader034/viewer/2022052412/5594d8a41a28ab36578b4600/html5/thumbnails/3.jpg)
Problem• Komplex semimanuell utgivningsprocess med t.ex. manuella merges
• Lång utgivningsprocess (ca. 1,5 t)
• Hela systemet byggt och utgivet som en monolit
• Två stora tungjobbade Visual Studio-lösningar (upp till 80 projektfiler)
• Försök att automatisera acceptanstester har misslyckats (SBE, SpecFlow, Selenium, ...)
![Page 4: Från långsamhet och frustration till snabbhet och arbetsglädje | Martin Rosén-Lindholm & Christian Hollerup Mikkelsen | LTG-24](https://reader034.fdocument.pub/reader034/viewer/2022052412/5594d8a41a28ab36578b4600/html5/thumbnails/4.jpg)
Working Review Test Production
Uppgift
![Page 5: Från långsamhet och frustration till snabbhet och arbetsglädje | Martin Rosén-Lindholm & Christian Hollerup Mikkelsen | LTG-24](https://reader034.fdocument.pub/reader034/viewer/2022052412/5594d8a41a28ab36578b4600/html5/thumbnails/5.jpg)
Working
Uppgift
checkout -b uppgift
commit + push
Triggar följande automatiska process:
• Bygger och kör regressionstester
på byggservern
• Skapar NuGet-pkg
• NuGet-pkg i AppVeyor-feed
• NuGet-feed betraktas som test-feed
deploy till utv.server
färdig
ej färdig
pull request
Detta steg utförs ibland då bygg och deploy är en del av lösningen och källkoden för en mikroservice.
![Page 6: Från långsamhet och frustration till snabbhet och arbetsglädje | Martin Rosén-Lindholm & Christian Hollerup Mikkelsen | LTG-24](https://reader034.fdocument.pub/reader034/viewer/2022052412/5594d8a41a28ab36578b4600/html5/thumbnails/6.jpg)
Working Review Test Production
Uppgift
![Page 7: Från långsamhet och frustration till snabbhet och arbetsglädje | Martin Rosén-Lindholm & Christian Hollerup Mikkelsen | LTG-24](https://reader034.fdocument.pub/reader034/viewer/2022052412/5594d8a41a28ab36578b4600/html5/thumbnails/7.jpg)
Review
Uppgift
granska commit
beskriv önskadändring
«automatiskt»
upprätta ’task’ i’Uppgift’
anmärkning/-ar
återståendecommits
markera ’Uppgift’ som’ready to pull’
flytta ’Uppgift’ till’working’
ej anmärkning/-ar
anmärkning/-ar
«automatiskt»uppdatera ’Uppgift’ vid byggfel
![Page 8: Från långsamhet och frustration till snabbhet och arbetsglädje | Martin Rosén-Lindholm & Christian Hollerup Mikkelsen | LTG-24](https://reader034.fdocument.pub/reader034/viewer/2022052412/5594d8a41a28ab36578b4600/html5/thumbnails/8.jpg)
Working Review Test Production
«ready»
Uppgift
![Page 9: Från långsamhet och frustration till snabbhet och arbetsglädje | Martin Rosén-Lindholm & Christian Hollerup Mikkelsen | LTG-24](https://reader034.fdocument.pub/reader034/viewer/2022052412/5594d8a41a28ab36578b4600/html5/thumbnails/9.jpg)
Working Review Test Production
Uppgift
![Page 10: Från långsamhet och frustration till snabbhet och arbetsglädje | Martin Rosén-Lindholm & Christian Hollerup Mikkelsen | LTG-24](https://reader034.fdocument.pub/reader034/viewer/2022052412/5594d8a41a28ab36578b4600/html5/thumbnails/10.jpg)
Test
Uppgift
genomgå ’Uppgift’
ej anmärkning/-ar
flytta ’Uppgift’ till’Production’
flytta ’Uppgift’ till’working’ medkommentarer
anmärkning/-ar
«automatiskt» deploy:a förra versionen
![Page 11: Från långsamhet och frustration till snabbhet och arbetsglädje | Martin Rosén-Lindholm & Christian Hollerup Mikkelsen | LTG-24](https://reader034.fdocument.pub/reader034/viewer/2022052412/5594d8a41a28ab36578b4600/html5/thumbnails/11.jpg)
Working Review Test Production
Uppgift
![Page 12: Från långsamhet och frustration till snabbhet och arbetsglädje | Martin Rosén-Lindholm & Christian Hollerup Mikkelsen | LTG-24](https://reader034.fdocument.pub/reader034/viewer/2022052412/5594d8a41a28ab36578b4600/html5/thumbnails/12.jpg)
Production
Uppgift
flytta ’Uppgift’ till’working’ medkommentarer
«automatiskt»
deploy:a till prod.server
«automatiskt»merge
gick bra
«automatiskt» deploy:a förra versionen
gick inte bra
«automatiskt» stäng pull request
![Page 13: Från långsamhet och frustration till snabbhet och arbetsglädje | Martin Rosén-Lindholm & Christian Hollerup Mikkelsen | LTG-24](https://reader034.fdocument.pub/reader034/viewer/2022052412/5594d8a41a28ab36578b4600/html5/thumbnails/13.jpg)
Production
UppgiftMätningar
Sentry
Egen prestandalogg okej
ej okej
ny uppgift i backloggenpå tavlan
Batch-jobbloggar
Olika driftsloggar
![Page 14: Från långsamhet och frustration till snabbhet och arbetsglädje | Martin Rosén-Lindholm & Christian Hollerup Mikkelsen | LTG-24](https://reader034.fdocument.pub/reader034/viewer/2022052412/5594d8a41a28ab36578b4600/html5/thumbnails/14.jpg)
Problem nu och då• Komplex semimanuell utgivningsprocess med t.ex. manuella merges
Enkel automatiserad utgivningsprocess. Auto-merge (eller varning).• Lång utgivningsprocess (ca. 1,5 t)
Snabb utgivningsprocess (minuter)• Hela systemet är byggt och utges som en monolit
Många självständiga mikroservisar/bounded contexts• Två stora tungjobbade Visual Studio-lösningar (upp till 80 projektfiler)
Många lösningar, inte nödvändigvis Visual Studio• Försök att automatisera accepttester har misslyckats (SBE, SpecFlow,
Selenium, ...)Lätt att implementera accepttester utan ballasten från det förgångna
• Nytt problem! Hur kommunicera optimalt?(Nu: NServiceBus. Imorgon: Kafka?)
![Page 15: Från långsamhet och frustration till snabbhet och arbetsglädje | Martin Rosén-Lindholm & Christian Hollerup Mikkelsen | LTG-24](https://reader034.fdocument.pub/reader034/viewer/2022052412/5594d8a41a28ab36578b4600/html5/thumbnails/15.jpg)
VerktygslådaGit
GitHub
AppVeyor
Octopus Deploy
Slack + Hubot
AgileZen
Chrome Extensions
NuGet
Eget klister
![Page 16: Från långsamhet och frustration till snabbhet och arbetsglädje | Martin Rosén-Lindholm & Christian Hollerup Mikkelsen | LTG-24](https://reader034.fdocument.pub/reader034/viewer/2022052412/5594d8a41a28ab36578b4600/html5/thumbnails/16.jpg)
Referenser
BoundedContext
#continuousdelivery @/#leanstartup #lean #kanban #microservices
#ddd #git @/#github @/#appveyor @/#octopusdeploy