Därför behöver mjukvara uppdateras även när inget ändras
Av CodexierPublicerad 4 min läsning
En vanlig fråga från ägare: hemsidan eller appen fungerar, vi har inte beställt några ändringar, så varför kommer det en underhållsfaktura? Det ärliga svaret är att mjukvara inte står still bara för att ni gör det. Den körs ovanpå bibliotek, servrar, webbläsare, mobilsystem och andra företags API:er, och alla ändras hela tiden. Här förklarar vi mekanismen, så att underhållsbudgeten blir begriplig.
Mjukvara åldras även orörd
Utvecklare kallar det ibland för kodröta, fast ingenting i koden förfaller. Det som händer är att omgivningen förändras. I en modern hemsida eller app är er egen kod ofta den mindre delen; resten är bibliotek med öppen källkod, ramverk och tjänster, var och en med sin egen releasetakt. När de går vidare men ert projekt inte gör det växer gapet varje månad. Till slut går något sönder, eller så finns en säkerhetsrättning ni akut behöver bara för en version flera steg före er.
Beroenden och säkerhetsvarningar
Varje bibliotek ert projekt använder kan ha sårbarheter, och nya publiceras hela tiden i öppna databaser. Angripare använder samma listor och söker igenom internet efter sajter och appar med de sårbara versionerna. Lösningen är nästan alltid en ny version av biblioteket; frågan är om ert projekt kan ta emot den.
- Automatiska verktyg, som GitHubs Dependabot eller npm audit, visar vilka beroenden som har kända problem.
- De flesta rättningar är mindre uppdateringar som går snabbt att lägga in om projektet hålls aktuellt.
- Ramverk och språk har datum då stödet upphör; efter dem publiceras inga säkerhetsrättningar alls. PHP-versioner och äldre Node.js-versioner är vanliga exempel.
- WordPress-tillägg är också beroenden, och bland de vanligaste vägarna in för angrepp.
Vad som händer när detta ignoreras i åratal tar vi upp i riskerna med en gammal hemsida.
Förändringar i webbläsare, system och API:er
| Vad som ändras | Vanlig effekt för er |
|---|---|
| Webbläsare uppdateras med några veckors mellanrum | Gamla kodvägar slutar fungera; regler för kakor och integritet skärps |
| iOS och Android släpps årligen | Appar måste stödja nya versioner för att ligga kvar i butikerna; behörigheter ändras |
| Appbutikernas krav | Tidsfrister för att uppdatera SDK:er och integritetsuppgifter, annars stoppas uppdateringar |
| Externa API:er (betalning, kartor, inloggning) | Gamla API-versioner stängs på aviserade datum |
| Hostingplattformar | Körmiljöversioner fasas ut; byggen fallerar tills de uppgraderas |
| Lagar och standarder | Nya krav, som tillgänglighet eller samtyckesregler |
Inget av detta är frivilligt: det är ändringar andra gör i sin egen takt, och er mjukvara måste följa med.
Små regelbundna uppdateringar eller stora hopp
Att uppdatera en version i taget är rutin: läs ändringsnoterna, uppdatera, kör testerna, kontrollera de viktigaste sidorna, släpp. Att hoppa fyra huvudversioner på en gång innebär flera omgångar av genomgripande ändringar ovanpå varandra, beroenden som inte längre passar ihop och ibland ett ramverk som ersatts helt. Kostnaden växer inte linjärt; den gör språng.
- Varje månad: säkerhetsrättningar och mindre uppdateringar.
- Varje kvartal: genomgång av beroenden med nya huvudversioner, och en plan för dem.
- Varje år: körmiljö- och ramverksversioner mot datumen då stödet upphör, plus appbutikernas krav.
- Alltid: en säkerhetskopia och ett sätt att backa innan en uppdatering går live.
Budgetera för underhåll
Se underhållet som en löpande kostnad, som försäkring eller hosting, och bestäm det när projektet byggs. Ett fast månadsavtal gör kostnaden förutsägbar och gör någon ansvarig. Att sköta det vid behov kan fungera för en enkel sajt om någon verkligen gör det; risken är att det glöms bort tills något går sönder.
När ni inte behöver ett avtal: en statisk hemsida utan tillägg, formulär eller backend kan klara sig i månader utan tillsyn. För appar erbjuder vi appunderhåll och skalning; för hemsidor ett månatligt underhållspaket. Är ni osäkra på vad ert projekt behöver, boka ett kort samtal så går vi igenom beroendena tillsammans.
Vanliga frågor
Kan vi inte bara uppdatera när något går sönder?
Det går, men då uppdaterar ni under press, ofta flera versioner på en gång, och säkerhetsproblem märks inte genom att något går sönder. Regelbundna uppdateringar blir billigare totalt.
Hur ofta ska en hemsida uppdateras?
Säkerhetsrättningar så snart de publiceras, mindre uppdateringar varje månad och huvudversioner planerat några gånger om året. WordPress-sajter behöver tätare tillsyn än statiska sajter.
Varför behöver en app uppdateras om vi inte lägger till funktioner?
Apple och Google kräver att appar stöder nya systemversioner och SDK:er. Appar som halkar efter kan döljas för nya användare eller hindras från att publicera uppdateringar.
Vad kostar det att hoppa över underhållet i flera år?
Ofta en delvis eller fullständig ombyggnad, eftersom gapet blivit för stort att överbrygga med uppdateringar. Kostnaden beror på projektet, men den är oftast mycket högre än underhållet den ersatte.
Osäkra på hur långt efter er mjukvara ligger?
Ge oss åtkomst till kodförrådet eller berätta vad sajten körs på. På ett kort samtal säger vi hur föråldrad den är och vad det skulle krävas för att hålla den aktuell.
Boka ett kostnadsfritt 15-minuterssamtal