Title :
A Categorical Approach for Modeling and Verifying Dynamic Software Architecture
Author_Institution :
Syst. Dev. Div., Stat. Canada, Ottawa, ON, Canada
Abstract :
The dynamism in Software Architecture, also known as dynamic software architecture, is defined as the description of a system´s structural evolution as execution progresses. It brings the challenge to the system´s specification to incorporate the dynamic evolution patterns, as well as the verification of the system´s properties. Community is an Architecture Description Language built on coordination principles and a categorical framework to support the composition of specifications of components to form the system´s specification. However, an important problem of Community is the lack of support for specifying the system´s architectural changes in both the set of components and the connections between them. This paper presents an extension of Community to support the specification of the dynamism in component-based systems. The categorical approach and architectural design principles supported by the language are illustrated through the design of a fault-tolerant, dynamic client-server system, from which some of the system´s properties can be verified.
Keywords :
formal languages; formal specification; formal verification; software architecture; software fault tolerance; CommUnity; architecture description language; component-based systems; coordination principles; dynamic software architecture verification; fault-tolerant dynamic client-server system; system specification; system structural evolution; Communities; Connectors; Servers; Sociology; Statistics; Synchronization; Architecture Description Language; Colimit; Component; Connector; Dynamic Software Architecture; Fault-tolerant; Population Manager; Subsystem; Verification;
Conference_Titel :
Software Security and Reliability-Companion (SERE-C), 2013 IEEE 7th International Conference on
Conference_Location :
Gaithersburg, MD
Print_ISBN :
978-1-4799-2924-5
DOI :
10.1109/SERE-C.2013.38