Agile-menetelmien soveltaminen sulautettujen järjestelmien laitteistokehitykseen
Teronen, Antti (2016)
Teronen, Antti
Hämeen ammattikorkeakoulu
2016
Creative Commons Attribution-NonCommercial-ShareAlike 1.0 Suomi
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2016102315340
https://urn.fi/URN:NBN:fi:amk-2016102315340
Tiivistelmä
Opinnäytetyön tarkoituksena oli tutustua ohjelmistokehityksessä käytettyihin työskentelymenetelmiin ja tutkia niiden sovellettavuutta sulautettujen järjestelmien laitteistokehitykseen.
Motivaationa työn aiheen valinnalle oli tekijän oman työuran aikana muotoutuneiden työskentelytapojen haastaminen ja tutustuminen menetelmiin, joilla elektroniikkasuunnittelua voisi tehdä helpommaksi ja nopeammaksi
Työn taustaksi tutustuttiin kolmeen ohjelmistokehityksen menetelmään, joissa sovelletaan jatkuvan ja lisäävän kehityksen periaatteita. Lisäksi tutustuttiin ketterän ohjelmistokehityksen julistukseen. Saatavilla olevasta kirjallisuudesta etsittiin myös jo dokumentoituja menetelmiä tai ajatuksia ohjelmistokehityksen ketterien menetelmien soveltamisesta elektroniikan suunniteluun. Lisämateriaaliksi haastateltiin tekijän työyhteisön elektroniikkasuunnittelijoita heidän hyviksi kokemiensa menetelmien ja käytäntöjen keräämiseksi opinnäytetyön taustatiedoiksi.
Opinnäytetyön johtopäätös on, että ohjelmistokehityksen ketteriä menetelmiä voidaan hyödyntää sulautettujen järjestelmien laitteistokehityksessä, mutta ei aivan sellaisenaan.
Ohjelmistokehityksen tapa jaksottaa kehitys sopivan pituisiin jaksoihin ja julkaista uusi versio jakson päätteeksi vaatii laitteistokehityksen yhteydessä erilaista toimintatapaa. Agile-menetelmien sovellettaessa laitteistokehitykseen on huomioitava laitteiston prototyyppien rakentamiseen liittyvät odotusajat ja kustannukset. Toisaalta iso osa ohjelmistokehityksen ketteristä menetelmistä voisi auttaa myös laitteistokehityksessä. Dokumentaation pitäminen kevyenä, vaatimusmäärittelyn täydentäminen joustavasti projektin aikana, tilaajan ja työryhmän yhteistyön parantamiseen tähtäävät menetelmät, testattavuuden ja testausautomaation kehittäminen sekä työryhmän itseohjautuvuus voivat kaikki parantaa projektin onnistumisen mahdollisuuksia.
Motivaationa työn aiheen valinnalle oli tekijän oman työuran aikana muotoutuneiden työskentelytapojen haastaminen ja tutustuminen menetelmiin, joilla elektroniikkasuunnittelua voisi tehdä helpommaksi ja nopeammaksi
Työn taustaksi tutustuttiin kolmeen ohjelmistokehityksen menetelmään, joissa sovelletaan jatkuvan ja lisäävän kehityksen periaatteita. Lisäksi tutustuttiin ketterän ohjelmistokehityksen julistukseen. Saatavilla olevasta kirjallisuudesta etsittiin myös jo dokumentoituja menetelmiä tai ajatuksia ohjelmistokehityksen ketterien menetelmien soveltamisesta elektroniikan suunniteluun. Lisämateriaaliksi haastateltiin tekijän työyhteisön elektroniikkasuunnittelijoita heidän hyviksi kokemiensa menetelmien ja käytäntöjen keräämiseksi opinnäytetyön taustatiedoiksi.
Opinnäytetyön johtopäätös on, että ohjelmistokehityksen ketteriä menetelmiä voidaan hyödyntää sulautettujen järjestelmien laitteistokehityksessä, mutta ei aivan sellaisenaan.
Ohjelmistokehityksen tapa jaksottaa kehitys sopivan pituisiin jaksoihin ja julkaista uusi versio jakson päätteeksi vaatii laitteistokehityksen yhteydessä erilaista toimintatapaa. Agile-menetelmien sovellettaessa laitteistokehitykseen on huomioitava laitteiston prototyyppien rakentamiseen liittyvät odotusajat ja kustannukset. Toisaalta iso osa ohjelmistokehityksen ketteristä menetelmistä voisi auttaa myös laitteistokehityksessä. Dokumentaation pitäminen kevyenä, vaatimusmäärittelyn täydentäminen joustavasti projektin aikana, tilaajan ja työryhmän yhteistyön parantamiseen tähtäävät menetelmät, testattavuuden ja testausautomaation kehittäminen sekä työryhmän itseohjautuvuus voivat kaikki parantaa projektin onnistumisen mahdollisuuksia.