The design of the UNIX operating system
The design of the UNIX operating system
Principles of concurrent and distributed programming
Principles of concurrent and distributed programming
Contracts: specifying behavioral compositions in object-oriented systems
OOPSLA/ECOOP '90 Proceedings of the European conference on object-oriented programming on Object-oriented programming systems, languages, and applications
Conditional rewriting logic as a unified model of concurrency
Selected papers of the Second Workshop on Concurrency and compositionality
Concurrency annotations for reusable software
Communications of the ACM
Analysis of inheritance anomaly in object-oriented concurrent programming languages
Research directions in concurrent object-oriented programming
A logical theory of concurrent objects and its realization in the Maude language
Research directions in concurrent object-oriented programming
Beyond definition/use: architectural interconnection
IDL '94 Proceedings of the workshop on Interface definition languages
Specification and Analysis of System Architecture Using Rapide
IEEE Transactions on Software Engineering - Special issue on software architecture
Software architecture: perspectives on an emerging discipline
Software architecture: perspectives on an emerging discipline
A framework for classifying and comparing architecture description languages
ESEC '97/FSE-5 Proceedings of the 6th European SOFTWARE ENGINEERING conference held jointly with the 5th ACM SIGSOFT international symposium on Foundations of software engineering
Concurrency: state models & Java programs
Concurrency: state models & Java programs
Modeling software architectures in the Unified Modeling Language
ACM Transactions on Software Engineering and Methodology (TOSEM)
Reflection in Rewriting Logic: Metalogical Foundations and Metaprogramming Applications
Reflection in Rewriting Logic: Metalogical Foundations and Metaprogramming Applications
Pattern-Oriented Software Architecture: Patterns for Concurrent and Networked Objects
Pattern-Oriented Software Architecture: Patterns for Concurrent and Networked Objects
Computer
Making Components Contract Aware
Computer
A survey on software architecture analysis methods
IEEE Transactions on Software Engineering
Membership algebra as a logical framework for equational specification
WADT '97 Selected papers from the 12th International Workshop on Recent Trends in Algebraic Development Techniques
Inheritance of Synchronization Constraints in Concurrent Object-Oriented Programming Languages
ECOOP '92 Proceedings of the European Conference on Object-Oriented Programming
Semantic Models for Distributed Object Reflection
ECOOP '02 Proceedings of the 16th European Conference on Object-Oriented Programming
Hierarchical Design Rewriting with Maude
Electronic Notes in Theoretical Computer Science (ENTCS)
A classification and comparison of model checking software architecture techniques
Journal of Systems and Software
Monitoring architectural properties in dynamic component-based systems
CBSE'07 Proceedings of the 10th international conference on Component-based software engineering
A tile logic-based semantics for mobile software architectures
International Journal of Critical Computer-Based Systems
A tile logic based semantics for mobile software architectures
VECoS'10 Proceedings of the Fourth international conference on Verification and Evaluation of Computer and Communication Systems
Hi-index | 0.00 |
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.