Hyppää sisältöön

Toimeksianto K2021

Siirrymme viikottaiseen suunnitteluun, joka tapahtuu aina tiistaisin.

SPRINT-05 PLANNING DAY 23.2.2021

Sprintin teema: Asiakkaan toiveet ja vaatimukset

  1. Asiakaan kuuleminen

Käydään läpi asiakkaan kanssa mitä hänellä on mielessään liittyen palveluumme?

  • Mitä uusia ominaisuuksia asiakas toivoo?
  • Täydentyy asiakkaan kuulemisen myötä

Tässä nimetyty ominaisuudet (Näitä käytetään tarjousta laadittaessa)

  • Feature-WIMMA-Lab-teema
  • Feature-Salasanahallinta
  • Feature-Twitter-jatko
  • Feature-Tilin-poisto
  • Feature-Kirosana-filtteri
  • Epic-Tietoturvan-vahvistaminen
  • Epic-vikakorjaukset
Prioriteetti ID User Story Muuta
P1 US200 Toimeksiantajana toivon, että foorumilla ja WIMMA Lab-sivustoilla liikkuminen on helppoa ja selkeää
P1 US201 Toimeksiantajana toivon, että sivusto näyttää visuaalisesti yhtenäiseltä, jos käyttäjä menee foorumille
P1 US202 Foorumin käyttäjänä toivon voivani palata helposti WIMMA Lab-sivustolle, koska haluan vielä tarkastella sitä uudelleen
P1 US203 Toimeksiantajana haluan, että palvelun värit noudattavat WIMMA Lab-sivuston tyyliä
P1 US204 Toimeksiantajana toivon saavani käyttöön koulutusvideon, jonka avulla voin informoida käyttäjiä uusista ominaisuukksista
P1 US205 Toimeksiantajana edellytetään palveluun HTTPS yhteyksien käyttöä
P1 US206 Toimeksiantajan toivon, että aiemmin raportoidut bugit korjataan
P1 US207 Toimeksiantajana haluan saada tuotteesta yhteenvedon Release Note-muodossa, josta selviää lopullinen vikatilanne ja tietoturvan taso
P1 US208 Toimeksiantajana toivon saavani selvityksen ohjelmiston toteutuksen tietoturvan tasosta aka "npm audit"
P2 US216 Toimeksiantajana haluan kerätä palautetta ja kehitysideoita käyttäjiltä
P2 US209 Markkinoinnin edustajana toivon, että minulla olisi mahdollisuus esitellä tärkeimmät ominaisuudet videon muodossa, kesto 1 min
P2 US210 Toimeksiantajana haluan, että palvelu huomauttaa artikkelin kirjoittajalle (suomeksi) tekstin sisällön asiallisuudesta, jos se sisältää "ala-arvoista" kieltä.
P2 US211 Foorumin käyttäjänä haluan tarvittaessa vaihtaa vanhan salasanani uuteen
P3 US212 Foorumin käyttäjänä haluan jakaa valitsemani postauksen twitterin avulla ulkomaailmalle, koska joskus on hyvä tiedottaa ulkomaailmaa WIMMALABin tapahtumista.
P3 US213 Foorumin käyttäjänä haluan mahdollisuuden palauttaa unohtuneen salasanan sähköpostitse - aka MailHog Container
P3 US214 Foorumin käyttäjänä haluan että poistaessani käyttäjätilini kaikki siihen liittyvät tiedot poistetaan
P3 US215 Moderaattorina haluan lisätä kieltolistaan uusia sanoja muokkaamalla erillistä JSON/YAML-tiedostoa

SPRINT-04 PLANNING DAY 16.2.2021

Sprintin teema: Dokumentit kuntoon ja valmistudutaan asiakkaan vaatimuksiin

Tässä vaiheessa tiedossa olevat toiminnallisuudet, jota on sisällytettävä asiakkaan toimintojen lisäksi ovat siis seuraavat:

  • Varmistusjärjestelmä - Feature-Backup-system 1.0
  • Palveluanalytiikka - Feature-Service-Analytics 1.0
  • Palautejärjestelmä - Feature-Feedback-system 1.0
  • Tietosuojatiedote - Feature-GDPR-info 1.0
  • Lokijärjestelmä - Logging-system 1.0

Näitä edellä mainittuja toiminnallisuuksia(Featureita) käsitellään itsenäisinä kokonaisuuksian ja niiden toimitusjärjestys on tiimin oma valinta. Ne on joka tapauksessa sisällytettävä pakettiin!

Asiakkaan haluamat toiminnot ovat vielä auki. Näihin saadaan selvyys Sprint 5. tapaamisessa! Niitä siis odotellessa!

Esiintulleita User Story

Prioriteetti ID User Story Muuta
P3 US132 Palvelun ylläpitäjänä haluan pystyä tekemään kerättyyn käyttö lokiin hakuja ja visualisointeja
P1 US133 Palvelun kehittäjänä haluan saada loppukäyttäjän palautteen Issue-muodossa eteeni, koska se on selkeämpää jatkokäsitellä
P3 US134 Tietosuojavastaavana haluan tarkistaa tarvittaessa käyttölogista yksittäisen henkilön tekemät toimenpiteet tietyllä ajanhetkellä (oletus 1h)
P1 US135 Ohjelmistokehittäjänä haluan tietää mitä tietoja asiakkaasta tallennetaan, jotta voimme tehdä GDPR-kuvauksen

SPRINT-03 PLANNING DAY 9.2.2021

Tässä vaiheessa kirjataan backlogiin isompi joukko User Storyja.

Sprintin teema: Dokumentit kuntoon ja tuotannon valmistelu (Dockerin haltuunotto)

Uusi ominaisuus (Feature)

  • Lokijärjestelmä - Logging-system
Prioriteetti ID User Story Muuta
P1 US126 Palvelun tuottajana haluan tallentaa viikon mittaiset käyttölogit erilliseen palvelimeen, koska palveluun murtautuja ei saa tuhota logeja
P1 US127 Järjestelmän ylläpitäjänä vaadin että tietokannan varmuuskopio on varmennettuna toisella koneella tai erillään tuotantopalvelimesta päivämäärä-tar.gz-muodossa
P3 US128 Palvelun tuottajana haluan kerätä palvelun käyttöön liittyen käyttölogia, jonka perusteella voidaan selvittää mahdolliset väärinkäytökset https://gitlab.labranet.jamk.fi/TTOS0800-TTOS0900/amk-2020s/-/blob/master/materiaalit/05-Toimeksianto/lisatietoa.md#backend-logittaminen
P3 US129 Palvelun ylläpitäjnä toivon, että käyttölogin muoto on tulkittavissa silmämääräisti, mutta se sisältää aimmen esitetyt atribuutit
P3 US130 Palvelun tuottajana meidän pitää kyetä tallentamaan aktiiviset tapahtumat palvelussa vähintään viimeisen viikon ajalta siten, että niitä voidaan tarkastella nopeasti (max 5 min)
P3 US131 Käyttölogiin tallennetaan, käyttäjätunnus, ajanhetki, suoritettu toiminto, mahdollinen status

SPRINT-02 PLANNING DAY 2.2.2021

Tässä vaiheessa kirjataan backlogiin isompi joukko User Storyja.

Sprintin teema: Dokumentit kuntoon ja tuotannon valmistelu (Dockerin haltuunotto)

Uudet ominaisuudet (Features)

  • Varmistusjärjestelmä - Feature-Backup-system
  • Palveluanalytiikka - Feature-Service-Analytics (Sovella Google-analytics)
  • Palautejärjestelmä - Feature-Feedback-system (Sovella Doorbell.io)
  • Tietosuojatiedote - Feature-GDPR-info ()

Palvelun kehitys:

  • Docker tekniikan soveltaminen koko tuotteen kehitykseen
Prioriteetti ID User Story Muuta
P1 US101 Palvelun tuottajana haluan juolkaista palvelun Docker-tekniikalla, koska se helpottaa tuotantoa
P3 US102 Testaajana haluan käyttää Docker-kontteja, koska se helpottaa testi ympäristön pystyttämistä
P3 US103 Kehittäjänä haluan käynnistää kehitysympäristön nopeasti käyttäen kontteja
P3 US104 Palvelu voidaan pystyttää ajamalla docker-compose up komento
P2 US105 Palvelun käyttäjän toivon, että palvelu on luotettava ja se käyttää suojattuja HTTPS-yhteyttä, koska en uskalla käyttää HTTP-palveluja nykyaikana
P1 US106 Palvelun tuottajana haluan saada palautetta loppukäyttäjilä, jonka perusteella tuotetta voidaan kehitää paremmaksi
P1 US107 Palvelun tuottajana haluan auttaa loppukäyttäjää erillisen tukiportaalin kautta kuormittamatta kehitystiimiä ylimääräisillä kysmyksillä
P1 US108 Palvelun kehittäjänä haluan saada loppukäyttäjän asiakaan kehitys palautteen Issue-muodossa eteeni, koska se on selkeämpää jatkokäsitellä
P3 US109 Palvelun ylläpitäjänä haluan, että logit ovat koneluettavassa formaatissa jolloin niihin voidaan tehdä erilaisia hakuja ja parserointeja
P3 US110 Palvelun tuottajana haluan selvityksen siitä millaisia tunnettuja haavottuvuuksia on nykyisissä toteutukseen liittyvissä kirjastoissa tai moduleissa, koska täytyy varautua tulevaisuutta varten
P1 US111 Palvelun tuottajan on palvelustamme löydyttävä tietosuojakuvaus infosivu, koska GDPR sitä edellyttää
P1 US112 Järjestelmän ylläpitäjänä haluan että tuotannon tietokannasta voidaan ottaa tarvittaessa backup komentoriviltä
P1 US113 Palvelun tuottajana haluan käytää konttien jakamisessa labranetin gitlab rekisteriä
P1 US114 Palvelun tuottajana haluan seurata palvelun käyttöastetta soveltaen apuna Google Analytics-palvelua, koska se on ollut aiemmin käytössä
P3 US115 Palvelun tuottajana haluan julkaista palvelusta "release note"-kuvauksen, josta löytyvät muutokset ja olemassa olevat viat
P1 US116 Palvelun tuottajan on palvelustamme löydyttävä tietosuojakuvaus infosivu, koska GDPR sitä edellyttää
P1 US117 Palvelun tuottajana haluan saada palautetta loppukäyttäjilä, jonka perusteella tuotetta voidaan kehitää paremmaksi
P2 US118 Palvelun tuottajana haluan tietää mitä selaimia asiakkaamme käyttävät, koska se selkeyttää ominaisuuksien kehittämistä palvelemaan loppuasiakasta paremmin
P3 US119 Tietosuojavastaavana haluan tietää miten voin löytää logista valitun henkilön tekemät toimenpiteet
P3 US120 Testaajana voin käyttää tarvittaessa ennalta määriteltyä backup-tiedostoa testien pohjana
P2 US121 Palvelun ylläpitäjänä haluan että erilaiset logit kerätään palvelun internet rajalla
P3 US122 Palvelun tuottajana haluan visualisoida nykyisen asiakaskunnan aktiivisen käyttöajan ja käyttäjä määrät viikon aikana, koska se selkeyttää ymmärrystä palvelun suosiosta
P3 US123 Palvelun ylläpitäjänä haluan että palvelua tarjoillaan reverse proxyn takaa jolloin todelliset palvelimet piilotetaan sisäverkkoon

Johdanto toimeksiantoon

Tiimisi on saanut asiakkaakseen WIMMA Lab-koulutusympäristön, joka on kehittämässä toimintaansa laajemmaksi. Korona-aika on hankaloittanut WIMMA Labin toimintaa ja nyt keskitytään kehittämään palvelukokonaisuutta, kunnes aika on sopivampi. Asiakkaan toimeksianto on tuottaa palveluna Foorumi-ratkaisua WIMMA Lab-kotisivujen osaksi. Foorumin pohjana käytetään ns. Conduit-ohjelmistoa, joka on ennalta valittu asiakkaan puolesta ja sitä ei voida muuttaa. Syynä tähän on aikataulu. Asiakkaalla on vahva oletus, että tämä säästää aikaa kehitykseltä ja voidaan keskittyä nopeampaan käyttöön ottoon.

Asiakkaan edustajana toimii tekninen arkkitehti Teemu Kontio, joka haluaa Forum-keskustelupalstan käyttöön viimeistään 3 kk jälkeen projektin alkamisesta. Tämä tarkoittaa käytännössä sitä, että ohjelmisto muutoksineen on asiakkaan täysimääräisessä käytössä. Code Cerub vastaa tämän jälkeen palvelun tukemisesta ja siihen liittyvästä ylläpidosta. Ylläpito ei kuulu projektin tavoitteeseen.

Projektin tavoitteena on muokata ja tuottaa Conduit-ohjelmistosta sopiva versio asiakkaan tarpeeseen. Ylläpito jatkuu erillisen sopimuksen pohjalta.

Projektin kesto ja kokonaisuus

  • Projektin kesto on max 3 kk
  • Tarkka aloitus päivä 18.1.2021
  • Työaika maanantaista-perjantaihin

Toimeksiantoon liittyvät henkilöt

  • Asiakkaan edustajana tekninen arkkitehti Teemu K (gitlab tunnus customer1)

Asiakkaalle on tehty gitlab-tunnukset nimelle customer1, joita käytetään tarvittavissa Issueissa.

Johtoryhmään kuuluvat seuraavat henkilöt:

  • Tiiminvetäjä/projektipäällikkö
  • Asiakkaan tekninen arkkitehti Teemu Kontio
  • Ohjaaja/tuoteomistaja Marko Rintamäki

Projektin tehtävien jakaminen

Vaiheet:

Karkea vaihe jako on seuraava

Projektin etapit ja arvioidut kestot

  • E0 - Esisuunnittelu ~1 vk
  • E1 - Aloitus ja suunnittelu ~2 vk
  • E2 - Toteutus E1 ja E3 välissä
  • E3 - Koekäyttö + korjaukset ~2 vk
  • E4 - Luovutus ja projektin lopetus 1 vk

Asiakkaan antamaa lisätietoa

Asiakkaalta tuli ohjeistus, josta selviää millaisia sidosryhmiä liittyy WIMMA Labin toimintaan. Niitä voi käyttää määrittelyn apuana.

Tutustu WIMMA Lab Black Book

Työtehtävien tuntihinnoittelu asiakkaalle toimeksiannossa

Tutustu hinnoitteluun sivulla

Haasteet

Sinun on tiimissä pohdittava miten eri osa-alueet vaikuttavat ja millä tavoin työtä on johdettava, että päästään sujuvasti maaliin. Miten vaikuttavat eri työntekijöiden muut aikataulut tekemiseen, onko edessä riskejä joita ei voi tietää tässä vaiheessa.

Alustava Työlista/Backlog

Tuotepäällikkö ehti palaveerata asiakkaan kanssa ennen joulua ja keräsi tärkeimmät tavoiteet, joita projektissa on saatava aikaa seuraavan kuukauden aikana. Ota lista ja siirrä kaikki oletuksena projektin työlistaan, eli (Backlogiin) Huomaa useat esitetyt tehtävät on kirjauttu User Storyjen muodossa! Listaa tulee täydennystä, jos jotain ilmenee! Muista, että eri tyyppiset tehtävät kirjataan Issue-tyyppien mukaan!

Seuraava lista sisältää itse tuotteeseen liittyviä huomioita, jotka tulivat esiin asiakkaan keskusteluissa. Niitä ei ole vielä priorisoitu!! Eli tilanne tarkentuu projektin aikana

  • PX = Ei priorisoitu vielä
  • P0 = Ei tarvetta tässä vaiheessa
  • P1 = Ehdottomasti tarpeellinen
  • P2 = Tarpeellinen
  • P3 = Hyödyllinen toiminto
  • P4 = Hyödyllinen, mutta toteutetaan jos mahtuu aikatauluun
  • P5 = Totetutetaan vain jos aikataulussa on tilaa