400 likes | 676 Views
Tarkvaratehnika. RUP-i mõisted Tarkvaraprojekti elutsükkel. Tere!. Tarkvaratehnika Kaspar Loog. Tänases loengus…. RUP-i põhimõisted Projektide tükeldamine. RUP-i põhimõisted. RUP - põhimõisted. Roll
E N D
Tarkvaratehnika RUP-i mõisted Tarkvaraprojekti elutsükkel
Tere! Tarkvaratehnika Kaspar Loog
Tänases loengus… • RUP-i põhimõisted • Projektide tükeldamine
RUP - põhimõisted • Roll Defineerib käitumisreeglid ja vastutuse meeskonnas ja kogu tarkvara arendavas organisatsioonis Üks isik -> mitu rolli Projektijuht, testija, analüütik, kodeerija…
RUP - põhimõisted • Tegevus (activity) Oluline tegevus, mis viiakse läbi rollitäitja poolt ja millel on projekti lõpetamise jaoks oluline tähtsus
RUP - põhimõisted • Tegevussamm (step) Tegevused on jaotatud sammudeks • Mõtlevad, arusaavad • Teostavad, tegevad • Ülevaatavad, hindavad
RUP - põhimõisted • Tööjuhis (work guideline) Tehnikad ja praktilised nõuanded mingi tegevuse läbiviimiseks
Artefakt ehk tehis (artefact) • Tegevuse tulemus või vahetulemus • Iga artefakti eest vastutab üks roll • Intervjuu üleskirjutus, analüüsidokument, programmkood, help
Projekti elutsükkel Algatus Kavandamine Realiseerimine Üleminek
Faasid vs ressursid Ressursid Algatus Kavandamine Realiseerimine Üleminek Aeg
Jätkuprojektid ja RUP Algne projekt Algatus Kavandamine Realiseerimine Üleminek Evolutsioon Versioon 1.0 Jätkuprojekt Algatus Kavandamine Realiseerimine Üleminek Evolutsioon Versioon 2.0
Algatus Algatus Kavandamine Realiseerimine Üleminek
Algatus – eesmärgid I • Projekti suuruse piiritlemine • Visioon • Vastuvõtukriteeriumid • Funktsionaalsuse määratlemine, mis peab tarkvaras sisalduma ja mis ei pea
Algatus – eesmärgid II • Põhiliste kasutuslugude määratlemine • Funktsionaalsus, mis mõjutab põhilisi disaini elemente • Funktsionaalsus, mida kõige rohkem vaja läheb
Algatus – eesmärgid III • Vähemalt ühe kandidaatarhitektuuri katsetamine või isegi demonstreerimine
Algatus – eesmärgid IV • Raha- ja ajahinnang kogu projektile • Raha- ja ajahinnang kavandamisfaasile, mis kohe peaks järgnema
Algatus – eesmärgid V • Riskide määratlemine • Määramatuse allikad
Algatus – eesmärgid VI • Projekti käiku toetava keskkonna loomise ettevalmistamine
Kavandamine Algatus Kavandamine Realiseerimine Üleminek
Kavandamine – eesmärgid I • Kinnitus, et arhitektuur, nõuded ja plaanido on edasiliikumiseks piisavalt stabiilsed • Kinnitus, et riskide maandamise plaan töötab • Kinnitus, et raha- ja ajakulu ei muutu ettearvamatuks!!!
Kavandamine – eesmärgid II • Tegeleda kõikide arhitektuuriliselt oluliste riskidega projekti käigus
Kavandamine – eesmärgid III • Arhitektuur, mis on loodud arvestades põhilisi kasutuslugusid • Sellistel alustel loodud arhitektuur maandab tavaliselt ka tarkvaraga seotud põhilised tehnilised riskid
Kavandamine – eesmärgid IV • Prototüübi loomine • Tarkvaratoote-eelne prototüüp (mis edasi areneb reaalseks tooteks) • Äraviskamiseks mõeldud prototüüp, mis demonstreerib • tehnoloogia nõuetele vastavust • komponentide taaskasutamist • tarkvara vajalikkust investoritele, klientidele või lõpp-kasutajatele
Kavandamine – eesmärgid V • Demonstreerida, et valitud arhitektuur toetab nõudeid mõistliku raha- ja ajakuluga
Kavandamine – eesmärgid VI • Projekti käiku toetava keskkonna loomine
Realiseerimine Algatus Kavandamine Realiseerimine Üleminek
Realiseerimine – eesmärgid I • Arenduskulude minimiseerimine • “Äraviskamise” ja ümbertegemise vältimine
Realiseerimine – eesmärgid II • “Kasulike” versioonide praktiline valmissaamine • alfa-, beeta- ja testversioonid
Realiseerimise eesmärgid IV • Kogu funktsionaalsuse analüüs, disain, arendus ja testimine • NB! Kavandamisel tehakse ainult mõned võtmekomponendid, realiseerimisel tuleb juba KÕIK ära teha
Realiseerimise eesmärgid V • Arendada valmis toode, mida võib anda juba lõppkasutajate kätte • Tuleb kirjeldada kõik ülejäävad kasutuslood, nendega seonduvad nõuded, disainida, realiseerida ja testida kogu ülejäänud tarkvara
Realiseerimise eesmärgid VI • Töö paralleelseks ajamine • Isegi väiksemate projektide puhul eksisteerib üksteisest sõltumatuid osasid. • Nii saab saavutada projekti ajagraafiku kokkupressimist • Paralleelsus eeldab ka head komponentpõhist arhitektuuri
Üleminekufaas Algatus Kavandamine Realiseerimine Üleminek
Üleminekufaas – eesmärgid I • beta-testimine, et kontrollida uue süsteemi vastavust eesmärkidele • beta-testimine ja paralleelne vana süsteemi paralleelne käigushoidmine andmete kontrolliks • käigusolevate andmebaaside ülekandmine uude süsteemi • kasutajate ja hooldajate koolitamine • tarkvara müügi- ja jaotuskanalitele kättesaadavaks tegemine
Üleminekufaas – eesmärgid II • Tarkvara jaotamisega seotud tegevused – installprogrammide seadistamine, pakendamine ja jaotus, helpdesk-i koolitus • vigade parandamine ja optimiseerimine kiiruse ja kasutatavuse eesmärgil • kasutajate “ise-hakkamasaamiseni” viimine • osapoolte vaheline kokkulepe, et visioonis kirjapandu on saavutatud
Selle loengu materjalid… http://www.hot.ee/kasparloog/
Järgmises loengus… Millega iteratsiooni käigus tegeletakse e. töövood
Küsimused ? ? ? ? ? ?