Distributed and concurrent application invariably have coordination requirements. The design of those applications, composed by several (possibly distributed) components, has to consider coordination requirements comprising inter-component interaction styles, and intra-component concurrency and synchronization aspects. In our approach coordination aspects are treated in the software architecture level and can be specified in high-level contracts in CBabel ADL. A rewriting logic semantics for the software architecture description language CBabel is given, revisiting and extending previous work by some of the authors, which now includes a revision of the previous semantics and the addition of new features covering all the language. The CBabel tool is also presented. The CBabel tool is a prototype executable environment for CBabel, that implements the given CBabel's rewriting logic semantics and allows the execution and verification of CBabel descriptions in the Maude system, an implementation of rewriting logic. In this way, software architectures describing complex applications can be formally verified regarding properties such as deadlock and synchronization consistency in the software architecture design phase of its life cycle.
%0 Journal Article
%1 rademaker_rewriting_2005
%A Rademaker, Alexandre
%A Braga, Christiano
%A Sztajnberg, Alexandre
%D 2005
%J Electronic Notes in Theoretical Computer Science
%K Contracts; Maude; architecture description languages logic; rewriting software
%N 0
%P 345--377
%R 10.1016/j.entcs.2005.03.018
%T A Rewriting Semantics for a Software Architecture Description Language
%U http://www.sciencedirect.com/science/article/pii/S157106610500229X
%V 130
%X Distributed and concurrent application invariably have coordination requirements. The design of those applications, composed by several (possibly distributed) components, has to consider coordination requirements comprising inter-component interaction styles, and intra-component concurrency and synchronization aspects. In our approach coordination aspects are treated in the software architecture level and can be specified in high-level contracts in CBabel ADL. A rewriting logic semantics for the software architecture description language CBabel is given, revisiting and extending previous work by some of the authors, which now includes a revision of the previous semantics and the addition of new features covering all the language. The CBabel tool is also presented. The CBabel tool is a prototype executable environment for CBabel, that implements the given CBabel's rewriting logic semantics and allows the execution and verification of CBabel descriptions in the Maude system, an implementation of rewriting logic. In this way, software architectures describing complex applications can be formally verified regarding properties such as deadlock and synchronization consistency in the software architecture design phase of its life cycle.
@article{rademaker_rewriting_2005,
abstract = {Distributed and concurrent application invariably have coordination requirements. The design of those applications, composed by several (possibly distributed) components, has to consider coordination requirements comprising inter-component interaction styles, and intra-component concurrency and synchronization aspects. In our approach coordination aspects are treated in the software architecture level and can be specified in high-level contracts in {CBabel} {ADL.} A rewriting logic semantics for the software architecture description language {CBabel} is given, revisiting and extending previous work by some of the authors, which now includes a revision of the previous semantics and the addition of new features covering all the language. The {CBabel} tool is also presented. The {CBabel} tool is a prototype executable environment for {CBabel}, that implements the given {CBabel's} rewriting logic semantics and allows the execution and verification of {CBabel} descriptions in the Maude system, an implementation of rewriting logic. In this way, software architectures describing complex applications can be formally verified regarding properties such as deadlock and synchronization consistency in the software architecture design phase of its life cycle.},
added-at = {2013-02-28T11:13:35.000+0100},
author = {Rademaker, Alexandre and Braga, Christiano and Sztajnberg, Alexandre},
biburl = {https://www.bibsonomy.org/bibtex/2dc35c2fac3cd00131f7123471e3d97a1/fritzsolms},
doi = {10.1016/j.entcs.2005.03.018},
interhash = {12c213549c584792cbda0d8ba7254b85},
intrahash = {dc35c2fac3cd00131f7123471e3d97a1},
issn = {1571-0661},
journal = {Electronic Notes in Theoretical Computer Science},
keywords = {Contracts; Maude; architecture description languages logic; rewriting software},
month = may,
number = 0,
pages = {345--377},
timestamp = {2013-02-28T11:14:05.000+0100},
title = {{A Rewriting Semantics for a Software Architecture Description Language}},
url = {http://www.sciencedirect.com/science/article/pii/S157106610500229X},
volume = 130,
year = 2005
}