Tilbage til blog

Derfor går 70% af softwareprojekter galt (og sådan undgår du det)

Max Omika 12 min læsetid

Syv ud af ti softwareprojekter fejler.

Ikke kun hobbyisternes projekter. Ikke kun startups med tomme kasser. Alle slags projekter. Også dem med erfarne teams og store budgetter.

Fiasko ser forskellig ud. Nogle projekter eksploderer offentligt. De fleste dør stille. De bliver forsinket. De sprænger budgettet. De lancerer uden de vigtigste funktioner. Eller de bliver færdige, men ingen bruger dem – fordi de løser det forkerte problem.

Det interessante er ikke tallet. Det er årsagen. For det er næsten aldrig teknologien der svigter.

Når to mennesker tror de forstår hinanden

Forestil dig et møde. På den ene side af bordet sidder dig – virksomhedsejeren med en idé til software. På den anden side sidder udvikleren. I taler begge dansk. I er begge kloge. I går begge fra mødet med en god fornemmelse.

I har bare misforstået hinanden fuldstændigt.

Du sagde: "Jeg vil spare tid på fakturering."

I dit hoved ser du de konkrete problemer: tastefejl når du kopierer tal, timer brugt på at jage betalinger, frustration over systemer der ikke snakker sammen. Løsningen er krystalklar for dig.

Udvikleren hører ordene, men har ingen kontekst. "Spare tid på fakturering" kan betyde hundrede forskellige ting teknisk. Så de nikker, fylder hullerne ud med egne antagelser, og begynder at kode.

Tre måneder senere ser du resultatet. Systemet virker fint. Det løser bare ikke dit problem. Eller det løser det på en måde, der slet ikke passer til din arbejdsgang.

Ifølge PMI kan 56% af fejlede projekter spores tilbage til kommunikationsproblemer. Ikke bugs. Ikke manglende budget. Kommunikation.

Der er kun én løsning: Tvinge begge parter til at tale samme sprog. En ordentlig kravspecifikation skaber fælles forståelse. Den gør antagelser synlige. Den forvandler "systemet skal være nemt at bruge" til noget konkret, som faktisk kan bygges og testes.

Features der bare bliver ved med at komme

Alle projekter starter overskueligt. "Bare en simpel app til at holde styr på vaner." Rent. Fokuseret. Realistisk.

Så sker virkeligheden.

Én nævner at konkurrenterne har social deling. En anden har læst om gamification. Kunden får en idé i weekenden. Hver tilføjelse virker lille. Fornuftig, endda.

Seks måneder senere er den simple vane-app blevet en social platform med badges, AI-anbefalinger, integration med tolv fitness-trackere og en markedsplads for wellness-coaches. Teamet er ved at drukne. Pengene er brugt. Version 1 er stadig ikke ude.

De fleste projekter oplever det i større eller mindre grad. Mønsteret er forudsigeligt: Små tilføjelser hober sig op, indtil budgettet er brugt og tidsplanen er fordoblet.

Det føles ikke farligt, mens det sker. Hver lille tilføjelse giver mening. Problemet vokser langsomt – og når nogen opdager det, er skaden sket.

Modgiften er klare grænser fra starten. En kravspecifikation med tydelig prioritering. Det der er Must have, er låst. Alt andet kræver en formel ændring – med opdateret budget og tidslinje. Det føles bureaukratisk. Det redder projekter.

Når du bygger til dig selv i stedet for brugerne

En produktchef er overbevist om, at brugerne vil elske at dele træningsdata på sociale medier. Det giver total mening i deres hoved. Så de putter det i specifikationen, teamet bygger det, og det lanceres.

2% af brugerne rører det nogensinde.

CB Insights analyserede 101 fejlede startups. Årsag nummer ét – nævnt i 42% af obduktionerne – var at der ikke var noget reelt behov. De byggede noget, ingen ville have.

Det sker, fordi antagelser føles som fakta. Når du har forestillet dig et brugerscenarie tydeligt nok, virker det oplagt sandt. At teste det føles unødvendigt. Eller risikabelt. Eller for tidskrævende.

Modgiften: Start småt. Lancér hurtigt. Se hvad brugerne faktisk gør – ikke hvad du troede de ville gøre. Byg videre baseret på virkelighed, ikke gætterier.

Det kræver, at du accepterer, at du måske tager fejl. Det er ubehageligt. Men det er den eneste måde at undgå at bruge måneder på funktioner, der aldrig bliver brugt.

Billigt bliver dyrt

Tre tilbud på samme projekt: 60.000 kr., 180.000 kr., 375.000 kr.

Det billigste virker oplagt. Samme resultat, lavere pris. Hvorfor betale mere?

Seks måneder senere har det billige projekt kostet 225.000 kr. i ekstra arbejde. Koden er kaotisk. Dokumentation findes ikke. Den oprindelige udvikler svarer ikke længere på mails. Og systemet virker stadig ikke ordentligt.

Det mellemste tilbud ville have givet ren kode, dokumentation, automatiserede tests og en fornuftig overdragelse. Men det kan man først se bagefter.

Prisforskelle afspejler reelle forskelle. Billigere tilbud betyder typisk færre timer. Det giver enten færre funktioner eller dårligere kvalitet. Måske genbrugt kode fra andre projekter, tvunget ind i dine behov. Måske ingen tests, ingen dokumentation, ingen gennemtænkt arkitektur.

Projekter der vælger primært på pris ender ofte med at bruge mere i det lange løb. Besparelserne bliver spist af fejlrettelser, lappeløsninger og til sidst omskrivninger.

Løsningen: Forstå hvad du betaler for. Bed om at se tidligere arbejde. Spørg ind til dokumentation og test. Tal med tidligere kunder. Billig udvikling + dyr vedligeholdelse = den dyreste løsning af alle.

Det du ikke ser på fakturaen

Når et softwareprojekt fejler, er udviklingsomkostningerne kun toppen af isbjerget.

Under overfladen ligger:

Et fejlet projekt til 225.000 kr. koster i virkeligheden 550.000-1.100.000 kr. når alt regnes med. De fleste organisationer opgør aldrig de tal. De sluger tabet og går videre – lidt mere tilbageholdende med at innovere næste gang.

Hvad de succesfulde gør anderledes

De 30% der lykkes er ikke klogere eller rigere. De er mere disciplinerede.

De investerer i planlægning. 10-15% af budgettet går til kravspecifikation, før nogen skriver en linje kode. Det føles som spild af tid. Det er den hurtigste vej til målet.

De starter småt. I stedet for at bygge alt identificerer de det minimale produkt og lancerer dét først. Rigtige brugere giver rigtig feedback. Antagelser bliver testet. Fase to bygger på viden, ikke gætterier.

De kommunikerer hele tiden. Ugentlige statusmøder. Demo hver anden uge. Alt skrevet ned. Én sandhedskilde alle kan finde.

De accepterer usikkerhed. Selv den bedste plan skal justeres, når ny viden dukker op. Succesfulde projekter er fleksible nok til at tilpasse sig – i stedet for stift at følge en plan lavet, da man vidste mindst.

De vælger partnere med omhu. Ikke den billigste. Den der forstår problemet og har løst lignende før.

Test dig selv

Svar ærligt:

0-2 ja: Stop med at bygge. Gør grundarbejdet først. Din nuværende kurs fører mod fiasko.

3-4 ja: Du er bedre end de fleste, men der er huller. Fix dem nu, før de bliver dyre.

5-6 ja: Du er godt forberedt. Hold fast i disciplinen hele vejen.

Det hele starter med klarhed

Hvert fiasko-mønster kan spores tilbage til samme sted: manglende klarhed fra starten.

Når krav kun findes i nogens hoved, bryder kommunikationen sammen. Når omfanget ikke er skrevet ned, sniger nye funktioner sig ind. Når antagelser ikke er gjort tydelige, bliver de aldrig testet. Når du ikke ved hvad kvalitet koster, bliver pris det eneste du kan vælge efter.

Klarhed er ikke bare rart at have. Det er fundamentet. Alt andet bygger på det.

Derfor findes Max. På 30 minutter hjælper en guidet samtale dig med at formulere din vision, definere dine brugere, beskrive hvad de skal kunne, og prioritere hvad der betyder mest. Resultatet er en professionel kravspecifikation – det fælles sprog som succesfulde projekter bygger på.

Prøv Max og giv dit projekt det fundament, det fortjener.