Funkcionális specifikáció sablon

Mi az a funkcionális specifikáció?

A funkcionális specifikáció egy olyan fejlesztési dokumentum, amit a megrendelő (ügyfél) készít, és aminek a célja, hogy egyértelműen leírja a termék (fejlesztendő szoftver/rendszer) elvárt működését és követelményeit. A funkcionális specifikáció nem egy technológiai dokumentáció (nem tér ki a funkciók megvalósításának mikéntjére), ehelyett a rendszert a felhasználó szemszögéből ismerteti, tulajdonságokat ír le.

Fő kérdése: Mit tud, mit nyújt az applikáció?

Menüket, képernyőket, dialógusablakokat határoz meg. A funkcionális specifikáció az applikáció „kívülről” látható és érzékelhető leírását adja a rendszernek. A specifikáció akkor jó, ha minden érintett (megrendelő, projektvezető, fejlesztők, stb.) számára érthető és használható. Arra fókuszál, hogy a külső entitások (felhasználók, perifériák, más gépek) hogyan lépnek interakcióba a rendszerrel, mit „látnak” az interakció során. Tehát az a funkcionális specifikáció fő feladata, hogy leírja ezen lehetséges interakciók (használati esetek) halmazát.

Példa egy funkció leírására: Ha a felhasználó megnyomja az „OK”gombot, akkor a párbeszédablak bezárul, és a főoldalra jut.

Komplex rendszerek esetében több (szintű) funkcionális specifikáció létezhet a részletességnek megfelelően, pl.: rendszer-, modul- és objektumszintű specifikáció.

Miért van szükség funkcionális specifikációra?

A funkcionális specifikáció gyakorlatilag a fejlesztendő applikáció első, szöveges tervrajza (amit sokszor ábrák támogatnak). Jelentősen megkönnyíti a kommunikációt az ügyféllel (és minden egyéb érdekelttel). Specifikáció nélkül a fejlesztők számára lehetetlen a feladat pontos feltérképezése. A Specifikáció hiánya ellehetetleníti a pontos ütemezést. A funkcionális specifikáció elkészítésének kihagyása a legnagyobb (ráadásul szükségtelen) kockázatvállalás az egész projektet figyelembe véve. Fontos a specifikáció naprakészsége, új igények, döntések, környezeti változások esetén frissíteni kell a dokumentációt is.

Egy tipikus funkcionális specifikáció felépítése:

// Áttekintés

Az alkalmazás néhány soros bemutatása: az alkalmazás célja, fő funkciói, célközönsége. Ezen kívül szót lehet még ejteni itt a termék környezetéről, a korlátozásokról és a követelmények csoportosításának szempontjairól.

// A rendszer funkciói

A funkciók kifejtése előtt szót lehet arról ejteni, hogy milyen platformokra, oprendszer verziókra és milyen eszközökre tervezik megvalósítani az alkalmazást (esetleg ezek priorizálása is tanácsos).

  • Kliensoldal (a felhasználó készülékén futó alkalmazás funkciói)
    • Követelmény1
    • Követelmény2
    • Követelmény n
  • Szerveroldal
    • Követelmény1
    • Követelmény2
    • Követelmény n
// Nem funkcionális követelmények

A nem-funkcionális követelmények nem a rendszer szolgáltatásait írják le, hanem a rendszer által nyújtott szolgáltatásokra tett megszorításokat jelentik, a rendszer egészének a minőségét határozzák meg. Pl.: használhatóság, teljesítmény, megbízhatóság, stb.

// Interfészek

Ebben a fejezetben lehet specifikálni a rendszer valamennyi külső kapcsolatát, az ezt biztosító interfészeket.

Felhasználói interfész (GUI) terv – ahogy az alkalmazás „kinéz” majd (lehet vázlatos is, részben ez alapján készülnek majd a részletes képernyőtervek)

Ha szükséges, egyéb interfészek (hardver, szoftver, kommunikációs) leírása

// Az alkalmazás működésének áttekintése
  • Kliensoldal
  • Szerveroldal
// Dizájn terv

Vázlatos reprezentálása az alkalmazás vizuális megjelenítésének (lásd Wireframe sablonunkat.) A hangsúlynak a fejlesztés ezen szakaszában nem a színeken vagy tipográfián kell lennie, hanem sokkal inkább az oldalak elrendezésén, a navigáción, a gombok és menük elhelyezésén.

//  letölthető sablonok