Mis on dokumentatsioon?


Tarkvara arenduse elutsüklis on olemas erinevaid tegevusi, nende tegevuste tulemusel tekib hulk artifakte
mis dokumenteerib nendes tegevustes kas siis tehtavaid tegevusi või tehtud tegevusi ja nende tegijaid
Dokumentatsioon tekib peaaegu igas tarkvaraarenduse elutsükli etapis ja põhimõtteliselt igas tarkvara
arenduse elutsükli tüübis. Need artefaktid kokku moodustavadgi tarkvara dokumentatsiooni



Milliseid artefakte dokumentatsioonis esineda võib?


On olemas erinevaid tüüpe dokumentatsioone, aga tüpiliselt esinevad vähemalt järgnevad:



Mis need endast kujutavad, ning mis on nende eesmärk?


Süsteemi nõuete dokument

Kujutab endast erinevates arendustsüklites oleva analüüsietapi väljundit, kus pannakse paika
arendatava süsteemi erinevad nõuded koostöös lõppkasutajagan ning kliendiga. Arvestatakse mõlemi vajadusi
ning selgitatakse välja erinevad takistavad aspektid.


Dokumendi eesmärk on anda arendajale arhitektuurse disaini dokumendi loomise jaoks täpne sisend selle kohta,
mida üldse arendama peab, selle abil kirjeldatakse juba süsteemselt arendajale vajalik info.


Mida süsteemi nõuete dokument endas sisaldama peaks





Arhitektuurse disaini dokument


Kujutab endast arendatava toote või süsteemi ülesehitus. Kirjeldab ära ka selles süsteemis erinevaid
mooduleid, komponente ning muid sõltuvusi. Pannakse kirja ka kuidas need komponendid/moodulid omavahel suhtlevad
ning süsteem ise tervikuna süsteemiväliste elementidega (Muud liidesed/apid/platvormid/riistvarad/jne). Ära kirjeldatakse
ka arhitektuur keskkonnale kus ja kuidas valminud toode (Või süsteemi erinevad osad )hiljem olema peab(/peavad).


Dokumendi eesmärk on tekitada arendajaile struktuur mida nad arendama hakkavad, see struktuur tuletatakse tarkvara
nõuete dokumendist. Dokumendi kiistab süsteemiarhitakt


Mida arhitektuurse disainin dokument endas sisaldab


Muudatusete tegemine

Kui klient otsustab, et nüüd on vaja tarkvara dokumendis mingi nõue vaja ringi teha, siis tuleb vastavad muudatused sisse
viia ka arhitektuurse disaini dokumenti. Sellel eesmärgil on mõlemis dokumendis nõuete ja arhitektuurielemendi vahel ristviited
Kui on näiteks vaja sisselogimisfunktsiooni muuta, et nüüd klient tahab ka saada telefoninumbrit 2FA läbiviimiseks, siis on seal
nõude juures ka ristviide vastavale programi moodulile, mis haldab kasutaha sisselogomist. Sellele kasutajaajaloole lisatakse juurde
telefoninumbri küsimine ja juurdelisatud osa läheb arendusse uue inkremendina
Ning vastupidi, kui arhitektuuris tuleb välja, et telefoninumbri küsimine ei ole võimalik, siis on selles dokumendis vastav ristviide
Tarkvara nõudele, ja seal defineeritakse nõue ringi, et telefoninumbrit kohe küsida ei saa, tehakse uus nõue mis lubab kasjutajal
Selle telefoninumbri hiljem lisada


kasutajajuhend


On dokument mis aitab lõppkasutajal kasutada ning navigeerida valminud tootes. ta kirjeldab ära kuidas erinevaid tegevusi soovitada
milleks seda programmi üldse kasutada saab, kuidas lahendada korduma kippuvaid küsimusi ja muid võimalikke kasutaja tegevuse tagajärjel
tellinud veaolekuid. Kasutaja juhend on kirjutatud selle põhjal mis on kasutajale näha ning saadaval, aga mitte käsitledes programmi
siseseid detaile. Näiteks Monteerimisprogramm kirjeldab kasutajale kuidas muuta tööriist nähtavaks näiteks läbi "view > window" menüü, aga mitte
seda millist muutujat muuta vaja, et kuvada see aken koodis (bool isToolVisible = false;-> bool isToolVisible = true)


haldusjuhend


haldusjuhend on dokument mille koostavad arendajad mille koostavad arendajad mille koostavad arendajad toote kohta potensiaalselt mittetegevale isikule, aga
kes on kliendi palgal valminud süsteemi hooldamas. Dokument käsitleb:


Projektihaldusdokumentatsioon

On omakorda dokumendiartefaktide kogum, mis käsitleb projekti haldamisega seotud dokumente, sh ajakava planeerimist, arendusega
seotud ressursside planeermist arendustöö hetkejärkujm