1. Introduction
Reliability is one of the most important characteristics of aircraft systems. Poor reliability will not only affect the completion of flight plans but also reduce the safety of flight operations. At present, traditional reliability modeling techniques, such as Reliability Block Diagram (RBD), Fault Tree Analysis (FTA), and Markov Analysis (MA), are still widely used in reliability analysis and evaluation of aircraft systems [
1,
2]. However, these methods are usually performed manually by reliability engineers, whose understanding of the system behaviors will affect the results greatly. With the increase of the integration and complexity in modern civil aircraft systems, it becomes more and more difficult for reliability engineers to understand the system behaviors. Hence, the results of traditional reliability techniques are apt to be incomplete, inconsistent, and highly subjective, and their correctness and completeness will be decided by the skills and experiences of reliability engineers significantly. Traditional reliability analysis methods all have the following shortcomings [
2]:
Manpower-consuming: The use of traditional reliability analysis methods for highly integrated and complex systems on modern civil aviation aircraft will result in a huge workload and require a lot of manpower;
Subjectivity: traditional reliability analysis methods are highly dependent on the analyst’s judgment and degree of awareness of the object of analysis. When the complexity of the system is too large, errors are prone to occur in the analysis process, which affects the accuracy of the reliability assessment.
In 2004, the Society of Automotive Engineers (SAE) issued the aviation standard AS5506 [
3], which defined an architectural analysis and design language (AADL). AADL is a semi-formal modeling language, which can describe the software and hardware structure, functional and non-functional properties of the system, and describe the system through the interaction and binding between components during modeling. At the same time, AADL also introduced the concept of attachment. SAE proposed the Error Model Annex in AS5506/1 issued in 2006 which defines the declaration rules and semantics of components and connections to establish error attachments [
4]. The AADL error model established through the error attachment can describe the system’s fault propagation, fault behavior, and fault types in detail.
AADL contains three types of components [
5]: software components, execution platform components, and system components. Software components include data, process, thread, and subprogram; execution platform components include processor, memory, bus, and device; system components combine all components, software components, and execution platform components can be nested in the system components. An AADL component has two levels of definition: component type and component implementation. A component corresponds to one type, but it can correspond to zero or more implementations. The component type defines the characteristics of the component and is used to describe the external interface, such as input and output ports. Ports are divided into data port, event port, and event data port. Connections between ports are used to describe the interaction between components. Component implementation is used to describe the internal structure of the component, such as internal sub-components and connections. This paper will take the wheel brake system (WBS) as an example to establish the AADL structure model.
This paper uses the open-source AADL tool OSATE for modeling and analysis. OSATE is an AADL model development tool developed by the Software Engineering Institute (SEI) of Carnegie Mellon University based on the Eclipse platform. It provides textual and graphical descriptions to establish AADL models and can instantiate the models for Fault Tree Analysis (FTA), Functional Hazard Assessment (FHA), and other reliability analyses.
AADL has the advantages of simple syntax, complete functions, and injectability, and has been widely used in various industrial fields [
6]. Liu et al. [
7] showed how to use AADL to construct control and architecture models of wireless cyber–physical systems. Then, they integrated Simulink and OSATE to obtain performance models, increasing the automation of the analysis process. Stewart et al. [
8] proposed an extension of AADL called Safety Annex, which supports the modeling of implicit and explicit error propagation. It is also combined with a model-checking tool to automatically verify the safety properties of the system. Deng et al. [
9] proposed a modeling method of agents and service-oriented architecture (SOA) in avionics systems based on AADL. They used AADL to describe the transformation mechanism of the agent’s working state with external input, as well as the application, service, and software system in SOA. Yang et al. [
10] presented a reverse engineering approach for safety-critical software development and verification, which takes multi-task C source code as the input to generate AADL models, and the AADL model is verified using UPPAAL to ensure correctness. Wang et al. [
11] established the reliability model of the Integrated Modular Avionics (IMA) platform based on the AADL model. Rosane et al. [
12] proposed a method to transform the functional model of the cyber–physical fusion system based on Simulink into an AADL structural model. In response to the lack of space–time composition modeling and verification methods for cyber–physical systems, Chen et al. [
13] proposed hybrid AADL (HAADL), which extends the space–time description capability in the AADL annex. Wang et al. [
14] proposed a method to automatically generate AADL models from natural language requirement models for safety-critical software systems. The method ensures requirement traceability in the software development process.
The development of the model transformation function is one of the important research areas of AADL, which is dedicated to making up for the shortage of AADL models in formal verification and simulation analysis. Dong et al. [
15] designed a reliability evaluation tool based on the AADL reliability model for the Generalized Stochastic Petri Nets (GSPN) reliability calculation model. Cheng et al. [
16] proposed a security analysis method that converts the AADL error model into the Markov chain model. Hadad et al. [
17] converted the AADL model to Event-B for formal verification of the critical properties of the system and used the train control system as an example to demonstrate the effectiveness of the method. Baouya et al. [
18] proposed a safety analysis method that combines AADL with probabilistic model checking. The software components and hardware platform of the embedded system are modeled by AADL and formal specifications are extracted from the software components for verification. Wei et al. [
19] adopted AADL to model the stochastic errors and undetermined environmental behaviors of the grid cyber–physical systems. Conversion rules from AADL to stochastic multiplayer games (SMGs) models were proposed to obtain the occurrence probability of failure states. Hu et al. [
20] designed a set of code generation templates from AADL to object platforms, which can be modified for different platforms. It is demonstrated that the code automatically generated by the AADL model can be executed successfully using the data processing unit system as an example. Jiang et al. [
21] modeled the IMA dynamic reconstruction process based on AADL, and the conversion rules from AADL to Petri nets were proposed. Finally, the simulation multi-constraint analysis was performed using Petri nets.
The common approaches of AADL model conversion in the reliability analysis domain are to convert the model to Petri nets, Markov models, or other modeling languages of analysis tools. FTA and FMEA are usually combined into the analysis process as well. Yuan et al. [
22] proposed a method for translating the AADL model into the Continuous Time Markov Chain (CTMC) model. The translation is indirect, which built the transformation rules from the AADL reliability model to PRISM elements. Then, the CTMC was described in the PRISM modeling language. Lu et al. [
23] used a combination of GSPN and FTA to analyze the reliability of the AADL model. They used GSPN to analyze the temporal subsystems and then performed fault tree analysis on the top-level system. In addition, an AADL error model static fault tree generation algorithm was proposed. Mian et al. [
24] proposed a model conversion framework, which can transform the AADL error model annex to the Hip-HOPS model to generate fault trees and Failure Mode and Effect Analysis (FMEA) for reliability analysis. The transformation algorithm was implemented as a plug-in for OSATE. Zhang et al. [
25] described the component error states and structural architecture of the IMA system by combining the AADL ARINC653 annex, the error model annex, and the behavioral model. The descriptive model was then converted into the computable model represented by CTMC for reliability assessment.
When performing reliability analysis on AADL models of multi-level complex systems, directly mapping the models to Petri nets or Markov models may result in state explosion or poor model readability. In this paper, we choose to construct hierarchical colored Petri nets, which can correspond to the components at different levels in the AADL model and make the model have better readability. Simulation in CPN Tools also allows the analyst to directly observe the dynamic failure process of the system.
The wheel brake system is a typical safety-critical system of aircrafts. It provides the function of decelerating aircrafts on the ground. It is also one of the most cost-effective systems in the life of an aircraft. Therefore, it is necessary to complete the reliability analysis of the WBS. The working framework of this paper is shown in
Figure 1. We first construct an AADL model based on the architecture of WBS and inject the AADL error annex according to the system fault behavior. Based on the AADL error model, this paper introduces a reliability analysis method that converts the AADL model into a Colored Petri Net (CPN) [
26] model for simulation.
The key contribution of this paper is the translation of the AADL design model into the Colored Petri Net model which supports reliability analysis. The new definitions added to CPN enable it to describe hierarchical systems, and the transformation rules from the AADL model to the hierarchical CPN model are proposed. This translation facilitates the use of AADL models in the quantitative reliability analysis domain.
The rest of this paper is structured as follows:
Section 2 introduces the basic elements of AADL for airborne system modeling and shows the modeling process from component to system based on the WBS architecture.
Section 3 shows the characteristics declared by the AADL error annex and the modeling approach of the error model, defines the error states and error events of the WBS, and builds the WBS fault propagation model on this basis.
Section 4 provides the definition of the hierarchical CPN, the mapping relations between AADL and hierarchical CPN are proposed, and the CPN model of the WBS is presented. In
Section 5, the quantitative reliability analysis of the WBS is implemented by Monte Carlo simulation of the CPN model, and the accuracy of the results is demonstrated using system components as examples. In
Section 6, we conclude the paper.