1 / 19

Ohjelmistotekniikka ja projektinhallinta, 4 op

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 ….

loan
Télécharger la présentation

Ohjelmistotekniikka ja projektinhallinta, 4 op

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Ohjelmistotekniikka ja projektinhallinta, 4 op OHJELMISTON ELINKAARIMALLIT Seppo Räsänen Savonia-ammattikorkeakoulu Terveysala, kuopio 18.8.2008

  2. Ohjelmiston elinkaari ja vaihejakomallit …

  3. Ohjelmiston elinkaari ja vaihejakomallit … • Elinkaari = Aika, joka kuluu ohjelmiston kehittämisen aloittamisesta käytöstä poistumiseen • Elinkaarimalleja ovat mm. • Vesiputous (yleisin malli) • Evo • Protoilu • Spiraali • Jne…

  4. mikä on ongelma, onko valmista ratkaisua, kustannukset, reunaehdot Esitutkimus millainen järjestelmä täyttää ongelman vaatimukset Määrittely miten järjestelmä toteutetaan ja ositetaan Suunnittelu Toteutus osien ohjelmointi Integrointi ja testaus osien liittäminen yhteen Ohjelman luovuttaminen asiakkaalle = asennus ja koulutus Käyttöönotto ja ylläpito Vesiputousmalli…

  5. Vesiputousmalli… • 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

  6. Vesiputousmalli… • 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

  7. Vesiputousmalli… • 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ä

  8. Vesiputousmalli… • 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

  9. Vesiputousmalli… • Ohjelmointi • kirjoitetaan ohjelma • ohjelmoija yleensä yksikkötestaa oman ”koodinsa ennen varsinaista testausvaihetta • Testaus • tavoite on yksinkertaisesti löytää ohjelmistosta virheitä • suoritetaan yleensä monella tasolla alkaen ohjelmointivaiheen yksikkötestauksella ja päättyen järjestelmätestaukseen • V-malli

  10. Järjestelmä- testaus Määrittely testauksen suunnittelu ja tulosten verifiointi Integrointi- testaus Arkkitehtuuri- suunnittelu Moduuli- testaus Moduuli- suunnittelu Ohjelmointi Vesiputousmalli… Hyväksymis- koe Tarpeet / sopimus -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

  11. Vesiputousmalli… • 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

  12. Vesiputousmalli… • 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

  13. Määrittely Määrittely Määrittely Suunnittelu Suunnittelu Suunnittelu Toteutus Toteutus Toteutus Testaus Testaus Testaus Versio 1 Versio 2 Versio 3 Evo-malli…

  14. Evo-malli… • 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

  15. Varsinainen tuoteprojekti Proto-projekti Määrittely Määrittely Suunnittelu Suunnittelu Toteutus Toteutus Testaus Testaus Prototyyppi Järjestelmä Protoilu…

  16. Protoilu… • 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

  17. Protoilu… • 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

  18. Spiraali… • Spiraalimallissa yhdistetään elinkaarimalli ja protoilu. • Spiraalimallissa huomioidaan myös yhtenä keskeisenä osana mahdolliset riskit. • Spiraalimalli soveltuu erityisesti suurten järjestelmien ja ohjelmien suunnitteluun.

  19. Ohjelmiston elinkaari ja vaihejakomallit … • Kysymyksiä • Kommentteja

More Related