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...
Gespeichert in:
Veröffentlicht in: | IEEE access 2021, Vol.9, p.114008-114021 |
---|---|
Hauptverfasser: | , , , , |
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 & 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 |