488 research outputs found
Towards a design-by-contract based approach for realizable connector-centric software architectures
Despite being a widely-used language for specifying software systems, UML remains less than ideal for software architectures. Architecture description languages (ADLs) were developed to provide more comprehensive support. However, so far the application of ADLs in practice has been impeded by at least one of the following problems: (i) advanced formal notations, (ii) lack of support for complex connectors, and (iii) potentially unrealizable designs. In this paper we propose a new ADL that is based on Design-by-Contract (DbC) for specifying software architectures. While DbC promotes a formal and precise way of specifying system behaviours, it is more familiar to practising developers, thus allowing for a more comfortable way of specifying architectures than using process algebras. Furthermore, by granting connectors a first-class status, our ADL allows designers to specify not only simple interaction mechanisms as connectors but also complex interaction protocols. Finally, in order to ensure that architectural designs are always realizable we eliminate potentially unrealizable constructs in connector specifications (the connector “glue”)
Infinite games with finite knowledge gaps
Infinite games where several players seek to coordinate under imperfect
information are deemed to be undecidable, unless the information is
hierarchically ordered among the players.
We identify a class of games for which joint winning strategies can be
constructed effectively without restricting the direction of information flow.
Instead, our condition requires that the players attain common knowledge about
the actual state of the game over and over again along every play.
We show that it is decidable whether a given game satisfies the condition,
and prove tight complexity bounds for the strategy synthesis problem under
-regular winning conditions given by parity automata.Comment: 39 pages; 2nd revision; submitted to Information and Computatio
Practical Distributed Control Synthesis
Classic distributed control problems have an interesting dichotomy: they are
either trivial or undecidable. If we allow the controllers to fully
synchronize, then synthesis is trivial. In this case, controllers can
effectively act as a single controller with complete information, resulting in
a trivial control problem. But when we eliminate communication and restrict the
supervisors to locally available information, the problem becomes undecidable.
In this paper we argue in favor of a middle way. Communication is, in most
applications, expensive, and should hence be minimized. We therefore study a
solution that tries to communicate only scarcely and, while allowing
communication in order to make joint decision, favors local decisions over
joint decisions that require communication.Comment: In Proceedings INFINITY 2011, arXiv:1111.267
A Uniform Treatment of Architectures in Decentralized Discrete-Event System
Solutions to decentralized discrete-event systems problems are characterized
by the way local decisions are fused to yield a global decision. A fusion rule
is colloquially called an architecture. This paper provides a uniform treatment
of architectures in decentralized discrete-event systems. Current approaches
neither provide a direct way to determine problem solvability conditions under
one architecture, nor a way to compare existing architectures. Determining
whether a new architecture is more general than an existing known architecture
relies on producing examples ad hoc and on individual inspiration that puts the
conditions for solvability in each architecture into some form that admits
comparison. From these research efforts, a method based on morphisms between
graphs has been extracted to yield a uniform approach to decentralized
discrete-event system architectures and their attendant fusion rules. This
treatment provides an easy and direct way to compare the fusion rules -- and
hence to compare the strength or generality of the corresponding architectures
Robust decentralized supervisory control of discrete-event systems
In this thesis we study robust supervisory control of discrete event systems in two different settings. First, we consider the problem of synthesizing a set of decentralized supervisors when the precise model of the plant is not known, but it is known that it is among a finite set of plant models. To tackle this problem, we form the union of all possible behaviors and construct an appropriate specification, from the given set of specifications, and solve the conventional decentralized supervisory control associated with it. We also prove that the given robust problem has a solution if and only if this conventional decentralized supervisory control problem has a solution. In another setting, we investigate the problem of synthesizing a set of communicating supervisors in the presence of delay in communication channels, and call it Unbounded Communication Delay Robust Supervisory Control problem (UCDR-SC problem). In this problem, We assume that delay is unbounded but it is finite, meaning that any message sent from a local supervisor will be received by any other local supervisors after a finite but unknown delay. To solve this problem, we redefine the supervisory decision making rules, introduce a new language property called unbounded-communication-delay-robust (UCDR), and present a set of conditions on the specification of the problem. We also show that the new class of languages that is the solution to this problem has some interesting relations with other observational languages
Recommended from our members
Realizable, Connector-Driven Software Architectures for Practising Engineers
Despite being a widely-used language for specifying software systems, UML remains less than ideal for software architectures. Architecture description languages (ADLs) were developed to provide more comprehensive support. However, so far the application of ADLs in practice has been impeded by at least one of the following problems: (i) advanced formal notations requiring a steep learning curve, (ii) lack of support for user-defined, complex connectors, and (iii) potentially unrealizable architectural designs.
This paper proposes Xcd, a new ADL that aims at supporting user-defined, complex connectors to help increase architectural modularity. It also aims to help increase the degree of reusability, as now components need not specify interaction protocols, as these can be specified independently by connectors (which increases protocol reusability too).
Connector support requires to ensure that architectural designs are always realizable, as it is currently extremely easy to obtain unrealizable ones. Xcd eliminates potentially unrealizable constructs in connector specifications.
Finally, Xcd employs a notation and notions from Design-by-Contract (DbC) for specifying software architecture behaviour. While DbC promotes a formal and precise way of specifying system behaviours, it is not as challenging for practising developers as process algebras that are usually employed by ADLs
- …