ACM Transactions on Programming Languages and Systems (TOPLAS)
Abstractions for Software Architecture and Tools to Support Them
IEEE Transactions on Software Engineering - Special issue on software architecture
Specification and Analysis of System Architecture Using Rapide
IEEE Transactions on Software Engineering - Special issue on software architecture
Chameleon: A Software Infrastructure for Adaptive Fault Tolerance
IEEE Transactions on Parallel and Distributed Systems
A Classification and Comparison Framework for Software Architecture Description Languages
IEEE Transactions on Software Engineering
Hierarchical Error Detection in a Software Implemented Fault Tolerance (SIFT) Environment
IEEE Transactions on Knowledge and Data Engineering
Using Architectural Style as a Basis for System Self-repair
WICSA 3 Proceedings of the IFIP 17th World Computer Congress - TC2 Stream / 3rd IEEE/IFIP Conference on Software Architecture: System Design, Development and Maintenance
An Experimental Evaluation of the REE SIFT Environment for Spaceborne Applications
DSN '02 Proceedings of the 2002 International Conference on Dependable Systems and Networks
Architectural Support for Dynamic Reconfiguration of Large Scale Distributed Applications
CDS '98 Proceedings of the International Conference on Configurable Distributed Systems
Analysing Dynamic Change in Software Architectures: A Case Study
CDS '98 Proceedings of the International Conference on Configurable Distributed Systems
Consistency in Dynamic Reconfiguration
CDS '98 Proceedings of the International Conference on Configurable Distributed Systems
Micro-Checkpointing: Checkpointing for Multithreaded Applications
IOLTW '00 Proceedings of the 6th IEEE International On-Line Testing Workshop (IOLTW)
Survey of Deadlock Detection in Distributed Concurrent Programming Environments and Its Application to Real-Time Systems
IEEE Transactions on Software Engineering
The dawning of the autonomic computing era
IBM Systems Journal
Application Fault Tolerance with Armor Middleware
IEEE Internet Computing
ACM SIGBED Review - Special issue: The second workshop on high performance, fault adaptive, large scale embedded real-time systems (FALSE-II)
Autonomic resource provisioning for software business processes
Information and Software Technology
Hierarchical agent monitoring design approach towards self-aware parallel systems-on-chip
ACM Transactions on Embedded Computing Systems (TECS)
A dynamically reconfigurable system based on workflow and service agents
Engineering Applications of Artificial Intelligence
Autonomic wireless sensor networks
Engineering Applications of Artificial Intelligence
Improving grid service's QoS through self-configuring regulation
Engineering Applications of Artificial Intelligence
A metabolic approach to protocol resilience
WAC'04 Proceedings of the First international IFIP conference on Autonomic Communication
A domain model for dynamic system reconfiguration
MoDELS'05 Proceedings of the 8th international conference on Model Driven Engineering Languages and Systems
Experiments on the automatic evolution of protocols using genetic programming
WAC'05 Proceedings of the Second international IFIP conference on Autonomic Communication
A feedback-based decentralised coordination model for distributed open real-time systems
Journal of Systems and Software
Representing dynamic pluggable software units
Proceedings of the 28th Annual ACM Symposium on Applied Computing
Hi-index | 0.00 |
The ability to reconfigure software is useful for a variety of reasons, including adapting applications to changing environments, performing on-line software upgrades, and extending base application functionality with additional nonfunctional services. Reconfiguring distributed applications, however, can be difficult in practice because of the dependencies that exist among the processes in the system. This paper formally describes a model for capturing the structure and run-time behavior of a distributed system. The structure is defined by a set of elements containing the state variables in the system. The run-time behavior is defined by threads that execute atomic actions called operations. Operations invoke code blocks to bring about state changes in the system, and these state changes are confined to a single element and thread. By creating input/output signatures based upon the variable access patterns of the code blocks, dataflow dependencies among operations can be derived for a given configuration of the system. Proposed reconfigurations can be evaluated through off-line tests using the formal model to determine whether the new mapping of operations-to-code blocks disrupts existing dataflow dependencies in the system. System administrators--or software components that control adaptivity in autonomic systems--can use the results of these tests to gauge the impact of a proposed reconfiguration on the existing system. The system model presented in this paper underpins the design of reconfigurable ARMOR (Adaptive Reconfigurable Mobile Objects of Reliability) processes that provide flexible error detection and recovery services to user applications.