Totem: a fault-tolerant multicast group communication system
Communications of the ACM
Software engineering issues for ubiquitous computing
Proceedings of the 21st international conference on Software engineering
An evaluation of audio-centric CMU wearable computers
Mobile Networks and Applications
Distributed systems (3rd ed.): concepts and design
Distributed systems (3rd ed.): concepts and design
An Architecture-Based Approach to Self-Adaptive Software
IEEE Intelligent Systems
State Synchronization and Recovery for Strongly Consistent Replicated CORBA Objects
DSN '01 Proceedings of the 2001 International Conference on Dependable Systems and Networks (formerly: FTCS)
Software Architecture-Based Adaptation for Pervasive Systems
ARCS '02 Proceedings of the International Conference on Architecture of Computing Systems: Trends in Network and Pervasive Computing
Eternal: a component-based framework for transparent fault-tolerant CORBA
Software—Practice & Experience - Special issue: Enterprise frameworks
ACM-SE 42 Proceedings of the 42nd annual Southeast regional conference
A Style-Aware Architectural Middleware for Resource-Constrained, Distributed Systems
IEEE Transactions on Software Engineering
Exploring the Role of Software Architecture in Dynamic and Fault Tolerant Pervasive Systems
SEPCASE '07 Proceedings of the 1st International Workshop on Software Engineering for Pervasive Computing Applications, Systems, and Environments
A lightweight infrastructure for reconfiguring applications
SCM'01/SCM'03 Proceedings of the 2001 ICSE Workshops on SCM 2001, and SCM 2003 conference on Software configuration management
Hi-index | 0.00 |
Software systems that execute in embedded and pervasive environments are frequently required to be self-monitoring, self-adapting, and self-healing. However, supporting these self-* capabilities in pervasive environments creates a number of unique engineering challenges. This paper first describes the challenges that we believe to be the most significant based on our experience developing real-world pervasive software applications with self-* capabilities. We then discuss each challenge in the context of four strategies commonly employed in self-* systems: dynamic software update, service discovery, transparent replication, and logical mobility. Finally, we explain how each strategy is implemented in our architectural middleware platform, Prism-MW.