# Palvelun/tuotteen vaatimusmäärittely ## TTOS0800-0900 Kurssin harjoitustyö - Wear Right * A-tiimi * 2019 * Versionumero 0.0 ## Sisällysluettelo * [Tuotteen kuvaus](#johdatus) * [Palvelukuvaus](#palvelukuvaus) * [Asiakastarina](#valitut-asiakastarinat) * [Sidosryhmät ja profiilikuvaukset](#yleinen-sidosryhmakuva) * [Palvelu/asiakaspolku](#palveluasiakaspolku) * [Vaatimukset, käyttötapaukset ja ominaisuudet](#vaatimukset-kayttotapaukset-ja-ominaisuudet) * [Käytettävät teknologiat](#kaytettavat-teknologiat) * [Palvelu MockUp](#palvelu_mockup-prototyyppi) * [Julkaisun suunnitelma](#julkaisun-suunnitelma) * [Palvelun/ohjelmiston arkkitehtuuri](#palvelunohjelmiston-arkkitehtuuri) * [Testaus ja laadunvarmistus]() * [Lähteet](#dokumentit_standardit-ja-lähteet) # Johdatus Wear Right on mobiilisovellus, jonka avulla ihmiset voivat suunnitella pukeutumistaan sään mukaan. Sovellus hakee säätiedot, joidenka perusteella se antaa pukeutumisvinkkejä. ## Vaatimusmäärittelytyön tilaaja Työn tilaajana toimii Personal Design Hat, Yliopistonkatu 26 A, II-kerros, 40100 Jyväskylä ## Vaatimusmäärittelyn toimittaja Tuotteen toimittaa TTOS0800-TTOS0900 opintojakson A-ryhmä, joka koostuu viidestä opiskelijasta. # Palvelukuvaus **Mitä palvelun avulla voidaan tehdä? Mikä sen tehtävä on sidosryhmän kannalta?** Sovelluksen avulla asiakas voi suunnitella sekä omaa että perheensä pukeutumista. Sovellus näyttää reaaliaikasta dataa tämänhetkisestä säätilasta sekä ehdottaa säänmukaista pukeutumista. ## Valitut asiakastarinat ### Vanhemmat Perheen vanhemmat ovat saaneet palautetta päiväkodista, että heidän lapsi on puettu liian kevyesti ja on palellut ulkona. Vanhemmat etsivät apua netistä ja löytävät WR-sovelluksen. Vanhemmat haluat pukeutumis vinkkejä erityisesti talven vaihteleviin säihin. Toinen vanhemmista päättää testata sovellusta ja tutustuu sen käyttöön. ### Matkustaja/ulkotyöntekijä Työntekijä työskentelee elektroniikka yrityksessä, mikä huoltaa ja korjaa nopeuskameroita ympäri Suomea. Hän joutuu työnsä puolesta viettämään useita tunteja ulkona kerrallaan huoltaessaan kameroita ja haluasi tietää miten pukea ja pakata työkeikoilleen. Työntekijä saa vinkin työkaveriltaan WR-sovelluksesta ja päättää testata sitä. Seuraavana päivä työntekijällä on työreissu Ouluun ja hän päättää testata uutta sovellustaan. Sovellus ehdottaa tuulivaatteita, koska säätietojen mukaan on luvasssa tuulinen päivä. Työtenkijä tietää kuitenkin viettävänsä ulkona ainakin 2-3 tuntia, joten päättää pukeutua vähän paksumpaan takkiin. Suoritettuaan kameran huollon työntekijä huomaa pukeutumisensa onnistuneen juuri oikein. Hän on tyyväinen sovellukseena ja suosittelee sitä tuttavillensa. Ainut kritiikki, mitä hänellä on, että hän haluasia pukeutumissuosituksien muuttuvan sen mukaan kuinka kauan ulkona aikoo olla. ### Opiskelija Opiskelija huomaa pukeutuvansa koulumatkoilensa usein väärin. Hän polkee kouluun pyörällä ja huomaa palelevansa lähes aina, etenkin talvisin. Hän huomaa pukeutumisvinkkejä googlettassa WR nimisen palvelun ja päättää testata sitä. Seuraavana päivänä opiskelija lähtee taas kouluun pyörällä ja tällä kertaa hän on pukeutunut WR-sovelluksen antamien suositusten mukaisesti. Matkalla hänelle tulee kuitenkin taas kylmä ja päättää taluttaa pyörän kouluun. Taluttaessa pyörää opiskelija tajuaa vaatetuksensa sopivan hyvin taluttamiseen, mutta ei pyöräilyyn. Hän jatkaa sovelluksen käyttöä, mutta vain tilainteissa, missä on kävellen liikkeellä. ### Juoksuharrastaja Satunnainen lenkkeilijä etsii sovellusta lenkkeilyn avuksi. Hän törmää WR-sovellukseen ja innostuu sovelluksen pukeutumisehdotuksista. Lenkkeilijä on haluaa erityisesti tarkkaa säätietoa sekä sopivaa vaatetuksen ehdottelua lenkille. Hän tekee profiilin itselleen, mutta ei sivuprofiileja. Lenkkeilijä alkaa ottaa selvää sovelluksen ominaisuuksista. Hän pitää reaaliaikaisesta säätiedosta, mutta sovellus ehdottaa toppatakkia ja kalsareita vaikka hän on menossa lenkille. Mistään ei löydy nappia, mikä määrittäisi liikunnan määrän ulkona. Lenkkeilijä luultavastikin poistuu sovelluksesta. ## Yleinen sidosryhmäkuva  ## Tunnistetut sidosryhmäkuvaukset ### Vanhemmat Vanhempien arki on usein kiireistä. Aamut varsinkin tuppaavat olemaan työntäyteisiä, kun lapset pitää pukea kouluun. Sovellus voisi helpottaa vanhempien arkea ehdottamalla lapsille vaatteita sään mukaan. * [Perheen isä](sidosryhmät/vanhemmat/perheenisä.md) * [Perheen äiti](sidosryhmät/vanhemmat/perheenäiti.md) * [Yksinhuoltaja](sidosryhmät/vanhemmat/profiili3-yksinhultaja.md) ### Opiskelijat Opiskelijat usein kävelevät kouluun. Koulumatka on varsinkin talvella kylmähkö, joten sovelluksesta olisi apua vaatteiden valitsemiseen. Opiskelija arvostanee tarkkaa säätietoa vaatteiden ehdottelun yli, sillä opiskelijat ovat välillä liiankin muotitietoisia. * [Onni Opiskelija](sidosryhmät/opiskelijat/profiili1.md) ### Liikkujat Liikkujat tekevät asioita ulkona. Liikkujat arvostavat tarkkaa säätietoa, jotta tietävät pukeutua ulkona vallitseviin sääolosuhteisiin. He myös luultavastikin arvostaisivat vaatetusneuvoja, mikäli neuvot olisi räätälöity fyysinen rasitus mielessä. * [Pertti Liikuntamies](sidosryhmät/liikkujat/profiili4-harrasta.md) * [Jorma Erä](sidosryhmät/liikkujat/patikoija.md) ### Matkaajat Matkaajat liikkuvat paikkakunnalta toiselle erinäisistä syistä. Heille ulkopaikkakunnan säätiedot ovat tärkeitä. Matkaaja hyötyisi myös vaate-ehdotuksista pakkaamisen näkökulmasta. * [Bile-Nikke](sidosryhmät/matkaajat/bile-nikke.md) * [Mari Matkustaja](sidosryhmät/matkaajat/mari-matkustaja.md) ### Lapset Lapset käyttäisivät sovellusta luultavastikin vanhemman kautta. Pieni alakouluikäinen lapsi tuskin ymmärtää säätietoja, mikäli ne eivät ole selkeästi esitetty. Kunhan sovellus on tarpeeksi selkeä, voi vaatteiden ehdottaminen taas toimia. * [Lapsi](sidosryhmät/lapset/lapsi.md) ### Ulkotyöntekijät Ulkotyötä tekevät, esim. rakennusmiehet ja kiinteistöjen huoltajat. * [Ulkotyöntekijä](sidosryhmät/ulkotyöntekijät/ulkotyöntekijä.md) ### Vanhukset Tuskin osaavat sovelluksia käyttää, mutta opastettaessa ottaisivat varmasti kaiken hyödyn irti sovelluksesta. * [Veikko Vanhus](sidosryhmät/vanhukset/profiili-vanhus.md) ### Väärinkäyttäjät Tahtovat kaataa palvelun. Varo vaaraa! * [Hacker Man](sidosryhmät/väärinkäyttäjä/hakkeri.md) * [Jonne Web](sidosryhmät/väärinkäyttäjä/script-kiddo.md) ### Ylläpitäjät Ylläpitävät palvelua. Sovelluksesta täytyy siis muotoilla helposti ylläpidettävä. * [Ykä Ylläpitäjä](sidosryhmät/ylläpitäjä/profiili5-ylläpitäjä.md) ### Yrityskäyttäjät Käyttävät sovellusta töiden puolesta. Esimerkiksi päiväkodin tai hoitokodin työntekijä. Olisi hyödyllinen varsinkin päiväkodissa, sillä sovellus auttaisi lapsikatraan vaatetuksessa. * [Avustaja Anni](sidosryhmät/yrityskäyttäjät/Avustaja.md) ## Palvelu/asiakaspolku Tarkkaa nippelitietoa * Mieti onko mahdollista hyödynnetään jotain ulkopuolista palvelua kuvauksen apuna? Esim. Canvanizer https://canvanizer.com # Vaatimukset, käyttötapaukset ja ominaisuudet | ID | Kuvaus | |:-:|:-:| | FT01 | [Profiililuonti](dokumentit/02-vaatimusmaarittely/Ominaisuudet/Ominaisuuus-profiililuonti.md) | | FT02 | [Säätiedot](dokumentit/02-vaatimusmaarittely/Ominaisuudet/Ominaisuuus-säätiedot.md) | | FT03 | [Paikkavalitsin](dokumentit/02-vaatimusmaarittely/Ominaisuudet/Ominaisuus-paikkavalitsin.md) | | FT04 | [Aikavalitsin](dokumentit/02-vaatimusmaarittely/Ominaisuudet/Ominaisuus-aikavalitsin.md) | | FT05 | [Pukeutumissuositukset](dokumentit/02-vaatimusmaarittely/Ominaisuudet/Ominaisuus-pukeutumissuositukset.md) | | FT06 | [Profiilimuokkaus](dokumentit/02-vaatimusmaarittely/Ominaisuudet/Ominaisuus-profiilimuokkaus.md) | <br>  ## Käytettävät teknologiat Palvelu toteutetaan selainpohjaisesti. Käytettävät ohjelmointikielet ja teknologiat: * Javascript. Suurin osa ohjelmasta kirjoitetaan javascriptillä. Tämä käsittää siis käyttäjän näkymän ja toiminnot. * Php. Palvelinpuolella käytämme php:ta. Tällä hoidetaan lähinnä yhteydenotot tietokantaan. * MySQL. Tietokantana käytämme MySQL-tietokantaa. Tämä pitää sisällään vaatedatan. ## Palvelu MockUp-prototyyppi [MockUp](https://www.fluidui.com/editor/live/preview/cF95QVhzMWM5VlZhNUpVck93b055QkpDYzl0UUxrVXJIWA==) <!-- ## Hyväksyntätestit **Kiinnitetään alustavat hyväksyntätestit vaatimuksiin taulukon muodossa** [](http://www.youtube.com/watch?v=EYEc8C57lbo "") [](http://www.youtube.com/watch?v=F2M93uWWXk8 "") | VaatimusID | Testitapaus | Kuvaus | | |:-:|:-:|:-:|:-:| | USE-CASE-007,SYSTEM-REQ-0001,SYSTEM-REQ-0004, SYSTEM-REQ-0012 | [Test Case Id X](Linkki testiin) | Hyväksyntätesti | | USE-CASE-017,SYSTEM-REQ-0011,SYSTEM-REQ-0004, SYSTEM-REQ-0012 | [Test Case Id Y](Linkki testiin) | Hyväksyntätesti | | USE-CASE-011,USE-CASE-013,SYSTEM-REQ-0204, SYSTEM-REQ-0212 | [Test Case Id Z](Linkki testiin) | Hyväksyntätesti | | USE-CASE-002,SYSTEM-REQ-0301,SYSTEM-REQ-0304, SYSTEM-REQ-0312 | [Test Case Id O](Linkki testiin) | Hyväksyntätesti | --> ## Julkaisun suunnitelma | Julkaisuaika | Ominaisuuus | Vastuu | Prioriteetti | |:-:|:-:|:-:|:-:| | 3.3.2019 | [Profiilin luonti](dokumentit/02-vaatimusmaarittely/Ominaisuudet/Ominaisuuus-profiililuonti.md)| - | 1 | | 3.3.2019 | [Profiilin muokkaus](dokumentit/02-vaatimusmaarittely/Ominaisuudet/Ominaisuus-profiilimuokkaus.md)| - | 2 | | 10.3.2019 | [Säätiedot](dokumentit/02-vaatimusmaarittely/Ominaisuudet/Ominaisuuus-säätiedot.md)| - | 3 | | 17.3.2019 | [Paikkavalitsin](dokumentit/02-vaatimusmaarittely/Ominaisuudet/Ominaisuus-paikkavalitsin.md)| - | 4 | | 24.3.2019 | [Aikavalitsin](dokumentit/02-vaatimusmaarittely/Ominaisuudet/Ominaisuus-aikavalitsin.md)| - | 5 | | 31.3.2019 | [Pukeutumissuositukset](dokumentit/02-vaatimusmaarittely/Ominaisuudet/Ominaisuus-pukeutumissuositukset.md)| - | 6 | ```mermaid gantt title Julkaisuaikataulu dateFormat DD-MM-YYYY section GANTT Profiilin luonti/muokkaus :a1, 07-03-2019, 28-03-2019 Säätiedot :a2, 07-03-2019, 28-03-2019 Paikkavalitsin :a3, 07-03-2019, 28-03-2019 Pvm valitsin :a4, 07-03-2019, 28-03-2019 Tietokanta :a5, 07-03-2019, 28-03-2019 Pukeutumis-suositukset :a6, 21-03-2019, 11-04-2019 Ulkoasu :a7, 14-03-2019, 11-04-2019 ``` <!-- # Palvelun/ohjelmiston arkkitehtuuri ### Yleinen sijoittelunäkymä (Deployment diagram ) [](http://www.youtube.com/watch?v=tLuiQ9p8RkU "") # Arkkitehtuuriin/teknologiaan liityvät vaatimukset ### Tekniset vaatimukset | Id | Vaatimuksen kuvaus | kategoria | Vastuullinen | |:-:|:-:|:-:|:-:| | REQ00x | Vaatimus? | Yllläpito | Kuka vastaa | | REQ00x | Vaatimus? | Tekninen | Kuka vastaa | | REQ00x | Vaatimus? | Käytettävyys | Kuka vastaa | | REQ00x | Vaatimus? | Käytettävyys | Kuka vastaa | | REQ00x | Vaatimus? | Käytettävyys | Kuka vastaa | ### Ylläpito (Maintenance) _Tähän kirjataan vaatimuksia, joiden merkitys tulee esiin vasta tuotteen julkaisun jälkeen. Miten tuotteen ylläpidettävyyttä parannetaan? Mitä pitää ottaa huomioon, että ylläpidettävyys on helpompaa__ | Id | Vaatimuksen kuvaus | kategoria | Vastuullinen | |:-:|:-:|:-:|:-:| | REQ00x | Vaatimus? | Yllläpito | Kuka vastaa | | REQ00x | Vaatimus? | Tekninen | Kuka vastaa | | REQ00x | Vaatimus? | Käytettävyys | Kuka vastaa | | REQ00x | Vaatimus? | Käytettävyys | Kuka vastaa | | REQ00x | Vaatimus? | Käytettävyys | Kuka vastaa | ### Tietokantakuvaus (Database ER-diagram)  # Testauksen vaatimukset (Testing requirements) ### Testattavuus | Id | Vaatimuksen kuvaus | kategoria | Vastuullinen | |:-:|:-:|:-:|:-:| | REQ00x | Vaatimus? | Testattavuus | Kuka vastaa | | REQ00x | Vaatimus? | Testattavuus | Kuka vastaa | | REQ00x | Vaatimus? | Testattavuus | Kuka vastaa | | REQ00x | Vaatimus? | Testattavuus | Kuka vastaa | | REQ00x | Vaatimus? | Testattavuus | Kuka vastaa | # Tunnistetut riskit ja testikohteet * Riski -> Testaustarve * Vaatimus -> Testaustarve ### Kaikki vaatimukset listattuna **Tähän osaan voidaan linkittää vaatimuslista, josta kaikki tunnistetut vaatimukset löytyvät** * [Linkki vaatimuslistaan](pohjat/vaatimuslista.md) --> ### Dokumentit, standardit ja lähteet *Lähteet/Standardit/Suositukset* | ID | Linkki | | |:-:|:-:|:-:| | JHS 165 ICT | http://www.jhs-suositukset.fi/c/document_library/get_file?uuid=b8118ad7-8ee4-459a-a12b-f56655e4ab9d&groupId=14 | Vaatimusmäärittely | | SO 9241-11 | https://fi.wikipedia.org/wiki/K%C3%A4ytett%C3%A4vyys | Käytettävyys | | ISO9001 | https://www.sfs.fi/julkaisut_ja_palvelut/tuotteet_valokeilassa/iso_9000_laadunhallinta/iso_9001_2015 | - | | - | - | - |