Ohjelmistokehittäjät, ketterät menetelmät ja käytettävyys
Kinnunen, Merja (2024-04-11)
Kinnunen, Merja
M. Kinnunen
11.04.2024
© 2024 Merja Kinnunen. Ellei toisin mainita, uudelleenkäyttö on sallittu Creative Commons Attribution 4.0 International (CC-BY 4.0) -lisenssillä (https://creativecommons.org/licenses/by/4.0/). Uudelleenkäyttö on sallittua edellyttäen, että lähde mainitaan asianmukaisesti ja mahdolliset muutokset merkitään. Sellaisten osien käyttö tai jäljentäminen, jotka eivät ole tekijän tai tekijöiden omaisuutta, saattaa edellyttää lupaa suoraan asianomaisilta oikeudenhaltijoilta.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:oulu-202404112667
https://urn.fi/URN:NBN:fi:oulu-202404112667
Tiivistelmä
Tämän pro gradu -tutkielman tarkoituksena on ollut käsitellä käytettävyyden asemaa ketterän ohjelmistokehityksen yhteydessä. Tutkimusta varten toteutettiin kirjallisuuskatsaus sekä haastattelututkimus, johon osallistui otos Oulun seudulla eri ohjelmistoyrityksissä toimivia henkilöitä. Haastattelun teemat pohjautuivat aiemmin toteutettuun kirjallisuuskatsaukseen, jossa kartoitettiin, millaisia keinoja kirjallisuudessa on aiemmin esitetty käytettävyysnäkökulman huomioimiselle ketterän ohjelmistokehityksen yhteydessä. Haastatteluilla hahmoteltiin ohjelmistokehittäjien näkemyksiä ketterän ohjelmistoprosessin käytäntöihin ja käytettävyyteen liittyen.
Haastateltujen yrityksissä ohjelmistokehitysprosessi mukailee kirjallisuudessa esitettyä kuvausta ketterästä ohjelmistoprosessista: sekä ohjelmistoversiota että kehitysprosessia tarkastellaan ja mukautetaan säännöllisesti; ohjelmistoa toteutetaan inkrementaalisesti suunnitellen lyhyissä iteraatioissa, kommunikaatio ja läheinen yhteistyö kehitystiimin kesken sekä yhteiset työkalut eri ryhmien kanssa näyttäytyivät tärkeänä. Useat käytössä olevista ketteristä käytännöistä pohjautuivat scrumiin.
Haastateltavat korostivat tiiviin asiakasyhteistyön sijaan tehtävien organisoimista niin, että kehitystä ja yhteistyötä voitiin tehdä järkevästi sekä asiakkaan että käyttäjän palautteita kuunnellen. Lisäksi oli tärkeää hahmottaa alkuvaiheessa kokonaisuutta – minkälaiset näkökohdat juuri kyseisessä kehitystyössä ovat tärkeimpiä – ja suunnitella toteutusta niiden perusteella. Muita tärkeitä mainittuja asioita olivat ketteryys, tarkoittaen mahdollisuutta toimia erityisen joustavasti, muutoksia odottaen ja niihin varautuen, sekä kattava ja säännöllinen testaus.
Käytettävyyden asema ohjelmistokehityksessä vaihtelee haastattelujen perusteella hyvin paljon: aina yrityksissä ei ole nähty tarpeelliseksi huomioida käytettävyysnäkökulmaa erikseen. Toisinaan käytettävyys voi olla jopa merkittävä, toimintaa ohjaava näkökulma, jolloin prosessissa etenkin tiedonkeruu-, analyysi- ja suunnittelutehtäviä tehdään iteroiden ja käyttäjän päämäärät ja niiden saavuttaminen huomioiden, ja käytettävyystoimien riittävyyttä voidaan arvioida myös erillisten testien kautta.
Ohjelmistokehitysryhmässä olisi hyvä olla henkilöitä, joilla on käytettävyyteen liittyvää osaamista riittävästi päämäärät huomioiden. Jo aikaisia suunnitelmia, prototyyppejä tai ohjelmistoversioita voitaisiin iteroida käyttäjien osallistuessa ja käyttäjiin liittyviä määritelmiä tarkentaa iteratiivisesti. Käytettävyysnäkökulman ollessa erityisen tärkeä, tulisi ketterälle kehitykselle tärkeä pyrkimys – oppia muutoksista ja parantaa ratkaisuja niiden perusteella – valjastaa käytettävyysnäkökulman työkaluksi.
Haastateltujen yrityksissä ohjelmistokehitysprosessi mukailee kirjallisuudessa esitettyä kuvausta ketterästä ohjelmistoprosessista: sekä ohjelmistoversiota että kehitysprosessia tarkastellaan ja mukautetaan säännöllisesti; ohjelmistoa toteutetaan inkrementaalisesti suunnitellen lyhyissä iteraatioissa, kommunikaatio ja läheinen yhteistyö kehitystiimin kesken sekä yhteiset työkalut eri ryhmien kanssa näyttäytyivät tärkeänä. Useat käytössä olevista ketteristä käytännöistä pohjautuivat scrumiin.
Haastateltavat korostivat tiiviin asiakasyhteistyön sijaan tehtävien organisoimista niin, että kehitystä ja yhteistyötä voitiin tehdä järkevästi sekä asiakkaan että käyttäjän palautteita kuunnellen. Lisäksi oli tärkeää hahmottaa alkuvaiheessa kokonaisuutta – minkälaiset näkökohdat juuri kyseisessä kehitystyössä ovat tärkeimpiä – ja suunnitella toteutusta niiden perusteella. Muita tärkeitä mainittuja asioita olivat ketteryys, tarkoittaen mahdollisuutta toimia erityisen joustavasti, muutoksia odottaen ja niihin varautuen, sekä kattava ja säännöllinen testaus.
Käytettävyyden asema ohjelmistokehityksessä vaihtelee haastattelujen perusteella hyvin paljon: aina yrityksissä ei ole nähty tarpeelliseksi huomioida käytettävyysnäkökulmaa erikseen. Toisinaan käytettävyys voi olla jopa merkittävä, toimintaa ohjaava näkökulma, jolloin prosessissa etenkin tiedonkeruu-, analyysi- ja suunnittelutehtäviä tehdään iteroiden ja käyttäjän päämäärät ja niiden saavuttaminen huomioiden, ja käytettävyystoimien riittävyyttä voidaan arvioida myös erillisten testien kautta.
Ohjelmistokehitysryhmässä olisi hyvä olla henkilöitä, joilla on käytettävyyteen liittyvää osaamista riittävästi päämäärät huomioiden. Jo aikaisia suunnitelmia, prototyyppejä tai ohjelmistoversioita voitaisiin iteroida käyttäjien osallistuessa ja käyttäjiin liittyviä määritelmiä tarkentaa iteratiivisesti. Käytettävyysnäkökulman ollessa erityisen tärkeä, tulisi ketterälle kehitykselle tärkeä pyrkimys – oppia muutoksista ja parantaa ratkaisuja niiden perusteella – valjastaa käytettävyysnäkökulman työkaluksi.
Kokoelmat
- Avoin saatavuus [37606]