56
Programų sistemų inžinerija 7 paskaita Reikalavimų inžinerijos procesai Skaidrės paruoštos remianti I. Sommerville medžiaga

7 paskaita Reikalavimų inžinerijos procesaidma.vgtu.lt/PSI/PSI_5.pdf7 paskaita Reikalavimų inžinerijos procesai Skaidrės paruoštos remianti I. Sommerville medžiaga Reikalavimų

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

  • Programų sistemų inžinerija

    7 paskaita

    Reikalavimų inžinerijos procesai

    Skaidrės paruoštos remianti I. Sommerville medžiaga

  • Reikalavimų inžinerijos veiklos

    Galimybių studija

    Reikalavimų išsiaiškinimas ir analizė

    Reikalavimų specifikavimas (užrašymas standartine

    forma)

    Reikalavimų atestavimas/validavimas/vertinimas

    (tikrinimas ar reikalavimai atitinka užsakovo lūkesčius

    ir poreikius)

    Reikalavimų vadyba

  • Tikslai

    Apibrėžti pagrindines reikalavimų inžinerijos veiklas.

    Supažindinti su reikalavimų išsiaiškinimo ir analizės

    metodais.

    Apibūdinti reikalavimų atestavimo procesą.

    Aptarti reikalavimų vadybos įtaką kitiems

    reikalavimų inžinerijos procesams.

  • Reikalavimų inžinerijos veiklos

    Galimybių

    studija

    Reikalavimų

    išsiaiškinimas ir

    analizė

    Reikalavimų

    atestavimas

    Reikalavimų

    specifikavimas Galimybių

    ataskaita

    Sistemos

    modeliai

    Vartotojo

    ir sistemos

    reikalavimai

    Reikalavimų

    dokumentas

  • Reikalavimų inžinerija Requirements

    specification

    Requirements

    validation

    Requirementselicitation

    Sy stem requirements

    specification andmodeling

    Sy stem

    requirementselicitation

    User requirementsspecification

    Userrequirements

    elicitation

    Business requirementsspecification

    Prototy ping

    Feasibility

    study

    Reviews

    Syst em requirements

    document

  • Reikalavimų inžinerijos veiklos

    Galimybių studija (į ką koncentruojasi galimybių tyrimas, tyrimo realizavimas, klausimai organizacijos darbuotojams)

    Reikalavimų išsiaiškinimas ir analizė

    Reikalavimų specifikavimas

    Reikalavimų atestavimas (vertinimas).

    Reikalavimų vadyba.

  • Galimybių studija

    Galimybių studijos tikslas - nustatyti, ar verta iš

    principo kurti programų sistemą.

    Trumpas koncentruotas galimybių tyrimas tikrina ar:

    • Būsima PI sistema atitiks organizacijos tikslus;

    • PI sistema gali būti sukurta naudojant turimą technologiją

    ir vidinį užsakovo biudžetą;

    • PI sistema bus suderinama su jau užsakovo

    naudojamomis programų sistemomis.

  • Galimybių studijos realizavimas

    Pagrįstas informacijos įvertinimu (ko yra

    reikalaujama), informacijos kaupimu ir ataskaitų

    rašymu.

    Klausimai organizacijos darbuotojams: • Kas būtų, jei sistema nebūtų įdiegta?

    • Kokie yra dabartinių procesų trūkumai?

    • Kaip siūloma sistema padės?

    • Kokios bus integravimo problemos?

    • Ar reikės naujų technologijų? Kokių įgūdžių?

    • Kokius darbo palengvinimus turėtų užtikrinti siūloma sistema?

  • Reikalavimų inžinerijos veiklos

    Galimybių studija

    Reikalavimų išsiaiškinimas ir analizė (reikalavimų analizės problemos, reikalavimų analizės spiralė, reikalavimų

    analizės procesas, pakopos, reikalavimų analizės modeliai,

    banko automato pavyzdys, scenarijai, jų aprašymai,

    žymėjimai, išimtys, panaudos atvejai, socialiniai ir

    organizaciniai faktoriai, stebėjimas)

    Reikalavimų specifikavimas

    Reikalavimų atestavimas

    Reikalavimų vadyba

  • Reikalavimų išsiaiškinimas ir analizė

    Reikalavimų išsiaiškinimas arba dar vadinamas reikalavimų atradimas apima:

    techninį personalą, dirbantį su užsakovais, kad sužinotų apie PI taikymo sritį, paslaugas, kurias turėtų teikti PI sistema, ir programų sistemos darbo apribojimus.

    Reikalavimai gali būti surenkami ir iš galutinių PI sistemos vartotojų, vadybininkų, palaikymo/aptarnavimo inžinierių, srities ekspertų, profsąjungų ir t.t.

    Bendrai šie žmonės vadinami užsakovais arba suinteresuotais asmenimis (stakeholders).

  • Reikalavimų išsiaiškinimas

    Reikalavimų išsiaiškinimui naudojami tokie metodai:

    Interviu su suinteresuotais asmenimis;

    Scenarijai (įvykių sekos, vykdant tam tikrą veiklą

    aprašymas);

    Atvejų diagramos (use case diagrams).

  • Reikalavimų surinkimo sunkumai

    Suinteresuoti asmenys dažnai nežino, ko jie iš tiesų nori.

    Suinteresuoti asmenys išreiškia savo reikalavimus savais

    terminais.

    Skirtingi suinteresuoti asmenys gali kelti tarpusavyje

    nesuderinamus reikalavimus.

    Organizaciniai ir politiniai faktoriai gali įtakoti reikalavimus

    sistemai.

    Reikalavimai keičiasi analizės proceso metu. Gali atsirasti

    naujų suinteresuotų asmenų, ir taip pakeisti verslo aplinką.

  • Reikalavimų analizės spiralė

    Requirementsclassification and

    organisation

    Requirementsprioritization and

    negotiation

    Requirements

    documentation

    Requirements

    discovery

  • Reikalavimų surinkimo ir analizės procesas

    Probleminės srities

    supratimas

    Reikalavimų

    surinkimas

    Reikalavimų

    atestavimas

    Prioritetų

    nustatymas

    Konfliktų

    sprendimas

    Klasifikavimas

    Reikalavimų

    apibrėžimas ir

    specifikacijos

    Proceso

    įeiga

  • Reikalavimų proceso pakopos

    Srities supratimas

    Reikalavimų surinkimas

    Klasifikavimas

    Konfliktų analizė ir sprendimas

    Prioritetų nustatymas

    Reikalavimų atestavimas

  • Reikalavimų išsiaiškinimas

    Bendrai paėmus, suinteresuotų asmenų požiūriai į

    problemą ar tam tikrą veiklą yra skirtingi, todėl

    susiformuoja skirtingi požiūriai į tą pačia problemą.

    Pvz: vadovo, vadybininko, techninio inžinieriaus, IT

    specialisto ir t.t.

    Ši daugiaperspektyvinė analizė yra svarbi todėl, kad

    iš esmės galime teigti, kad nėra vienintelio teisingo

    būdo sistemos reikalavimų analizei.

  • Bankomato pavyzdys

    Pavyzdys - bankomatas, kuris teikia tam tikras

    automatizuotas banko operacijas.

    Naudojama labai supaprastinta sistema, kuri siūlo tam

    tikras paslaugas banko.

    Paslaugos apima grynųjų pinigų išėmimą, žinutės

    siuntimą (tam, kad išsikviesti paslaugą), užsakymus ir

    lėšų pervedimą.

  • Galimi požiūriai į bankomatą

    Banko klientų

    Kitų bankų atstovų

    Aparatūrinės ir programinės įrangos palaikymo

    inžinierių

    Marketingo departamento

    Banko valdytojų ir buhalterinio personalo

    Duomenų bazės administratorių ir apsaugos personalo

    Komunikacijos inžinierių

    Personalo departamento

  • Skirtingi požiūriai

    Skirtingi požiūriai į problemą yra natūralus reiškinys.

    Juos analizuojant suformuluojami struktūrizuoti

    reikalavimai.

    Interviu yra pagrindinė priemonė skirtingų požiūrių į

    problemą išryškinimui.

    Skirtingi požiūriai yra tinkami norint suformuoti

    struktūrizuotus nefunkcinius reikalavimus.

  • Interviu tipai

    Interviu gali būti dviejų tipų:

    Interviu, per kurį suinteresuoti asmenys atsako į iš

    anksto sudarytus klausimus. Klausimus sudaro

    reikalavimų inžinierius (analitikas).

    Atviras interviu, kai klausimai formuluojami

    betarpiškai apklausos metu.

    Interviu netinka siekiant išsiaiškinti organizacinius

    reikalavimus ir apribojimus, nes egzistuoja daug skirtingų

    požiūrių ir supratimų apie tai.

  • Scenarijai

    Scenarijus – tai rašytinis veiklos aprašymas, kaip ji

    vyksta praktiškai.

    Scenarija padeda formuojant reikalavimus, kadangi

    žmonės reikalavimus geriau susieja su scenarijais, negu

    su abstrakčiais teiginiais, nusakančiais, ko jie reikalauja

    iš sistemos.

    Scenarijai yra ypač naudingi detalizuojant reikalavimų

    aprašymo eskizą.

  • Scenarijaus aprašymas

    Scenarijaus turinys susideda iš tokių skyrių:

    Aprašas, ko vartotojai tikisi iš būsimos PI sistemos

    Įvykių eigos aprašymas

    Aprašymas, kas blogo gali atsitikti ir kaip tai reikia

    sutvarkyti

    Aprašas, apie kitas veiklas, kurios gali vykti

    lygiagrečiai

    Sistemos būsena scenarijaus pabaigoje

  • Įvykių scenarijus

    Įvykių (event) scenarijus gali būti naudojamas

    aprašyti, kaip sistema reaguoja į tam tikrus reiškinius

    - pavyzdžiui, įvykis “pradėti sandėrį”.

    Metodai turi sutartinį schematinį vaizdavimą įvykių

    scenarijui:

    • Tiekiami ir pristatomi duomenys

    • Kontrolės ir valdymo informacija

    • Išimčių apdorojimas

    • Kitas laukiamas įvykis

  • Įvykių scenarijus – ATM transakcija

    Validate user

    Request PIN

    Select

    serviceTimeout

    Return card

    Invalid card

    Return card

    Stolen card

    Retain card

    Incorrect PIN

    Re-enter PIN

    Incorrect PIN

    Return card

    Card

    PIN

    Card present

    Accountnumber

    PIN

    Account

    number

    Valid card

    User OK

  • Duomenų ir valdymo analizės žymėjimas

    Elipsės. Duomenys tiekiami iš požiūrio taško arba

    pristatomi jam.

    Valdymo informacija įeina ir išeina kiekvieno

    stačiakampio sienų išorėje.

    Duomenys išeina iš stačiakampio dešinės.

    Išimtys yra parodomos stačiakampio apačioje.

    Sekančio įvykio pavadinimas yra stačiakampyje su

    storesniais kraštais.

  • Išimčių aprašymas

    Dauguma metodų neteikia galimybės išimčių

    aprašymui.

    Šiame pavyzdyje išimtys yra:

    • Laiko limito pabaiga. Laiko limitas. Klientas neįveda PIN

    per skirtą laiko limitą.

    • Bloga kortelė. Kortelė neatpažįstama ir grąžinama.

    • Vogta kortelė. Kortelė buvo užregistruota kaip vogta ir

    bankomatas ją sulaiko.

  • Panaudos atvejai (use case)

    “Panaudos atvejai – use case” yra scenarijais pagrįstas

    UML (Unified Modelling Language) metodas, kuris

    identifikuoja veikėjus sąveikos metu ir aprašo pačią

    sąveiką.

    Panaudos atvejų rinkinys turi aprašyti visas galimas

    sąveikas su sistema.

    Panaudos atvejai – tai scenarijų grafinis atvaizdavimais.

    Sekų diagramos gali būti naudojamos panaudojimo

    atvejų detalizavimui, parodant sistemoje vykstančių

    įvykių seką.

  • Panaudos atvejo diagrama

    Panaudos atvejus patartina

    naudoti kartu su scenarijais t.y.

    tekstiniais aprašais.

  • Reikalavimų analizės modeliai

    Skirtingi sistemos modeliai naudojami reikalavimų analizės metu.

    Reikalavimų analizė gali apimti tris struktūrines pakopas, kurios atsispindi skirtinguose modeliuose:

    • Padalinimas (dekompozicija). Identifikuoja struktūrinius ryšius tarp esybių.

    • Apibendrinimas (abstrakcija). Identifikuoja bendrumus tarp esybių.

    • Projekcija (perspektyva). Identifikuoja skirtingus požiūrius į problemą.

  • Socialiniai ir organizaciniai faktoriai

    Programinės įrangos sistemos yra naudojamos

    socialinėje ir organizacinėje aplinkoje. Tai gali įtakoti

    ar net užgožti sistemos reikalavimus.

    Socialiniai ir organizaciniai faktoriai nėra vienintelis

    požiūris. Jie įtakoja visus požiūrius.

    Geri analitikai turi atsižvelgti į šiuos faktorius, bet

    dabartiniu metu nėra sistemingo būdo sujungti jų

    analizes.

  • Pavyzdys

    Nagrinėkime sistemą, kuri leistų aukštesnio lygio

    vadovui pasiekti informaciją, “neliečiant” vidutinio

    lygio vadovų. • Vadovo statusas. Viršesni vadovai gali jaustis per daug svarbūs, kad

    naudotų klaviatūrą. Tai gali apriboti sistemos naudojamą sąsajos

    tipą.

    • Vadovo pareigos. Vadovai gali neturėti laisvo laiko, kurį galėtų

    skirti mokymuisi dirbti su sistema.

    • Prieštaravimai organizacijoje. Vidutinio atsakomybės lygio

    vadovai, kurių gali nebereikėti, gali tyčia pateikti blogą ar

    nesuderinamą informaciją, kuri “nulaužtų” sistemą.

  • Stebėjimas

    Socialinių mokslų srities mokslininkai praleidžia daug laiko stebėdami ir analizuodami, kaip žmonės iš tiesų dirba.

    Žmonės neturi aiškinti ar tiksliai apibūdinti savo darbo.

    Svarbūs socialiniai ir organizaciniai faktoriai gali būti stebimi.

    Tyrimai parodė, kad darbas yra paprastai turtingesnis ir sudėtingesnis, nei teigiama paprastų sistemų modeliuose.

  • Aktyvus stebėjimas

    Derina stebėjimą su maketavimu.

    Prototipų kūrimo rezultatas – atsakyti į klausimus, kuriems reikalingas aktyvus stebėjimas.

    Stebėjimo problema yra ta, kad ji nagrinėja egzistuojančią praktiką, kuri gali būti labiau istorinė ir dabar jau praradusi savo reikšmę.

  • Stebėjimas ir prototipai

    Sistemos

    prototipavimas

    Aktyvus

    stebėjimas

    Apklausa per

    susitikimus

    Stebėjimų

    analizė

    Prototipų

    vystymas

    Bendras sistemos

    vystymas

  • Reikalavimai stebėjimui

    Reikalavimai, kurie kildinami iš to, kaip žmonės

    dirba iš tikrųjų, o ne kaip jiems siūloma dirbti.

    Reikalavimai, išvesti iš bendradarbiavimo ir kitų

    žmonių darbų supratimo.

  • Reikalavimų inžinerijos veiklos

    Galimybių tyrimas

    Reikalavimų išsiaiškinimas ir analizė

    Reikalavimų atestavimas (kas nustatoma atestavimo metu, reikalavimų atestavimo metodika, reikalavimų peržiūra,

    kokie tikrinimai atliekami peržiūros metu)

    Reikalavimų specifikavimas

    Reikalavimų vadyba

  • Reikalavimų atestavimas

    Čia įrodinėjama, kad reikalavimai apibūdina tikrai

    tokią sistemą, kokios nori vartotojas.

    Reikalavimų klaidos kainuoja brangiai, taigi

    atestavimas yra ypač svarbus.

    • Reikalavimų klaidų taisymas po pristatymo gali kainuoti

    100 kartų brangiau nei veikimo klaidų taisymas.

  • Pakeitimų kaina

  • Reikalavimų atestavimas

    Teisingumas. Ar sistema atlieka funkcijas, geriausiai atitinkančias vartotojo reikalavimus?

    Nuoseklumas. Ar nėra reikalavimų konfliktų?

    Pilnumas. Ar įtrauktos visos funkcijos, kurių reikalauja vartotojas?

    Realistiškumas. Ar reikalavimai gali būti įgyvendinti su turimu biudžetu ir technologija?

    Patikrinamumas. Ar gali reikalavimai būti patikrinami ?

  • Reikalavimų atestavimo metodika

    Reikalavimų apžvalga - peržiūra Sisteminga neautomatizuota reikalavimų analizė.

    Prototipų kūrimas Vykdomojo sistemos modelio naudojimas reikalavimų patikrinimui.

    Testavimo atvejų generavimas Testų reikalavimams kūrimas testavimo galimybei tikrinti.

    Automatizuota nuoseklumo analizė Struktūrizuotų reikalavimų aprašymo nuoseklumo tikrinimas.

  • Reikalavimų peržiūra

    Reguliarios peržiūros turi trukti tol, kol

    formuluojamas reikalavimų apibrėžimas.

    Ir kliento, ir rangovo personalas turi būti įtraukti į

    peržiūras

    Apžvalgos turi būti formalios (su pilnai baigtais

    dokumentais) arba neformalios. Glaudus

    bendravimas tarp kūrėjų, klientų ir vartotojų gali

    išspręsti problemas ankstyvoje stadijoje.

  • Peržiūros tikrinimai

    Patikrinamumas. Ar reikalavimą tikrai galima

    patikrinti (testuoti)?

    Išsamumas. Ar reikalavimai teisingai suprasti?

    Sekamumas. Ar reikalavimų kilmė yra aiškiai

    suformuluota?

    Prisitaikomumas. Ar gali reikalavimas pasikeisti be

    didelio poveikio kitiems reikalavimams?

  • Automatinis darnos tikrinimas

    Reikalavimų

    duomenų bazė

    Reikalavimų

    procesorius

    Reikalavimų

    problemų ataskaita

    Reikalavimai

    formaliomis kalbomis

    Reikalavimų

    analizatorius

  • Reikalavimų inžinerijos veiklos

    Galimybių tyrimas.

    Reikalavimų išgavimas ir analizė.

    Reikalavimų atestavimas.

    Reikalavimų vadyba. (reikalavimų pakeitimai, reikalavimų vystymasis, pastovūs ir kintantys reikalavimai, jų

    klasifikavimas, reikalavimų vadybos planavimas, reikalavimų

    sekamumas, CASE priemonių palaikymas, reikalavimų

    pakeitimų vykdymas)

  • Reikalavimų vadyba

    Reikalavimų vadyba - tai procesas, koordinuojantis

    reikalavimų pasikeitimus reikalavimų inžinerijos ir

    sistemos kūrimo procese.

    Reikalavimai neišvengiamai yra neišbaigti ir

    nepastovūs.

    • Nauji reikalavimai atsiranda keičiantis verslo reikmėms ir

    kuriant geresnį sistemos supratimą.

    • Skirtingi požiūriai iškelia skirtingus reikalavimus, kurie

    dažnai būna prieštaringi.

  • Reikalavimų pakeitimai

    Reikalavimų, kylančių iš skirtingų požiūrių,

    prioritetai keičiasi kūrimo procese.

    Sistemos užsakovai gali apibrėžti reikalavimus,

    kylančius iš verslo perspektyvų, kurie gali kirstis su

    galutinio vartotojo reikalavimais.

    Verslo ir techninė aplinka keičiasi sistemos kūrimo

    metu.

  • Reikalavimų vystymasis

    Pradinis

    problemos

    supratimas

    Pasikeitęs

    problemos

    supratimas

    Pradiniai

    reikalavimai

    Pasikeitę

    reikalavimai

    Laikas

  • Pastovūs ir kintantys reikalavimai

    Pastovūs reikalavimai. Formuluojami nagrinėjant

    pagrindinę užsakovo organizacijos veiklą. Pvz.:

    ligoninė visada turi turėti daktarus, seseles ir pan.

    Gali būti gaunami iš veiklos srities modelio.

    Kintantys reikalavimai. Reikalavimai, kintantys

    sistemos kūrimo ar eksplotavimo metu. Ligoninėje

    reikalavimus formuoja sveikatos apsaugos politika.

  • Reikalavimų klasifikavimas

    Mutuojantys reikalavimai Reikalavimai, kintantys dėl sistemos aplinkos.

    Paaiškėjantys reikalavimai Reikalavimai, išaiškėjantys kuriant sistemą.

    Iškylantys reikalavimai Reikalavimai, kylantys diegiant kompiuterinę sistemą.

    Suderinamumo reikalavimai Reikalavimai, priklausantys nuo kitų sistemų ar organizacijos procesų.

  • Reikalavimų vadyba

    Reikalavimų inžinerijos procese reikia planuoti:

    • Reikalavimų identifikavimas

    » Kaip reikalavimai individualiai identifikuojami

    • Pakeitimų vadybos procesas

    » Procesas, vykstantis analizuojant reikalavimų pasikeitimus

    • Sekamumo politika

    » Visuma informacijos apie reikalavimų tarpusavio

    santykius, kurie yra išlaikomi

    • CASE priemonių palaikymas

    » Priemonių palaikymas reikalingas tam, kad padėtų valdyti

    reikalavimų pasikeitimus

  • Reikalavimų sekamumas

    Sekamumo paskirtis – tai ryšiai tarp reikalavimų, jų

    šaltinių ir sistemos kūrimo.

    Šaltinių sekamumas Nuoroda iš reikalavimo į užsakovus, pateikusius šį reikalavimą.

    Reikalavimų sekamumas Nuorodos tarp priklausomų reikalavimų

    Kūrimo sekamumas Nuorodos iš reikalavimų į kūrimą

  • Reikalavimų pakeitimai

    Turi būti taikoma visiems siūlomiems reikalavimų

    pakeitimams.

    Pagrindiniai etapai: • Problemos analizė - apsvarstyti reikalavimuose iškilusią problemą ir

    pasiūlyti pakeitimus.

    • Pakeitimų analizė ir kaina - įvertinti pakeitimų įtaką kitiems

    reikalavimams.

    • Pakeitimų įgyvendinimas - modifikuoti reikalavimų ir kitus

    dokumentus taip, kad atsispindėtų pakeitimai.

  • Reikalavimų pakeitimai

    Problemos analizė

    ir pakeitimų

    specifikavimas

    Pakeitimų

    analizė ir

    įkainavimas

    Pakeitimų

    įgyvendinimas

    Nustatyta

    problema Ištaisyti

    reikalavimai

  • Esminiai akcentai

    Reikalavimų inžinerijos procesas apima galimybių

    tyrimą, reikalavimų iškėlimą ir analizę, reikalavimų

    specifikavimą, atestavimą ir reikalavimų vadybą.

    Reikalavimų analizę sudaro šios periodiškai

    pasikartojančios pakopos: srities supratimas,

    reikalavimų surinkimas, klasifikavimas,

    struktūrizavimas, prioritetizavimas ir atestavimas.

    Yra daug sistemos užsakovų (suinteresuotų asmenų),

    keliančių skirtingus reikalavimus.

  • Esminiai akcentai

    Socialiniai ir organizaciniai faktoriai įtakoja reikalavimus sistemai.

    Reikalavimų atestavimas yra susijęs su teisingumo, nuoseklumo, pilnumo, realumo ir tikrinamumo patikrinimais.

    Verslo pasikeitimai neišvengiamai verčia keisti reikalavimus.

    Reikalavimų vadyba apima planavimą ir pasikeitimų vykdymą.

  • Klausimai?