ohjelmistotekniikka ja projektinhallinta, 4 op
DESCRIPTION
Ohjelmistotekniikka ja projektinhallinta, 4 op. OHJELMISTON ELINKAARIMALLIT Seppo Räsänen Savonia-ammattikorkeakoulu Terveysala, kuopio 18.8.2008. Ohjelmiston elinkaari ja vaihejakomallit …. Ohjelmiston elinkaari ja vaihejakomallit …. - PowerPoint PPT PresentationTRANSCRIPT
OHJELMISTON ELINKAARIMALLIT
SEPPO RÄSÄNENSAVONIA-AMMATTIKORKEAKOULU
TERVEYSALA, KUOPIO18.8.2008
1
Ohjelmistotekniikka ja Ohjelmistotekniikka ja projektinhallinta, 4 opprojektinhallinta, 4 op
Ohjelmiston elinkaari ja vaihejakomallit …
2
Ohjelmiston elinkaari ja vaihejakomallit …
3
Elinkaari = Aika, joka kuluu ohjelmiston kehittämisen aloittamisesta käytöstä poistumiseen
Elinkaarimalleja ovat mm. Vesiputous (yleisin malli) Evo Protoilu Spiraali Jne…
Vesiputousmalli…4
Esitutkimus
Määrittely
Suunnittelu
Toteutus
Integrointi ja testaus
Käyttöönottoja ylläpito
mikä on ongelma, onko valmista ratkaisua, kustannukset, reunaehdot
millainen järjestelmä täyttää ongelman vaatimukset
miten järjestelmä toteutetaan ja ositetaan
osien ohjelmointi
osien liittäminen yhteen
Ohjelmanluovuttaminen asiakkaalle = asennus ja koulutus
Vesiputousmalli…5
Kaikkiin vaiheisiin liittyy tarkastuksia, katselmointeja ja testausta laadunvarmistus Tarkastuksilla ja testaamisella pyritään
kitkemään virheet mahdollisimman aikaisessa vaiheessa kustannukset virheen korjaamiselle kertaantuvat mitä pitemmälle projektissa on edetty
Katselmoinnit järjestetään yleensä tietyn vaiheen lopuksi
Projektin tilanteen läpikäynti ja todennetaan, että kaikki tietyn vaiheen tavoitteet on saavutettu ja dokumentit ovat kunnossa
Vesiputousmalli…6
Esitutkimus tavoitteena on asettaa yleiset vaatimukset järjestelmälle määrittää asiakkaan tarpeet, asiakasvaatimukset,
odotukset ei ota kantaa millainen järjestelmän tulee olla antaa vastauksen kysymykseen, miksi järjestelmä tai
ohjelmisto tulisi tehdä tai miksi se pitäisi jättää tekemättä mielletään myös osaksi määrittelyä tarpeiden
analysointi ja tarkentuminen jatkuu läpi koko määrittelyvaiheen
Vesiputousmalli…7
Määrittely asiakasvaatimuksista johdetaan ohjelmistovaatimukset ohjelmistovaatimukset määrittelevät toteutettavan
järjestelmän tuotetaan dokumentti, jossa kuvataan ohjelmiston toiminnot,
toteutuksen ei-toiminnalliset vaatimukset ja rajoitukset toiminnallinen määrittely (IEEE830) Ohjelmiston toiminnoissa määritellään:
toteutettavat ominaisuudet, käyttöliittymä, liitynnät muihin järjestelmiin
Ei-toiminnallisia vaatimuksia: Vasteajat, käytettävyys, suoritusteho
Rajoituksissa kuvataan mm.: käytössä oleva muistin määrä, tietty ohjelmointiympäristö, tietty
käyttöjärjestelmä
Vesiputousmalli…8
Suunnittelu suunnitellaan toimintojen toteutus määrittely muutetaan tekniselle kielelle eli
järjestelmän toteutuksen kuvaukseksi tekninen määrittely (IEEE1016) jaetaan yleensä
kahteen osaan: arkkitehtuurisuunnittelu
osien työnjako ja rajapinnat tavoitteena toisistaan riippumattomat moduulit, jolloin yhden
moduulin muutokset eivät vaikuta muihin moduuleihin uudelleenkäytettävyyden lisääminen tekninen määrittely moduulisuunnittelu
moduulisuunnittelu suunnitellaan jokaisen itsenäisen moduulin sisäinen rakenne yksittäinen suunnittelija voi suunnitella, toteuttaa ja testata
moduulin
Vesiputousmalli…9
Ohjelmointi kirjoitetaan ohjelma ohjelmoija yleensä yksikkötestaa oman ”koodinsa
ennen varsinaista testausvaihettaTestaus
tavoite on yksinkertaisesti löytää ohjelmistosta virheitä
suoritetaan yleensä monella tasolla alkaen ohjelmointivaiheen yksikkötestauksella ja päättyen järjestelmätestaukseen
V-malli
Vesiputousmalli…10
-Moduulitestauksen paljastamat virheet ovat ohjelmointivirheitä-Integrointitestauksessa esiin tulevat virheet johtuvat suunnitteluvirheistä -Järjestelmätestaus vaiheessa paljastuvat virheet, voivat pahimmassa tapauksessa johtaa koko prosessin alkuun eli virheellisesti suoritettuun määrittelyvaiheeseen
Ohjelmointi
Määrittely
Arkkitehtuuri-suunnittelu
Moduuli-suunnittelu
Moduuli-testaus
Integrointi-testaus
Järjestelmä-testaustestauksen suunnittelu ja
tulosten verifiointi
Tarpeet / sopimus
Hyväksymis-koe
Vesiputousmalli…11
Moduulitestaus virheitä etsitään yksittäisistä moduuleista
testaus suunnitellaan moduulisuunnittelun yhteydessä Integrointitestaus
virheitä etsitään moduulien yhteistoiminnasta testaus suunnitellaan arkkitehtuurisuunnittelun yhteydessä
Järjestelmätestaus virheitä etsitään koko järjestelmän toiminnoista ja
suorituskyvystä testaus suunnitellaan määrittelyvaiheessa
Vesiputousmalli…12
Käyttöönotto- ja ylläpito koulutetaan käyttäjät otetaan järjestelmä tuotantokäyttöön ratkotaan asiakkaiden ongelmia korjataan virheitä muutetaan ohjelmaa vaatimusten muuttuessa lisätään uusia ominaisuuksia ohjelmaan
Evo-malli…13
Määrittely
Suunnittelu
Toteutus
Testaus
Versio 1
Määrittely
Suunnittelu
Toteutus
Testaus
Versio 2
Määrittely
Suunnittelu
Toteutus
Testaus
Versio 3
Evo-malli…14
Evo-malli pyritään ensimmäisessä vaiheessa rakentamaan
perusjärjestelmä, jota myöhemmissä vaiheissa kehitetään jokainen vaihe on vesiputousmallin mukainen voidaan käyttää:
tuotekehitysprojekteissa, joiden tarkoituksena on julkistaa esimerkiksi vuosittain uusi versio tuotteesta
projektissa, jossa versioita tehdään n kappaletta ennen lopullista järjestelmää. Ominaisuuksia lisätään kierros kierrokselta
ongelmaksi saattaa muodostua julkaistun version virheiden korjaus ja asiakkaiden ongelmien ratkominen
versioiden ominaisuudet tulee myös suunnitella järkevästi, ettei uusia ominaisuuksia lisätä liikaa tai liian vähän seuraavaan versioon
Protoilu…15
Määrittely
Suunnittelu
Toteutus
Testaus
Prototyyppi
Määrittely
Suunnittelu
Toteutus
Testaus
Järjestelmä
Proto-projekti Varsinainen tuoteprojekti
Protoilu…16
Protoilu tehdään jonkinlainen kokeilumalli ennen kuin varsinaista
järjestelmää aletaan kehittämään voidaan selvittää epäselviä asiakasvaatimuksia uudet tekniset ratkaisut voidaan testata prototyypeillä
ennen kuin päätetään ratkaisun käyttöönotosta käyttöliittymien suunnittelu on järkevää tehdä protoilemalla suorituskyky voidaan varmistaa etukäteen erityisillä
suorituskykyprototyypeillä Kun prototyyppi on kehitetty, niin sen jälkeen on useita
vaihtoehtoja jatkolle ajateltu järjestelmä ei tuo asiakkaalle lisäarvoa ja projekti
”ammutaan alas” tai aloitetaan protoilu alusta hieman eri perspektiivistä
määritellään järjestelmä, jota aletaan kehittämään alusta alkaen uudestaan
jatketaan prototyypin kehittelyä oikeaksi järjestelmäksi
Protoilu…17
Protoilu Protoilun ongelmana on, että asiakas saattaa luulla
järjestelmän olevan jo suurimmalta osin valmis todellisuudessa ”demo-polut” ovat yleensä kapeita ja
käyttäjien toimenpiteisiin vastataan esimerkiksi kovakoodatuilla viesteillä
Aina ei kannata protosta tehdä valmiin näköistä asiakkaalle selviää ohjelmiston tarkoitus, mutta myös se, että
työt ovat alkutekijöissään
Spiraali…18
Spiraalimallissa yhdistetään elinkaarimalli ja protoilu.
Spiraalimallissa huomioidaan myös yhtenä keskeisenä osana mahdolliset riskit.
Spiraalimalli soveltuu erityisesti suurten järjestelmien ja ohjelmien suunnitteluun.
Ohjelmiston elinkaari ja vaihejakomallit …
19
KysymyksiäKommentteja