| dc.contributor.author | Alatalo, Janne | |
| dc.date.accessioned | 2014-09-24T06:13:36Z | |
| dc.date.available | 2014-09-24T06:13:36Z | |
| dc.date.issued | 2014 | |
| dc.identifier.uri | URN:NBN:fi:amk-2014092314147 | |
| dc.identifier.uri | http://www.theseus.fi/handle/10024/80576 | |
| dc.description.abstract | This thesis was created for N4S@JAMK project. The N4S@JAMK project is part of Need4Speed program run by DIGILE. The assignment for this thesis had two focuses: to create a continuous deployment chain that would deploy software to a Lego Mindstorms EV3 device, and to study ways to unit test the software of EV3 device on a normal computer.
The continuous deployment chain was implemented using GitLab, Jenkins programs and Fabric python framework. Lego Mindstorms EV3 device had a third party firmware called MonoBrick installed instead of Lego’s own firmware. MonoBrick firmware had a mono software included in the installation, which means the software developed for EV3 device was written in C#.
The EV3 device’s software was unit tested on a computer using a good software architecture and mock objects. The parts of the software using some hardware dependency, such as parts of software that accessed sensors of motors, were designed in a way that allowed to swap them to mock objects when running unit tests.
The continuous deployment chain was tested with a test project and the implementation was presented in a demo bazaar event during Need4Speed program’s Q2 review at Tampere. | en |
| dc.description.abstract | Opinnäytetyön toimeksiantajana toimi N4S@JAMK projekti. N4S@JAMK on osa DIGILE-yrityksen vetämää Need4Speed-ohjelmaa. Opinnäytetyön painopisteenä oli kaksi eri aihetta. Ensimmäinen näistä aiheista oli jatkuvan julkaisun ketjun toteuttaminen Lego Mindstorms EV3 -laitteelle. Toinen aihealueista oli tutkia tapoja yksikkötestata EV3-laitteelle kehitettyjä ohjelmistoja tavallisella tietokoneella.
Jatkuvan julkaisun ketju toteutettiin käyttäen GitLab- ja Jenkins-ohjelmistoja sekä Fabric python -kirjastoa. EV3-laitteessa käytettävä ohjelmisto oli kolmannen osapuolen tarjoama MonoBrick- laiteohjelmisto. EV3-laitteeseen esiasennettuna ollutta Legon omaa laiteohjelmistoa ei käytetty. MonoBrick-ohjelmisto sisälsi monokehitysympäristön asennuksen yhteydessä, joten EV3-laitteelle kehitetty ohjelmisto kirjoitettiin C#-ohjelmointikielellä.
EV3-laitteelle tarkoitetun ohjelmiston yksikkötestaus toteutettiin hyvällä ohjelma-arkkitehtuurilla sekä mock-objekteilla. Ne ohjelman osat, jotka olivat riippuvaisia laitteistosta, kuten antureita ja moottoreita käsittelevät osat, suunniteltiin niin, että ne on helppo vaihtaa testauksen ajaksi mock-objekteihin.
Jatkuvan julkaisun ketju testattiin testi-projektilla ja se esiteltiin demo bazaar -tapahtumassa Need4Speed-ohjelman Q2 Review -tilaisuudessa. | fi |
| dc.language.iso | eng | |
| dc.publisher | Jyväskylän ammattikorkeakoulu | |
| dc.rights | All rights reserved | |
| dc.title | CONTINUOUS DEPLOYMENT WORKFLOW : Case Lego Mindstorms EV3 | en |
| dc.type.ontasot | fi=AMK-opinnäytetyö|sv=YH-examensarbete|en=Bachelor's thesis| | |
| dc.identifier.dscollection | 10024/386 | |
| dc.organization | Jyväskylän ammattikorkeakoulu | |
| dc.contributor.organization | Jyväskylän ammattikorkeakoulu | |
| dc.subject.keyword | Lego Mindstorms EV3 | |
| dc.subject.keyword | Continuous Deployment | |
| dc.subject.keyword | Embedded Systems | |
| dc.subject.keyword | Unit Testing | |
| dc.subject.degreeprogram | fi=Tieto- ja viestintätekniikka|sv=Informations- och kommunikationsteknik|en=Information and Communications Technology| | |
| dc.subject.discipline | Ohjelmistotekniikan koulutusohjelma | |