Unohtakaa Counter-Strike, täältä tulee Customer Success!

Me funidatalaiset teemme tiivistä yhteistyötä asiakaskorkeakoulujemme kanssa. Yksi osoitus tästä on Customer Success –tiimimme, jonka jäsenet ovat monipuolisesti yhteydessä asiakkaisiimme päivittäisessä työssään. Miten tiimi tukee asiakkaitamme ja pyrkii kohti onnistunutta asiakaskokemusta? Seuraavaksi tiimin työtä ja merkityksellisyyttä avaa asiantuntijamme Netta. CS tähtää onnistuneeseen asiakaskokemukseen Customer Success -tiimimme sai alkunsa syksyllä 2020, ja olen työskennellyt tiimissä sen […]

Takaisin

Me funidatalaiset teemme tiivistä yhteistyötä asiakaskorkeakoulujemme kanssa. Yksi osoitus tästä on Customer Success –tiimimme, jonka jäsenet ovat monipuolisesti yhteydessä asiakkaisiimme päivittäisessä työssään. Miten tiimi tukee asiakkaitamme ja pyrkii kohti onnistunutta asiakaskokemusta? Seuraavaksi tiimin työtä ja merkityksellisyyttä avaa asiantuntijamme Netta.

CS tähtää onnistuneeseen asiakaskokemukseen

Customer Success -tiimimme sai alkunsa syksyllä 2020, ja olen työskennellyt tiimissä sen perustamisesta lähtien. Meidät tunnetaan Funidatalla lempinimellä CS, josta joillekin saattaa tulla mielleyhtymä erääseen räiskintätietokonepeliin – tosin kukaan tiimissämme ei ainakaan tunnusta pelaavansa sitä.

CS-tiimi perustettiin aiemman palvelutiimin tilalle ja on olennainen osa Funidatalle tärkeää SaaS-periaatetta (Software as a Service). Me Funidatalla emme siis ainoastaan tuota ohjelmistoja vaan pidämme huolta niiden pitkästä elinkaaresta ja tarjoamme tukea ohjelmistojen käyttöönottoon sekä tuotantokäyttöön. Tiimimme päätehtävät voisi kiteyttää seuraaviin osa-alueisiin:

  • Kiinnitämme huomiota asiakkaiden ongelmiin ennakoivasti.
  • Tuemme käyttöönottoja ja tuotantokäyttöä.
  • Viestimme muuttuvista tilanteista asiakkaille.

Näiden osa-alueiden kautta pyrimme tarjoamaan hyvän asiakaskokemuksen. Asiakkaitamme ovat korkeakoulujen käyttöönottoprojektien henkilöstö tai vastaava taho, jos käyttöönotto on jo tehty. Korkeakoulut huolehtivat loppukäyttäjien Sisu-tuesta, mutta toki tuemme korkeakouluja tässä tärkeässä työssä. Tähän asti tiimimme työ on keskittynyt pääjärjestelmäämme Sisuun, mutta ulotamme vähitellen palveluitamme myös muihin Funidata-perheen tuotteisiin, Harriin ja Unihow’hun.

Asiakkaan tuki ja turva – tiimin monipuoliset tehtävät

Tiimimme koostuu viidestä jäsenestä, joista neljä työskentelee asiakasselvityksien sisällöllisellä puolella ja yksi teknisellä puolella. Sisällöllisen puolen henkilöt hoitavat pääosin asiantuntijaosaamista vaativat kysymykset ja teknisen puolen henkilö ratkoo asioita teknistä osaamista vaativasta kulmasta sekä seuraa, että esimerkiksi versioasennuksista ei aiheutuisi odottamattomia seurauksia käyttäjille. Korkeakoulujen siirryttyä Sisun master-käyttöön olemme saaneet kasvavassa määrin selvitettäväksi tietokantakaivelua ja muuta teknistä selvittelyä vaativia tapauksia, joten teknisen puolen osaava Customer Success Developer on ollut tervetullut vahvistus tiimiimme!

Päivittäisten ongelmien ratkaisun lisäksi tarjoamme asiakkaillemme monipuolista tukea järjestelmän käyttöönotoissa ja master-käytöissä. Tiimimme muun muassa esittelee käyttöliittymästä asiakkaille uuden version sisältämät toiminnallisuudet, kouluttaa asiakkaita järjestelmien toiminnallisuuksien käytössä sekä vetää Sisu-järjestelmän operatiivisen ryhmän kokouksia. Kokouksissa pidämme korkeakoulut ajan tasalla kehityksen etenemisestä sekä suunnittelemme tulevia versioita yhteistyössä asiakasomistajiemme kanssa. Vuorovaikutus asiakkaiden kanssa onkin tärkeä palikka hyvän asiakassuhteen rakentamisessa. Osallistumme tiiminä myös uuden version hyväksyntätestaukseen, jossa validoidaan asiakkaille testaukseen asennettavan version sisällöt asiantuntijanäkökulmasta.

Aito välittäminen ja vuorovaikutus onnistumisen avaimina

Funidatan toiminnan onnistumista on selvitetty mitattavien lukujen (KPI, key performance indicator) avulla. Mittareiden avulla myös meidänkin tiimimme saa tietoa siitä, kuinka hyvin onnistumme asiakastyytyväisyydessä. Yksi mittareista on neljä kertaa vuodessa asiakkaille lähetettävä asiakastyytyväisyyspalautekysely, jonka mukaan tyytyväisyys asiakaspalvelun tasoon on erinomaisella tasolla. Lisäksi olemme sisäisesti mitanneet tiimin vasteaikoja asiakkaille esimerkiksi sen suhteen, kuinka nopeasti otamme asiakkaan raportoiman tiketin bugista eli järjestelmävirheestä käsittelyyn. Tästäkin tulokset ovat erinomaisia, sillä asiakkaan odotusaika on onnistuttu pitämään minimissään.

Tiimissämme mielestäni parasta on asiakkaista välittäminen, joten samanmielisten henkilöiden kanssa on ilo tehdä töitä. Kullakin tiimin jäsenellä on mahdollisuus vaikuttaa omaan työnkuvaansa ja painottaa omia vahvuusalueitaan ja mielenkiinnon kohteitaan, mikä luonnollisesti tuo lisämotivaatiota päivittäiseen työntekoon. Lisäksi tykkään työskennellä asiakkaidemme kanssa, sillä heidän kanssaan keskustellessaan saa uusia näkökulmia, joita voi hyödyntää esimerkiksi oman työn kehittämisessä. Hyvä asiakassuhde rakentuu molemminpuolisesta luottamuksesta, joka edellyttää jatkuvaa keskustelua.

Sisun saavutettavuustyön edistyminen keväällä 2022

Tässä kirjoituksessa käymme läpi Sisun saavutettavuustyön etenemistä keväällä 2022 ja kerromme suunnittelussa ja kehityksessä olevista kokonaisuuksista. Teemme jatkuvaa työtä Sisun saavutettavuusparannusten eteen omana kehityshankkeena ja osana normaalia kehitystyötämme, jotta jokainen käyttäjä pääsisi hyödyntämään Sisua tasa-arvoisesti. Saavutettava opintojaksohaku ja automaattinen aikakatkaisu Yksi kevään 2022 isoista saavutettavuuden kehityskohteista on ollut opiskelijan opintojaksohaku. Hakutoiminnallisuus on yksi opiskelijan käyttöliittymän […]

Takaisin

Tässä kirjoituksessa käymme läpi Sisun saavutettavuustyön etenemistä keväällä 2022 ja kerromme suunnittelussa ja kehityksessä olevista kokonaisuuksista. Teemme jatkuvaa työtä Sisun saavutettavuusparannusten eteen omana kehityshankkeena ja osana normaalia kehitystyötämme, jotta jokainen käyttäjä pääsisi hyödyntämään Sisua tasa-arvoisesti.

Saavutettava opintojaksohaku ja automaattinen aikakatkaisu

Yksi kevään 2022 isoista saavutettavuuden kehityskohteista on ollut opiskelijan opintojaksohaku. Hakutoiminnallisuus on yksi opiskelijan käyttöliittymän viidestä päänäkymästä, joten kyseessä on merkittävä parannus. Haku eroaa muista Sisun toiminnallisuuksista siinä, ettei sen käyttö vaadi korkeakoulun käyttäjätunnuksia. Koska parannuksia tehdään koko näkymään ja sen komponentteihin, on työssä huomioitava sekä näkymän rakenteen että yksittäisten komponenttien toimivuus.

Erotimme Sisun versiossa 2.7 rajaustekijävalikon hakutoiminnallisuudesta ja lisäsimme sivulle hyppylinkin ja murupolun. Tekstillä haettaessa haku käynnistetään enterillä tai Hae-nappia painamalla, kun vähintään kolme merkkiä on annettu. Haku pelkkiä rajaustekijöitä käyttäen on myös mahdollista. Lisäksi teimme saavutettavuus- ja käytettävyysparannuksia hakutulosten näyttämiseen.

Jatkamme edelleen opintojaksohaun saavutettavuuden ja käytettävyyden parantamista haun rajaustekijöihin keskittyen. Samalla käännämme toiminnallisuudet uudelle Angular-ohjelmistokehykselle, mikä vie aikaa.

Asennamme Sisun version 2.8 asiakaskorkeakoulujemme tuotantoympäristöihin kesäkuussa. Versiossa julkaisemme automaattisen aikakatkaisun, joka täyttää WCAG-kriteerin 2.2.1. Kun käyttäjän istunto Sisussa on vanhenemassa, ilmoitetaan hänelle saavutettavasti, että hänet kirjataan ulos tietyn ajan kuluttua. Ilmoitus antaa myös vaihtoehdon jatkaa Sisun käyttöä.

Muita kevään 2022 saavutettavuusparannuksia

Opiskelijan käyttöliittymän parannukset ovat Sisun saavutettavuustyössä etusijalla. Olemme toteuttaneet seuraavat parannukset opiskelijan käyttöliittymään:

  • Näppäimistöllä liikkumista välilehtien välillä on parannettu.
  • Fokus menee modaali-ikkunoissa niiden alkuun, jotta näppäimistöllä navigointi on helpompaa.
  • Ruudunlukuohjelmat huomioivat Sisun saapuneet viestit paremmin. Kun käyttäjä navigoi Viestit-välilehden kohdalle, ilmoitetaan ruudunlukuohjelmalle saapuneiden viestien määrä.
  • Opiskelijan omiin tietoihin on luotu oma välilehti hylätyille ja vanhentuneille suorituksille ruudunlukijakäytön parantamiseksi. Ennen hylätyt ja vanhentuneet suoritukset löytyivät pudotusvalikosta, johon ei päässyt ruudunlukijalla käsiksi.
  • Käyttäjä voi siirtyä suoraan sivun pääsisältöön hyppylinkillä. Parannus asentuu tuotantoon kesäkuisessa versiossa Sisu 2.8.

Olemme tehneet myös parannuksia, jotka koskevat kaikkia Sisun käyttöliittymiä. Seuraavat parannukset asentuvat korkeakoulujen tuotantoympäristöihin versiossa 2.8:

  • Alertit eli Sisun alkuun tulevat ilmoituspalkit eivät enää sulkeudu automaattisesti.
  • Uuteen välilehteen tai ikkunaan avautuvista linkeistä ilmoitetaan ruudunlukijalle ohjelmallisesti.
  • Navigaation otsikot on muutettu saavutettavammiksi, jolloin kaikki sivut eivät enää näy samannimisinä selaimen välilehdillä ja sivuhistoriassa.

Kehityksessä ja suunnittelussa olevat saavutettavuusparannukset

Kuten ylempänä mainitsimme, opintojaksohaun saavutettavuusparannusten kehitystyö on tällä hetkellä käynnissä. Avoimen kehitystiimi puolestaan työstää avoimen yliopiston opintojen selaamista, ja olemme esitelleet asiakaskorkeakouluillemme avoimen yliopiston opintojen ostamisen käyttöliittymäsuunnitelmia. Huomioimme saavutettavuuden vahvasti kaikessa avoimen yliopiston suunnittelu- ja kehitystyössä.

Saavutettavuusparannukset näkyvät myös käyttöliittymäsuunnittelijoidemme työpöydällä. Opintojaksoesitteelle on tiedossa pieniä saavutettavuusparannuksia. Suunnittelimme esitteen otsikkoalueen lähes kokonaan uudelleen. Otsikkoalueen suunnittelupäätöksiin vaikutti merkittävimmin elementtien lukujärjestys, joka on erityisen tärkeä ruudunlukukäyttäjille. Vanha toteutus nojautui visuaalisiin elementteihin eikä lukujärjestys ollut saavutettava, sillä olennaisin tieto eli opintojakson nimi luettiin vasta monen muun tiedon jälkeen.

Olemme aloitelleet Sisun ilmoittautumisprosessin parannusten pohdintaa. Touko-kesäkuun vaihteessa olemmekin järjestäneet ilmoittautumisen prototyyppien käytettävyystestausta. Ilmoittautuminen on yksi Sisun ydinprosesseista, ja sen uudelleensuunnittelu on tehtävä harkiten.

Saavutettavuus on merkittävä osa päivittäistä työtämme

Viime saavutettavuustekstissämme kerroimme yhteistyöstämme Eficoden kanssa, ja tänä vuonna yhteinen tekemisemme on tiivistynyt entisestään. Eficoden asiantuntija käy läpi käyttöliittymäsuunnitelmiamme ja tikettejämme saavutettavuusnäkökulmasta, ja saamme häneen nopeasti yhteyden Slackissamme saavutettavuuskysymyksiin keskittyvällä kanavalla. Lisäksi asiantuntija on tehnyt ohjelmistokehittäjillemme WCAG 2.2 -kriteeristön huomioivan muistilistan, mikä tukee saavutettavuuden vakiinnuttamista tiiviiksi osaksi prosessejamme.

Sisäisesti pyrimme tekemään laajempia parannuksia, joilla muutamme tekemistämme entistä ketterämmäksi ja helpotamme tuotteidemme käytettävyyttä ja ylläpidettävyyttä. Otamme saavutettavuuden huomioon luonnollisena osana yleisprosessiemme kehitystä. Alamme rakentaa Funidatan omaa design systemiä ja mietimme, miten voisimme siirtyä kohti yleiskäyttöisiä komponentteja, jotka on suunniteltu ja toteutettu saavutettaviksi. Lisäksi tarkoituksenamme on parantaa dokumentaatiota ja työn etenemisen seurantaa sekä hahmottaa, minkälaista tietoa meillä kaivataan sisäisesti saavutettavuudesta.

Aiemmat kirjoituksemme Sisun saavutettavuudesta

Sisun saavutettavuustyön edistyminen syksyllä 2021
Syksyn 2021 ensiaskeleet saavutettavuudessa
Tiedote Avin päätöksestä HY:n Sisusta tehtyyn saavutettavuuskanteluun
Katsaus Sisun saavutettavuuteen kautta aikojen

Saavutettavuusmaininnat Sisun versioblogeissa

Sisun versio 2.8
Sisun versio 2.7
Sisun versio 2.6
Sisun versio 2.5
Sisun versio 2.3

Toteutimme Hankenin datamigraation osa 1: Laatuvaatimuksista kohti toimintaa

Alkuvuodesta tuoteomistajamme Eeva kertoi Hankenin Oodi–Sisu-migraatioiden olevan yhden kehitystiimimme tärkeintä hommaa. Hankenin datamigraatio olikin ensimmäinen, jonka toteutimme asiakaskorkeakoulullemme. Hanken otti Sisun onnistuneesti käyttöön helmikuussa, ja migraatiotyö on jatkunut myös käyttöönoton jälkeen. Käymme seuraavaksi läpi migraation perusperiaatteita ja hyötyjä. Funidatan toteuttaman datamigraation edut Yksi toteuttamamme datamigraation eduista oli ehdottomasti se, että meillä oli käytössä useita työkaluja, […]

Takaisin

Alkuvuodesta tuoteomistajamme Eeva kertoi Hankenin Oodi–Sisu-migraatioiden olevan yhden kehitystiimimme tärkeintä hommaa. Hankenin datamigraatio olikin ensimmäinen, jonka toteutimme asiakaskorkeakoulullemme. Hanken otti Sisun onnistuneesti käyttöön helmikuussa, ja migraatiotyö on jatkunut myös käyttöönoton jälkeen. Käymme seuraavaksi läpi migraation perusperiaatteita ja hyötyjä.

Funidatan toteuttaman datamigraation edut

Yksi toteuttamamme datamigraation eduista oli ehdottomasti se, että meillä oli käytössä useita työkaluja, joita muiden korkeakoulujen migraatioprojekteilla ei ollut. Pystyimme esimerkiksi kehittämään migraatioita paikalliseen Sisu-instanssiin, jolloin meillä oli yksinkertainen tapa validoida migraation tuloksia. Meidän oli tarvittaessa mahdollista palata migraatiota edeltävään pisteeseen ja testata muutosten jälkeen uudestaan. Samalla pystyimme tarkistamaan validaatioita ja mahdollisia virheitä migroidussa datassa suoraan Sisun logeista ja lähdekoodista.

Toinen etu oli, että me tunnemme Sisun ja sen tietorakenteen valmiiksi. Tällöin meidän oli sisäistettävä ainoastaan lähdejärjestelmän tietomalli ja miten se saadaan sovellettua Sisun tietorakenteeseen sopivaksi. Porukastamme löytyy myös ihmisiä, jotka ovat työskennelleet lähdejärjestelmän kanssa ja tuntevat sen tietokantamallin, mikä teki migroitavan datan löytämisestä jouhevampaa.

Ohjelmistotuotannon perusta

Hoidimme migraation täysin Sisun rajapintoja hyödyntäen ja edellisten migraatioiden päälle rakentaen. Suunnittelimme migraatiota yhdessä Hankenin kanssa, jolloin heidän toiveensa oli helpompi kirjoittaa tekniseen speksaukseen. Samalla saimme kiinni virheitä ennen kuin suunnitelmia siirrettiin toteutukseen.

Noudatimme seuraavia ohjelmistotuotannon käytäntöjä, joiden avulla olemme ylläpitäneet migraatioiden laatua:

  • Toteutukseen siirtyvät tehtävät vastaavat DEEP-määritelmää (Detailed appropriately, Estimated, Emergent, Prioritized)
  • Backlogia huolletaan ja ylläpidetään aktiivisesti nykyisen tiedon perusteella
  • Migraatiot testataan automaattisin testein
  • Toinen kehittäjä vertaiskatselmoi ja testaa migraatiokoodin
  • Kaikki kehittäminen tapahtuu asiakkaan kanssa sovitussa järjestyksessä versionhallintaa hyödyntäen

Jokaisella kehittäjällämme on käytössä identtinen lokaali ympäristö, joka on rakennettu peilaamaan asiakkaan ympäristöjä. Tämä tarkoittaa Dockerilla pystytettyä tietokantaa, josta löytyy asiakkaan sekoitettu data, Sisu sekä mockattu AWS S3. Suunnittelimme, dokumentoimme ja testasimme migraatiot erikseen, jolloin ne eivät ole yhden ihmisen tiedon takana. Testeillä voimme todistaa, että migraatiot ovat toistettavia ja ettei mikään muutos ole rikkonut olemassa olevia migraatioita.

Modulaarisuus ja lähtödatan validointi

Migraatiot toteutettiin modulaarisella sovelluskoodilla ohjelmistotuotantomallin mukaisesti, joka on mahdollistanut koodin uusiokäytön. Jaettu lähdekoodi mahdollistaa uusien migraatioiden kirjoittamisen nopeasti, koska moni migraatio rakentaa olemassa olevien palasten päälle. Modulaarista toteutusta on helppo ylläpitää ja tarvittaessa korjata. Migraation toteutustavan ansiosta olemme voineet rakentaa lähdejärjestelmän datan automaattisia validointeja. Näin olemme saaneet datasta kiinni virheitä ja Hanken on voinut korjata niitä, jotta migraation lopputulos olisi halutunlainen.

Toteutimme Hankenin datamigraation.
HDM-tiimi järjesti kisakatsomon viimeisen migraation kunniaksi Demo Sisuun. Mukaan pääsi myös tiimimaskotti Mäyrä.

Migraatioiden deterministisyys

Olemme pitäneet vahvasti kiinni periaatteesta, että Sisuun siirretyn datan on oltava sellaisessa muodossa, että sen vastaava data on tunnistettavissa lähdejärjestelmästä esimerkiksi sisällyttämällä lähdejärjestelmän ID-kenttä Sisuun luotavaan ID-kenttään. On tärkeää, että jokainen Sisuun generoitu ID-kenttä on sama riippumatta lähdedatan määrästä, muutoksista tai siitä, milloin ja mihin Sisun instanssiin dataa migroidaan. Olemme voineet esimerkiksi hyödyntää Hankenin raportoimia tuotannon ID:itä päästäksemme staging-ympäristössä käsiksi tuotantoympäristössä ilmenneisiin ongelmiin.

Luotettavuus ja läpinäkyvyys

Meidän on yksinkertaista seurata migraatioon tehtyjen muutosten vaikutuksia dataan, sillä jokainen migraatiokokonaisuus sisältää kattavan logituksen ja analytiikan. Tiedämme esimerkiksi, kuinka monta uutta opiskeluoikeutta on syntynyt jokaisesta migraation ajosta ja jos edelliseen ajoon verrattuna jokin opiskeluoikeus ei enää muodostu. Tiedämme myöskin, mistä lähdejärjestelmän tietokantariveistä jokainen opiskeluoikeus koostuu.

Ennen masterin vaihtoa ideologiamme oli, että Hankenin määrittelemien tietueiden osalta lähdejärjestelmän muutokset korvaavat Sisussa tehdyt muutokset. Kun Hanken otti Sisun käyttöön master-järjestelmänään, muutimme migraation toimintamallia osittain: Sisussa tehdyt muutokset huomioidaan, ja siksi muokataan ainoastaan sellaisia tietueita, joissa edellinen muokkaaja on migraation integraatiotunnus. Näin master-järjestelmän integriteetti säilyy, mutta voimme edelleen täydentää Sisuun sellaista edellisen järjestelmään dataa, jota ei ole aiemmin migroitu.

Adaptiivisuus ja tietoturva

Ennen masterin vaihtoa noudatimme eräänlaista continuous release -mallia, joka mahdollisti joustavan käyttöönottomallin asiakkaalle. Hanken pystyi pyytämään meiltä muutoksia tai vaihtaa asioiden prioriteetteja, jolloin toimitimme nopeasti juuri sitä, mitä Hankenilta oli toivottu. Kun uusi migraatio oli toteutettu, pystyimme viemään sen erikseen testi- ja demoympäristöihin ja tuotantoon sitten, kun asiakas oli sen testannut.

Olemme huomioineet henkilödatan käsittelyyn liittyviä rajoitteita ja tietoturvaseikkoja käsitellessämme asiakkaan dataa. Olemme esimerkiksi sekoittaneet lokaalikehityksessä olevan datan sellaiselle tasolle, että opiskelijan tunnistaminen on mahdotonta ilman pääsyä alkuperäiseen dataan. Olemme huolehtineet migraatioputken sisäisesti siitä, että datan liikkuminen verkossa on kryptattua ja datan tallennus on toteutettu kryptattuun AWS-ympäristöön. Ainoastaan niillä henkilöillä, joiden tulee virhetilanteissa päästä tutkimaan sekoittamatonta dataa vaikkapa asiakkaan pyynnöstä, on pääsy siihen.

Palaamme vielä tarkemmin Hankenin datamigraation tekniseen toteutukseen tulevassa blogikirjoituksessamme. Stay tuned!

Nyrkeissä on voimaa – Funidatalla suunnitellaan läpi tiimirajojen

Sisu on massiivinen järjestelmä, jossa useat eri teemat ja toiminnallisuudet limittyvät ja jonka kehittämiseen tarvitaan monipuolisesti erilaista osaamista. Syksyllä 2021 aloimme kasata suunnittelunyrkkejä tiettyjen kehityskohteiden ympärille, jotta eri osa-alueiden osaaminen saataisiin mukaan suunnitteluun ihan alusta lähtien. Ensimmäiset kokemukset nyrkeistä on nyt saatu, joten jututimme muutamia funidatalaisia siitä, mitä nyrkkityöskentely on tuonut tullessaan. Nyrkit ovat isojen […]

Takaisin

Sisu on massiivinen järjestelmä, jossa useat eri teemat ja toiminnallisuudet limittyvät ja jonka kehittämiseen tarvitaan monipuolisesti erilaista osaamista. Syksyllä 2021 aloimme kasata suunnittelunyrkkejä tiettyjen kehityskohteiden ympärille, jotta eri osa-alueiden osaaminen saataisiin mukaan suunnitteluun ihan alusta lähtien. Ensimmäiset kokemukset nyrkeistä on nyt saatu, joten jututimme muutamia funidatalaisia siitä, mitä nyrkkityöskentely on tuonut tullessaan.

Nyrkit ovat isojen asioiden äärellä

Suunnittelunyrkin voi ajatella olevan kuin pieni tiimi, johon on osallistettu osaajia eri tiimeistä ja joka mahdollistaa tiiviin yhteistyön alusta asti. Suunnittelunyrkki kasataan pitkälti jonkin laajan teeman, kuten ristiinopiskelupalvelun, ympärille. Nyrkin kokoonpanoon voi kuulua esimerkiksi tuoteomistaja, käyttöliittymäsuunnittelija, ohjelmistokehittäjä, frontend-kehittäjä ja ohjelmistotestaaja.

Pienempien kehityskohteiden ympärille nyrkkejä ei ole toistaiseksi muodostettu, vaan niiden tarkoitus on tukea laajojen kokonaisuuksien suunnittelua ja kehitystä. Tähän mennessä nyrkkejä on perustettu erilaisiin tarkoituksiin, kuten täysin uuden toiminnallisuuden suunnitteluun, vanhan toiminnallisuuden laajentamiseen ja saavutettavuuden parantamiseen.

Jokaisen ääni kuuluu prosessin eri vaiheissa

Parhaassa tapauksessa suunnittelunyrkit tiivistävät työskentelyä ja tuovat eri osa-alueiden asiantuntijat tehokkaasti samojen ongelmien äärelle. Nyrkkityöskentely voi tehostaa kehityskaaren iteratiivisuutta, kun prosessin paloja – esimerkiksi käyttöliittymäkuvien suunnittelua ja ohjelmistokehitystä – ei tehdä mekaanisesti peräkkäin. Vaikka oma asiantuntijuus olisi vahvinta juuri oman työnkuvan saralla, voi jokaisella nyrkin osallistujalla olla olennaista sanottavaa prosessin missä tahansa vaiheessa.

Olemme ketterän kehityksen ohjelmistotalo, joten yhteistyötä eri asiantuntijoiden välillä on toki tehty tiiviisti ennen suunnittelunyrkkejäkin. Nyrkkien ei nähdä radikaalisti muuttaneen toimintatapojamme: nytkin osa nyrkeistä muodostuu pitkälti yhden kehitystiimin jäsenistä, mutta mukaan on otettu porukkaa myös muualta organisaatiosta. Nyrkkitoiminta on luonnollinen jatkumo aiemmalle työskentelymallillemme, jossa tietty kehityskohde on ollut tietyn kehitystiimin tontilla, ja sitä on työstetty yhdessä käyttöliittymäsuunnittelijan kanssa.

Yhteistyö on tekijöidensä näköistä

Yhteydenpito suunnittelunyrkeissä on sujuvaa. Työskentelyssä on alusta asti selvää, millä porukalla hommaa edistetään ja keneen voi olla matalalla kynnyksellä yhteydessä mistäkin asiasta. Yhteistyö soljuu, kun samat ihmiset ovat alusta asti mukana tietyn asian kehityksessä ja prosessit tulevat tutuiksi kaikille osallistujille nyrkin työn edetessä.

Suunnittelunyrkkien osallistujat on kirjattu myös sisäiseen wikiimme, jolloin sekä funidatalaiset että konsultit saavat nopeasti selville, ketkä työskentelevät tietyn teeman parissa. Kasvavassa Funidata-perheessä nähdään positiivisena, ettei tietoa osallistujista tarvitse etsiä vaikkapa kehitystiketeiltä. Erityistä kiitosta saavat nyrkkikohtaiset Slack-kanavat, joille tiettyihin teemoihin liittyvät keskustelut voidaan keskittää. Tällöin informaatio ja aiemmat viestit löytyvät aina samasta paikasta.

Nyrkkien perustaminen itsessään ei ratkaise mitään, vaan työn sujuvuus riippuu siitä, miten nyrkki toimii. Kun työn alle otetaan kokonaisuus, jossa asiat vaikuttavat vahvasti toisiinsa, on yhteistyön oltava hyvin järjesteltyä. Nyrkit – kuten tiimitkin – ovat itseohjautuvia, eikä niiden tarkoitus ole työntää työskentelyä tiettyyn muottiin. Jokaisen nyrkin vapaus valita omat työskentelymetodinsa mahdollistaa sen, että nyrkit voivat toimia sen jäsenille sopivimmilla tavoilla.

Suunnittelunyrkit ovat edelleen uusi työskentelyn muoto Funidatalla, ja kokeilemalla konkreettisesti erilaisia lähestymistapoja saamme uutta osviittaa toiminnan kehittämiseen.

Sisun korkea laatu vaatii kokeilunhaluista ja rohkeaa testaamista

Testaamme päätuotettamme Sisua monipuolisesti. Pääasiassa testaus on manuaalista, mutta automaatiotestaus on myös merkittävässä osassa, sillä monipuolinen testaaminen varmistaa Sisun korkean laadun. Saavutettavuuden testaaminen nousee myös koko ajan tärkeämmäksi osaksi Sisun testausta. Etsimme meille parhaillaan kokeilunhaluista ja rohkeaa ohjelmistotestaajaa “rikkomaan Sisua” eli huolehtimaan järjestelmän toimivuudesta. Käännyimme testaajamme Saran puoleen selvittääksemme paremmin, millaista on ohjelmistotestaajan arki Funidatalla. […]

Takaisin

Testaamme päätuotettamme Sisua monipuolisesti. Pääasiassa testaus on manuaalista, mutta automaatiotestaus on myös merkittävässä osassa, sillä monipuolinen testaaminen varmistaa Sisun korkean laadun. Saavutettavuuden testaaminen nousee myös koko ajan tärkeämmäksi osaksi Sisun testausta. Etsimme meille parhaillaan kokeilunhaluista ja rohkeaa ohjelmistotestaajaa “rikkomaan Sisua” eli huolehtimaan järjestelmän toimivuudesta. Käännyimme testaajamme Saran puoleen selvittääksemme paremmin, millaista on ohjelmistotestaajan arki Funidatalla.

Moi Sara, kertoisitko yleisesti testausprosessistamme?

Tietty! Jospa lähdetään ihan siitä liikkeelle, miten tiketti päätyy testaukseen. Devaajilla on omat tikettinsä, jotka katselmoinnin jälkeen siirretään kanban-taulussa “waiting for verify” -tilaan. Nappaan sieltä itselleni tikettejä verifioitavaksi eli testattavaksi. Testattavana voi olla uusia toiminnallisuuksia tai bugikorjauksia eli jo olemassa olevien toiminnallisuuksien muokkausta tai korjausta.

Me testaajat keskustelemme tarvittaessa kehittäjien kanssa työn alla olevista tiketeistä. Mikäli löydän bugin, otan yhteyttä kyseisen tiketin koodanneeseen devaajaan. Keskustelemme yhdessä, mitä asian kanssa tehdään, eli liittyykö löytynyt bugi kyseiseen tikettiin vai pitääkö tehdä uusi bugitiketti. Mikäli bugi liittyy kyseiseen tikettiin, palautan tiketin devaajalle, jonka jälkeen tiketti matkaa läpi saman prosessin, eli korjauksen jälkeen tiketti taas katselmoidaan ja testataan. Testaajana toimii yleensä sama henkilö kuin ensimmäiselläkin kerralla. Mikäli löytynyt bugi ei liitykään kyseiseen tikettiin, testaaja voi kirjoittaa siitä itse bugitiketin toisto-ohjeineen ja laittaa sen seuraavaan sprinttiin sille tiimille, jolle kyseinen toiminnallisuus kuuluu.

Sisua testataan myös automaatiotesteillä, kertoisitko hieman niistä?

Automaatiotestauksessa robotti raksuttaa testit läpi. Automaatio- eli E2E-testejä on satoja, joten robotti säästää todella paljon työaikaamme. Manuaalisesti niin suuren testimäärän läpikäyminen olisi liian iso työ.

E2E-testit käyvät järjestelmän läpi aina jokaisen pull requestin yhteydessä eli aina kun masteriin tulee uutta koodia. Jos E2E-testit eivät mene läpi, täytyy testejä tai koodia muokata. Kun masteriin lisätään uutta tavaraa, on vaarana, että jotain menee rikki. Uusi koodi voi muuttaa asioita jostain toisesta paikasta, jos siellä on käytetty samaa koodia. E2E-testien avulla on mahdollista varmistaa, ettei synny regressiota eli etteivät ennestään toimivat toiminnallisuudet mene rikki.

Testaajien lisäksi E2E-testit ovat erittäin hyödyllisiä myös kehittäjille, sillä niiden avulla näkee suoraan, mikä on mennyt pieleen. Automaatiotestaus nostaa Sisun laatua ja testikattavuus nousee. E2E-testit ovat tärkeitä, sillä niiden tarkoituksena on suojella järjestelmää ja varmistaa, että uudesta koodista huolimatta kaikki toimii kuten pitääkin.

Työnkuvaani kuuluu E2E-testitapausten kirjoittaminen ja muokkaaminen. Tätä voi tehdä eri teknologioilla, mutta meillä on käytössä Cypress. Se on mielestäni hyvä valinta. Jos vähänkin osaa lukea koodia, on testin lukeminen Cypressissä todella suoraviivaista. Cypress-testien kirjoittamisessa tulee osata etsiä softasta oikeat elementit, jotta testi vastaa järjestelmän toiminnallisuutta.

Ohjelmistotestaaja Saran arki Funidatalla Sara on testannut Sisua reilut pari vuotta. Myös Saran koira Hugo osallistuu välillä testaushommiin.

Millaisia haasteita Sisu tarjoaa testaajalle?

Tikettejä on sekä helppoja että vaikeita. Helpon tiketin testaamiseen ei yleensä mene varttia kauempaa, kun tarkistaa, että se toimii joka puolella erilaisissa tilanteissa. Isompiin tapauksiin voi mennä useampi päivä. Testaamiseen menevään aikaan vaikuttaa moni asia, kuten testattavan asian laajuus, onko toiminnallisuus minulle entuudestaan tuttu tai onko devaaja tarvittaessa paikalla, jos tulee jotain kysyttävää. Silläkin on tietysti merkitystä, kuinka hyvin tiketin kuvaus on kirjoitettu.

Pääasiassa seikkailen käyttöliittymissä, mutta välillä joudun konepellin alle tutkimaan, menikö muutos tietokantaan oikein. On siis hyvä osata tehdä tietokantakyselyjä ja testata rajapintojen kautta. Myös koodinlukutaidosta on hyötyä. Tässä hommassa on mahdollista päätyä kunnon HC-järjestelmäasiantuntijaksi, joka osaa ajatella kokonaiskuvaa koko järjestelmästä ja jolta usein kysytään asiasta kuin asiasta.

Meillä tehdään paljon myös saavutettavuuden eteen töitä, miten se näkyy testaajalla?

Saavutettavuustestaus lisääntyy meillä koko ajan ja se tulee olemaan isompi juttu tulevaisuudessa, kun pääsemme saavutettavuustyössä pidemmälle. Saavutettavuustestaukseen kuuluu mm. ruudunlukijan käyttöä, näppäinkomentojen osaamista, kooditestausta sekä kontrastitestausta.

Tähän mennessä työpöydälleni on tullut tapauksia, jossa on parannettu joidenkin sivujen kontrasteja tai liikkumista tietyissä näkymissä näppäinkomennoilla. Suurin työ saavutettavuuden osalta on UI/UX-tiimillä, joka yhteistyössä yhteistyökumppanimme Eficoden saavutettavuusasiantuntijan kanssa käy läpi, mitä näkymiä parannellaan, missä järjestyksessä ja miten.

Saavutettavuustestauksessa saattaa joutua hyppimään selaimien ja eri käyttöjärjestelmien välillä. Käytän itse Macia, mutta minun on täytynyt asentaa koneelleni Windows-virtuaaliympäristö, jotta voin käyttää NVDA:ta, joka on yleisin käytössä oleva ruudunlukuohjelma.

Mikä on parasta testaajan roolissa Funidatalla?

Parasta on se, että teemme omaa tuotetta, johon saa paneutua täysin. Pidän myös siitä, että oma roolini on selkeä. Vaikka toimin nyt Karhu-tiimin toisena testaajana, voin tarvittaessa siirtyä myös johonkin muuhun tiimiin testaajaksi eli tiimien rajat eivät ole kiveen hakattuja. Asioita ei myöskään tarvitse miettiä yksin, vaan devaajilta ja muilta testaajilta saa aina apua. Testauksessa on kivaa se, että saa kokeilla järjestelmän sisällä kaikenlaista. On palkitsevaa löytää bugeja ja se myös auttaa koko järjestelmän kehittämisessä, jotta ongelmat eivät päätyisi loppukäyttäjälle. Meille kaikille on tärkeää, että loppukäyttäjällä on laadukas ja luotettava järjestelmä käytössään.

 

Oletko valmis sukeltamaan syvälle Sisuun? Kiinnostaako ohjelmistotestaajan hommat Funidatalla? Hae meille ohjelmistotestaajaksi! Tutustu myös työntekijäesittelyymme ohjelmistotestaajastamme Henristä.

Sisun saavutettavuustyön edistyminen syksyllä 2021

Vuosi 2021 lähestyy loppuaan. Tässä kirjoituksessa käymme läpi, miten Sisun saavutettavuustyö on edennyt viimeisen muutaman kuukauden aikana. Saavutettavuuden eteen tehdään jatkuvaa työtä, ja opiskelijan käyttöliittymän saavutettavuusparannukset ovat etusijalla. Opiskelijan käyttöliittymän parannukset Syksyllä 2021 olemme jatkaneet kesällä 2020 aloitettua työtä. Opiskelijan käyttöliittymään on toteutettu seuraavia parannuksia: Ikonit on piilotettu ruudunlukijalta sellaisissa painikkeissa ja linkeissä, joihin liittyy […]

Takaisin

Vuosi 2021 lähestyy loppuaan. Tässä kirjoituksessa käymme läpi, miten Sisun saavutettavuustyö on edennyt viimeisen muutaman kuukauden aikana. Saavutettavuuden eteen tehdään jatkuvaa työtä, ja opiskelijan käyttöliittymän saavutettavuusparannukset ovat etusijalla.

Opiskelijan käyttöliittymän parannukset

Syksyllä 2021 olemme jatkaneet kesällä 2020 aloitettua työtä. Opiskelijan käyttöliittymään on toteutettu seuraavia parannuksia:

  • Ikonit on piilotettu ruudunlukijalta sellaisissa painikkeissa ja linkeissä, joihin liittyy ikoni. Jos ikonit luettaisiin, ne vaikeuttaisivat sisällön ymmärrettävyyttä (aria-hidden)
  • Etusivun ikonit, joiden lukeminen vaikeuttaisi sisällön ymmärrettävyyttä, on piilotettu ruudunlukijalta (aria-hidden)
  • Kaikki muokattavat kentät ja niiden otsikot on yhdistetty ohjelmallisesti
  • Päänavigaation kohdistustyylit on korjattu, eli kohdistus erottuu, kun liikkuu näppäimistöllä tai ruudunlukijalla
  • Navigoinnissa, välilehdillä ja yleisimmissä valikoissa, kuten kielivalikoissa, on korjattu ohjelmallisesti kerrottava tieto siitä, missä elementissä käyttäjä on ja/tai mikä elementti on valittuna (aria-current, aria-selected)
  • Välilehtien saavutettavuutta on parannettu
  • Kielipallot on korjattu toiminnallisuudeltaan saavutettaviksi
  • Avattavat ja suljettavat elementit, kuten pudotusvalikot, on korjattu niin, että käyttäjä voi saada ohjelmallisesti tiedon siitä, että osion voi avata ja sulkea (aria-expanded)
  • Murupolku, joka kertoo linkkipolun avulla käyttäjän sijainnista järjestelmän hierarkiassa, on tehty saavutettavaksi

Lisäksi olemme tehneet parannuksia esimerkiksi värien kontrasteihin. Osa parannuksista asentuu korkeakoulujen tuotantoympäristöihin Sisu 2.6 -versiossa, joka on nyt korkeakoulujen testattavana ja asennetaan tuotantokäyttöön tammikuussa.

Suunnittelussa olevat toiminnallisuudet

Suurempien, kokonaisia näkymiä ja toiminnallisuuksia koskevien parannusten eteen tehtävä työ on ollut käyttäjille osittain näkymätöntä, sillä uudelleensuunnittelu ja parannusten toteuttaminen vie ohjelmistokehityksessä paljon aikaa. Tällä hetkellä suunniteltavana on opiskelijan opintojaksohaun tulosten listaussivu. Ensimmäiseksi olemme kaavailleet parannuksia hakukenttään ja hakutulosten näyttämiseen. Suunnittelemme muutoksia esimerkiksi sivun responsiiviseen asetteluun, sen ohjelmalliseen rakenteeseen ja otsikointiin sekä yksittäisten hakutulosten lukujärjestykseen ja otsikointiin.

Huomioimme saavutettavuuden kaikessa uudessa suunnittelutyössä. Yksi suuren kokoluokan esimerkki tästä on avoimen yliopiston opiskelijan toiminnallisuuksien suunnittelu. Avoimen toiminnallisuuksia suunnitellessa saadaan näkökulmaa myös siihen, miten jo tuotantokäytössä olevia Sisun toiminnallisuuksia voisi parantaa saavutettavuuden osalta. Yksi olennainen toiminnallisuus, jossa avoimesta saatuja näkökantoja pyritään hyödyntämään muuallakin Sisussa, on ilmoittautuminen.

Käyttöliittymäsuunnittelutyökalumme vaihdos Figmaan tukee saavutettavuuden suunnittelutyötä, sillä vaihdokseen liittyy käyttöliittymäkomponenttien saavutettavuuden tarkastamista ja saavutettavuusstandardin mukaisten responsiivisten versioiden miettimistä. Samassa yhteydessä etsimme uusia, tehokkaita tapoja viestiä saavutettavuushuomioista käyttöliittymäsuunnitelmissamme, sillä osa suunniteltavista asioista on ohjelmallisesti toteutettavia eivätkä ne näy visuaalisesti käyttöliittymässä. Suunnittelutyökalun vaihdokseen voi tutustua tarkemmin aiheesta kertovassa blogitekstissämme.

Kasvatamme asiantuntijuuttamme

Eficode Oy on jo aiemmin tehnyt yleisen arvion Sisun opiskelijakäyttöliittymän saavutettavuudesta, ja tänä syksynä yhteistyömme heidän saavutettavuusasiantuntijansa kanssa on tiivistynyt. Eficoden asiantuntija on kommentoinut tarkemmin muun muassa opiskelijan käyttöliittymän Haku-sivun ja avoimen yliopiston käyttöliittymäsuunnitelmia sekä tarkastellut opintosuunnitelmaan liittyviä parannustarpeita. Lisäksi käymme hänen kanssaan läpi saavutettavuuteen liittyviä kysymyksiä sekä jo tehtyjä parannuksia.

Kaikkien tehtyjen saavutettavuusparannusten laatu on tärkeä varmistaa, ja siksi panostamme saavutettavuuden testaamiseen osana testausprosessiamme. Testaajamme ovat perehtyneet aiheeseen muun muassa käymällä läpi saavutettavuuden testaamista Eficoden johdolla.

Isommalla porukalla vuoteen 2022

Olemme halunneet vahvistaa saavutettavuuden eteen tekemäämme työtä rekrytoinnin kautta, ja pian saavutettavuutta päästään edistämään entistä isommalla porukalla. UI/UX-tiimissä on syksyn aikana aloittanut uusi fronttikehittäjä, ja vuoden alussa tiimissä aloittaa uusi käyttöliittymäsuunnittelija. Uusia sisukkaita tyyppejä on liittynyt ja liittyy myös moneen kehitystiimiimme. Saavutettavuus koskettaa koko kehitysprosessiamme, joten uudet käsiparit ympäri organisaatiotamme tulevat olemaan iso etu.

Saavutettavuus huomioidaan luonnollisesti kaikessa jatkossa tehtävässä suunnittelussamme, ja opiskelijan käyttöliittymän saavutettavuusparannukset ovat suuressa roolissa vuoden 2022 Sisu-kehityksen roadmapilla. Panostamme jatkuvasti siihen, että opimme edelleen lisää saavutettavuudesta ja se vakiintuu olennaiseksi osaksi tekemistämme kaikkiin kehitysprosessimme vaiheisiin.

Aiemmat kirjoituksemme Sisun saavutettavuudesta

Sisun versio 2.5
Syksyn 2021 ensiaskeleet saavutettavuudessa
Sisun versio 2.3
Tiedote Avin päätöksestä HY:n Sisusta tehtyyn saavutettavuuskanteluun
Katsaus Sisun saavutettavuuteen kautta aikojen