Modeling and Analysis of Unmanned Aerial Vehicle System Leveraging Systems Modeling Language (SysML)

: The use of unmanned aerial vehicles (UAVs) has seen a signiﬁcant increase over time in several industries such as defense, healthcare, and agriculture to name a few. Their affordability has made it possible for industries to venture and invest in UAVs for both research and commercial purposes. In spite of their recent popularity; there remain a number of difﬁculties in the design representation of UAVs, including low image analysis, high cost, and time consumption. In addition, it is challenging to represent systems of systems that require multiple UAVs to work in cooperation, sharing resources, and complementing other assets on the ground or in the air. As a means of compensating for these difﬁculties; in this study; we use a model-based systems engineering (MBSE) approach, in which standardized diagrams are used to model and design different systems and subsystems of UAVs. SysML is widely used to support the design and analysis of many different kinds of systems and ensures consistency between the design of the system and its documentation through the use of an object-oriented model. In addition, SysML supports the modeling of both hardware and software, which will ease the representation of both the system’s architecture and ﬂow of information. The following paper will follow the Magic Grid methodology to model a UAV system across the SysML four pillars and integration of SysML model with external script-based simulation tools, namely, MATLAB and OpenMDAO. These pillars are expressed within standard diagram views to describe the structural, behavior, requirements, and parametric aspect of the UAV. Finally, the paper will demonstrate how to utilize the simulation capability of the SysML model to verify a functional requirement.


Introduction
A UAV system generally consists of the air vehicle, ground control system (GCS), mission planning and control stations (MPCS), payload and communications links, navigation system, and the launch, recovery, and transportation systems.The air vehicle consists of subsystems such as the airframe, engine, data connection, stabilizing devices, and flight command, as well as fuel, electrical energy supply, and fundamental construction.The payload consists of various sensors and equipment, such as color cameras, radar, etc. Information is collected by sensors for processing and utilized by drones.The information is transmitted to the central operation center and also saved in the drone for easy retrieval.The navigation system helps the UAV to identify its location because it is necessary for autonomous flying.The launch and recovery system assists the UAV during autonomous takeoff.The primary function of the communication system is to facilitate interconnects between the control station and the air vehicle [1].GCS or MPCS is the UAV system's operational control center and makes it possible to create a task and track a UAV flight [2].
There is some limitation to UAVs, for instance, the risk of cybersecurity breaches in UAV systems, The data transmission channel's flaws, the power supply limits of UAVs, limited flight time, and untrustworthy communication models [3].To overcome this problem, we need to establish a well-defined model of UAVs systems.Presently different illogical diagrams are used to represent UAVs systems that are not consistent nor comprehensive [4].To fill this void, this study suggests utilizing model-based systems engineering (MBSE) to represent the UAV system model.MBSE brings the discipline of systems engineering into a modeling paradigm, while the SysML language adds rigor and definition to the ways a system model can be represented [5].To apply the MBSE approach this study applies the OMG standard modeling language called the system modeling language (SysML).SysML is a multipurpose graphical language that allows users to see many aspects of a system's architecture.SysML provides a set of syntax and semantics for system definition that can also be represented in a series of standardized diagrams that depicts the many elements that the systems engineering field requires [6].The objectives of the study are summarized as follows:

•
To apply the MBSE approach to provide a standardized model of the design of UAV systems to improve safety, protection, and reduce human error;

•
To illustrate the use of the SysML diagram to increase transparency, traceability, and easy understanding of the interaction of elements of UAVs system and subsystems;

•
To demonstrate the interoperability of COTS simulation software and the SysML model to verify functional requirements;

•
To contribute to the literature on the application of MBSE in UAVs.
The remainder of the paper is organized in the following manner: Section 2 represents the literature on the use of SysML on UAV systems.Section 3 outlines the modeling procedure of the UAVs system with the help of SysML.Section 4 presents the SysML simulation.Section 5 provides a discussion of this study.Finally, the paper ends with the conclusion and the scope for future avenues.

Related Work
The application of SysML in UAVs has increased in recent years.For instance, Dzielski and Blackburn [7] presented a decision framework, as well as its implementation in SysML, which is demonstrated by the design of a hypothetical surveillance drone.In this study, an analytical approach based on SysML was used in conjunction with a multi-dimensional design and optimization tool (MDAO) in order to address a hypothetical surveillance drone problem.As a result of this study, it was concluded that in SysML, it was possible to specify a decision framework that could be implemented with an underlying framework for crossdomain analysis.A recent study by Apvrille,Sannes [8] demonstrated the advantages of using an MBSE approach in the design of UAVs using SysML.Also, structural, behavioral, and requirement characteristics were considered when designing the architecture of UAVs.In Steurer, Morozov [9] study, they analyzed the UAV dependability profile using SysML.Dual-graph error propagation model (DEPM) was part of their methodology, while a method for converting SysML models to DEPM was developed.Xing-hua and Yun-feng [10] used a SysML-compliant tool called Rhapsody and Simulink to design UAV flight control systems.They created the virtual prototype of the Predator UAV to evaluate and confirm the system's expected capabilities and behaviors.Queiroz and Braga [11] described a method for developing unmanned aerial vehicle (UAV) families that combines product line engineering (PLE) and model-driven engineering (MDE).The team recommended using SysML and the MARTE UML profile in order to assist with requirement specification, design, validation, simulation, and final code generation.They also suggested the use of the common variability language (CVL).The present study provides a method for developing family models of UAVs.Hernandez [12] developed an unmanned aerial systems (UAS) model using SysML and the No Magic tool Cameo Systems Modeler to monitor the information flow required for the operator situational awareness (SA).The results of the study showed that it is feasible to measure the elements of information acquired from the environment and transmitted to the operator via the UAS.Aljehani, Inoue [13] suggested a multi-UAV assessment with varied airframes.This study depicted a particle swarm optimization (PSO) method using a SysML activity diagram and deploying it to a multi-UAV with chosen airframes.The study's findings revealed varied fitness values and the optimal site for various UAV airframes.MacCarthy [14] created the architecture of drone systems used for surveillance and delivery services by using SysML.They used structural and behavior models to represent the different architectural aspects of drones.They provided a reference design of the drone system and identified the type of analyses needed for designing a system.De Saqui-Sannes [15] presented a trade-off analysis in an MBSE approach that links SysML with "decision points" and this approach was examined using a model of multi-core UAVs and verified using a plug-in that they created using Papyrus and Eclipse.The algorithm in the study converts the expanded SysML model into a CSP optimization problem (CSMOP), which involves decision variables, limitations, and objective functions.This study showed that it is feasible to create the problem description file using a SysML extension and its plug-in rather than manually linking the SysML model with an optimization solution.Specking, Parnell [16] laid the groundwork for implementing the set-based design (SBD) with MBSE and an integrated framework for trade space exploration (TSE), demonstrating the methodology using an unmanned aerial vehicle (UAV) case study.This study demonstrated how the proposed approach could be utilized to (1) guide the formulation of system design requirements, (2) make a comparison of a greater number of design options, (3) upgrade the framework in real-time, and (4) offer additional data to assist decision-makers in selecting better performing designs at a reasonable cost.Aïello, Kandel [17] addressed a case study of MBSE and multidisciplinary design analysis and optimization (MDAO), with a drone as the case study and an emphasis on battery usage.In this study, a timed automata model of the battery was introduced to a SysML model of the drone, and results from the MDAO analysis were loaded into the battery's SysML model.This study provided a way to increase self-confidence in some model values, increase self-confidence in the accomplishment of requirements, and refine some requirements values more precisely.Srivastava [18] used model-based systems engineering techniques to develop the theoretical design of unmanned aerial vehicles.The study's approach was performed by assessing aircraft performance models, obtaining parameters of input and output from the models, generating model chains, and executing the models in the MATLAB programming language.The findings of this study offered a foundation for formalizing models typically used in conceptual airplanes, resulting in a more structured framework for the models to be implemented and reducing discrepancy and inaccuracies.Aloui, Hammadi [19] presented an MBSE method-based continuous methodology to design an efficient swarm of UAVs, and their approach was divided into the following three stages of the work: swarm modeling, swarm simulations, and swarm deployment.They used domain-specific language (DSL) to construct a new SysML model to represent the swarm mission, UAV swarm hardware requirements, and application platform of the swarm system.Wang, Sun [20] presented a technique for tracing modeling of command systemof-systems requirements based on SysML to address the issue of requirements tracing for adaptation strategies under the features of huge requirements, complicated relationships, and quick changes in the UAV command structure.In the technique, a multi-layer entire network built on SysML is employed to create a tracing model of the command systemof-systems needs through the top-down approach of assessing system-of-system needs.The outlined technique for creating a requirement tracing model made it easier to quickly develop a model of the command system-of-systems capacity needs and capture the topdown route that these requirements take.
Table 1 below represents the current theme of the application of SysML in UAVs.Providing a method for producing family models of UAV.
Hernandez [12] Integration of No Magic's Cameo Systems Modeler and external SA analysis tools To monitor the information flow that helps operator situation awareness (SA), and the results of the study showed that it is feasible to measure the elements of information acquired from the environment and transmitted to the operator via the UAS.

Aljehani, Inoue [13]
A particle swarm optimization (PSO) method using a SysML activity diagram Deploying the method to a multi-UAV with chosen airframes and the study's findings revealed varied fitness values and the optimal site for various UAV airframes.
MacCarthy [14] SysML structural and behavioral diagrams Describing reference design of the drone system and identifying type of the analysis needed for designing a system.

Dzielski and Blackburn [7]
A SysML approach using a multi-dimensional design and optimization (MDAO) tool Presenting a decision framework and implementing it to a hypothetical drone and also concluded that it is feasible.
Leserf, de Saqui-Sannes [15] MBSE, Sysml, Papyrus, Eclipse Trade-off analysis in multi-core UAVs and described that it is feasible to create the problem description file to use a SysML extension and their plug-in Specking, Parnell [16] Combination of set-based design (SBD) and MBSE An integrated framework for trade space exploration (TSE) Aïello, Kandel [17] Multidisciplinary design analysis and optimization (MDAO) and MBSE On battery usages of UAVs and provided a way to increase self-confidence in some model values, increase self-confidence in the accomplishment of requirements, and refine some requirements values more precisely

Srivastava [18] MBSE
The theoretical design of UAVs and provided a basis for formalizing models frequently used in conceptual airplanes, leading to a more structured framework for the models to be implemented, and lowering disparity and errors.

Wang, Sun [20] SysML
To solve the issue of requirements tracing for adaption strategies underneath the circumstances of significant demands, intricate linkages, and rapid changes in the UAV command structure and made it easier to quickly develop a model of the command system-of-systems capacity needs.
In this literature review, not all the features of the SysML language have been discussed as being relevant to UAVs.A variety of structural, behavioral, and requirement features of UAV systems have been discussed in the literature, but very little information has been found on the SysML simulation of behavior diagrams to evaluate UAV functional parameters against requirements for UAV systems.This study pursues the following research questions: 1.
How can the four pillars of the magic grid approach be applied to unmanned aerial vehicles domain?How to integrate external tool (such as MATLAB and MDAO) with SysML to simulate and optimize any potential parameters of unmanned aerial vehicle?
Within this study, we fill the void where behavioral, requirement, parametric, and structural aspects of the UAV have been modeled, including behavior modeling and simulation (through activity and parametric diagram) to cover different systems engineering design aspects for UAV.In addition, example basic calculations of UAV design and analysis were performed in external simulation tools, including MATLAB and OpenMDAO, and the results were integrated back into the SysML model that enables requirements verification and design decisions to be made within the SysML model.In addition to that, the paper demonstrated the integration of multiple tools with multiple SysML diagrams, which enables the potential users to determine which approach is easier for their particular modeling requirements.For example, the integration of external tools with a parametric diagram will be more efficient to enable complex calculations of the system than the activity diagram.On the other hand, an activity diagram enables the user to understand the flow and mechanics of the simulation/calculation being carried out by the external tool.

MBSE-Based Modeling Approach
Due to their efficiency and effectiveness in the delivery of food, medicine, and postal orders, drones have become increasingly popular in the logistics sector [21].UAVs are also used in several countries for the purposes of security and criminal investigation [22].As a method of border control and law enforcement, UAVs are heavily utilized in military operations as well [23].To represent the UAV system, different types of diagrams of SysML are utilized, which describe the requirements, structure, and behavioral aspects of the UAV system.A requirement diagram is used to describe the requirements of the UAV system.A requirement diagram is a useful tool for practitioners to represent needs and track them across many components of the UAV system [24].A block definition diagram (BDD) is developed using different components and linkages, such as blocks, composition, and association, to represent the hierarchy, ownership, and interfaces of a standard UAV system [25].Another type of SysML diagram is the internal block diagram (IBD), which serves as a supplement to the BDD by enabling users to understand the relationships among certain blocks and the information flow between them [5].
The behavioral aspect of the UAV system is described by using a use case diagram and activity diagram.In the use case diagram, possible interactions between users and stakeholders with a UAV system are illustrated graphically [26].An activity diagram is a type of behavioral diagram that shows the flow of functionality as "actions" and can have logic gates to represent multiple potential pathways of behavior.This type of diagram can be used to communicate information to various stakeholders [27].

Development of Requirement Model
In this study requirement diagram is used to represent the requirements with text specifications.A requirement diagram represents text-based requirements and their relationships with other requirements and/or model elements and test cases to support requirements traceability [28].Relationship types between requirements and requirements or other elements are containment, derive, refine, satisfy, verify, and trace.
In Figure 1, Functional Requirement-7 is satisfied by the "Drag Force" system context block.By having this relationship, the requirement can be verified using the simulation capability within the SysML tool.A requirements table is another form of requirement diagram, which can import or export the requirements to and from an excel sheet [28].In Figure 2, the above functional requirements are shown in an easy-to-read "Requirements or other elements are containment, derive, refine, satisfy, verify, and trace.
In Figure 1, Functional Requirement-7 is satisfied by the "Drag Force" system context block.By having this relationship, the requirement can be verified using the simulation capability within the SysML tool.A requirements table is another form of requirement diagram, which can import or export the requirements to and from an excel sheet [28].In Figure 2, the above functional requirements are shown in an easy-to-read "Requirements Table Diagram".

Construction of Structural Model
To visualize the overall organization of the model, a package diagram was initially created.The package diagram is simplified, lightweight, easy to implement, and recognized as module interconnection language.The package diagram converts the system into the module, which executes features of the product line for the control system version [29].The package diagram also defines the dependencies and interconnections among or other elements are containment, derive, refine, satisfy, verify, and trace.
In Figure 1, Functional Requirement-7 is satisfied by the "Drag Force" system context block.By having this relationship, the requirement can be verified using the simulation capability within the SysML tool.A requirements table is another form of requirement diagram, which can import or export the requirements to and from an excel sheet [28].In Figure 2, the above functional requirements are shown in an easy-to-read "Requirements Table Diagram".

Construction of Structural Model
To visualize the overall organization of the model, a package diagram was initially created.The package diagram is simplified, lightweight, easy to implement, and recognized as module interconnection language.The package diagram converts the system into the module, which executes features of the product line for the control system version [29].The package diagram also defines the dependencies and interconnections among

Construction of Structural Model
To visualize the overall organization of the model, a package diagram was initially created.The package diagram is simplified, lightweight, easy to implement, and recognized as module interconnection language.The package diagram converts the system into the module, which executes features of the product line for the control system version [29].The package diagram also defines the dependencies and interconnections among other packages.Membership notations are also used in the package diagram to represent different membership [30].
In Figure 3, a package diagram is shown, representing the overall structure of the system model.A general package called "Model" is created to standardize the system.The general package is divided into the following three main packages: requirement, structural, and behavioral, as seen in Figure 3.The structural package contains the following two types of structural diagrams: block definition diagrams (BDD) and internal block diagrams (IBD).The package named Behavior contains use case diagrams, which represent the interaction of various actors with the systems, and activity diagram, which represent the different sequential activity of the system, and contain state machine diagram, which represents the concept of operations (ConOps) and different states of a system.The package called Requirements contains a requirement diagram of the system.structural, and behavioral, as seen in Figure 3.The structural package contains the following two types of structural diagrams: block definition diagrams (BDD) and internal block diagrams (IBD).The package named Behavior contains use case diagrams, which represent the interaction of various actors with the systems, and activity diagram, which represent the different sequential activity of the system, and contain state machine diagram, which represents the concept of operations (ConOps) and different states of a system.The package called Requirements contains a requirement diagram of the system.BDD visualizes the structure of the system [31].A block can have different stereotypes depending on its usage [32].For example, the system context stereotype is frequently used for defining the context of a simulation to be executed.BDD visualizes the structure of the system [31].A block can have different stereotypes depending on its usage [32].For example, the system context stereotype is frequently used for defining the context of a simulation to be executed.BDD visualizes the structure of the system [31].A block can have different stereotypes depending on its usage [32].For example, the system context stereotype is frequently used for defining the context of a simulation to be executed.An internal block definition diagram (IBD) is used to depict the relationships between the various subsystems of unmanned aerial vehicles.An internal block diagram (IBD) defines the system's inherent architecture as well as the linkages between its components.Standard and flow ports represent the interfaces via which the components communicate, and interactions are expressed by pathways between the appropriate ports termed "connectors".If a component fails, the failure will be propagated across the system through these channels [33].More precisely, an internal block diagram (IBD) represents interconnection, interfaces, and ports between the parts of a block [25].Signals can be sent from one port to another port through connectors to depict the transfer of data between the parts.An internal block definition diagram (IBD) is used to depict the relationships between the various subsystems of unmanned aerial vehicles.An internal block diagram (IBD) defines the system's inherent architecture as well as the linkages between its components.Standard and flow ports represent the interfaces via which the components communicate, and interactions are expressed by pathways between the appropriate ports termed "connectors".If a component fails, the failure will be propagated across the system through these channels [33].More precisely, an internal block diagram (IBD) represents interconnection, interfaces, and ports between the parts of a block [25].Signals can be sent from one port to another port through connectors to depict the transfer of data between the parts.An internal block definition diagram (IBD) is used to depict the relationships between the various subsystems of unmanned aerial vehicles.An internal block diagram (IBD) defines the system's inherent architecture as well as the linkages between its components.Standard and flow ports represent the interfaces via which the components communicate, and interactions are expressed by pathways between the appropriate ports termed "connectors".If a component fails, the failure will be propagated across the system through these channels [33].More precisely, an internal block diagram (IBD) represents interconnection, interfaces, and ports between the parts of a block [25].Signals can be sent from one port to another port through connectors to depict the transfer of data between the parts.

Development of Behavior Model
Here, the following three kinds of behavior diagrams are developed: use case diagram, activity diagram, and state machine diagram.A use case diagram describes the relationship between the system functions and actors to visualize the use case scenarios [34].
Figure 8 represents the interaction of different actors in the surveillance area with the UAV system using a case diagram.

Development of Behavior Model
Here, the following three kinds of behavior diagrams are developed: use case diagram, activity diagram, and state machine diagram.A use case diagram describes the relationship between the system functions and actors to visualize the use case scenarios [34].
Figure 8 represents the interaction of different actors in the surveillance area with the UAV system using a case diagram.Figure 9 displays the interaction of internal and external stakeholders of the military sector with the UAV system.Intelligence agencies are responsible for gathering data and conducting enemy surveillance using unmanned aerial vehicles, as well as defense personnel using UAVs for casualty-free attacks, data gathering, and enemy surveillance, as illustrated in Figure 9.A state machine diagram represents the behavior of a model entity through its transitions between states triggered by events/signals/values.States can have the defined behaviors for any activity such as entry, exit, or do activity.The transition between states can be triggered through guards, too [35].
Figure 10 represents the concept of the operation of UAVs for warfare purposes using a state machine diagram.As seen in Figure 10, the state machine diagram starts with an Figure 9 displays the interaction of internal and external stakeholders of the military sector with the UAV system.Intelligence agencies are responsible for gathering data and conducting enemy surveillance using unmanned aerial vehicles, as well as defense personnel using UAVs for casualty-free attacks, data gathering, and enemy surveillance, as illustrated in Figure 9. Figure 9 displays the interaction of internal and external stakeholders of the military sector with the UAV system.Intelligence agencies are responsible for gathering data and conducting enemy surveillance using unmanned aerial vehicles, as well as defense personnel using UAVs for casualty-free attacks, data gathering, and enemy surveillance, as illustrated in Figure 9.A state machine diagram represents the behavior of a model entity through its transitions between states triggered by events/signals/values.States can have the defined behaviors for any activity such as entry, exit, or do activity.The transition between states can be triggered through guards, too [35].
Figure 10 represents the concept of the operation of UAVs for warfare purposes using a state machine diagram.As seen in Figure 10, the state machine diagram starts with an A state machine diagram represents the behavior of a model entity through its transitions between states triggered by events/signals/values.States can have the defined behaviors for any activity such as entry, exit, or do activity.The transition between states can be triggered through guards, too [35].
Figure 10 represents the concept of the operation of UAVs for warfare purposes using a state machine diagram.As seen in Figure 10, the state machine diagram starts with an initial state, which is represented by a solid circle.Following that, an event safety check is accomplished, which triggered the state to take off.The following steps are modeled using the same approach.Finally, reach the final state, which is represented by the concentric circle.In Figure 11, different operational states and triggers of the UAV are represented.initial state, which is represented by a solid circle.Following that, an event safety check is accomplished, which triggered the state to take off.The following steps are modeled using the same approach.Finally, reach the final state, which is represented by the concentric circle.In Figure 11, different operational states and triggers of the UAV are represented.Another type of behavior diagram is used here, an activity diagram is shown in Fi ure 12 to model the drug calculation procedure of the UAV system.Using an activity d agram, various types of system/part behavior can be modeled with the aid of inputs, ou puts, and controls [36].As part of an activity diagram, it is also possible to depict how th inputs are transformed into outputs, as well as using actions, controls, data flows, an swimming lanes [37].Another type of behavior diagram is used here, an activity diagram is shown in Figure 12 to model the drug calculation procedure of the UAV system.Using an activity diagram, various types of system/part behavior can be modeled with the aid of inputs, outputs, and controls [36].As part of an activity diagram, it is also possible to depict how the inputs are transformed into outputs, as well as using actions, controls, data flows, and swimming lanes [37].Generally, the activity diagram starts with an initial node to start of an activity, which is similar to a solid circle, as illustrated in Figure 12.Following this, the flow of data is directed to a fork node that appears as a line segment, and the fork node splits the input flow into two parallel streams, which are directed to two "actions" that are displayed as rectangles with round corners.Flows are directed through various actions for the accomplishment of various tasks, and finally, a node is used to stop the flow of the activity.

Execution through Activity Diagram
The activity diagram (see Figure 12) includes opaque action, which facilitates the executability of the model to calculate drag force.A separate MATLAB function was embedded inside the opaque action to make the diagram executable.The <<readStructuralFea-ture>>stereotype enables reading the inputs of area and velocity from the model.Users can change the values before running the simulation inside the cameo simulation toolkit (CST) Generally, the activity diagram starts with an initial node to start of an activity, which is similar to a solid circle, as illustrated in Figure 12.Following this, the flow of data is directed to a fork node that appears as a line segment, and the fork node splits the input flow into two parallel streams, which are directed to two "actions" that are displayed as rectangles with round corners.Flows are directed through various actions for the accomplishment of various tasks, and finally, a node is used to stop the flow of the activity.

Execution through Activity Diagram
The activity diagram (see Figure 12) includes opaque action, which facilitates the executability of the model to calculate drag force.A separate MATLAB function was embedded inside the opaque action to make the diagram executable.The <<readStruc-turalFeature>>stereotype enables reading the inputs of area and velocity from the model.Users can change the values before running the simulation inside the cameo simulation toolkit (CST) (see Figure 13).The expected output for the simulation is the drag force which is indicated by the empty Drag_F value property.
Systems 2022, 10, x FOR PEER REVIEW 14 of 22 (see Figure 13).The expected output for the simulation is the drag force which is indicated by the empty Drag_F value property.While running the simulation, actions change colors based on their execution timinggreen indicates executed before, yellow indicates immediately executed, and red indicates currently being executed (See Figure 14).After running the simulation, the opaque action forwards the inputs to the embedded MATLAB function in order to calculate the drag force.The function output is then returned to the SysML model and assigned to the "Drag_F" value property.Finally, the drag force is shown in the simulation console by printing the output Drag_F value property, as illustrated in Figure 15.While running the simulation, actions change colors based on their execution timinggreen indicates executed before, yellow indicates immediately executed, and red indicates currently being executed (See Figure 14).After running the simulation, the opaque action forwards the inputs to the embedded MATLAB function in order to calculate the drag force.The function output is then returned to the SysML model and assigned to the "Drag_F" value property.Finally, the drag force is shown in the simulation console by printing the output Drag_F value property, as illustrated in Figure 15.
Systems 2022, 10, x FOR PEER REVIEW 14 of 22 (see Figure 13).The expected output for the simulation is the drag force which is indicated by the empty Drag_F value property.While running the simulation, actions change colors based on their execution timinggreen indicates executed before, yellow indicates immediately executed, and red indicates currently being executed (See Figure 14).After running the simulation, the opaque action forwards the inputs to the embedded MATLAB function in order to calculate the drag force.The function output is then returned to the SysML model and assigned to the "Drag_F" value property.Finally, the drag force is shown in the simulation console by printing the output Drag_F value property, as illustrated in Figure 15.As it is apparent from Figure 15, the calculated drag force (990 N) is less than the value specified in Functional Requirement-7 (See Figure 1).Hence, using the opaque action and CST tool, it was possible to incorporate MATLAB simulation within the SysML model and perform requirements verification based on the design parameters defined in the model.
Opaque actions in activity diagram can be used to call supported scripting files from the local computer.This approach is used to integrate the open-source multidisciplinary design analysis and optimization tool (OpenMDAO) developed by NASA into the SysML model [38].OpenMDAO tool was imported as a package into the Python environment.Then, in the Python scripting environment a simple "safest drone flight time optimization problem" was formulated followed by OpenMDAO solution mechanics (See Figure 16).
The optimization problem was formulated as follows: Safest Flight Time (min.) = ((Battery Capacity (Ah) × Discharge Rate) × 60 × Safety Factor)/Current Draw of UAV (Amps); constraints and design variables were defined within the script function.The initial values needed to run the OpenMDAO script were provided by CST by reading the initial values defined within the model using value property.As it is apparent from Figure 15, the calculated drag force (990 N) is less than the value specified in Functional Requirement-7 (See Figure 1).Hence, using the opaque action and CST tool, it was possible to incorporate MATLAB simulation within the SysML model and perform requirements verification based on the design parameters defined in the model.
Opaque actions in activity diagram can be used to call supported scripting files from the local computer.This approach is used to integrate the open-source multidisciplinary design analysis and optimization tool (OpenMDAO) developed by NASA into the SysML model [38].OpenMDAO tool was imported as a package into the Python environment.Then, in the Python scripting environment a simple "safest drone flight time optimization problem" was formulated followed by OpenMDAO solution mechanics (See Figure 16).The location of the SafeFlightTime.pyfunction script was provided in the body of the opaque action.The input to the Python script function were the values defined in Figure 17 in order to run the script.Activity diagram with opaque action and <<readStructuralFea-ture>>stereotyped action items were created to represent the integration mechanism with OpenMDAO-enabled Python scripting environment (see Figure 18).The output generated by the above script was visible in the CST console (Figure 19) to obtain the Safest Flight Time value (as calculated by the OpenMDAO tool).The location of the SafeFlightTime.pyfunction script was provided in the body of the opaque action.The input to the Python script function were the values defined in Figure 17 in order to run the script.Activity diagram with opaque action and <<readStructuralFea-ture>>stereotyped action items were created to represent the integration mechanism with OpenMDAO-enabled Python scripting environment (see Figure 18).The output generated by the above script was visible in the CST console (Figure 19) to obtain the Safest Flight Time value (as calculated by the OpenMDAO tool).The location of the SafeFlightTime.pyfunction script was provided in the body of the opaque action.The input to the Python script function were the values defined in Figure 17 in order to run the script.Activity diagram with opaque action and <<readStructuralFea-ture>>stereotyped action items were created to represent the integration mechanism with OpenMDAO-enabled Python scripting environment (see Figure 18).The output generated by the above script was visible in the CST console (Figure 19) to obtain the Safest Flight Time value (as calculated by the OpenMDAO tool).Figure 20 shows the optimization results obtained in the Python environment as well and hence confirms the integration the OpenMDAO tool with the CST.   Figure 20 shows the optimization results obtained in the Python environment as well and hence confirms the integration the OpenMDAO tool with the CST.

Execution through Parametric Diagram
For simple SysML models, an activity diagram is a highly effective way of showing the mechanism of the calculations and enabling script integrations [39].While executing complex system models, the use of the parametric diagram is a more proficient way of dealing with a high volume of data and calculations as compared activity diagram.Although the parametric diagram in CSM cannot incorporate all types of scripting languages

Execution through Parametric Diagram
For simple SysML models, an activity diagram is a highly effective way of showing the mechanism of the calculations and enabling script integrations [39].While executing complex system models, the use of the parametric diagram is a more proficient way of dealing with a high volume of data and calculations as compared activity diagram.Although the parametric diagram in CSM cannot incorporate all types of scripting languages supported by the activity diagram.However, it enables easy drag and drop capability of MATLAB scripts into the parametric diagram as a constraint block.So, we used the Flight-Time MATLAB function to calculate the drone flight time, which takes the Battery_Voltage, Weight, Lift_Power, Maximum_Discharge, and Battery_Capacity as inputs (see Figure 21).The output of the function is Flight_Time as demonstrated in Figure 22, which is returned to the CST tool from MATLAB execution.As you can see in the CST console in Figure 23, the Flight_Time value property got populated based on the calculations performed within the MATLAB script.The output of the function is Flight_Time as demonstrated in Figure 22, which is returned to the CST tool from MATLAB execution.As you can see in the CST console in Figure 23, the Flight_Time value property got populated based on the calculations performed within the MATLAB script.By implementing the proposed executable simulation methodologies demonstrated above, the static diagrams can be brought to life.In addition to that, using those in-model simulation approaches, the time and effort needed to run simulation results separately will be reduced.The output of the function is Flight_Time as demonstrated in Figure 22, which is returned to the CST tool from MATLAB execution.As you can see in the CST console in Figure 23, the Flight_Time value property got populated based on the calculations performed within the MATLAB script.By implementing the proposed executable simulation methodologies demonstrated above, the static diagrams can be brought to life.In addition to that, using those in-model simulation approaches, the time and effort needed to run simulation results separately will be reduced.By implementing the proposed executable simulation methodologies demonstrated above, the static diagrams can be brought to life.In addition to that, using those in-model simulation approaches, the time and effort needed to run simulation results separately will be reduced.

Discussion
This study designed the complex system of UAVs using the model-based systems engineering (MBSE) approach.This study utilizes four pillars of SysML, which are structural, behavior, requirements, and parametric aspect.Here, different SysML models, structural, behavior, requirements, and parametric model is used to represent the various design aspect of the UAV system.The structural model used a block definition diagram (BDD), representing the different elements and interrelationships between UAV systems.An internal block definition diagram is used, which represents the interaction and information flow between the elements of UAV systems.This study utilizes a use case diagram that describes the responsibility of external and internal stakeholders of the system to provide a summary of the capabilities of the UAV systems.In addition, this work describes the concept of operation of UAVs in military warfare and the operational states of UAVs using state machine diagrams to illustrate the changes in state and the actions taken by a UAVs systems or subcomponents when interacting with external events.Moreover, this work uses an activity diagram to represent the movement of data and commands between the activities of drag force calculation in UAV systems.As part of this study, we used a requirement diagram to represent the requirements of the UAV system as well as the traceability of the requirements and their annotations.More precisely, a requirement table was developed to define the functional requirements of UAV systems.Finally, a parametric diagram illustrates different constraints of UAV flight time and paves an efficient way to calculate a large amount of data to help engineering examinations.Integrating MATLAB execution with a parametric diagram will facilitate efficient model execution and design/performance calculations.Similar MATLAB integration for a different design parameter of the UAV was performed with the activity diagram to demonstrate the different integration opportunities for comparison.Additionally, the OpenMDAO tool was integrated with the SysML model through the activity diagram without using any custom COTS integration tools.
An important benefit of this study is that it enables users to better understand and design the complex system of UAVs; in addition, it enables users to gain a better understanding of the information flow, the system requirements, and the interaction between the various actors.This study allows users to manage UAV systems more efficiently and improves safety, protection, and reduces human error.

Implication of the Study
This study implements the SysML in UAV to provide a sound understanding of UAVs complicated systems.The implication of this work is the following: 1.
The study demonstrated the efficacy and extensibility of the model-based system engineering approach in the context of UAV system architecture, behavior, and requirements; 2.
UAV systems designed with the SysML diagram described in this study will help the user to better understand the system and will allow for future upgrades, which might be time-and cost-effective.An example of this is the state machine diagram that describes the concept of the operation of a UAV in a military environment.This will aid the users in grasping a clearer understanding of the procedure and will motivate them to use the UAV system and the method of operation; 3.
With the MBSE approach described in this study, users of UAVs can continuously monitor the performance of the system.The simulation that has been applied to the activity diagram can also analyze the design parameters of the UAV system.In addition to that, integration of the OpenMDAO tool with the SysML model through the activity diagram was developed without any use of custom COTS integration tools.Finally, the integration of MATLAB execution with a parametric diagram will facilitate efficient model execution and design/performance calculations for complex systems.

Conclusions
Since UAVs are increasingly being deployed in everyday applications, it is imperative that practitioners ensure the safety and reliability of the UAV systems.An unmanned aerial vehicle (UAV) is considered to be a complex system with many subsystems, complex technology, and interrelationships that require communication.It is beneficial to use MBSE as a method to improve the design and management of UAV architecture in order to enhance safety measures and minimize man-made errors.MBSE provides many benefits to a UAV system, such as quicker design times, lower costs, fewer errors, and higher traceability.The research contributes to theory, methodology, and application.From a methodological standpoint, this study is useful in illustrating step-by-step how SysML can be applied to the various aspects of UAVs.On a practical level, this study provides a standard design for UAVs based on modeling.There are some works in the literature that design UAVs systems using MBSE, but none of these used simulations to evaluate model parameters against functional requirements defined in the SysML model.So, this study fills this gap in the literature by enabling simulation within the SysML model through interoperability with external simulation tools, i.e., MATLAB, OpenMDAO, and Python.Thus, the SysML model can be used solely to evaluate the design/architectural parameters in the early phases of the UAVs system lifecycle, which will reduce the cost and effort required in the later phases.This work is also subject to some limitations including (i) the scale of the simulation computations (Matlab and openMDAO) was not substantial; only integration capability was highlighted, (ii) the drone model in this example was created using a "black box" method and overall SysML model has been extended to level 3.In the future, this work can be expanded by including detailed components of a UAV system.Another way to expand the work in the future is by incorporating more complex OpenMDAO and Matlab calculations, including component-level design

Figure 1 .
Figure 1.Representation of a requirement diagram.

Figure 2 .
Figure 2. Representation of a requirement table showing the functional requirements.

Figure 1 .
Figure 1.Representation of a requirement diagram.

Figure 1 .
Figure 1.Representation of a requirement diagram.

Figure 2 .
Figure 2. Representation of a requirement table showing the functional requirements.

Figure 2 .
Figure 2. Representation of a requirement table showing the functional requirements.

Figure 3 .
Figure 3. Package diagram of model organization.

Figure 4
illustrates the different subsystems of unmanned aerial vehicles using a block definition diagram (BDD).The diagram shows the different elements of UAV, which are the air vehicle system (AVS), a ground control station (GCS), mission planning & control station (MPC), and payload.

Figure 3 .
Figure 3. Package diagram of model organization.

Figure 4
illustrates the different subsystems of unmanned aerial vehicles using a block definition diagram (BDD).The diagram shows the different elements of UAV, which are the air vehicle system (AVS), a ground control station (GCS), mission planning & control station (MPC), and payload.theinteraction of various actors with the systems, and activity diagram, which represent the different sequential activity of the system, and contain state machine diagram, which represents the concept of operations (ConOps) and different states of a system.The package called Requirements contains a requirement diagram of the system.

Figure 3 .
Figure 3. Package diagram of model organization.

Figure 4
illustrates the different subsystems of unmanned aerial vehicles using a block definition diagram (BDD).The diagram shows the different elements of UAV, which are the air vehicle system (AVS), a ground control station (GCS), mission planning & control station (MPC), and payload.

Figure 5
Figure 5 represents the whole air vehicle system's hierarchical breakdown.The diagram shows different subsystems of AVS, which are GNC, propulsion subsystem, power subsystem, flight controls, and airframe.

Figure 5
Figure5represents the whole air vehicle system's hierarchical breakdown.The diagram shows different subsystems of AVS, which are GNC, propulsion subsystem, power subsystem, flight controls, and airframe.

Figure 6
Figure 6 represents the payload components for the surveillance use case, which consists of camera, gimbal mechanism, image processor, and LIDAR.Payload can be reconfigured based on the application domain.In this Figure, asterisk sign (*) refers multiplicity.

Figure 6 .
Figure 6.BDD of the payload subsystem.

Figure 6 22 Figure 5
Figure 6 represents the payload components for the surveillance use case, which consists of camera, gimbal mechanism, image processor, and LIDAR.Payload can be reconfigured based on the application domain.In this Figure, asterisk sign (*) refers multiplicity.

Figure 6
Figure 6 represents the payload components for the surveillance use case, which consists of camera, gimbal mechanism, image processor, and LIDAR.Payload can be reconfigured based on the application domain.In this Figure, asterisk sign (*) refers multiplicity.

Figure 6 .
Figure 6.BDD of the payload subsystem.

Figure 6 .
Figure 6.BDD of the payload subsystem.

Figure 7
represents the internal block definition diagram of unmanned aerial vehicles.The diagram shows the signals and information flow among the subsystems of the UAV system.The asterisk sign (*) in this Figure refers multiplicity.

Figure 7
Figure 7 represents the internal block definition diagram of unmanned aerial vehicles.The diagram shows the signals and information flow among the subsystems of the UAV system.The asterisk sign (*) in this Figure refers multiplicity.

Figure 8 .
Figure 8. Use case diagram of UAV for surveillance purpose.

Figure 9 .
Figure 9. Use case diagram of UAV for military application.

Figure 8 .
Figure 8. Use case diagram of UAV for surveillance purpose.

s 22 Figure 8 .
Figure 8. Use case diagram of UAV for surveillance purpose.

Figure 9 .
Figure 9. Use case diagram of UAV for military application.

Figure 9 .
Figure 9. Use case diagram of UAV for military application.

Systems 2022 ,
10, x FOR PEER REVIEW 11 of 22

Figure 10 .
Figure 10.State machine diagram of the concept of operation of UAV in military warfare.Figure 10.State machine diagram of the concept of operation of UAV in military warfare.

Figure 10 .Figure 11 .
Figure 10.State machine diagram of the concept of operation of UAV in military warfare.Figure 10.State machine diagram of the concept of operation of UAV in military warfare.

Figure 11 .
Figure 11.State machine diagram of the operational states of UAVs.

Figure 12 .
Figure 12.Activity diagram of drag force calculation of UAVs.

Figure 12 .
Figure 12.Activity diagram of drag force calculation of UAVs.

Figure 14 .
Figure 14.Execution of actions shown by color.

Figure 14 .
Figure 14.Execution of actions shown by color.

Figure 14 .
Figure 14.Execution of actions shown by color.

Figure 15 .
Figure 15.Printing drag force in the simulation console.

Figure 15 .
Figure 15.Printing drag force in the simulation console.

Figure 16 .
Figure 16.OpenMDAO script snippets.The optimization problem was formulated as follows: Safest Flight Time (min.) = ((Battery Capacity (Ah) × Discharge Rate) × 60 × Safety Factor)/Current Draw of UAV (Amps); constraints and design variables were defined within the script function.The

Figure 17 .
Figure 17.Defined input parameters in the Cameo Simulation Toolkit environment.Figure 17.Defined input parameters in the Cameo Simulation Toolkit environment.

Figure 17 . 22 Figure 18 .
Figure 17.Defined input parameters in the Cameo Simulation Toolkit environment.Figure 17.Defined input parameters in the Cameo Simulation Toolkit environment.Systems 2022, 10, x FOR PEER REVIEW 17 of 22

Figure 19 .
Figure 19.Execution results shown in the CST console.

Figure 18 .
Figure 18.Activity diagram enabling the integration with the OpenMDAO script.

Figure 18 .
Figure 18.Activity diagram enabling the integration with the OpenMDAO script.

Figure 19 .
Figure 19.Execution results shown in the CST console.

Figure 19 .
Figure 19.Execution results shown in the CST console.

Figure 20
Figure20shows the optimization results obtained in the Python environment as well and hence confirms the integration the OpenMDAO tool with the CST.

Figure 19 .
Figure 19.Execution results shown in the CST console.

Figure 20
Figure20shows the optimization results obtained in the Python environment as well and hence confirms the integration the OpenMDAO tool with the CST.

Figure 20 .
Figure 20.OpenMDAO solutions in the Python environment

Figure 20 .
Figure 20.OpenMDAO solutions in the Python environment.
Systems 2022, 10, x FOR PEER REVIEW 18 of 22 supported by the activity diagram.However, it enables easy drag and drop capability of MATLAB scripts into the parametric diagram as a constraint block.So, we used the FlightTime MATLAB function to calculate the drone flight time, which takes the Bat-tery_Voltage, Weight, Lift_Power, Maximum_Discharge, and Battery_Capacity as inputs (see Figure 21).

Figure 21 .
Figure 21.Parametric diagram showing the binding parameters and script function as constraint.

Figure 21 .
Figure 21.Parametric diagram showing the binding parameters and script function as constraint.The output of the function is Flight_Time as demonstrated in Figure22, which is returned to the CST tool from MATLAB execution.As you can see in the CST console in Figure23, the Flight_Time value property got populated based on the calculations performed within the MATLAB script.

Figure 21 .
Figure 21.Parametric diagram showing the binding parameters and script function as constraint.

Figure 22 .
Figure 22.Flight time value property populated by the execution of the MATLAB script.

Figure 23 .
Figure 23.CST simulation console showing the environment as Matlab.

Figure 22 .
Figure 22.Flight time value property populated by the execution of the MATLAB script.

Figure 21 .
Figure 21.Parametric diagram showing the binding parameters and script function as constraint.

Figure 22 .
Figure 22.Flight time value property populated by the execution of the MATLAB script.

Figure 23 .
Figure 23.CST simulation console showing the environment as Matlab.

Figure 23 .
Figure 23.CST simulation console showing the environment as Matlab.

Table 1 .
Application of SysML in UAV literature review.