Analýza požiadaviek softvérového riešenia je rozhodujúcim faktorom pre úspech alebo naopak zlyhanie systému vo firme. Požiadavky by preto mali byť detailne zdokumentované, použiteľné, merateľné, atomické, testovateľné, jednoznačne identifikovateľné a mali by byť definované na úrovni podrobností dostatočných na návrh systému.
Analýza požiadaviek koncepčne zahŕňa 4 typy činností, ktorými sú:
Špecifikácia požiadaviek na softvér
Po obsahovej stránke sa systémové požiadavky kategorizujú ako funkcionálne a nefunkcionálne požiadavky. Pochopenie rozdielu medzi nimi znamená vedieť, na čo slúžia, pričom zaisťujú, že vývojári dodajú produkt, ktorý bude fungovať podľa očakávania zákazníka. Pre niekoho môže byť ťažké rozdiel pochopiť, preto sa ho pokúsime bližšie definovať:
Funkcionálne požiadavky:
1. Vysvetľujú funkcie, ktoré sa od systému očakávajú.
2. Pomáhajú pochopiť funkcie systému.
3. Identifikujú, čo systém musí alebo nesmie robiť.
4. Umožňujú systému fungovať, aj keď nie sú splnené nefunkcionálne požiadavky.
5. Zabezpečujú, že systém bude spĺňať požiadavky používateľov.
6. Sú nevyhnutné pre fungovanie systému.
7. Splnenie týchto požiadaviek je povinné.
8. Zvyčajne sú definované používateľom.
9. Dajú sa zdokumentovať a pochopiť pomocou prípadu použitia.
V skratke popisujú, ako sa má systém správať, čo má robiť a ako má reagovať na konkrétne situácie. Príkladom môže byť upozornenie e-mailom na zmenu hesla alebo schopnosť systému monitorovať správne spracované transakcie a pod.
Nefunkcionálne požiadavky:
1. Vysvetľujú vlastnosti produktu.
2. Pomáhajú pochopiť výkon systému.
3. Identifikujú, ako to má systém urobiť.
4. Systém nebude fungovať len s nefunkcionálnymi požiadavkami.
5. Zabezpečujú, že systém bude spĺňať očakávania používateľov.
6. Sú žiadúce, ale nie vždy nevyhnutné.
7. Splnenie týchto požiadaviek nie je povinné, ale môže byť žiaduce.
8. Zvyčajne definované softvérovými inžiniermi, vývojármi, softvérovými architektmi alebo inými technickými odborníkmi.
9. Dá sa zdokumentovať a chápať ako atribút kvality.
Definujú, aké má mať dodaný systém vlastnosti a ako funguje. Ide napríklad o rýchlosť, spoľahlivosť alebo robustnosť systému. Tieto požiadavky sa špecifikujú tak, aby boli predovšetkým merateľné.
Dokument
Dokument zahŕňajúci špecifikáciu softvérových požiadaviek (Software Requirement Specification – SRS) musí vyzerať dobre, či už po obsahovej alebo formálnej stránke. Tento dokument popisuje, čo bude softvér robiť a ako bude fungovať.
Musia byť predovšetkým jasne definované požiadavky, ktoré pomáhajú vývojárskym tímom vytvárať správny produkt. Takto SRS pomôže položiť základy pre vývoj produktu.
Prečo je dokument SRS dôležitý?
Špecifikácia softvérových požiadaviek je základom celého projektu. Stanovuje rámec, ktorým sa bude riadiť každý tím zapojený do vývoja. Slúži na poskytovanie informácií viacerým tímom – vývoja, prevádzky a údržby. Použitie SRS tak pomáha zaistiť splnenie požiadaviek. Okrem spomínaných benefitov nám pomôže taktiež minimalizovať celkový čas a eliminovať náklady na vývoj.
Techniky pri analýze softvérových požiadaviek:
Tvorba SRS: Microsoft Word vs Requirement Software
Špecifikácia požiadaviek softvéru môže byť zdokumentovaná v programe Microsoft Word. Šikovný spôsob, ako to urobiť, je vytvoriť šablónu dokumentu SRS, ktorá môže byť použitá aj ako východiskový bod pre každý projekt podobného charakteru. Aj napriek šablóne však môže byť písanie SRS týmto spôsobom náročným procesom. Efektívnejším riešením je použitie softvérového nástroja na správu a zdokumentovanie požiadaviek. Veľmi dobrým príkladom „Requirements Management“ nástroja je napríklad Helix ALM alebo Modern Requirements.
Záver
Aby bol projekt úspešný, je veľmi dôležité analyzovať požiadavky počas celého trvania projektu. Dobrý proces analýzy požiadaviek vytvorí softvér, ktorý plní ciele podniku, a tým zabezpečí úspech alebo predíde zlyhaniu systému.
Jednou zo služieb spoločnosti ITAPS je analýza a návrh softvérových riešení na mieru.
Po úvodnej konzultácii a zadefinovaní parametrov, ktoré musí výstup spĺňať, navrhneme pre klienta softvérové riešenie na mieru. To sa môže týkať vyhľadávania dát, evidencie, prípadne iného zefektívnenia procesov. Následne pripravíme špecifikáciu požiadaviek tak, aby finálny nástroj podporoval obchodné procesy firmy presne podľa potrieb a určených pravidiel.
V prípade záujmu nás kontaktujte na obchod@itaps.sk alebo prostredníctvom kontaktného formuláru.
Autor: Zuzana Stančíková
Kontakt: zuzana.stancikova@itaps.sk
Zdroje:
https://reqtest.com/requirements-blog/requirements-analysis/
https://www.visual-paradigm.com/guide/requirements-gathering/requirement-analysis-techniques/
https://www.perforce.com/blog/alm/how-write-software-requirements-specification-srs-document
https://www.guru99.com/learn-software-requirements-analysis-with-case-study.html#1
https://www.guru99.com/functional-vs-non-functional-requirements.html