Embedded software development methods for mission critical satellite operations

 |  Login

Show simple item record

dc.contributor Aalto-yliopisto fi
dc.contributor Aalto University en
dc.contributor.advisor Chechile, Ignacio
dc.contributor.author Sanmark, Henry
dc.date.accessioned 2017-09-04T08:38:01Z
dc.date.available 2017-09-04T08:38:01Z
dc.date.issued 2017-08-28
dc.identifier.uri https://aaltodoc.aalto.fi/handle/123456789/27896
dc.description.abstract Mission critical flight software for spacecraft is essential for spacecraft functionality. It controls all subsystems such as payloads, and multiple standards and conventions have been developed to provide reliability and robustness for the software. The most significant feature of developing spacecraft software is the codesigning of the hardware and software, where robustness must be taken into consideration. There are multiple traditional methods for developing mission critical embedded software. These methods struggle from slow development velocity and do not favor possible changing requirements. New methods for developing software have emerged in latest decades, but they are designed for differ ent fields of industry and not for mission critical embedded software. This thesis studies how to improve embedded mission critical software development in a small company with limited resources and a tight development schedule. The thesis was developed as an assignment for Finland based NewSpace company ICEYE. In this thesis, the traditional spacecraft software development conventions are provided as a background information. Then, different modern software development techniques are presented. After that, this information is applied to ICEYE software development, where final analysis and developed systems are presented. The focus of development phases is divided into four subsections, which are development tools, hardware and software codesign, continuous integration and continuous delivery, and lastly, testing. Finally, the conclusions and integration of these four analyses are provided, with suggestions for future work. The results propose agile acceptance test-driven approaches with the trackable requirements from system level with justified use of development tools. The final system should be tested in real simulated functional scenarios, which occur during the actual mission. This thesis also presents developed configurations, testing environment and analysis of selected tools. en
dc.description.abstract Tehtäväkriittinen lento-ohjelmisto on oleellinen osa avaruusaluksen toimintaa. Se hallitsee kaikkia alijärjestelmiä kuten hyötykuormia, ja useat erilaiset standardit sekä käytännöt pyrkivät varmistamaan ohjelmiston eheyden sekä luotettavuuden. Eräs huomionarvoisin ominaisuus tämänkaltaisen ohjelmiston kehittämisessä on ohjelmiston ja laitteiston yhtäaikainen kehittäminen, missä eheys pitää ottaa huomioon. Tällaisen ohjelmiston kehittämisestä on olemassa useita perinteisiä tapoja. Nämä kuitenkin kärsivät hitaasta kehitysnopeudesta eivätkä taivu mahdollisiin muuttuviin vaatimuksiin. Viimeisinä vuosikymmeninä on kehitetty uudempia kehittyneitä tapoja kirjoittaa ohjelmistoja, mutta nämä on kehitetty pääasiassa muiden teollisuudenalojen tarpeisiin eivätkä täten toimi itsessään tehtäväkriittisille sulautetuille järjestelmille. Tämä diplomityö tutkii tehtäväkriittisen sulautetun järjestelmän ohjelmiston kehittämisen tehostamista, jonka lisäksi etsittiin ratkaisuja, millä tavalla kyseisiä toimia voidaan käyttää hyväksi rajoitetuilla resursseilla sekä nopealla kehitysaikataululla. Diplomityö tehtiin toimeksiantona ICEYE-nimiselle suomalaiselle NewSpace-yritykselle. Tässä diplomityössä esitellään aluksi perinteiset ohjelmistokehitysmenetelmät avaruusohjelmistolle. Myös erilaiset modernit ohjelmistokehitystekniikat esitellään. Näiden pohjalta analysoidaan ICEYEn nykyistä ohjelmistokehitystä ja diplomityön aikana kehitetyt järjestelmät esitellään. Analysoinnin pääpaino on jaettu neljälle eri osa-alueelle, jotka ovat kehitystyökalut, laitteiston ja ohjelmiston yhdenaikainen kehitys, jatkuva integraatio sekä jatkuva julkaisu ja lopuksi testausmenetelmät. Lopuksi nämä kaikki kiedotaan yhteen ja tehdään lopulliset päätelmät, sekä esitellään tulevaisuuden kehitysehdotukset. Tulokset esittävät, että kehityksessä pitäisi suosia hyväksymistestauksen kautta perittyjä ketteriä kehitysperiaatteita, jossa järjestelmätason vaatimukset voidaan jäljittää koko kehityksen aikana. Käytössä olevien työkalujen täytyy olla oikeutettuja. Lopullinen järjestelmä testataan simuloiduilla tehtävänaikaisilla tapahtumilla. Tämä diplomityö myös esittää kehitetyt asetustiedostot, testausympäristön sekä työkalujen analysoinnin. fi
dc.format.extent 87+8
dc.language.iso en en
dc.title Embedded software development methods for mission critical satellite operations en
dc.title Sulautettujen tehtäväkriittisten satelliittijärjestelmien ohjelmistokehitysmenetelmät fi
dc.type G2 Pro gradu, diplomityö fi
dc.contributor.school Sähkötekniikan korkeakoulu fi
dc.subject.keyword spacecraft en
dc.subject.keyword satellite en
dc.subject.keyword mission-critical en
dc.subject.keyword embedded system en
dc.subject.keyword acceptance test-driven development en
dc.subject.keyword NewSpace en
dc.identifier.urn URN:NBN:fi:aalto-201709046795
dc.programme.major Control, Robotics and Autonomous Systems en
dc.programme.mcode ELEC3025 fi
dc.type.ontasot Master's thesis en
dc.type.ontasot Diplomityö fi
dc.contributor.supervisor Kyrki, Ville
dc.programme AEE - Master’s Programme in Automation and Electrical Engineering (TS2013) en
dc.ethesisid Aalto 9586
dc.location P1 fi


Files in this item

Files Size Format View

There are no files associated with this item.

This item appears in the following Collection(s)

Show simple item record

Search archive


Advanced Search

article-iconSubmit a publication

Browse

My Account