Skip to content

Projektisuunnitelma

1. Toimeksianto

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

1.1 Tausta ja lähtökohdat

Projektiryhmä lähtee toteuttamaan toimeksiantoa WIMMA Lab-koulutusympäristölle, joka koronatilanteen vuoksi on päättänyt laajentaa palveluitaan ja haluaa lisätä foorumipalvelun osaksi kotisivujensa sisältöä. Foorumin valmiina pohjana toimii Conduit-ohjelmisto, joka nopeuttaa työn aikataulua. Aikaa projektiryhmällä on 3 kuukautta, jonka jälkeen valmiin palvelun tulisi olla asiakkaalla täysimääräisessä käytössä.

Nykyisellään WIMMA Labilla on pystyssä omat kotisivut, josta löytyy olennaiset tiedot koskien WIMMA Labia ja sen palveluita. Sivustoilta löytyy FAQ-osio, jossa on vastauksia yleisimpiin kysymyksiin sekä yhteystiedot sosiaalisiin medioihin, jonka kautta yhteydenotot tapahtuvat tällä hetkellä.

Projekti toteutetaan Jyväskylän ammattikorkeakoulun IT-instituutin järjestämän Ohjelmistoprojekti ja järjestelmätestaus ‑opintojakson puitteissa. Tavoitteena projektilla on pyrkiä tuottamaan asiakkaalle mahdollisimman laadukas ja kattava tuote sekä samalla myös opettaa ryhmälle projektityöskentelyä sekä vuorovaikutustaitoja tiimityöskentelyssä.

1.2 Tavoitteet ja tehtävät

  • Suunnitella foorumiratkaisu
  • Dokumentoida projektin eteneminen ja tehty työ
  • Tuottaa toimiva foorumiratkaisu suunnitelman mukaisesti
  • Testata foorumisovellusta ja korjata ilmenevät viat
  • Toimittaa valmis tuote toimeksiantajalle

WIMMA Lab -sivustolla ei tähän asti ole ollut käytössä foorumia, joten nyt sellainen halutaan perustaa sivuston käyttäjien kommunikointia helpottamaan. WIMMA Labin tavoitteena on yhdistää oppimista, verkostoitumista ja työkokemuksen kartuttamista sekä samalla tuottaa ratkaisuja yrityksille. Foorumin tarkoitus on omalta osaltaan helpottaa näiden tavoitteiden toteutumista. Tärkeä osa projektin onnistumista on, että Conduit saadaan räätälöityä niin, että WIMMA Lab -sivuston käyttäjä kokee siihen integroidun foorumin kuuluvan saumattomasti alkuperäiseen sivustoon niin ulkoasunsa kuin toimintojensakin puolesta. Tarkoituksena on siis tuottaa monipuolinen foorumipalvelu, joka soveltuu myös tarvittaessa jatkojalostukseen.

WIMMA Labin verkostoon ja kohderyhmään kuuluu monenlaisia toimijoita. WIMMA Labin sisäiset sidosryhmät ovat Jamkin opiskelijoita, jotka toimivat projekteissa työntekijöinä. Lisäksi sisäisiin sidosryhmiin kuuluu Jamkin opettajia ja opiskelijoita, jotka toimivat projekteissa ohjaajina ja valmentajina. Ulkoisiin sidosryhmiin kuuluvat kaikki toiminnasta kiinnostuneet, mutta suurimpia sidosryhmiä ovat esimerkiksi projektien toimeksiantajat, yritykset, muut oppilaitokset, toimintaa auttavat opiskelijat ja toiminnasta kiinnostuneet vierailijat.

Projektiin liittyvät sidosryhmät ovat kuvattu mindmap-muotoon vaatimusmäärittelyssä, joka on saatavilla seuraavasta linkistä: Sidosryhmät

1.3 Rajaus ja liittymät

Projektin toteutuksen ulkopuolelle jää lopputuotteen markkinointi sekä jatkojalostus. Projekti on rajattu aikavälille 12.1.2021 - 30.4.2021 opintojakson suoritusajan myötä, ja projektin lopputuote tulee olla palautettavassa tilassa 29.4.2021 järjestettävään lopetus- ja luovutustilaisuuteen mennessä.

Projektissa ei ole tarkoituksena rakentaa tyhjästä foorumipalvelua, vaan pohjana käytetään valmista Conduit-pohjaa, jota jalostetaan projektin tarpeiden mukaisesti. Ohjelmointikieltä sekä toteutustapaa ei ole rajoitettu, ainoastaan projektin tallennus ja dokumentointi on rajoitettu projektiryhmän GitLab-repositorioon.

1.4 Oikeudet

  • Projektin lopputuote tulee olemaan julkisesti käytettävissä.
  • Ohjelmiston lähdekoodi on julkinen avoimen pohjansa johdosta.

Projektin eri osapuolten oikeudet ovat alustavasti määritelty projektisopimuksessa, joka on saatavilla seuraavasta linkistä: Projektisopimus. Jos näihin oikeuksiin tulee muutoksia, muutokset kirjataan tähän dokumenttiin aliotsikon "Oikeusmuutokset" alle.

1.4.1 Oikeusmuutokset

Tämä kohta dokumentista on varattu projektisopimuksen ulkoisten sopimusmuutosten kirjaamiseen.

1.5 Termit ja määritelmät

  • Jamk = Jyväskylän ammattikorkeakoulu.
  • WIMMA Lab = projektin toimeksiantaja, Jamkissa opiskelijoille järjestettävä ohjelmistosuunnittelu- ja tuotantokokonaisuus.
  • Git/GitLab-repositorio = projektin tiedostojen ja dokumentoinnin tallennusalusta.
  • Conduit = avoimen lähdekoodin ohjelmistokehys.
  • MockUp = puhtaasti visuaalinen konseptiversio tuotteesta.
  • Kontti = Docker-metodi, koodillisesti joustava toteutustapa ohjelmistossa.
  • CSC = kolmannen osapuolen tarjoama palvelinpalvelu, jonka palvelimilla tuote pyörii.
  • Front-end = ohjelmiston visuaalinen puoli eli käyttöliittymä. Käyttäjä operoi front-endiä käyttäessään foorumipalvelua.
  • Back-end = ohjelmiston tekninen puoli eli toiminnalliset ominaisuudet. Back-end vastaa ohjelmiston toiminnallisuudesta.
  • Tiketti = jokaisen viikon työtehtävät.
  • Sprintti = määrätty työskentelyaikaväli, tässä tapauksessa yksi sprintti on yksi viikko.
  • Etappi = projektin tärkeät määränpäät, sprinttikokonaisuuden lopetus jossa tulisi olla suoritettuna edeltävien sprinttien tehtävät.
  • KanBan = projektisuunnittelussa ja kehityksessä käytetty aikataulutus ja viikon/päivän työt.
  • SCRUM = jokaisen sprintin loppuun suunniteltu katselmointisessio, jossa käydään läpi sprintin ajalta onnistumiset, ongelmat ja kehityskohteet.

1.6 Projektiin liittyvät haasteet

Projektiin liittyviä haasteita on tarkemmin käsitelty riskienhallintasuunnitelmassa, joka on saatavilla seuraavasta linkistä: Riskienhallinta

2. Projektiorganisaatio

2.1 Organisaation esittely

Projektiorganisaatioon kuuluu kokonaisuudessaan 7 henkilöä, joista itse projektiryhmään kuuluu 6 henkilöä. Marko Rintamäki toimii projektissa tuotepäällikkönä sekä yhteyshenkilönä toimeksiantajan ja projektiryhmän välillä.

Ryhmän esittely on myös saatavilla seuraavasta linkistä: Ryhmän esittely

Tuotepäällikkö

Nimi Organisaatio Vastuu
Marko Rintamäki JAMK Tuoteomistaja

Projektiryhmän jäsenet

Nimi Organisaatio Vastuu
Joonas Timonen JAMK Git-repositorio/Dokumentointi/Koodaus
Anssi Suikki JAMK Työnjohto/Dokumentointi/Koodaus
Miro Huuskonen JAMK Dokumentointi/Koodaus
Maria Haapamäki JAMK Testaus/Dokumentointi/Koodaus
Jussi Kaunismaa JAMK Dokumentointi/Koodaus/React.js
Ville Viertola JAMK Virtuaalikoneet/CSC/Conduit

Projektiorganisaation rakenne MindMap-muodossa

uml diagram

2.2 Vastuut ja päätöksentekoprosessi

Projektipäälliköllä on vastuu kommunikoinnista toimeksiantajan ja projektiohjaajan kanssa sekä viestin eteenpäin viennistä projektiryhmälle. Laadunvalvonnasta ja testauksesta vastaa testausvastaava. Ohjelmiston toiminnallisuuksista ja sen lähdekoodista vastaavat ohjelmoijat. Graafisesta käyttöliittymästä vastaa graafinen ohjelmoija. GitLab-repositoriosta vastaa repositoriovastaava. Dokumentoinnista vastaa koko ryhmä, sillä viikkokohtaiset dokumentaatiot jaetaan ryhmän kesken.

2.3. Tiedonvälitys ja projektin etenemisen seuranta

Projektin tiedonvälityskäytännöt ovat määritelty tarkemmin viestintäsuunnitelmassa, joka on saatavilla seuraavasta linkistä: Viestintäsuunnitelma

Projektin etenemistä voi seurata tapahtumalokista tai tilannekatsauksesta, jotka ovat saatavilla seuraavista linkeistä:

Tapahtumaloki

Tilannekatsaus

3. Projektin ajalliset tavoitteet

GANTT PlantUML-muodossa

uml diagram

Etappi 0 - Sprint 00-01 (18.-31.1.2021)

  • Projektin käynnistys, kurssin aloitusinfo.
  • Projektin tuotteen määrittely.
  • Projektin tuotteen suunnittelun aloitus.

Etappi 1 - Sprint 02-07 (1.-15.3.2021)

  • Vaatimusmäärittelyn ensimmäinen versio V1.0.0 valmis.
  • Projektisuunnitelman ensimmäinen versio V1.0.0 valmis.
  • Testaussuunnitelman ensimmäinen versio V1.0.0 valmis.
  • Projektisopimuksen allekirjoitus.
  • Projektin tuotteen suunnittelun viimeistely.
  • Projektin tuotteen tuotannon aloitus sekä määriteltyjen ominaisuuksien kehittäminen.

Etappi 2 - Sprint 08-10 (16.3.-5.4.2021)

  • Projektin tuotteen tuotanto jatkuu.
  • Projektisuunnitelman kehitys jatkuu.
  • Vaatimusmäärittelyn kehitys jatkuu.

Etappi 3 - Sprint 11-12 (6.4-18.4.2021)

  • Projektin tuotteen testauksen aloitus
  • Projektin tuotteen tuotannon viimeistely

Etappi 4 - Sprint 13-14 (19.-30.4.2021)

  • Projektin tuotteen testauksen viimeistely.
  • Päätösseminaari.
  • Tuotteen lopullinen demoversio valmis.
  • Tuotteen luovutus toimeksiantajalle.
  • Dokumentaation luovutus toimeksiantajalle.
  • Henkilökohtaisen raportin luovutus kurssin ohjaajalle.

3.1 Osittaminen ja vaiheistus

Käynnistys 18.-31.1.2021 - 115h

Projektin käynnistämiseen kuuluu projektisuunnittelu, suunnitteludokumenttien laatiminen sekä yhteydenpitokäytänteiden luominen projektiryhmän sekä toimeksiantajan kanssa. Vaiheen aikana toteutetaan projektin nettisivut, tutustutaan tarkemmin toimeksiantoon sekä laaditaan projektisuunnitelma. Vaiheen aikana muodostetaan johtoryhmä, pidetään ensimmäinen johtoryhmän kokous ja allekirjoitetaan projektisopimus.

Vaiheen tuloksia ovat ryhmän imagon luominen, nettisivut sekä projektisopimus liitteineen.

Suunnittelu 1.-28.2.2021 - 150h

Suunnitteluvaiheeseen kuuluu erilaisten dokumenttien tuottaminen sekä tuotteen toteutuksen suunnittelu.

Vaiheen tuloksia ovat vaatimusmäärittely, projektisuunnitelma, yleistestaussuunnitelma, riskienhallintasuunnitelma, arkkitehtuurikuvaus sekä selkeä suunnitelma projektin etenemisestä.

Toteutus 1.-26.4.2021 - 150h

Toteutusvaiheessa projektin tuote toteutetaaan sekä toteutusta dokumentoidaan suunnitelman mukaan.

Vaiheen tuloksena on valmis lopputuote.

Testaus 5.4-26.4.2021 - 80h

Testausvaihe toteutetaan rinnakkaisena toteutusvaiheen kanssa.

Testausvaiheessa toteutetaan projektin ohjelmistolle automaattiset testit sekä vaiheen loppupuolella laadunvalvontatestaus.

Vaiheen tuloksena on lopputuote, josta on korjattu mahdollisimman paljon virheitä.

Lopetus 27.-30.4.2021 - 20h

Lopetusvaihe sisältää projektin päättämiseen liittyvät toimenpiteet. Vaiheen aikana projektiryhmä laatii loppuraportin ja esityksen johtoryhmälle. Projektin lopputuote luovutetaan toimeksiantajalle päätösseminaarissa, viimeinen johtoryhmän kokous pidetään sprintillä 14 sekä projektin organisaatio puretaan.

Vaiheen tuloksia ovat projektin loppuraportti.

3.2 Projektin alustavat kustannusarvio

Projektin alustava kustannusarvio on saatavilla osana tuntikirjauksia, joka on tarjolla liitedokumenttina seuraavasta linkistä: Tuntikirjaukset

4. Laadunvarmistus

4.1 Väli- ja lopputulosten hyväksymismenettely

Projektiryhmän kesken käydään läpi väli- ja lopputulokset, hyväksytään tai hylätään tehdyt muutokset sekä suunnitellaan tulevia muutoksia.

4.2 Muutosten hallinta

Projektin suuremmista muutoksista pidetään ryhmän kesken palaveri, jossa keskustellaan muutosten merkityksestä, seurauksista ja toteutuksesta. Muutoksia ei toteuteta, jos koko tiimi ei ole asiasta yksipuoleisesti samaa mieltä.

4.3 Dokumentointi

Kaikki projektin dokumentointi kerätään ja tallennetaan projektiryhmän GitLab-repositorioon, josta se on saatavilla tästä linkistä: Dokumentointi

4.4 Riskien hallinta

Projektin riskien hallintaa käsitellään tarkemmin riskienhallintasuunnitelmassa, joka on saatavilla liitedokumenttina seuraavasta linkistä: Riskienhallinta

4.5 Katselmointikäytäntö

Päiväykset ovat alustavia! * 9.3.2021 - Projektin katselmointi toteutuksen alkuvaiheessa. (osallistujat: kaikki) * 30.3.2021 - Projektin katselmointi testauksen alkuvaiheessa. (osallistujat: kaikki) * 13.4.2021 - Projektin tuloskatselmointi toteutuksen loppuvaiheessa. (osallistujat: kaikki) * 27.4.2021 - Loppukatselmointi 1 - viimeiset hiomiset. (osallistujat: kaikki) * 29.4.2021 - Loppukatselmointi 2/Päätösseminaari - Tuote on valmis luovutettavaksi ja organisaatio puretaan. (osallistujat: kaikki)

4.6 Projektisuunnitelmaa täydentävät suunnitelmat

Tässä kohdassa listataan kaikki projektiin liittyvät suunnitelmat sekä dokumentointi, joita projektin aikana laaditaan.

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 ajankohdat, jolloin suunnitelman ajantasaisuus ainakin on tarkistettava.

Päivämäärät ovat alustavia!

  • Etappi 1 - 9.3.2021
  • Etappi 2 - 30.3.2021
  • Etappi 3 - 13.4.2021
  • Etappi 4 - 27.4.2021

4.8 Projektin keskeyttämiskriteerit

Koska kyseessä on opiskelijaprojekti, ei keskeyttämiskriteerejä projektille ole. Projektin lopputuote luovutetaan toimeksiantajalle lopetustilaisuudessa siinä tilassa, missä tuote lopetushetkellä on.

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

Projektissa kommunikoidaan asiakkaan kanssa asiakastapaamisten kautta, jolloin asiakkaalle päivitetään projektin tilanne ja eteneminen sekä voidaan tarvittaessa tarkentaa asiakkaan haluamia uusia ominaisuuksia tai korjauksia jo olemassa oleviin ominaisuuksiin. Asiakastapaamisten ulkopuolella yhteyshenkilönä asiakkaaseen toimii tuotepäällikkö Marko Rintamäki.

Projektin tarkempi viestintäsuunnitelma on saatavilla liitedokumenttina seuraavasta linkistä: Viestintäsuunnitelma

6. Projektin päättyminen

6.1 Lopputuotteen luovutus, käyttöönotto

Lopputuote luovutetaan asiakkaalle päätösseminaarissa 29.4.2021, jolloin valmis tuote siirretään toimeksiantajalle julkiseen käyttöön.

6.2 Projektin tuottaman aineiston taltiointi, arkistointi ja säilytysaika

Projektin aikana tuotettava dokumentaatio jää talteen projektiryhmän GitLab-repositorioon toistaiseksi, josta sitä voidaan käyttää tulevilla opintojaksototeutuksilla esimerkkinä.

6.3 Projektin virallinen päättäminen

Projekti päättyy 30.4.2021, jolloin projektisopimuksen voimassaoloaika päättyy opintojakson päättymisen myötä.

Projektin lopputuote esitellään lopetustilaisuudessa 29.4.2021, jolloin lopputuote myös luovutetaan toimeksiantajalle.

6.4 Lopetustilaisuus

Projektin lopetustilaisuutena toimii päätösseminaari 29.4.2021, jossa esitellään lopputuote sekä luovutetaan se toimeksiantajalle. Seminaariin osallistuu kaikki projektiryhmän jäsenet, projektin ohjaaja ja toimeksiantaja sekä muut projektiryhmät ja mahdollisesti myös ulkoiset vierailijat, esimerkiksi paikallisten yritysten rekrytoijat.

6.5 Projektin loppuraportti

Projektin loppuraportti laaditaan viimeiseen johtoryhmän kokoukseen mennessä.