Systematic Fuzz Testing Techniques on a Nanosatellite Flight Software for Agile Mission Development

The success of CubeSat space missions depends on the ability to perform properly in a harsh environment. A key component in space missions is the flight software, which manages all of the processes executed by the satellite on its onboard computer. Literature shows that CubeSat missions suffer high...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:IEEE access 2021, Vol.9, p.114008-114021
Hauptverfasser: Gutierrez, Tamara, Bergel, Alexandre, Gonzalez, Carlos E., Rojas, Camilo J., Diaz, Marcos A.
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
container_end_page 114021
container_issue
container_start_page 114008
container_title IEEE access
container_volume 9
creator Gutierrez, Tamara
Bergel, Alexandre
Gonzalez, Carlos E.
Rojas, Camilo J.
Diaz, Marcos A.
description The success of CubeSat space missions depends on the ability to perform properly in a harsh environment. A key component in space missions is the flight software, which manages all of the processes executed by the satellite on its onboard computer. Literature shows that CubeSat missions suffer high infant mortality, and many spacecraft failures are related to flight software errors, some of them resulting in complete mission loss. Extensive operation testing is the primary technique used by CubeSats developers to ensure flight software quality and avoid such failures. The "New Space" requirements pressure to add "agility" to the software development, which could limit the capacity to test. While advanced and beneficial software testing techniques are found in the software engineering field, CubeSat software solutions mostly rely on unit testing, software in the loop simulation, and hardware in the loop simulation. In this work, fuzz testing techniques were developed, implemented, and evaluated as a manner to expedite operational testing of CubeSats while maintaining their completeness. The impact of the tools was evaluated by using the three new 3U CubeSats under development at the University of Chile. We identified twelve bugs not covered by classic testing strategies in less than three days. These failures were reported, fixed, and characterized by the developers in eight sprint sessions. Our results indicate that fuzz testing improved the completeness of flight software testing through automation and with almost no development interruption. Although our approach has been tested on the SUCHAI flight software, it applies to systems that follow a similar architecture.
doi_str_mv 10.1109/ACCESS.2021.3104283
format Article
fullrecord <record><control><sourceid>proquest_ieee_</sourceid><recordid>TN_cdi_ieee_primary_9512031</recordid><sourceformat>XML</sourceformat><sourcesystem>PC</sourcesystem><ieee_id>9512031</ieee_id><doaj_id>oai_doaj_org_article_2627f73ef1a54388af9567c2f543dcc5</doaj_id><sourcerecordid>2562954372</sourcerecordid><originalsourceid>FETCH-LOGICAL-c408t-5554573b5e7aa54a453854b3bb0944c70be286e067ef30a255660591ca453ecd3</originalsourceid><addsrcrecordid>eNpNUUtPGzEQXlUgFQG_gIulnhP82LF3j1FKAAnaQ-BseZ1xcLRZp7ZTRH49DosQc5nx6HvY_qrqitEpY7S9ns3nN8vllFPOpoLRmjfiR3XGmWwnAoQ8-Tb_rC5T2tBSTVmBOqvs8i1l3JrsLVnsDwfyhCn7YV26fRn8vz0mEgZiyB8zhGQy9r3PSBa9X79ksgwuv5qIxIVIZmvfI3n0KfnC-I3_sQ-7LQ75ojp1pk94-dnPq-fFzdP8bvLw9_Z-PnuY2Jo2eQIANSjRASpjoDY1iAbqTnQdbevaKtohbyRSqdAJajiAlBRaZo9ItCtxXt2PuqtgNnoX_dbENx2M1x-LENfaxPLQHjWXXDkl0LHiJJrGuBakstyV08paKFq_Rq1dDMdPyHoT9nEo19ccJG8LTvGCEiPKxpBSRPflyqg-hqPHcPQxHP0ZTmFdjSyPiF-MFhingol3niyKHQ</addsrcrecordid><sourcetype>Open Website</sourcetype><iscdi>true</iscdi><recordtype>article</recordtype><pqid>2562954372</pqid></control><display><type>article</type><title>Systematic Fuzz Testing Techniques on a Nanosatellite Flight Software for Agile Mission Development</title><source>IEEE Open Access Journals</source><source>DOAJ Directory of Open Access Journals</source><source>EZB-FREE-00999 freely available EZB journals</source><creator>Gutierrez, Tamara ; Bergel, Alexandre ; Gonzalez, Carlos E. ; Rojas, Camilo J. ; Diaz, Marcos A.</creator><creatorcontrib>Gutierrez, Tamara ; Bergel, Alexandre ; Gonzalez, Carlos E. ; Rojas, Camilo J. ; Diaz, Marcos A.</creatorcontrib><description>The success of CubeSat space missions depends on the ability to perform properly in a harsh environment. A key component in space missions is the flight software, which manages all of the processes executed by the satellite on its onboard computer. Literature shows that CubeSat missions suffer high infant mortality, and many spacecraft failures are related to flight software errors, some of them resulting in complete mission loss. Extensive operation testing is the primary technique used by CubeSats developers to ensure flight software quality and avoid such failures. The "New Space" requirements pressure to add "agility" to the software development, which could limit the capacity to test. While advanced and beneficial software testing techniques are found in the software engineering field, CubeSat software solutions mostly rely on unit testing, software in the loop simulation, and hardware in the loop simulation. In this work, fuzz testing techniques were developed, implemented, and evaluated as a manner to expedite operational testing of CubeSats while maintaining their completeness. The impact of the tools was evaluated by using the three new 3U CubeSats under development at the University of Chile. We identified twelve bugs not covered by classic testing strategies in less than three days. These failures were reported, fixed, and characterized by the developers in eight sprint sessions. Our results indicate that fuzz testing improved the completeness of flight software testing through automation and with almost no development interruption. Although our approach has been tested on the SUCHAI flight software, it applies to systems that follow a similar architecture.</description><identifier>ISSN: 2169-3536</identifier><identifier>EISSN: 2169-3536</identifier><identifier>DOI: 10.1109/ACCESS.2021.3104283</identifier><identifier>CODEN: IAECCG</identifier><language>eng</language><publisher>Piscataway: IEEE</publisher><subject>Airborne/spaceborne computers ; Completeness ; CubeSat ; embedded software ; Failure ; flight software ; fuzz testing ; Fuzzing ; Hardware ; Hardware-in-the-loop simulation ; Infant mortality ; Mission planning ; Multinational space ventures ; Nanosatellites ; open source ; Software ; Software development ; Software engineering ; software quality ; Software testing ; Space missions ; Space vehicles ; Testing</subject><ispartof>IEEE access, 2021, Vol.9, p.114008-114021</ispartof><rights>Copyright The Institute of Electrical and Electronics Engineers, Inc. (IEEE) 2021</rights><lds50>peer_reviewed</lds50><oa>free_for_read</oa><woscitedreferencessubscribed>false</woscitedreferencessubscribed><citedby>FETCH-LOGICAL-c408t-5554573b5e7aa54a453854b3bb0944c70be286e067ef30a255660591ca453ecd3</citedby><cites>FETCH-LOGICAL-c408t-5554573b5e7aa54a453854b3bb0944c70be286e067ef30a255660591ca453ecd3</cites><orcidid>0000-0001-5936-9708 ; 0000-0001-8087-1903 ; 0000-0002-7701-5839 ; 0000-0002-3370-2311 ; 0000-0001-8941-408X</orcidid></display><links><openurl>$$Topenurl_article</openurl><openurlfulltext>$$Topenurlfull_article</openurlfulltext><thumbnail>$$Tsyndetics_thumb_exl</thumbnail><linktohtml>$$Uhttps://ieeexplore.ieee.org/document/9512031$$EHTML$$P50$$Gieee$$Hfree_for_read</linktohtml><link.rule.ids>314,780,784,864,2102,4024,27633,27923,27924,27925,54933</link.rule.ids></links><search><creatorcontrib>Gutierrez, Tamara</creatorcontrib><creatorcontrib>Bergel, Alexandre</creatorcontrib><creatorcontrib>Gonzalez, Carlos E.</creatorcontrib><creatorcontrib>Rojas, Camilo J.</creatorcontrib><creatorcontrib>Diaz, Marcos A.</creatorcontrib><title>Systematic Fuzz Testing Techniques on a Nanosatellite Flight Software for Agile Mission Development</title><title>IEEE access</title><addtitle>Access</addtitle><description>The success of CubeSat space missions depends on the ability to perform properly in a harsh environment. A key component in space missions is the flight software, which manages all of the processes executed by the satellite on its onboard computer. Literature shows that CubeSat missions suffer high infant mortality, and many spacecraft failures are related to flight software errors, some of them resulting in complete mission loss. Extensive operation testing is the primary technique used by CubeSats developers to ensure flight software quality and avoid such failures. The "New Space" requirements pressure to add "agility" to the software development, which could limit the capacity to test. While advanced and beneficial software testing techniques are found in the software engineering field, CubeSat software solutions mostly rely on unit testing, software in the loop simulation, and hardware in the loop simulation. In this work, fuzz testing techniques were developed, implemented, and evaluated as a manner to expedite operational testing of CubeSats while maintaining their completeness. The impact of the tools was evaluated by using the three new 3U CubeSats under development at the University of Chile. We identified twelve bugs not covered by classic testing strategies in less than three days. These failures were reported, fixed, and characterized by the developers in eight sprint sessions. Our results indicate that fuzz testing improved the completeness of flight software testing through automation and with almost no development interruption. Although our approach has been tested on the SUCHAI flight software, it applies to systems that follow a similar architecture.</description><subject>Airborne/spaceborne computers</subject><subject>Completeness</subject><subject>CubeSat</subject><subject>embedded software</subject><subject>Failure</subject><subject>flight software</subject><subject>fuzz testing</subject><subject>Fuzzing</subject><subject>Hardware</subject><subject>Hardware-in-the-loop simulation</subject><subject>Infant mortality</subject><subject>Mission planning</subject><subject>Multinational space ventures</subject><subject>Nanosatellites</subject><subject>open source</subject><subject>Software</subject><subject>Software development</subject><subject>Software engineering</subject><subject>software quality</subject><subject>Software testing</subject><subject>Space missions</subject><subject>Space vehicles</subject><subject>Testing</subject><issn>2169-3536</issn><issn>2169-3536</issn><fulltext>true</fulltext><rsrctype>article</rsrctype><creationdate>2021</creationdate><recordtype>article</recordtype><sourceid>ESBDL</sourceid><sourceid>RIE</sourceid><sourceid>DOA</sourceid><recordid>eNpNUUtPGzEQXlUgFQG_gIulnhP82LF3j1FKAAnaQ-BseZ1xcLRZp7ZTRH49DosQc5nx6HvY_qrqitEpY7S9ns3nN8vllFPOpoLRmjfiR3XGmWwnAoQ8-Tb_rC5T2tBSTVmBOqvs8i1l3JrsLVnsDwfyhCn7YV26fRn8vz0mEgZiyB8zhGQy9r3PSBa9X79ksgwuv5qIxIVIZmvfI3n0KfnC-I3_sQ-7LQ75ojp1pk94-dnPq-fFzdP8bvLw9_Z-PnuY2Jo2eQIANSjRASpjoDY1iAbqTnQdbevaKtohbyRSqdAJajiAlBRaZo9ItCtxXt2PuqtgNnoX_dbENx2M1x-LENfaxPLQHjWXXDkl0LHiJJrGuBakstyV08paKFq_Rq1dDMdPyHoT9nEo19ccJG8LTvGCEiPKxpBSRPflyqg-hqPHcPQxHP0ZTmFdjSyPiF-MFhingol3niyKHQ</recordid><startdate>2021</startdate><enddate>2021</enddate><creator>Gutierrez, Tamara</creator><creator>Bergel, Alexandre</creator><creator>Gonzalez, Carlos E.</creator><creator>Rojas, Camilo J.</creator><creator>Diaz, Marcos A.</creator><general>IEEE</general><general>The Institute of Electrical and Electronics Engineers, Inc. (IEEE)</general><scope>97E</scope><scope>ESBDL</scope><scope>RIA</scope><scope>RIE</scope><scope>AAYXX</scope><scope>CITATION</scope><scope>7SC</scope><scope>7SP</scope><scope>7SR</scope><scope>8BQ</scope><scope>8FD</scope><scope>JG9</scope><scope>JQ2</scope><scope>L7M</scope><scope>L~C</scope><scope>L~D</scope><scope>DOA</scope><orcidid>https://orcid.org/0000-0001-5936-9708</orcidid><orcidid>https://orcid.org/0000-0001-8087-1903</orcidid><orcidid>https://orcid.org/0000-0002-7701-5839</orcidid><orcidid>https://orcid.org/0000-0002-3370-2311</orcidid><orcidid>https://orcid.org/0000-0001-8941-408X</orcidid></search><sort><creationdate>2021</creationdate><title>Systematic Fuzz Testing Techniques on a Nanosatellite Flight Software for Agile Mission Development</title><author>Gutierrez, Tamara ; Bergel, Alexandre ; Gonzalez, Carlos E. ; Rojas, Camilo J. ; Diaz, Marcos A.</author></sort><facets><frbrtype>5</frbrtype><frbrgroupid>cdi_FETCH-LOGICAL-c408t-5554573b5e7aa54a453854b3bb0944c70be286e067ef30a255660591ca453ecd3</frbrgroupid><rsrctype>articles</rsrctype><prefilter>articles</prefilter><language>eng</language><creationdate>2021</creationdate><topic>Airborne/spaceborne computers</topic><topic>Completeness</topic><topic>CubeSat</topic><topic>embedded software</topic><topic>Failure</topic><topic>flight software</topic><topic>fuzz testing</topic><topic>Fuzzing</topic><topic>Hardware</topic><topic>Hardware-in-the-loop simulation</topic><topic>Infant mortality</topic><topic>Mission planning</topic><topic>Multinational space ventures</topic><topic>Nanosatellites</topic><topic>open source</topic><topic>Software</topic><topic>Software development</topic><topic>Software engineering</topic><topic>software quality</topic><topic>Software testing</topic><topic>Space missions</topic><topic>Space vehicles</topic><topic>Testing</topic><toplevel>peer_reviewed</toplevel><toplevel>online_resources</toplevel><creatorcontrib>Gutierrez, Tamara</creatorcontrib><creatorcontrib>Bergel, Alexandre</creatorcontrib><creatorcontrib>Gonzalez, Carlos E.</creatorcontrib><creatorcontrib>Rojas, Camilo J.</creatorcontrib><creatorcontrib>Diaz, Marcos A.</creatorcontrib><collection>IEEE All-Society Periodicals Package (ASPP) 2005-present</collection><collection>IEEE Open Access Journals</collection><collection>IEEE All-Society Periodicals Package (ASPP) 1998-Present</collection><collection>IEEE Electronic Library (IEL)</collection><collection>CrossRef</collection><collection>Computer and Information Systems Abstracts</collection><collection>Electronics &amp; Communications Abstracts</collection><collection>Engineered Materials Abstracts</collection><collection>METADEX</collection><collection>Technology Research Database</collection><collection>Materials Research Database</collection><collection>ProQuest Computer Science Collection</collection><collection>Advanced Technologies Database with Aerospace</collection><collection>Computer and Information Systems Abstracts – Academic</collection><collection>Computer and Information Systems Abstracts Professional</collection><collection>DOAJ Directory of Open Access Journals</collection><jtitle>IEEE access</jtitle></facets><delivery><delcategory>Remote Search Resource</delcategory><fulltext>fulltext</fulltext></delivery><addata><au>Gutierrez, Tamara</au><au>Bergel, Alexandre</au><au>Gonzalez, Carlos E.</au><au>Rojas, Camilo J.</au><au>Diaz, Marcos A.</au><format>journal</format><genre>article</genre><ristype>JOUR</ristype><atitle>Systematic Fuzz Testing Techniques on a Nanosatellite Flight Software for Agile Mission Development</atitle><jtitle>IEEE access</jtitle><stitle>Access</stitle><date>2021</date><risdate>2021</risdate><volume>9</volume><spage>114008</spage><epage>114021</epage><pages>114008-114021</pages><issn>2169-3536</issn><eissn>2169-3536</eissn><coden>IAECCG</coden><abstract>The success of CubeSat space missions depends on the ability to perform properly in a harsh environment. A key component in space missions is the flight software, which manages all of the processes executed by the satellite on its onboard computer. Literature shows that CubeSat missions suffer high infant mortality, and many spacecraft failures are related to flight software errors, some of them resulting in complete mission loss. Extensive operation testing is the primary technique used by CubeSats developers to ensure flight software quality and avoid such failures. The "New Space" requirements pressure to add "agility" to the software development, which could limit the capacity to test. While advanced and beneficial software testing techniques are found in the software engineering field, CubeSat software solutions mostly rely on unit testing, software in the loop simulation, and hardware in the loop simulation. In this work, fuzz testing techniques were developed, implemented, and evaluated as a manner to expedite operational testing of CubeSats while maintaining their completeness. The impact of the tools was evaluated by using the three new 3U CubeSats under development at the University of Chile. We identified twelve bugs not covered by classic testing strategies in less than three days. These failures were reported, fixed, and characterized by the developers in eight sprint sessions. Our results indicate that fuzz testing improved the completeness of flight software testing through automation and with almost no development interruption. Although our approach has been tested on the SUCHAI flight software, it applies to systems that follow a similar architecture.</abstract><cop>Piscataway</cop><pub>IEEE</pub><doi>10.1109/ACCESS.2021.3104283</doi><tpages>14</tpages><orcidid>https://orcid.org/0000-0001-5936-9708</orcidid><orcidid>https://orcid.org/0000-0001-8087-1903</orcidid><orcidid>https://orcid.org/0000-0002-7701-5839</orcidid><orcidid>https://orcid.org/0000-0002-3370-2311</orcidid><orcidid>https://orcid.org/0000-0001-8941-408X</orcidid><oa>free_for_read</oa></addata></record>
fulltext fulltext
identifier ISSN: 2169-3536
ispartof IEEE access, 2021, Vol.9, p.114008-114021
issn 2169-3536
2169-3536
language eng
recordid cdi_ieee_primary_9512031
source IEEE Open Access Journals; DOAJ Directory of Open Access Journals; EZB-FREE-00999 freely available EZB journals
subjects Airborne/spaceborne computers
Completeness
CubeSat
embedded software
Failure
flight software
fuzz testing
Fuzzing
Hardware
Hardware-in-the-loop simulation
Infant mortality
Mission planning
Multinational space ventures
Nanosatellites
open source
Software
Software development
Software engineering
software quality
Software testing
Space missions
Space vehicles
Testing
title Systematic Fuzz Testing Techniques on a Nanosatellite Flight Software for Agile Mission Development
url https://sfx.bib-bvb.de/sfx_tum?ctx_ver=Z39.88-2004&ctx_enc=info:ofi/enc:UTF-8&ctx_tim=2024-12-19T17%3A31%3A00IST&url_ver=Z39.88-2004&url_ctx_fmt=infofi/fmt:kev:mtx:ctx&rfr_id=info:sid/primo.exlibrisgroup.com:primo3-Article-proquest_ieee_&rft_val_fmt=info:ofi/fmt:kev:mtx:journal&rft.genre=article&rft.atitle=Systematic%20Fuzz%20Testing%20Techniques%20on%20a%20Nanosatellite%20Flight%20Software%20for%20Agile%20Mission%20Development&rft.jtitle=IEEE%20access&rft.au=Gutierrez,%20Tamara&rft.date=2021&rft.volume=9&rft.spage=114008&rft.epage=114021&rft.pages=114008-114021&rft.issn=2169-3536&rft.eissn=2169-3536&rft.coden=IAECCG&rft_id=info:doi/10.1109/ACCESS.2021.3104283&rft_dat=%3Cproquest_ieee_%3E2562954372%3C/proquest_ieee_%3E%3Curl%3E%3C/url%3E&disable_directlink=true&sfx.directlink=off&sfx.report_link=0&rft_id=info:oai/&rft_pqid=2562954372&rft_id=info:pmid/&rft_ieee_id=9512031&rft_doaj_id=oai_doaj_org_article_2627f73ef1a54388af9567c2f543dcc5&rfr_iscdi=true