Lataa esitys
Esittely latautuu. Ole hyvä ja odota
JulkaistuTaisto Melasniemi Muutettu yli 8 vuotta sitten
1
Ohjelmistotekniikka Specifikaatiot ja dokumentointi Kevät 2002 Päivi Ovaska LTKK/Tite.
2
Speksaamisesta Speksaamisesta yleisesti Määrittelyvaihe Esimerkki
3
Motto "Ohjelmistospesifikaation lukeminen on kuin pyhän kirjan lukemista - jos lukee itsekseen voi ymmärtää miten haluaa, jos pyytää jonkun selittämään ymmärtää miten toinen haluaa, parasta olisi saada jumala(asiakas) paikan päälle selittämään mitä hän tarkoittaa." tekn.yo Jan Laakso projektityökurssilla
4
Spesifikaatio Määrittely: Mitä? Suunnittelu: Miten? Määrittelyn ja suunnittelun sisältö vaihtelee tilanteesta riippuen esim. työasemasovelluksen määrittely näyttöjä ja toimintoja, sulautettujen ohjelmistot rajapintoja antureihin ja toimilaitteisiin Määrittely ja suunnittelu (toteutus myös) specifikaatioiden laatimista Specifikaatio määrittelee, miten vaiheen syötteet, vaatimukset, muutetaan seuraavan vaiheen vaatimuksiksi
5
Ohjelmistojen tuottaminen = speksien tuottamista?
6
Speksattavat asiat (pelkistetty kuva) Spesifikaatio N spesifiointi toiminnalliset vaatimukset ei-toiminnalliset vaatimukset reunaehdot ja rajoitteet Spesifikaatio N+1 toiminnalliset vaatimukset ei-toiminnalliset vaatimukset reunaehdot ja rajoitteet Verifiointi esimerkiksi tarkastamalla vaatimukset testaussuunnitelmat edellisen version specifikaatiot
7
Täydellisen speksin/vaatimuksen ominaisuuksia kaikki tarpeellinen, ei mitään turhaa tarkkuus virheettömyys ymmärrettävyys testattavuus: miten voidaan "mitata", onko vaatimus täytetty jäljitettävyys: mistä vaatimus on peräisin, miten tärkeä se on
8
Esimerkkejä Järjestelmän käytettävissä on 64k-tavun muisti Luokalla voi siis olla vain yksi luokanvalvoja? Varaston kiertonopeus kasvaa.
9
Hyvä speksin ominaisuudet Sujuva ja selkeä kirjallinen esitys ”Jos kuukauden toteutunut myynti alittaa tavoitteet, tulostetaan raportti, ellei toteutuneen myynnin ja tavoitteen ero ole vähemmän kuin puolet edellisen kuukauden tavoitteen ja toteutuneen myynnin erosta, tai toteutunut myynti alittaa tavoitteen alle 5%” Onko selkeä speksi?
10
Kuvaustekniikat ja menetelmät Kuvaustekniikat ”kieliä” erilaisten asioiden ilmaisemiseksi esim. käyttötapauskaaviot, luokkakaaviot, tilakaaviot – suunnittelutyön apuvälineitä, työn tulosten dokumentointi Menetelmät tapoja soveltaa kuvaustekniikoita, esim. OMT Huom! UML on standardi ohjelmistojen esitystavasta. Kuvaa, miten oliopohjaisia järjestelmiä kuvataan. Ei liity varsinaisesti mihinkään menetelmään
11
Menetelmät, välineet Kuvaustekniikat: luokkakaaviot, tilakaaviot, tapahtumasekvenssikaaviot… Menetelmä = kuvaustekniikat + ohjeistus – SA/RT, OMT, Octopus, Fusion… Laatujärjestelmän kannalta dokumentointivetoista => ei suurta väliä, mikä menetelmä tuottaa dokumentit Välineet: – upper case: mallinnus & dokumentointivälineitä – lower case: sovellusten tuottaminen
12
Menetelmistä Informaalit menetelmät Puoliformaalit menetelmät Formaalit menetelmät
13
Informaalit menetelmät Seinätaulumenetelmät, jossa määriteltävät asiat kuvataan muodostamalla ratkaistavasta ongelmasta suuria selkeitä kaavioita seinälle Hyviä menetelmiä asiakasvaatimusten keräysvaiheessa
14
Puoliformaalit menetelmät Käytettyjen merkintätapojen semantiikka ei kovin tarkasti määritelty, voi tarpeen mukan soveltaa joko enemmän tai vähemmän formaalisti esimerkkeinä OMT ja SA menetelmät
15
Formaalit menetelmät Matemaattisia, usein formaaliin logiikkaan perustuvia täsmällisiä spesifiointimenetelmiä Kieli, jolla on tarkasti määritelty sanasto, syntaksi ja semantiikka esimerkkeinä Z, VDM, DisCO Auttavat spesifioimaan hyvin ja täydellisesti, voidaan todistaa ja todeta oikein toimiviksi Merkitys käytännön ohjelmistotyössä lähes olematon johtuen vaikeudesta ja epähavainnollisuudesta
16
Menetelmistä Yleisesti kaikkiin tilanteisiin soveltuvaa menetelmää ei ole olemassakaan Käytännön ohjelmistyötyössä menetelmillä ei ole niin suurta merkitystä kuin saattaisi kuvitella Aloittelevalle ohjelmistosuunnittelijalle menetelmät, ”keittokirjaohjeet” ovat tärkeitä, kokenut ohjelmistosuunnittelija pystyy sovittamaan ne kulloiseenkin tilanteeseen
17
Dokumentointi Laadukkaiden dokumenttien tuottaminen on käytännön ohjelmistotyön heikoimpia lenkkejä Dokumentointimallit ja tarkastusmenettelyt dokumentoinnin helpottamiseksi ja varmistamiseksi Yhdysvaltain puolustushallinnon projekteissa dokumentoinnin määrä on todettu projektin yleiseksi riskitekijäksi: dokumentointia yhtä ADA-kielen käskyä kohti n. 400 englannin kielen sanaa Ei dokumentointia dokumentoinnin vuoksi, vaan tilanteen mukaan, sisältö ratkaisee
18
Dokumentointi (2) 1) Mikä perusdokumentaatio on vähintään oltava: Määrittely- ja suunnitteludokumentaatio, testaussuunnitelma, testausraportti 2) Mitä nämä dokumentit pitävät sisällään Dokumentaation ylläpidettävyyden kannalta kannattaa välttää tarpeetonta redundanssia: tietty kuvaus vain yhdessä paikassa Erityisesti suunnitteludokumentaatiossa kannattaa tarkkuustaso valita niin, että ohjelmointivirheiden korjaamien ei välttämättä johda dokumentin päivittämiseen (esimerkiksi vain modulien rajapinnat, modulien sisäinen toiminta kommentteina koodissa)
19
Dokumenttityypit
20
Dokumentointi
21
Ohjelmistosuunnittelu tuotettaessa versiota k+1
22
Esimerkki: pieni ohjelmistoyritys (1)
23
Ylläpitodokumentaatio Projektin päättyessä tuotedokumentaatio muutetaan ylläpitoa palvelevaan muotoon esim. käyttöohje, asennus- ja operointiohje, koulutusmateriaali ja tekninen dokumentaatio asiakkaan tarpeiden mukaan!
24
Esimerkki: pieni ohjelmistoyritys (2)
25
Dokumentointimallit Kaikkien dokumenttien ulkoasun yhdenmukaisuus Osana laatujärjestelmän dokumentaatiota soveltamisohjeineen Tyyliopas lähdekoodin dokumentointia varten – modulin ulkoasu, muuttujien nimet, sisennykset, kommentoinnit, suosituksia työkalujen käytöstä IEEEn standardisarja ESAn standardi PSS-05-04 Issue 2 Dokumenttimallien suomenkielisiä versioita löytyy esim. http://www.cs.tut.fi/cgi- bin/laatu/sivuhaku.pl
Samankaltaiset esitykset
© 2024 SlidePlayer.fi Inc.
All rights reserved.