Mis on nõuete insener?

Suurtel riist- või tarkvarasüsteemidel, nagu kosmoseaparaat, on keerulised nõuded. Nõuded on spetsifikatsioon selle kohta, mida tuleks ehitada, kuidas süsteem peaks käituma, või piirangud süsteemi loomise protsessile. Nõuete kavandamine on heade inseneritavade kasutamine nõuete mõistmiseks enne süsteemi ehitamist. See omandab tähtsuse, kuna süsteemi sidusrühmad pole ise oma vajadustes selged ja neil on erinevad vajadused.

Keerulisel süsteemil võib olla palju sidusrühmi, näiteks inimesed, kes süsteemi tellivad, kasutajad, kes kasutavad süsteemi üht või mitut aspekti, ja inimesed, kes saavad süsteemist kasu. Samuti on võimalik, et huvirühmade hulgas on avalikkuse liikmeid, keda süsteemi teatud iseärasused mõjutavad. Sidusrühmadel on oma erivajadused. Teisest küljest võivad süsteemi arendajad olla tehniliselt võimekad, kuid ei pruugi täielikult mõista sidusrühmade seisukohta. Nõuete kavandamine on neid külgi ühendav oluline võime.

Formaalselt jaguneb nõuete inseneritegevus nõuete väljatöötamiseks ja nõuete haldamiseks. Nõuete väljatöötamine koosneb tuvastamisest, analüüsist, spetsifikatsioonist ja kontrollimisest. Nõuete haldamine on kogu nõuete protsessi juhtimine, eriti nõuete muudatuste käsitlemine. Mõned praktikud, vastupidi, nimetavad kogu tegevust lihtsalt nõuete analüüsiks.

Nõuete väljaselgitamine sidusrühmadelt muutub vajalikuks, kuna sidusrühmad ei täpsusta sageli oma vajadusi täielikult ega mõista uue süsteemi tagajärgi. Sidusrühmad ei pruugi end avada, sest nad võivad karta mõju nende praegustele töökohtadele. Seega on esilekutsumine hoolikas ja võib-olla pikk protsess, kus on vaja empaatiat ja peent psühholoogiat. Tuleb olla ettevaatlik, et kultuurilised erinevused erinevate sidusrühmade ja ka arendajate vahel oleksid sillatud.

Nõude väljaselgitamiseks kasutatakse mitmeid tehnikaid. Nõudeid saab välja selgitada individuaalsete intervjuude, rühmakoosolekute ja inimeste tööülesannete jälgimise kaudu. Nõuded esile kutsuvad tehnikad hõlmavad fookusgruppe, prioriteetsete loendite loomist, prototüüpide loomist ja võrdlemist teiste töötavate süsteemidega. Väljastamise nõuded hõlmavad süsteemi ärivajadusi, kasutajate äriprotsesse süsteemi kasutamisel ja süsteemi funktsionaalseid omadusi. Lisaks tuleb esile tõsta mittefunktsionaalseid nõudeid, nagu reaktsiooniaeg, süsteemi saadavus ja kasutuslihtsus.

Nõuete kavandamise analüüsietapp moodustab madala taseme nõuded, mis vastavad algsetele kõrgetasemelistele nõuetele. See hõlmab kontseptuaalsete mudelite ja prototüüpide loomist, et teha kindlaks nõuete täielikkus. Konflikte erinevate huvirühmade vajadustes leitakse sagedamini mudelite ja prototüüpide järgi, mitte pelgalt nõuete loetelust. Analüütikud peavad nõuetele lisama soovitavad süsteemiomadused, nagu turvalisus, paindlikkus ja hooldatavus.

Nõuded on määratletud dokumendis, et kõik sidusrühmad oleksid arusaadavad. Tarkvaraväljal nimetatakse dokumenti SRS-iks, mis tähistab tarkvaranõuete spetsifikatsiooni. Nõudeid kontrollivad peamised sidusrühmad. Seda peamiselt esitluste ja spetsifikatsioonidokumendi kaudu, kuid mõnikord ka nõuetele vastavate testjuhtumitega.

Nõuete inseneritöö on eelkõige side, tegevus, mitte tehniline. See vajab multidistsiplinaarseid oskusi. Nõuete kavandamine aitab sidusrühmadel ja arendajatel konflikte lahendada ning ühendab neid oma eesmärkides; See viib tugeva süsteemini.