T Iteraatio Demo TeamDC I1 - Iteraatio

Samankaltaiset tiedostot
I1 Iteraatiosuunnitelma. CoSCA-simulaattorin jatkokehitysprojekti. TeamDC

I2 -Iteraatiosuunnitelma. CoSCA-simulaattorin jatkokehitysprojekti. TeamDC

Santeri Saarinen Korjattu testaustasoja ja tehty tarkennuksia I1-testaukseen

T Projektikatselmus

Laadunvarmistussuunnitelma. CoSCA-simulaattorin jatkokehitysprojekti. TeamDC

Testiraportti 2. iteraatiosta

T Loppukatselmus

T Ohjelmistokehitysprojekti I - Iteraatiosuunnitelma (I2)

T Testiraportti - järjestelmätestaus

Ohjelmistotekniikka - Luento 2

Ohjelmistotekniikka - Luento 2 Jouni Lappalainen

Laaturaportti [iteraatio 2] Ryhmä 14

T Testiraportti - integraatiotestaus

Loppuraportti. CoSCA-simulaattorin jatkokehitysprojekti. TeamDC

LAATURAPORTTI Iteraatio 1

Ohjelmiston testaus ja laatu. Ohjelmistotekniikka elinkaarimallit

T Projektikatselmus

T Projektikatselmus

Laadunvarmistusdokumentti

Good Minton QA Raportti Iteraatio 1 Sulkapalloliiton Kilpailujärjestelmä

Ohjelmistojen mallintaminen. Luento 11, 7.12.

Laadunvarmistuksen suunnitelma. Ryhmä ExtraTerrestriaLs Aureolis Oy

Testausdokumentti. Kivireki. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Projektisuunnitelma. CoSCA-simulaattorin jatkokehitysprojekti. TeamDC

COTOOL dokumentaatio Testausdokumentit

T Tietojenkäsittelyopin ohjelmatyö. Testiraportti, vaihe T1. Tietokonegrafiikka-algoritmien visualisointi. Testiraportti, vaihe T1

Työkalut ohjelmistokehityksen tukena

Testausraportti. Dokumentti: Testausraportti_I2.doc Päiväys: Projekti : AgileElephant

COSCA - Vaatimusmäärittely v.1.7. Palaute:

Projektisuunnitelma Nero-ryhmä

Data Sailors - COTOOL dokumentaatio Riskiloki

UCOT-Sovellusprojekti. Testausraportti

statbeatmobile PROJECT REVIEW iteration 1

Versio Päiväys Tekijä Kuvaus Tikkanen varsinainen versio

Projektisuunnitelma. CoSCA-simulaattorin jatkokehitysprojekti. TeamDC

Laadunvarmistuksen suunnitelma. Ryhmä ExtraTerrestriaLs Aureolis Oy

SEPA diary. Dokumentti: SEPA_diary_PK_HS.doc Päiväys: Projekti: AgileElephant Versio: V0.3

Ohjelmiston toteutussuunnitelma

Toteutusvaihe T3 Digi-tv: Edistymisraportti

TIE Ohjelmistojen testaus 2015 Harjoitustyö Vaiheet 1 ja 2. Antti Jääskeläinen Matti Vuori

COSCA - Vaatimusmäärittely v.3.1. Palaute:

T SEPA - STAATTISET MENETELMÄT Tuomas Tolvanen, 55382U Timo Töyry, 58578B

Projektisuunnitelma. CoSCA-simulaattorin jatkokehitysprojekti. TeamDC

T Testiraportti - integraatiotestaus

COTOOL dokumentaatio Riskiloki

Onnistunut Vaatimuspohjainen Testaus

Convergence of messaging

Sopimus Asiakas- ja potilastietojärjestelmästä. Liite N: Kielivaatimukset

T Tietojenkäsittelyopin ohjelmatyö Hirviöryhmä loppukatselmointi. Hirviö. Projektikatselmointi

Toteutusvaihe T2 Edistymisraportti

SEPA Päiväkirja. Käytettävyyden arviointi

Projektityö

Hirviö Laadunvarmistussuunnitelma

Testaussuunnitelma Labra

Ohjelmistotuotteen hallinnasta

Hirviö Testausraportti I2

dokumentin aihe Dokumentti: Testausraportti_I1.doc Päiväys: Projekti : AgileElephant

SALAKIRJOITUKSEN VAIKUTUS SUORITUSKYKYYN UBUNTU käyttöjärjestelmässä -projekti

Omahoitopolut.fi Toteutuksen tilannekatsaus

Ohjelmiston testaus ja laatu. Testaustasot

L models. Testisuunnitelma. Ryhmä Rajoitteiset

Hirviö Laadunvarmistussuunnitelma

Projektin suunnittelu

Ohjelmistotuotantoprojekti

WCLIQUE. Ohjelmistoprojekti. Testaussuunnitelma

Käyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä

TESTIRAPORTTI - XMLREADER LUOKKA Virtuaaliyhteisöjen muodostaminen Versio 1.0

IT2015 EKT ERITYISEHTOJA OHJELMISTOJEN TOIMITUKSISTA KETTERIEN MENETELMIEN PROJEKTEILLA LUONNOS

T Edistymisraportti. ExtraTerrestriaLs PP iteraatio

COSCA - Vaatimusmäärittely v.1.0

T Projektisuunnitelma

T Tietojenkäsittelyopin ohjelmatyö Tietokonegrafiikka-algoritmien visualisointi Vaatimustenhallinta

Testaus-tietoisku: Tärkeimpiä asioita testauksesta projektityökurssilaisille

Good Minton Sulkapalloliiton Kilpailujärjestelmä SEPA: Heuristinen arviointi

Testaussuunnitelma. Dokumentti: Testaussuunnitelma.doc Päiväys: Projekti: AgileElephant

Harjoitus 3 Case Face Wash. Raine Mäki, Laura Takkinen, Marika Östman, Otto Kataja

SEPA päiväkirja. Aihe: Staattiset menetelmät Tekijät: Mikko Halttunen 58198B, Mikko Närjänen 58122B Ryhmä: Neptune T Ohjelmistoprojekti I

Testaussuunnitelma. Koskelo. Helsinki Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

58160 Ohjelmoinnin harjoitustyö

Verkkopokerijärjestelmä. Loppuraportti Ryhmä Kanat Ohjelmistotuotantoprojekti, syksy 2008

KÄYTETTÄVYYSTESTAUS OSANA KETTERÄÄ KEHITYSTÄ

Opetussuunnitelmien ja tutkintojen perusteiden rakenteistaminen

Valtioneuvoston kanslia VAIN VIRKAKÄYTTÖÖN Hallinto- ja palveluosasto/hallintoyksikkö Terja Ketola PTJ2008-työsuunnitelma 1 (5)

Figure 1: Projektipäälliköt Juha-Pekka Honkavaara ja Juha Mattila

Projektisuunnitelma. KotKot. Helsinki Ohjelmistotuotantoprojekti HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Testausraportti. Oppimistavoitteiden hallintajärjestelmä harri

Miten 333 organisaatiota voi kehittää yhtä yhteistä digitaalista palvelua ja vielä kuunnella kaikkien asiakkaita?

TIE Ohjelmistojen testaus 2015 Harjoitustyö Vaihe 3. Antti Jääskeläinen Matti Vuori

Ohjelmistotuotantoprojekti

ENG-A1002 ARTS-ENG-Projekti. B-kori

Testaussuunnitelma. Dokumentti: Testaussuunnitelma.doc Päiväys: Projekti: AgileElephant Versio: V0.4

Tämän lisäksi listataan ranskalaisin viivoin järjestelmän tarjoama toiminnallisuus:

T Ohjelmistokehitysprojekti I Projektisuunnitelma (PP)

Testaustyökalut. Luento 11 Antti-Pekka Tuovinen. Faculty of Science Department of Computer Science

TIETOJENKÄSITTELYTIETEIDEN LAITOS

Tuotemallipohjaisen toimintaprosessin mallintaminen

Käyttäjien tunnistaminen ja käyttöoikeuksien hallinta hajautetussa ympäristössä

Ohjelmistojen mallintaminen, kurssikoe esimerkkivastauksia

LAATUDOKUMENTTI

Yhteenvetodokumentti PULSU. Syksy 2008 Ohjelmistotuotantoprojekti. HELSINGIN YLIOPISTO Tietojenkäsittelytieteen laitos

Transkriptio:

T-76.4115 Iteraatio Demo TeamDC I1 - Iteraatio 7.12.2005

Agenda I1 Iteraatio demo 7.12.2005 T-76.4115 76.4115 Iteration demo Projektin tilannekatsaus (10 min) Projektin esittely tarvittaessa Yleiskuva projektista Tavoitteiden saavuttaminen Tuotosten tilanne Projektin metriikat I1 iteraation Tulokset(25 min) Iteraation tuotokset Sovelluksen demo Käytetyt käytännöt ja työkalut (3 min) Mitä I2:ssa alustavia ajatuksia (2min) Keskustelu ja kysymykset ( 5min) 2

CoSCA -jatkokehitysprojektin esittely Asiakas Helsingin Kauppakorkeakoulu, Katariina Kemppainen Tekninen ohjaaja Lauri Svan CoSCA simulaattori Coordination of Supply Chain Activities Mallintaa tuotannonohjaukseen liittyviä päätöksiä Kehitetty HKKK tutkijan tarpeisiin (2005) Ei käyttöliittymää Jatkokehityksen tarve Tavoitteena simulaattorin käyttö opetuksen apuvälineenä Tuotannon suunnittelun ja ohjauksen opetuksessa Miten erityyppisten päätössäännöt vaikuttavat töiden läpimenoon liittyviin tunnuslukuihin erilaisissa tilanteissa Tarve helposti opittavalle ja käytettävälle käyttöliittymälle 3

Yleiskuva projektista Ylätason käyttötapaus T-76.4115 76.4115 Iteration demo COSCA -järjestelmä Määrittää systeemin ominaisuudet Määrittää työvirran ominaisuudet Oppija Määrittää kustannusrakenteen Valitsee käytettävät päätössäännöt Määrittää simulaation aikajänteet Ajaa simulaation Tarkastelee tuloksia 4

Yleiskuva projektista Looginen esitys ylätason arkkitehtuurista T-76.4115 76.4115 Iteration demo User wants to perform certain action with the simulator Creation Configuration Visualization Reporting GUI provides functionality to user Facade acts as an interface between the GUI and base-cosca Underlying Cosca simulator provides functionality to GUI 5

I1 Iteraation tavoitteiden tilanne Sopia asiakkaan kanssa iteraatiossa toteutettavat vaatimukset, käyttötapaukset, vaatimusmäärittelydokumentin pohjalta Tehdä tuotteesta ensimmäinen toimiva ohjelmaversio, joka toteuttaa sovitut vaatimukset Ohjelmaversiossa ole yhtään sellaista avointa virhettä, joka estäisi vaatimusten mukaisen käytön iteraation lopussa Toteutustyö saadaan tehtyä työmääräarvioiden puitteissa Käyttötapausten tarkentaminen Ylätason arkkitehtuurisuunnitelman dokumentointi Laatusuunnitelman dokumentointi OK, Valmis Osittain OK Aloittamatta tai kriittisesti kesken 6

I1 Iteraation tuotosten tilanne - Dokumentaatio I1 iteraatiosuunnitelma -tehty Projektisuunnitelma - päivitetty I1 iteraatiosuunnitelma lisätty ja päivitetty Käytäntöjä ja Riskit päivitetty Vaatimusmäärittelydokumentti - päivitetty I1:ssä toteutettavat käyttötapaukset kuvattu yksityiskohtaisesti Eri tyyppisten vaatimusten tiloja seurattu ja dokumentoitu Laatusuunnitelma - päivitetty Sisältää I1 iteraation testaussuunnitelman Testitapaukset, testauslogi ja testiraportti - tehty Tekninen määrittelydokumentti - tehty Sisältää korkean tason arkkitehtuurikuvauksen ja alijärjestelmäkuvaukset SEPA:t - päivitetty Coding Camp Staatiset menetelmät Käytettävyyden arviointi Käyttöliittymän paperiproto tehty ja testattu Proton kuvat Käytettävyyden arviointi SEPAn liitteenä Työkalujen käyttöohjeet ryhmän sisäiseen käyttöön päivitetty CVS ohjetta tarkennettu, lisäksi Bugzilla ja IRC-ohje 7

I1 Iteraationtuotosten tilanne -Käyttötapaukset ID UC1 UC1.1 UC2 Nimi Systeemin määrittäminen Työvirran määrittäminen Esimerkkisysteemin käyttäminen Tilanne Testattu UC6 Epäselvyyttä laskentalogiikan kanssa, tästä syystä epävarmaa kuinka oikein esitetyt tulokset ovat UC2.1 UC3 Esimerkkityövirran valitseminen Kustannusrakenteen määrittäminen Testattu Asian tiimoilta oltu yhteydessä asiakkaaseen ja teknisen ohjaajaan UC3.1 Esimerkkikustannusrakenteen valitseminen Testattu UC4 UC4.1 UC5 UC5.1 Simulaation aikajänteiden määrittäminen Simulaation kokonaiskeston ja tarkasteluvälien määrittäminen Käytettävien päätössääntöjen valinta Käytettävien päätössääntöjen (prioriteetti- ja vapautus-) valinta alisysteemikohtaisesti Testattu Testattu UC 7.2 Toiminnallisuus toteutettu, mutta painike puuttuu käyttöliittymästä. Ajettavat esimerkki simulaatiot ovat niin nopeita ettei ajojen pysäytykset tässä vaiheessa ole järkeviä UC5.3 Käytettävien päätössääntöjen asettaminen resurssikohtaisesti Testattu Vaadittujen lisäksi I2 toteutuksesta UC6 Tulosten tarkastelu UC5.3, UC6.2b UC6.1 UC6.2 Tulosarvojen tarkastelu simulaation lopussa Tulosarvojen tarkastelu simulaation välietapeissa Testattu Testattu Moni toiminnallisuus tukee I2 toteutusta UC6.2b Aikaisempien välietappitulosten tarkastelu Testattu UC7 Simulaation ajaminen UC7.1 UC7.2 UC7.3 Simulaation käynnistys Simulaation keskeytys Simulaation lopetus Testattu Testattu Toteutettu enemmän kuin vaadittu OK, valmis OK, osittain Aloittamatta tai kriittisesti kesken 8

I1 Iteraatiossa tehtävien realisoituminen SUM CUM DIFF 599,5 484,0 115,5 Projektinhallinta 145,5 125,5 20,0 Projektinhallinnointi 16,0 6,0 10,0 Projektisuunnittelu 25,0 20,5 4,5 Informointi ja kommunkointi 104,5 99,0 5,5 Ohjelmistonsuunnittelu 137,0 126,0 11,0 Vaatimustenselvittäminen 3,5 2,0 1,5 Vaatimusmäärittelydokumentti 9,0 8,0 1,0 Käyttöliittymä proto 18,0 18,0 0,0 Käyttöliittymän suunnittelu 18,0 20,5-2,5 Arkkitehtuurisuunnittelu 75,5 66,5 9,0 Teknisenmäärittelydokumentin kirjoitus 13,0 11,0 2,0 Laadunvarmistus 88,5 52,5 36,0 Laatusuunnitelma 9,0 8,5 0,5 Laatusuunniteman dokumentointi 8,0 8,0 0,0 Testassuunnitelma 10,5 10,0 0,5 Testauksen suorittaminen 31,0 15,5 15,5 Käytettävyystestit 17,0 6,5 10,5 Heuristinen arvointi 6,0 0,0 6,0 Dokumenttikatselmoinnit 7,0 4,0 3,0 Työkalujen käyttöönotto ja ohjeistus 7,0 7,5-0,5 Ohjelmointi 130,0 112,5 17,5 Konfigurointi-Wizard 15,0 12,0 3,0 Tulosikkuna 10,0 10,0 0,0 Muu Käyttöliittymätoteutus 15,0 18,0-3,0 Simulaation Luonti 7,0 9,0-2,0 Perustoiminnallisuus 10,0 10,0 0,0 Askeltaminen 10,0 11,0-1,0 Simulaatio-objekti rajapinnan toteutus 12,0 7,0 5,0 Job Factory -rajapinnan toteutus 8,0 4,5 3,5 Resurssinen hallinta rajapinnan toteutus 14,0 9,0 5,0 Simulaation raportointi 15,0 15,0 0,0 Integorinti 6,0 4,0 2,0 Koodin kommentointi 8,0 3,0 5,0 Opiskelu 60,5 40,5 20,0 Muu dokumenointi 31,0 19,5 11,5 I1 Iteraatiossa vielä 2. käytettävyystesti 8.12 I2 suunnittelu alkaa 9

Työmääräarviot ja työtunnit henkilöittäin T-76.4115 76.4115 Iteration demo I1 Iteraatiossa toteutuneet tunnit Suunnitelma I1 iteraation alussa Arvio I1 Toteuma Erotus PP Arvio I1 Arvio I2 Yhteensä Elina 86,5 65,5 21 Elina 82,5 77,5 30 Laura 54,5 50,5 4 Laura 76 51,5 22,5 150 Kari 83 66,5 16,5 Kari 72 75,5 42,5 Santeri 88 74,5 13,5 Santeri 28 89,5 72,5 Samuel 79,5 61,5 18 Samuel 19 83,5 87,5 Aleksi 92 69 23 Aleksi 25,5 88,5 76 Vesa 116 96,5 19,5 Vesa 13,5 97,5 79 Yhteensä 599,5 484 115,5 Yhteensä 316,5 563,5 410 1290 Päivitetty suunnitelma PP I1 SUM I2 Yhteensä Elina 82,5 65,5 148 42 Laura 76 50,5 126,5 23,5 150 Kari 72 66,5 138,5 51,5 Santeri 28 74,5 102,5 87,5 Samuel 19 61,5 80,5 109,5 Aleksi 25,5 69 94,5 95,5 Vesa 13,5 96,5 110 80 Yhteensä 316,5 484 800,5 489,5 1290 10

Laatumetriikka Kaikki löydetyt bugit : Bugi-tilanne Raportoitu Korjattu Avoinna I1 10 5 5 Avoimet bugit (tilanne 4.12) : Komponentit GUI Blockers 0 Major 1 Minor 0 Enhancement 3 Total 4 Facade 0 0 1 0 1 GUI bugit Major ongelma liittyy käytettävyyteen 3 bugia lähdekoodin metriikoiden raja-arvojen ylityksistä Raja-arvo ylitykset johtuvat pääasissa käytetyjen työkalujen generoimasta koodista (Käyttöliittymä). Korjaaminen edellyttää koodin refaktorointia seuraavassa iteraatiossa Facade bugit: Kuormitusasteen laskenta Avoimet bugit eivät estä ohjelmiston käyttöä Blocker, estävät testin jatkamisen tai tuotteen kehittämisen. Major, muut vakavat bugit Minor, vaikutukset ovat vähäisiä mutta tuotteelle esitettyjen vaatimusten vastaisia. Enhancement, korjaaminen parantaisi tuotteen toiminnallisuutta. 11

Laadun arviointi Dokumentti Projektisuunnitelma Vaatimusmäärittely Laadunvarmistus Tekninen määrittelydokumentti Järjestelmä Kattavuus 1 1 1 1 Laatu Kuvaus Katselmoitu Katselmoitu Katselmoitu Katselmoitu Käyttöliittymä 3 Testattu kattavasti Facade 2 Testattu pääasiassa GUI:n kautta GUI Facade Käyttöliittymäproton testaus Ohjelmaversiota testattu kattavasti systemaattisen ja tutkivan testauksen keinoin. Näiden lisäksi suoritettu lähdekoodin staattista analysointia ja käytettävyystestausta (2. Käytettävyystesti 8.12) Testattu pääasiassa GUI:n kautta, mutta myös analysoitu lähdekoodia staattisesti ja luotu Junit-yksikkötestejä. Suurimpana haasteena simulaattorin tulosten oikeellisuuden arvioiminen Ohjelma täyttää sille 1. Iteraatiossa asetetut laatutavoitteet Selite Kattavuus: 0 = ei mitään 1 = katsottu läpi 2 = katsottu tarkasti läpi 3 = testattu Laatu: = hyvä = epävarma = huono 12

Sovelluksen koko koodiriveinä Façade Layer NCLOC/CR GUI Layer NCLOC/CR Others NCLOC Total NCLOC PP 0 0 0 0 I1 1041/27 2488/16 414 3943 Façade Layer = kerros, joka liittää GUI:n vanhaan simulaattoriin fi.hse.jobshop.facade paketin metriikat GUI Layer = Graafisen käyttöliittymän toteuttava kerros fi.hse.jobshop.gui ja fi.hse.jobshop.gui.wizard pakettien metriikat Others = vanhaan simulaattoriin lisätyt uudet luokat, käynnistysluokat Lisäksi teimme muita pieniä, tässä listaamattomia muutoksia myös vanhaan CoSCA:an (yhteensä alle 100 NCLOC) HUOM! Tässä ei ole otettu kantaa vanhan CoSCA:n kokoon NCLOC (Non-Comment Lines of Code) = Koodirivit ilman tyhjiä rivejä ja kommenttirivejä (Metrics (Sourceforge)) CR(Comment Ratio) = Kommenttirivien suhde kaikkiin riveihin nähden (Borland Togetherin Metrics) 13

Projektissa tapahtuneet muutokset Pääsuunnittelijan roolinvaihdos Vesa Haukkavaara pääsuunnittelijan roolissa I1 iteraation alkupuolelta lähtien Vesalla oli tarvittavissa määrin aikaa arkkitehtuurin yms. pääsuunnittelijan tehtävien hoitamiseen Vaatimuksista Joitakin muutoksia käyttötapausten kuvauksissa käyttösekvensseihin. Käyttöliittymä toteutuksen myötä havaittu selkeämpi toteutustapa käyttösekvensseihin. Coding Campista vakiokäytäntö Viikkopalaverin aika otettu Coding Camp -käyttöön 14

Riskit Riskin ID Nro Riski Vaikutukset toteutuessa 1 Opiskelija lopettaa kurssin kesken Suuri Ryhmällä on vähemmän työtunteja käytettävissä. Osaamista häviää projektista. Lopettaneen henkilön vastuualueet täytyy hoitaa, mikä vie aikaa joltakin muulta. 2 Asiakkaalla ei ole tarpeeksi aikaa yhteistyöhön projektiryhmän kanssa Suuri Projektiryhmä ei tiedä, mihin suuntaan pitäisi edetä eikä saa palautetta jo tehdystä. 3 Ohjelmistosuunnittelijat eivät saa tarpeeksi hyvin tietoonsa, mitä projektissa pitäisi tehdä 4 Projektiryhmä ei ymmärrä, mitä asiakas oikeastaan tarvitsee ja miten täyttää käyttäjän tarpeet. 5 Olemassa olevan simulaattorin rakenne hankaloittaa projektissa asetettujen vaatimusten toteuttamista 6 Luvataan tehdä enemmän kuin mihin käytettävissä olevilla resursseilla pystytään Suuri Keskikokoinen Keskikokoinen Keskikokoinen Ohjelmistoa ei voida toteuttaa asiakasta ja käyttäjää tyydyttävällä tavalla. Asiakas ei saa sitä, mitä tarvitsee Käyttöliittymän ja vaatimusten toteuttaminen vaikeutuu. Kaikkia sovittuja vaatimuksia ei saada toteuteuttua T-76.4115 76.4115 Iteration demo 7 Projektin jäsen sairastuu Keskikokoinen 8 Management tiimin ja kehittäjien välille Keskikokoinen syntyy juopa. 9 Joku projektin jäsen ei tee hänelle allokoituja Keskikokoinen tehtäviä 10 Muutokset olemassa olevaan simulaattoriin Keskikokoinen eivät ole yhteensopivat käyttöliittymän kanssa. Sairastuneen jäsenen tehtävät jäävät hoitamatta. Projektin sisällä syntyy kahden kerroksen väkeä, mikä aiheuttaa epäluuloa ja hidastaa ja vaikeuttaa työn tekemistä. Luistavan henkilön tehtävät jäävät hoitamatta ja projektin sujuvuus kärsii. Projektissa kehitetty toiminnallisuus ei välttämättä ole yhteensopiva uuden järjestelmän kanssa. Uusi tunnistettu riski Realisoitumista jossain määrin Kriittisessä tilassa Riskejä (järjestystä ja sanamuotoa ) päivitetty välietappikatselmuksen jälkeen 18.11 Riski 6 on uusi: Työmäärän arvionti haasteellista Riski 5: Olemassa olevaan joudutaan tekemään paljon muutoksia, jotta vaatimukset saadaan toteutettua. Oletus on ollut, että olemassa olevassa on toteutettu kaikki se laskenta, jonka tulokset käyttöliittymässä halutaan esittää. Riski 7: Yksi ryhmän jäsenen sairastuminen iteraation lopulla, aiheutti tehtävien jakamista muille 15

I1-iteraation tuotokset - Laadunvarmistusuunnitelma Laadunvarmistussuunnitelma Selkeyden vuoksi omana dokumenttinaan Koostettuna kaikki testaukseen liittyvä dokumentaatio I1 Iteraation testaussuunnitelma Yksikkötestit (Junit) Systeemitestaus Käytettävyystestaus Lähdekoodinanalysointia Systeemitestaus: Testipakettia (Test Suite) : Tutkiva testaus (Exploratory Testing, ET) 2 tutkivan testauksen test charteria I1 testitapaukset 8 kappaletta testitapauksia Testiloki Suoritetut testaukset koottuna taulukkoon Testiraportti Yhteenveto iteraation aikaisesta testauksesta Muuta laatuun liittyvää dokumentaatiota SEPA-päiväkirjat: Lähdekoodin staattinen analysointi Käytettävyyden arviointi 16

I1-iteraation tuotokset Tekninen määrittely Tekninen määrittelydokumentti Englannin kielinen Korkean tason arkkitehtuurisuunnitelman Alijärjestelmätason arkkitehtuurisuunnitelman ja määrittelyn JavaDoc-dokumentaatio Tekninen määrittely luokkatasolla Saatavilla osoitteesta http://users.tkk.fi/~sjkorpi/swproject/javadoc_i1 17

I1-iteraation tuotokset Tekninen määrittely Prosessikuva Simulation visualization GUI/User: Simulation creation Simulation configuration Simulation start Simulation reporting Facade: SimulationCreator ObjectFacade(s) SimulationController SimulationReporter COSCA: Creates objects Configure objects Runs simulation Creates reports 18

I1-iteraation tulokset Demo Demon aihe: Cosca järjestelmän käyttöliittymä opiskelijan näkökulmasta Toteutuksessa Wizard lähetysmistapa, jonka nähdään olevan helppo tapa ohjata uutta käyttäjää tekemään simulaatiossa tarvittavia valintoja Tyypillinen käyttötapaus, joka demoaa käytännössä kaiken tähän mennessä toteutetun toiminnallisuuden 1) Uuden simulaation luominen wizardin avulla Systeemin valinta esimerkkikonfiguraatioista Työvirran valinta esimerkkikonfiguraatioista Kustannusrakenteen valinta esimerkkikonfiguraatioista Päätössäännön valinta koko systeemille Aikajänteen määrittäminen 2) Päätössääntöjen vaihtaminen resurssikohtaisesti 3) Simulaation ajaminen välietappeihin/loppuun 4) Tulosten tarkastelu Välietapeissa ja lopussa 5) Simulaation sulkeminen 19

Käytetyt käytännöt Iteratiivinen ja inkrementaalinen ohjelmistokehitysmenetelmä Iteraatiosuunnittelu (toteutustehtävät, työmääräarviot, testaus) alussa hankalaa koska arkkitehtuurista ei ollut riittävän hyvää kuvaa. Kaksi kehityssykliä, joiden välissä välietappikatselmukset, oli hyvä ratkaisu Dokumentointi - ok Riskien hallinta - ok Riskit käytiin läpi välietappikatselmuksessa ja iteraation lopulla demoon valmistauduttaessa. Tuntiraportointi ok Kommunikointi ja palaverikäytännöt - Muutettu Säännölliset viikkopalaveri pois, Coding Camp tilalle Välietappikatselmus Management tiimin palaverikäytäntö tullaan palauttamaan, sen puuttuminen aiheuttanut jonkin verran hankaluuksia toisten kanssa ajan tasalla olemiseen ja töiden etenemiseen Pienryhmätoiminta Palveli tarkoitustaan I1:n alussa, käytännössä suhteellisen aikaa vievä tapa Ei käytetä I2 iteraatiossa Katselmointikäytäntö Käytetään jatkossakin vain kevyttä katselmointia, sähköpostitse Raskaampi katselmointikäytäntö poistettu Iteraatiodemo OK Vaatimusten määrittely ja hallinta -OK Vaatimusten kommunikoinnista ryhmän sisällä jatkossakin huolehdittava Käyttöliittymä Prototyyppi -OK Oli hyvä tapa päästä vauhtiin asian kanssa ja nähdä nopeasti jotain konkreettista Käyttäjätestauksesta hyvin palautetta. Testikäyttäjät (HKKKn 2 opiskelijaa) paneutuivat asiaan oikeasti. 20

Käytetyt työkalut Kehitysympäristö Eclipse 3.1 Jigloo SWT/Swing GUI Builder for Eclipse and WebSphere 3.5.2 (Graafisen käyttöliittymän kehittämiseen ) Borland Togerther Architect JDK 5.0 CVS versionhallinta Laatu Borland Togetherin Metrics Bugzilla 2.20 Metrics (Sourceforge) Projektin hallinta ja kommunikointi TikiWiki Tuntiraportointiin Excel-taulukko Sähköposti (IRC) Office-ohjelmistot 21

Yhteenveto I1 iteraatiosta Asetetut tavoitteet saavutettiin hyvin Toteutuksen osalta jopa ylitettiin Käyttöliittymän lisääminen olemassa olevaan toiminnallisuuteen on haasteellista Kohdatut ongelmat ja haasteet eivät ole kuitenkaan mitään poikkeuksellista, ovat osa työtä Toimintatavoissa ja kommunikoinnissa parannettavaa 22

Mitä I2ssa alustavia ajatuksia Iteratiivisuus Hyväksi havaittua kehityssyklikäytäntöä jatketaan ja pyritään parantamaan entisestään Coding Camp käytäntöä jatketaan Laskentalogiikan toimivuus Tavoitteena varmistaa esitettävien tulosten oikeellisuus Tuotetun koodin refaktorointia jatkokehitettävyyden ja selkeyden parantamiseksi Monipuolisempi konfigurointi Simulaation konfigurointi myös Puu-näkymän kautta Simulaatioiden tallennus Excel- ja teksti-raportoinnin integrointi Tulosten graafinen tarkastelu Visualisoinnin parantaminen Esim. pullonkaularesurssin visualisointi 23