Simulation Aided Product Software Development
Hyvönen, Jani (2010)
Hyvönen, Jani
Tampereen ammattikorkeakoulu
2010
All rights reserved
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2010060611544
https://urn.fi/URN:NBN:fi:amk-2010060611544
Tiivistelmä
Tämä työ tutki simuloitujen ympäristöjen käyttöä apuna tuoteohjelmistokoodin kehitysprosessissa. Soveltuvuus ohjelmistokehitystyökaluksi tutkittiin koko kehitysprosessin alueelta, arkkitehtuurin määrittelyvaiheesta toteutuksen testaamiseen.
Työn tarkoitus oli löytää toteuttamiskelpoinen keino hyödyntää simuloituja ympäristöjä tuotekehityksessä päätavoitteina tuotteen ohjelmistokoodin kehitystyön aikaistaminen, tehostaminen ja kehitystyöhön käytetyn ajan lyhentäminen mahdollistamalla useampien työvaiheiden rinnakkaisuus.
Tämä tutkimus tarvittiin nykyisellään käytettävien simulointimenetelmien uudistamiseksi vastaamaan nykypäivän tuoteohjelmistokoodin kehitysprosessien vaatimuksiin.
Työ koostui suurilta osin nykyisiin simulaatioympäristöihin tutustumisesta, nykyisissä simulaatioympäristöissä tehtyjen virheiden ja oivalluksien ymmärtämisestä, uuden toteuttamiskelpoisen arkkitehtuurin määrittämisestä ja sen toteuttamiskelpoisuuden tarkistamisesta esimerkkitoteutuksin. Työ keskittyy Symbian käyttöjärjestelmään. Suuri osa oivalluksista voidaan käyttää hyödyksi myös muiden ohjelmistoympäristöjen kehityksessä.
Työn tärkein tulos esittelee simuloitujen ympäristöjen avulla toteutettavan kolmivaiheisen menetelmän tuoteohjelmistokoodin kehitykseen. Edellämainittuun menetelmään perustuva MCP (Major Contribution Proposal) SHAI SDKn (Symbian Hardware Abstraction Interface Software Development Kit) kehittämiseksi esitettiin Symbian Foundation yhteisölle. Lisäksi työn sivutuotteena työn tilaajalle valmistui QEMU simulaatiotyökaluun perustuva ohjelmistokehitysympäristö. Lisäksi työn tuloksina voidaan mainita simulaatioympäristöjen abstraktiotasoihin liittyvä tutkielma, sekä tutkielmaan perustuvan arkkitehtuurin toteuttamiskelpoisuuden tarkistamisen yhteydessä tehdyt esimerkkitoteutukset.
Työn tuloksia voidaan käyttää simulaatioympäristöjen, sekä simulaatioympäristöjen avulla tehtävän tuoteohjelmistokoodin kehitykseen tulevaisuudessa. Lyhyellä aikavälillä työn tulokset ovat nähtävissä Symbian Foundation SHAI SDK työkalussa.
Tämän työn jälkeen tapahtuva jatkokehitys sisältää seuraavat pääkohdat: Ehdotetun menetelmän toteuttaminen, toteutuksen soveltuvuuden testaaminen ja testauksessa huomattujen puutteiden ja epäkohtien korjaaminen alkuperäiseen ehdotettuun menetelmään käyttökelpoisen simulaatioavusteisen ohjelmistokehitysympäristön ja prosessin aikaansaamiseksi.
Työn tarkoitus oli löytää toteuttamiskelpoinen keino hyödyntää simuloituja ympäristöjä tuotekehityksessä päätavoitteina tuotteen ohjelmistokoodin kehitystyön aikaistaminen, tehostaminen ja kehitystyöhön käytetyn ajan lyhentäminen mahdollistamalla useampien työvaiheiden rinnakkaisuus.
Tämä tutkimus tarvittiin nykyisellään käytettävien simulointimenetelmien uudistamiseksi vastaamaan nykypäivän tuoteohjelmistokoodin kehitysprosessien vaatimuksiin.
Työ koostui suurilta osin nykyisiin simulaatioympäristöihin tutustumisesta, nykyisissä simulaatioympäristöissä tehtyjen virheiden ja oivalluksien ymmärtämisestä, uuden toteuttamiskelpoisen arkkitehtuurin määrittämisestä ja sen toteuttamiskelpoisuuden tarkistamisesta esimerkkitoteutuksin. Työ keskittyy Symbian käyttöjärjestelmään. Suuri osa oivalluksista voidaan käyttää hyödyksi myös muiden ohjelmistoympäristöjen kehityksessä.
Työn tärkein tulos esittelee simuloitujen ympäristöjen avulla toteutettavan kolmivaiheisen menetelmän tuoteohjelmistokoodin kehitykseen. Edellämainittuun menetelmään perustuva MCP (Major Contribution Proposal) SHAI SDKn (Symbian Hardware Abstraction Interface Software Development Kit) kehittämiseksi esitettiin Symbian Foundation yhteisölle. Lisäksi työn sivutuotteena työn tilaajalle valmistui QEMU simulaatiotyökaluun perustuva ohjelmistokehitysympäristö. Lisäksi työn tuloksina voidaan mainita simulaatioympäristöjen abstraktiotasoihin liittyvä tutkielma, sekä tutkielmaan perustuvan arkkitehtuurin toteuttamiskelpoisuuden tarkistamisen yhteydessä tehdyt esimerkkitoteutukset.
Työn tuloksia voidaan käyttää simulaatioympäristöjen, sekä simulaatioympäristöjen avulla tehtävän tuoteohjelmistokoodin kehitykseen tulevaisuudessa. Lyhyellä aikavälillä työn tulokset ovat nähtävissä Symbian Foundation SHAI SDK työkalussa.
Tämän työn jälkeen tapahtuva jatkokehitys sisältää seuraavat pääkohdat: Ehdotetun menetelmän toteuttaminen, toteutuksen soveltuvuuden testaaminen ja testauksessa huomattujen puutteiden ja epäkohtien korjaaminen alkuperäiseen ehdotettuun menetelmään käyttökelpoisen simulaatioavusteisen ohjelmistokehitysympäristön ja prosessin aikaansaamiseksi.