Skip to content

Meijän Metsät palvelun projektisuunnitelma

1. Toimeksiantona Meijän Metsät karttapalvelu. Toimeksiantaja on antanut pohjamateriaalilähteeksi asiakastarina dokumentin sekä muita hyödyllisiä vertaisarviointilähteitä muista karttapalveluista. Useimmat karttapalvelulähteet ovat kuitenkin todettu olevan eri tavoilla puutteellisia käyttötarpeisiin ja uudesta kehitysprojektista tavoitellaan parempaa palvelua erinäisille kuluttajaryhmille ja yhteistyökumppaneille. Rajauksena tuoteen kehityksessä on sovittu, käytössä olevat resurssit, sekä itse palvelutuote, joka on palvelun ensikehitysasteen demo. Tuloksena on siis eräänlainen konsepti tuotteesta, joka ei vielä ole tuotantovalmis, mutta antaa sen sijaan selkeän käsityksen kehitettävästä palvelusta.

2. Projektiorganisaationa toimii Jyväskylä Ammattikorkeakoulu (JAMK) IT-instituutti. Projekti suunnittelu ja testauskurssia vetää Marko Rintamäki ja projektiasiantuntijoina toimii Teemu Kontio, sekä Juho Pekki. Projektin Team-B Himalaja jäseniin kuuluu: Joonas Niinimäki (projektijohtaja/suunnitelu), Heikki Pekkarinen (graafinen suunnittelu/front-end ohjelmoija), Hilma Myöhänen (back-end ohjelmoija), Ilpo Loikkanen (back-end ohjelmoija) ja Sari Kumpulainen (testaaja/automaatio).

3. Projektin vaiheissa ensimmäiset 6 viikkoa on tehty ensimmäistä versiota vaatimusmäärittelyä, eli dokumenttia jossa tehdään projektiin liittyvät ensimmäiset sunnitelmat ja pohjat joiden perusteella projektia lähdetään töystämään ja jatkosuunnittelemaan. Tässä ajanjaksossa on ollut toimeksiantajan tapaaminen, asiakaskuuleminen, sekä lopullisten sopimusten allekirjoitus 21.02.2020. Seuraavana vaiheena on lähteä kehittämään itse tuotetta ohjelmallisesti palvelun lähdekoodia, aloittaa samalla laadunvalvonnan ohjelmistotestaaminen, sekä jatkaa tuoteeen vaatimusmäärittelyn ja projektisuunnitelman suunnittelua ja kehittämistä eteenpäin.

4. Laadun varmistuksen menetelminä hyödynnetään JAMK sisäistä laadunvalvonnan testaustyökalua testlink, jossa ohjelmiston ominaisuuksia voidaan testata ja varmistaa niiden toimivuus luotettavasti. Tämä tarkoittaa käytännössä sitä, että tavoitteena on havaita ja korjata mahdollisia tuoteen käytössä ilmeneviä ongelmia ja sen avulla voidaan myös saada reaaliaikaista palautetta lisäkehitystä ja suunnittelua vaativista ominaisuuksista. Porjektista on tehty esivalmistelu mahdollisista riskeistä ja niiden ilmetessä ryhmän menettelystandardeista. Katselmoinnissa vertaisarvioidaan projektin tavoitteita, asiakkkaan kuulemisen perusteella tavoiteltuja toiveita ja vaatimiuksia, sekä muita karttapalveluita vastaako oma projekti sitä mitä tavoitellaan.

5. Projektissa hyödynnetään yleisesti hyväksi koettua ja laajalti käytettyä SCRUMBAN menetelemään. Jokainen viikko (tai päivä) koostuu ns. sprinteistä, jonka aikana on tavoitteena toteuttaa kullekkin sprintille asetetut tehtävät sen ajanjakson aikana. Projektin aikana saavutetaan myös etappeja, joiden sisältö sisältää laajempia kokonaisuuksia projektista. Ensimmäinen etappi tulee tässä projektissa projektin kuudenella sprintillä, eli viikko 8 (17.02.2020-23.02.2020).

Tällä hetkellä projektin vaatimusmäärittely - ja projektisuunnitelma dokumentit ovat hiottu ensimmäiseen versioon ja siirrytään tuotannon puolelle, sekä palvelun jatkokehittelyyn ja suunniteluun. Työtiloina JAMK on tarjonnut jokaiselle projektiryhmölle projektitilat, sekä tarvittavat laitteistot ja arkkitehtuurit projektin toteutukselle. Viestintävälineinä toimii Microsoft Office Teams, Whatsapp, Discord ja sähköposti tarvittaessa. Palavereja pidetään joka viikko ja sen aikana suunnitellaan sen viikon työtehätävät, tavoitteet ja siihen mennessä ilmenneet ongelmat ja niiden jatkotoimenpiteet. Raportoinnin ja tiedotuksen kanavina toimii niin Team-B Himalaja projektiryhmän omat sivut kuin aiemmin mainitut viestintävälineiden kanavat.

6. Projekti päättyy 28.4.2020 mennessä. Tällöin tuotteen demo on valmis ja projektisuunnitelma ja vaatimusmäärittely on valmistettu loppuun demoon asti. Demo-tuote ja sitä tukevat dokumentaatiot luovutetaan toimeksiantajalle projektikurssin vetäjän Marko Rintamäen ja toimeksiantajan Janne Latisen hyväksymisen jälkeen. Projektin prosessista luodaan arkisto, sekä loppuraportti.

1 Projektin ja lopputuotteen kuvaus

Tässä dokumentissa kuvataan Meijän Metsät - projektin taustaa, tavoitteita, tehtäviä, vaihejakoa, resursseja ja organisaatiota. Vaihejaon yhteydessä on kuvattu jokainen vaihe erikseen lyhyesti.

1.1 Tausta ja lähtökohdat

Meijän Metsät on kehitysprojekti jo olemassa olevaan karttapalveluun, jonka asiakas on todennut olevan riittämätön heidän tarpeisiin.

Projekti toteutetaan Jyväskylän ammattikorkeakoulun informaatioteknologian instituutin järjestämän ‑opintojaksojen puitteissa. ”

1.2 Tavoitteet ja tehtävät

  • Tuottaa ratkaisu
  • Tuottaa toimiva demo (Proof Of Concept)
  • Tuottaa toimeksiantajan toiveita vastaava ohjelmisto-palvelun konseptidemo.

Tavoitteena on helpottaa ja selkeyttää yhteistyötä muiden tahojen kanssa ja karttapohjaisen palvelun kautta voitaisiin myös hankkia lähipalveluita sekä ilmoittaa maastossa havainnoista/epäkohdista. Olennainen osa palvelun toimivuutta ovat kohteet esittelevä karttapalvelu ja yhteistyötahojen retkeilykohteisiin ja -reitteihin liittyvät tietokannat ja näiden hallinta. Konkreettinen lopputulos on loppukäyttäjille näkyvä karttasovellus jonka avulla käyttäjän on helppo löytää luontokohteita. Työn tilaajana on Janne Laitinen ja projekti on sana Meijän Polku hanketta, joka on osa Keski-Suomen hyvinvoinnin osaamiskeskittymää – KeHOa. Projektiryhmän tehtävänä on pitää eri tahot tietoisina projektin tilanteesta. Kunkin vaiheen päätyttyä laaditaan vaiheraportti, jonka avulla johtoryhmälle tiedotetaan projektin edistymisestä.

1.3 Rajaus ja liittymät

Ohjelmisto tulee toimia selaimessa tietokoneella sekä mobiilissa. Lisäksi jos aikaa on tarpeeksi kehitetään ohjelmistolle mobiilisovellus käyttäen React -nativea. Projektin demotuotteen kehitys on rajattu projekti suunnittelu - ja testauskurssin aikataulutuksen mukaan, jossa lopullinen katselomointi ja tuotteen palautus palautetaan 23.4.2020.

1.4 Oikeudet

  • Sovellus tulee olemaan julkisesti käytettävissä.
  • Ohjelmiston lähdekoodi on suljettu ellei toisin päätetä.

1.5 Termit ja määritelmät

  • API = application programming interface = ohjelmointirajapinta
  • Mock-up = Visuaalinen konseptiversio. Tämä ei ole toimova ohjelma, jossa olisi jo toimintoja. Se on puhtaasti visuaalinen konsepti tuotteesta.
  • Kontti = Docker-metodi. Käytänössä tarkoittaa koodillisesti joustavaa toteutustapaa ohjelmistossa.
  • CSC palvelin = Kolmannen osapuolen tarjoama palvelin, jonka pohjalla tuote pyörii.
  • Front-End = Ohjelmiston visuaalinen presentaatio, eli käyttöliittymä. Käyttäjä operoi front-endiä käyttäessään palvelua esimerkiksi hakiessaan retkikohdetta.
  • Back-End = Ohjelmiston business logiikka, eli toiminnalliset ominaisuudet. Tämä puoli vastaa ohjelmiston toiminnasta, kuten haku-tuloksen haun rajauksen mahdollistaminen datasta.
  • Kanban = Projektisuunnittelussa ja kehityksessä käytetty aikataulutus ja viikon/päivän työt
  • Tiketti = Jokaisen viikon työntehtävät jaetaan ns. tiketteihin. Näiden perusteella voidaan jokaiselle jakaa työtehtäviä aina edellisen valmistuttua ja lopulla voidaan vertailla pysyttiinkö aikataulussa.-
  • Sprintti = Tietyssä aikavälissä, useiten viikonmittaisissa ajanjaksoissa suoritettava työtehtäväkokonaisuus projektiryhmälle. Tänmän aikana olisi tarkoitus suorittaa kaikki ajanjakson tehtävät.
  • Etappi = Eräänlainen sprinttien kokonaisuus. Projekteissa tärkeitä kohtia, jonka sisällä suurempia projektin kokonaisuuksia on saatu päätöstilanteeseen.
  • SCRUM = jokaisen spritin loppuun suunniteltu pieni n. 15 minuutin sessio jossa käydään läpi spritin aikana onnistumiset, ongelmat ja kehityskohteet. Etapin lopussa tehdään vielä perusteellisempi vertaisarviointianalyysi.

2. Projektiorganisaatio

2.1 Organisaation esittely

Projektin organisaation kuuluu Jyväskylän ammattikorkeakoulun opettajia, projektihenkilökuntaa opiskelijaa, projektiryhmän ohjaajat sekä toimeksiantajan edustajat.

Projektiryhmä

  • Joonas Niinimäki (Team-Leader)
  • Ilpo Loikkanen (Programmer)
  • Hilma Myöhänen (Programmer=
  • Sari Kumpulainen (Testing / Automation)
  • Heikki Pekkarinen (Programmer / Graphic designer)

2.2 Vastuut ja päätöksentekoprosessi

Team leaderilla on vastuu asiakkaan sekä projektiohjaajan kanssa kommunikoinnista. Laadunvalvonnasta vastaa ohjelmisto - ja automaatiotestaaja. Ohjelmiston lähdekoodista vastaa ohjelmoijat. Graafisesta käyttöliittymästä vastaa front-end graaffinen ohjelmoija. Ohjelmiston toiminnallisista ominaisuuksista vastaa back-end koodaajat, joiden tehtävä on luoda tuoteen toiminnallisuus.

3. Projektin ajalliset tavoitteet

Etappi 0. 16.1.2020:

  • Kurssin aloitusinfo.
  • Ryhmä-rooli testi.
  • Viimevuoden kurssin materiaalin kertaaminen.

Etappi 1. 21.2.2020:

  • Vaatimusmäärittelydokumentti ensimmäinen versio V1.0.0.0.0 valmiiksi 21.02.2020 kello 10-12 mennessä valmiiksi.
  • Projektisuunnitemla ensimmäinen versio V1.0.0.0.0 valmiiksi 21.02.2020 kello 10-12 mennessä valmiiksi.
  • Projektisopimusten allekirjoitus 21.02.2020 kello 10-12.
  • Seurataan kurssiaikataulutusta, sprintit ja etapit, sekä viikkotehtävät ja tavoitteet.

Etappi 2. 12.3.2020:

  • Tuotteen tuotannon aloitus 5.3.2020 alkaen ja suurimman osan ominaisuuksien kehittäminen.
  • Laadunvalvonnan testauksen aloitus 5.3.2020 alkaen ja suurimman osan testien ja laadunvalvonnan suorittaminen, sekä uusien testitapauksien luonti tarvittaessa.
  • Projektisuunnitelman jatkuva kehittäminen.
  • Vaatimusmäärittelyn jatkuva kehittäminen.

Etappi 3. 26.3.2020:

  • Tuotteen tuotannon viimeisten ominaisuuksien lisäys ja ominaisuuksien hionta.
  • Tuotteen laadunvalvonnan ja testauksen suorittaminen, sekä laadunvalvonnan ryhmän sisäisen tilannekatsauksen arvointi
  • Projetisuunnitelman tuottaminen lähes valmiiseen suunitelmaan.
  • Projektin vaatimusmäärittelydokumentin kehittäminen lähes valmiiseen suunnitelmaan.

Etappi 4. 28.4.2020:

  • Lopetusseminaari.
  • Tuotteen valmistuminen lopulliseen demoversiotuotteeseen.
  • Tuotteen luovutus toimeksiantajalle.
  • Dokumentaatioiden luovutus toimeksiantajalle.
  • Henkilökohtaisen raportin luovutus kurssin vetäjälle.

3.1 Osittaminen ja vaiheistus

Käynnistys 16.01.2020 – 21.02.2020 (100 h)

Projektin käynnistämiseen kuuluu olennaisesti projektisuunnittelu ja suunnitteludokumenttien laatiminen sekä yhteydenpitokäytänteiden luominen toimeksiantajayrityksen kanssa. Vaiheen aikana tehdään esim. ryhmän webbisivut, tutustutaan tarkemmin toimeksiantoon, aloitetaan kohdealueeseen perehtyminen ja laaditaan projektisuunnitelma yhteistyössä toimeksiantajan edustajien kanssa. Vaiheen aikana muodostetaan johtoryhmä, pidetään 1. johtoryhmän kokous sekä allekirjoitetaan projektisopimus. ”Vaiheen tuloksia ovat ryhmän imagon (nimi, logo ym.) luominen, webbisivut tms. sekä projektisopimus liitteineen.

Suunnittelu 16.01.2020 - 05.03.2020 (150 h)

Suunniteluvaiheeseen kuuluu vaatimusmäärittely, riskienhallinta ja erilaisten suunnitelmien teko. Vaiheen tuloksena on selkeä suunnitelma projektin kulusta.

Toteutus 05.03.2020 - 09.04.2020 (150 h)

Totetusvaiheessa projekti toteutetaan sekä dokumentoidaan suunnitelman mukaan.

Testaus 26.03.2020 - 16.04.2020 (100 h)

Testausvaiheessa rakennetaan automaattiset testit ohjelmistolle ja loppuvaiheessa QA-testaus.

Lopetus 16.04.2020 – 28.04.2020 (yht. 500 h)

”Lopettamisvaihe sisältää projektin päättämiseen liittyvät toimenpiteet. Vaiheen aikana projektiryhmä laatii projektin loppuraportin ja esityksen johtoryhmälle. Vaiheen aikana luovutetaan projektin tulos toimeksiantajalle, pidetään viimeinen johtoryhmän kokous Sprintillä 15 sekä puretaan projektin organisaatio. Lopettamisvaiheen tuloksena on projektin loppuraportti.”

gantt title Projektin aikataulu dateFormat DD-MM-YYYY section Projektisuunnitelma Koko tiimi :active, k1, 16-01-2020, 21-02-2020 section Projektisuunnitelma paivittyy Joonas :active, k2, 21-02-2020, 23-04-2020 section Projektisopimus Koko tiimi :active, k3, 16-01-2020, 21-02-2020 section Riskien hallinta Koko tiimi :active, k4, 16-01-2020, 21-02-2020 section Viestintasuunnitelma Koko tiimi :active, k5, 16-01-2020, 21-02-2020 section Vaatimusmaarittely Koko tiimi :active, k6, 16-01-2020, 21-02-2020 section Suunnittelu päivittyy Joonas :active, k7, 21-02-2020, 09-04-2020 section Dokumentointi päivittyy Joonas :active, k7, 21-02-2020, 23-04-2020 section Lähdekoodi Ilpo, Hilma, Heikki :active, k8, 05-03-2020, 23-04-2020 section Testisuunnitelma ja testaus Sari :active, k9, 05-03-2020, 23-04-2020 section Loppuseminaariin valmistelu Koko tiimi :active, k9, 16-04-2020, 27-04-2020

4. Laadunvarmistus

4.1 Väli- ja lopputulosten hyväksymismenettely

Käydään läpi tiimin kanssa väli- ja lopputulokset ja hyväksytään / suunnitellaan muutokset yhdessä.

4.2 Muutosten hallinta

Projektin muutoksista tulee pitää palaveri ja keskustella muutosten merkitykset ja seuraukset. Tiimi päättä yhdessä muutoksista.

4.3 Dokumentointi

Dokumentointi löytyy täältä.

Kaikki tiimin jäsenet osallistuu dokumentointiin.

4.4 Riskien hallinta

Riskien hallinnassa käytetään riskienhallintasuunnitelmaa. Tässä ennakoidaan ja määritellään projektin aikana kohdattavia riskejä ja toimintamenetelmien standardeja.

Riskienhallintasuunnitelma.

4.5 Katselmointikäytäntö

Alustava:

  • 21.2.2020 - Projektin katselmointi ennen toteutusta. (Osallistujat: kaikki)
  • 26.3.2020 - Katselmointi testauksen aloituksessa. (Osallistujat: kaikki)
  • 9.4.2020 - Projektin tuloskatselmointi toteutuksen jälkeen. (Osallistujat: kaikki)
  • 16.4.2020 - Loppukatselmointi 1 - viimeiset silaukset. (Osallistujat: kaikki)
  • 28.4.2020 - Loppukatselmointi 2 - Lopputulos on valmis ja organisaatio puretaan. (Osallistujat: kaikki)

Linkki katselmointioöytäkirjaan

4.6 Projektisuunnitelmaa täydentävät suunnitelmat

Tässä kohdassa mainitaan, mitä täydentäviä suunnitelmia on käytettävissä tai aiotaan projektin kuluessa laatia (esim. viestintä-, riskienhallinta-, testaus- ja käyttöönottosuunnitelma).

  • Vaatimusmäärittely
  • Riskienhallintasuunnitelma
  • Viestintäsuunnitelma
  • Tuntikirjaus
  • Kustannusarvio
  • Projektisuunnitelma
  • Arkkitehtuurisuunnitelma

4.7 Suunnitelmien tarkistus- ja päivitysajankohdat

Projektisuunnitelman avulla reagoidaan poikkeamiin ja ympäristömuutoksiin, joten sitä päivitetään projektin aikana. Tähän kohtaan kirjataan ne ajankohdat, jolloin suunnitelman ajantasaisuus ainakin on tarkistettava.

  • 21.2.2020 - Projektin vaatimusmäärittelyn ja projektisuunnitelman ensimmäinen katselmointi.
  • 5.3.2020 - Projektikatselmoinnin yhteydessä.
  • 9.4.2020 - Toteutuksen lopputulos -katselmoinnin yhteydessä.

5. Tiedonvälitys ja projektin etenemisen seuranta (viestintäsuunnitelma)

Projektissa käytetään asiakastapaamisia toimeksiantajan asiakaskuulemisen työnkaluna. Lisäksi toimeksiantajalta on tiedusteltu lupaa esimerkiksi sähköpostin kautta toimeksiantajalle yhteydenoton ajanvarauksen sopiminen, mikäli palvelun tuoteen aikana herää tuoteesta lisäkysymyksiä tai muita selvittämistä tarvitsevia tapauksia. Projektin vetäjänä toimii Marko Rintamäki ja hänen kautta ollaan mm. Microsoft Office:n Teams-kommunikaatiokanavatyökalun välityksellä sekä ajoittaiset tarkistus ja ohjauskerrat. Lisäksi projekti itse käyttää sisäisiä kanavia, kuten Discord, Whatsapp ja viikkopalaverit.

Viestintäsuunnitelma

6. Projektin päättyminen

6.1 Lopputuotteen luovutus, käyttöönotto

Lopputuote luovutetaan asiakkaalle eli laitetaan julkiseksi 28.4.2020 loppukatselmoinnin aikana.

6.2 Projektin tuottaman aineiston taltiointi, arkistointi ja säilytysaika

Projektin kaikki dokumentaatio ja lähdekoodit taltioidaan. Säilytysaikaa ei määritetty.

Projektiryhmän dokumentaatiosta IT-instituutille jäävä osa tallennetaan GitLabiin.

6.3 Projektin virallinen päättäminen

Projekti päättyy 28.4.2020, jolloin projektisopimuksen voimassaoloaika päättyy.

6.4 Lopetustilaisuus

Lopetustilaisuus loppukatselmoinnin yhteydessä 28.4.2020

6.5 Projektin loppuraportti

Projektin loppuraportti laaditaan viimeiseen johtoryhmän kokoukseen mennessä.