Promises: linguistic support for efficient asynchronous procedure calls in distributed systems
PLDI '88 Proceedings of the ACM SIGPLAN 1988 conference on Programming Language design and Implementation
The Evolving Philosophers Problem: Dynamic Change Management
IEEE Transactions on Software Engineering
Dynamic reconfiguration of distributed applications
Dynamic reconfiguration of distributed applications
A Formal Framework for On-line Software Version Change
IEEE Transactions on Software Engineering
Component software: beyond object-oriented programming
Component software: beyond object-oriented programming
Software Change Impact Analysis
Software Change Impact Analysis
A tool for component based design of embedded software
CRPIT '02 Proceedings of the Fortieth International Conference on Tools Pacific: Objects for internet, mobile and embedded applications
Transaction Processing: Concepts and Techniques
Transaction Processing: Concepts and Techniques
Dynamic Support for Distributed Auto-Adaptive Applications
ICDCSW '02 Proceedings of the 22nd International Conference on Distributed Computing Systems
Software Evolution in Componentware-A Practical Approach
ASWEC '00 Proceedings of the 2000 Australian Software Engineering Conference
Dynamic restructuring in an experimental operating system
ICSE '78 Proceedings of the 3rd international conference on Software engineering
How to design a system in which modules can be changed on the fly
ICSE '76 Proceedings of the 2nd international conference on Software engineering
Dynamic software updating
An alternative to Quiescence: Tranquility
ICSM '06 Proceedings of the 22nd IEEE International Conference on Software Maintenance
Introspecting continuations in order to update active code
Proceedings of the 1st International Workshop on Hot Topics in Software Upgrades
DynaQoS©-RDF: a best effort for QoS-assurance of dynamic reconfiguration of dataflow systems
Journal of Software Maintenance and Evolution: Research and Practice
Dynamic update of Java applications—balancing change flexibility vs programming transparency
Journal of Software Maintenance and Evolution: Research and Practice - Special Issue on the 12th Conference on Software Maintenance and Reengineering (CSMR 2008)
Cooperative update: a new model for dependable live update
Proceedings of the 2nd International Workshop on Hot Topics in Software Upgrades
Automatically generating adaptive logic to balance non-functional tradeoffs during reconfiguration
Proceedings of the 7th international conference on Autonomic computing
ReCaml: execution state as the cornerstone of reconfigurations
Proceedings of the 15th ACM SIGPLAN international conference on Functional programming
Modelling the asynchronous dynamic evolution of architectural types
SOAR'09 Proceedings of the First international conference on Self-organizing architectures
On the role of architectural styles in improving the adaptation support of middleware platforms
ECSA'10 Proceedings of the 4th European conference on Software architecture
Safely updating running software: tranquility at the object level
Proceedings of the 7th Workshop on Reflection, AOP and Meta-Data for Software Evolution
Architectural issues of adaptive pervasive systems
Graph transformations and model-driven engineering
Elastic executions from inelastic programs
Proceedings of the 6th International Symposium on Software Engineering for Adaptive and Self-Managing Systems
Dynamic software update for component-based distributed systems
Proceedings of the 16th international workshop on Component-oriented programming
Version-consistent dynamic reconfiguration of component-based distributed systems
Proceedings of the 19th ACM SIGSOFT symposium and the 13th European conference on Foundations of software engineering
Evaluating the impacts of dynamic reconfiguration on the QoS of running systems
Journal of Systems and Software
Utilizing architectural styles to enhance the adaptation support of middleware platforms
Information and Software Technology
Local dynamic update for component-based distributed systems
Proceedings of the 15th ACM SIGSOFT symposium on Component Based Software Engineering
Proceedings of the 15th ACM SIGSOFT symposium on Component Based Software Engineering
Mining the execution history of a software system to infer the best time for its adaptation
Proceedings of the ACM SIGSOFT 20th International Symposium on the Foundations of Software Engineering
Safe and automatic live update for operating systems
Proceedings of the eighteenth international conference on Architectural support for programming languages and operating systems
Formalizing correctness criteria of dynamic updates derived from specification changes
Proceedings of the 8th International Symposium on Software Engineering for Adaptive and Self-Managing Systems
A hybrid approach for resource-based comparison of adaptable Java applications
Science of Computer Programming
Managing environment and adaptation risks for the internetware paradigm
Theories of Programming and Formal Methods
Back to the future: fault-tolerant live update with time-traveling state transfer
LISA'13 Proceedings of the 27th international conference on Large Installation System Administration
A systematic literature review of service choreography adaptation
Service Oriented Computing and Applications
Hi-index | 0.00 |
This paper revisits a problem that was identified by Kramer and Magee: placing a system in a consistent state before and after runtime changes. We show that their notion of quiescence as a necessary and sufficient condition for safe runtime changes is too strict and results in a significant disruption in the application being updated. In this paper, we introduce a weaker condition: tranquility. We show that tranquility is easier to obtain and less disruptive for the running application but still a sufficient condition to ensure application consistency. We present an implementation of our approach on a component middleware platform and experimentally verify the validity and practical applicability of our approach using data retrieved from a case study.