journal article·2024-11-11Open access

Software Development Process Considerations in GNSS-Denied Navigation Project for Drones

Sebastian Rutkowski, Cezary Szczepański

Applied Sciences· Volume 14· Issue 22

Abstract

This article will discuss the software development process utilised in the GNSS-denied navigation project targeted for drones. The process was implemented in an environment where software developers were oriented to developing a source code only and who showed great reluctance to follow any formal process. The mentioned process was a lightweight AGILE-based process that, by assumption, minimised developers’ engagement in activities other than those related to the source code development. The process described in this paper was designed to support and reflect product quality characteristics like functional completeness and correctness, time behaviour, resource utilisation, analysability, modifiability and testability in an “implicit” way. It allowed the developers to achieve those characteristics in an “invisible” manner. This allowed us to achieve acceptable product quality without needing to engage experienced architects. The described process needs improvements and extensions to satisfy certification needs. However, for the prototyping or research phases, it may be a perfect solution for facilitating future product modifications and saving costs. The process improves product quality by underlying the value of transparency, performing specific actions and incorporating specific attributes related to team tasks. This research also focused on finding a metric related to process acceptance in a given environment, resulting in a three-degree scale showing whether the process needed improvements or was accepted by the environment. Such a metric is a new finding and the metric implies that there are some factors that stand behind any process, which determine whether it will be friendly to the environment (people with their habits, work style, personal traits, etc.) or not. However, investigating factors that determine the process acceptance and that are connected to the environment traits were beyond the scope of this research and will be considered in the future.
Source: crossref · Quality: baseline

Research context

OpenAlex topics: Robotic Path Planning Algorithms · Inertial Sensor and Navigation · Robotics and Sensor-Based Localization

SciVX discovery tags are terminology-based. OpenAlex topics are source-provided classifications.

Affiliations

Lukasiewicz Research Network—Institute of Aviation, Al. Krakowska 110/114, 02-256 Warsaw, Poland

Funding

Lukasiewicz Research Network—Institute of Aviation

References (53)

Show source-provided references
1. AQAP 2210 (2015). Wymagania Uzupełniające NATO do AQAP-2110 i AQAP-2310 Dotyczące Zapewnienia Jakości Oprogramowania, ©Centrum Certyfikacji Jakości. Version 2, A ed.
2. Fowler, M. (2024, October 15). Is High Quality Software Worth the Cost?. Available online: https://martinfowler.com/articles/is-quality-worth-cost.html.
3. Martin, R.C. (2018). Czysta Architektura. Struktura i Design Oprogramowania. Przewodnik dla profesjonalistów, Helion SA.
4. Hooks, I. (2010). Why Johnny Can’t Write Requirements, Compliance Automation Inc.10.1002/j.2334-5837.2010.tb01153.x ↗
5. Hooks, I., and Wheatcraft, L. (2001). Scope—Magic. Alamo Chapter of the Project Management Institute (PMI).
6. (2011). Software Considerations in Airborne Systems and Equipment Certification (Standard No. RTCA-DO-178C).
7. Richards, M., and Ford, N. (2021). Podstawy Architektury Oprogramowania Dla Inżynierów, Helion SA.
8. Martin, R.C. (2020). Czysty Agile. Powrót do Podstaw, Helion SA.
9. Project Management Institute (2021). The Standard for Project Management and a Guide to the Project Management Body of Knowledge (PMBOK Guide), Project Management Institute Inc.. [7th ed.].
10. (2012). System Safety (Standard No. MIL-STD-882E).
11. O’Connor, P., and Kleyner, A. (2012). Practical Reliability Engineering, John Wiley & Sons. [5th ed.].
12. (2008). Introduction and Support Package: Guidance on the Concept and Use of the Process Approach for Management Systems (Standard No. ISO 9000).
13. (2008). Systems and Software Engineering—Software Lifecycle Processes, 2nd ed. (Standard No. ISO/IEC 12207-2008).
14. Axelos Global Best Practice (2019). PRINCE2®—Skuteczne Zarządzanie Projektami, The Stationery Office.
15. INCOSE (2015). Systems Engineering Handbook: A Guide for Systems Engineering Life Cycle Processes and Activities, International Council on Systems Engineering (INCOSE).
16. (2017). Space Product Assurance: Software Product Assurance, Revision 1 (Standard No. ECSS-Q-ST-80C).
17. AGILE Business Consortium (2019). AgilePM Agile Project Management Handbook V2, Buckland Media Group Limited. Polish ed.
18. Sommerville, I. (2020). Inżynieria Oprogramowania, Wydawnictwo Naukowe PWN SA. [X. ed.].
19. (1994). Software Development and Documentation (Standard No. MIL-STD-498).
20. (2013). Space Engineering: Software Engineering Handbook (Standard No. ECSS-E-HB-40A).
21. (2009). Space Engineering: Software (Standard No. ECSS-E-ST-40C).
22. Douglass, B.P. (2022). Agile Model-Based Systems Engineering Cookbook, Packt Publishing Ltd.. [2nd ed.].
23. Beck, K., Grenning, J., Martin, C.R., Beedle, M., Highsmith, J., Mellor, S., van Bennekum, A., Hunt, A., Schwaber, K., and Cockburn, A. (2024, October 15). Agile Manifesto. Manifesto for Agile Software Development. Available online: https://agilemanifesto.org/.
24. NASA Goddard Space Flight Center (1992). Recommended Approach to Software Development, Revision 3, NASA Goddard Space Flight Center.
25. (2024, October 15). Software Development Plan. Available online: https://acqnotes.com/acqnote/careerfields/software-development-plan.
26. United States Government US Army (2013). Defense Acquisition Guidebook, CreateSpace Independent Publishing Platform.
27. Roedler, G., Rhodes, G.H., Schimmoller, H., and Jones, C. (2010). Systems Engineering Leading Indicators Guide, Massachusetts Institute of Technology, INCOSE, and PSM. Version 2.0.
28. (2009). Unmanned Aerial Vehicles Systems Airworthiness Requirements (USAR), 1st ed (Standard No. STANAG 4671).
29. Glinz, M., van Loenhoud, H., Staal, S., and Bühne, S. (2020). IREB Handbook for the CPRE Foundation Level According to the IREB Standard, International Requirements Engineering Board (IREB) e.V.. Version 1.0.0.
30. Schwaber, K., and Sutherland, J. (2020). The Scrum Guide: The Definitive Guide to Scrum: The Rules of the Game, ©Ken Schwaber and Jeff Sutherland.
31. European Space Agency (ESA) (2008). Technology Readiness Levels Handbook for Space Applications, TEC-SHS. Issue 1, Revision 6.
32. GNSS-denied navigation system for the manoeuvring flying objects10.1108/AEAT-05-2023-0124 ↗
33. Szewczyk, R., Zieliński, C., and Kaliczyńska, M. (2022). Vision Based Navigation Securing the UAV Mission Reliability. Automation 2022: New Solutions and Technologies for Automation, Robotics and Measurement Techniques, Springer.10.1007/978-3-031-03502-9 ↗
34. (2011). Systems and Software Quality Requirements and Evaluation (SQuaRE)—Software Quality Models (Standard No. ISO/IEC 25010:2011). Available online: https://iso25000.com/index.php/en/iso-25000-standards/iso-25010.
35. (2024, October 15). Explanation of “Issue—Gitlab”. Available online: https://docs.gitlab.com/ee/user/project/issues/.
36. (2024, October 15). Project Plans. Available online: https://www.projectmanager.com/guides/project-planning.
37. Rierson, L. (2013). Developing Safety-Critical Software A Practical Guide for Aviation Software and DO-178C Compliance, CRC Press Taylor & Francis Group. Version Date: 20121016.
38. Cohn, M. (2024, October 15). Estimating with Use Case Points. Available online: https://www.mountaingoatsoftware.com/articles/estimating-with-use-case-points.
39. Wheatcraft, L.S. (2016). Thinking Ahead to System Verification and System Validation, Requirements Experts.
40. Wrycza, S., Marcinkowski, B., and Wyrzykowski, K. (2005). Język UML 2.0 w Modelowaniu Systemów Informatycznych, Helion SA.
41. Delligatti, L. (2014). SysML Distilled A Brief Guide to the Systems Modelling Language, Pearson Education Inc.. ISBN-13: 978-0-321-92786-6.
42. Cockburn, A. (2001). Writing Effective Use Cases, Addison-Wesley.
43. Black, R., Claesson, A., Coleman, G., Cornanguer, B., Forgacs, I., Linetzki, A., Linz, T., van der Aalst, L., Walsh, M., and Weber, S. (2014). Certified Tester. Foundation Level Extension Syllabus. Agile Tester, International Software Testing Qualifications Board (ISTQB). Version 2014.
44. Cerquozzi, R., Decoutere, W., Dussa-Zieger, K., Riverin, J.-F., Hryszko, A., Klonk, M., Pilaeten, M., Posthuma, M., Reid, S., and Riou du Cosquer, E. (2023). Certified Tester. Foundation Level Syllabus, International Software Testing Qualifications Board (ISTQB). v4.0.
45. International Institute of Business Analysis™ (IIBA®) (2015). BABOK® A Guide to the Business Analysis Body of Knowledge, International Institute of business Analysis. v3.
46. (2001). Configuration Management Guidance (Standard No. MIL-HDBK-61A).
47. (2024, October 15). Git Branching—Branches in a Nutshell. Available online: https://git-scm.com/book/en/v2/Git-Branching-Branches-in-a-Nutshell.
48. Beck, K. (2020). TDD. Sztuka Tworzenia Dobrego Kodu, Helion SA.
49. Shoan, W., and Jun, L. (2005). C++ Coding Standards and Style Guide, NASA Goddard Space Center-Mission Application Branch—Code 583.
50. Wheatcraft, L.S. (2011). Triple Your Chances of Project Success: Risk and Requirements, Requirements Experts.
51. US Department of Defense—Systems Management College (2001). Systems Engineering Fundamentals, Defense Acquisition University Press.
52. Hooks, I. (1993). Writing Good Requirements, Requirements Experts.
53. Chrabski, B., and Zmitrowicz, K. (2015). Inżynieria Wymagań w Praktyce, Wydawnictwo Naukowe PWN SA. [1st ed.].