Verifying Patterns of Dynamic Architectures using Model Checking

Architecture patterns capture architectural design experience and provide abstract solutions to recurring architectural design problems. They consist of a description of component types and restrict component connection and activation. Therefore, they guarantee some desired properties for architectu...

Full description

Bibliographic Details
Main Authors: Diego Marmsoler, Silvio Degenhardt
Format: Article
Language:English
Published: Open Publishing Association 2017-03-01
Series:Electronic Proceedings in Theoretical Computer Science
Online Access:http://arxiv.org/pdf/1703.07033v1
id doaj-377487fb1fdb4982a28d498b2bd5609d
record_format Article
spelling doaj-377487fb1fdb4982a28d498b2bd5609d2020-11-25T01:13:35ZengOpen Publishing AssociationElectronic Proceedings in Theoretical Computer Science2075-21802017-03-01245Proc. FESCA 2017163010.4204/EPTCS.245.2:2Verifying Patterns of Dynamic Architectures using Model CheckingDiego Marmsoler0Silvio Degenhardt1 Technical University of Munich Technical University of Munich Architecture patterns capture architectural design experience and provide abstract solutions to recurring architectural design problems. They consist of a description of component types and restrict component connection and activation. Therefore, they guarantee some desired properties for architectures employing the pattern. Unfortunately, most documented patterns do not provide a formal guarantee of whether their specification indeed leads to the desired guarantee. Failure in doing so, however, might lead to wrong architectures, i.e., architectures wrongly supposed to show certain desired properties. Since architectures, in general, have a high impact on the quality of the resulting system and architectural flaws are only difficult, if not to say impossible, to repair, this may lead to badly reparable quality issues in the resulting system. To address this problem, we propose an approach based on model checking to verify pattern specifications w.r.t. their guarantees. In the following we apply the approach to three well-known patterns for dynamic architectures: the Singleton, the Model-View-Controller, and the Broker pattern. Thereby, we discovered ambiguities and missing constraints for all three specifications. Thus, we conclude that verifying patterns of dynamic architectures using model checking is feasible and useful to discover ambiguities and flaws in pattern specifications.http://arxiv.org/pdf/1703.07033v1
collection DOAJ
language English
format Article
sources DOAJ
author Diego Marmsoler
Silvio Degenhardt
spellingShingle Diego Marmsoler
Silvio Degenhardt
Verifying Patterns of Dynamic Architectures using Model Checking
Electronic Proceedings in Theoretical Computer Science
author_facet Diego Marmsoler
Silvio Degenhardt
author_sort Diego Marmsoler
title Verifying Patterns of Dynamic Architectures using Model Checking
title_short Verifying Patterns of Dynamic Architectures using Model Checking
title_full Verifying Patterns of Dynamic Architectures using Model Checking
title_fullStr Verifying Patterns of Dynamic Architectures using Model Checking
title_full_unstemmed Verifying Patterns of Dynamic Architectures using Model Checking
title_sort verifying patterns of dynamic architectures using model checking
publisher Open Publishing Association
series Electronic Proceedings in Theoretical Computer Science
issn 2075-2180
publishDate 2017-03-01
description Architecture patterns capture architectural design experience and provide abstract solutions to recurring architectural design problems. They consist of a description of component types and restrict component connection and activation. Therefore, they guarantee some desired properties for architectures employing the pattern. Unfortunately, most documented patterns do not provide a formal guarantee of whether their specification indeed leads to the desired guarantee. Failure in doing so, however, might lead to wrong architectures, i.e., architectures wrongly supposed to show certain desired properties. Since architectures, in general, have a high impact on the quality of the resulting system and architectural flaws are only difficult, if not to say impossible, to repair, this may lead to badly reparable quality issues in the resulting system. To address this problem, we propose an approach based on model checking to verify pattern specifications w.r.t. their guarantees. In the following we apply the approach to three well-known patterns for dynamic architectures: the Singleton, the Model-View-Controller, and the Broker pattern. Thereby, we discovered ambiguities and missing constraints for all three specifications. Thus, we conclude that verifying patterns of dynamic architectures using model checking is feasible and useful to discover ambiguities and flaws in pattern specifications.
url http://arxiv.org/pdf/1703.07033v1
work_keys_str_mv AT diegomarmsoler verifyingpatternsofdynamicarchitecturesusingmodelchecking
AT silviodegenhardt verifyingpatternsofdynamicarchitecturesusingmodelchecking
_version_ 1725161307511980032