COSCA - Vaatimusmäärittely v.3.1 Palaute: llehtola@cc.hut.fi
Muutoshistoria Versio Tekijä Pvm Kuvaus Hyväksynyt 0.1 Laura Lehtola 1.-10.10.2005 Ensimmäinen asiakkaalle kommentoitavaksi lähetettävä raakaversio 0.2 Laura Lehtola 12.10.2005 Korjattu Katariina Kemppaiselta saatujen lukuisten parannusehdotusten perusteella. Lisätty toiminnallisia vaatimuksia. 0.8 Laura Lehtola 13.10.2005 Luku 9 alustavat käyttötapaukset. Vaatimusten lisääminen. 0.9 Laura Lehtola 14.10.2005 Korkeantason käyttötapauskuvaukset. Vaatimusten linkittäminen. Johdannon kuvat. 1.0 Laura Lehtola 16.10.2005 Asiakkaan prioriteettien kirjaaminen, yleisiä korjauksia ja viilauksia. Elina Kontro, Kari Ylihärsilä 1.1 Kari Ylihärsilä 18.10.2005 Lisätty haluttujen ominaisuuksien työmääräarviot. 1.3 Laura Lehtola 27.10.2005 Kuvan 4 tarkennus. Toiminnalliset vaatimukset ja use caset muutettu ja selkeytetty uuden ymmärryksen valossa. Vaatimusten esivalinta i1:seen. 1.5 Laura Lehtola 1.11.2005 Uudet :t vaatimuksille. Asiakas 1.6 Laura Lehtola 17.11.2005 Use caset kirjoitettu auki. Vesa lisännyt työmääräarviot vaatimuksille. 1.7 Laura Lehtola 30.11.2005 Use casejen sekvenssit ja poikkeukset tarkistettu sekä puuttuvat kirjattu. Uudet vaatimukset lisätty. 2.0 Laura Lehtola 3.12.2005 Linkitykset vaatimusten välille ja testitapauksiin lisätty. 2.1 Laura Lehtola 17.1.2006 Iteraation 2 vaatimukset valittu ja uudet kirjattu. Elina Kontro, Vesa Haukkavaara, Santeri Saarinen Vesa Haukkavaara, Elina Kontro 2.5 Laura Lehtola 30.1.2006 Use caseja kirjoitettu auki 3.0 Laura Lehtola 20.2.2006 Dokumentin viimeistely Elina Kontro 3.1 Santeri Saarinen 20.2.2006 Lisätty viitteet testitapauksiin Elina Kontro
Sisällysluettelo 1 Dokumentin tarkoitus 2 2 Liiketoimintatavoitteet 2 2.1 Tausta 2 2.2 Ongelma 3 2.3 Projektin tavoitteet 3 3 Keskeisimmät käsitteet 3 4 Järjestelmän yleiskuva 5 5 Käyttäjäryhmät 7 6 Käyttöskenaariot 8 6.1 Kalle, HKKK:n opiskelija, 22v 8 6.2 Helena, HKKK:n opiskelija, 25v 8 6.3 Erkki, yritysjohtaja, 58v 8 7 Toiminnalliset vaatimukset 9 7.1 Systeemin 9 7.2 Työvirran ominaisuuksien 11 7.3 Kustannusten 12 7.4 Ajankulun hallinnointi 12 7.5 Päätössääntöjen valinta 12 7.6 Tulosten tarkastelu 13 7.7 Simulaation ajaminen 14 8 Ei-toiminnalliset vaatimukset 15 9 Käyttäjävaatimukset (käyttötapaukset) 16 9.1 Käyttötapauskuvaukset 17 10 Rajoitteet (constraints) 31
1 Dokumentin tarkoitus Tämän dokumentin tarkoituksena on kuvata vaatimukset COSCA simulaattorin jatkokehitysprojektille käyttäjän näkökulmasta. Vaatimusmäärittelyn tarkoituksena on auttaa asiakasta ja kehittäjiä ymmärtämään toisiaan läpi projektin suhteessa siihen, mitä toiminnallisuuksia ja ominaisuuksia projektin aikana toteutetaan, sekä hallita toteutettujen vaatimusten tilaa eri vaiheissa projektia. Vaatimuksia tullaan päivittämään tähän dokumenttiin koko projektin ajan. Tätä dokumenttia käyttävät osapuolet on kuvattu Taulukossa 1 Taulukko 1. Dokumenttia käyttävät osapuolet Ryhmä Aliryhmä Keskeisin syy lukemiselle Asiakkaat ja käyttäjät Asiakas Asiakkaan tekninen avustaja Tulevan järjestelmän potentiaaliset käyttäjät Projektiryhmä Järjestelmän kehittäjät Järjestelmän testaajat Käyttöohjeiden kirjoittajat Palautteen antaminen ominaisuuksien tarpeellisuudesta Palautteen antaminen ominaisuuksien toteuttamiskelpoisuudesta nykyjärjestelmän näkökulmasta Palautteen antaminen ominaisuuksien tarpeellisuudesta itselle sekä siitä, miten toiminnallisuus on heidän näkökulmastaan suunniteltu toteutettavaksi Tiedon saaminen siitä, mitä toimintoja ja ominaisuuksia käyttäjälle pitää tuottaa. Tiedon saaminen siitä, miten järjestelmän pitäisi toimia. Materiaalin saaminen käyttöohjeita varten. Projektin manageriryhmä Kurssin henkilökunta Mentor Vaatimusten statuksen seuraaminen. Palautteen ja arvosanan antaminen. 2 Liiketoimintatavoitteet Tässä kappaleessa kuvataan korkeantason tavoitteet kehitettävälle järjestelmälle. 2.1 Tausta CoSCA simulaattori on Helsingin Kauppakorkeakoulussa kehitetty tilaus-toimitusketjun päätöksiä ja hajautettua tuotannonohjausta mallintava työkalu. Työkalu on alun perin kehitetty tutkimustarkoituksiin tutkijalle, joka on tämän projektin asiakas. Simulaattorin toteutuksen ensimmäisessä vaiheessa keskeistä on ollut toteuttaa työkaluun sellaista toiminnallisuutta, jonka avulla tutkija on voinut toteuttaa tutkimustyössään tarvitsemansa simulaatioajot ja kerätä niiden tulokset jälkikäsiteltävään muotoon (Excel & SPSS). Simulaattorin käytettävyyteen tai opittavuuteen uusien käyttäjien näkökulmasta ei kehitystyössä ole toistaiseksi kiinnitetty huomiota.
2.2 Ongelma Asiakas haluaa päästä hyödyntämään simulaattoria tuotannon suunnittelun ja ohjauksen sekä toimitusketjun hallinnan opetuksessa. Asiakkaan keskeisenä tavoitteena on kehittää simulaattorista opetuksen apuväline, jonka avulla opiskelijat voisivat tutustua tilausten hallinnan (order management and scheduling) käsitteisiin, päätössääntöihin ja niiden käyttämisen vaikutuksiin erilaisissa tilanteissa ja toimintaympäristöissä. Lisäksi asiakas haluaisi tarjota yritysmaailmassa työskenteleville käytännönihmisille mahdollisuuden ymmärtää kokeilun kautta kuinka erilaisten päätössääntöjen käyttäminen vaikuttaa tilaus-toimitusprosessin ennustettavuuteen ja tehokkuuteen, esimerkiksi myöhästymisistä syntyviin kustannuksiin tai prosessivaraston kustannuksiin. Opetus- ja koulutuskäytön lisäksi hän haluaa mahdollisesti jakaa simulaattoria www:n kautta myös muille alan tutkijoille maailmassa. Nykyisellä simulaattorilla tämä on mahdotonta, koska simulaattorin käyttäjän on kyettävä muokkaamaan XML-dokumentteja simulaattorille syötteeksi, ajettava ohjelma Eclipse -kehitysympäristössä sekä luotava itse Excel-taulukot, joihin simulaatioajon raakatulokset kerätään tai ajettava tulokset sellaisinaan tyhjään teksti- tai Excel tiedostoon. Joissakin erikoistapauksissa simulaattorin käyttö nykyisellään edellyttää myös Java-ohjelmakoodin muokkaamista. 2.3 Projektin tavoitteet Projektin tavoitteena on tuottaa helppokäyttöinen ja nopeasti omaksuttavissa oleva käyttöliittymä, jonka avulla HKKK:n opiskelijat ja tilaus-toimitusprosessin parissa työskentelevät ihmiset (yhteisnimike tästä eteenpäin oppijat ) pystyvät kokeilemaan, miten erityyppisten päätössääntöjen (kts. 3. keskeiset käsitteet) käyttäminen erilaisissa testitilanteissa vaikuttaa tilausten käsittelyyn ja läpimenoon liittyviin tunnuslukuihin. Oppijan tulee kyetä luomaan erilaisia testausympäristöjä ja säätämään luomansa systeemin kuormitusastetta. Lisäksi opiskelijan tulee kyetä vaihtelemaan ominaisuuksia, joita systeemiin tulevilla tilauksilla (töillä) on eli sitä, millä jakaumalla nämä ominaisuudet vaihtelevat. Töiden ominaisuuksia ovat esimerkiksi asiakkaan vaatima valmistumispäivä sekä työn koko. Lisäksi opiskelijan tulee kyetä valitsemaan simulaatiossa analysoitavat ja vertailtavat päätössäännöt. Järjestelmän tulee antaa oppijalle palautetta hänen tekemiensä valintojen seurauksista erilaisissa tilanteissa. 3 Keskeisimmät käsitteet Tilaukset (= työt) virtaavat niitä prosessoivan tuotanto- /palvelujärjestelmän resurssien (= systeemi) läpi ennalta määritellyn järjestyksen mukaan. Yksittäisen työn mentyä läpi kaikista sen valmistumisen kannalta tarpeellisista resursseista, työ on valmis ja sen toteutunut läpimenoaika voidaan laskea. Verstaalla tarkoitetaan resursseista koostuvaa alisysteemiä, jossa resurssit voivat olla joko peräkkäin (flow shop) tai satunnaisessa järjestyksessä (job shop). Systeemillä tarkoitetaan verstaista koostuvaa kokonaissysteemiä, jossa yksittäiset verstaat voivat myös olla toisiinsa nähden flow job- tai job shop rakenteessa. Flow shopin ja job shopin perusrakenteet on kuvattu kuvissa 1 ja 2.
Flow Shop Manufacturing i Resurssi Resurssi Resurssi 1 2 n Operation 1 Operation 2 Operation j i Kuva 1. Flow shop (Kemppaisen luentokalvoista) Job Shop Manufacturing Resurssi Resurssi i Resurssi C i d i Resurssi Resurssi Kuva 2. Job shop (Kemppaisen luentokalvoista) Simuloitaessa tällaisia tilaus-toimitusprosesseja töiden saapuminen systeemiin oletetaan tietyllä tavalla tilastollisesti jakautuneeksi. Usein systeemin toimintaa tarkastellaan stabiilissa tilassa (tilassa, jossa töitä on virrannut systeemiin niin kauan, että virtaamisen käynnistyminen ei enää vaikuta tuloksiin). Päätössääntö on yläkäsite mille tahansa tilaustenkäsittelyyn liittyvälle päätösperiaatteelle /-menetelmälle. Tässä työssä keskeisiä päätössääntötyyppejä ovat priorisointisääntö, joka viittaa siihen, miten yksittäiselle resurssille muodostunut työjono puretaan, vapautussääntö, joka viittaa siihen, miten systeemiin (esim. tehtaaseen) päästettäviä tilauksia rajoitetaan, sekä toimituspäivän määrittelyperiaate. Esimerkkejä priorisointisäännöistä ovat esim. lyhin työ ensin (shortest processing time SPT) ja aikaisin toimituspäivä ensin (earliest due date EDD), joissa ensimmäisessä jonosta valitaan käsiteltäväksi aina kooltaan pienin työ ja jälkimmäisessä se, jossa asiakkaan vaatima toimituspäivä on pikimmin. Erityyppisissä ja kokoisissa systeemeissä ja erilaisilla täyttöasteilla, toiset päätössäännöt menestyvät paremmin ja toiset huonommin
erilaisten mittareiden, esimerkiksi maksimimyöhästymisen tai töiden keskimääräisen myöhästymisen suhteen. Kuvassa 3 on havainnollistettu aihealueen käsitteitä ja niiden välisiä suhteita karkealla tasolla. Systeemi Täyttöaste Vapautussääntö Alisysteemi Jono systeemiin Toimituspäivän määrittelyperiaate Menestyminen Flow Shop Resurssi Job Shop Operaatio Jono resurssille Työ Perusominaisuudet: - Koko - Vaadittu toimituspäivä - Saapumisajanhetki Johdetut ominaisuudet: - Läpimenoaika Priorisointisääntö Tekijät: - Maksimimyöhästyminen - Keskimyöhästyminen Myöhästymiskustannukset... Kuva 3. Aihealueen käsitteet ja niiden väliset suhteet 4 Järjestelmän yleiskuva Tässä kappaleessa kuvataan COSCA -järjestelmän perustoiminnallisuudet korkealla tasolla järjestelmän käyttäjän näkökulmasta. Järjestelmän perustoiminnallisuudet voidaan jakaa kuuteen osa-alueeseen, jotka esitellään hyvin lyhyesti seuraavissa kappaleissa ja alla olevassa kuvassa 4.
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 Kuva 4. Järjestelmän toiminnallisuus korkealla tasolla COSCA järjestelmän avulla käyttäjä voi luoda graafisesti erilaisia systeemeitä, jotka vastaanottavat tietyllä jakaumalla tilauksia ja käyttävät päätöstentekoon erilaisia menetelmiä. Järjestelmä visualisoi käyttäjälle tehtyjen päätösten vaikutuksia sekä simulaation lopussa että niin valittaessa myös simulaation aikana. Käytännössä käyttäjä voi rakentaa graafisen käyttöliittymän avulla systeemin koostamalla resursseista verstaita ja näiden muodostamista isommista verstaista taas kokonaissysteemin. Lisäksi hän voi asettaa eri tyyppisten verstaiden muodostamia kokonaisuuksia job shop- tai flow shop muotoon aivan samoin kuin yksittäisiä resurssejakin. Lisäksi käyttäjä voi määrittää verstaiden ja yksittäisten resurssien ominaisuudet (mm. koot ja kapasiteetit). Jos käyttäjä ei halua itse määritellä systeemiä ja sen rakennetta alusta alkaen, hän voi käyttää jotakin järjestelmään valmiiksi tallennetuista esimerkkisysteemeistä sellaisenaan tai oman muokkauksensa pohjana. määrittämään systeemiin tulevien töiden kokoa ja saapumisnopeutta parhaiten mallintavan jakauman. Lisäksi hän pystyy valitsemaan käytettävät päätössäännöt tarvittaessa jopa resurssikohtaisesti, mutta toisaalta myös valitsemaan kerralla käytettävät säännöt useille alisysteemeille samanaikaisesti. Simulaation kokonaiskesto kuvitteellisissa viikoissa, sekä ajankohdat joina välituloksia voi tarkastella (raportointisykli) on valmiiksi asetettu. Käyttäjä voi ajaa simulaation joko kerralla loppuun tai vaihtoehtoisesti
tarkastella välituloksia valitsemissaan pisteissä. Järjestelmä tarjoaa päätössääntöihin liittyvät tulokset muodossa, joka on käyttäjälle ymmärrettävä sekä mahdollisuuden muuttaa asetuksia simulaation välipisteissä. 5 Käyttäjäryhmät Tässä kappaleessa kuvataan COSCA-järjestelmän käyttäjäryhmät sekä heidän tärkeimmät tehtävänsä järjestelmällä. Käyttäjäryhmä Kuvaus Päätehtävät Lukumäärä Tärkeys Opiskelija Opettaja HKKK:lla Tuntee tuotannonsuunnittelun ja toimitusketjun hallinnan perusteet, mutta ei välttämättä tunne tilausten käsittelyyn liittyviä peruskäsitteitä eikä päätössääntöjä entuudestaan. Ei tiedä pitäisikö hänen olla kiinnostunut aihepiiristä. Käsiteltävien asioiden asiantuntija. Haluaa motivoida opiskelijoita kiinnostumaan aihealueesta. Kokeilee yksinkertaisilla koeasetelmilla, miten päätössäännöt käyttäytyvät erilaisissa tilanteissa Haluaa esitellä opiskelijoiden edessä erilaisten päätössääntöjen käyttäytymissä eri tilanteissa. 100 1 1-3 4 Yrityksen työntekijä Tuntee tilaus-toimitusprosessin käytännön toiminnan kautta. Ei välttämättä käytä tutkijan termejä tai tunne päätössääntöjä. On kiinnostunut kokeilemaan, mikä voisi parantaa tilaus-toimitusketjun sujuvuutta omassa yrityksessä. Tarvitsee opiskelijaa enemmän vapausasteita kyetäkseen muokkaamaan koeasetelmaa oman yrityksensä tilannetta vastaavaksi. Tutkija HKKK:ssa Käsiteltävien asioiden asiantuntija. Tekee monimutkaisia toistokokeita erilaisilla koeasetelmilla. Tarvitsee tulokset jälkikäsiteltävään muotoon. Tekninen asiantuntija Aihealueen tutkijat muualla maailmassa. Tuntee aihealuetta, mutta ei yhtä syvällisesti kuin tutkija. Tuntee aihealueen ja tutkijoiden käsitteet, mutta ei ole käyttänyt simulaattorin ensimmäistä versiota. Saattaa pelätä simulaattorin tallentavan hänen tutkimustuloksensa ja jonkun toisen hyödyntävän niitä (?). Saattaa pelätä simulaattorin tekevän oletuksia, jotka eivät hänen mielestään relevantteja. Lisää järjestelmään toiminnallisuutta. Leikkii simulaattorilla keksiäkseen uusia kehityskohteita. Tekee monimutkaisia toistokokeita erilaisilla koeasetelmilla. Tarvitsee tulokset jälkikäsiteltävään muotoon. 30 3 1 2 1 5 30 2
6 Käyttöskenaariot 6.1 Kalle, HKKK:n opiskelija, 22v Kalle suorittaa logistiikan kurssia yhtenä monista syksyn kursseista. Kalle on kiinnostunut kurssin aihealuetta enemmän yritysstrategiasta ja kanssaopiskelijattarista. Kurssin teoreettisemmat osasuoritukset eivät ole menneet Kallen osalta erityisen hyvin, ja niinpä hän valitsee valinnaisista osasuorituksista soveltavan harjoitustehtävän, joka pohjautuu CoSCA -simulaattorin käyttöön. Tehtävänä on vertailla vaihtoehtoisten toimintamallien vaikutuksia eri kokoisissa systeemeissä ja erilaisilla töiden saapumisnopeuksilla. Kalle lataa ohjelman omalle koneelleen HKKK:n sivuilta ja asentaa sen viidessä minuutissa. Kalle avaa järjestelmän ja valitsee tilan, jossa voi itse luoda systeemeitä ja ajaa simulaatioita. Kalle valitsee järjestelmään valmiiksi koostetun esimerkkiympäristön ja päättää ettei tee tähän systeemiin muutoksia. Tämän jälkeen Kalle asettaa systeemiin saapuvien töiden saapumisnopeuden tasaisesti jakautuneeksi ja töiden koot ja vaaditut toimituspäivämäärät normaalisti jakautuneiksi. Seuraavaksi Kalle valitsee ajettavaksi simulaation siten, että kaikista yksittäisille resursseille muodostuneista jonoista työt puretaan kahta erilaista prioriteettisääntöä käyttäen. Tuloksia Kalle haluaa tarkastella graafisesti, minkä vuoksi hän valitsee muuttujat, joiden perusteella haluaa arvioida käytettyjen sääntöjen hyvyyttä. Tässä tapauksessa Kalle valitsee toiseksi muuttujaksi töiden saapumisnopeuden ja toiseksi maksimimyöhästymisen. Näiden perusteella hän päättelee, että sääntö xxx toimisi tämänkaltaisessa systeemissä paremmin sellaisessa tilanteessa, jossa töitä tulee nopeasti ja systeemin täyttöaste on suuri. 6.2 Helena, HKKK:n opiskelija, 25v Helena on kiinnostunut tilaus-toimitus asioista ja osallistuu siksi asiaa käsittelevälle jatkokurssille. Kurssin suoritukseen kuuluu tietokoneluokkaopetuskerta, jossa pelataan CoSCA-simulaatiopeliä. Helena avaa järjestelmän koulun tietokoneelta. Hän luo opettajan työohjeiden mukaisen systeemin koostaen sen erilaisista alisysteemeistä, sekä asettaa töiden saapumisnopeuden ja jakauman vaadituiksi. Tämän jälkeen hän asettaa mieleisensä päätössäännöt ensimmäisen pelikuukauden ajaksi voimaan ja ajaa simulaatiota kuukauden eteenpäin. Tämän jälkeen hän tarkastelee tuloksia ja huomaa, että vaikka töiden läpivirtaus on muuten ollut varsin sujuvaa, ovat jotkut todella paljon myöhästyneet työt aiheuttaneet huomattavia kustannuksia hänen yritykselleen. Niinpä hän lukee hieman lisää kurssimateriaalia, tekee muutoksia käytettäviin päätössääntöihin ja ajaa seuraavan kuukauden opettajan ohjeiden mukaisesti läpi. 6.3 Erkki, yritysjohtaja, 58v Erkki on osallistunut Helsingin Kauppakorkeakoulun järjestämään Toimitusketjun koordinoinnin kehittäminen workshopiin, jossa käsitellään yritysten tilaustoimitusprosessien tehostamista hajautettavissa olevien
päätössääntöjen avulla. Seminaarin vetäjä Katariina Kemppainen on puhunut aamupäivällä toimitusketjun hallinnasta ja tuotannon ohjauksesta sekä niihin liittyvien päätösten koordinoinnista yksinkertaisten sääntöjen avulla, ja iltapäivällä osallistujat voivat analysoida oman yrityksensä toimintaa COSCA järjestelmän avulla atkluokassa. Erkki avaa ohjelman ja valitsee tilan, jossa voi luoda oman yrityksensä tehdasta parhaiten kuvaavan systeemin. Erkki valitsee pohjaksi luennoitsijan suositteleman systeemin (kenkätehdas), johon lisää vielä yhden Flow Shopin. Tämän jälkeen hän asettaa töiden keskimääräisen saapumisvälin sekä jakauman joka parhaiten mallintaa töiden kokoja ja haluttuja toimituspäiväpyyntöjä. Erkki kokeilee, miten myöhästymiskustannuksiin vaikuttaisi se, jos jokaisella koneella käsiteltäisiin aina ensin se työ, jolle pyydetty toimituspäivä on lähimpänä verrattuna tilanteeseen, jossa käsiteltäisiin aina kooltaan pienin työ. Erkki huomaa ettei ole asettanut lainkaan myöhästymiskustannuksia ajan suhteen ja käy vielä asettamassa tämän tiedon. Sitten hän käynnistää simulaation ja tarkastelee tuloksia järjestelmän näyttämästä graafista. 7 Toiminnalliset vaatimukset Tässä kappaleessa kuvataan käyttäjän näkökulmasta, mitä toiminnallisuutta järjestelmään tullaan toteuttamaan. Toistaiseksi kuvatun perustoiminnallisuuden osalta järjestelmän käyttäjiä ovat kaikki käyttäjäryhmät, tämän vuoksi jokaisen vaatimuksen osalta ei ole erikseen merkitty käyttäjää. Tässä vaiheessa vaatimukset on linkitetty luvun 9 korkeantason käyttötapauksiin, mutta myöhemmissä vaiheissa kun alikäyttötapaukset tarkentuva linkitys tehdään tarkemmalla tasolla. Tärkeys asiakkaalle on kuvattu asteikolla 1. Aivan välttämätön 2. ehdoton, 3. tärkeä ja 4. mahdollinen, joista korkeimpaan luokkaan asiakas on saanut asettaa korkeintaan 20% vaatimuksista. Työmäärä kuvaa ko. vaatimuksen toteuttamisen vaatimaa suhteellista työmäärää asteikolla 1. toteutettavissa pienellä työmäärällä, 2. vaatii kohtuullisen paljon työtä, 3. vaatii paljon työtä. Työmäärä arvion on tehnyt projektin pääkehittäjä ja se perustuu hänen subjektiiviseen näkemykseensä toteutuksen vaativuudesta yleisesti ja olemassa olevaan arkkitehtuuriin sidottuna. Vaatimuksen tila kuvataan asteikolla: Ehdotettu, Asiakas hyväksynyt, Valittu toteutettavaksi iteraatiossa x, Toteutettu,, Verifioitu, Hylätty. Vaatimusten tilaa seurataan ja dokumentoidaan tähän raporttiin viikoittain. 7.1 Systeemin Toiminto Vaatimus Tärkeys asiakkaalle TSY1 TSY2 Systeemin Systeemin käyttämään jotakin järjestelmän kolmesta valmiiksi tarjoamasta esimerkkisysteemistä. luomaan alisysteemeistä ( = Työ Tila UC 1 1 UC1.1 2 3 UC1.2
Toiminto Vaatimus Tärkeys asiakkaalle TSY3 TSY4 TSY5 TSY6 TSY7 TSY8 TSY9 Systeemin Systeemin Systeemin Systeemin Systeemin Systeemin Systeemin resurssit, flow shopit, job shopit, sekä näistä muodostetut yhdistelmät) koostuvan systeemin. tallentamaan luomansa simulaation myöhempiä simulaatioita varten määrittelemään systeemissä olevien alisysteemien (flow shopit, job shopit, resurssit) ominaisuuksia määrittämään systeemissä olevien alisysteemien välisen hierarkian lisäämään ja poistamaan jo tallennetuista systeemeistä (omat ja esimerkkisysteemit) alisysteemeitä. määrittelemään kerralla useampien systeemissä olevien alisysteemien ((flow shopit, job shopit, resurssit) ominaisuudet samoiksi. poistamaan luomiaan systeemeitä järjestelmän muistista. lisäämään ja poistamaan luomastaan tehtaasta alisysteemeitä pelin aikaisissa välietapeissa. Työ Tila UC 2 3 UC1.5 2 2 UC1.4 2 1 UC1.3 3 1 UC1.3 Vaatii TSY2:n toteutta misen ensiksi 4 2 Ehdotettu UC1.4 4 3 I2 UC1.6 4 Hylätty -
7.2 Työvirran ominaisuuksien Toiminto Vaatimus Tärkeys asiakkaalle TTY1 TTY2 TTY3 TTY4 TTY5 TTY6 TTY7 TTY8 Työvirran ominaisuuksien Työvirran ominaisuuksien Työvirran ominaisuuksien Työvirran ominaisuuksien Työvirran ominaisuuksien Työvirran ominaisuuksien Työvirran ominaisuuksien Työvirran ominaisuuksien määrittämään systeemiin tulevien töiden kokoa parhaiten mallintavan jakauman. määrittämään töiden saapumisnopeutta parhaiten mallintavan jakauman. valitsemaan toimituspäiväpyyntöjä parhaiten mallintavan jakauman. valitsemaan töiden kokoa, saapumisnopeutta ja toimituspäiväpyyntöjä mallintavan kokonaisjakauman järjestelmän tarjoamista kolmesta esimerkkivaihtoehdoista määrittämään luomansa tehtaan kuormitusasteen keskiarvon ja satunnaisuuden prosenttiyksikön tarkkuudella (oletusjakauma normaalijakauma). valitsemaan luomansa tehtaan kuormitusasteen järjestelmän tarjoamista esimerkkikuormitusasteista (oletusjakauma tasajakauma). määrittämään töiden koolle keskiarvon ja satunnaisuuden. määrittämään toimituspäiväpyyntöjen jakauman ominaisuudet. Työ Tila UC 2 1-3 Riippuen siitä, miten paljon valinnaisuutta ja konfiguroitavuutta jakauman valinnassa halutaan tarjota Ehdotettu UC2.2 2 Katso TTY1 Ehdotettu UC2.2 1 Katso TTY1 Ehdotettu UC2.2 2 2 I1: UC2.1 2 1 UC2.3 1 1 I1:? 1? 2 Ehdotettu UC2.3
7.3 Kustannusten Toiminto Vaatimus Tärkeys asiakkaalle TKU1 TKU2 Kustannusten Kustannusten valitsemaan tehtaaseen tulevia töitä koskevan kustannusrakenteen järjestelmän tarjoamista esimerkkikustannusrakenteista määrittelemään myöhästymis-, kiirehtimis- ja varastointikustannusten väliset suhteet itse. Työ Tila UC 2 1 UC3.1 3 2 UC3.2 7.4 Ajankulun hallinnointi Toiminto Vaatimus Tärkeys asiakkaalle TTA1 Ajankulun hallinnointi etukäteen määrittämään simulaation kokonaiskeston ja välin, jolla järjestelmä näyttää tulokset. Työ Tila UC 2 3 UC4.1 7.5 Päätössääntöjen valinta Toiminto Vaatimus Tärkeys asiakkaalle TPÄ1 TPÄ2 TPA3 Päätössääntöjen valinta Päätössääntöjen valinta Päätössääntöjen valinta valitsemaan käytettävät priorisointisäännöt flow shop- ja job shop kohtaisesti järjestelmän tarjoamista vaihtoehdoista. valitsemaan CONWIP tai Instant vapautussäännöt flow shop ja job shop -kohtaisesti valitsemaan CONWIP tai Työ Tila UC 1 2 UC5.1 2 2 UC5.1 2 2 I2/Hylätty (Alkuperäinen UC1.5
Toiminto Vaatimus Tärkeys asiakkaalle TPÄ4 TPÄ5 Päätössääntöjen valinta Päätössääntöjen valinta Instant vapautussäännöt resurssikohtaisesti. valitsemaan käytettävät priorisointisäännöt resurssikohtaisesti. kerralla valitsemaan käytettävät säännöt useille resursseille ja systeemeille. Työ Tila UC Cosca ei tukenut tämän totetuttamista) 2 2 UC5.3 4 2 UC5.2 7.6 Tulosten tarkastelu Toiminto Vaatimus Tärkeys asiakkaalle TTU1 TTU2 TTU3 TTU4 TTU5 TTU6 Tulosten tarkastelu Tulosten tarkastelu Tulosten tarkastelu Tulosten tarkastelu Tulosten tarkastelu Tulosten tarkastelu tarkastelemaan keskeisimpiä simulaation tuloksiin liittyviä tunnuslukuja simulaation lopussa. tarkastelemaan keskeisimpiä simulaation tuloksiin liittyviä tunnuslukuja simulaation aikaisissa välietapeissa. näkemään, kuinka pitkät työjonot eri resursseilla oli tietyissä simulaation pisteessä Käyttäjä voi palata tarkastelemaan aikaisempien peliviikkojen tuloksia. tallentamaan tulokset myöhempää katselua varten. tarkastelemaan tuloksia, jotka ovat syntyneet ja Työ Tila UC 1 2 UC6.1 2 1 UC6.2 2 2 Ehdotettu UC6.8 2 2 UC6.2 2 2 UC6.6 3 2 (Toteutettu osittain. Tuloksia ei voi avata simulaattorilla, mutta niitä voi UC6.7
Toiminto Vaatimus Tärkeys asiakkaalle TTU7 TTU8 TTU9 Tulosten tarkastelu Tulosten tarkastelu Tulosten tarkastelu talletettu aikaisemmilla simulaattorin käyttökerroilla. tallentamaan simulaation tulokset myös Exceliin, jotta voisi käsitellä niitä tavoilla, jotka eivät ole järjestelmässä toistaiseksi mahdollisia. Käyttäjä voi nähdä visuaalisesti merkkejä systeemin tilasta. Käyttäjä voi verrata tuloksiaan referenssisääntöihin Työ Tila UC 3 2 tarkastella kuvana.) (Vaatii jatkokehitystä alkuperäisen Coscan raporttitehtaisiin, kts. jatkokehitysdokumentti) UC6.6 3 3 Ehdotettu UC6.4, UC6.5? 3 7.7 Simulaation ajaminen Toiminto Vaatimus Tärkeys asiakkaalle TSA1 TSA2 TSA3 TSA4 Simulaation käynnistys Simulaation ajaminen Simulaation ajaminen Simulaation ajaminen käynnistämään simulaation. käynnistämään useita simulaatioajoja samanaikaisesti. keskeyttämään simulaation. lopettamaan simulaation Työ Tila UC 1 1 UC7.1 4 1 Ehdotettu UC7.4 1 2 Poistettu UC7.2 2 1 UC7.3
8 Ei-toiminnalliset vaatimukset Tässä kappaleessa kuvataan järjestelmän ei-toiminnalliset (ns. Laatu-) vaatimukset. Osa-alue Vaatimus Tärkeys asiakkaalle ETV1 Virhetilanteet Järjestelmä toipuu syöttövirheistä. ETV2 Virhetilanteet Järjestelmä palauttaa käyttäjälle selkeitä virheilmoituksia. ETV3 Virhetilanteet Käyttäjän on kyettävä muuttamaan virheellisesti koostamaansa systeemiä. EKÄ1 Käyttöönotettavuus Järjestelmä on asennettavissa alle viidessä minuutissa. EKÄ2 Käyttöönotettavuus Käyttäjä voi avata ohjelman alle kymmenellä hiiren klikkauksella. ETJ1 Jatkokehitettävyys Järjestelmä on jatkokehitettävissä projektin jälkeen. ETJ2 Jatkokehitettävyys Järjestelmään on helposti jatkokehitettävissä hallinnointityökalu opettajalle. ETJ3 Jatkokehitettävyys Järjestelmän arkkitehtuuri on modulaarinen. ETJ4 Jatkokehitettävyys Järjestelmä kykenee havaitsemaan ohjelmakoodiin lisätyn uuden päätössäännön ja näyttämään sen uutena vaihtoehtona käyttöliittymässä. ETK1 Käytettävyys tarkastelemaan simulaation tuloksia graafisesti. ETK2 Käytettävyys Järjestelmässä käytettävät käsitteet ovat käyttäjän aihealueesta käyttämiä käsitteitä. ETK3 Käytettävyys Järjestelmä ohjaa käyttäjää tekemään sellaisia valintoja, jotka eivät johda virhetilanteisiin. Perustelu (tarvittaessa) 1 3 2 Kehittäjien on huomioitava, että systeemiä ei voida luoda niin staattiseksi, ettei tämä onnistuisi. 3 Opiskelijat eivät välttämättä jaksa käyttää aikaa järjestelmän konfigurointiin. 1 Järjestelmää on voitava käyttää tuntematta Javakieltä tai Eclipse ympäristöä lainkaan. 2 OK 2 Luokkaopetuksen kannalta opettajan hallinnointikäyttöliittymä saattaisi olla todennäköinen jatkokehityskohde. 2 OK Ei huomioitu erikseen kehitykses sä 2 Hylätty 2 2 3 Aihealueen termistö on niin vaikeaa, että noviisikäyttäjän on voitava valita vaihtoehdoista muistelun sijaan.
Osa-alue Vaatimus Tärkeys asiakkaalle ETK4 Suorituskyky Opiskelijalle keskeisimpien yksittäisten simulaatioajojen suoritus ei kestä yli 30 sekuntia. ETT1 Tulokset Käyttäjä voi tallentaa ajamiensa simulaatioiden tulokset muotoon, joka ei edellytä simulaattorin käyttämistä myöhemmässä tilanteessa. ETO1 Ohjeistus Käyttäjällä on mahdollisuus saada keskeisimpien toimintojen tekemiseen on-line apua järjestelmältä ETL1 Laitteisto Järjestelmän on toimittava Windows XP käyttöjärjestelmässä. Perustelu (tarvittaessa) 2 Luokkatilanteessa olisi varsin ankeaa odottaa simulaattorin rupsutusta yli puolta minuuttia. 2 4 Simulaattorin eräs tarkoitus on aihealueen syvällisempi oppiminen. Tiedon syöttäminen pienissä paloissa toiminnan kautta vastaisi tähän tarpeeseen hyvin. 1 9 Käyttäjävaatimukset (käyttötapaukset) Tässä kappaleessa kuvataan järjestelmän korkeimman tason käyttäjävaatimukset käyttötapauksina. Korkeimman tason käyttötapaukset jakautuvat alikäyttötapauksiksi, jotka on priorisoitu samalla asteikolla kuin toiminnalliset ja ei-toiminnalliset vaatimukset. Osa korkeantason käyttötapauksista on kirjoitettu jo tässä vaiheessa auki. Toteutusiteraatioon 1 (= iteraatio 2) valittavista käyttötapauksista luodaan yksityiskohtaiset kuvaukset tarkalla tasolla iteraation alussa. Tärkeys asiakkaalle UC1 Vaatimukset Systeemin UC1.1 Esimerkkisysteemin käyttäminen 2 TSY1 UC1.2 Systeemin luominen 2 TSY2 UC1.3 Systeemin muokkaaminen 1 TSY5, TSY6 UC1.4 Systeemin osien ominaisuuksien 2 TSY4 UC1.41 Flow Shopin ominaisuuksien 2 TSY4 UC1.42 Job Shopin ominaisuuksien 2 TSY4 UC1.43 Resurssin ominaisuuksien 2 TSY4 UC1.5 Simulaation tallentaminen järjestelmään 2 TSY3 UC1.6 Simulaation poistaminen järjestelmästä 2 Ehdotettu TSY8 UC2 Työvirran UC2.1_uusi Esimerkkityövirran valitseminen 1 TTY4 UC2.2 Työvirran manuaalisesti 2 TTY1, TT12, TTY3 UC2.3 Kuormitusasteen 1 TTY5, TTY6 UC3 Kustannusrakenteen 2
Tärkeys asiakkaalle Vaatimukset UC3.1 Esimerkkikustannusrakenteen valitseminen 2 TKU1 UC3.2 Kustannusrakenteen manuaalisesti 2 TKU2 UC4 Simulaation aikajänteiden UC4.1 Simulaation kokonaiskeston ja tarkasteluvälien 1 /Hylätty TTA1 UC5 Käytettävien päätössääntöjen valinta UC5.1 Käytettävien päätössääntöjen (prioriteetti- ja vapautus-) valinta alisysteemikohtaisesti 1 TPA1, TP2, TPA3 UC5.2 Käytettävien päätössääntöjen asettaminen 3 TPA4 useille alisysteemeille samoiksi. UC5.3 Käytettävien päätössääntöjen asettaminen resurssikohtaisesti. 3 TPA5 UC6 Tulosten tarkastelu UC6.1 Tulosarvojen tarkastelu simulaation lopussa 1 TTU1 UC6.2 Tulosarvojen tarkastelu simulaation 2 TTU2 välietapeissa UC6.2b Aikaisempien välietappitulosten tarkastelu 3 TTU4 UC6.3 Tulosten visualisointi valittujen muuttujien 3 TTU8 suhteen UC6.4 Simulaation tulosten visualisointi valituilla ajanhetkillä TTU8 4 (toteutettu osana UC6.3:a) UC6.5 Simulaation tulosten visualisointi 2 Ehdotettu TTU8 alisysteemikohtaisesti UC6.6 Tulosten tallennus 2 TTU5, TTU7 UC6.7 Aiemmin tallennettujen tulosten katselu 4 Ehdotettu TTU6 UC6.8 Resurssikohtaisten tulosten tarkastelu 2 Ehdotettu TTU3 UC6.9 Tulosten vertailu referenssisääntöjen tuloksiin 2 UC7 Simulaation ajaminen UC7.1 Simulaation käynnistys 2 TSA1 UC7.2 Simulaation keskeytys 3 Iter. 1/Hylätty TSA3 UC7.3 Simulaation lopetus 2 TSA4 UC7.4 Useiden simulaatioajojen ajaminen 4 Ehdotettu TSA2 UC8 Simulaattorin asentaminen 2 9.1 Käyttötapauskuvaukset Iteraatiossa 1 kokonaan toteutetut käyttötapaukset on merkitty keltaisella lukemisen helpottamiseksi. on Harmaalla on merkitty ne vaatimukset, jotka on joko kokonaan poistettu tai jotka oli kertaalleen toteutettu Iteraatiossa 1, mutta joiden toteutussuunnitelmaa on muutettu tämän jälkeen. Esimerkki tällaisesta vaatimuksesta on esimerkkikustannusrakenteen valitseminen, joka oli toteutettu Iteraatiossa 1, mutta jonka toteutus päätettiin yhteistuumin asiakkaan kanssa muuttaa uutta logiikkaa noudattavaksi. Yläkäyttötapaukset esim. UC1 kannattaa lukea, jotta ymmärtää miten varsinainen käyttötapaus, esim. UC1.1 alkaa.
UC1 Systeemin Käyttäjä luo systeemin, jota haluaa simulaatiossa käyttää Käyttäjä. Järjestelmä. Perussekvenssi 1. Käyttäjä ilmoittaa haluavansa luoda systeemin 2. Järjestelmä näyttää käyttäjälle valittavissa olevat esimerkkisysteemit sekä mahdollisuuden luoda oma systeemi 3. UC 1.1 tai UC 1.2 Viittaukset testitapauksiin UC1.1 Esimerkkisysteemin käyttäminen Käyttäjä valitsee järjestelmän tarjoaman esimerkkisysteemin käytettäväksi Käyttäjä on avannut tilan (wizard), jossa voi määrittää simulaation komponentteja. Perussekvenssi 1. Käyttäjä valitsee jonkun tarjotuista esimerkkisysteemeistä käytettäväksi. 2. Käyttäjä hyväksyy valinnan. 3. Järjestelmä näyttää käyttäjälle systeemin koostumuksen puurakenteena sekä systeemi-ikkunassa kunhan koko simulaatio on luotu 1 Viittaukset testitapauksiin 2.X Käyttäjä on valinnut systeemin käytettäväksi. TSY1 UC1.2 Systeemin luominen Käyttäjä luo simulaatiossa käyttämänsä systeemin komponenteista (flow shop, job shop, resurssit) Perussekvenssi 1. Käyttäjä luo tyhjän simulaation 2. Järjestelmä näyttää simulaatiopuussa systeemin, joka koostuu yhdestä koneesta 3. Käyttäjä valitsee puusta systeemin ja sille aliresurssien luomisen
Viittaukset testitapauksiin 3.1 4. Järjestelmä näyttää ikkunan, josta käyttäjä voi valita flow shopin, job shopin tai koneen. 5. Käyttäjä valitsee esim. flow shopin, joka koostuu viidestä koneesta ja hyväksyy valinnan 6. Järjestelmä näyttää uuden systeemin koostumuksen, sekä puunäkymässä että systeemi-ikkunassa Järjestelmä näyttää systeemin halutunlaisena sekä puuikkunassa että systeemi-ikkunassa. Muutokset ovat oikeasti tapahtuneet järjestelmässä. Viittaukset testitapauksiin 3.2 UC1.3 Systeemin muokkaaminen Käyttäjä lisää ja poistaa systeemin komponentteja Perussekvenssi 1. Käyttäjä valitsee puusta systeemin osan, jonka haluaa poistaa tai jolle haluaa lisätä aliresurssin 2. Käyttäjä valitsee resurssin poistamisen (tai lisäämisen kts. UC1.2) 3. Järjestelmä poistaa valitun resurssin ja näyttää systeemin uuden koostumuksen sekä puunäkymässä että systeemiikkunassa Jos simulaatiota on jo ajettu, systeemiin ei voi lisätä tai poistaa systeemin osia (flow shop, job shop, resurssi) Järjestelmä näyttää systeemin halutunlaisena sekä puuikkunassa että systeemi-ikkunassa. Muutokset ovat oikeasti tapahtuneet järjestelmässä. UC1.4 Systeemin osien ominaisuuksien Käyttäjä määrittelee alisysteemien ominaisuuksia Perussekvenssi 1. Käyttäjä valitsee (puurakenteesta) systeemin osat joiden ominaisuuksia haluaa määrittää 2. Järjestelmä näyttää, mitä ominaisuuksia osalle voi määrittää 3. Käyttäjä määrittää ominaisuudet, jotka
Viittaukset testitapauksiin 3.2 osalle haluaa määrittää 4. Käyttäjä hyväksyy valinnat 5. Järjestelmä ilmoittaa, että muutokset on tehty Systeemi on muodoltaan käyttäjän haluama. UC1.41/-2/ Flow shopin ja Jobshopin ominaisuuksien Käyttäjä määrittelee flow shopin tai job shopin ominaisuuksia Perussekvenssi 1. Käyttäjä valitsee (puurakenteesta) flow shopin/job shopin, jonka ominaisuuksia haluaa määrittää 2. Järjestelmä antaa käyttäjälle mahdollisuuden muuttaa flow shopin/ shop shopin nimen, tyypin, kapasiteetin, sekä käytettävät priorisointi- ja vapaussäännöt. Lisäksi käyttäjälle tarjoutuu mahdollisuus luoda systeemin osalle uusi aliresurssi tai poistaa se. Viittaukset testitapauksiin 3.2 3. Käyttäjä tekee haluamansa valinnat. Jos simulaatiota on jo ajettu, systeemiin ei voi lisätä tai poistaa systeemin osia (flow shop, job shop, resurssi) Resurssi on käyttäjän haluama. UC1.43 Resurssin ominaisuuksien Käyttäjä määrittelee resurssin ominaisuuksia Perussekvenssi 1. Käyttäjä valitsee (puurakenteesta) resurssin (koneen), jonka ominaisuuksia haluaa määrittää 2. Järjestelmä antaa käyttäjälle mahdollisuuden muuttaa resurssin nimeä, priorisointisääntöä ja kapasiteettia. Lisäksi järjestelmä tarjoaa käyttäjälle mahdollisuuden poistaa resurssi. Jos simulaatiota on jo ajettu, systeemiin ei voi lisätä tai poistaa systeemin osia (flow shop, job shop, resurssi)
Viittaukset testitapauksiin 3.2 Resurssi on käyttäjän haluama. UC1.5 Systeemin tallentaminen järjestelmään Perussekvenssi 1. Käyttäjä valitsee simulaation tallentamisen 2. Järjestelmä pyytää käyttäjää antamaan nimen, jolla simulaatio halutaan tallentaa 3. Käyttäjä antaa haluamansa nimen ja Viittaukset testitapauksiin 6.2, 6.3 hyväksyy valinnan Käyttäjä yrittää tallentaa samaan tiedostoon, joka on jo jollain aiemmalla kerralla käytetty, tällöin järjestelmä kysyy käyttäjän lupaa ylikirjoitukseen. Simulaatio on tallentunut järjestelmään. UC1.6 Systeemin poistaminen järjestelmästä Käyttäjä poistaa systeemin tietokoneen muistista. Perussekvenssi 1. Käyttäjä menee hakemistoon, jossa tallennettu simulaatio on 2. Käyttäjä valitsee poistamisen 3. Järjestelmä siirtää simulaation roskakoriin Viittaukset testitapauksiin - I2 (käyttöjärjestelmä mahdollistaa tämän, eikä itse simulaattoriin ole toteutettu tallennusominaisuuden lisäksi toteutettu mitään uutta) UC2 Työvirran Käyttäjä määrittää simulaatiossa käytettävän työvirran ominaisuudet Perussekvenssi 1. Käyttäjä ilmoittaa haluavansa määrittää
Viittaukset testitapauksiin tehtaaseen tulevan työvirran ominaisuudet 2. UC 2.1_uusi tai UC2.2 UC2.1 Esimerkkityövirran valitseminen Käyttäjä valitsee järjestelmän tarjoaman esimerkkityövirran käytettäväksi Käyttäjä on avannut tilan (wizard), jossa voi määrittää simulaation komponentteja. Perussekvenssi 1. Järjestelmä näyttää valittavat esimerkkityövirrat 2. Käyttäjä valitsee käytettäväksi jonkun tarjotuista esimerkkityövirroista. 3. Käyttäjä hyväksyy valinnan. 1 TTY4 Viittaukset testitapauksiin I1.2, I1.3 Käyttäjä on valinnut käytettävän työvirran. UC2.1_uusi Esimerkkityövirran valitseminen Käyttäjä valitsee järjestelmän tarjoaman esimerkkityövirran käytettäväksi Käyttäjä on avannut tilan (wizard), jossa voi määrittää simulaation komponentteja. Perussekvenssi 1. Järjestelmä näyttää käyttäjälle säädettäväksi tavoitekäyttöasteen, tilausten saapumisten satunnaisuuden, töiden koot ja täiden kokojen satunnaisuuden. 2. Käyttäjä valitsee edellä mainitut muuttujat esimerkkitapauksen mukaiseksi painamalla valintojen palautus nappia. 1 Viittaukset testitapauksiin 2.X Käyttäjä on valinnut käytettävän työvirran. TTY4
Perussekvenssi UC2.2 Työvirran manuaalisesti. Käyttäjä määrittää työvirran ominaisuudet manuaalisesti. (Wizard) 1. Järjestelmä näyttää käyttäjälle säädettäväksi tavoitekäyttöasteen, tilausten saapumisten satunnaisuuden, töiden koot ja täiden kokojen satunnaisuuden. 2. Käyttäjä valitsee edellä mainitut muuttujat haluamikseen säätämällä kutakin muuttujaa erikseen annetulla vaihteluvälillä. (Puun alaikkuna) 1. Käyttäjä valitsee simulaatiopuusta työvirran 2. Systeemi näyttää käyttäjälle tavoitekäyttöasteen, tilausten saapumisten satunnaisuuden, töiden koot ja täiden kokojen satunnaisuuden, joiden arvoja käyttäjä voi määrittää manuaalisesti 3. Käyttäjä asettaa yllä luetelluille muuttujille haluamansa arvot ja hyväksyy valinnat Viittaukset testitapauksiin 3.3 Jos käyttäjä haluaakin valita esimerkkityövirran omien asetustensa jälkeen, UC2.1 Työvirta on käyttäjän haluama. UC2.3 Kuormitusasteen. Käyttäjä määrittää systeemille haluamansa kuormitusasteen Perussekvenssi 1. TOTEUTETAAN OSANA EDELLISTÄ KÄYTTÖTAPAUSTA Viittaukset testitapauksiin 3.3
UC3 Töihin liittyvän kustannusrakenteen Käyttäjä määrittää töihin liittyvät myöhästymis-, varastointi- ja kiirehtimiskustannukset. Perussekvenssi 1. Käyttäjä ilmoittaa haluavansa määritellä töihin liittyvän kustannusrakenteen 2. Järjestelmä tarjoaa asiakkaalle valittaviksi kolme esimerkkikustannusrakennetta, joissa myöhästymis-, viivästymis- ja varastointikustannukset on valmiiksi määritelty sekä mahdollisuuden määritellä kustannukset manuaalisesti. 3. UC3.1 tai UC3.2 Viittaukset testitapauksiin Simulaatiossa käytettävä kustannusrakenne on käyttäjän haluama. UC3.1 Esimerkkikustannusrakenteen valitseminen Käyttäjä valitsee järjestelmän tarjoaman esimerkkikustannusrakenteen käytettäväksi Käyttäjä on avannut tilan (wizard), jossa voi määrittää simulaation komponentteja. Perussekvenssi 1. Järjestelmä näyttää valittavat kustannusrakenteet 2. Käyttäjä valitsee käytettäväksi jonkun tarjotuista esimerkkikustannusrakenteista 3. Käyttäjä hyväksyy valinnan. 2 Viittaukset testitapauksiin 3.4 Simulaatiossa käytettävä kustannusrakenne on käyttäjän haluama. TKU1 Perussekvenssi UC3.2 Kustannusrakenteen manuaalisesti Käyttäjä määrittää manuaalisesti myöhästymis-, kiirehtimis- ja varastointikustannukset. (Wizard) 1. Järjestelmä näyttää valittavat
Viittaukset testitapauksiin 3.4 kustannusmuuttujat ja vaihteluvälit, joilla niitä voi muuttaa. 2. käyttäjä valitsee kiirehtimis-, myöhästymisja varastointikustannusten suuruudet 3. Käyttäjä hyväksyy tekemänsä valinnat (Puun alaikkuna) 1. Käyttäjä valitsee simulaatiopuusta kustannusrakenteen 2. järjestelmä näyttää myöhästymis-, kiirehtimis- ja varastointikustannukset 3. Käyttäjä asettaa manuaalisesti ne haluamikseen ja hyväksyy tekemänsä muutokset Simulaatiossa käytettävä kustannusrakenne on käyttäjän haluama. Perussekvenssi Viittaukset testitapauksiin UC4 Simulaation aikajänteiden Käyttäjä määrittää simulaatioon liittyviä aikajänteitä PÄÄTETTY ASETTAA VAKIOKSI UC4.1 Simulaation kokonaiskeston ja tarkasteluvälien Käyttäjä määrittää simulaation kokonaiskeston sekä tulosten tarkasteluvälien pituuden kuvitteellisissa peliviikoissa. Käyttäjä on avannut tilan (wizard), jossa voi määrittää simulaation komponentteja. Perussekvenssi 1. Käyttäjä ilmoittaa haluavansa määritellä simulaation aikajänteet 2. Järjestelmä pyytää käyttäjää määrittämään simulaation kokonaiskeston ja tarkasteluvälien pituudet kuvitteellisissa peliviikoissa. 3. Käyttäjä valitsee pyydetyt tiedot ja hyväksyy valinnan Käyttäjä on määrittänyt simulaation kokonaiskeston ja tarkasteluvälien pituuden.
1 TTA1 Viittaukset testitapauksiin I1.2, I1.3 UC5.1 Päätössääntöjen valinta Käyttäjä valitsee alisysteemikohtaisesti käytettävät priorisointi ja vapautussäännöt. Käyttäjä on valinnut systeemin muut komponentin. Järjestelmä näyttää käyttäjälle systeemin kuvan. Perussekvenssi 1. Käyttäjä valitsee systeemin, jolle haluaa määrittää priorisointi- ja vapautussäännöt 2. Järjestelmä tarjoaa 14 priorisointisääntöä ja 2 vapautussääntöä käyttäjän valittaviksi. 3. Käyttäjä valitsee haluamansa prioriteettisäännöt ja vapautussäännöt (1 kumpaakin) 4. Käyttäjä valitsee haluaako soveltaa valitsemiaan sääntöjä myös systeemin aliresursseille Jos käyttäjä haluaa määrittää alisysteemeille eri päätössäännöt. 5. Käyttäjä valitsee systeemi-ikkunasta systeemin, jonka alisysteemeille haluaa eri päätössäännöt 6. Järjestelmä näyttää alisysteemit ja vaihtoehdot päätössäännöistä, joita systeemille voi määrittää 7. Käyttäjä valitsee haluamansa päätössäännön. 8. Järjestelmä vaihtaa käytettävät päätössäännöt systeemin osalta 1 Viittaukset testitapauksiin 3.2 Kaikille systeemeille ja alisysteemeille on valittu päätössäännöt ja vapautussäännöt. (vapautussääntö on asetettava samaksi koko systeemille) TPA1, TP2, TPA3, TPA5. Perussekvenssi UC6 Tulosten tarkastelu
Viittaukset testitapauksiin UC6.1 Keskeisimpien tulosarvojen tarkastelu simulaation lopussa Simulaatio on ajettu loppuun. Perussekvenssi 1. Järjestelmä näyttää käyttäjälle taulukon, jossa on esitetty viikoittain a) töiden keskimääräisen läpimenoajan, b) töiden keskimääräisen läpimenoajan varianssin c) keskikuormituksen d) pullonkaularesurssin e) pullonkaularesurssin keskikuormituksen f) myöhästymiskustannuksiin liittyvät tunnusluvut (myöhästymis-, kiirehtimis- ja varastointi). 1 Viittaukset testitapauksiin 5.1 Käyttäjä on nähnyt tulokset. TTU1 UC6.2 Keskeisimpien tulosarvojen tarkastelu simulaation välipisteessä Simulaatio on ajettu välietappiin. Perussekvenssi 1. Järjestelmä näyttää käyttäjälle a) töiden keskimääräisen läpimenoajan, b) töiden keskimääräisen läpimenoajan varianssin c) keskikuormituksen d) pullonkaularesurssin e) pullonkaularesurssin keskikuormituksen f) myöhästymiskustannuksiin liittyvät tunnusluvut (myöhästymis-, kiirehtimis- ja varastointi). 2. Käyttäjä ilmoittaa haluavansa jatkaa ajassa eteenpäin 3. Järjestelmä ajaa simulaation seuraavaan välietappiin 2 Viittaukset testitapauksiin 5.1 Käyttäjä on nähnyt tulokset. TTU2, TTU4
UC6.2b Keskeisimpien tulosarvojen tarkastelu jälkikäteen simulaation välipisteessä Simulaatio on vähintään toiseen välietappiin. Perussekvenssi 1. Käyttäjä valitsee aikaisemmista välipisteistä kohdan, jonka tuloksia haluaa tarkastella 2. Järjestelmä näyttää käyttäjälle a) töiden keskimääräisen läpimenoajan, b) töiden keskimääräisen läpimenoajan varianssin c) keskikuormituksen d) pullonkaularesurssin e) pullonkaularesurssin keskikuormituksen f) myöhästymiskustannuksiin liittyvät tunnusluvut (myöhästymis-, kiirehtimis- ja varastointi). 3. Käyttäjä ilmoittaa haluavansa jatkaa ajassa eteenpäin 4. Järjestelmä ajaa simulaation seuraavaan välietappiin Viittaukset testitapauksiin 5.1 Käyttäjä on nähnyt välietapin tulokset. TTU4 UC6.3 Tulosarvojen tarkastelu graafisesti Simulaatio on ajettu välietappiin tai loppuun. Perussekvenssi 1. Käyttäjä valitsee tulosten graafisen tarkastelun 2. järjestelmä näyttää omat tulokset valitun muuttujan suhteen verrattuna referenssisäännöillä saatuihin tuloksiin 3. Käyttäjä vaihtelee muuttujaa, jonka suhteen haluaa tuloksia tarkastella 4. järjestelmä näyttää tulokset valitun muuttujan suhteen Viittaukset testitapauksiin Käyttäjä on nähnyt tulokset graafisesti.
UC7 Perussekvenssi 1. UC7.1 2. UC7.3 x n Viittaukset testitapauksiin 5.4 Simulaation ajaminen Käyttäjä ajaa simulaatiota ajassa eteenpäin. Simulaatio on ajettu loppuun. UC7.1 Simulaation käynnistys Perussekvenssi 1. Käyttäjä ilmoittaa haluavansa ajaa simulaation seuraavaan välietappiin 2. Järjestelmä käynnistää simulaation ja ajaa 2 Viittaukset testitapauksiin 4.1 sen seuraavaan välietappiin 1b. Käyttäjä ilmoittaa haluavansa ajaa simulaation loppuun 2b. Järjestelmä käynnistää simulaation ja ajaa sen loppuun Simulaatio on ajettu seuraavaan välietappiin tai loppuun. TSA1 UC7.2 Simulaation keskeytys Perussekvenssi 1. Käyttäjä ilmoittaa haluavansa keskeyttää simulaation 2. Järjestelmä pysäyttää simulaation ajon 3. Järjestelmä kysyy haluaako käyttäjä lopettaa simulaation ajamisen 4. Käyttäjä hyväksyy valinnan 5. Järjestelmä kysyy tallennetaanko toistaiseksi kertyneet tulostiedot myöhempää käyttöä varten 6. Käyttäjä valitsee tallentamisen
3 7. Järjestelmä tallentaa tiedot. Ei toteutettu, koska 1. Simulaatioaskeleen ottaminen on esimerkkitapauksissa niin nopeata, että pitäisi olla Tex Willer ehtiäkseen keskeyttämään ajon. Viittaukset testitapauksiin TSA3 UC7.3 Simulaation lopettaminen Käyttäjä, järjestelmä. Simulaatio on luotu. Perussekvenssi 1. Käyttäjä ilmoittaa haluavansa sulkea simulaation 2. Järjestelmä kysyy haluaako käyttäjä lopettaa simulaation ajamisen 3. Käyttäjä hyväksyy valinnan 4. Järjestelmä poistaa simulaatioon liittyvät tiedot käyttäjän näkyviltä ja poistaa tiedot myös järjestelmän muistista. 2 Viittaukset testitapauksiin 1.3 Simulaatio on poistettu, eikä järjestelmä näytä käyttäjälle mitään siihen liittyvää. TSA4 Perussekvenssi Viittaukset testitapauksiin 1.1 UC8 Simulaattorin asentaminen TODO I2
10Rajoitteet (constraints) Rajoite Perustelu R1 R2 Järjestelmän kehityksessä on käytettävä ilmaiseksi saatavilla olevia työkaluja. Järjestelmän on toimittava 3 vuotta vanhassa peruskotitietokoneessa. Projektin kustannusten pitäminen pienenä Opiskelijoilla ei voi olettaa olevan kotona viimeisintä tekniikkaa.