Page Properties | ||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
\uD83D\uDCD8 Background
Vi tog ett beslut i februari 2021 om att använda Quarkus som vårt primära ramverk för att utveckla applikationer → Primärt ramverk för utveckling
...
Med den nya situationen ansåg vi det vara nödvändigt att utreda detta på nytt. Vi har därför gjort en ny utredning angående vilket val av ramverk som skulle bidra med mest nytta till Sundsvalls kommun.
\uD83C\uDF08 Options considered
Argument för att byta till Spring-boot
En stor del av teamet har lång erfarenhet av utveckling i Spring Boot. Detta för med sig dessa fördelar:
Vi vet att det finns stöd för allt vi har behov av i Spring Boot.
I Quarkus har vi förmodligen stöd för det mesta också, men vi behöver lägga tid på att utreda detta.
Vi kommer snabbare komma till en stabil grundplatta.
Vi vet vad som behöver göras och hur det ska göras. Med Quarkus blir det mer tid på utredning.
Vi kommer initialt bygga applikationer snabbare och med en högre kvalitet eftersom vi nyttjar den kompetens vi redan har i teamen
Med Quarkus måste vi lära oss och prova oss fram tills vi har blivit lika effektiva.
Det är osäkert om vi kommer få så stor nytta av de prestandafördelar Quarkus för med sig.
Vi kommer inte bygga system med så högra krav på prestanda så att detta kommer bli en begränsning med Spring Boot.
Hårdvara är billigt och tid är dyrt.
Camunda utvecklar sina backend-applikationer i Spring Boot vilket innebär vissa fördelar:
Vi kan använda gemensamma bibliotek.
Kompetensspridning mellan teamet.
Argument för att fortsätta med Quarkus
Försäkringskassan och DIGG har valt Quarkus som ramverk.
Det är bra att kompetensen finns i stan men det kommer inte vara ett problem att hitta Spring Boot-kompetens heller, eftersom det används i så mycket större utsträckning.
Vi har redan byggt flera applikationer i Quarkus.
En ombyggnation till Spring Boot kan göras i samband med en större uppdatering av applikationen. Det borde inte innebära allt för mycket jobb då grunden är detsamma - Java-klasser.
Vi kan inte byta ramverk så fort vi får in nya utvecklare med kompetens inom något annat.
Det är sant. Men vi var endast några få utvecklare när vi tog det första beslutet. Nu har vi byggt upp utvecklingsteamen på kommunen under året och vi sitter nu med team som har en lång erfarenhet av Spring Boot. Det kommer inte vara ett problem att hitta konsulter med den kompetens som krävs framöver.
Det har gått för kort tid, vi kan inte redan utvärdera vilket ramverk som är bäst.
Det är sant. Men är det värt att lägga ned mer tid på Quarkus för att ta reda på det istället för att använda ett ramverk vi vet fungerar?
Det tar alltid tid i början med ett nytt ramverk innan man har fått en bra grundplatta.
Ja, så är det. Men är det värt att göra den resan eller ska vi använda något vi redan behärskar istället? Det kommer krävas jobb för att komma till en bra grundplatta med Spring Boot också men skillnaden är att vi vet hur vi ska göra.
✅ Action items
- Uppdatera den interna dokumentationen med Spring Boot
\uD83C\uDF1F Outcome
Grunderna till det tidigare beslutet är i princip oförändrade. Quarkus och Spring Boot är likvärdiga när det kommer till funktionalitet. Båda ramverken har sina egna fördelar.
...