Distributed cooperation with action systems
ACM Transactions on Programming Languages and Systems (TOPLAS)
IEEE Transactions on Software Engineering - Special issue on software architecture
A Discipline of Programming
Refinement Calculus: A Systematic Introduction
Refinement Calculus: A Systematic Introduction
Exploiting architectural design knowledge to support self-repairing systems
SEKE '02 Proceedings of the 14th international conference on Software engineering and knowledge engineering
WOSS '02 Proceedings of the first workshop on Self-healing systems
Trace Refinement of Action Systems
CONCUR '94 Proceedings of the Concurrency Theory
Action Systems with Synchronous Communication
PROCOMET '94 Proceedings of the IFIP TC2/WG2.1/WG2.2/WG2.3 Working Conference on Programming Concepts, Methods and Calculi
Refinement Calculus, Part II: Parallel and Reactive Programs
Stepwise Refinement of Distributed Systems, Models, Formalisms, Correctness, REX Workshop
Dynamic Configuration of Resource-Aware Services
Proceedings of the 26th International Conference on Software Engineering
An Architecture for Coordinating Multiple Self-Management Systems
WICSA '04 Proceedings of the Fourth Working IEEE/IFIP Conference on Software Architecture
The dawning of the autonomic computing era
IBM Systems Journal
Hi-index | 0.00 |
In this paper we demonstrate how to use action systems to specify and refine self-adaptive systems. Focusing on the special case in which there are a fixed set of possible configurations, we use a recently-introduced synchronization operator to achieve separation of concerns between adaptation policy and steady-state system execution. The use of action systems permits the application of standard techniques for refinement to construct correct implementations from higher-level models. We illustrate the application of this idea to the problem of coping with dynamically-varying user requirements.