Mjukvarugranskning: vad en kodgranskning visar
Om din affärsapplikation är flera år gammal har du sannolikt en fråga: lönar det sig att vidareutveckla den, eller är det dags att bygga något nytt? Kring den frågan fattas ofta beslut för tiotusentals euro utan att någon har tittat in i koden.
En mjukvarugranskning är det som borde komma före beslutet. Det är inte utveckling eller rättningar, utan en oberoende genomgång av vilket skick applikationen är i och vad som är rimligt att göra med den.
När en granskning behövs
- Utvecklaren eller byrån har lämnat och ingen vet riktigt hur systemet fungerar. Den situationen tar jag upp mer utförligt i artikeln utvecklaren försvann – vad händer med systemet nu?
- Det har blivit långsamt och dyrt att lägga till nya funktioner.
- Du har en offert på att skriva om applikationen och vill veta om det verkligen behövs.
- Ramverket eller servern saknar support och säkerhetsuppdateringarna har upphört.
- Du planerar att sälja applikationen, visa den för en investerare eller lämna över den till ett nytt team.
Vad granskningen innehåller
1. Genomgång av kod och komponenter. Vad applikationen består av: programmeringsspråk, ramverk och deras versioner, databas, externa bibliotek och tjänster. Vilka av dem som är föråldrade, vilka som saknar support och vilka som har kända säkerhetshål.
2. Kartläggning av säkerhetsrisker. Behörigheter, hur lösenord lagras, föråldrade beroenden, serverns konfiguration. Säkerhetsproblemen hamnar först på listan, eftersom de inte kan vänta.
3. Kartläggning av teknisk skuld. Var det finns kopierad kod, saknade tester, odokumenterad logik och ställen som ingen vågar röra. Vad det är och varför det kostar har jag skrivit om i artikeln teknisk skuld.
4. Infrastruktur. Var applikationen körs, om säkerhetskopior tas och om de någonsin har återställts. Ofta visar det sig att serverns konfiguration är lika odokumenterad som koden.
5. En stegvis plan. Vad som görs direkt, vad under det kommande halvåret och vad som kan vänta. Varje steg har en effekt, en risk och en uppskattad arbetsinsats.
6. En ärlig bedömning. Modernisera eller bygga om. Är det befintliga systemet så gammalt att det blir billigare att bygga från grunden säger jag det rakt ut.
Vad granskningen inte är
Granskningen är inget utvecklingsarbete. Under den ändras varken kod eller server, jag bara tittar och skriver ner. Det är ett medvetet val: bedömningen ska vara oberoende av vem som senare gör jobbet. Med planen kan du gå till vilken utvecklare som helst.
Granskningen är inte heller en formell säkerhetsrevision för en certifiering. Behöver du uppfylla en viss standard är det ett separat arbete.
Vad du behöver före granskningen
- Åtkomst till kodförrådet (GitHub, GitLab eller annat) eller en kopia av koden.
- Åtkomst till servern eller webbhotellet där applikationen körs, åtminstone med läsrättigheter.
- En kort beskrivning av vad applikationen gör och vem som använder den.
- Om det finns: gammal dokumentation, en fellista, tidigare offerter.
Saknas en del av åtkomsterna är det redan det första fyndet. Under granskningen hjälper jag till att reda ut hur du får tillbaka dem.
Vad granskningen kostar
En granskning av applikationen med en moderniseringsplan börjar på 390 euro. Det exakta priset beror på applikationens storlek och på hur många separata system som hänger ihop. Efter granskningen kan moderniseringen göras i etapper, och priset för varje etapp är känt innan arbetet börjar. Paketen finns på prissidan.
Sammanfattning
Granskningen är det billigaste steget du kan ta med en gammal applikation. Den besvarar frågan ”modernisera eller bygga om” utifrån fakta, inte magkänsla, och ger dig en plan att gå vidare med.
Se hur jag arbetar med modernisering och vidareutveckling av mjukvara, eller beställ en granskning. Beskriv med ett par meningar vilken applikation det gäller.
