Näytä suppeat kuvailutiedot

CONTINUOUS DEPLOYMENT WORKFLOW : Case Lego Mindstorms EV3

Alatalo, Janne (2014)

dc.contributor.authorAlatalo, Janne
dc.date.accessioned2014-09-24T06:13:36Z
dc.date.available2014-09-24T06:13:36Z
dc.date.issued2014
dc.identifier.uriURN:NBN:fi:amk-2014092314147
dc.identifier.urihttp://www.theseus.fi/handle/10024/80576
dc.description.abstractThis 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.abstractOpinnä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.isoeng
dc.publisherJyväskylän ammattikorkeakoulu
dc.rightsAll rights reserved
dc.titleCONTINUOUS DEPLOYMENT WORKFLOW : Case Lego Mindstorms EV3en
dc.type.ontasotfi=AMK-opinnäytetyö|sv=YH-examensarbete|en=Bachelor's thesis|
dc.identifier.dscollection10024/386
dc.organizationJyväskylän ammattikorkeakoulu
dc.contributor.organizationJyväskylän ammattikorkeakoulu
dc.subject.keywordLego Mindstorms EV3
dc.subject.keywordContinuous Deployment
dc.subject.keywordEmbedded Systems
dc.subject.keywordUnit Testing
dc.subject.degreeprogramfi=Tieto- ja viestintätekniikka|sv=Informations- och kommunikationsteknik|en=Information and Communications Technology|
dc.subject.disciplineOhjelmistotekniikan koulutusohjelma


Tiedostot

Thumbnail

Viite kuuluu kokoelmiin:

Näytä suppeat kuvailutiedot