Målet med dokumentationen


Prototypen ingår i dokumentationen

Dokumentationen består av två delar:

  1. En prototyp som består av en första version av programmet under utveckling. Den ska innehålla tillräckligt mycket kod för att förklara arkitekturen/designen. Observera att det ska vara kod av produktionskvalitet. Den ska vara testad, kommenterad, strukturerad osv på det sätt som det färdiga programmet ska vara.
  2. En skriven dokumentation (kallas ofta arkitekturdokument) som förklarar arkitektur/design. De följande sidorna förklarar vad den ska innehålla.

Dokumentationen måste vara klar och tydlig


Vad kan arkitekturdokumentet innehålla?


Avsnittet Funktionalitet


Avsnittet Logisk uppdelning


Avsnittet Säkerhet


Avsnittet Datalagring


Avsnittet Fysisk uppdelning


Avsnittet Implementation


Avsnittet Problem


Exempel på ett arkitekturdokument


Vanliga misstag

Inga eller irrelevanta bilder

Kanske började vi med att skriva texten och orkade sedan inte rita bilder. En variant på att då strunta helt i bilder är att leta upp några färdiga på webben. Dessa har förmodligen ganska lite med texten att göra, i alla fall förtydligar de den inte. Sådana bilder är sämre än inga alls eftersom läsaren måste ägna tid åt att fundera på vad de betyder.

För många och/eller för omfattande UML-diagram

Detta blir lätt fallet om vi låter ett UML-verktyg automatgenerera diagrammen. Gör vi det kommer det ofelbart med irrelevanta detaljer. Diagrammen blir också alldeles för stora. UML-diagram är mycket bra för att förtydliga texten men de måste ritas med lite eftertanke. Det viktiga är vad vi vill att ett diagram ska visa och om det verkligen visar just det. Automatgenererade diagram är aldrig bra om det inte editeras för hand.

Ingen eller väldigt lite text

Så blir det lätt om vi börjar med att rita avancerade UML-modeller och sedan inte orkar förklara dem.


Vanliga misstag, forts

Automatgenererade UML-diagram

Se avsnittet "För många och/eller för omfattande UML-diagram" ovan.

Inga bilder på användargränssnittet

Sådana är till stor hjälp när det handlar om att förklara programmets funktionalitet. Överallt där det finns text som talar om vad användaren gör med programmet bör det finnas bilder den vy användaren ser.

Inga kodutdrag

Inbland är det bättre att förtydliga texten med källkod än med UML. Det gäller främst när texten handlar om något som är svårt att programmera, inte när det handlar om att förklara programmets struktur. Om det är en komplicerad design kan det dock vara bra att både rita ett UML-diagram och ta med en kodsnutt.


Vanliga misstag, forts

Inga interaktionsdiagram

De flesta (inklusive mig) tycker det är jobbigare att rita interaktionsdiagram än att rita klassdiagram. Interaktionsdiagram är dock viktiga eftersom de oftast förklarar bättre än klassdiagram. Finns det inga eller få interaktionsdiagram i arkitekturdokumentet är det stor risk att vi ritat klassdiagram av ren slöhet.

Irrelevant information

Det är bara alltför vanligt att arkitekturdokumentation innehåller irrelevant information. Det beror ofta på att författaren följt en färdig mall och tagit med för mycket ur den. Mallar är ofta på tok för omfattande. Den överflödiga texten beskriver ofta läsare, författare, företag, projektgrupper och liknande. Gärna finns dessutom ungefär samma information på flera ställen i dokumentet.


Dokumentation ersätter inte kommunikation