Mi a funkcionális követelmény a szoftverfejlesztésben?

Mi a funkcionális követelmény?

A Funkcionális követelmény (FR) annak a szolgáltatásnak a leírása, amelyet a szoftvernek kínálnia kell. Leír egy szoftverrendszert vagy annak összetevőit. A függvény nem más, mint a szoftverrendszer bemenetei, viselkedése és kimenetei. Ez lehet számítás, adatkezelés, üzleti folyamat, felhasználói interakció, vagy bármely más olyan specifikus funkcionalitás, amely meghatározza, hogy a rendszer milyen funkciót lát el. A szoftverfejlesztés funkcionális követelményeit is nevezik Funkcionális specifikáció.

A szoftverfejlesztésben és a rendszertervezésben a funkcionális követelmény a küldő szükségességének magas szintű absztrakt megállapításától a részletes matematikai funkcionális követelmény-specifikációig terjedhet. Funkcionális szoftver követelmények segítenek megragadni a rendszer tervezett viselkedését.

Mit kell tartalmaznia a funkcionális követelményekről szóló dokumentumnak?

A funkcionális követelmények dokumentumának megírása a következőképpen történik:

Példa funkcionális követelményekre
Példa funkcionális követelményekre

A rendszer funkcionális követelményeinek tartalmazniuk kell a következőket:

  • Minden képernyőn végrehajtott műveletek részletei
  • Az adatkezelési logikát be kell vinni a rendszerbe
  • Tartalmaznia kell a rendszerjelentések vagy egyéb kimenetek leírását
  • Teljes információ a rendszer által végrehajtott munkafolyamatokról
  • Egyértelműen meg kell határoznia, hogy ki hozhatja létre/módosíthatja/törölheti az adatokat a rendszerben
  • A funkcionális dokumentumban rögzíteni kell, hogy a rendszer hogyan teljesíti a vonatkozó szabályozási és megfelelési igényeket

A funkcionális követelmények előnyei

Íme egy tipikus funkcionális követelménydokumentum létrehozásának előnyei/előnyei:

  • Segít ellenőrizni, hogy az alkalmazás biztosítja-e az alkalmazás funkcionális követelményeiben említett összes funkciót
  • A funkcionális követelménydokumentum segít meghatározni egy rendszer vagy annak egyik alrendszere funkcionalitását.
  • A funkcionális követelmények a követelményelemzéssel együtt segítenek azonosítani a hiányzó követelményeket. Segítenek egyértelműen meghatározni a rendszer elvárt szolgáltatását és viselkedését.
  • A Funkcionális követelmények összegyűjtése szakaszban észlelt hibákat a legolcsóbb kijavítani.
  • Támogassa a felhasználói célokat, feladatokat vagy tevékenységeket

A funkcionális követelmények típusai

Íme a leggyakoribb funkcionális követelménytípusok:

  • Tranzakciókezelés
  • Üzleti szabályok
  • A minősítési követelmények
  • Jelentési követelmények
  • Adminisztratív funkciók
  • Engedélyezési szintek
  • Audit nyomon követése
  • Külső interfészek
  • Történelmi adatkezelés
  • Jogi és szabályozási követelmények

Példa a funkcionális követelményekre

Az alábbiakban bemutatjuk a népszerű funkcionális követelmények példáit:

  • A szoftver automatikusan ellenőrzi az ügyfeleket az ABC kapcsolatkezelő rendszerrel szemben
  • Az értékesítési rendszernek lehetővé kell tennie a felhasználók számára az ügyfelek eladásainak rögzítését
  • Az alkalmazás összes ablakának háttérszíne kék lesz, és hexadecimális RGB színértéke 0x0000FF.
  • Csak a vezetői szintű alkalmazottak jogosultak a bevételi adatok megtekintésére.
  • A szoftverrendszert integrálni kell a banki API-val
  • A szoftverrendszernek át kell mennie Szakasz 508 akadálymentesítési követelmény.

Nem funkcionális vs. funkcionális követelmények

Itt vannak a legfontosabb különbségek a funkcionális és a nem funkcionális követelmények között Szoftverfejlesztés:

paraméterek Funkcionális követelmény Nem funkcionális követelmény
Ami Ige Attribútumok
Követelmény Ez kötelező Ez nem kötelező
Rögzítés típusa Használati esetben rögzítve van. Minőségi attribútumként van rögzítve.
Végeredmény Termékjellemző A termék tulajdonságai
Rögzítése Könnyen rögzíthető Nehéz elfogni
Objektív Segít ellenőrizni a szoftver működőképességét. Segít ellenőrizni a szoftver teljesítményét.
Fókuszterület Fókuszáljon a felhasználói igényekre A felhasználó elvárásaira koncentrál.
Dokumentáció Írja le, mit csinál a termék Leírja a termék működését
A tesztelés típusa Funkcionális tesztelés, például rendszer, integráció, végpontokig, API tesztelésStb Nem funkcionális tesztelés, mint a teljesítmény, a stressz, a használhatóság, Biztonsági tesztelésStb
Teszt végrehajtása A teszt végrehajtása a nem funkcionális tesztelés előtt történik. A funkcionális tesztelés után
Termék Info Termék jellemzők Termék tulajdonságai

A funkcionális követelmények bevált gyakorlata

A funkcionális követelménydokumentum kidolgozásának fontos bevált gyakorlata a következő:

  • Ne kapcsoljon össze két követelményt egyben. Tartsa szem előtt a követelményeket.
  • Minden követelményt a lehető legteljesebbre és pontosabbá kell tennie.
  • A dokumentumnak tartalmaznia kell az összes műszaki követelményt.
  • Az összes követelményt leképezheti a célokkal és elvekkel, amelyek hozzájárulnak a sikeres szoftverszállításhoz
  • Állítsa be a követelményeket interjúk, workshopok és alkalmi kommunikáció segítségével.
  • Ha van olyan ismert, ellenőrzött korlátozás, amely lényegesen befolyásol egy követelményt, akkor ez egy kritikus állapot, amelyet dokumentálni kell.
  • Szükséges, hogy az összes feltételezést dokumentálja a dokumentumban.

Hibák a funkcionális követelmény létrehozása során

Íme néhány gyakori hiba, amelyet a függvénykövetelmény-dokumentum létrehozásakor követnek el:

  • Indokolatlan extra információk megadása, amelyek megzavarhatják a fejlesztőket
  • A követelménydokumentumban nem szerepel kellő részletezés.
  • Szabályokat vagy példákat, hatóköri nyilatkozatokat vagy célokat adhat hozzá, kivéve magát a követelményt.
  • Kihagyott egy fontos információt, amely feltétlenül szükséges a követelmény teljes, pontos és végleges megfogalmazásához.
  • Egyes szakemberek a követelmény módosításakor kezdik megvédeni az általuk dokumentált követelményeket, ahelyett, hogy megtalálnák a helyes igazságot.
  • Olyan követelmények, amelyek nincsenek leképezve egy célhoz vagy elvhez.

KULCSÚ TANULÁSOK

  • Magyarázza el a szoftverfejlesztés funkcionális követelményeit: A Funkcionális követelmények határozzák meg a rendszert vagy annak összetevőit
  • A Funkcionális Követelmények Dokumentumnak tartalmaznia kell az adatkezelési logikát és a rendszer által végzett munkafolyamatokról teljes körű információkat.
  • A funkcionális követelmények a követelményelemzéssel együtt segítenek azonosítani a hiányzó követelményeket
  • Tranzakciójavítások, módosítások és törlések, Üzletszabályzat, Tanúsítási Követelmények, Jelentési követelmények, Adminisztrációs funkciók, Engedélyezési szintek, Ellenőrzési követés, Külső interfészek, Történeti adatok kezelése, Jogi vagy szabályozási követelmények különböző típusú funkcionális követelmények
  • Jó gyakorlat szerint ne vonjon össze két követelményt egyben. Tartsa szem előtt a követelményeket.
  • A funkcionális követelménydokumentumban kerülni kell a fejlesztőket megzavaró, indokolatlan többletinformációk megadását. Ha meg szeretné érteni, hogy ezek a követelmények hogyan csapódnak le a tényleges tesztelési eljárásokba, érdemes áttekinteni ezt az útmutatót funkcionális tesztelés.