Back

ⓘ Mittefunktsionaalsed nõuded



                                     

ⓘ Mittefunktsionaalsed nõuded

Mittefunktsionaalsed nõuded täpsustavad tarkvara ja nõuete projekteerimises kriteeriume, mille alusel hinnatakse süsteemi töökäiku, mitte kindlaid omadusi. Nende vastandid on funktsionaalsed nõuded, mis defineerivad kindlad funktsioonid või käitumised. Plaan mittefunktsionaalseid nõudeid käiku viia asub süsteemiarhitektuuris, mitte süsteemidisainis, nagu see on funktsionaalsete nõuete korral. See on nii, kuna need on tavaliselt arhitektuuriliselt olulised nõuded.

Üldjoontes defineerivad funktsionaalsed nõuded, mida süsteem peab tegema, ning mittefunktsionaalsed nõuded defineerivad, milline süsteem peab olema. Funktsionaalsed nõuded on üldiselt vormis "süsteem teeb ", individuaalne tegevus, mis on osa süsteemist, mille juurde see kuulub. Mittefunktsionaalset nõuet esitatakse kujul "süsteem hakkab olema ehk üldine süsteemi omadus või mingi eriline aspekt ja mitte täpne funktsioon. Süsteemi üldised omadused tavaliselt näitavad, kas projektiarendus on õnnestunud või läbikukkunud.

Mittefunktsionaalseid nõudeid kutsutakse süsteemi "kvaliteedi atribuutideks" või omadusteks, kvaliteedi eesmärkideks, kitsendusteks, mittekäitumispärasteks omadusteks. Mittefunktsionaalsete nõuete alla kuuluvaid omadusi on võimalik jaotada kaheks põhikategooriaks:

  • Arengulised omadused, nagu testitavus, hooldatavus, pikendatavus ja suurendatavus, mis on tarkvarasüsteemi staatilises struktuuris.
  • Täitmisomadused, nagu turvalisus ja kasutatavus, mis on jälgitavad süsteemi töö ajal.
                                     

1. Süsteemi taseme kvaliteedinõuded

Süsteemi taseme kvaliteedinõuded seostuvad turvalisuse, hallatavuse, laiendatavuse, stabiilsuse ja porditavusega – need ei täida ärilist eesmärki. Nendele kvaliteedinõuetele mittevastamine võib mõjutada kasutajaid kaudselt läbi teiste, seostatud kvaliteedinõuete mittevastamise kaudu.

  • Stabiilsus – süsteemivigadega toimetuleku võime
  • Laiendatavus – süsteemi on võimalik laiendada
  • Hooldatavus – süsteem on kergesti hooldatav
  • Hallatavus – süsteem on organiseeritud ja kontrollitav
  • Porditavus – süsteemi komponentide liigutamise võime
  • Turvalisus – süsteemi ei saa sisse ega kahjustada
                                     

2. Dokumenteerimine

Projekti elutsüklis kutsutakse ka projekti töö elutsükliks ehk PDLC-ks on protsesse, mida tuleks kõigile kvaliteediomadustele vastavuse tagamiseks järgida. Kuigi need protsessid võivad eraldiseisvate organisatsioonide või äriüksuste puhul erineda, peaks põhilised dokumendid olema sarnased.

Mittefunktsionaalseid nõudeid saab dokumenteerida kahes kohas:

  • Kindla kasutusjuhtumi spetsiifilisi, mittefunktsionaalseid nõudeid saab dokumenteerida osana "Kasutusjuhtumi kirjelduse" lõigust "Erinõuete" all. Need nõuded võivad kehtida nii kogu kasutusjuhtumile kui selle kindlatele sammudele.
  • Kogu süsteemile rakenduvaid mittefunktsionaalseid nõudeid võib dokumenteerida lisatud spetsifikatsioonide dokumendis ja nõudeid saab formuleerida küsimuste ja vastustena.
                                     

3. Näited

Süsteemi ülesandeks võib olla kuvada andmebaasist kasutajale andmete arvu. See on funktsionaalne nõue. Mittefunktsionaalne nõue on selle arvu uudsus. Kui see arv peab olema uuendatav reaalajas, siis süsteemi loojad peavad kindlaks tegema, et süsteem võib uuendada andmete arvu kindla aja tagant, mis on kooskõlas andmete arvu muutumisega. Sobiv võrgukiirus võib olla süsteemi mittefunktsionaalne nõue.

Loodava süsteemi üldiseks reaktsiooniajaks töövõime nõue määratakse üks sekund. Võib aga olla kasutusjuhtumeid, kus on teada, et peab kasutama välist teenusepakkujat. Siis võib reaktsiooniaja piirangut lõdvendada viie sekundi peale. Kogu süsteemile üldiselt rakenduvat nõuet dokumenteeritakse osana lisatud spetsifikatsioonide dokumendist. Viie sekundi nõuet aga kirjeldatakse kasutusjuhtumi all kui "erinõuet". Lisatud spetsifikatsioonid ja funktsionaalsed spetsifikatsioonid kasutusjuhtumid ja valdkonna mudelid moodustavad koos süsteemi nõuete spetsifikatsioonide dokumendi.

Veel näiteid mittefunktsionaalsetest nõuetest:

  • Nurjumiste haldus
  • Mastaapsus horisontaalne, vertikaalne
  • Varund
  • Stabiilsus
  • Saadavus
  • Vahendite piiratus
  • Privaatsus
  • Läbipaistvus
  • Sõltuvus teistest osapooltest
  • Kaasaskantavus
  • Usaldusväärsus nt keskmine aeg vigade vahel
  • Platvormide ühilduvus
  • Audit ja kontroll
  • Võimsus, praegune ja prognoositav
  • Testitavus
  • Katastroofiabi
  • Ligipääsetavus
  • Kasutatavus sihtgrupis
  • Jõudlus
  • Dokumentatsioon
  • Kvaliteet
  • Vastupidavus
  • Reaktsiooniaeg
  • Töökindlus
  • Keskkonnakaitse
  • Laienduste võimalus funktsioonide lisamine jms
  • Hooldatavus
  • Koostalitlusvõime
  • Aruandlus
  • Emotsionaalsed tegurid
  • Taastatavus nt keskmine aeg taastamiseni
  • Õigused ja litsentsid
  • Võrgu topoloogia
  • Vastavus
  • Toetatavus
  • Taaskasutatavus
  • Tõhusus töö ja jõudluse suhe
  • Turvalisus
  • Konfiguratsiooni haldamine
  • Kasutegur mingi koguse jaoks vajalikud ressursid
  • Avatud lähtekoodiga
  • Ohutus või FoS
  • Tarkvara, tööriistad, standardid jms
  • Ärakasutatavus
  • Sertifitseerimine
  • Lähtekoodi hoiustus
  • Vea tolerants nt süsteemi töötamise monitooring, mõõtmine ja haldus
  • Hind


                                     

4. Raamistik

Mittefunktsionaalsed nõuded MFN on sihimudelil põhinev raamistik. Analüüsi alguses sätestatakse tarkvaralised sihid, millega kõik osanikud nõustuvad. Tarkvaralised sihid on raskesti väljendatavad eesmärgid, mis on tavaliselt ülesüsteemilised omadused, näiteks süsteemi kasutatavus, turvalisus, jõudlus ja paindlikkus. Need eesmärgid jagatakse väiksemateks üksusteks ja korrastatakse ning moodustatakse puustruktuur eesmärkidest ning tarkvaralistest sihtidest. Tõenäoliselt leitakse saadud puustruktuuridest üksteist häirivaid tarkvaralisi sihte. Näiteks turvalisuse eesmärgid häirivad tihti kasutatavust. Need puud moodustavad tarkvaraliste sihtide graafi. Viimaks valitakse mingi kindel leht graafist, mis rahuldaks kõiki juuresolevaid tarkvaralisi sihte.

                                     

4.1. Raamistik Mõõtmine

Kui funktsioonipunktid FP mõõdavad funktsionaalseid nõudeid, arvestades andmevoo läbivust läbi tarkvara rakenduse, siis IFPUG-i International Function Point User Group SNAP tarkvara mittefunktsionaalse hinnangu protsess mõõdab mittefunktsionaalseid nõudeid. SNAP-i mudel koosneb neljast kategooriast, mis omakorda jaguvad 14 alamkategooriaks, et mõõta mittefunktsionaalseid nõudeid. Mittefunktsionaalsed nõuded jagatakse alamkategooriatesse. Iga alamkategooria suurus tehakse kindlaks ning nõude suuruseks saab kõikide alamkategooriate suuruste summa.

SNAP-i mõõteprotsess sarnaneb funktsionaalpunkti mõõteprotsessiga. Rakenduse sees seostatakse mittefunktsionaalseid nõudeid kategooriate ning alamkategooriatega. Standardiseeritud põhikriteeriumite komplekti kasutades mõõdetakse iga alamkategooria vastavalt sellele tüübile ning raskusele sellise nõude suurus on võrdne selle alamkategooriate summaga. Need suurused arvutatakse kokku, et anda tarkvara rakenduse mittefunktsionaalsuse mõõde.

Mudeli beetatestimine 2012. aasta sügisel näitas, et SNAP-i suurusel on tugev korrelatsioon tööjõuvajadusega, et arendada mittefunktsionaalne osa tarkvara rakendusest.

                                     

4.2. Raamistik SNAP-i kategooriad

SNAP kasutab nelja kategooriat, mis omakorda jaotuvad alamkategooriateks. Igat alamkategooriat hinnatakse kasutades meetodiga, mis on kirjas SNAP-i käsiraamatus.

1. Andmetoimingud 1. Andmesisestuse kinnitamised 2. Loogilised ja matemaatilised operatsioonid 3. Andmevormindamine 4. Sisemised andmeliikumised 5. Kasutajatele lisaväärtuse kohaletoimetamine andmekonfiguratsiooni kaudu 2. Liidese disain 1. Kasutajaliidesed 2. Abimeetodid 3. Sisendmeetodid 4. Väljundmeetodid 3. Tehniline keskkond 1. Platvormid 2. Andmebaasi tehnoloogia 3. Töötlusüksuste protsessid 4. Arhitektuur 1. Komponendipõhine tarkvara 2. Mitmed sisend- ja väljundliidesed
                                     

4.3. Raamistik SNAP-i plussid

Tänu mittefunktsionaalsete nõuete mõõtmisele on lihtsam hinnata tarkvara arendavat tööjõudu.

See täiustatud tööjõu hinnang viib parema planeeringu, ressursijaotuse ning vähemate riskideni.

Projektimeeskondade produktiivsust saab paremini hinnata, kuna mõõdetakse rohkemaid töö väljundeid.

Kasutades mõlemat, funktsionaalset ja mittefunktsionaalset tööd, saab tellijale paremini oma toodete väärtust demonstreerida.

Free and no ads
no need to download or install

Pino - logical board game which is based on tactics and strategy. In general this is a remix of chess, checkers and corners. The game develops imagination, concentration, teaches how to solve tasks, plan their own actions and of course to think logically. It does not matter how much pieces you have, the main thing is how they are placement!

online intellectual game →