CORDIS - EU research results
CORDIS

Enabling Architecture Based Verification and Validation of Mission-Critical Systems

Final Report Summary - ABV (Enabling architecture based verification and validation of mission-critical systems)

Software is ubiquitous in the world we live in today, enabling the successful operation of systems ranging from every day appliances like microwave ovens, to complex mission critical systems like financial transaction management systems, and drive-by-wire control systems. This ubiquitous use of software highlights the fact that the quality of the software is a direct determinant of the end success of the implemented system. Verification and validation (V&V) is a term used to describe a class of activities that are performed to enhance software quality. V&V activities are crucial to the design, development and sustainment of mission-critical systems. In addition to accounting for a significant portion of both the cost and schedule aspects of the system lifecycle, V&V forms the basis for providing increased confidence in the fielded system. 80 % of the total cost of the system is determined during the requirements / design / architecture phases. If we are able to leverage these earlier phases of systems development to support V&V, we can improve overall system quality. The key question addressed in this project is: 'How can we reduce the cost and schedule dimensions of mission critical systems development and at the same time increase confidence in the implemented system'?

The proposed ABV project consists of fundamental research, tool development, and empirical validation. During the first 2 years, fundamental research was carried out in 3 areas in parallel: the development of semantics for the Architecture analysis and design language (AADL) using timed abstract state machines (TASM) as the underlying formalism, architecture-based integration test case generation algorithms for AADL specifications and investigating algorithms for regression testing. Year 3 and 4 focused on compositional semantics, traceability and the creation of regression testing algorithms together with empirical studies of integrated toolset usage in specific industrial contexts.

Accomplishments

Over the last four years, the emphasis in the ABV project has been on meeting the project objectives specified in the plan, and laying the foundation for carrying out empirical research going forward.

The AADL standard provides modelling concepts for describing application system architectures in terms of distinct system components and their interactions. While the standard provides well defined syntactic constructs for the components and their interactions, there are limited formal semantics defined. Our research has focused on defining the semantics of a subset of AADL constructs using TASMs. We chose the AADL behavioural annex, and extended it with time annotations to include the min and max times for behavioural transitions. This enabled us to focus on developing a tool called AADLtoTASM, which analyses an AADL specification and generates the semantically corresponding TASM specification. Other tools has also been implemented, e.g. the ABV-verification tool, tailored for AADL models with a behavioural annex. Given an architecture defined in AADL and its behaviour specified in the associated language, the ABV-verification tool model-checks the latter against the requirements specified in computation tree logic (CTL).

Architecture-based verification algorithms have been developed to evaluate the integration of components at both the specification-level and the implementation-level, in addition to handling regression testing of systems. The algorithms are driven by the defined architecture-based verification criteria and are based on the control-flow and data-flow interactions among component interfaces of the specification described using AADL. These criteria generate integration test sequences in terms of execution paths, which can also be simulated to verify that the interactions among components are in fact correct at the specification level and can then be used to generate a test suite for the implementation verify conformance to the AADL specification. The research has emphasised relevance to industry via actively engaging industry through key visits to Swedish organisations, such as Saab, Scania and Volvo. In addition, we have captured our learning in the form of technical reports focusing on the application of architecture description languages to the automotive sector and base lining the state of the knowledge for adaptive cruise control.