Specifikáció
A programfejlesztésben a specifikáció valamilyen programmal, programrésszel, vagy szolgáltatással szemben támasztott követelmények leírása. A specifikáció jellemzően a programfejlesztés korai szakaszában készül el, alapot szolgáltatva egyrészt a megbízóval történő egyeztetéshez, másrészt a megvalósítás fő irányainak kialakításához.
Felépítés[szerkesztés]
Egy program specifikációjában jellemzően az alábbiak szerepel(het)nek:
- Milyen feladatot kell egy programnak elvégeznie
- Milyen bemeneti adatokkal dolgozik a program
- Milyen kimeneti adatokat szolgáltat a program
Grafikus felületű programok esetén:
- Milyen elemeket (ablakokat, paneleket) lát a felhasználó
- Milyen kapcsolatban vannak a felületi elemek, honnan hová lehet továbblépni
- Milyen események fordulhatnak elő az egyes helyzetekben, milyen választ ad rájuk a program
- Egyéb (pl. design, időbeli, erőforrás-használati) elvárások
Programkönyvtár esetén:
- A könyvtár által használt adattípusok leírása
- A könyvtár által nyújtott szolgáltatások (függvények) leírása
- Egyéb (pl. architektúra, erőforrás-használati) megkötések
Függvények esetén:
- A függvény argumentumainak leírása
- A függvény eredményének meghatározása
- Az eredmény meghatározásának módja
- Elő- és utófeltételek
- Egyéb (pl. futásidő, erőforrás-használati) megkötések
Jellemzők[szerkesztés]
Általános elvárás a specifikáció irányában, hogy lehetőleg mind felhasználói, mind programfejlesztői szempontból pontos, értelmes, és minél teljesebb legyen. Bizonyos esetekben a specifikáció, vagy annak egyes részei valamilyen formális nyelven (is) készülnek, elősegítve az egyértelmű megfogalmazást.
Gyakorlatban főleg a kisebb, vagy gyorsan változó projektek esetén a pontos specifikáció idő- és költségigénye aránytalanul nagy lehet a megvalósítás összes költségéhez mérten. Ilyen esetekben annak elkészítése és használata háttérbe szorul. Egyes módszertanok akár teljesen el is hagyhatják ezt a lépést.
Általában a specifikáció megléte sokat segíthet a megbízóval történő egyeztetésben. Ha a leírás formája kezelhető és átlátható, a felmerülő újabb igények a specifikáció változatása után pontosabban, ellenőrizhető formában kerülhetnek megvalósításra.