Spesifikaatioiden laatiminen
|
|
- Tuulikki Seppälä
- 7 vuotta sitten
- Katselukertoja:
Transkriptio
1 Spesifikaatioiden laatiminen Luku tarkastelee ohjelmistotuotantoprosessia spesifikaatioiden ketjuna. Ohjelmistotuotannossa korostuvat jäljitettävissä olevat hyvin dokumentoidut ratkaisut, joiden perustan luovat tarkoituksenmukaisesti valitut kuvaustekniikat ja menetelmät. Dokumentointi on suunnitelmallista, laatujärjestelmän periaatteita toteuttavaa toimintaa. Tuotedokumentaatio muodostuu erityyppisiä tarpeita palvelevista dokumenteista, jotka syntyvät prosessin eri vaiheissa iteratiivisesti tarkentuen. Luvussa esitetään malli dokumentointijärjestelmälle sekä määrittely- ja suunnitteludokumentaation perusrakenne. Aihetta käsitellään myös työkalujen ja standardien näkökulmasta. Exit
2 Sisällys Spesifikaatioiden laatiminen Hyvä spesifikaatio Esimerkki 1. Esimerkki 2. Kuvaustekniikat Spesifiointimenetelmät Kuvaustekniikat Spesifiointimenetelmät Menetelmien luokittelu SA-määrittelymenetelmä OMT++ Simplified method 4+1 View UML-kuvausmenetelmien ilmaisuvoima Dokumentointi Tuotedokumentit Laatujärjestelmän dokumentit Dokumentointi EVO-mallissa Ylläpitodokumentaatio Esimerkki Dokumentointimallit Määrittely Suunnittelu Arkkitehtuurisuunnittelu Moduulisuunnittelu Tekninen määrittely Työkalut Standardit Kertauskysymykset Spesifikaatioiden laatiminen 2
3 Spesifikaatioiden laatiminen Käsitellään spesifikaatioiden (dokumentaation) merkitystä ohjelmistotuotannossa kuvaustekniikoiden soveltamista (kuvausmenetelmät) dokumentoinissa ohjelmistotuotanto on jalostuvien spesifikaatioiden muodostama vaiheittain etenevä prosessi mitä-miten problematiikka alimman tason spesifikaatio: ohjelmakoodi Ohjelmistotyö Ohjelmistotyö on on dokumenttien dokumenttien tuottamista tuottamista Spesifikaatioiden laatiminen 3
4 spesifikaatioden laatiminen Menetelmät, kuvaustekniikat käyttäjien tarpeet, ideat, rajoitukset reunaehdot mitä esitutkimus määrittely miten mitä miten mitä miten mitä miten mitä toiminnallinen määrittely tekninen määrittely asiakasvaatimukset arkkitehtuurisuunnittelu moduulisuunnittelu moduulisuunnitelmat verifiointi verifiointi verifiointi verifiointi hyväksymistestaus järjestelmätestaus integrointitestaus moduulitestaus ohjelmointi miten ohjelmakoodi verifiointi Spesifikaatioiden laatiminen 4
5 spesifikaatioden laatiminen ohjelmistokehityksen elinkaaressa määrittely vastaa kysymykseen mitä? suunnittelu vastaa kysytmykseen miten? yleisesti ohjelmistotyön tehtävänä on jalostaa spesifikaatiota vaiheittain kohti lopullista toimivaa järjestelmää» jokaisen vaiheen voidaan katsoa tuottavan spesifikaation mitä seuraavassa vaiheessa on ratkaistava» kukin vaihe jalostaa spesifikaatiosta ratkaisun ko. elinkaarivaiheen tasolla kuvataan mitä tiedetään» oleellinen kiteyttäen (kuvausvälineen primitiivisyys)» täsmällisesti ratkaisua jäykistäviä päätöksiä pyritään lykkäämään elinkaaressa mahdollisimman pitkälle (tarkentuvat kuvaustasot) Spesifikaatioiden laatiminen 5
6 spesifikaatioden laatiminen Spesifikaatio N Spesifikaatio N+1 reunaehdot ja rajoitteet reunaehdot ja rajoitteet ei-toiminnalliset vaatimukset vaatimukset spesifiointi ei-toiminnalliset vaatimukset toiminnalliset vaatimukset toiminnalliset vaatimukset Verifiointi esimerkiksi tarkastamalla Prosessissa Prosessissa kussakin kussakin vaiheessa vaiheessa edellisen edellisen vaiheen vaiheen vaatimukset vaatimukset muuttuvat muuttuvat seuraavan seuraavan vaiheen vaiheen vaatimuksiksi. vaatimuksiksi. Spesifikaatioiden laatiminen 6
7 spesifikaatioden laatiminen Toiminnalliset ominaisuudet: järjestelmän toimintaa kuvaavat sekä käyttäytymisen ja liitynnät määrittävät ominaisuudet rajapinnat ulkomaailmaan, tiedot, käsittelysäännöt,... Ei-toiminnalliset ominaisuudet: suorituskyky, liitettävyys, siirrettävyys, turvallisuus,... Reunaehdot ja rajoitteet: mm. laitteisto- ja ohjelmistorajoitteet, hinta, aikataulu, työkalut, tyylioppaat, lait, standardit Spesifikaatioiden laatiminen 7
8 spesifikaatioden laatiminen työ käytännössä: spesifikaatiossa olevat virheet puutteet ristiriitaisuudet epätäsmällisyydet aiheuttavat tarpeen kehitystyö iterointiin spesifikaatioita tukevat dokumentit testaussuunnitelmat laatusuunnitelma, projektisuunnitelma... Spesifikaatioiden laatiminen 8
9 Hyvä spesifikaatio ymmärrettävä selkeät sanamuodot, lukijan huomioonottava kuvaustapa, yksinkertainen kaikkien tarvitsijoiden yhteinen näkemys kuvattavasta kohteesta miten saavutettavissa? täydellinen määrittelee kaikki tarvittavat asiat ja vain ne myös ympäristö kuvataan tarvittavassa laajuudessa miten saavutettavissa? tarkka tarkkuus vs. ymmärrettävyys vs. luettavuus miten saavutettavissa? Spesifikaatioiden laatiminen 9
10 hyvä spesifikaatio virheetön miten arvioitavissa? testattava sisältää ilmaisuita, joita vastaan vaihetuote voidaan verifioida yksiselitteisesti jäljitettävä katkeamaton ketju asiakasvaatimuksista toteutukseen ylöspäin / alaspäin jäljitettävyys toteutettavissa rajaehtojen puitteissa Spesifikaatioiden laatiminen 10
11 hyvä spesifikaatio muita ominaisuuksia kuvaa toiminnan, ei toteutusta toteutettavissa reunaehtojen puitteissa ristiriidaton, yksikäsitteinen ylläpidettävä, ei sisällä tarpeetonta redundanssia ongelmia vaatimukset ovat keskenään ristiriidassa lukijoiden erilaiset taustat - erilainen tulkinta samalle asialle (esim. termit) asiakas-toimittaja kommunikaatio todellisten tarpeiden selvittäminen saattaa olla vaikeaa Spesifikaatioiden laatiminen 11
12 hyvä spesifikaatio kaikki asiaan liittyvät tiedot eivät välttämättä ole tiedossa ja ne voivat muuttua poikkeustilanteiden huomioonottaminen kiire määrittelyssä (miksi?) määrittelymuutokset ovat kalliita (miksi?) analysis paralysis (määrittelyn loputon jatkuminen) railroad paradox (suunnan muuttamisen vaikeus) lopullisen onnistumisen mittari asiakkaan saama hyöty Spesifikaatioiden laatiminen 12
13 hyvä spesifikaatio Esimerkkejä (oppikirjasta) järjestelmän käytössä on 64 kb muistia» muistin luonnetta ei ole määritelty (ROM, RAM) luokalla voi olla vain yksi luokanvalvoja» voiko tehtävä olla jaettu (vaikuttaa tietokantaratkaisuun oleellisesti) 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%» täsmällisyys ja ymmärrettävyys? keskimääräinen vastausaika on alle 5 sek» onko käyttäjän mitattavissa? mahdollistaa suuretkin poikkeamat! kun reset-nappulaa painetaan punainen merkkivalo saattaa syttyä» ei määritä toimintaa täsmällisesti Spesifikaatioiden laatiminen 13
14 Esimerkki: kirjastojärjestelmä Kirjastojärjestelmään sisältyy mm. seuraavia tapahtumia 1. Lainaa / palauta kirja 2. Lisää / poista kirja kirjastosta 3. Anna luettelo tietyn tekijän tai aiheluokan kirjoista 4. Anna luettelo tietyn lainaajan lainaamista kirjoista 5. Anna tiettyjen kirjojen viimeisimmät lainaajat Arvioi Arvioi määrittelyn määrittelyn hyvyyttä. hyvyyttä. Seuraavalla Seuraavalla kalvolla kalvolla on on joitain joitain kysymyksiä, kysymyksiä, joita joita tässä tässä yhteydessä yhteydessä ainakin ainakin aluksi aluksi kannattaa kannattaa pohtia pohtia Tapahtumat 1,2,5 ovat sallittuja vain henkilökuntaan kuuluville. Muut voivat käyttää tapahtumaa 4 saadakseen selville itsellään olevat kirjat. Lisäksi 1. Kaikkien kirjojen tulee olla joko lainattavissa tai lainassa 2. Kirja ei voi olla samaan aikaan lainattavissa ja lainassa 3. Lainaajalla voi olla korkeintaan ennalta määrätyn rajan määräämä määrä kirjoja lainassa Spesifikaatioiden laatiminen 14
15 esimerkki: kirjastojärjestelmä Kysymyksiä, joihin määrittely ei ota selvää kantaa saavatko henkilökuntaan kuulumattomat lainata kirjoja ollenkaan onko kirja fyysinen kirja vai teos yleensä tapahtuma 5: onko kyse yksi / kirja vai halutaanko ylläpitää historiaa mitä kirjan poistaminen tarkoittaa voiko poistettu kirja palata (esim. korjauksen jälkeen) määritetäänkö lainatavien kirjojen maksimimäärä kirjastolle, henkilölle vai kirjalle miten kirjat luokitellaan voiko samalla kirjalla olla monta luokkaa Spesifikaatioiden laatiminen 15
16 Esimerkki: lentokoneen laskutelineet Laskutelineet sisään -nappia painettaessa vedetään laskutelineet sisään F16: F16: nappia nappiapainettaessa painettaessalaskutelineet laskutelineetvedettiin vedettiinsisään sisään- -koneen koneenollessa ollessakentällä Spesifikaatioiden laatiminen 16
17 Kuvaustekniikat kuvaustekniikka, notaatio: kuvauksen kieli kommunikaatio työn apuväline syntaksi muodot, kielen rakenne; semantiikka merkitys ja esitetyn tulkinta kuvausmenetelmä: tapa soveltaa kuvaustekniikkaa kehitysmenetelmät, määrittelymenetelmät, suunnittelumenetelmät säännöstö kuvausmenetelmien soveltamiseksi tarvittavan kokonaiskuvauksen aikaansaamiseksi» mitä kuvausmenetelmiä tarvitaan, jotta kaikki hyvän kuvauksen vaatimukset täyttyvät tehtävänä olevan dokumentaation näkökulmasta esim. SA, RUP, OMT++, Spesifikaatioiden laatiminen 17
18 Spesifiointimenetelmät kuvaustekniikoiden käytön ja yhdistelyn ohjeistus tarkoituksenmukainen tapa soveltaa tekniikoita vaatimukset täyttävän spesifikaatioketjun aikaansaamiseksi kehitysmenetelmiä: SA: tarkoitettu vaatimusten analysointiin ja määrittelyyyn (määrittelymenetelmä)» kuvausmenetelmät: luonnollinen kieli, tietovirtakaaviot, käsitekaaviot, OMT++: kattaa oliopohjaisen järjestelmän koko elinkaaren (määrittely, suunnittelu, toteutus, testaus)» kuvausmenetelmät: luonnollinen kieli, käyttötapaukset, luokkakaavio, RUP: UML-tekniikan soveltamisen määrittävä oliopohjainen menetelmä; kattaa järjestelmän koko elinkaaren kehitysmenetelmät eivät kuitenkaan rajaa kuvausmenetelmien käyttömahdollisuutta (tarkoituksenmukaisuus) "Methodology? "Methodology? We We don't don'tneed need any anystinkin' methodology." methodology." "cowboy "cowboy coders" coders" or or the the no-methodology no-methodology methodology methodology Spesifikaatioiden laatiminen 18
19 spesifiointimenetelmät laatujärjestelmä määrittää menetelmien soveltamistavan dokumentit ja kuvaustekniikat sekä dokumentaation rakenne yleisiä, kaikkiin tilanteisiin ja ympäristöihin soveltuvia menetelmiä ei ole menetelmä määrittelee käytön puitteet ja käytettävät tekniikat; näitä sovelletaan tarpeen mukaan kohdeympäristöön dokumenttimallit antavat muistilistamaista ja ulkoasua standardoivaa tukea työlle Maalaisjärjen Maalaisjärjen käyttö käyttö on on sallittu sallittu dokumentoinnissakin Anon Anon Spesifikaatioiden laatiminen 19
20 Menetelmien luokittelu informaalit kuvausmenetelmät ja tekniikat käyttäjälle luonnollinen tapa ilman formalismin kuvaamista» luonnollinen kieli» seinätaulutekniikka: avoin kuvausympäristö, teknisesti yksinkertaiset kuvaukset, vapaata vuorovaikutusta tukeva käytäntö puoliformaalit menetelmät ja -tekniikat formalismi on määritelty, mutta se ei ole täsmällinen» esimerkiksi SA, OMT++» jako: tietokeskeiset / toimintokeskeiset / sekamenetelmät soveltamistapa voi olla informaalista formaaliin formaalit menetelmät ja -tekniikat matemaattisia, tarkkoja notaatioita (kieliä)» esimerkiksi Z, VDM, DisCo, Lotos, tilakaaviot, Petriverkot täsmällinen formaali kuvausmenetelmän määrittely Spesifikaatioiden laatiminen 20
21 menetelmien luokittelu Luonnollisuus Täsmällisyyden Täsmällisyyden lisääntyessä lisääntyessä luonnollisuus luonnollisuus käyttäjälle käyttäjälle vähenee vähenee (vaatii (vaatii opiskelua opiskelua = formalismin formalismin omaksumista) omaksumista) o luonnollinen kieli Formalismi Formalismi vaikka vaikka ei ei olekaan o seinätaulutekniikka olekaan käyttäjälle käyttäjälle aina aina luonnollinen luonnollinen tapa tapa kuvauksen kuvauksen tekemiseen, tekemiseen, tukee o SA tukee olennaisten olennaisten seikkojen seikkojen kiteyttämisprosessiprosessia ohjelmistotyössä. o OMT++ kiteyttämis- ohjelmistotyössä. o DisCo Täsmällisyys Spesifikaatioiden laatiminen 21
22 menetelmien luokittelu Näkökulmia kuvausmenetelmiin formaalit menetelmät täsmällisiä ja tukevat määrittelyn täydellisyyttä epähavainnollisia opittu menetelmä muuttuu kuitenkin ajan myötä luonnolliseksi suoritettavat spesifikaatiot jotkin (formaalit) kuvausmenetelmät mahdollistavat toiminnan animoinnin ja/tai suorittamalla testaamisen todistettavat spesifikaatiot logiikkaan pohjautuva spesifikaation toiminnan oikeellisuuden osoittaminen yleensä osa kuvauksen tuottavaa kehitysympäristöä koodia generoivat spesifikaatiot seuraavan kuvaustason tuottaminen automaattisesti laaditun kuvauksen pohjalta» tietovirtakaavio -> koodirungot» luokkakaavio (käsitekaavio) -> tietokantamäärittelyt Spesifikaatioiden laatiminen 22
23 SA-määrittelymenetelmä Tapahtumalista kirja hankitaan kirjastoon kirja lainataan kirja palautetaan kirja viedään hyllyyn kirja poistetaan myönnetään lainausoikeus poistetaan lainausoikeus tulostetaan luettelo lainausajan ylittäneistä lainauksista ER-kaaviot Tietohakemisto kirjatiedot = nimi + 0{tekijä}n + ISBN+ kustantaja + vuosi Liittymäkaavio Hierarkiset tietovirtakaaviot SA-määrittelymenetelmässä käytettäviä käytettäviä kuvausmenetelmiä kuvausmenetelmiä ovat ovat -tapahtumalistat -tapahtumalistat -tietovirtakaaviot -tietovirtakaaviot -käsitekaaviot -käsitekaaviot -tilakaaviot -tilakaaviot -toimintokuvaukset -toimintokuvaukset (minispesifikaatiot) (minispesifikaatiot) -tietohakemistokuvaukset -luonnollinen -luonnollinen kieli kieli Tilakaaviot Toiminnallisuuden hahmottelu Tilattu Hyllyssä Lainassa Minispesifikaatiot if a<b then... Poistettu Kadoksissa Korjattavana Spesifikaatioiden laatiminen 23
24 OMT++ Vaatimusten kartoittaminen Feasibility Study -vaatimukset -käyttötapaukset Kuvaukset: Kuvaukset: Käyttötapaukset Käyttötapaukset Luokkakaaviot Luokkakaaviot Tapahtumasekvenssikaaviot Tapahtumasekvenssikaaviot Tilakaaviot Tilakaaviot olioanalyysi käyttäytymisanalyysi kälimäärittely kälitehtävien määrittely ohjelmalohkon määrittely User Interface Specification - dialogikaaviot (tilakaaviot) - tehtäväkuvaukset (tapahtumasekvenssikaaviot) olioiden suunnittelu ohjelmalohkon rajapintamäärittely käyttäytymisen suunnittelu luokkamäärittely luokkien toteutus Program Block Technical Specification -suunnittelun oliomallit -suunnittelun tapahtumasekvenssikaaviot testaus Service Block Functional Specification - analyysin oliomalli - operaatiokuvaukset (tapahtumasekvenssikaaviot) Service Block Technical Specification -ohjelmalohkojen rajapinnat -ohjelmalohkojen kommunikointikaaviot (tapahtumasekvenssikaaviot) Ohjemakoodi -luokkamäärittely -luokkien toteutus Spesifikaatioiden laatiminen 24
25 Simplified method Vaatimukset Use Case A Use Case B Use Case C Muut Vaat. Suunnitteluoliomalli Määrittelyoliomalli Toimintolista Operaatio Operaatio X attribute attribute Y attribute Operaatio Operaatio Simplified method X function2 function3 attribute attribute X function2 function3 attribute attribute Tapahtumakaaviot User X Y Z function1 function2 function3 User X Y Z function4 function5 X function2 function3 attribute attribute function6 Määrittelyt Class Y { function3(); function5(); X x; } Koodi Y::function5() { x function6(); } Testitapaukset Use Case A Use Case B Use Case C Muut Vaat. Kuvaukset Kuvaukset Käyttötapaukset Operaatiokuvaukset Käyttötapaukset Luokkakaaviot Operaatiokuvaukset Tapahtumasekvenssit Luokkakaaviot Tapahtumasekvenssit Spesifikaatioiden laatiminen 25
26 4+1 View (UML) komponenttikaaviot komponenttikaaviot käyttötapauskaaviot käyttötapauskaaviot aktiviteettikaaviot aktiviteettikaaviot komponenttinäkymä käyttötapaus näkymä looginen näkymä staattinen:: staattinen:: luokkakaaviot luokkakaaviot oliokaaviot oliokaaviot dynaaminen dynaaminen tilakaaviot tilakaaviot sekvenssikaaviot sekvenssikaaviot yhteistyökaaviot yhteistyökaaviot aktiviteettikaaviot aktiviteettikaaviot sijoittelu näkymä samanaikaisuus näkymä Spesifikaatioiden laatiminen 26
27 UML-kuvausmenetelmien ilmaisuvoima Luokkakaaviot Komponenttikaaviot Sijoittelukaaviot Tapahtumasekvenssik.:t Yhteistyökaaviot Tilakaaviot Aktiviteettikaaviot Rakenne Vuorovaikutus Olion käyttäytyminen Käyttötapauskaaviot Järjestelmän käyttäytyminen Spesifikaatioiden laatiminen 27
28 Dokumentointi ohjelmistotyö on dokumenttien tuottamista käytännössä dokumentoinnissa ovat ohjelmistotyön suurimmat laatuongelmat jälkikäteisdokumentointi puutteet rakenteissa, sisällössä, esitystavoissa, ylläpidon ongelmat - sidokset dokumenttien välillä (dokumentaation yhdenmukaisuus ja eheys) Spesifikaatioiden laatiminen 28
29 dokumentointi luo perusteet Ohjelmistotyön prosessi kuvaa työn tulokset Dokumentoint järjestelmä 1..* 1..* käyttää Määrittelymenetelmä Kuvaustekniikka käyttää Spesifikaatioiden laatiminen 29
30 Dokumenttien luonne dokumentaation tehtävänä on dokumentoida tehdyt ratkaisut (sovitulla tavalla) tukea kehitystyötä (ratkaisuiden siirto)» edellisen vaiheen dokumentaatio luo perustan kunkin vaiheen työlle käytännön dokumentointityö saatetaan tehdä jälkikäteen; tällöin syynä tähän on kiire tai dokumentointityön huono imago merkitys kehitystyötä tukevana toimintona poistuu dokumenttien laatu (kuvaavuus) heikkenee dokumentointistandardien ja mallien rooli good practice hyväksi koettu käytäntö, muistilista lukijalle mallia noudattava dokumentti on odotuksia vastaava dokumentoinnin taso ja määrä riippuu projektista Spesifikaatioiden laatiminen 30
31 dokumenttien luonne mikä on dokumentaation oikea määrä liika dokumentaatio on yhtä suuri ongelma kuin puutteellinen dokumentaatio dokumenttien luokittelu laatukäsikirjaan liittyvät dokumentit projektinhallintaan liittyvät dokumentit tuotedokumentit (ks. kuva) Spesifikaatioiden laatiminen 31
32 ... dokumenttien luonne Seurantaraportit, tarkastuspöytäkirjat Laatujärjestelmän ohjeistus Laatujärjestelmä Tuotekohtaiset ohjeet Ohjaus ja seuranta Projekti Projektisuunnitelma Syõtedokumentit Tulosdokumentit projektidokumentaatio tuotedokumentaatio ohjeistus Työdokumentit Laatujärjestelmän raportit: mittaus, auditointi... Spesifikaatioiden laatiminen 32
33 Tuotedokumentit tuotteeseen tai tuoteperheeseen liittyvät dokumentit projektikohtaiset tuotedokumentit tuotetta kuvaavat, projektityön tuloksena syntyvät dokumentit projektitoimintaa ohjaavat ja kuvaavat dokumentit tuotekohtaiset tuotedokumentit tuote voi sisältää useita projekteja, joista muodostuu tuotedokumentaatio projektin päätyttyä projektikohtaiset tuotedokumentit muokataan osaksi tuotekohtaista dokumentaatiota (muokkaus) Spesifikaatioiden laatiminen 33
34 Laatujärjestelmän dokumentit määrittää puitteet muulle dokumentaatiolle laatujärjestelmädokumentteja ovat mm. laatukäsikirja ohjeistukset ja dokumenttimallit laatujärjestelmän auditointiin liittyvät raportit erinäiset muistiot: tarkastusten pöytäkirjat, auditointiraportit, mittaustiedostot,... toiminnan kehittämisfunktio Spesifikaatioiden laatiminen 34
35 Projektidokumentit projektikohtaisia, kertaluonteisia dokumentteja projektin päätyttyä arkistoidaan projektidokumentteja ovat mm. sopimus projektisuunnitelma projektin seurantaraportit projektin loppuraportti Spesifikaatioiden laatiminen 35
36 Tuotedokumentaation rakentuminen Esitutkimus Esitutkimus Alustava sopimus, alustava projektisuunnitelma, alustava toiminnallinen määrittely, alustava toteutussuunnittelu, alustava testaussuunnittelu, alustava tuotteenhallintasuunnitelma, alustava laatusuunnitelma, dokumentointisuunnitelma. Määrittely Määrittely Tarkennettu sopimus, tarkennettu projektisuunnitelma, toiminnallinen määrittely, alustava tekninen määrittely, tarkennettu testaussuunnitelma (järjestelmä- ja hyväksymistestaus) tarkennettu tuotteenhallintasuunnitelma, tarkennettu laatusuunnitelma, alustava käyttöohje. Suunnittelu Suunnittelu Tekninen määrittely, integrointitestaussuunnitelma, tarkennettu käyttöohje, alustava ylläpito-ohje, alustava operointi/huolto-ohje, alustava asennusohje. Toteutus Toteutus Moduulisuunnitelmat, moduulitestaussuunnitelmat, moduulitestauspöytäkirjat, koodimoduulit, integrointitestaussuunnitelma, integrointitestauspöytäkirjat, integroitu ohjelmisto, tarkennettu ylläpito-ohje, tarkennettu operointi/huolto-ohje, tarkennettu asennusohje. Testaus Testaus Järjestelmätestauspöytäkirjat, hyväksymistestauspöytäkirjat, paketointi-ohje, koulutusmateriaali, tuotedokumenttien viimeistellyt versiot. 11/04/2002 Spesifikaatioiden laatiminen 36 Exit
37 Dokumentointi EVO-mallissa Dokumentaation rakentuminen projekti sisältää tuotteen vanhan version (k) kehittämisen uudeksi versioksi (k+1) lisäyksiä poistoja muutoksia korjauksia vanha spesifikaatio (versio k) toimii uuden (versio k+1) pohjana [ks. kuva] Määrittely Suunnittelu Toteutus Testaus Määrittely Suunnittelu Toteutus Testaus Määrittely Suunnittelu Toteutus Testaus Versio 1 Versio 2 Versio 3... Spesifikaatioiden laatiminen 37
38 Dokumentointi EVO-mallissa Ohjelmakoodi, versio k Tuotteen toiminnallinen määrittely, versio k Tuotteen tekninen määrittely, versio k Tuotteen tekninen määrittely, versio k+1 Tuotteen dokumentit Projektin dokumentit Projektin toiminnallinen määrittely (uudet ja muuttuneet vaatimukset) (uudet vaatimukset) Arkkitehtuurisuunnittelu Tuotedokumentaation päivitys version k+1 tasolle Projektin tekninen määrittely Tuotteen Tuotteen dokumentaatio dokumentaatio on on pidettävä pidettävä riittävän riittävän yleisenä, yleisenä, jotta jotta pienet pienet muutokset muutokset eivät eivät synnytä synnytä dokumenttien dokumenttien päivitystarvetta. päivitystarvetta. Projektidokumentaatio Projektidokumentaatio voi voi sisältää sisältää tätä tätä tarkempia tarkempia kuvauksia. kuvauksia. Suunnitteluvaihe EVO-mallin mukaisessa ohjelmistokehityksessä Spesifikaatioiden laatiminen 38
39 Ylläpitodokumentaatio projektin päättyessä tuotedokumentaatio muutetaan ylläpitoa tukevaan muotoon ylläpidon tuotedokumentaation rakenne (esim.) käyttöohje asennus- ja operointiohje koulutusmateriaali tekninen dokumentaatio» toiminnallinen määrittely» tekninen määrittely» testauksen ohjeistukset» tuotteenhallinan ohjeistukset Spesifikaatioiden laatiminen 39
40 ... ylläpitodokumentaatio tarpeettoman redundanssin välttäminen (dokumenttien ylläpidettävyys) dokumentaation eheys suunnitteludokumentaation tarkkuustaso on hyvä pitää sellaisena, että pienet muutokset alemmalla dokumentointitasolla (esim. ohjelmavirheiden korjaaminen) eivät edellytä dokumentaation muuttamista rinnakkaisten dokumenttien eheys: yhteys eri dokumenttien välillä peräkkäisten dokumenttien eheys: yhteys saman kuvauskohteen eri kuvaustasojen välillä ohjelmakoodin kommentointi: moduulisuunnittelun tulokset kommentteina ohjelmassa kommenteista koodiksi Spesifikaatioiden laatiminen 40
41 Esimerkki projektidokumentaatiosta Palaute Overflow Oy resurssit, ideat neuvottelut/ valmistelu projekti tai hanke asettaminen käyttöönotto käyttö asiakas tarpeet tehtävää koskevat asiakirjat tuotekansio Ohjelmistohankkeen Ohjelmistohankkeen kulku - - tuotekansio tuotekansio sisältää kulku sisältää keskeisimmät keskeisimmät dokumentit dokumentit Spesifikaatioiden laatiminen 41
42 ... Esimerkki projektidokumentaatiosta Ohjeistukset -Projektiohje - Määrittelyohje - Tarkastusohje alustava projektisuunnitelma - Suunnitteluohje - Ohjelmointiohje - Testausohje Projektisuunnittelu, seuranta ja ohjaus tarkennettu projektisuunnitelma kokouspöytäkirjat loppuraportti määrittely tarkastukset Työn vaiheistus järjestelmätestaussuunnitelma suunnittelu tarkastukset ohjelmointi tarkastukset integrointitestaus järjestelmätestaus projektin käynnistäminen projektin päättäminen toiminallinen määrittely tekninen määrittely Katselmukset hyväksymiskatselmus suunnittelukatselmus ohjelmakoodi määrittelykatselmus testausraportti Pienet Pienet projektit (alle projektit (alle 2 2 htkk) htkk) -> projektikortti -> projektikortti Pöytäkirjat Spesifikaatioiden laatiminen 42
43 Dokumentointimallit perusrakenne kansilehti» organisaatio, projekti, dokumentti, versio, sivuja, tekijä, tila (hyväksytty, jätetty tarkastettavaksi, kesken); tekijän, tarkastajan ja hyväksyjän nimi + nimikirjoitus, pvm tiivistelmä dokumentista sisällysluettelo versiohistoria (numero, pvm, muutokset) jokaisella sivulla sivunumero dokumentin nimi, versionumero, pvm ulkoasun yhdenmukaisuus eri dokumenteissa Dokumentaation Dokumentaation lukijalla lukijalla on on oikeus oikeus olettaa olettaa dokumentin dokumentin noudattavan noudattavan tehtyä tehtyä sopimusta sopimusta Spesifikaatioiden laatiminen 43
44 ... Dokumentointimallit muuttuneet kohdat voidaan merkitä muutospalkilla kaaviot ovat osa dokumentaatiota (ei erillisenä liitteenä) dokumentaation tekninen toteutus voi olla elektroninen» mahdollistaa hypertekstiratkaisut paperimuoto ohjelmien tyyliopas dokumenttimallin kaltainen ohjeistus ohjelmointityölle ulkoasun, kommentoinnin, jne. periaatteet tarkastus- ja muistilistat laadunvarmistuksessa mallien soveltaminen tilanteeseen mikään malli ei sellaisenaan sovellu kaikkialle Spesifikaatioiden laatiminen 44
45 Määrittely tehtävät: projektin tarpeellisuuden ja toteuttamiskelpoisuuden selvittäminen tavoitteiden ja vaatimusten asettaminen ratkaisumallin laatiminen tulos: toiminnallinen määrittely vaatimukset vaatimukset täyttävän järjestelmän kuvaus Spesifikaatioiden laatiminen 45
46 määrittely Ideat, lähtökohdat, rajoitteet, reunaehdot Ongelman ymmärtäminen, vaatimusten kartoitus Määrittelyprosessi Toteutettavan järjestelmän spesifiointi Esitutkimuksen Esitutkimuksentyökaluja: työkaluja: kokoukset kokoukset seminaarit seminaarit haastattelut haastattelut tutustuminen tutustuminenvastaaviin tuotteisiin tuotteisiin luova luovaryhmätyö osallistuva osallistuvahavainnointi markkinatutkimukset prototyyppituotteet prototyyppituotteet Toiminnallinen määrittely, alustava käyttöohje, toteutusprojektin projektisuunnitelma, testaussuunnitelma korjattavaa Tarkastus OK Arkkitehtuurisuunnittelu Spesifikaatioiden laatiminen 46
47 määrittelydokumentti pienissä projekteissa laajennettu käyttöohje riittää määrittelydokumentiksi toiminnallinen määrittely on projektin tärkein dokumentti alistettava tuotteenhallintaan jäädytys ja byrokraattinen muutosmenettely muutokset kalliita; joudutaan kuitenkin aina jossain määrin tekemään (miksi?) Spesifikaatioiden laatiminen 47
48 ... määrittelydokumentti 1. Johdanto 1.1 Tarkoitus 1.2 Tuote 1.3 Määritelmät, termit ja lyhenteet 1.4 Viitteet, muut tähän liittyvät dokumentit 1.5 Yleiskatsaus dokumenttiin 2. Yleiskuvaus 2.1 Ympäristö 2.2 Toiminta 2.3 Käyttäjät 2.4 Yleiset rajoitteet 2.5 Oletukset ja riippuvuudet 3. Tiedot ja tietokanta 4. Toiminnot tietovirtakaavio tila-automaatit toimintokuvaukset liittymäkaavio tapahtumaluettelo käyttötapauskaavi o tietovirtakaavio luokkakaavio käyttöliittymäkuv aus luokkakaavio (käsitekaavio) tietohakemist ot 5. Ulkoiset liittymät 5.1 Käyttöliittymä 5.2 Laitteistoliittymät 5.3 Ohjelmistoliittymät 5.4 Tietoliikenneliittynnät 6. Muut ominaisuudet 6.1 Suorituskyky 6.2 Käyttetävyys, toipuminen, turvallisuus ja suojaukset 6.3 Ylläpidettävyys 6.4 Siirettävyys, yhteensopivuus 6.5 Operointi 7. Suunnittelurajoitteet 7.1 Standardit 7.2 Laitteistorajoitteet 7.3 Ohjelmistorajoitteet 7.4 Muut rajoitteet Kuvattavat kohteet ja esimerkkejä kuvaustekniikoista Spesifikaatioiden laatiminen 48
49 ... määrittelydokumentti Otsaketiedot: tuotteen nimi, tekijät, versionumero, päiväys, versiohistoria, hyväksyjien nimet ja ja päivämäärä 1.1. Tarkoitus: miksi tehty, kenelle tarkoitettu 1.2. Tuote: tuotteen nimi, tarkoitus ja ja tavoitteet 1.3. Määritelmät : jos eivät ole yleisesti tiedossa 1.4. Viitteet : nimi, identifiointitiedot, mistä löytyy Spesifikaatioiden laatiminen 49
50 määrittelydokumentti 1.5. Yleiskatsaus: dokumentin rakenteen kuvaus 2.1. Ympäristö: laajempi kokonaisuus johon tuote liittyy 2.2. Toiminta: yhteenveto ominaisuuksista 2.3. Käyttäjät: käyttäjien ja ja käyttöympäristön kuvaus 2.4. Yleiset rajoitteet: lainsäädäntö, sovelluksen kriittisyys, suojaus- ja ja turvallisuus, Spesifikaatioiden laatiminen 50
51 määrittelydokumentti 2.5. Oletukset: oletukset, joiden vallitessa määrittely on voimassa Tiedot ja jatietokanta: tietosisältö, käyttöintensiteetti, kapasiteetti- ja ja saantiaikavaatimukset 4.n. Toiminnon kuvaus: tarkoitus, syötteet (mistä, mitä, paljonko, yksikkö, sallitut arvot), käsittely (tarkistukset, virhetilanteiden käsittely, käsittely, ), tulosteet Spesifikaatioiden laatiminen 51
52 määrittelydokumentti 5.1. Käyttöliittymä: näyttömallit, raporttimallit, siirtyminen näytöstä toiseen, komennot, 6.1. Suorituskyky: staattiset (montako päätettä, montako tietuetta, ), dynaamiset (montako tapahtumaa/aikayksi kkö, vastausaika, ) 6.2. Turvallisuus: käyttöoikeudet, salakirjoitus, ) Spesifikaatioiden laatiminen 52
53 määrittelydokumentti käytettävän rakenteen ja lopullisen sisällön määrittää tarkoituksenmukaisuus (ja ohjeistus) kuvitus - tarkoituksenmukainen ja selkeä kuvausmenetelmien oikea valinta integroidut kehitysympäristöt ohjaavat dokumentaatiota sekä huolehtivat (jossain määrin) kuvauskokonaisuuden eheydestä Spesifikaatioiden laatiminen 53
54 Suunnittelu Määrittelyvaiheesta Moduulisuunnittelu, toteutussuunnittelu Uudelleenkäytettävät komponentit Toiminnallinen määrittely Tekninen määrittely korjattavaa Moduulisuunnitelmat Arkkitehtuurisuunnittelu korjattavaa Tarkastus Tarkastus Ohjelmointi Koodi Tarkastukseen, testaukseen Spesifikaatioiden laatiminen 54
55 Arkkitehtuurisuunnittelu moduulijako ja rajapinnat - tavoitteena hallittavuus fokus rajapintojen määrittelyssä ja toimintojen jakamisessa lopulliseen moduulijakoon kuuluvan moduulin toteutus annetaan yhden suunnittelijan vastuulle mahdollisimman itsenäiset moduulit kiinteät rajapinnat hallittu ulkoinen kommunikaatio moduulin toteutus koteloidaan moduulin sisään uudelleenkäyttö Spesifikaatioiden laatiminen 55
56 Rajapintojen kiinteys Moduuli P Moduuli Q Data Käsittely -funct A -funct B P.A(x,y) Alustukset Analogia: Analogia: Kun Kun henkilö henkilö haluaa haluaa toisen henkilön toisen henkilön nostavan nostavan kättään, kättään, pyytää hän pyytää hän toista toista tekemään tekemään sen, sen, ei ei mene nostamaan mene nostamaan sitä sitä itse. itse. Luonnollinen tapa Luonnollinen tapa toimia! toimia! Palvelurajapinta Palvelurajapinta - - palvelukutsut palvelukutsut vain vain rajapinnan rajapinnan kautta kautta - - palvelun palvelun toteutus toteutus tarjoajan tarjoajan sisäinen sisäinen Spesifikaatioiden laatiminen 56
57 Mikä on moduuli termiä käytetään eri yhteyksissä hieman eri merkityksessä määritelmä: kokonaisuuden osa arkkitehtuurisuunnittelussa: ohjelmiston rakenneosa looginen järjestelmän osakokonaisuus ohjelmoinnissa: ohjelman rakenneosa koodimoduuli, luokka (attribuutit + toiminnallisuus),... Spesifikaatioiden laatiminen 57
58 Moduulisuunnittelu suunnitellaan moduulin sisäinen rakenne hierarkkisesti etenevä prosessi - mahdollisesti arkkitehtuurisuunnittelun kanssa rinnan (vuorovaikutuksessa) rajapinta elinkaaressa eteen ja taakse on häilyvä arkkitehtuurisuunnittelusta siirrytään rakenneosan sisäiseen suunnitteluun huomaamatta, samoin moduulisuunnittelusta toteutukseen (toimintokuvaus) joskus moduulin suunnittelu, toteutus ja moduulitestaus nähdään yhtenä kokonaisuutena Spesifikaatioiden laatiminen 58
59 Suunnittelun tavoitteita Tavoitteita : selkeys ymmärrettävyys tehokkuus luotettavuus ylläpidettävyys siirrettävys Tavoitteiden saavuttaminen: paikallisuus hierarkkisuus modulaarisuus rajapintojen tiiviys kotelointi tiedon kätkeminen abstraktit tietotyypit Spesifikaatioiden laatiminen 59
60 Tekninen määrittely 1. Johdanto 1.1. Tarkoitus 1.2. Dokumentin kattavuus 1.3. Määritelmät, termit, lyhenteet 1.4. Viittaukset muihin dokumentteihin, standardeihin, käsikirjoihin, jne Yleiskatsaus dokumenttiin 3. Arkkitehtuurin kuvaus 3.1. Ratkaisuperiaatteet 3.2. Tietokanta-arkkitehtuuri 3.3. Ohjelmistoarkkitehtuuri, moduulit ja prosessit 3.4. Uudelleenkäytettävät komponentit 2. Järjestelmän yleiskuvaus Sovellusalueen kuvaus, järjestelmän osuus siinä, laitteisto- ja ohjelmistoympäristön kuvaus, toteutuksen keskeiset reunaehdot ja järjestelmän liittyminen ympäristöönsä Spesifikaatioiden laatiminen 60
61 tekninen määrittely 4. Moduuli- (ja prosessi)kuvaukset 4.i. Kustakin moduulista esitetään yleiskuvaus attribuutit (ylläpidettävät tilatiedot) operaatiot (rajapinnan määrittely) poikkeus- ja virhetilanteiden käsittely (myös odottamattomien) ohjeita moduulisuunnittelua ja toteutusta varten (viittsaukset käytettäviin algoritmeihin, uudelleenkäytettävyys, jne.) Muita mahdollisia kohteita ylläpito-ohjeet siirrettävyys virhetilanteiden käsittely luotettavuus erityiset tekniset ratkaisut hylättyjä ratkaisuvaihtoehtoja; miksi ne hylättiin käyttöliittymä, jos ei tarkasti määrittelyssä ratkaisun rajoitteet testattavuus jäljitettävyys Spesifikaatioiden laatiminen 61
62 Työkalut käyttökohteen mukainen luokittelu edustavälineet (upper CASE, front-end)» määrittelyä ja suunnittelua tukevat taustavälineet (lower CASE, back-end)» toteutusvaiheen välineet integroidut ympäristöt (IPSE) laaja käytön kohdealue» yhteentoimivat erilliset välineet» yksi laajan toiminnallisuuden sisältävä väline integroinnin aste käytännössä vaihtelee Spesifikaatioiden laatiminen 62
63 työkalut työkalut työkalujen äly piirtämistä tukevat työkalut» symbolit, mahdollisesti niiden yhdistämisen hallinta» ei hallitse semanttista tietämystä järjestelmän rakenteesta kontekstiin ymmärtävät työkalut» kuvaus ja kuvauksen (jonkinasteinen) semantiikan hallinta kuvauskanta kuvaus ja sitä koskeva (vaihtelevantasoinen) tietämys» tietämyksen siirto kuvauksesta toiseen» kykenee tarkastamaan (jossain määrin) kuvauskokonaisuuden eheyttä automaattinen koodin generointi käyttöönottoprosessi väline on sovitettava osaksi työprosessia» työkalun tekninen sovittaminen (muuntaminen) ja prosessin muuttaminen Spesifikaatioiden laatiminen 63
64 työkalut Projektinhallinta Kuvauskannan hallinta Käytön hallinta Raportit, dokumentit Kuvausten teko ja käsittely Analyysit, johdonmukaisuustarkistukset Kuvauskanta Liittymät muihin välineisiin Generointi: ohjelmointikieli, näytöt, raportit Protoilu Tuotteenhallinta Testauksen apuvälineet Spesifikaatioiden laatiminen 64
65 Standardit Standardointijärjestöjä kansainvälisia: ISO, IEC, ITU; CEN, CENELEC kansallisia: ANSI, BSI, DIN, SFS toimialajärjestöjä: IEEE suomalaisia: SFS, TIEKE, THK, SESKO,... hallinnonalajärjestöjä: DoD, NASA, yritykset ja yrityskonsortiot: OMG, Rational,... Spesifikaatioiden laatiminen 65
66 standardit standardityyppejä sitovuuden mukaan jaoteltuna yleisluonteiset määräykset de facto -standardit kansalliset standardit (SFS-nnn,...) valmisteluvaiheen työdokumentit (esim. ISO/IEC:ssä WD, CD, DIS, ) kansainväliset standardit (ISO-nnn, ISO/IEC-nnn, ) lisäksi teknisiä raportteja (ISO-TR) ja täydennyksiä (AMD - amendment) Spesifikaatioiden laatiminen 66
67 standardit standardityyppeja luonteen mukaan jaoteltuna, mm: kehysstandardit (OSI) prosessistandardit (SPICE) ohjeluonteiset standardit (ohjeistukset standardien tekemiselle tai käytölle) varsinaiset kohdestandardit Spesifikaatioiden laatiminen 67
68 standardit ohjelmistotyön standardointi IEEE standardisarja ISO/IEC JTC1/SC7-työ kansainvälisellä tasolla TIEKEn työ Suomessa Systeemityökerho (TTL) - SyTyKe tietotekniikan kansainvälinen standardointityö ISO/IEC JTC1 alakomiteat (SC7 - ohjelmistotyö, SC22 - kielet) työryhmät(wg) ad hoc -ryhmät (AHG) Spesifikaatioiden laatiminen 68
69 standardit toimintaan osallistutaan kansallisten standardointijärjestöjen kautta demokraattinen (jäykkä, aikaavievä) hyväksymismekanismi» Fast Track menettely oikaisee työvaiheita» virallisten standardien alla saattaa muodostua de facto - standardeja suomalainen standardointityö SFS vastaa, saattaa delegoida vallan toimialajärjestöille tietotekniikka: TIEKE vastaa tietotekniikan toimialasta Hitaus, Hitaus, byrokraattisuus: byrokraattisuus: Esimerkiksi Algol-60 Esimerkiksi Algol-60 kielen kielen standardi standardi valmistui valmistui de facto de facto standardina standardina Virallinen standardointityö Virallinen standardointityö lopetettiin tuloksettomana lopetettiin tuloksettomana 1990-luvulla 1990-luvulla Spesifikaatioiden laatiminen 69
70 ... standardit Laatujärjestelmä, prosessi: Projektinhallinta: Määrittely: määrittelnittelunittelu Ohjelmointi mointi , ylläpito: Suun- suun- ohjel-testaus: testaus Käyttö, Dokumentointi: Laadunohjaus: , , , , Tuotteenhallinta: , Spesifikaatioiden laatiminen 70
71 Kertauskysymykset Mitä tarkoitetaan sanonnalla "ohjelmistotyö on dokumenttien tuottamista. Mikä on dokumenttien merkitys ohjelmistotyössä. Mitä tarkoitetaan spesifikaatioissa toiminnallisilla ominaisuuksilla, eitoiminnallisilla ominaisuuksilla ja reunaehdoilla / rajoitteilla. Mitä ovat hyvän spesifikaation ominaisuudet. Kurssimateriaalissa ohjelmistokehitys nähdään spesifikaatioiden ketjuna. Edellisen vaihetason tulos toimii spesifikaationa seuraavalle vaihetasolle. Selitä tämän tarkastelun / näkökulman taustalla oleva logiikka. Selvitä termien kuvaustekniikka, kuvausmenetelmä ja kehitysmenetelmä erot ja sisältö. Kuvausmenetelmien rooli kehitysmenetelmissä. Mitä ovat suoritettavat spesifikaatiot. Mihin perustuu spesifikaatioiden oikeaksi todistaminen. Selitä kurssimateriaalin perusteella kuvausmenetelmien käyttötapa SA-menetelmässä OMT++ -menetelmässä Simplified Method -menetelmässä Mikä on UML. Selitä hyvän dokumentointikäytännön (dokumenttien laadinnan) periaatteet. Mitä hyötyä on dokumenttimalleista ja niiden käyttöä ohjaavista ohjeista / standardeista. Mitä dokumentteja laatujärjestelmä edellyttää laadittavaksi. Mikä on dokumentoinnin rooli laatujärjestelmän mukaista toimintatapaa toteutettaessa. Spesifikaatioiden laatiminen 71
72 kertauskysymykset Ohjelmistokehitykseen liittyvät dokumentit syntyvät vaiheittain täydentyen (iteroiva kehittämismenettely) ja valmiita dokumentteja versioiden. Mitä nämä menettelytavat näkyvät käytännössä ja mitä projektihallinnollisia toimintoja tarvitaan niiden toteuttammisessa. Selvitä miten tuotedokumentaatio kehittyy EVO-mallissa. Mitä vaihetuotteita syntyy määrittelyvaiheen tuloksena. Mitä suunnittelun tehtäviä sisältyy arkkitehtuurisuunnitteluun ja moduulisuunnitteluun. Mikä on näiden luonteenomainen ero. Miten nämä vaiheet näkyvät järjestelmän testausprosessissa. Moduulisuunnittelulle on (kurssimateriaalissa) määritelty joukko tavoitteita. Selitä mitä ne ovat. Olet laatimassa yrityksellesi dokumentointijärjestelmän puitteita ja etsimässä sopivia malleja dokumenttimalleiksi. Mistä lähdet hakemaan työllesi kirjallista tukiaineistoa. Oliorakenteeseen kuuluu moduulirakenne, moduulien kiinteä rajapinta ja moduulin sisäisen toiminnan piilottaminen ulkopuoliselta käyttäjältä. Mitä etuja tämä tuo järjestelmän kehitystyölle. Mitä tarkoitetaan uudelleenkäytöllä ja miten se näkyy ohjelmistotyössä. Mihin elinkaarivaiheisiin sillä on vaikutusta. Pohdi työkalujen roolia ohjelmistotyön tukena. Mitä tehtäviä on kuvauskannalla ja mitä sillä tarkoitetaan. Miten kuvauskanta järjestelmäkehityksessä toteutuu. Pohdi tilannetta erilaisissa työskentelyolosuhteissa integroitujen kehitysympristöjen kanssa toimittaessa erillisten työkaluohjelmistojen kanssa toimittaessa (joukko piirtelyn apuvälineitä) ilman työkalutukea toimittaessa Viralliset standardit ohjelmistotyössä - mikä on niiden merkitys. Minkälaista sidosastetta edustavat WD, CD, DIS, IS -standardidokumentit (ISOn ja n standardeja). Minkälaisia rooleja (asikasyrityksessä, toimittajayrityksessä) liittyy toiminnalliseen määrittelyyn joko sen tuottajana, tietojen antajana tai dokumentaation tarvitsijana. Spesifikaatioiden laatiminen 72
Copyright by Haikala. Ohjelmistotuotannon osa-alueet
Copyright by Haikala Ohjelmistotuotannon osa-alueet Ohjelmiston elinkaari 1. Esitutkimus, tarvekartoitus, kokonaissuunnittelu, järjestelmäsuunnittelu (feasibility study, requirement study, preliminary
LisätiedotTOIMINNALLINEN MÄÄRITTELY MS
TOIMINNALLINEN MÄÄRITTELY 11.11.2015 MS YLEISTÄ 1/2 jäsennelty etenee yleiskuvauksesta yksityiskohtiin kieliasultaan selkeä kuvaa myös tulevan järjestelmän ympäristöä tarpeellisella tarkkuudella kuvaa
LisätiedotOhjelmistotuotanto vs. muut insinööritieteet. (Usein näennäinen) luotettavuus ja edullisuus
Yhteenveto Ohjelmistotuotanto vs. muut insinööritieteet Monimutkaisuus Näkymättömyys (Usein näennäinen) luotettavuus ja edullisuus Muunnettavuus Epäjatkuvuus virhetilanteissa Skaalautumattomuus Copyright
LisätiedotOhjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit
Ohjelmiston testaus ja laatu Ohjelmistotekniikka elinkaarimallit Vesiputousmalli - 1 Esitutkimus Määrittely mikä on ongelma, onko valmista ratkaisua, kustannukset, reunaehdot millainen järjestelmä täyttää
LisätiedotOhjelmointitekniikka lyhyesti Survival Kit 1 Evtek KA ELINKAARIMALLEISTA
Ohjelmointitekniikka lyhyesti Survival Kit. Vesiputousmalli ELINKAARIMALLEISTA. Ohjelmiston elinkaari Ohjelmiston elinkaarella (life cycle) tarkoitetaan aikaa, joka kuluu ohjelmiston kehittämisen aloittamisesta
Lisätiedotkäyttötapaukset mod. testaus
käyttötapaukset Jari Ojasti Nokia email : jari.ojasti@nokia.com puh : 040 5926 312 Kartta hyväksyntä määrittely suunnittelu suunnittelu mod. testaus integrointi sys. testaus Ylläpito koodaus (toteutus)
LisätiedotOhjelmistojen mallintaminen, mallintaminen ja UML
582104 Ohjelmistojen mallintaminen, mallintaminen ja UML 1 Mallintaminen ja UML Ohjelmistojen mallintamisesta ja kuvaamisesta Oliomallinnus ja UML Käyttötapauskaaviot Luokkakaaviot Sekvenssikaaviot 2 Yleisesti
LisätiedotTietojärjestelmän osat
Analyysi Yleistä analyysistä Mitä ohjelmiston on tehtävä? Analyysin ja suunnittelun raja on usein hämärä Ei-tekninen näkökulma asiakkaalle näkyvien pääkomponenttien tasolla Tietojärjestelmän osat Laitteisto
LisätiedotKuvaustekniikat. Exit
Kuvaustekniikat Luvussa tarkastellaan tietojärjestelmän määrittelymenetelmiä. Määrittelymenetelmä sitoo yhteen ja ohjeistaa sen, miten eri kuvausmenetelmiä käyttäen voidaan tehdä tietojärjestelmän määrittely.
LisätiedotOhjelmistojen suunnittelu
Ohjelmistojen suunnittelu 581259 Ohjelmistotuotanto 154 Ohjelmistojen suunnittelu Software design is a creative activity in which you identify software components and their relationships, based on a customer
LisätiedotDigi-tv vastaanottimella toteutetut interaktiiviset sovellukset
Tekninen määrittely: Editori Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset Sisällysluettelo 1. Johdanto...4 1.1. Tarkoitus ja kattavuus...4 1.2. Tuote ja ympäristö...4 1.3. Määritelmät,
LisätiedotOhjelmiston vaatimusmäärittely. tietoteknisen järjestelmän osat
Ohjelmiston vaatimusmäärittely tietoteknisen järjestelmän osat toiminta dokumentit laitteisto järjestelmä tietokanta ihmiset ohjelmisto 1 Määrittelyprosessi Määrittelyprosessi ideat lähtökohdat rajoitteet
LisätiedotGroupDesk Toiminnallinen määrittely
GroupDesk Toiminnallinen määrittely Tilanne: Paikallinen oppilaitos, kuvitteellinen WAMK, tarvitsee ryhmätyöhön soveltuvan sähköisen asioiden hallintajärjestelmän ja ryhmätyöohjelmiston, jonka ajatuksena
LisätiedotOhjelmistojen mallintaminen kertausta Harri Laine 1
kertausta 5.12.2008 Harri Laine 1 Ohjelmiston elinkaari, elinkaarimallit Yleinen puitemalli (reference model) - abstrakti kokonaiskuva ei etenemiskontrollia, ei yksityiskohtia Ohjelmistoprosessimallit
LisätiedotJohdantoluento. Ohjelmien ylläpito
Johdantoluento Ylläpito-termin termin määrittely Ylläpito ohjelmistotuotannon vaiheena Evoluutio-termin määrittely Muita kurssin aiheeseen liittyviä termejä TTY Ohjelmistotekniikka 1 Ohjelmien ylläpito
LisätiedotSuunnitteluvaihe prosessissa
Suunnittelu Suunnitteluvaihe prosessissa Silta analyysin ja toteutuksen välillä (raja usein hämärä kumpaankin suuntaan) Asteittain tarkentuva Analyysi -Korkea abstraktiotaso -Sovellusläheiset käsitteet
LisätiedotUML-kielen formalisointi Object-Z:lla
UML-kielen formalisointi Object-Z:lla Kalvot ja seminaarityö WWW:ssä: http://users.jyu.fi/~minurmin/opiskelu/form/ UML UML == Unified Modelling Language. OMG:n standardoima kieli ohjelmistojärjestelmien,
LisätiedotUML:n yleiskatsaus. UML:n osat:
UML:n yleiskatsaus - voidaan hyödyntää hyvin laajasti. - sopii liiketoimintamallinnukseen, ohjelmistomallinnukseen sen jokaiseen vaiheeseen tai minkä tahansa pysyviä ja muuttuvia ominaisuuksia sisältävän
LisätiedotUML- mallinnus: Tilakaavio
UML- mallinnus: Tilakaavio Karkea kuvaus UML- kaavioiden käytöstä ohjelmistonkehityksen eri vaiheissa ja tehtävissä. Mallinnus tilakaavioilla Tilakaaviolla kuvataan yhden luokan olioiden tilan muuttumista
LisätiedotOhjelmistotekniikan menetelmät, UML
582101 - Ohjelmistotekniikan menetelmät, UML 1 Sisältö DFD- ja sidosryhmäkaavioiden kertaus Oliomallinnus UML:än kaaviotyypit 2 Tietovuokaaviot Data flow diagrams, DFD Historiallisesti käytetyin kuvaustekniikka
LisätiedotMäärittelyvaihe. Projektinhallinta
Määrittelyvaihe Projektinhallinta testaus määrittely suunnittelu ohjelmointi käyttöönotto, testaus tuotteenhallinta laadunvarmistus dokumentointi vaatimustenhallinta Määrittely Määrittely, eli kansanomaisesti
LisätiedotVaatimustenhallinta. Exit
Vaatimustenhallinta Asiakasvaatimusten hallinnan tarkoitus on analysoida ja priorisoida kerätyt asiakasvaatimukset sekä hallita niitä ohjelmistokehityksen eri vaiheissa. Olennaista on jäljitettävyys: on
LisätiedotOhjelmistojen mallintaminen, mallinnustekniikat käytännössä
582104 Ohjelmistojen mallintaminen, mallinnustekniikat käytännössä 1 Sisältö Oliomenetelmien taustaa Kirjastojärjestelmän käyttötapaukset Kirjastojärjestelmän luokkamalli 2 Oliosuuntautunut suunnittelumenetelmä
LisätiedotKäyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä
www.niksula.cs.hut.fi/~jjkankaa// Demosovelluksen tekninen määrittely v. 0.6 Päivitetty 11.12.2000 klo 20:26 Mickey Shroff 2 (12) Dokumentin versiohistoria Versio Päivämäärä Tekijä / muutoksen tekijä Selite
LisätiedotOleelliset vaikeudet OT:ssa 1/2
Oleelliset vaikeudet OT:ssa 1/2 Monimutkaisuus: Mahdoton ymmärtää kaikki ohjelman tilat Uusien toimintojen lisääminen voi olla vaikeaa Ohjelmista helposti vaikeakäyttöisiä Projektiryhmän sisäiset kommunikointivaikeudet
LisätiedotKäyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä
www.niksula.cs.hut.fi/~jjkankaa// Testauksen loppuraportti v. 1.0 Päivitetty 23.4.2001 klo 19:05 Mikko Viljainen 2 (14) Dokumentin versiohistoria Versio Päivämäärä Tekijä / muutoksen tekijä Selite 1.0
LisätiedotOhjelmistojen mallintaminen. Luento 11, 7.12.
Ohjelmistojen mallintaminen Luento 11, 7.12. Viime viikolla... Oliosuunnittelun yleiset periaatteet Single responsibility eli luokilla vain yksi vastuu Program to an interface, not to concrete implementation,
LisätiedotTIE-20200 Samuel Lahtinen. Lyhyt UML-opas. UML -pikaesittely
Lyhyt UML-opas UML -pikaesittely UML, Unified Modeling Language Standardoitu, yleiskäyttöinen mallinnuskieli, jota ylläpitää/hallitsee (Object Management Group) OMG Historiaa: 90-luvulla oli paljon kilpailevia
LisätiedotSopimus Asiakas- ja potilastietojärjestelmästä. Liite N: Kielivaatimukset
Sopimus Asiakas- ja potilastietojärjestelmästä Liite N: Kielivaatimukset VERSIOHISTORIA Päivä Versio Kuvaus Tekijä 12.3.15 3.0 Tarjouspyynnön liitteeksi 2 (6) SISÄLLYSLUETTELO 1 JOHDANTO... 4 2 JÄRJESTELMÄN
LisätiedotTämän lisäksi listataan ranskalaisin viivoin järjestelmän tarjoama toiminnallisuus:
Dokumentaatio, osa 1 Tehtävämäärittely Kirjoitetaan lyhyt kuvaus toteutettavasta ohjelmasta. Kuvaus tarkentuu myöhemmin, aluksi dokumentoidaan vain ideat, joiden pohjalta työtä lähdetään tekemään. Kuvaus
LisätiedotOhjelmistotekniikka kevät 2003 Laatujärjestelmät
Laatujärjestelmät Ohjelmistotekniikka kevät 2003 Prosessiajattelu Sisään Prosessi Ulos ohjaus mittaus Laatujärjestelmät Laatujärjestelmät määrittelevät sen, mitkä prosessit täytyy olla määritelty ei sitä,
LisätiedotAvoimen ja yhteisen rajapinnan hallintamalli
Avoimen ja yhteisen rajapinnan hallintamalli 1.10.2015 Sisältö tausta avoimet toimittajakohtaiset rajapinnat (toimittajan hallitsemat rajapinnat) avoimet yhteiset rajapinnat (tilaajan hallitsemat rajapinnat)
LisätiedotAnalyysi, dynaaminen mallintaminen, yhteistoimintakaavio ja sekvenssikaavio
Analyysi, dynaaminen mallintaminen, yhteistoimintakaavio ja sekvenssikaavio Analyysi Tarkentaa ja jäsentää vaatimusmäärittelyä, vastaa kysymykseen MITÄ järjestelmän tulisi tehdä. Suoritetaan seuraavia
LisätiedotProjektityö
Projektityö 21.10.2005 Projektisuunnitelma Työn ositus Projektisuunnitelman sisältö Kurssin luennoitsija ja projektiryhmien ohjaaja: Timo Poranen (email: tp@cs.uta.fi, työhuone: B1042) Kurssin kotisivut:
LisätiedotJohdanto. Mitä on ohjelmistotuotanto? Tämän kurssin näkökulma. Sami Kollanus TJTA330 Ohjelmistotuotanto
Johdanto Sami Kollanus TJTA330 Ohjelmistotuotanto 6.3. Mitä on ohjelmistotuotanto? Ohjelmistotekniikka (Software Engineering) tarkoittaa pätevien insinööriperiaatteiden vakiinnuttamista ja käyttämistä
LisätiedotMitä on ohjelmistotuotanto?
Johdanto Sami Kollanus TJTA330 Ohjelmistotuotanto 6.3. Mitä on ohjelmistotuotanto? Ohjelmistotekniikka (Software Engineering) tarkoittaa pätevien insinööriperiaatteiden vakiinnuttamista ja käyttämistä
LisätiedotYhteenveto. Menettelytavat
Yhteenveto Ohjelmistotuotanto: Luotettavien ja tehokkaiden ohjelmistojärjestelmien tuottamista noudattaen hyviksi havaittuja menettelytapoja. Menettelytavat Prosessimalli (vesiputous/spiraali/kasvattava)
LisätiedotAnalyysi, dynaaminen mallintaminen, yhteistoimintakaavio ja sekvenssikaavio
Analyysi, dynaaminen mallintaminen, yhteistoimintakaavio ja sekvenssikaavio Analyysi Tarkentaa ja jäsentää vaatimusmäärittelyä, vastaa kysymykseen MITÄ järjestelmän tulisi tehdä. Suoritetaan seuraavia
LisätiedotAvoimen ja yhteisen rajapinnan hallintasuunnitelma v.1.4
Avoimen ja yhteisen rajapinnan hallintasuunnitelma v.1.4 Tämän esityksen sisältö tausta avoimet toimittajakohtaiset rajapinnat (toimittajan hallitsemat rajapinnat) avoimet yhteiset rajapinnat (tilaajan
LisätiedotTyökalujen merkitys mittaamisessa
Työkalujen merkitys mittaamisessa Mittaaminen ja Ohjelmistotuotanto -seminaari Toni Sandelin 18.4.2001, VTT Elektroniikka, Oulu 1 Sisältö Mihin työkalutukea tarvitaan? Työkalut & metriikat: luokitus Mittausohjelmien
LisätiedotOhjelmistojen mallintaminen, kurssikoe esimerkkivastauksia
Ohjelmistojen mallintaminen, kurssikoe 15.12. esimerkkivastauksia Tehtävä 1 a: Ohjelmistotuotantoprosessi sisältää yleensä aina seuraavat vaiheet: määrittely, suunnittelu, toteutus, testaus ja ylläpito.
LisätiedotOhjelmistotekniikan menetelmät, kesä 2008
582101 - Ohjelmistotekniikan menetelmät, kesä 2008 1 Ohjelmistotekniikan menetelmät Methods for Software Engineering Perusopintojen pakollinen opintojakso, 4 op Esitietoina edellytetään oliokäsitteistön
LisätiedotOhjelmistojen mallintaminen Unified Modeling Language (UML)
582104 Ohjelmistojen mallintaminen Unified Modeling Language (UML) 1 Olioperustaisuus Olio toimii mallinnuksen perusyksikkönä eri abstraktiotasoilla Järjestelmän rajaus, suunnittelu, ohjelmointi, suoritus..
LisätiedotABB Drives and Controls, 26.05.2015 Koneenrakentajan ja laitetoimittajan yhteistoiminta toiminnallisen turvallisuuden varmistamisessa
ABB Drives and Controls, 26.05.2015 Koneenrakentajan ja laitetoimittajan yhteistoiminta toiminnallisen turvallisuuden varmistamisessa Sisältö 1. Koneenrakentajan haasteita koneiden turvallistamisessa 2.
LisätiedotTeollisuusautomaation standardit Osio 9
Teollisuusautomaation standardit Osio 9 Osio 1: SESKOn Komitea SK 65: Teollisuusprosessien ohjaus Osio 2: Toiminnallinen turvallisuus: periaatteet Osio 3: Toiminnallinen turvallisuus: standardisarja IEC
LisätiedotTenttikysymykset. + UML- kaavioiden mallintamistehtävät
Tenttikysymykset 1. Selitä mitä asioita kuuluu tietojärjestelmän käsitteeseen. 2. Selitä kapseloinnin ja tiedon suojauksen periaatteet oliolähestymistavassa ja mitä hyötyä näistä periaatteista on. 3. Selitä
LisätiedotOhjelmiston testaus ja laatu. Testaustasot
Ohjelmiston testaus ja laatu Testaustasot Testauksen vaihejako Tarpeet / sopimus Järjestelmätestaus Hyväksymiskoe Määrittely testauksen suunnittelu ja tulosten verifiointi Arkkitehtuurisuunnittelu Moduulisuunnittelu
LisätiedotEsityksen sisältö Määrittelyjen mukaisuudesta varmistuminen - PlugIT-leima
Esityksen sisältö Johdanto Yleistä leimausmenettelystä ja leimasta Leimausmenettelyn vaiheet Kuinka määrittelyjen mukaisuus testataan: esimerkkejä testitapauksista Olennaisimmat kysymykset leimausmenettelyn
LisätiedotKONEAUTOMAATION LAATU JA TURVALLISUUS. 4.6.2015 Marko Varpunen
KONEAUTOMAATION LAATU JA TURVALLISUUS 4.6.2015 Marko Varpunen TLJ ja automaatio Rautatie, metro, teollisuus-laitokset, kaivoskoneet, vesi, n. 90 henkeä Mikkeli Turvallisuusjohtaminen konsultointi riskienarviointi
LisätiedotTilakaaviot, sekvenssikaaviot (Haikala, Märijärvi ss , )
Tilakaaviot, sekvenssikaaviot (Haikala, Märijärvi ss. 121-133, 135 141) Jari Ojasti Nokia email : jari.ojasti@nokia.com puh : 040 5926 312 Sisältö Sekvenssikaaviot ja tilakaaviot osana UML:ia Sekvenssikaaviot
LisätiedotTestaussuunnitelma Labra
Testaussuunnitelma Labra Helsinki 25.8.2008 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos 1 Kurssi 581260 Ohjelmistotuotantoprojekti (9+1op) Projektiryhmä Anssi Kapanen,
LisätiedotUudelleenkäytön jako kahteen
Uudelleenkäyttö Yleistä On pyritty pääsemään vakiokomponenttien käyttöön Kuitenkin vakiokomponentit yleistyneet vain rajallisilla osa-alueilla (esim. windows-käyttöliittymä) On arvioitu, että 60-80% ohjelmistosta
LisätiedotJHS XXX ICT-palvelujen kehittäminen: Laadunvarmistus Liite 6: Katselmointi
JHS XXX ICT-palvelujen kehittäminen: Laadunvarmistus Liite 6: Katselmointi Versio: 0.9 Julkaistu: n.n.2011 Voimassaoloaika: toistaiseksi Sisällys 1 Katselmointi osana laadunvarmistusta... 2 2 Yleistä katselmoinneista...
LisätiedotDigi-tv vastaanottimella toteutetut interaktiiviset sovellukset
Toiminnallinen määrittely: Editori Digi-tv vastaanottimella toteutetut interaktiiviset sovellukset Versio Päiväys Tekijä Kuvaus 0.01 7.11.01 Pekka Koskinen Alustava sisällysluettelo 0.1 12.11.01 Pekka
LisätiedotTARKASTUSMENETTELYT JA NIIDEN APUVÄLINETUKI
TARKASTUSMENETTELYT JA NIIDEN APUVÄLINETUKI Vesa Tenhunen Tarkastusmenettelyt Keino etsiä puutteita ohjelmakoodeista, dokumenteista ym. ohjelmistoprosessissa syntyvästä materiaalista Voidaan käyttää kaikissa
LisätiedotUutisjärjestelmä. Vaatimusmäärittely. Web-palvelujen kehittäminen. Versio 1.3
Uutisjärjestelmä Vaatimusmäärittely Versio 1.3 Sisällys 1 Muutoshistoria... 4 2 Viitteet... 4 3 Sanasto... 4 3.1 Lyhenteet... 4 3.2 Määritelmät... 4 4 Johdanto...5 4.1 Järjestelmän yleiskuvaus... 5 4.2
LisätiedotOhjelmiston toteutussuunnitelma
Ohjelmiston toteutussuunnitelma Ryhmän nimi: Tekijä: Toimeksiantaja: Toimeksiantajan edustaja: Muutospäivämäärä: Versio: Katselmoitu (pvm.): 1 1 Johdanto Tämä luku antaa yleiskuvan koko suunnitteludokumentista,
LisätiedotOhjelmistotekniikka - Luento 2
Ohjelmistotekniikka - Luento 2 Luku 2: Prosessimallit - miten spiraalimalliin päädyttiin - spiraalimallista (R)UP malliin - oman ammattitaidon kehittäminen; PSP ja TSP mallit 1 Luento 2: Prosessimallit
Lisätiedot2. päivä. Etätehtävien purku Poikkeamat. Poikkeamat Auditoinnin raportointi Hyvän auditoijan ominaisuudet Harjoituksia
OAMK / Luova 4.5. ja 11.5. Sisäinen auditointi osa Oamkin ympäristöohjelmatyötä Sisältö 1. päivä Johdanto Auditoinnin tavoitteet Ympäristöstandardin (ISO 14001) pääkohdat Alustava ympäristökatselmus Auditoinnin
LisätiedotWeb-palvelu voidaan ajatella jaettavaksi kahteen erilliseen kokonaisuuteen: itse palvelun toiminnallisuuden toteuttava osa ja osa, joka mahdollistaa k
1 Web-palvelu voidaan ajatella jaettavaksi kahteen erilliseen kokonaisuuteen: itse palvelun toiminnallisuuden toteuttava osa ja osa, joka mahdollistaa ko. toiminnallisuuden hyödyntämisen Web-palveluna.
LisätiedotTietokantojen suunnittelu, relaatiokantojen perusteita
Tietokantojen suunnittelu, relaatiokantojen perusteita A277, Tietokannat Teemu Saarelainen teemu.saarelainen@kyamk.fi Lähteet: Leon Atkinson: core MySQL Ari Hovi: SQL-opas TTY:n tietokantojen perusteet-kurssin
LisätiedotOhjelmistotuotteen hallinnasta
Ohjelmistotuotteen hallinnasta Luennon tavoitteista Luennon sisällöstä Motivointia Lähteinä: Haikala ja Märijärvi, Ohjelmistotuotanto Royce, Software Project Management, A Unified Framework 1 Tavoitteista
LisätiedotT Testiraportti - järjestelmätestaus
T-76.115 Testiraportti - järjestelmätestaus 18. huhtikuuta 2002 Confuse 1 Tila Versio: 1.0 Tila: Päivitetty Jakelu: Julkinen Luotu: 18.04.2002 Jani Myyry Muutettu viimeksi: 18.04.2002 Jani Myyry Versiohistoria
LisätiedotOhjelmistotekniikan menetelmät, kevät 2008
582101 - Ohjelmistotekniikan menetelmät, kevät 2008 1 Ohjelmistotekniikan menetelmät Methods for Software Engineering Perusopintojen pakollinen opintojakso, 4 op Esitietoina edellytetään oliokäsitteistön
LisätiedotTestaus käsite. Sekalaista testausasiaa. Testauksen käsitteestä. Kattavuusmitat. Jos ajatellaan, että testaus = V&V, voidaan erottaa:
Testaus käsite Sekalaista asiaa Sami Kollanus 15.11.2006 Jos ajatellaan, että = V&V, voidaan erottaa: Staattinen Dynaaminen Toisaalta voidaan määritellä Myersin (1979) mukaan: Testaus on ohjelman suoritusta,
LisätiedotValtioneuvoston kanslia VAIN VIRKAKÄYTTÖÖN Hallinto- ja palveluosasto/hallintoyksikkö Terja Ketola PTJ2008-työsuunnitelma 1 (5)
Terja Ketola PTJ2008-työsuunnitelma 1 (5) AIKATAULU JA TEHTÄVÄT / PTJ2008 VALMIS MENOSSA MYÖHÄSSÄ ALOITTAMATTA ALUSTAVA AJANKOHTA EI PIDETTY / TEHTY 1 Määrittelyn läpikäynti PTi, TKe, IHa, TRö 34 23.8.2007
LisätiedotTestausdokumentti. Kivireki. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos
Testausdokumentti Kivireki Helsinki 17.12.2007 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Anu Kontio Ilmari
Lisätiedottsoft Tarkastusmenettelyt ja katselmukset Johdanto Vesa Tenhunen 4.2.2004
Tarkastusmenettelyt ja katselmukset tsoft Vesa Tenhunen 4.2.2004 http://cs.joensuu.fi/tsoft/ Johdanto Yksi tärkeimmistä tekijöistä laadukkaiden ohjelmistojen tuottamisessa on puutteiden aikainen havaitseminen
LisätiedotTestauksen hallinta Testaustyökalut Luento 7 Antti-Pekka Tuovinen
Testauksen hallinta Testaustyökalut Luento 7 Antti-Pekka Tuovinen 23 April 2018 1 Tavoitteet Yleiskuva seuraavista aiheista Testauksen organisointi Testaussuunnittelma Testauksen kustannukset Testausstrategia
LisätiedotTOIMINNALLINEN MÄÄRITTELY. PROJEKTITYÖ Tik-76.115 Wclique
TOIMINNALLINEN MÄÄRITTELY PROJEKTITYÖ Tik-.115 SISÄLLYSLUETTELO Sisällysluettelo... Versiohistoria... 1. JOHDANTO... 4 1.1 Tarkoitus ja kattavuus... 4 1. Tuote... 4 1. Määritelmät, termit ja lyhenteet...
LisätiedotLuokka- ja oliokaaviot
Luokka- ja oliokaaviot - tärkeimmät mallinnuselementit : luokat, oliot ja niiden väliset suhteet - luokat ja oliot mallintavat kuvattavan järjestelmän sisältöä ja niiden väliset suhteet näyttävät, kuinka
LisätiedotTestaaminen ohjelmiston kehitysprosessin aikana
Testaaminen ohjelmiston kehitysprosessin aikana 04.02.2004 http://cs.joensuu.fi/tsoft/ Sisällys 1. Johdanto 2. Yksikkö- ja integrointitestaus 3. Järjestelmätestaus 4. Hyväksymistestaus http://cs.joensuu.fi/tsoft/
LisätiedotKurssin aihepiiri: ohjelmistotuotannon alkeita
Kurssin aihepiiri: ohjelmistotuotannon alkeita [wikipedia]: Ohjelmistotuotanto on yhteisnimitys niille työnteon ja työnjohdon menetelmille, joita käytetään, kun tuotetaan tietokoneohjelmia sekä monista
LisätiedotProjektin suunnittelu
Projektin suunnittelu Sami Kollanus TJTA330 Ohjelmistotuotanto 15.3. Projektin suunnittelu - CMMIkäytänteet Projektin estimaatit: Määritellään projektin laajuus (scope) Määritellään tehtävien ja tuotosten
LisätiedotTOIMINNALLINEN MÄÄRITTELY. PROJEKTITYÖ Tik-76.115 Wclique
TOIMINNALLINEN MÄÄRITTELY PROJEKTITYÖ Tik-76.115 SISÄLLYSLUETTELO Sisällysluettelo... 2 1. JOHDANTO... 3 1.1 Tarkoitus ja kattavuus... 3 1.2 Tuote... 3 1.3 Määritelmät, termit ja lyhenteet... 3 1.4 Viitteet...
LisätiedotTIETOKANNAN SUUNNITTELU
TIETOKANNAN SUUNNITTELU HOVI, HUOTARI, LAHDENMÄKI: TIETOKANTOJEN SUUNNITTELU & INDEKSOINTI DOCENDO (2003, 2005) LUKU 2 JOUNI HUOTARI & ARI HOVI TIETOJEN MALLINNUS TIETOJEN MALLINNUKSESTA TIETOKANTAAN Käsiteanalyysin
LisätiedotKäyttötapausanalyysi ja testaus tsoft
Käyttötapausanalyysi ja testaus tsoft 15.09.2004 http://cs.joensuu.fi/tsoft/ Johdanto Use Case analyysi (käyttötapausanalyysi) on yleisesti käytetty järjestelmälle asetettujen toiminnallisten vaatimusten
LisätiedotKansallinen ASPAtietojärjestelmä
Kansallinen ASPAtietojärjestelmä Taustoitus Järjestäjien tarve yhteiselle asiakaspalautteen keräämisen järjestelmälle nousi esiin kevään selvityksessä Asiakaspalautetieto on myös osa kansallista sote-tietopohjaa
LisätiedotLaatukäsikirja - mikä se on ja miten sellainen laaditaan?
Laatukäsikirja - mikä se on ja miten sellainen laaditaan? Matkailun laatu laatukäsikirja osaksi yrityksen sähköistä liiketoimintaa Sähköinen aamuseminaari matkailualan toimijoille 24.8.2010 Riitta Haka
LisätiedotOhjelmistotekniikka - Luento 2 Jouni Lappalainen
Ohjelmistotekniikka - Luento 2 Jouni Lappalainen Luku 2: Prosessimallit - miten spiraalimalliin päädyttiin - spiraalimallista (R)UP malliin - oman ammattitaidon kehittäminen; PSP ja TSP mallit 1 Luento
Lisätiedot582104 Ohjelmistojen mallintaminen, Johdatus ohjelmistotuotantoon
582104 Ohjelmistojen mallintaminen, Johdatus ohjelmistotuotantoon 1 Lyhyt johdatus ohjelmistotuotantoon Ohjelmistotuotanto, ohjelmistoprojektit Miten ohjelmistojen tuottaminen eroaa teollisesta tuotannosta
LisätiedotMatematiikan oppifoorumi Projektisuunnitelma
Matematiikan oppifoorumi Projektisuunnitelma Carl Johansson Jukka Kariola Outi Marttila Helena Venäläinen Sampsa Virtanen Ohjaaja Jukka Eskola Asiakas Mikko Mäkelä Ohjelmistotuotantoprojekti 29.10.1999
LisätiedotKontrollipolkujen määrä
Testaus Yleistä Testaus on suunnitelmallista virheiden etsimistä Tuotantoprosessissa ohjelmaan jää aina virheitä, käytettävistä menetelmistä huolimatta Hyvät menetelmät, kuten katselmoinnit pienentävät
LisätiedotHELIA 1 (8) Outi Virkki Tietokantasuunnittelu
HELIA 1 (8) Luento 1 Johdatusta tietokannan suunnitteluun... 2 Tietokantasuunnittelu?... 2 Tietokanta?... 2 Tieto?... 2 Tietokantasuunnittelun tavoite, v.1... 2 Luotettavuus?... 3 Tietokantasuunnittelun
LisätiedotAnalyysi, staattinen mallintaminen, kohdealueen malli ja luokkakaavio
Analyysi, staattinen mallintaminen, kohdealueen malli ja luokkakaavio Analyysi Tarkentaa ja jäsentää vaatimusmäärittelyä, vastaa kysymykseen MITÄ järjestelmän tulisi tehdä. Suoritetaan seuraavia tehtäviä:
LisätiedotYhteentoimivuusalusta: Miten saadaan ihmiset ja koneet ymmärtämään toisiaan paremmin?
Yhteentoimivuusalusta: Miten saadaan ihmiset ja koneet ymmärtämään toisiaan paremmin? Avoin verkkoalusta ihmisen ja koneen ymmärtämien tietomääritysten tekemiseen Riitta Alkula 20.3.2019 Esityksen sisältö
LisätiedotOhjelemistotuotanto, syksy 1998 /Prosessi Prosessimallit
Prosessimallit Prosessimalli on ohjelmiston elinkaaren rakenteen määrittely ts. kuvaus sille millaisten vaiheiden kautta ohjelmisto kehittyy ideasta hautaan mahdollisimman yleisesti sovellettavissa oleva
LisätiedotSiltatiedon tarkkuustason määrittäminen Taitorakennerekisterissä. Maria Vinter
Siltatiedon tarkkuustason määrittäminen Taitorakennerekisterissä Maria Vinter 2 Taustaa Diplomityö: Tietomallinnuksen hyödyntäminen siltojen ylläpidossa, valmis 09/2017 https://julkaisut.liikennevirasto.fi/pdf8/opin_2017-03_tietomallinnuksen_hyodyntaminen_web.pdf
LisätiedotToimilohkojen turvallisuus tulevaisuudessa
Toimilohkojen turvallisuus tulevaisuudessa Turvallisuusseminaari ASAF 30.10-1.11.2006 Mika Strömman Teknillinen korkeakoulu 1 Sisältö Luotettavuuden lisääminen hyvillä tavoilla Toimilohkokirjastot Turvatoimilohkot
LisätiedotOhjelmistotekniikan menetelmät, käyttötapauksiin perustuva vaatimusmäärittely
582101 - Ohjelmistotekniikan menetelmät, käyttötapauksiin perustuva vaatimusmäärittely 1 Vaatimukset ja käyttötapaukset Vaiheittainen mallintaminen ja abstraktiotasot Järjestelmän rajaaminen sidosryhmäkaaviolla
LisätiedotOpiskelija osaa suunnitella ohjelmiston toteuttamisen, toteuttaa, testata ja dokumentoida ohjelmiston.
1(6) TYÖSSÄOPPIMINEN JA AMMATTIOSAAMISEN NÄYTTÖ tuotantoversion toteuttaminen 30 osp Tavoitteet: Opiskelija osaa suunnitella toteuttamisen, toteuttaa, testata ja dokumentoida. Työssäoppimisen keskeinen
LisätiedotVaatimusmäärittely Ohjelma-ajanvälitys komponentti
Teknillinen korkeakoulu 51 Vaatimusmäärittely Ohjelma-ajanvälitys komponentti Versio Päiväys Tekijä Kuvaus 0.1 21.11.01 Oskari Pirttikoski Ensimmäinen versio 0.2 27.11.01 Oskari Pirttikoski Lisätty termit
LisätiedotPerusarkkitehtuurin ja vuorovaikutuksen mallintamisen perusteita.
Perusarkkitehtuurin ja vuorovaikutuksen mallintamisen perusteita. Arkkitehtuuriin vaikuttavat ympäristötekijät Jo kehittämisen alkuvaiheessa on tarpeellista hahmotella arkkitehtuurin perusratkaisu. Lähtökohdat
LisätiedotITK130 Ohjelmistojen luonne
ITK130 Ohjelmistojen luonne Luennon sisältö Ohjelmistotekniikka ja vaatimukset Ohjelmistotuote Ei-toiminnallisten vaatimusten luokittelu Sisäiset ja ulkoiset vaatimukset Oikeellisuus Luotettavuus Kestävyys
LisätiedotTietokannan suunnittelu
HELIA TIKO-05 1 (12) ICT03D Tieto ja tiedon varastointi Tietokannan suunnittelu Tietokannan suunnitteluprosessi... 2 Tavoitteet...2 Tietojärjestelmän suunnitteluprosessi...3 Abstraktiotasot tietokannan
LisätiedotTestaussuunnitelma. Koskelo. Helsinki Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos
Testaussuunnitelma Koskelo Helsinki 16.12.2004 Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos Kurssi 581260 Ohjelmistotuotantoprojekti (6 ov) Projektiryhmä Tom Bertell Johan
LisätiedotOhjelmistotuotanto, s
Ohjelmistotuotanto Ohjelmiston määrittely n tavoitteena on selvittää ohjelmistolle asetettavat vaatimukset niin yksityiskohtaisesti, että niiden perusteella voidaan tuottaa haluttu ohjelmisto. Lineaarisissa
LisätiedotKuopio Testausraportti Asiakkaat-osakokonaisuus
Kuopio Testausraportti Asiakkaat-osakokonaisuus Kuopio, testausraportti, 25.3.2002 Versiohistoria: Versio Pvm Laatija Muutokset 0.1 11.2.2002 Matti Peltomäki Ensimmäinen versio 0.9 11.2.2002 Matti Peltomäki
LisätiedotOhjelmistojen mallintaminen, kesä 2009
582104 Ohjelmistojen mallintaminen, kesä 2009 1 Ohjelmistojen mallintaminen Software Modeling Perusopintojen pakollinen opintojakso, 4 op Esitietoina edellytetään oliokäsitteistön tuntemus Ohjelmoinnin
LisätiedotArkkitehtuuripankki. Mallintamisen metamalli ja notaatiot
Arkkitehtuuripankki Mallintamisen metamalli ja notaatiot 21.2.2018 Sisältö Kuvaustapa (notaatio) ja standardit Mallityypit Metamalli Muuta Kuvaustavat ja hyödynnetyt standardit JHS179 template ArchiMate
Lisätiedot