Ohjelmiston vianetsintä sulautetuissa järjestelmissä
Rauman, Mikko (2019)
Rauman, Mikko
2019
All rights reserved. This publication is copyrighted. You may download, display and print it for Your own personal use. Commercial use is prohibited.
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:amk-2019120424572
https://urn.fi/URN:NBN:fi:amk-2019120424572
Tiivistelmä
Opinnäytetyön toimeksiantaja oli tamperelainen UnSeen Technologies Oy. UnSeenillä oli aloitettu uusi projekti, joka perustui sulautettuihin järjestelmiin. Uuten projektiin ilmeni tarve kouluttaa henkilökuntaa vianetsintään sulautetuissa järjestelmissä.
Tavoitteena opinnäytetyössä oli lisätä UnSeenin nykyisten ja tulevien sovelluskehittäjien tietotaitoa sulautettujen järjestelmien vianhausta sekä tutkia ja verrata menetelmiä, joita vianhaussa voidaan käyttää hyväksi. Tämän selvityksen pohjalta oli tarkoitus valita mahdolliset menetelmät projektiin ja luoda dokumentaatio työkalujen käyttöönottoon.
Tulokset saatiin tutkimalla sovelluskehityksen yhtäläisyyksiä ja eroavaisuuksia sulautetun ja perinteisen vianetsinnän pohjalta. Eri työkalut ja menetelmät arvioitiin projektissa tapahtuneiden ongelmatapausten pohjalta. Nämä tapaukset kuvattin esimerkkitapauksina opinnäytetyössä. Valitut menetelmät olivat ajonaikainen testaus, testivetoinen kehitys ja instrumenttipohjainen vianetsintä. Näihin jokaiseen kuvattiin myös menetelmissä käytetyt työkalut.
Sovelluksen ajonaikainen testaus on melko muuttumatonta sulautetuissa järjestelmissä. Sovelluskehittäjä voi edelleen käyttää kehitysympäristöstä tuttua vianetsintätyökalua menetelmään. Testivetoinen kehitys taas ei vielä soveltunut projektiin testattavien loogisten kokonaisuuksien vähyyden ja laitteiston asettamien rajoitteiden vuoksi. Instrumenttipohjaisessa vianetsinnässä virrankulutuksen profilointi havaittiin loogiseksi jatkeeksi vianetsintään. Lisäksi tuloksena syntyi UnSeenin omaan verkkoon ohjeet työkalujen käyttöönottoon.
Tavoitteena opinnäytetyössä oli lisätä UnSeenin nykyisten ja tulevien sovelluskehittäjien tietotaitoa sulautettujen järjestelmien vianhausta sekä tutkia ja verrata menetelmiä, joita vianhaussa voidaan käyttää hyväksi. Tämän selvityksen pohjalta oli tarkoitus valita mahdolliset menetelmät projektiin ja luoda dokumentaatio työkalujen käyttöönottoon.
Tulokset saatiin tutkimalla sovelluskehityksen yhtäläisyyksiä ja eroavaisuuksia sulautetun ja perinteisen vianetsinnän pohjalta. Eri työkalut ja menetelmät arvioitiin projektissa tapahtuneiden ongelmatapausten pohjalta. Nämä tapaukset kuvattin esimerkkitapauksina opinnäytetyössä. Valitut menetelmät olivat ajonaikainen testaus, testivetoinen kehitys ja instrumenttipohjainen vianetsintä. Näihin jokaiseen kuvattiin myös menetelmissä käytetyt työkalut.
Sovelluksen ajonaikainen testaus on melko muuttumatonta sulautetuissa järjestelmissä. Sovelluskehittäjä voi edelleen käyttää kehitysympäristöstä tuttua vianetsintätyökalua menetelmään. Testivetoinen kehitys taas ei vielä soveltunut projektiin testattavien loogisten kokonaisuuksien vähyyden ja laitteiston asettamien rajoitteiden vuoksi. Instrumenttipohjaisessa vianetsinnässä virrankulutuksen profilointi havaittiin loogiseksi jatkeeksi vianetsintään. Lisäksi tuloksena syntyi UnSeenin omaan verkkoon ohjeet työkalujen käyttöönottoon.