A Method for Modeling and Testing Near-Real-Time System Scenarios
Abstract
:1. Introduction
2. Related Work
3. Certification of UAV Operational Scenarios
3.1. System Requirements
3.2. System Use Cases
- UAV flight performing object reconnaissance with the use of sensors available on the platform at an altitude that allows maintaining communication with the GCS;
- UAV flight without contact with a GCS (autonomous flight), using sensors available on the platform.
- changing flight modes;
- Air traffic control (ATC) support;
- using the available payload for recognition;
- handling of dangerous situations in flight, in particular, uncontrolled leaving of the mission area, collision with a terrain obstacle or other aircraft, loss of radio link, and loss of GPS signal.
- Mission planning;
- Pre-flight procedure;
- Automatic start;
- Automatic landing;
- Automatic flight through predefined waypoints;
- Flight with manual control (with stabilization);
- Flight in other modes (to the point and circling);
- Parachute ejection;
- Return to base.
3.3. Linking Scenarios with Functions Affecting Flight Safety
- naming the hazardous situation;
- assigning the hazardous situation to one of the predefined groups;
- describing the hazardous situation unambiguously, not allowing for different interpretations;
- defining the expected effects on UAVs, humans, missions, and other systems;
- assigning a priority to the hazardous situation;
- presenting the methods of preventing the occurrence of hazardous situations;
- presenting the method of detecting the occurrence of a given situation;
- describing how the system reacts to the operation of the pilot or the operation of UAV systems (when there is no communication with the GCS).
4. Modeling the System Scenarios with Finite-State Machines
4.1. Validation and Verification of Requirements
4.2. System Dynamics Modeling with Communicating Extended Finite-State Machines
- S: a finite set of states;
- : an initial state;
- E: a set of events;
- P: a set of predicates;
- : a set of transition functions;
- A: a set of actions;
- M: a set of communicating messages;
- V: a set of variables;
- C: a set of input/output communication channels.
4.3. System Dynamics Modeling with UML State Machines
4.4. Detailing Scenarios with UML Sequence Diagrams
4.5. Transformation Rules of UML State Machines to Extended FSM
- S: a finite set of states;
- : an initial state;
- : a finite set of input parameters;
- : is a finite set of output parameters;
- V: a finite set of internal variables;
- T: a finite set of transitions.
- Rule 1—Sequence diagram
- Rule 2—Transition
- Rule 3—Switching elements: and
- Rule 4—
5. Sample Scenario
5.1. Handover Scenario Description
5.2. Generating Tests for a Handover Scenario
- decomposition of functionalities affecting system safety;
- designing independent modules that communicate with each other synchronously or asynchronously and assigning them to various resources of computers and devices;
- avoiding deep nesting, including complex loops, in algorithm design.
Algorithm 1: Path coverages in DAG |
Input: G Result: , K number of paths covering G Algorithm: 1. find cycles in G 2. convert G into DAG by removing back edges leaving only tree, forward, and cross edges (DFS) 3. assign each vertex without a successor to the set 4. select source vertex 5. k = 1 6. for each pair { = pathCoverage(,s,v); } end |
Algorithm 2: pathCoverage |
Input: G, s—source vertex, t—target vertex Result: P—path coverage Algorithm: Ciurea and Ciupala [36] 1. establish a feasible flow 2. establish the minimum flow from a given feasible flow |
6. Discussion and Limitations
7. Conclusions
Author Contributions
Funding
Data Availability Statement
Conflicts of Interest
Abbreviations
ATC | Air traffic control |
CEFSM | Communicating extended finite-state machine |
DAG | Directed acyclic graph |
DFS | Depth first search |
EFIS | Electronic flight instrument system |
EFSM | Extended finite-state machine |
FHA | Functional Hazard Analysis |
FSM | Finite-state machine |
GCS | Ground control station |
GDT | Ground data terminal |
MBD | Model-based development |
MBSE | Model-based system engineering |
MBT | Model-based testing |
MPC | Minimum path coverage |
OCL | Object Constraint Language |
UAV | Unmanned aerial vehicle |
UML | Unified modeling language |
VSM | Vehicle-specific module |
References
- Górski, T. The 1+5 Architectural Views Model in Designing Blockchain and IT System Integration Solutions. Symmetry 2021, 13, 2000. [Google Scholar] [CrossRef]
- STANAG 4586, Ed: 4., Standard Interfaces of UA Control System (UCS) for NATO UA Interoperability-AEP-84 Edition A. Available online: https://nso.nato.int/nso/nsdd/main/standards?search=4586 (accessed on 10 January 2024).
- Architecture Capability Team. NATO Architecture Framework Ver. 4. Technical Report. NATO. Enclosure 1. AC/322-D(2018)0002-REV1. 2018. Available online: https://www.nato.int/cps/en/natohq/topics_157575.htm?selectedLocale=en (accessed on 10 January 2024).
- RTCA. DO178-Software Considerations in Airborne Systems and Equipment Certification. 2011. Available online: https://my.rtca.org/productdetails?id=a1B36000001IcmwEAC (accessed on 10 January 2024).
- OMG. OMG System Modeling Language, Object Management Group. December 2019. Available online: https://www.omg.org/spec/category/modeling/ (accessed on 10 January 2024).
- RTCA. DO-331 Model-Based Development and Verification Supplement to DO-178C and DO-278A. 2011. Available online: https://my.rtca.org/productdetails?id=a1B36000001IcfiEAC (accessed on 10 January 2024).
- RTCA. DO-332 Object-Oriented Technology and Related Techniques Supplement to DO-178C and DO-278A. 2011. Available online: https://my.rtca.org/productdetails?id=a1B36000001IcfgEAC (accessed on 10 January 2024).
- RTCA. DO-333 Formal Methods Supplement to DO-178C and DO-278A. 2011. Available online: https://my.rtca.org/productdetails?id=a1B36000001IcfeEAC (accessed on 10 January 2024).
- Hilderman, V. The Aviation Development Ecosystem: Applying DO-178C, ARP4754A, DO-254, & Related Guideline, 1st ed.; AFusion: New York, NY, USA, 2021. [Google Scholar]
- Lu, G.; Miao, H. An Approach to Generating Test Data for EFSM Paths Considering Condition Coverage. Electron. Notes Theor. Comput. Sci. 2014, 309, 13–29. [Google Scholar] [CrossRef]
- Huang, J.C. An Approach to Program Testing. ACM Comput. Surv. 1975, 7, 113–128. [Google Scholar] [CrossRef]
- Dwinandana, M.; Riskiana, R.R.; Kusumo, D.S. Extended Finite State Machine-Model based Testing on Mobile Application. In Proceedings of the 2022 1st International Conference on Software Engineering and Information Technology (ICoSEIT), Bandung, Indonesia, 22–23 November 2022; pp. 41–45. [Google Scholar] [CrossRef]
- Kalaji, A.S.; Hierons, R.M.; Swift, S. Generating Feasible Transition Paths for Testing from an Extended Finite State Machine (EFSM). In Proceedings of the 2009 International Conference on Software Testing Verification and Validation, Denver, CO, USA, 1–4 April 2009; pp. 230–239. [Google Scholar]
- Gannous, A.S. Certification-Driven Testing of Safety-Critical Systems. Ph.D. Dissertation, University of Denver, Denver, CO, USA, 2009. [Google Scholar]
- Rocha, M.; Simão, A.; Sousa, T. Model-based test case generation from UML sequence diagrams using extended finite state machines. Softw. Qual. J. 2021, 29, 597–627. [Google Scholar] [CrossRef]
- Cartaxo, E.G.; Neto, F.G.O.; Machado, P.D.L. Test case generation by means of uml sequence diagrams and labeled transition systems. In Proceedings of the IEEE International Conference on Systems, Man and Cybernetics, Montreal, QC, Canada, 7–10 October 2007; pp. 1292–1297. [Google Scholar] [CrossRef]
- Brosch, P.; Egly, U.; Gabmeyer, S.; Kappel, G.; Seidl, M.; Tompits, H. Towards Scenario-Based Testing of UML Diagrams, 1st ed.; Springer: Berlin/Heidelberg, Germany, 2012; pp. 149–155. [Google Scholar]
- Tripathy, A.; Mitra, A. Test Case Generation Using Activity Diagram and Sequence Diagram. In International Conference on Advances in Computing; Advances in Intelligent Systems and Computing; Kumar, M.A.R.S., Kumar, T., Eds.; Springer: New Delhi, India, 2013; Volume 174, pp. 121–129. [Google Scholar] [CrossRef]
- Muthusamy, M.; Badurudeen, G. A new approach to derive test cases from sequence diagram. J. Inf. Technol. Softw. Eng. 2014, 4, 2–5. Available online: https://api.semanticscholar.org/CorpusID:33347969 (accessed on 10 January 2024).
- Ntafos, S.C.; Hakimi, S.L. On Path Cover Problems in Digraphs and Applications to Program Testing. IEEE Trans. Softw. Eng. 1979, SE-5, 520–529. [Google Scholar] [CrossRef]
- Caceres, M.; Mumey, B.; Toivonen, S.; Tomescu, A.I. Minimum Path Cover: The Power of Parameterization. Available online: https://arxiv.org/pdf/2308.08960v1.pdf (accessed on 10 January 2024).
- Foucaud, F.; Kovse, M. Identifying path covers in graphs. J. Discret. Algorithms 2013, 23, 21–34. [Google Scholar] [CrossRef]
- Delligatti, L. SysML Distilled: A Brief Guide to the Systems Modeling Language, 1st ed.; Addison-Wesley Professional: Crawfordsville, IA, USA, 2013. [Google Scholar]
- Zoughbi, G.; Briand, L.; Labiche, Y. Modeling safety and airworthiness (RTCA DO-178B) information: Conceptual model and UML profile. Softw. Syst. Model. 2011, 10, 337–367. [Google Scholar] [CrossRef]
- Stecz, W.; Gromada, K. Designing a Reliable UAV Architecture Operating in a Real Environment. Appl. Sci. 2022, 12, 294. [Google Scholar] [CrossRef]
- Chodnicki, M.; Siemiatkowska, B.; Stecz, W.; Stępień, S. Energy Efficient UAV Flight Control Method in an Environment with Obstacles and Gusts of Wind. Energies 2022, 15, 3730. [Google Scholar] [CrossRef]
- Stecz, W.; Kowaleczko, P. Designing Operational Safety Procedures for UAV According to NATO Architecture Framework. In Proceedings of the 16th International Conference on Software Technologies ICSOFT, SCITEPRESS, Virtual Event, 6–8 July 2021. [Google Scholar]
- Kim, S.-H.; Negash, L.; Choi, H.-L. Cubature Kalman Filter Based Fault Detection and Isolation for Formation Control of Multi-UAVs. IFAC-PapersOnLine 2016, 49, 63–68. [Google Scholar] [CrossRef]
- Park, H.; Oh, H.; Tahk, M. UAV collision avoidance based on geometric approach. In Proceedings of the 2008 SICE Annual Conference, Chofu, Japan, 20–22 August 2008. [Google Scholar]
- Lee, D.; Yannakakis, M. Principles and methods of testing finite state machines—A survey. Proc. IEEE 1996, 84, 1090–1123. [Google Scholar] [CrossRef]
- Bang-Jensen, J.; Gutin, G. Digraphs: Theory, Algorithms and Applications, 2nd ed.; Springer: London, UK, 2009. [Google Scholar]
- Cormen, T.H.; Leiserson, C.E.; Rivest, R.L.; Stein, C. Introduction to Algorithms, 2nd ed.; MIT Press and McGraw-Hill: New York, NY, USA, 2001; pp. 540–549. [Google Scholar]
- Androutsopoulos, K.; Clark, D.; Harman, M.; Hierons, R.; Li, Z.; Tratt, L. Amorphous Slicing of Extended Finite State Machines. IEEE Trans. Softw. Eng. 2012, 39, 892–909. [Google Scholar] [CrossRef]
- Shimon, E. Graph Algorithms, 2nd ed.; Cambridge University Press: Cambridge, UK, 2011; pp. 46–48. [Google Scholar]
- Sedgewick, R. Algorithms in C++: Graph Algorithms, 3rd ed.; Pearson Education: London, UK, 2002; pp. 139–157. [Google Scholar]
- Ciurea, E.; Ciupala, L. Sequential and parallel algorithms for minimum flows. J. Appl. Math. Comput. 2004, 15, 53–75. [Google Scholar] [CrossRef]
- Ahuja, R.; Magnanti, T.; Orlin, J. Network Flows. Theory, Algorithms and Applications, 1st ed.; Prentice Hall, Inc.: Englewood Cliffs, NJ, USA, 1993. [Google Scholar]
- Ahuja, R.K.; Kodialam, M.; Mishra, A.K.; Orlin, J.B. Computational investigations of maximum flow algorithms. Eur. J. Oper. Res. 1997, 97, 509–542. [Google Scholar] [CrossRef]
- Cruz-Mejia, O.; Letchford, A.N. A survey on exact algorithms for the maximum flow and minimum-cost flow problems. Networks 2023, 82, 167–176. [Google Scholar] [CrossRef]
- Górski, T. Verification of Architectural Views Model 1+5 Applicability. In Computer Aided Systems Theory—EUROCAST 2019; Moreno-Díaz, R., Pichler, F., Quesada-Arencibia, A., Eds.; LNCS; Springer: Cham, Switzerland, 2020; Volume 12013, pp. 499–506. [Google Scholar] [CrossRef]
- Pengbin, H.; Sui, A.; Wu, J. Identity Management and Authentication of a UAV Swarm Based on a Blockchain. Appl. Sci. 2022, 12, 10524. [Google Scholar] [CrossRef]
- Cimatti, A.; Clarke, E.M.; Giunchiglia, E.; Giunchiglia, F.; Pistore, M.; Roveri, M.; Sebastiani, R.; Tacchella, A. NuSMV 2: An OpenSource Tool for Symbolic Model Checking. In Proceedings of the International Conference on Computer-Aided Verification (CAV 2002), Copenhagen, Denmark, 27–31 July 2002. [Google Scholar]
- Abuin, A.; Bolotov, A.; Hermo, M.; Lucio, P. Tableaux and sequent calculi for CTL and ECTL: Satisfiability test with certifying proofs and models. J. Log. Algebr. Methods Program. 2023, 130, 100828. [Google Scholar] [CrossRef]
- Kesten, Y.; Pnueli, A. A compositional approach to CTL* verification. Theor. Comput. Sci. 2005, 331, 397–428. [Google Scholar] [CrossRef]
ID | Function | Emergency State | Flight Phase | Expected Effect on UAVs, Humans, Missions, Other Systems | Emergency Classification | Verification Method | Comments |
---|---|---|---|---|---|---|---|
100.1 | Ensuring stability and control | ||||||
100.1.1 | Determination of spatial orientation and speed of UAV | Inability to determine spatial orientation in the range, roll, pitch, and yaw of the air platform | All phases except PARACHUTE | UAV loss: a threat to humans | II | Tests in hardware in the loop simulator | Method of responding to the occurrence of an emergency broken down into the operation of the pilot, when communication between the GCS and UAV is active, and autonomous operation of the UAV in the event of data link loss |
ID | Transition | Input Samples | Output Time [s] |
---|---|---|---|
1 | S0 → S1 | setDLGConfig | |
2 | S1 → S2 | sendDLGConfig(rFreq) | |
3 | S2 → S3 | setChannel(rFreq) | |
4 | S3 → S4 | setChannel(rFreq,antennaID) | |
5 | S4 → S5 | getGCSpos(GCSid) | |
6 | S5 → S6 | connect(UAVid) | OK |
7 | S6 → S7 | connectionWithGCASet() | |
8 | S7 → S8 | connectionSet(status) | |
9 | S8 → S9 | sendMessage(GCS2ready) | |
10 | S9 → S10 | message(DLOK) | |
11 | S10 → S11 | ack() | connOK |
12 | S11 → S12 | ack() | connOK |
13 | S12 → S13 | ack() | connOK |
14 | S13 → S14 | channelReady() | |
15 | S5 → S15 | connectionTimeout() | |
16 | S15 → S16 | ack() | connNOK |
17 | S16 → S17 | ack() | connNOK |
18 | S17 → S18 | channelNotReady() |
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2024 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).
Share and Cite
Górski, T.; Stecz, W. A Method for Modeling and Testing Near-Real-Time System Scenarios. Appl. Sci. 2024, 14, 2023. https://doi.org/10.3390/app14052023
Górski T, Stecz W. A Method for Modeling and Testing Near-Real-Time System Scenarios. Applied Sciences. 2024; 14(5):2023. https://doi.org/10.3390/app14052023
Chicago/Turabian StyleGórski, Tomasz, and Wojciech Stecz. 2024. "A Method for Modeling and Testing Near-Real-Time System Scenarios" Applied Sciences 14, no. 5: 2023. https://doi.org/10.3390/app14052023
APA StyleGórski, T., & Stecz, W. (2024). A Method for Modeling and Testing Near-Real-Time System Scenarios. Applied Sciences, 14(5), 2023. https://doi.org/10.3390/app14052023