Non-functional requirement / Ei-toiminnallinen vaatimus

Ei-toiminnallisten vaatimusten määrittely on osa ohjelmistotuotannon vaatimusmäärittelyprosessia. Prosessin tuloksena ovat tekniset dokumentit jotka kuvaavat kattavasti koko järjestelmän suunnittelun ja lopputuotteen. Siinä missä toiminnalliset vaatimukset kuvaavat mitä järjestelmän tulisi tehdä, ei-tominnalliset vaatimukset kuvaavat miten järjestelmä toimii ja mitä se on.

Toiminnalliset vaatimukset ovat usein muotoa "Järjestelmä tekee /vaatimus/", kun ei-toiminnalliset ovat "Järjestelmä on /vaatimus/".

Ei-toiminnalliset vaatimukset ovat hyvin lähellä järjestelmän laatuvaatimuksia ja kertovat kuinka käytettävä ja tehokas järjestelmä on. Lisäksi ne asettavat järjestelmälle rajoitteita ja reunaehtoja, joka saattaa johtaa joiden toiminnallisten vaatimusten hylkäämiseen. Rajoitteita voi olla esimerkiksi "Järjestelmällä tulee olla web-käyttöliittymä" tai "Järjestelmä on toteutettava C#-kielellä". Käytännössä ne siis kuvaavat koko järjestelmää eikä niinkään yksittäistä toimintoa.

Ei-toiminnalliset vaatimukset voidaan jakaa karkeasti kolmeen osaan: tuotteen vaatimukset, organisaation vaatimukset ja ulkoiset vaatimukset.

NFR-tree

Ei-toiminnallisia vaatimuksia ovat esimerkiksi (lisää lähteissä):

Linkkejä:

www.cheetah.fi
Wikipedia
Scaled agile framework
Medium.com