Testauskurssin harjoitustyö sulautetuille järjestelmille
Rannikko, Niilo (2026)
Rannikko, Niilo
2026
Tietotekniikan DI-ohjelma - Master's Programme in Information Technology
Informaatioteknologian ja viestinnän tiedekunta - Faculty of Information Technology and Communication Sciences
Hyväksymispäivämäärä
2026-07-23
Julkaisun pysyvä osoite on
https://urn.fi/URN:NBN:fi:tuni-202607228409
https://urn.fi/URN:NBN:fi:tuni-202607228409
Tiivistelmä
Sulautettujen järjestelmien ohjelmistojen testauksen opetuksessa tulee huomioida sulautettujen järjestelmien testauksen erityispiirteet. Sulautettujen järjestelmien ohjelmisto on vahvasti riippuvainen sen laitteistosta, jolloin perinteinen vain ohjelmistoon rajoittunut testaus ei ole tehokasta, ja testauksessa tulee testata ohjelmistoa laitteiston kanssa. Lisäksi sulautettujen järjestelmien ominaisuudet, kuten turvallisuus- ja toimintakriittisyys, rajoitetut laitteistoresurssit, pitkäaikainen yhtäjaksoinen toiminta ja kovat reaaliaikavaatimukset vaikuttavat järjestelmän testaamisen vaatimuksiin.
Sulautettujen järjestelmien testauksen opetusta varten Tampereen yliopiston Ohjelmistojen testaus -kurssille kehitettiin erillinen sulautettujen järjestelmien opiskelijoille suunnattu harjoitustyö, jonka tarkoituksena on demonstroida sulautettujen järjestelmien testauksen erityispiirteitä. Harjoitustyötä varten suunniteltiin ja toteutettiin erivärisiä ja -pituuksisia palikoita lajitteleva liukuhihnajärjestelmä, jonka ohjelmistoa sekä ohjelmiston ja laitteiston yhteistoimintaa vapaaehtoiset opiskelijaparit tutkivat ja testasivat harjoitustyön koevedossa syksyllä 2025.
Kaksiosaisessa harjoitustyössä opiskelijat saivat ensin tutustua sulautettujen järjestelmien testauksen aihepiiriin ja suunnitella harjoitustyön järjestelmän testausta. Toisessa osassa opiskelijat pääsivät testaamaan ja korjaamaan järjestelmän rikkinäistä ohjelmistoa ja lopulta testaamaan ohjelmiston ja laitteiston yhteistoimintaa järjestelmätestaustilaisuuksissa.
Harjoitustyön ensimmäinen versio saavutti sille asetetut tavoitteet. Se tarjosi Tampereen yliopiston opiskelijoille mahdollisuuden perehtyä sulautettujen ohjelmistojen testaukseen. Harjoitustyön koevedon aikana tehdyt havainnot ja kerätty palaute antaa tuleville vuosille hyvän pohjan harjoitustyön kehittämiseen. Erityisesti opiskelijat kiittivät laitteiston kanssa tehtävää järjestelmätestausta sekä järjestelmän ohjelmiston kanssa tehtävää osiota. Kehityskohdiksi opiskelijat nostivat tehtävänannon selkeyden sekä testattavan järjestelmän yleisen toimivuuden, mikä aiheutti haasteita järjestelmätestaustilaisuuksissa. Projektissa haastena oli myös osallistuneiden opiskelijoiden pieni määrä. Tehtyjen havaintojen perusteella harjoitustyötä voidaan kehittää parantamalla mahdollisuuksia järjestelmän tarkempaan testaukseen sekä muokkaamalla työn painopistettä lähemmäs puhdasta testausta ohjelmiston korjaamisesta ja kehittämisestä. In teaching embedded systems software testing, the special characteristics of embedded systems testing must be taken into account. Embedded systems software is highly dependent on its hardware, making traditional software-only testing ineffective. Instead, testing of embedded systems software must be conducted together with the hardware. In addition, the characteristics of embedded systems such as safety and mission criticality, one-time development projects, extreme operating conditions, limited hardware resources, long-term continuous operation, and strict real-time requirements—affect the testing requirements of the system.
For the purpose of teaching embedded systems testing, a separate assignment aimed at embedded systems students was developed for the Software Testing course at Tampere University. The objective of the assignment was to demonstrate the unique aspects of embedded systems testing. For this purpose, a conveyor-belt system capable of sorting blocks of different colors and lengths was designed and implemented. During a pilot run of the assignment in autumn 2025, volunteer student pairs examined and tested the system’s software as well as the interaction between the software and hardware.
In the two-part assignment, students first familiarized themselves with the field of embedded systems testing in the context of the assignment and planned for the testing of the system. In the second part, students got to test and repair faulty software and ultimately test the interaction between the software and hardware during system testing sessions.
The pilot implementation of the developed assignment was moderately successful. The small number of participating student pairs did not provide a large sample for evaluating the assignment’s effectiveness, but observations made during the assignment and the feedback received helped identify both areas for improvement and components that worked well. In particular, students appreciated the system testing performed with the hardware and the section involving the system's software. More critical feedback concerned the clarity of the assignment instructions and the overall functionality of the test system, which caused challenges during the system testing sessions. Based on the observations made, opportunities for more detailed testing could be improved, and the focus of the assignment could be shifted closer to pure testing rather than software debugging and development.
Sulautettujen järjestelmien testauksen opetusta varten Tampereen yliopiston Ohjelmistojen testaus -kurssille kehitettiin erillinen sulautettujen järjestelmien opiskelijoille suunnattu harjoitustyö, jonka tarkoituksena on demonstroida sulautettujen järjestelmien testauksen erityispiirteitä. Harjoitustyötä varten suunniteltiin ja toteutettiin erivärisiä ja -pituuksisia palikoita lajitteleva liukuhihnajärjestelmä, jonka ohjelmistoa sekä ohjelmiston ja laitteiston yhteistoimintaa vapaaehtoiset opiskelijaparit tutkivat ja testasivat harjoitustyön koevedossa syksyllä 2025.
Kaksiosaisessa harjoitustyössä opiskelijat saivat ensin tutustua sulautettujen järjestelmien testauksen aihepiiriin ja suunnitella harjoitustyön järjestelmän testausta. Toisessa osassa opiskelijat pääsivät testaamaan ja korjaamaan järjestelmän rikkinäistä ohjelmistoa ja lopulta testaamaan ohjelmiston ja laitteiston yhteistoimintaa järjestelmätestaustilaisuuksissa.
Harjoitustyön ensimmäinen versio saavutti sille asetetut tavoitteet. Se tarjosi Tampereen yliopiston opiskelijoille mahdollisuuden perehtyä sulautettujen ohjelmistojen testaukseen. Harjoitustyön koevedon aikana tehdyt havainnot ja kerätty palaute antaa tuleville vuosille hyvän pohjan harjoitustyön kehittämiseen. Erityisesti opiskelijat kiittivät laitteiston kanssa tehtävää järjestelmätestausta sekä järjestelmän ohjelmiston kanssa tehtävää osiota. Kehityskohdiksi opiskelijat nostivat tehtävänannon selkeyden sekä testattavan järjestelmän yleisen toimivuuden, mikä aiheutti haasteita järjestelmätestaustilaisuuksissa. Projektissa haastena oli myös osallistuneiden opiskelijoiden pieni määrä. Tehtyjen havaintojen perusteella harjoitustyötä voidaan kehittää parantamalla mahdollisuuksia järjestelmän tarkempaan testaukseen sekä muokkaamalla työn painopistettä lähemmäs puhdasta testausta ohjelmiston korjaamisesta ja kehittämisestä.
For the purpose of teaching embedded systems testing, a separate assignment aimed at embedded systems students was developed for the Software Testing course at Tampere University. The objective of the assignment was to demonstrate the unique aspects of embedded systems testing. For this purpose, a conveyor-belt system capable of sorting blocks of different colors and lengths was designed and implemented. During a pilot run of the assignment in autumn 2025, volunteer student pairs examined and tested the system’s software as well as the interaction between the software and hardware.
In the two-part assignment, students first familiarized themselves with the field of embedded systems testing in the context of the assignment and planned for the testing of the system. In the second part, students got to test and repair faulty software and ultimately test the interaction between the software and hardware during system testing sessions.
The pilot implementation of the developed assignment was moderately successful. The small number of participating student pairs did not provide a large sample for evaluating the assignment’s effectiveness, but observations made during the assignment and the feedback received helped identify both areas for improvement and components that worked well. In particular, students appreciated the system testing performed with the hardware and the section involving the system's software. More critical feedback concerned the clarity of the assignment instructions and the overall functionality of the test system, which caused challenges during the system testing sessions. Based on the observations made, opportunities for more detailed testing could be improved, and the focus of the assignment could be shifted closer to pure testing rather than software debugging and development.
