The evolving philosophers problem: dynamic change management
Jeff Kramer,Jeff Magee +1 more
Reads0
Chats0
TLDR
A model for dynamic change management which separates structural concerns from component application concerns is presented and is applied to an example problem, 'evolving philosophers', which has been implemented and tested in the Conic environment for distributed systems.Abstract:
A model for dynamic change management which separates structural concerns from component application concerns is presented. This separation of concerns permits the formulation of general structural rules for change at the configuration level without the need to consider application state, and the specification of application component actions without prior knowledge of the actual structural changes which may be introduced. In addition, the changes can be applied in such a way so as to leave the modified system in a consistent state, and cause no disturbance to the unaffected part of the operational system. The model is applied to an example problem, 'evolving philosophers'. The principles of this model have been implemented and tested in the Conic environment for distributed systems. >read more
Citations
More filters
Journal ArticleDOI
Self-adaptive software: Landscape and research challenges
Mazeiar Salehie,Ladan Tahvildari +1 more
TL;DR: A taxonomy of research in self-adaptive software is presented, based on concerns of adaptation, that is, how, what, when and where, towards providing a unified view of this emerging area.
Proceedings ArticleDOI
Self-Managed Systems: an Architectural Challenge
Jeff Kramer,Jeff Magee +1 more
TL;DR: Some of the current promising work in self-management is discussed and an outline three-layer reference model is presented as a context in which to articulate some of the main outstanding research challenges.
Proceedings ArticleDOI
Architecture-based runtime software evolution
TL;DR: An architecture-based approach to runtime software evolution is presented and the role of software connectors in supporting runtime change is highlighted and an initial implementation of a tool suite for supporting the runtime modification of software architectures is presented.
Proceedings ArticleDOI
Research Directions in Requirements Engineering
TL;DR: Current requirements engineering (RE) research is reviewed and future research directions suggested by emerging software needs are identified, which aim to address RE needs for emerging systems of the future.
Proceedings ArticleDOI
Dynamic structure in software architectures
Jeff Magee,Jeff Kramer +1 more
TL;DR: ADL features which permit the description of dynamic software architectures in which the organisation of components and connectors may change during system execution are examined.
References
More filters
Journal ArticleDOI
Programming-in-the-Large Versus Programming-in-the-Small
Frank DeRemer,Hans Kron +1 more
TL;DR: The activity of writing large programs from that of writing small ones is distinguished, and emphasis is placed on facilities for information hiding and for defining layers of virtual machines.
Journal ArticleDOI
The drinking philosophers problem
K. M. Chandy,Jayadev Misra +1 more
TL;DR: Two paradigms are presented: the well-known distributed dining philosophers problem and a generalization of it, the distributed drinking philosophers problem, in which the depth of a process is a distinguishing property and a distributed implementation of an acyclic precedence graph is presented.
Journal ArticleDOI
A 15 Year Perspective on Automatic Programming
TL;DR: Automatic programming consists not only of an automatic compiler, but also some Means of acquiring the high-level specification to be compiled, some means of determining that it is the intended specification, and some (interactive) means of translating this high- level specification into a lower-level one which can be automatically compiled.
Journal ArticleDOI
Dynamic Configuration for Distributed Systems
Jeff Kramer,Jeff Magee +1 more
TL;DR: Using this model, the properties required by languages and their execution environments to support dynamic configuration are determined and CONIC, the distributed system which has been developed at Imperial College, is described to illustrate the feasibility of the model.
Proceedings ArticleDOI
Programming-in-the large versus programming-in-the-small
Frank DeRemer,Hans Kron +1 more
TL;DR: The activity of writing large programs is distinguished from that of writing small ones, which means systems consisting of many small programs (modules), usually written by different people.