Mikrofrontends: lösning eller överkomplicering?

blog 6 cover

Mikrofrontends lovar att flera team ska kunna äga varsin del av gränssnittet och släppa oberoende av varandra. Ibland är det precis rätt lösning. Oftare är det ett kraftfullt verktyg som letar efter ett problem det inte har. Så skiljer du de två fallen åt.

Problemet de löser

I en stor organisation kan en enda frontend-kodbas bli en flaskhals. Alla team väntar på samma release-tåg, och en liten ändring i ett hörn kan blockera lanseringen av allt annat. Mikrofrontends låter team A:s kundvagn och team B:s produktsida byggas, testas och släppas helt oberoende, för att sedan vävas samman av en överordnad shell-app.

Priset är högst verkligt

Du får dubblerade beroenden, eftersom varje del lätt drar in sin egen kopia av samma ramverk. Delning av design, tillstånd och inloggning blir genast svårare. Bygg- och driftskedjan blir betydligt mer komplex, och prestanda kan bli lidande om inget görs aktivt åt de dubblerade beroendena.

För ett enda team är detta nästan alltid mer kostnad än nytta. Du löser ett organisatoriskt problem du inte har, och betalar med teknisk komplexitet du absolut känner.

Alternativen du bör pröva först

Innan du når efter mikrofrontends: har du verkligen uttömt en välmodulariserad frontend? Tydliga moduler, ett delat komponentbibliotek och bra gränser inom samma kodbas löser de flesta team-konflikter, utan den distribuerade komplexiteten.

Ofta är ”vår kodbas är rörig” egentligen ett gränsdragnings- och ägarskapsproblem – inte ett som kräver att man delar upp själva applikationen.

Mikrofrontends: lösning eller överkomplicering?
En shell-app laddar in flera oberoende mikrofrontends som ägs och driftsätts av olika team.

När det är värt det

Mikrofrontends lönar sig först när du har flera självständiga team som ständigt krockar i samma kodbas, och där organisatoriskt oberoende väger tyngre än teknisk enkelhet. Det är en organisationslösning förklädd till en teknisk – och det är helt okej, så länge du väljer den med öppna ögon.

Sammanfattning

Börja med en välstrukturerad, modulär frontend. Inför mikrofrontends först när teamen, inte tekniken, kräver det. Annars köper du dyr komplexitet i utbyte mot en frihet du ännu inte behöver.