Systemudvikling og systemer

Dokumentation er kommunikation

Slutmålet er ikke at udarbejde dokumentationen, men derimod at kommunikere indholdet til den næste udvikler, tester eller slutbruger, lyder det fra den agile ekspert Bent Jensen.

Den danske agile ekspert Bent Jensen fra BestBrains, der dagligt fungerer som coach og mentor på agile projekter i danske virksomheder, har en række gode råd om dokumentation og it-systemer. Helt i tråd med den agile tankegang skal man ikke bare slavisk producere en række dokumenter, bare fordi de er specificeret i en proces. For Bent Jensen handler den agile tilgang om at identificere, hvad den nødvendige dokumentation er.

Dokumentation er kommunikation

– Stil spørgsmål. Hvem skal læse det her, hvem er aftager? Kommuniker med de personer, der skal bruge dokumentationen. Find ud af, hvornår dokumentationen skal bruges, og hvor længe den skal leve. Skal dokumentationen bruges før, efter, eller mens vi udvikler? Spørg, hvilken information de har brug for, og find ud af, hvordan den information bedst kommunikeres til aftagerne, anbefaler Bent Jensen.

For Bent Jensen er slutmålet ikke at udarbejde dokumentationen,men derimod at kommunikere indholdet til den næste udvikler/tester/slutbruger. Det kan være i form af traditionelle dokumenter, men hvis en wiki eller en præsentation fungerer bedre for modtagerne, så bør man gøre det.

Nye udviklere

– Nye udviklere på et projekt klager som regel over, at der ikke er nok dokumentation. Det de egentlig mangler, er noget overblik og noget viden. Så vælger man, at svaret er dokumentation, men man kan jo i stedet stille spørgsmålet, hvordan de bedst får den viden. Troen på, at man kan have det hele stående i et dokument, er naiv og urealistisk, siger Bent Jensen.

Det kan eksempelvis være ved hjælp af sidemandsoplæring, hvor en udvikler med stor erfaring inden for et givent system, sidder sammen med en ny udvikler og gennemgår de overordnede systemelementer. Den erfarne udvikler kan så henvise til dokumenter for systemdetaljer, hvis det er nødvendigt. Hvis der er detaljer, som ikke er dokumenteret, bør den nye udvikler producere den manglende dokumentation.

– Det er en fordel at producere dokumentationen selv, da man ved, hvad man har brug for. Spørg de erfarne udviklere, hvordan systemet er bygget op og dokumenter det så, siger Bent Jensen.

Tilgængelig dokumentation

Dokumentationen skal være let tilgængelig, ellers vil den ikke blive brugt, påpeger Bent Jensen.

– Systemdiagrammer eller landkort over systemet er vigtige. De viser, hvad der foregår og hvor. Hvis man hænger dem op på væggene, så vil udviklerne forholde sig til dem og være opmærksomme på, hvis tingene ændrer sig i forhold til diagrammerne. Hvis de gemmes bort i et ringbind, er der ingen, der opdager, at de er out-of-date, siger han.

Google-tid til dokumentation

Det er en gammel sandhed i it-branchen, at udviklere ikke kan lide at skrive dokumentation, men det passer ikke helt. Når udviklerne selv erkender, at dokumentationen halter lidt, så er det noget, som de ønsker at bruge tid på. Bent Jensen anbefaler, at 10-20 procent af tiden i et projekt afsættes til projektdeltagernes egne ideer, og Bent Jensen har oplevet, at den tid nogle gange bliver brugt på at gøre noget ved dokumentationen.

– Det er ikke sjovt at skrive Word-dokumenter, men wikier med information fra en udvikler til en anden er noget, som de fleste udviklere gerne vil skrive, forklarer Bent Jensen.

Dokumentation del af sprint

Ideelt set bør udarbejdelse af dokumentation være en del af et sprint, men, ligesom dokumentationen nogle gange blev udskudt i vandfaldsmodellen, så kan det også ske i et sprint.

– Man skal være realistisk og planlægge med dokumentation, ligesom man planlægger med automatiske tests og andre aktiviteter, men er der travlt, kan man vælge at udskyde det, siger Bent Jensen.

Fordelen med et sprint af to ugers varighed er, at man hurtigere erkender, at der mangler noget dokumentation, og det kan så planlægges med i det følgende sprint.