Gyakorlati alapok II.

A szoftverfejlesztés

 

Dokumentáció

 

Az elvárt és javasolt dokumentáció készítése természetszerűleg függ a programprojekt nagyságától és résztvevőinek, valamint megrendelőinek-résztvevőinek számától. Kis programok esetében, főleg ha magunk számára készítjük, teljesen felesleges, de abban a pillanatban, hogy már más is becsatlakozik, egyértelműen előnyös lehet.

 

Egyszer például megkértem egyik programozó ismerősömet, hogy készítsen nekem egy kisebb programot egy általam ismeretlen  programnyelven. Bizony le kellett ülnöm és a pontos működés érdekében igen aprólékos specifikációt kellett írnom részére, másként nem tudta volna a programot az én elvárásaim szerint lekódolni.

 

Az igazat megvallva, a programozók nem szeretnek dokumentációt készíteni. Ezt a kényszert az Eclipse például úgy igyekszik "megkerülni", hogy automatizált lehetőség nyílik dokumentációs kommentek, megjegyzések készítésére és ilyen jellegű állomány generálására (erről bővebbet a Kommentelés című fejezetben olvashatunk). Ez persze sajnos nem jelenti azt, hogy megkerülhetjük a dokumentáció készítését, hiszen az nagyobb projektek esetében kötelező és a program fejlődését folyamatosan kísérő elvárás.

 

Kétféle dokumentációról beszélhetünk:

Fejlesztési dokumentáció

Nyilvánvalóan a fejlesztési dokumentáció elsöprő mértékben szakmai információkat tartalmaz. Elemei:

Felhasználói dokumentáció

Míg a fejlesztési dokumentáció nem tartozik a felhasználóra, annál inkább a felhasználót segítő, irányító, a felhasználóval zajló kommunikációt menedzselő dokumentumok összessége. (Az utóbbi kissé érthetetlen, de ilyen lehet például a hibaüzenetek jegyzéke.) A felhasználói dokumentálás a programon belül egy másik világ, gondoljunk csak a Windows help-fájljaira. A korrekten megalkotott program rengeteg ilyen jellegű állományt tartalmaz és egyetlen közös célja a felhasználó minél magasabb szintű támogatása. Ezenfelül ide tartoznak még:

Csakis üzleti megállapodás kérdése, hogy a fentieket ne támogassa még 1-2 kirendelt szakember, akinek szakmai támogatása segíti a szoftver bevezetését, betanítását vagy éppen folyamatos karbantartását. Az utóbbira főként a banki szektorban látunk rengeteg példát.