Näin onnistuu Copilotin käyttöönotto turvallisesti

Näin onnistuu Copilotin käyttöönotto turvallisesti

Näin onnistuu Copilotin käyttöönotto turvallisesti

 

Erityisesti työkäyttöön suunniteltu tekoälyavustaja Copilot on viime vuosien puhutuimpia uutuuksia. Suoraan SharePointista tai OneDriveltä tietoa hakeva assistentti auttaa monissa arkisissa työtehtävissä. Copilot toimii samoilla toimintaperiaatteilla kuin muutkin generatiiviset tekoälytyökalut, mutta sen vahvuus piilee tietoturvassa. Copilot ei esimerkiksi tallenna viestejä työkalun kehittämiseen ja on muutenkin GDPR-yhteensopiva vaihtoehto.

Microsoft Copilot tuo näppärästi tekoälyn osaksi arjen työskentelyä, mutta sen täysi potentiaali avautuu vasta, kun käyttöönotto ja koulutus tehdään huolella. Agenttien avulla tekoäly voidaan valjastaa juuri sinun organisaatiosi tarpeisiin, ja nykyiset kehitystyökalut tekevät räätälöinnistä huomattavasti aiempaa edullisempaa ja nopeampaa. Ennen Copilotin käyttöönottoa on kuitenkin tärkeää huomioida muutama askel.

Dekra

Tietoturva ja -hallinta kuntoon ensimmäisenä

 

Copilot ei lisää tietoturvariskiä, vaan se paljastaa olemassa olevat puutteet — ja siksi käyttöönotto kannattaa aloittaa hallitulla auditoinnilla ja korjauksilla.  Ennen Copilotin käyttöönottoa on varmistettava, että datanhallinta ja tietoturva ovat kunnossa.

 

  • Sisäinen tietoturva kuntoon ensin. Monessa organisaatiossa ulkoinen suojaus on kunnossa, mutta sisäinen jakaminen (kuten johtoryhmän dokumentit) vuotaa. Copilot pakottaa katsomaan tämän kuntoon, sillä muutoin kuka tahansa yrityksen henkilöstöstä voi päätyä Copilotin ohjauksella lukemaan vain johtoryhmän silmille tarkoitettuja tiedostoja.

 

  • Luokittelut ja DLP. Määritä labelit (esimerkiksi ”salainen” tai ”julkinen”) ja valvonta: kuka saa nähdä, mitä saa jakaa ja minne. Määrittele myös käyttöoikeudet huolella; Copilot saattaa ”paljastaa” liikaa, jos data ei ole suojattu oikein.

 

  • Datanhallinta. Joillakin toimialoilla tiedon salaus on muita tärkeämpää. Kuka saa lähettää sopimuksia, ja saako ne lähettää ilman suojausta? Copilot mahdollistaa erittäin laajan datanhallinnan, eli se voi esimerkiksi raportoida ja lähettää hälytyksiä kyseenalaisista pyynnöistä.

 

  • Sijainti ja suvereniteetti. Copilotia käyttäessä data jää automaattisesti EU-alueelle. Kun tulevaisuudessa suomalaiset datakeskukset tulevat vaihtoehdoksi, voi tietojen siirtäminen Suomeen tulla monelle toimialalle keskeiseksi vaatimukseksi.

 

 

Copilotin käyttöönotto — mitä muuta tulee huomioida?

 

Datan ja rakenteen laitto kuntoon

 

Turvallisuuden lisäksi ennen Copilotin käyttöönottoa on myös tarkistettava, ettei kansioiden uumenista nouse esille vanhentunutta tietoa. Jos yrityksen data pitää sisällään vanhentunutta tietoa, voi Copilot tietysti nostaa sitä vastauksissaan esille. Siivoa vanhentunut sisältö ja päätä säilytys- ja arkistointiperiaatteet. Vakiintunut tietorakenne eli selkeät sivustot, kirjastot ja metatiedot helpottaa datanhallintaa. Kun Copilotilla on käytössään validi ja ajantasainen lähdeaineisto, vastauksista tulee tarkkoja.

 

Käyttöönoton malli ja osaaminen

 

Käyttöönoton alussa kannattaa nimetä henkilöstöstä “Copilot-vastaava” tai -päällikkö, sillä etenkin isommissa organisaatioissa iso osa työajasta saattaa kulua alkuvaiheessa henkilöstön kysymyksiin ja sparraukseen. Henkilöstö kannattaa kouluttaa Copilotin käyttöön roolikohtaisesti, jotta uuden työkalun mahdollisuudet saadaan parhaiten hyödynnettyä ja toisaalta ongelmakohtiin osataan tarttua helpommin.

Kuukausilisenssin ohella Copilotia voi hyödyntää myös pay-as-you-go-mallin avulla. Mallin avulla organisaatio voi ottaa käyttöön Copilot- ja SharePoint-agentteja käyttäjille, joilta muuten puuttuu kuukausimaksullinen lisenssi. Pay-as-you-go-mallilla ei kuitenkaan saa käyttöön Copilot Chat-sovellukseen work-puolta, joka nojaa vastauksissa organisaation dataan. Täten Copilotin hyödyntäminen Office-ympäristössä on huomattavasti rajoitetumpaa ilman kuukausimaksullista lisenssiä.

 

Kuvasta näet erot: oikealla kuukausilisenssillä Copilotia käyttävän näkymä on monipuolisempi:

 

 

Tarvitsetko apua Copilotin käyttöönotossa yrityksellesi?

 

Suurin osa yritysten tiedosta elää SharePointissa, ja Systems Gardenin ydinosaaminen on juuri dokumentinhallinnassa ja intranet-toteutuksissa. Aloitamme Copilotin käyttöönoton pikakartoituksella (mm. rakenne, käyttöoikeudet, metatiedot, vanhan aineiston arkistointi) ja varmistamme, että Copilot saa järkevää dataa lähdeaineistoksi. Autamme myös datanhallinnan ja muun teknisen puolen osalta.

Kun perusta on kunnossa, voimme suunnitella agentteja (esim. HR- tai markkinointiagentti), jotka hyödyntävät vain organisaation omaa dataa ja yhdistävät tarvittaessa useiden pilvien sisältöä. Aloitamme kohdennetuilla, liiketoimintahyötyyn kytketyillä kokeiluilla. Tarvittaessa voimme myös kouluttaa ja sparrata henkilöstöä Copilotin käyttöönotossa.

Copilotin hyödyt realisoituvat parhaiten, kun sisältö on siistitty, oikeudet ja luokittelut ovat kohdallaan ja käyttäjät tietävät miten kysyä. Kysy lisää — autamme organisaatiotasi ottamaan tekoälyn haltuun järkevästi ja vaikuttavasti.

 

 

Kiinnostuitko? Ota yhteyttä!

Ota yhteyttä ja sovi etätapaaminen. Katsotaan minkälainen ratkaisu juuri sinun yrityksellesi sopisi.

Ohjelmistokehityksen vaiheet askel askeleelta

Ohjelmistokehityksen vaiheet askel askeleelta

Ohjelmistokehityksen vaiheet askel askeleelta

 

Onnistunut ohjelmistokehitys ei etene sattumanvaraisesti, vaan taustalla on aina harkittu ja vaiheittain rakentuva menetelmä. Meillä Systems Gardenilla jokainen ohjelmistoprojekti kulkee läpi selkeän ja asiakaslähtöisen prosessin, jonka tavoitteena on luoda liiketoimintaa aidosti hyödyttävä ratkaisu. Hyvin suunnitellut ohjelmistokehityksen vaiheet muodostavat rungon, jonka varaan rakennetaan toimiva ja käyttäjäystävällinen järjestelmä.

Dekra

 

Mistä vaiheista ohjelmistokehitysprojekti koostuu?

 

1. Tarvekartoitus ja vaatimusmäärittely

 

Kaikki alkaa asiakkaan tarpeiden ymmärtämisestä. Keskustelemme tavoitteista, nykyisistä haasteista ja siitä, millaisia hyötyjä järjestelmällä halutaan saavuttaa. Tämän pohjalta laaditaan vaatimusmäärittely, jossa kirkastetaan, mitä järjestelmän on tarkoitus tehdä, ja ennen kaikkea miksi.

 

2. Suunnittelu ja arkkitehtuurivalinnat

 

Kun tavoitteet ovat selvillä, siirrytään suunnitteluun. Tässä vaiheessa määritellään järjestelmän rakenne, käyttöliittymän luonnokset ja valitaan sopivat teknologiat. Ohjelmistosuunnittelu tehdään yhteistyössä asiakkaan kanssa, jotta ratkaisu tukee liiketoimintaa parhaalla mahdollisella tavalla.

 

3. Toteutus

 

Kun varsinainen ohjelmistokehitys alkaa, työ etenee ketterästi sprinteissä, joihin sisältyy säännöllisiä välikatselmuksia ja demoja. Näin varmistetaan, että suunta on oikea ja mahdolliset muutokset voidaan huomioida ajoissa.

 

4. Testaus ja käyttöönotto

 

Ennen julkaisua järjestelmä testataan huolellisesti, jotta käyttöön saadaan virheettömästi toimiva ratkaisu. Käyttöönotto suunnitellaan siten, että se aiheuttaa mahdollisimman vähän häiriötä loppukäyttäjille.

 

5. Ylläpito ja jatkokehitys

 

Ohjelmistokehitys ei pääty käyttöönottoon. Tarjoamme tukea, päivityksiä ja mahdollisuuden jatkokehittää ratkaisua liiketoiminnan kasvaessa tai tarpeiden muuttuessa.

 

Systems Gardenilla ohjelmistokehitys on jatkuva, yhteistyöhön perustuva prosessi. Jokainen vaihe rakentuu edellisen varaan ja tavoitteena on aina tuottaa arvoa niin asiakkaalle kuin loppukäyttäjälle.

 

Tutustu tarkemmin referensseihimme:

 

 

Miksi valita Systems Garden kumppaniksi ohjelmistoprojektiin?

 

Kaikki ohjelmistokehityksen vaiheet ovat meille arkipäivää, olemmehan olleet olemassa jo vuodesta 2002. Vahvuutenamme on yhdistää liiketoiminnan ymmärrys, tekninen osaaminen ja ketterä kehitysmalli. Saamme kiitosta etenkin käyttäjäystävällisistä ratkaisuista, innovatiivisesta ajattelusta sekä “kädet saveen” -asenteestamme, joka ei ole vain kauniita visioita, vaan konkreettisia ja toimivia lopputuloksia.

 

Me emme myy pelkkää koodia, vaan kokonaisratkaisun, joka tukee asiakkaan liiketoimintaa aidosti ja pitkäjänteisesti. Käytämme juuri sitä teknologiaa, joka parhaiten palvelee projektin tavoitteita, oli kyse sitten nopeasti käyttöön otettavasta low-code -ratkaisusta tai räätälöidystä järjestelmästä. Työskentelemme ketterästi, pidämme asiakkaan ajan tasalla ja kannamme vastuun projektin onnistumisesta aina alusta loppuun saakka.

 

 

Asiakkaan rooli ohjelmistokehityksen eri vaiheissa

 

Ohjelmistoprojekti on aina yhteispeliä. Asiakkaan osallistuminen on tärkeää erityisesti ohjelmistokehityksen alkuvaiheessa, kun kartoitetaan tarpeita ja määritellään tavoitteet. Myös suunnittelussa ja välikatselmuksissa asiakkaan näkemykset auttavat ohjaamaan kehitystä oikeaan suuntaan. Emme kuitenkaan kuormita asiakasta teknisillä yksityiskohdilla, vaan johdamme prosessia niin, että asiakkaan rooli on selkeä ja mielekäs.

Alkuvaiheessa tarvitsemme tietoa liiketoimintatarpeista, prosesseista ja järjestelmien nykytilasta. Keskustelut, käytännön esimerkit ja kipupisteet auttavat meitä hahmottamaan, millainen kokonaisuus tarvitaan ja millä prioriteetilla. Ohjelmistokehityksen suunnitteluvaiheessa asiakkaan rooli korostuu tavoitteiden ja toivottujen toimintojen tarkentamisessa. Näin löydämme ratkaisut, jotka vastaavat aidosti käyttäjien tarpeisiin.

Kehitystyön aikana pidämme säännöllisesti välikatselmuksia ja demoja, joissa esitellään työn etenemistä. Asiakkaalta toivomme tässä kohtaa palautetta ja keskustelua: onko suunta oikea, nouseeko uusia toiveita tai onko jotain, mikä kaipaa tarkennusta. Tällainen vuoropuhelu auttaa meitä säilyttämään ketteryyden ja välttämään turhaa kehitystyötä.

Käyttöönotossa asiakkaan vastuulla on lähinnä loppukäyttäjien informointi ja mahdolliseen pilottikäyttöön osallistuminen. Me huolehdimme käyttöönoton teknisestä sujuvuudesta ja kaiken kaikkiaan asiakkaalta ei vaadita teknistä osaamista. Riittää, että tuo esiin tavoitteet, toiveet ja arjen haasteet. Me pidämme projektin hallinnassa ja rakennamme ratkaisun niiden pohjalta.

 

 

Riskienhallinta – mitä voi mennä pieleen?

 

Ohjelmistoprojektiin liittyy aina mahdollisia riskejä, kuten epäselvät toiveet ja vaatimukset, budjetin ylittyminen, viivästykset tai se, ettei järjestelmää lopulta otetakaan kunnolla käyttöön. Me tunnistamme nämä riskit jo etukäteen ja rakennamme projektin niin, että ne voidaan ehkäistä ajoissa.

 

Systems Gardenilla riskienhallinta alkaa selkeästä tarvekartoituksesta ja liiketoimintalähtöisestä suunnittelusta. Käytämme aikaa siihen, että ymmärrämme asiakkaan arjen, prosessit ja tavoitteet ennen kuin ensimmäistäkään riviä koodia kirjoitetaan. Tällä varmistetaan, että kehitystyö ei lähde harhapoluille, eikä tulevaisuudessa tarvitse korjata vääriä oletuksia.

 

Koko projektin ajan etenemme vaiheittain, 2–4 viikon sprinteissä. Jokaisen vaiheen jälkeen pidetään katselmus, jossa esitellään valmiit osiot ja varmistetaan yhdessä, että suunta on oikea. Tämä vähentää riskejä merkittävästi, eikä virheitä ehdi kasaantua, vaan ne huomataan ja korjataan jo varhaisessa ohjelmistokehityksen vaiheessa.

 

Lisäksi panostamme pilotointiin ja käyttöönoton huolelliseen suunnitteluun, jotta järjestelmä ei jää “hyllylle”, vaan päätyy aidosti käyttöön. Asiakkaan ei tarvitse pelätä epäonnistumista, sillä pitkän kokemuksemme ansiosta tiedämme, miten haasteet vältetään jo ennen kuin ne ehtivät syntyä.

 

Hyvin suunniteltu ohjelmistoprojekti kantaa pitkälle

 

Kun ohjelmistokehityksen vaiheet suunnitellaan huolellisesti ja toteutetaan yhteistyössä, lopputuloksena on ratkaisu, joka palvelee aidosti liiketoimintaa ja käyttäjiä. Systems Gardenilla jokainen vaihe rakentuu asiakaslähtöisesti ja riskit ennakoiden, alusta loppuun saakka. Selkeä etenemismalli, ketterä kehitys ja käytännönläheinen kumppanuus tekevät ohjelmistoprojektista hallittavan, tehokkaan ja ennen kaikkea onnistuneen.

 

 

Kiinnostuitko? Ota yhteyttä!

Ota yhteyttä ja sovi etätapaaminen. Katsotaan minkälainen ratkaisu juuri sinun yrityksellesi sopisi.

Mitä ohjelmistokehitys tarkoittaa käytännössä?

Mitä ohjelmistokehitys tarkoittaa käytännössä?

Mitä ohjelmistokehitys tarkoittaa käytännössä?

 

Ohjelmistokehitys on monivaiheinen prosessi, jossa suunnitellaan, toteutetaan, testataan ja ylläpidetään digitaalisia ratkaisuja, kuten esimerkiksi verkkopalveluita, mobiilisovelluksia tai yrityksen sisäisiä järjestelmiä. Se ei kuitenkaan ole vain koodin kirjoittamista, vaan kokonaisvaltainen palvelu, jolla ratkaistaan konkreettisia liiketoiminnan haasteita aina prosessien automatisoinnista tehokkuuden parantamiseen.

 

Ohjelmistokehitys yhdistää liiketoimintaymmärryksen, teknologian ja käyttäjälähtöisen suunnittelun tavoitteena luoda ratkaisuja, jotka aidosti tukevat organisaation toimintaa ja tuovat lisäarvoa loppukäyttäjille.

 

Dekra

 

Miksi ohjelmistokehitykseen kannattaa investoida?

 

Yritykset investoivat ohjelmistokehitykseen, koska hyvin suunnitellut ja toteutetut digitaaliset ratkaisut mahdollistavat muun muassa:

 

Prosessien automatisoinnin

 

Manuaaliset ja toistuvat tehtävät voidaan automatisoida, mikä säästää aikaa ja vähentää virheiden riskiä. Esimerkiksi asiakaspalveluprosessi voidaan virtaviivaistaa automatisoidulla lomakekäsittelyllä tai integraatioilla taustajärjestelmiin.

 

Tehokkuuden parantamisen

 

Digitaaliset työkalut voivat tehostaa työntekoa ja tiedonhallintaa. Esimerkiksi räätälöidyt raportointiratkaisut nopeuttavat päätöksentekoa ja vähentävät hallinnollista kuormaa.

 

Asiakaskokemuksen kehittämisen

 

Modernit ja käyttäjäystävälliset järjestelmät parantavat asiakaskokemusta ja luovat kilpailuetua. Esimerkiksi itsepalveluportaalit tai mobiilisovellukset lisäävät asiakkaan sitoutumista ja helpottavat asiointia.

 

Lue, millaisia liiketoimintahyötyjä asiakkaamme saivat:

 

 

Ohjelmistokehityksen vaiheet Systems Gardenilla

 

Meillä Systems Gardenilla ohjelmistokehitys etenee vaiheittain ja asiakaslähtöisesti. Jokainen projekti alkaa tarpeiden kartoittamisella ja päättyy ylläpitoon ja jatkokehitykseen.

Lyhyesti kerrottuna tyypillinen kehitysprojekti sisältää nämä vaiheet:

  1. Tarvekartoitus ja vaatimusmäärittely
  2. Suunnittelu ja arkkitehtuurivalinnat
  3. Toteutus
  4. Testaus ja käyttöönotto
  5. Ylläpito ja jatkokehitys

Olemme avanneet tarkemmin ylläolevia ohjelmistokehityksen vaiheita blogiartikkelissamme.

Systems Gardenilla ohjelmistokehitys tarkoittaa asiakaslähtöistä, joustavaa ja jatkuvaan kehittämiseen tähtäävää toimintaa. Tavoitteena on aina luoda ratkaisu, joka aidosti tukee asiakkaan liiketoimintaa ja tuo arvoa loppukäyttäjälle.

 

 

Uuden ohjelmiston kehitys alkaa ymmärryksestä

 

Uuden sovelluksen kehittäminen lähtee liikkeelle peruskysymyksistä: mitä ollaan tekemässä, kenelle ja miksi. Ennen kuin ensimmäistäkään koodiriviä kirjoitetaan, on tärkeää luoda yhteinen näkemys tavoitteista, käyttäjistä ja teknisistä reunaehdoista. Määrittely ja suunnittelu sisältää neljä vaihetta:

 

  1. Liiketoimintavaatimukset

Kartoitamme liiketoiminnan tavoitteet ja keräämme onnistumisen mittarit. Kartoitus vastaa kysymykseen ”Miksi?” Jatkamme projektia vain, mikäli vastaus kysymykseen tyydyttää kaikkia osapuolia.

 

  1. Käyttäjät ja käyttötapaukset

Ketkä ratkaisua käyttävät? Minkälaisia toiminnallisuuksia tarvitaan? Mistä raakadata tulee, ketkä ja kuinka sitä käsitellään? Millaista raportointia edellytetään? Käyttäjätarinat ja käyttötapaukset hahmotellaan työpajojen avulla yhdessä asiakkaan kanssa.

 

  1. Rautalangat ja käyttöliittymäsuunnittelu

Kun käyttötapaukset on kuvattu, niistä voidaan seuraavaksi piirtää käyttöliittymäluonnokset eli rautalankamallit, jotka auttavat hahmottamaan miltä ohjelmisto näyttää ja tuntuu käytännössä. Rautalankamallien lisäksi teemme tarvittaessa visuaalisen suunnittelun tai prototyypin.

 

  1. Teknologia ja datamallit

Valitsemme sopivat teknologiat, mallinnamme tiedot ja määrittelemme tarvittavat integraatiot varmistaen, että ohjelmisto rakentuu kestävälle ja yhteensopivalle perustalle.

 

Lopputuloksena syntyy selkeä, toteuttamiskelpoinen suunnitelma ja realistinen työmääräarvio. Tämän perusteella voidaan halutessa kilpailuttaa eri toteuttajat ja teknologiat.

 

 

Sovelluksen modernisointi — kaikkea ei tarvitse aloittaa alusta

 

Kaikki ohjelmistot vanhenevat, mutta se ei aina tarkoita, että pitäisi rakentaa kokonaan uutta. Usein vanhan ohjelmiston ympärille voidaan kehittää uutta toiminnallisuutta, uudistaa käyttöliittymä tai tuoda järjestelmä nykyaikaiselle alustalle kustannustehokkaasti. Modernisointiprosessi tiivistetysti:

 

  1. Liiketoimintavaatimukset

Käymme läpi nykytilan, datan ja tavoitteet. Teemme kannattavuusanalyysin – mitä kannattaa säilyttää, mitä uudistaa?

 

  1. Järjestelmäanalyysi

Selvitämme nykyisen järjestelmän rakenteet, rajapinnat ja datan. Laadimme integraatiosuunnitelman, joka mahdollistaa modernin arkkitehtuurin hyödyntämisen.

 

  1. Sovelluskehitys

Toteutamme modernisoinnin ketterästi tai avaimet käteen -ratkaisuna tarpeen ja resurssien mukaan.

 

  1. Ylläpito ja jatkokehitys

Projektin jälkeen emme katoa minnekään. Tarjoamme tarvittaessa jatkuvaa tukea, valvontaa ja jatkokehitystä.

 

Modernit alustat tekevät sovelluskehityksestä joustavaa ja monipuolista. Me rakennamme sovelluksia erityisesti Microsoftin ympäristöihin, kuten Azureen, Microsoft 365:een ja Teamsiin. Tarvitsetpa sitten pienen lisäosan tai kokonaisen järjestelmän, Azure taipuu moneen – se voi yhdistää eri järjestelmät toisiinsa, toimia tietojen tallennuspaikkana tai tuoda vanhalle järjestelmälle modernin käyttöliittymän.

 

 

Ohjelmistokehitysmenetelmät

 

Ohjelmistokehityksessä voidaan hyödyntää erilaisia menetelmiä projektin koon, tavoitteiden ja tiimin mukaan.

 

Ketterät menetelmät ohjelmistokehityksessä

 

Ketterät ohjelmistokehitysmenetelmät ovat yleisimpiä lähestymistapoja ohjelmistokehityksessä. Ketterissä menetelmissä työtä tehdään vaiheittain ja palautteen perusteella kehitystä ohjataan iteratiivisesti. Tämä takaa joustavan ja asiakaslähtöisen kehityksen.

 

Ketterissä ohjelmistokehitysprojekteissamme työ etenee hallitusti vaiheittain, tyypillisesti 2–4 viikon sprinteissä. Kehitystä ohjaavat selkeästi määritellyt tavoitteet, säännölliset demot ja välikatselmukset. Näin varmistamme, että suunta pysyy oikeana ja lopputulos kehittyy parhaaksi mahdolliseksi. Useimmiten palvelumme toteutetaan aika- tai työmääräperusteisesti, mutta halutessasi voimme vastata koko projektista alusta loppuun aina suunnittelusta käyttöönottoon ja jatkuvaan ylläpitoon saakka.

 

 

Ohjelmistoprojektin kustannukset

 

Ohjelmistokehityksen hinta riippuu projektin laajuudesta, teknologioista, tiimin koosta ja kehityksen kestosta. Systems Gardenilla tarjoamme sekä kiinteähintaisia että tuntiperusteisia ratkaisuja.

 

Ohjelmistoprojektin hinta voi vaihdella paljon. Tyypillisesti se sijoittuu noin 30 000 ja 150 000 euron välille. Tarkka kustannus selviää kuitenkin vasta, kun keskustellaan tarpeistasi. Älä jää arvailemaan vaan ota rohkeasti yhteyttä, niin suunnitellaan juuri sinulle sopiva ratkaisu budjettisi ja tavoitteidesi pohjalta!

 

Ohjelmistokehityksen teknologiat Systems Gardenilla

 

Valitsemme projektikohtaisesti oikeat teknologiat asiakkaan tarpeen ja ympäristön mukaan. Asiantuntijoillamme on laaja osaaminen eri teknologioista, ja valitsemme jokaiselle asiakkaalle juuri heidän tarpeisiinsa parhaiten sopivan kokonaisuuden. Vaikka toimimme vahvasti Microsoftin maailmassa erityisesti Azuren, Microsoft 365:n ja Power Platformin parissa, emme lähde liikkeelle teknologiasta, vaan asiakkaan tavoitteista. Esimerkiksi low-code-kehittäminen toimii nopeaan ja kustannustehokkaaseen toteutukseen, kun taas custom code menetelmin voidaan luoda täysin räätälöityjä ohjelmistoja ilman rajoja.

 

 

Vinkit onnistuneeseen ohjelmistoprojektiin

 

Ohjelmistoprojektin onnistuminen ei ole sattumaa. Tässä muutamia käytännön vinkkejä:

 

  1. Tunnista tarpeesi tarkasti

Vältä epämääräisyyttä. Kirkas tavoite helpottaa oikeiden ratkaisujen löytämistä.

  1. Valitse oikea kumppani

Hyvä kumppani ymmärtää liiketoimintasi ja osaa ehdottaa kestäviä ratkaisuja.

  1. Määritelkää budjetti ja aikataulu realistisesti

Avoin keskustelu resursseista auttaa pitämään projektin hallinnassa.

  1. Suunnittele jatkokehitys jo alussa

Ohjelmisto elää ja kehittyy, valmistaudu jatkuvaan parantamiseen ja ylläpitoon.

 

Paranna tehokkuutta ohjelmistokehityksen avulla

 

Ohjelmistokehitys on paljon enemmän kuin teknologiaa – se on liiketoiminnan kehittämistä digitaalisin keinoin. Oikein toteutettu ohjelmisto parantaa tehokkuutta, asiakaskokemusta ja kilpailukykyä.

 

Systems Gardenin asiantuntijat auttavat sinua kaikissa kehityksen vaiheissa ideasta käyttöönottoon ja jatkokehitykseen. Asiakkaamme ovat arvostaneet erityisesti kykyämme yhdistää teknologia liiketoiminnan tarpeisiin ymmärrettävästi ja käytännönläheisesti. Meidät tunnetaan luovasta ajattelutavasta, käyttäjäystävällisistä käyttöliittymistä ja siitä, että osaamme liittää ratkaisumme saumattomasti osaksi laajempia järjestelmäkokonaisuuksia.

 

 

Kiinnostuitko? Ota yhteyttä!

Ota yhteyttä ja sovi etätapaaminen. Katsotaan minkälainen ratkaisu juuri sinun yrityksellesi sopisi.

Low-code vai custom code ohjelmistokehityksessä?

Low-code vai custom code ohjelmistokehityksessä?

Low-code vai custom code ohjelmistokehityksessä?

Kun yrityksessä herää tarve uudelle digitaaliselle työkalulle tai liiketoimintaprosessien automatisoinnille, ensimmäinen kysymys liittyy usein siihen, miten se kannattaa toteuttaa? Nopeasti, joustavasti ja kustannustehokkaasti — vai täydellisesti yrityksen näköiseksi räätälöiden?

Modernissa ohjelmistokehityksessä valittavana on kaksi pääsuuntaa: low-code ja custom code. Mutta mitä ne tarkoittavat käytännössä ja miten sopiva vaihtoehto valitaan?

 

Low-code-ohjelmointi on visuaalinen ja kustannustehokas ratkaisu

 

Low-code-ohjelmoinnissa rakennetaan sovelluksia visuaalisilla työkaluilla ja valmiilla komponenteilla. Systems Garden hyödyntää Microsoft Power Platformia ja erityisesti sen Canvas PowerApps -ratkaisuja, joita voidaan rakentaa esimerkiksi SharePointin päälle. PowerAppsilla tehdyt sovellukset soveltuvat hyvin palvelemaan sisäisiä liiketoiminnan tarpeita, kuten projektinseurantaa, dokumenttien hallintaa tai työhyvinvoinnin tukemista.

Tyypillinen PowerApps-projekti maksaa yleensä vain joitakin tuhansia kymppitonnien sijaan. Sovelluksia voidaan myös monistaa helposti, mikä säästää aikaa ja rahaa tulevissa projekteissa. Ylimääräisiä lisenssi- tai ylläpitokustannuksia ei synny, asiakkaalle jää vain kertaluonteinen projektikustannus. Low-code ohjelmointi on myös suhteellisen nopeaa.

”Low-code-kehittäminen mahdollistaa kustannustehokkaat projektit.”

Low-code on erinomainen valinta, kun halutaan nopeasti käyttöönotettava, sisäiseen käyttöön suunnattu sovellus, joka parantaa prosessien tehokkuutta ilman suuria investointeja. Systems Gardenin kokemus esimerkiksi hankeseuranta- ja dokumentinhallintasovellusten toteutuksissa osoittaa, että hyvin suunniteltu low-code-ratkaisu maksaa itsensä usein takaisin jo muutamassa kuukaudessa.

Haasteita syntyy silloin, kun tarvitaan sovelluksia ulkopuolisille käyttäjille: esimerkiksi PowerAppsissa yhden ulkoisen kirjautumisen hinta voi olla noin yksi dollari, mikä nostaa käyttökustannuksia nopeasti. Lisäksi alustaan sidottu kehitysmalli voi rajoittaa sovelluksen räätälöitävyyttä ja integraatiomahdollisuuksia, jos liiketoimintaprosessit edellyttävät hyvin erityisiä ratkaisuja. Näissä tapauksissa custom code voi olla pitkän aikavälin kannalta kustannustehokkaampi ja joustavampi vaihtoehto.

 

Custom code ohjelmoinnilla täydellinen joustavuus ilman rajoitteita

 

Custom code -ratkaisujen vahvuus on niiden täydellinen räätälöitävyys: kaikki logiikka, käyttöliittymät ja integraatiot voidaan suunnitella ja rakentaa alusta asti juuri asiakkaan liiketoimintaprosesseja tukemaan. Lisäksi tekninen arkkitehtuuri on täysin yrityksen hallinnassa, mikä mahdollistaa esimerkiksi pitkäikäisemmän ohjelmiston rakentamisen ilman sidonnaisuuksia yksittäiseen alustaan tai ekosysteemiin.

Haasteena custom codessa on kehitysnopeus ja kustannukset. Koska sovellus rakennetaan tyhjästä, kehitys vie enemmän aikaa ja vaatii laajempaa teknistä työtä. Lisäksi projektin aikana asiakkaalta vaaditaan usein enemmän osallistumista: määrittelyt, testaus ja iterointi ovat osa prosessia, joka muistuttaa perinteistä ohjelmistokehitystä alusta loppuun.

Systems Gardenin kehittäjät auttavat arvioimaan, milloin custom code on aidosti paras ja kustannustehokkain vaihtoehto. Usein custom code astuu kuvaan silloin, kun low-code ei enää taivu asiakkaan liiketoiminnan tarpeisiin – ja silloin on tärkeää, että kumppani tuntee molemmat maailmat.

 

Low code vs. custom code — milloin valita low-code-kehittäminen, milloin custom code?

 

Low-code-ohjelmointi toimii erinomaisesti sisäisiin prosesseihin, kuten varastonhallintaan, kun halutaan vähentää manuaalista työtä tai mahdollistaa mobiilikäyttö. Custom code taas kannattaa valita, jos sovelluksen on palveltava ulkopuolisia käyttäjiä – esimerkiksi asiakkaiden kirjautumiset PowerAppsin kautta maksavat lisenssinä n. dollarin per kirjautuminen. Tällöin oma, räätälöity ohjelmisto voi tulla pidemmän päälle edullisemmaksi.

 

Aloita projekti low codella, siirry tarvittaessa custom codeen

 

Vaikka low-code ei ole aina lopullinen ratkaisu, se on usein erinomainen lähtökohta ohjelmistokehitykselle. Syy on yksinkertainen: low-code-ohjelmointi mahdollistaa nopean kokeilun, testaamisen ja oppimisen ilman suuria investointeja. Kun tarpeet ovat vielä osittain hahmottumattomia tai prosessia halutaan ensin pilotoida pienessä mittakaavassa, low-code-kehittäminen tarjoaa kevyen ja kustannustehokkaan tavan lähteä liikkeelle. Siksi usein kannattaakin käyttää hieman aikaa low code -ohjelmointimahdollisuuksien kokeiluun, ja siirtyä vasta tarpeiden niin pakottaessa hyödyntämään custom code-kehitystä.

 

Systems Garden on molempien reittien asiantuntija

 

Systems Garden toteuttaa sekä low-code- että custom code-ratkaisuja asiakkaan tarpeen mukaan. PowerAppsin käyttö sopii erityisesti pienempiin ja nopeasti toteutettaviin projekteihin, kun taas räätälöity ohjelmistokehitys tulee mukaan kuvioihin, kun valmiit ratkaisut eivät riitä.

Jokainen projekti alkaa asiakkaan tarpeiden kartoittamisesta. Käymme läpi mahdolliset vaihtoehdot, arvioimme toteutustavan ja ohjaamme oikealle kehityspolulle. Tavoitteena on aina kustannustehokas, helppokäyttöinen ja liiketoimintaa tukeva ratkaisu, teknisestä toteutustavasta riippumatta.

 

Kiinnostuitko? Ota yhteyttä!

Ota yhteyttä ja sovi etätapaaminen. Katsotaan minkälainen ratkaisu juuri sinun yrityksellesi sopisi.

Millainen on hyvä liiketoiminnan vaatimusmäärittely?

Millainen on hyvä liiketoiminnan vaatimusmäärittely?

Millainen on hyvä liiketoiminnan vaatimusmäärittely?

 

Ensinnäkin se on termihirviö. Toisekseen sillä on ensiarvoinen rooli siinä, että sovelluskehitys käynnistyy sujuvasti, toteutuu sovitussa ajassa ja budjetissa sekä vastaa vieläpä tarkoitustaan. Toisin sanottuna liiketoiminnan vaatimusmäärittelyn merkitys jatkuu projektin alkumetreiltä pitkälle sovelluksen elinkaarta.

 

Hyvä liiketoiminnan vaatimusmäärittely sovellusprojektin alussa takaa sujuvuuden.

Systems Gardenin sovelluskehittäjät Sanna ja Jouni kertovat, että liiketoiminnan vaatimusten määrittely tarkoittaa sitä,

  • minkälaisia asioita asiakkaan liiketoiminnassa tulee ottaa huomioon sovellusta kehitettäessä ja
  • mitä sovelluksen tulee tehdä palvellakseen liiketoimintaa.

Vaatimusten määrittely käynnistyy peruskysymyksillä

Sovellus- tai ohjelmistoprojekti alkaa siis siitä, että vaatimusmäärittelyssä laaditaan lyhyet kuvaukset sekä asiakkaan liiketoimintaympäristöstä että sovelluksen tarkoituksesta ja kirjataan projektin tavoitteet. Alussa selvitetään, mitä asiakas haluaa heille rakennettavan ja miksi, Jouni muotoilee.

”Jos alussa ei ole selvää, mitä projektin aikana tehdään, on vaikea varmistua siitä, että lopputulos on sitä mitä piti” – Systems Gardenin sovelluskehittäjä Sanna

 

Vaatimusmäärittely varmistaa, että sovelluskehityksessä puhutaan samaa kieltä

 

Systems Gardenin asiantuntijat kertovat, että asiakkaille itselleen sovellukselta toivottavat ominaisuudet voivat olla niin itsestään selviä, että kaikkea ei välttämättä huomata kertoa. Toisaalta asiakkaat eivät aina itsekään tarkkaan tiedä, mitä sovellukselta tarvitsevat.

Koska molemmissa tapauksissa vaatimukset tulisi kuitenkin onnistua kommunikoimaan sovelluksen toteuttajille, oikea terminologia nousee suureen rooliin.

– Joskus ei ymmärretä sitä, mistä sovellus koostuu. Toisaalta saatetaan luulla puhuttavan samasta asiasta, vaikka näin ei todellisuudessa olekaan. Molemmissa tilanteissa syntyy projektin aikana helposti väärinkäsityksiä, ja siksi yhteisen kielen löytäminen on todella tärkeää, Sanna teroittaa.

Vaatimusten määrittelyn edetessä tarkennetaan sitä, miksi sovellus on tarpeellinen organisaatiolle ja minkälaisiin haasteisiin sen tulisi vastata. Lisäksi käydään läpi sitä, mihin osaan asiakkaan prosessia ja mihin muihin asiakkaan käytössä oleviin ohjelmistoihin sovelluksen tulisi liittyä.

– Esimerkkinä toimii vaikkapa sellainen liiketoiminta, jossa tallentuu paljon puheluita, sähköposteja, lomakkeita tai kohdekäyntejä tietokantaan, jossa niitä täytyisi päästä tilastoimaan, raportoimaan tai ihan vain tarkastelemaan, Jouni listaa.

 

Sovelluskehityksen hyvä liiketoiminnan vaatimusmäärittely huomioi toimiala- ja asiakaskohtaiset tarpeet.

Liiketoiminnan vaatimusmäärittelyllä vastataan käyttäjän tarpeisiin

 

Jouni kertoo, että sovellus- ja ohjelmistokehityksessä puhutaan toiminnallisista ja ei-toiminnallisista vaatimuksista.

Toiminnalliset vaatimukset ovat kuvauksia siitä, miten sovellus toimii ja mitä se tekee. Toiminnalliset vaatimukset määritellään usein erikseen, mutta yksi vaatimusmäärittelyn esimerkki on vaikkapa eri käyttäjäryhmien määrittely, eli minkälaisilla rooleilla sovellusta käytetään.

Raportointisovelluksessa kyseessä on asiakkaan asiakas. Oman organisaation sisällä se voi vaihdella esimerkiksi pelkästä lukuoikeudesta jonkin rajatun tiedon muokkaamiseen, toimitusjohtajan pääsyyn tai ylläpito-oikeuksiin.

Ei-toiminnalliset vaatimukset puolestaan tarkoittavat Jounin mukaan sellaisia rajoituksia ja laatuominaisuuksia, joilla varmistetaan, että järjestelmä vastaa käyttäjän tarpeita. Siksi ne liitetään usein vahvemmin juuri liiketoimintavaatimusten määrittelyyn.

 

Esimerkkejä vaatimusmäärittelyssä käsiteltävistä ei-toiminnallisista vaatimuksista:

  • Potentiaalinen käyttäjien määrä. Kuinka sovellus skaalautuu, mikäli määrä kasvaa vaikkapa 10 000 käyttäjästä 100 000 käyttäjään?
  • Käsiteltävän datamassan suuruus ja kyky suoriutua siitä.
  • Kriittisyys liiketoiminnan kannalta. Tuleeko sovelluksen toimia yhtä nopeasti kaikille? Pysäyttääkö sen kaatuminen liiketoiminnan?
  • Lokalisointi. Tukeeko sovellus esimerkiksi eri kieliä eri maissa?
  • Infrastruktuuri. Tuleeko sovelluksen toimia yhteen jonkin muun järjestelmän kanssa?
  • Tietoturva, datan yksityisyys, varmuuskopiointi

 

Muista myös nämä asiat ohjelmiston vaatimusmäärittelyssä

Liiketoimintavaatimusten huolellinen määrittely ehkäisee väärinkäsityksiä.

Sanna ja Jouni huomauttavat, että ohjelmiston vaatimusmäärittelyssä kannattaa toteuttaa SWOT- tai riskianalyysi, jotta se mikä projektissa voi mennä pieleen on mahdollisimman hyvin huomioitu etukäteen.
Samalla on hyvä määritellä se, minkälaisessa aikataulussa projekti tulisi pystyä viemään läpi ja minkä suuruisessa budjetissa.

Ohjelmistosuunnittelu on enemmän taidetta kuin tiedettä. Vaikka kyseessä olisi kuinka pieni sovellus tahansa, jos ei ole määritelty sitä, milloin se on valmis, kehitystä voidaan jatkaa loputtomiin, Jouni toteaa.

Sanna mainitsee, että liiketoiminnan vaatimusmäärittelyn yhteydessä voi toisinaan ilmetä muutakin huomionarvoista.

– Jos ohjelmiston vaatimusmäärittelyssä tunnistetaan esimerkiksi jokin tietty kehitystarve, joka ei kuitenkaan tule kuulumaan kyseiseen sovellusprojektiin, se on hyvä kirjata ylös. Näin sen pariin muistaa paremmin palata ja liikkeelle lähtö on sujuvampaa.

 

Kiinnostuitko? Ota yhteyttä!

Ota yhteyttä ja sovi etätapaaminen. Katsotaan minkälainen ratkaisu juuri sinun yrityksellesi sopisi.

Sudenkuopat ohjelmistoprojekteissa – ja kuinka ne vältetään!

Sudenkuopat ohjelmistoprojekteissa – ja kuinka ne vältetään!

Sudenkuopat ohjelmistoprojekteissa – ja kuinka ne vältetään!

 

Ohjelmistofirmojen markkinointipuheissa korostuu usein se, miten sujuvasti projektit vedetään maaliin milloin mitäkin mallia käyttäen ja toinen toistaan kauniimpien teknologioiden avulla. Softan tekeminen on kuitenkin käyttäjäläheistä ja niin koodarit kuin asiakkaatkin vain ihmisiä. Kaikki alalla toimivat tietävät, että räätälisoftan tekeminen ei koskaan ole ihan helppo nakki.

Erehtyminen on inhimillistä ja niinpä myös me Systems Gardenilla olemme toisinaan menneet mokien kautta maaliin. Tärkeintä on kuitenkin ottaa opikseen ja kääntää virheet voimavaraksi. Vankan kokemuksemme turvin (ja ehkä myös mokista oppineena) tunnistamme ohjelmistojen arvon liiketoiminnalle ja ymmärrämme niiden käyttäjiä.

 

10 yleisintä sudenkuoppaa softaprojekteissa

 

Tähän artikkeliin olemme listanneet ohjelmistotarpeen määrittelyn 10 yleistä sudenkuoppaa sekä kokemuspohjaiset vinkkimme niiden välttämiseksi. Virheitä voi toki tehdä myös teknologiatasolla, mutta kokemuksemme mukaan kaikkein vaikeimmat haasteet syntyvät jo suunnittelussa, määrittelyssä ja liiketoimintatarpeiden ymmärryksessä.

 

Kaksi henkilöä suunnittelee ohjelmistoa hyödyntäen matkapuhelinta ja paperista leikattuja malleja.

1. Sisäinen työkalu vai asiakasohjelmisto?

Etenkin Suomen kokoisilla markkinoilla on turhaa yksinkertaistamista, että softa kannattaisi tehdä aina tietyllä tavalla. Karkeasti jaotellen on olemassa sovelluksia, jotka näkyvät asiakkaan suuntaan ja tavoittelevat kilpailuetua tai asiakaspalvelun parantamista, ja toisaalta softia voidaan käyttää sisäisiin prosesseihin ja toiminnan tehostamiseen oman väen kesken.

Organisaatioilla voi siis olla paljon tarvetta erilaisen tiedon keräämiselle, järjestämiselle ja jakamiselle. Jos kaikkea lähdetään toteuttamaan samalla sabluunalla, saatetaan toisinaan ampua norsupyssyllä kärpästä.

Eräässä tapauksessa rakennusalan palveluyritykselle oltiin toteuttamassa asiakasportaalia, jolla luotaisiin uusi palvelukanava sähköiseen asioinnin kautta. Kun siirryttiin toteutukseen, kävikin ilmi, etteivät asiakkaan tuotantoprosessit tai toimintamallit tukeneet tällaista ajatusta lainkaan. Laskentamalliin ja asiakaspalveluun ei ollut saatavilla riittävää dataa, koska toiminta ja suunnittelumallit perustuivatkin ihmisten osaamiseen. Koska syötettä ei ollut, ratkaisu oli jäämässä pelkäksi markkinointikanavaksi.

Lopputuloksena toteutettiinkin sisäiseen käyttöön toiminnanohjausjärjestelmä, johon kului lopulta koko budjetti, mutta jolla sentään saatiin tuettua sisäisiä prosesseja. Asiakaspalvelukanava jäi odottamaan aikaa parempaa.

Ohjelmistotarpeen määrittelemiseksi tulee ensin ymmärtää liiketoiminnan tarpeet ja se, mitä, kenelle ja miksi ollaan rakentamassa.

Metsänhoitoyhdistykset saivat tarpeitaan vastaavat intraratkaisut.

2. Ohjelmiston alkuperäinen käyttötarkoitus unohtuu

 

Asiakas on oman tekemisensä asiantuntija ja tärkeimmässä roolissa siinä määrittelyssä, jonka turvin saadaan aikaiseksi hänen tarvitsemansa ratkaisut. Edellisen kohdan esimerkkiprojektissa oli kuitenkin ongelmana myös päätavoitteen hämärtyminen. Projektiryhmän toiminta ohjautui siihen, mikä milloinkin muodosti ongelman, eikä näin ollen aina välttämättä tehty sitä, mikä olisi ollut oikeasti tärkeää.

Ohjelmistotarpeen määrittelyssä tulisi aina joko kirjata tavoitteet tai vaihtoehtoisesti hyväksyä se, että projektia lähdetään toteuttamaan pala kerrallaan ketterästi ohjautuen. Joskus pitää vain tehdä tietoisesti se päätös, että jostain luovutaan hetkellisesti, jotta jotain tärkeämpää saadaan toteutettua.

On helppo sortua määrittelemään liikaa etukäteen sitä, minkälainen sovelluksen käyttöliittymän halutaan olevan, kun järkevämpää olisi keskittyä siihen, millainen sen pitäisi liiketoimintaa palvellakseen olla.

Kannustamme myös ehdottomasti ohjausryhmän käyttöön. Ohjelmistoprojekteissa tulee väistämättä eteen hankalia priorisointipäätöksiä, jolloin projektiryhmän ohella on hyvä olla toinenkin foorumi. Sen vain pitää olla avoin ja valmis puhumaan vaikeista asioista.

Ohjausryhmään viedään usein lähinnä budjettiin tai aikatauluun liittyviä asioita, mutta sinne pitäisi viedä myös esimerkiksi sellaisia haasteita, että teknologia ei taivu haluttuun ratkaisuun tai liiketoiminnan muoto ei tue sovellukselta kaivattua toimintaa.

On kuitenkin tärkeää muistaa, että ohjelmisto tulisi laatia tukemaan prosessia sen sijaan, että prosessia muutettaisiin ohjelmiston ehdoilla.

Nelihenkinen henkilöstöryhmä työskentelee turhautuneena ohjelmistoprojektin parissa.

3. Ohjelmiston käyttäjiä ei tunneta tai ainakaan ymmärretä

 

Silloin tällöin olemme saattaneet ryhtyä luomaan hienoa softaa intuitiivisella käyttöliittymällä, kunnes on käynyt ilmi, että sovellusta tulee käyttämään yksi ihminen. Tarve on voinut koskea esimerkiksi sihteerin työhön kuuluvaa datan keräämistä tai sen esittämistä tietyssä muodossa.

Olemmekin joskus todenneet jotkin softat, joista tulisi hyötymään 1-2 ihmistä niin kalliiksi, että niitä ei yksinkertaisesti kannata tehdä. Me olemme tyytyväisiä, vaikka määrittely jäisi tähän, sillä ei ole mitään ikävämpää kuin toteuttaa hienoa ja kallista softaa, joka ei hyödytä asiakasta samassa suhteessa.

Nykyisin on vaikeaa keksiä asiaa, johon ei löytyisi erikoissoftaa. Siksi myös valmisohjelmistot kannattaa lähes aina kartoittaa. Vastaamme on tullut paljon tapauksia, joissa kaivatut työkalut saa jo ostettua muutamalla dollarilla.

Yhdelle työntekijälle onkin yleensä halvempaa hankkia olemassa olevan ohjelmiston lisenssi kuin teettää kokonaan uusi ratkaisu. Sopivan sovelluksen löytyminen voi myös herättää siihen, tarvitaanko ratkaisulta ihan oikeasti kaikkia haaveiltuja nyansseja.

Osana ohjelmistotarpeen määrittelyä me Systems Gardenilla laadimme ns. käyttäjätarinat, jotka auttavat ymmärtämään käyttäjien rooleja. Käyttäjäpersoonien määrittelyn ohella kannattaa kuitenkin huomioida myös sellaiset tahot, jotka eivät välttämättä käytä sovellusta ollenkaan, mutta hyötyvät sen keräämästä datasta.

4. Ohjelmiston toimintaa ei piirretä auki

Henkilö suunnittelee ohjelmistoa työpöydän ääressä käyttäen kuvia ja paperista leikattuja malleja.

Kaikki softat ovat viime kädessä tietoa kerääviä lomakkeita ja niitä esittäviä listauksia ja näkymiä. Tiedon keruu ja esitys voidaan kuitenkin toteuttaa hyvin monessa eri muodossa ja monella erilaisella mekanismilla. Asiakkaalla on usein niin selkeä visio siitä, mitä tavoitellaan, että kaikkea ei tule mieleen ilmaista.

Jos suunnittelu on toisaalta vain sanallista, jää väärinymmärryksille edelleen paljon tilaa ja seurauksena voi olla vaikeita tilanteita. Olettamus on kaikkien emämunausten äiti.

Eräässä esimerkkitapauksessa asiakasyrityksen tavoitteena oli, että heidän asentajansa löytävät oikeat keikat. Vasta piirtämällä ajatus kuvaksi oivallettiin, että asentajat ilmestyisivät kohteisiinsa milloin sattuu, ja järjestelmä saattaisi laittaa keikat uusiksi kesken päivää, kun asentaja on jo puolimatkassa jonnekin muualle.

Usein onkin helpompi todeta, mitä sovellukselta ei haluta. Kun se piirretään kuvaksi, on helpompi havaita se, mikä ei toimi tai mikä vielä puuttuu.

On myös tärkeää huomioida se, toimiiko prosessi kaikissa tapauksissa sovellukselta vaadittavalla tavalla. Vaikka poikkeustapauksia olisi vain 2 %, softan toiminta tulee tökkäämään niihin. Ketterä ohjelmistokehitys mielletään usein siten, että mitään ei tarvitse määritellä kovin tarkasti, vaikka todellisuudessa softan taustalla voi olla kokonainen tiimi tekemässä koodiin muutoksia, jotka voivat olla hyvinkin työläitä. Rautalankamallin muuttaminen on aina halvempaa kuin toimivan softan uudelleenkoodaus.

Kuvallinen havainnollistaminen on kuitenkin tärkeää pitää rautalankamallin tasolla menemättä ulkoasullisiin seikkoihin. Heti, kun mukaan tulee värejä tai grafiikkaa, keskittyminen ohjautuu vääriin asioihin ja niitä paalutetaan turhan varhaisessa vaiheessa. Rautalanka on koodiin verrattuna halpaa, mutta silläkin kyetään demonstroimaan paljon.

 

5. Käyttäjien tarpeita tai motivaatioita ei huomioida

Muutosvastarintaa softan käyttöönottoa kohtaan esiintyy sitä herkemmin, mitä myöhäisemmässä vaiheessa tulevat käyttäjät huomioidaan – puhumattakaan siitä, että heitä ei huomioida ollenkaan. Klassisessa esimerkissä (ja aivan liian usein) toimistotyöntekijä tai johtaja suunnittelee jotain kentällä toimivalle asentajalle, jota lopputulos ei ensinkään palvele.

Toisinaan ennakkoluulot liittyvät pelkoon siitä, että softa vähentää työvoimatarvetta, vaikka uuden ohjelmiston tarkoitus on yleensä vain turhan työn vähentäminen ja työntekijöiden vapauttaminen siihen, missä he ovat hyviä ja tuottavat eniten arvoa.

Ohjelmisto ei tee yksin mitään, vaan esimerkiksi putkimies rakentaa LVIS-järjestelmiä ja saa ohjelmiston avulla tiedon siitä, missä on seuraava keikka. Avoin kommunikointi sovelluksen tarkoituksesta onkin avainroolissa.

Ohjelmisto on usein välttämätöntä pilotoida ensin pienellä ryhmällä, mutta toisaalta sen todellinen hyöty paljastuu tyypillisesti vasta, kun yli 80 % kirjauksista saadaan järjestelmään.

Kun töitä sitten tehdään vanhan järjestelmän kanssa päällekkäin, käyttäjässä herää helposti tunne uuden kyseenalaisesta tarpeesta. Niinpä hyväkin sovellus on joskus kaatunut siihen, että sitä ei vain ole saatu käyttöön.

Olennaista on tunnistaa kriittinen massa, jonka avulla sovellus myy itse itsensä. Kun hyödyllinen ratkaisu nähdään toisten käytössä, se usein halutaan helpottamaan myös omaa työtä.

Tarkoituksenmukaisin sovellus ja sujuvin käyttöönotto saavutetaan joka tapauksessa silloin, kun käyttäjiä osallistetaan ja sitoutetaan prosessiin mahdollisimman varhaisessa vaiheessa. Ohjelmiston arvo ei muodostu sen valmistuessa, vaan vasta silloin kun se on otettu riittävän laajasti käyttöön.

 

6. Samoja tietoja kirjataan useita kertoja

 

Mikäli ohjelmiston liittymätarpeita ei huomioida ajoissa, saattaa niitä ilmetä runsaastikin vasta käyttöönottovaiheessa. Moni ohjelmistoprojekti pysähtyykin aikataulullisesti tällaiseen pullonkaulaan juuri loppuvaiheessaan.

On olemassa tapauksia, joissa liittymävaihe on kestänyt peräti kolme kertaa kauemmin, ja vastaavasti maksanut kolme kertaa enemmän kuin itse softan luominen. On hyvä muistaa, että jos dataan sisältyy esimerkiksi asiakkaiden nimien kaltaista tietoa, jonkun tulee myös ylläpitää sitä.

Aina tulisikin mieluummin pyrkiä siihen, että tieto kirjataan vain kerran, minkä jälkeen se soljuu järjestelmien välillä. Sitä varten määrittelyssä tulisi yhtä aikaa kyetä hahmottamaan kokonaisuus, mutta mennä myös siinä määrin yksityiskohtiin, että ohjelmiston paikka prosessissa sekä sen vaatimat liittymät tunnetaan.

Toisin sanottuna: mikä on se paikka, jossa tietoa ylläpidetään, ja missä muualla sen pitäisi olla käytettävissä. Tätä voidaan havainnollistaa prosessikaaviolla ja automatisoida integraatioilla.

 

7. Testailun ja testaamisen eroa ei ymmärretä

 

Testailu on sitä, että sovellusta vain klikkaillaan sieltä täältä ja sen toimintoja hieman kokeillaan. Kun sovellus otetaan sen jälkeen suoraan käyttöön, voidaankin joutua toteamaan, että se ei toimi ollenkaan todellisen prosessin mukaisesti.

Sen sijaan testaaminen on suunnitelmallista toimintaa, jolla varmistetaan, että sovellus tekee sen, mitä siltä vaaditaan. Tärkeää on myös sen huomioiminen, mitä sovellus ei saa tehdä, ja testata, mitä mahdollisissa virhetilanteissa tapahtuu. Testausvaiheessa olisi hyvä olla mukana niin toteuttajan kuin asiakkaan taholta sellaisia henkilöitä, jotka eivät ole osallistuneet ohjelmiston kehitykseen.

Klassinen moka testausvaiheessa on, että järjestelmään ei syötetä todellisia tietoja. On eri asia verifioida, meneekö ”Testikeikka” läpi ”Testiasentajalle”, kuin oikeasti simuloida koko työnkulku toimistosta kentälle ja takaisin oikeiden ihmisten kautta.

Nelihenkinen henkilöstöryhmä työskentelee turhautuneena ohjelmistoprojektin parissa.

8. Ohjelmistosta laaditaan turha käyttöohje ja oletetaan sen riittävän

 

Ohjelmistojen hankintaan liittyy usein eräänlainen opittu tarve seikkaperäiselle käyttöohjeelle. Käyttöohjettakin täytyy kuitenkin ylläpitää, ja se täytyy päivittää aina kun asioihin tehdään muutoksia. Mitä laajempi käyttöohje on, sitä enemmän ylläpidettävää. Mikään ei myöskään harmita niin paljon kuin se, kun etsii käyttöohjeesta apua, mutta tieto onkin virheellistä tai vanhentunutta.

Ohjelmistomäärittelyssä on järkevää pohtia käytäntöjen ja vaatimusten perimmäistä tarkoitusta ja suoraan sanoen sitä, lukeeko käyttöohjetta viime kädessä kukaan? Mikäli kyseessä on sisäinen softa, jota käyttää rajallinen määrä ihmisiä, pärjättäisiinkö suppeammalla käyttöohjeella tai saataisiinko se vaikka intranetiin? Voisiko kenttien yhteyteen lisätä lyhyen infotekstin sen sijaan että tuotetaan 20 sivua ruutukaappauksia Word-dokumenttiin?

Kannattaa kuitenkin huomioida, että B2B-sovellusta ei usein edes voi toteuttaa niin yksinkertaseksi, etteikö sen käyttäminen vaatisi koulutusta. Kuluttajasoftan puolestaan tulisi yleensä olla kenen tahansa käytettävissä enintään lyhyellä opastuksella. Molempia yhdistää se, että mitä paremmin jo alussa määritellään käyttöliittymän kanssa pärjäämiseksi vaadittavat tiedot, sitä vähemmän kaikilla on töitä loppupäässä. Panostukset käytettävyyteen näkyvätkin yleensä suorina säästöinä koulutusbudjetissa. Tärkeämpää on, että käyttäjätuki on kunnossa ja palautetta kerätään ja siitä opitaan.

 

9. Ohjelmisto suunnitellaan valmistuvaksi kerralla.

 

Ohjelmistojen elinkaareksi mainitaan usein keskimäärin seitsemän vuotta, mutta sinäkin aikana voi syntyä runsaasti uusiin asetuksiin ja tietoturvaseikkoihin liittyviä muutostarpeita. Jos lähdetään teettämään omaa customsoftaa, on syytä varautua siihen, että muutostarpeita tulee matkan varrella paljon.

On ikävää joutua toteamaan, että softa ei ole tietoturvallinen koska joku alustakomponentti on vanhentunut, tai huomata, että värkki ei enää toimikaan kuin yli kolme vuotta vanhoilla kännyköillä.

Järkevintä on pyrkiä hahmottamaan kokonaisuus, luoda siitä road map, toteuttaa sitä pala kerrallaan ja valmistautua tekemään muutoksia myös pilotoinnin jälkeen.

Sen sijaan, että ajatellaan mitä kaikkea voitaisiin tehdä, on fiksumpaa keskittyä siihen, mitä täytyy tehdä. Silloin ei myöskään hämmennetä käyttäjiä turhilla toiminnallisuuksilla. Kun aluksi luodaan vain ehdottomat toiminnallisuudet, saatetaankin huomata, että enempää ei edes tarvita.

 

10. Ohjelmistoa ei suunnitella skaalautuvaksi

 

Toisinaan käy niin, että ohjelmistoa on käytetty vasta ensimmäiset kolme kuukautta, kun dataa on karttunut jo niin paljon, että sitä ei kyetä hallitsemaan. Vastaavasti softa on voinut toimia hyvin vuodenvaihteen katkoon saakka, mutta ongelmia ilmenee, kun pitäisi tuottaa väliraportti.

Vanhojen sovellusten modernisoinnissa saadaan usein etumatkaa, sillä niiden parissa käytettävissä on heti suuri määrä dataa sen testaamiseen, mitkä elementit eivät mahdollisesti toimikaan. Mikäli kyseessä on uusi sovellus, tulee yrittää mahdollisimman hyvin arvioida, missä määrin ja millä tahdilla datan määrä kasvaa. Toimivuutta voidaan testata myös rakentamalla tekstieditorien käyttämän lorem ipsumin tavoin ns. mokkidataa.

Ongelmia voidaan lisäksi ehkäistä sillä, että valitaan toimintatapoja, joissa ei synny toimittajalukkoja tai tarvita suojattuja komponentteja.

 

Nelihenkinen henkilöstöryhmä työskentelee turhautuneena ohjelmistoprojektin parissa.

Koska yllätyksiä voi ilmaantua ja asioihin joutua palaamaan, suosittelemme lämpimästi hyödyntämään tarjontaamme kuuluvaa tukisopimuspalvelua.

Lue lisää

Kiinnostuitko? Ota yhteyttä!

Ota yhteyttä ja sovi etätapaaminen. Katsotaan minkälainen ratkaisu juuri sinun yrityksellesi sopisi.

5 + 9 =

Ota yhteyttä