Deo zbornika Uvod u softversko inženjerstvo

Dokumentacija programa

Razvoj softvera ne svodi se samo na razvoj programa nego i na sastavljanje dokumenata koji prate te programe. Dokumentacija je sastavni i nezaobilazni dio onoga što softverski inženjeri proizvode.

Izradu dokumentacije dijelom je moguće automatizirati ili barem olakšati korištenjem softverskih alata.

Vrste dokumentacije

Dokumentacija programa sastoji se iz dva osnovna dijela:

  • tehnička (ili sistemska) dokumentacija namijenjena je softverskim inženjerima ili članovima razvojnog tima, opisuje zahtjeve, građu i funkcioniranje sistema, te olakšava sam razvoj softvera i njegovo kasnije održavanje.
  • korisnička dokumentacija namijenjena je korisnicima, omogućuje im da koriste program, i opisuje postupak korištenja programa i njegove funkcije na razumljiv način.

Tehnička dokumentacija

Tehnička dokumentacija se sastoji iz:

  • opisa problema
  • opisa modela i metode rješenja problema
  • dijagrama toka i listinga programa (ako je tako ugovoreno)
  • postupka instalacije programa
  • postupka eksploatacije programa
  • test primjera sa rezultatima

Primjeri dokumenata koji spadaju u sistemsku dokumentaciju:

  • Dokument o zahtjevima. Opisuje zahtjeve na sistem, dakle što sistem treba raditi i uz koja ograničenja.
  • Dizajn sistema (projektna dokumentacija). Nastaje kao rezultat oblikovanja sistema. Opisuje kako sistem treba biti građen, te kako treba raditi da bi obavio svoje funkcije.
  • Plan testiranja. Sadrži primjere test podataka i odgovarajućih očekivanih rezultata. Služi nakon bilo kakve promjene programa za provjeru da li je sačuvana dotadašnja funkcionalnost programa.
  • Izvorni kod programa, pisan u programskom jeziku i nadopunjen odgovarajućim komentarima. Nastaje kao rezultat implementacije sistema i na najizravniji način dokumentira sistem.

Korisnička dokumentacija

Korisnička dokumentacija opisuje čemu program služi, kako se zadaju ulazni podaci, kako se interpretiraju rezultati i slično. Primjeri dokumenata koji spadaju u korisničku dokumentaciju:

  • Opis funkcija. Namijenjen je osobama koje će odlučiti da li da se koristi taj sistem ili neki drugi. Daje se grubi opis što sistem može a što ne može raditi. Priloženi su primjeri, tabele i dijagrami. Ne objašnjavaju se operativni detalji.
  • Vodič za instalaciju. Namijenjen je sistem-administratoru ili korisniku. Opisuje instalaciju sistema na zadanoj vrsti računala. Sadrži opis distribucijskog medija, definiciju minimalne hardverske i softverske konfiguracije potrebne za pokretanje sistema, proceduru instaliranja i podešavanja.
  • Uvodni priručnik. Namijenjen je novim korisnicima. Daje neformalni uvod u sistem, te opisuje njegovu običnu upotrebu. Pisan je u formi tečaja, sadrži mnogo primjera, te uputa kako izbjeći uobičajene greške.
  • Referentni priručnik. Namijenjen je iskusnim korisnicima. U potpunosti, na vrlo precizan način dokumentira sve funkcije sistema, sve oblike njegove upotrebe, sve greške koje mogu nastupiti. Nije u formi tečaja. Stil je formalan, struktura je stroga. Snalaženje u tekstu osigurano je preko indeksa pojmova.
  • Priručnik za administraciju. Namijenjen je sistem-administratorima ili operatorima. Opisuje aktivnosti poput backup-a, upravljanja resursima, praćenja performansi, podešavanja rada, evidentiranja korisnika, postavljanja zaštite.

Literatura

  • N. Pavković, D. Marjanović, N. Bojčetić, Programiranje i algoritmi I, Zagreb, 2005.
  • Robert Manger, Softversko inženjerstvo (skripta), Zagreb, 2012.