Visible to the public Parallel Verification of Software Architecture Design

TitleParallel Verification of Software Architecture Design
Publication TypeConference Paper
Year of Publication2019
AuthorsChondamrongkul, Nacha, Sun, Jing, Wei, Bingyang, Warren, Ian
Conference Name2019 IEEE 19th International Symposium on High Assurance Systems Engineering (HASE)
KeywordsBottleneck, Circular Dependency, Component-Based Software, component-based software system, compositionality, Computer architecture, large-scale complex software systems, model checking, monolithic architecture, multi-threading, multithreaded environment, object-oriented programming, parallel verification, Predictive Metrics, Production, program verification, pubcrawl, Resiliency, Scalability, scalable verification, software architecture, software architecture design, software architecture verification, Software systems, Unified modeling language
AbstractIn the component-based software system, certain behaviours of components and their composition may affect system reliability at runtime. This problem can be early detected through the automated verification of software architecture design, by which model checking is one of the techniques to achieve this. However, its practicality and performance issue remain challenges. This paper presents a scalable approach for the software architecture verification. The modelling is proposed to manifest the behaviours in the software component, in order to detect problematic behaviours, such as circular dependency and performance bottleneck. The outcome of the verification identifies the problem and the scenarios that cause it. In order to mitigate the verification performance issue, the parallelism is applied to the verification process so that multiple decomposed models can be simultaneously verified on a multi-threaded environment. As some software systems are designed as the monolithic architecture, we present a method that helps to automatically decompose a large monolithic model into a set of smaller sub-models. Our approach was evaluated and proved to enhance the performance of the verification process for the large-scale complex software systems.
Citation Keychondamrongkul_parallel_2019