PI_6_paskaita
Upcoming SlideShare
Loading in...5
×
 

PI_6_paskaita

on

  • 1,253 views

 

Statistics

Views

Total Views
1,253
Views on SlideShare
1,198
Embed Views
55

Actions

Likes
1
Downloads
14
Comments
0

3 Embeds 55

http://paskaitos.roleka.lt 48
http://roleka.elekta.lt 6
http://webcache.googleusercontent.com 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    PI_6_paskaita PI_6_paskaita Presentation Transcript

    • Program ų inžinerija Reikalavimų inžinerija Pagrindinės sąvokos ir proceso apžvalga Autorius: Rolandas Krištapaitis
    • Turinys
      • Reikalavimų inžinerijos apibrėžimas ir reikalavimų PĮ sąvoka
      • Reikalavimų PĮ klasifikavimas
      • Reikalavimų inžinerijos procesas
      • Reikalavimų surinkimas
      • Reikalavimų analizė ir atestavimas
    • Reikalavimų inžinerijos apibrėžimas ir reikalavimų PĮ sąvoka
    • Reikalavimų inžinerijos apibrėžimas
      • Reikalavimų inžinerija nagrinėja reikalavimų programinei įrangai surinkimo, analizės, specifikavimo ir įvertinimo uždavinių sprendimą
      • Jau seniai yra pripažinta, kad jeigu minėtieji uždaviniai PĮ projekto metu yra atliekami prastai, tai egzistuoja didelė tikimybė, kad projektas bus nesėkmingas
    • Reikalavimų PĮ apibrėžimai (1)
      • IEEE standarte “Programų inžinerijos terminų žodynas” (1990) pateikta keletas reikalavimo PĮ apibrėžimų
      • Jie apibrėžia tiek PĮ vartotojų, tiek ir kūrėjų keliamus reikalavimus
    • Reikalavimų PĮ apibrėžimai (IEEE)
      • Reikalavimai – tai sąlygos arba galimybės, reikalingos vartotojui tam, kad jis galėtų atlikti savo uždavinius bei pasiekti užsibrėžtų tikslų
      • Reikalavimai – tai sąlygos arba galimybės, kuriomis turi pasižymėti PĮ tam, kad būtų įvykdyti jos sukūrimo sutarties punktai, tenkinami nurodyti standartai , specifikacijos bei kiti formalūs dokumentai
      • Reikalavimai – tai dokumentuotos sąlygos arba galimybės, apibrėžtos 1-2 punktuose
    • Reikalavimų PĮ apibrėžimai (Sommerville & Sawyer)
      • Sommerville ir Sawyer pateikia tokį reikalavimų PĮ apibrėžimą:
        • Reikalavimai – tai specifikacija, kurioje parašyta, kas turi būti realizuota PĮ sistemoje. Joje aprašomos sistemos funkcijos ir savybės arba atributai
    • Reikalavimų PĮ atributai (1)
      • Reikalavimo numeris: kiekvienam reikalavimui turi būti priskirtas unikalus numeris, kad būtų lengviau kontroliuoti jo vykdymą
      • Patikrinimo galimybė: už reikalavimus ir PĮ kokybę atsakingas personalas privalo užtikrinti, kad būtų patikrinta, ar kiekvienas reikalavimas yra kokybiškai realizuotas
    • Reikalavimų PĮ atributai (2)
      • Prioritetas: kiekvienas reikalavimas turi savo prioritetą, pagal kurį galima pasirinkti, kurį reikalavimą realizuoti pirmiau ir kuriam reikalavimui skirti daugiau turimų resursų
      • Būsena: kiekvienas reikalavimas gali turėti būseną, kurios pagalba galima nustatyti jo realizacijos progresą
    • Reikalavimų PĮ atributai (3)
      • Versijos numeris: reikalavimai turi savybę kisti PĮ projekto vykdymo metu, todėl kiekvienam jų turi būti fiksuojami atlikti pakeitimai ir nuolat priskiriami versijų numeriai
    • Išmatuojami reikalavimai (1)
      • Visi reikalavimai turi būti suformuluoti aiškiai ir nedviprasmiškai
      • Reikėtų vengti tokių reikalavimų, kaip: “PĮ turi būti patikima”, nes neaišku, kaip patikrinti, ar sukurta sistema tenkina tokį reikalavimą
      • Dviprasmiškai suformuluoto reikalavimo įvertinimas visada bus subjektyvus ir nepatikimas. Tai ypač aktualu nefunkcinių reikalavimų formulavimui
    • Išmatuojami reikalavimai (2)
      • Teisingai suformuluotų reikalavimų pavyzdžiu galėtų būti tokios reikalavimų formuluotės:
        • Skambučių centro PĮ turi padidinti centro darbo našumą 20%
        • Tikimybė, kad skambučių centro PĮ sugeneruos fatališką klaidą turi būti ne didesnė, kaip 1*10 -8
    • Reikalavimų PĮ klasifikacija
    • Reikalavimai produktui ir procesui (1)
      • Produkto reikalavimai – tai reikalavimai, keliami kuriamai PĮ (pavyzdžiui, PĮ turi patikrinti, ar studentas atitinka visus reikalavimus, prieš leisdama jį užregistruoti, kaip modulio klausytoją)
    • Reikalavimai produktui ir procesui (2)
      • Proceso reikalavimai – tai reikalavimai, keliami PĮ kūrimo procesui (pavyzdžiui, PĮ turi būti kuriama Java programavimo kalba)
    • Reikalavimai produktui ir procesui (3)
      • Proceso reikalavimai gali išplaukti iš produkto reikalavimų, pavyzdžiui, projektuojant PĮ reikia naudoti formalių specifikacijų metodą, kad sumažinti PĮ klaidų tikimybę
      • Proceso reikalavimus gali iškelti PĮ užsakovai, patys kūrėjai ar trečios šalies atstovai
    • Funkciniai ir nefunkciniai reikalavimai (1)
      • Funkciniai reikalavimai aprašo funkcijas, kurias turės atlikti kuriama PĮ (pavyzdžiui, sudaryti aukštojoje mokykloje besimokančių studentų sąrašą)
      • Juos įvardina vartotojas aiškindamas, kokias funkcijas galėtų atlikti numatomas kurti produktas
    • Funkciniai ir nefunkciniai reikalavimai (2)
      • Nefunkciniai reikalavimai nusako sistemos savybes, kuriomis ji turi pasižymėti (pavyzdžiui, PĮ turi veikti tiek Windows, tiek Linux operacinių sistemų aplinkoje)
      • Kartais jie dar vadinami kokybės reikalavimais
    • Nefunkcinių reikalavimų grupės (1)
      • Sistemos išvaizda – tai bendri reikalavimai vartotojo sąsajai (pvz., vartotojo sąsaja turi būti intuityviai suvokiama)
      • Sistemos panaudojamumas – tai reikalavimai sistemos įsisavinimui (pvz., sistema turi naudoti įprastus inžinieriams-mechanikams žymėjimus, kad jie galėtų greitai išmokti ja naudotis)
    • Nefunkcinių reikalavimų grupės (2)
      • Sistemos vykdymo savybės – tai reikalavimai užduočių vykdymo greičiui, apvalinimo tikslumui, DB dydžiui ir kt.
      • Sistemos veikimo reikalavimai – tai reikalavimai sistemos veikimo aplinkai (pvz., sistema turi būti pritaikyta naudotis esant prastoms gamtinėms sąlygoms)
    • Nefunkcinių reikalavimų grupės (3)
      • Sistemos priežiūros reikalavimai – tai reikalavimai sistemos klaidų taisymui, naujų galimybių įvedimui ir testavimui
      • Reikalavimai saugumui
      • Reikalavimai teisiniu, kultūriniu ir politiniu aspektu
    • Reikalavimai sistemai ir programinei įrangai (1)
      • Sistemą galima apibrėžti, kaip elementų aibę, kuri sąveikauja tarpusavyje tam, kad pasiektų tam tikrą bendrą tikslą
      • Elementų aibei priklauso techninė įranga, programinė įranga, žmonės, informacija, technologijos, paslaugos bei priemonės
    • Reikalavimai sistemai ir programinei įrangai (2)
      • Sistemos reikalavimai – tai reikalavimai sistemai, kaip visumai
      • Sistemoje, kurioje dalyvauja PĮ, reikalavimai PĮ yra išvedami iš reikalavimų pačiai sistemai
      • Sistemos reikalavimai apima ne tik jos galutinių vartotojų reikalavimus, bet ir sistemos užsakovų bei jos kūrėjų iškeltus reikalavimus
    • Reikalavimų inžinerijos procesas
    • Reikalavimų inžinerijos proceso modelis
      • Reikalavimų inžinerijos procesas apima reikalavimų surinkimą, analizę, specifikavimą ir įvertinimą
    • Galimybių tyrimas
      • Galimybių tyrimas nustato, ar verta kurti PĮ
      • Jo metu tikrinama, ar kuriama sistema atitinka organizacijos keliamus tikslus, ar ji gali būti sukurta naudojant turimą techninę, programinę įrangą ir biudžetą, ar sistema bus suderinama su jau egzistuojančiomis sistemomis
    • Reikalavimų išgavimas ir analizė (1)
      • Reikalavimų surinkimo metu PĮ kūrėjai bendrauja su sistemos užsakovais, galutiniais vartotojais ir kitais suinteresuotais asmenimis tam, kad išsiaiškintų jų keliamus reikalavimus būsimai sistemai
    • Reikalavimų išgavimas ir analizė (2)
      • Reikalavimų analizės metu atliekamas surinktų reikalavimų tyrimas: tikrinama, ar reikalavimai neprieštarauja vieni kitiems, jiems priskiriami prioritetai, kai kurie reikalavimai atmetami paaiškėjus, kad jų realizacija einamuoju metu yra per daug problematiška ir t.t.
    • Reikalavimų atestavimas (1)
      • Reikalavimų atestavimo metu patikrinama, ar surinkti reikalavimai tikrai aprašo tokią sistemą, kokios nori vartotojas
    • Reikalavimų atestavimas (2)
      • Kiekvienas reikalavimas įvertinamas pagal tokius kriterijus:
        • 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?
        • Išmatuojamumas: ar gali reikalavimai būti patikrinti?
    • Reikalavimų inžinerijos proceso dalyviai (1)
      • Vartotojai: šiai grupei priklauso žmonės, kurie dirbs su kuriama PĮ. Jie dažnai užima skirtingas pareigas, tokiu būdu pateikdami reikalavimus, svarbius jų atliekamiems uždaviniams
      • Užsakovai: šiai grupei priklauso asmenys, užsakę kuriamą PĮ
    • Reikalavimų inžinerijos proceso dalyviai (2)
      • Rinkos analitikai: jie dalyvauja reikalavimų inžinerijos procese tuomet, kai kuriama bendro pobūdžio PĮ
      • Tokiu atveju konkretus sistemos užsakovas ir vartotojas neegzistuoja, todėl rinkos analitikai, gerai susipažinę su rinka, kuriai skiriamas produktas, atlieka menamo užsakovo ir vartotojo vaidmenį
    • Reikalavimų inžinerijos proceso dalyviai (3)
      • PĮ inžinieriai: tai žmonės, kuriantys PĮ ir tiesiogiai suinteresuoti gauti pelno iš vykdomo projekto
    • Reikalavimų surinkimas
    • Reikalavimų surinkimo procesas (1)
      • Reikalavimų surinkimas – yra reikalavimų inžinerijos dalis, analizuojanti, kaip identifikuoti reikalavimų šaltinius ir kaip surinkti reikalavimus iš identifikuotų šaltinių
    • Reikalavimų surinkimo procesas (2)
      • Šiame etape yra užmezgami glaudūs ryšiai tarp PĮ kūrėjų ir būsimos PĮ užsakovų, vartotojų
      • Reikalavimų surinkimą dažnai atlieka sistemų analitikai, kurie yra tarsi tarpininkai tarp PĮ kūrėjų ir PĮ vartotojų
    • Pasiruošimas reikalavimų surinkimo procesui (1)
      • Identifikuojami tikslai, kuriuos turės leisti pasiekti kuriama PĮ
      • Atliekama dalykinės srities analizė
        • Labai svarbu, kad PĮ kūrėjai gerai žinotų dalykinę sritį, kuriai skirta jų kuriama PĮ
        • Geras dalykinės srities išmanymas leidžia kūrėjams ne tik lengviau bendrauti su vartotojais, bet ir kartais atspėti jų poreikius, kurių patys vartotojai nesugeba išsakyti, nors dažnai ir turi juos omenyje
    • Pasiruošimas reikalavimų surinkimo procesui (2)
      • Išsiaiškinamos visos PĮ suinteresuotų asmenų grupes. Labai dažnai sukurta PĮ tapdavo greitai nebenaudojama, nes atitikdavo tik dalies ja suinteresuotų asmenų reikalavimus
      • Susipažįstama su PĮ veikimo ir jos realizuojamų verslo procesų aplinka
    • Reikalavimų surinkimo metodai
      • Interviu
      • Panaudojimo atvejų scenarijų analizė
      • Prototipų kūrimas
      • Reikalavimų surinkimą palengvinantys susirinkimai
      • Stebėjimas
    • Interviu (1)
      • Interviu yra dažniausiai naudojamas reikalavimų surinkimo metodas
      • Pirmiausia sistemos analitikai pasiruošia būsimam interviu, sudarydami klausimus, kuriuos užduos vartotojams
    • Interviu (2)
      • Interviu metu būtina užsirašyti gaunamus atsakymus, kad vėliau nepamiršti kartais labai svarbių detalių
      • Užbaigus interviu, sistemos analitikai turi išanalizuoti surinktą informaciją ir jeigu joje dar yra neaiškumų, ruoštis sekančiam interviu, kuris leistų juos pašalinti
    • Patarimai ruošiantis ir imant interviu (1)
      • Apsibrėžti interviu tikslus ir klausimų, kuriuos reikia aptarti jo metu, aibę
      • Interviu skirti ribotą laiko limitą
      • Kalbėti tik su tikrais rūpimos srities ekspertais
    • Patarimai ruošiantis ir imant interviu (2)
      • Užsirašinėjant atsakymus, reikia naudoti ne vien tekstą, bet ir stengtis juos atvaizduoti grafiškai, kad tiek mums, tiek ir pašnekovui būtų aišku, jog teisingai supratome gautą informaciją
      • Visada padėkoti žmogui, iš kurio ėmėme interviu
    • Panaudojimo atvejų scenarijų analizė
      • Panaudojimo atvejų scenarijų analizės metu sistemų analitikai kartu su sistemos vartotojais turi aiškintis, kokie scenarijai sudaro jų išskirtus panaudojimo atvejus, būtina išsiaiškinti ne tik pagrindinius, bet ir visus įmanomus alternatyvius scenarijus
    • Prototipų kūrimas (1)
      • Naudojantis prototipų kūrimo metodu, sistemų analitikai pateikia vartotojui popieriuje pavaizduotus būsimos sistemos duomenų įvedimo langus ir ataskaitų eskizus
      • Eskizai gali būti sukurti su priemonėmis, kurios bus naudojamos programavimo metu
    • Prototipų kūrimas (2)
      • Eskizus galima nuolat rodyti sistemos vartotojams, kaip tarpines kuriamos sistemos versijas
      • Tai padeda vartotojams geriau įsivaizduoti, kaip atrodys būsima sistema ir pateikti informaciją, kuri leistų dar patobulinti jau egzistuojantį sistemos prototipą
    • Reikalavimų surinkimą palengvinantys susirinkimai (1)
      • Reikalavimų surinkimą palengvinančių susirinkimų tikslas yra sukviesti visus PĮ suinteresuotus asmenis į vieną vietą tam, kad jie galėtų kartu pateikti savo pageidavimus būsimai sistemai: kartais žmonės drauge gali pateikti daug išsamesnę informaciją negu kad apklausiant kiekvieną jų atskirai
    • Reikalavimų surinkimą palengvinantys susirinkimai (2)
      • Taip pat šis reikalavimų surinkimo metodas leidžia išvengti reikalavimų konfliktų, kylančių dėl suinteresuotų asmenų grupių skirtingų poreikių
      • Vienas iš gerai žinomų šio metodų variantų yra proto šturmas ( brain storming )
    • Stebėjimas
      • Stebėjimo metu sistemų analitikai dažnai ateina į būsimų vartotojų įmonę dirbti, kad geriau susipažintų su ten vykstančiais procesais ir egzistuojančia darbo aplinka
      • Taip pat surenkami visi įmanomi dalykinės srities dokumentai, kurie padeda projektuoti kuriamos sistemos ataskaitas ir duomenų įvedimo formas
    • Reikalavimų analizė ir atestavimas
    • Reikalavimų analizės procesas
      • Reikalavimų analizė skirta suklasifikuoti surinktus reikalavimus ir surasti netikslumus bei prieštaravimus, esančius tarp surinktų reikalavimų
    • Reikalavimų klasifikavimas (1)
      • Pagal tipą: funkcinis ar nefunkcinis reikalavimas
      • Pagal reikalavimo šaltinį: ar reikalavimas yra pateiktas vieno iš sistema suinteresuotų asmenų, ar tiesiog reikalavimas išplaukė iš kurio nors aukštesnio lygio reikalavimo
      • Ar tai produkto, ar proceso reikalavimas
    • Reikalavimų klasifikavimas (2)
      • Pagal prioritetą: kuo aukštesnis reikalavimo prioritetas, tuo jis svarbesnis jį iškėlusiam šaltiniui
      • Pagal keitimosi lygį: apgalvojama, kokia tikimybė, kad šis reikalavimas gali pasikeisti projekto vykdymo metu
    • Reikalavimų atestavimas
      • Vertinant surinktus reikalavimus, reikia atsakyti į tokius klausimus:
        • Ar visi reikalavimai yra užrašyti aiškiai?
        • Ar reikalavimuose nenaudojami jokie kompiuteriniai žargonai?
        • Ar aukštesnio lygio ( top-level ) funkcijos atitinka užsakovo reikalavimus?
        • Ar visos aukštesnio lygio funkcijos yra išskaidytos į žemesnio lygio funkcijas?
        • Kaip reikalavimai bus įvertinti?
        • Ar reikalinga realizuoti visus reikalavimus?