Formal Connectors
نویسندگان
چکیده
As software systems become more complex the overall system structure – or software architecture – becomes a central design problem. An important step towards an engineering discipline of software is a formal basis for describing and analyzing these designs. In this paper we present a theory for one aspect of architectural description: the interactions between components. The key idea is to define architectural connectors as explicit semantic entities. These are specified as a collection of protocols that characterize each of the participant roles in an interaction and how these roles interact. We illustrate how this scheme can be used to define a variety of common architectural connectors. We further provide a formal semantics and show how this leads to a system in which architectural compatibility can be checked in a way analogous to type checking in programming languages.
منابع مشابه
A Formal Petri Net Based Model for Antivirus Update Agent System
In this paper, a formal model for antivirus update agent system is presented based on mobile agent technology and predicate/transition Petri nets. The mobile agent system contains two mobile agents called DCA and UNA. It sends out agents to update antivirus on client computers in a network. Each agent takes on a specified responsibility. First, DCA roams through the network and check the last d...
متن کاملA Formal Petri Net Based Model for Antivirus Update Agent System
In this paper, a formal model for antivirus update agent system is presented based on mobile agent technology and predicate/transition Petri nets. The mobile agent system contains two mobile agents called DCA and UNA. It sends out agents to update antivirus on client computers in a network. Each agent takes on a specified responsibility. First, DCA roams through the network and check the last d...
متن کاملLayered Connectors - Revisiting the Formal Basis of Architectural Connection for Complex Distributed Systems
The complex distributed systems of nowadays require the dynamic composition of multiple components, which are autonomous and so complex that they can be considered as systems in themselves. These components often use different application protocols and are implemented on top of heterogeneous middleware, which hamper their successful interaction. The explicit and rigorous description and analysi...
متن کاملXCD – Simple, Modular, Formal Software Architectures
Connector-Centric Design (XCD) is a new approach for specifying software architectures that focuses on the use of complex connectors. In XCD simple interconnection mechanisms like procedure-calls, event-buses, etc. are abstracted and components take a second place. XCD aids the clear separation in a modular manner of the highlevel functional, interaction, and control system behaviour, thus incr...
متن کاملAutomata for Context-Dependent Connectors
Recent approaches to component-based software engineering employ coordinating connectors to compose components into software systems. For maximum flexibility and reuse, such connectors can themselves be composed, resulting in an expressive calculus of connectors whose semantics encompasses complex combinations of synchronisation, mutual exclusion, non-deterministic choice and state-dependent be...
متن کاملHighly Analysable, Reusable, and Realisable Architectural Designs with XCD
Connector-Centric Design (XcD) is a new approach to specifying software architectures. XcD views complex connectors as highly significant in architectural designs, as it is the complex connectors that non-functional quality properties in systems can emanate from. So, XcD promotes in designs a clean separation of connectors (interaction behaviours) from components (functional behaviours). Design...
متن کامل