Smalltalk-80: the language and its implementation
Smalltalk-80: the language and its implementation
Semantics and implementation of schema evolution in object-oriented databases
SIGMOD '87 Proceedings of the 1987 ACM SIGMOD international conference on Management of data
Concepts and experiments in computational reflection
OOPSLA '87 Conference proceedings on Object-oriented programming systems, languages and applications
Metaclasses are first class: The ObjVlisp Model
OOPSLA '87 Conference proceedings on Object-oriented programming systems, languages and applications
OOPSLA '87 Conference proceedings on Object-oriented programming systems, languages and applications
Computational reflection in class based object-oriented languages
OOPSLA '89 Conference proceedings on Object-oriented programming systems, languages and applications
The art of metaobject protocol
The art of metaobject protocol
Communications of the ACM
Communications of the ACM
Design patterns: elements of reusable object-oriented software
Design patterns: elements of reusable object-oriented software
The Legion vision of a worldwide virtual computer
Communications of the ACM
Dynamic layout of distributed applications in FarGo
Proceedings of the 21st international conference on Software engineering
The C++ Programming Language, Third Edition
The C++ Programming Language, Third Edition
The Programmers' Playground: I/O Abstraction for User-Configurable Distributed Applications
IEEE Transactions on Software Engineering
Object-Oriented Multi-Methods in Cecil
ECOOP '92 Proceedings of the European Conference on Object-Oriented Programming
Designing an Extensible Distributed Language with a Meta-Level Architecture
ECOOP '93 Proceedings of the 7th European Conference on Object-Oriented Programming
HADAS: A Network-Centric Framework for Interoperability Programming
COOPIS '97 Proceedings of the Second IFCIS International Conference on Cooperative Information Systems
Concordia: An Infrastructure for Collaborating Mobile Agents
MA '97 Proceedings of the First International Workshop on Mobile Agents
A Negotiation Model for Dynamic Composition of Distributed Applications
DEXA '98 Proceedings of the 9th International Workshop on Database and Expert Systems Applications
Reflection and semantics in LISP
POPL '84 Proceedings of the 11th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Operating system support for mobile agents
HOTOS '95 Proceedings of the Fifth Workshop on Hot Topics in Operating Systems (HotOS-V)
A Reflective Model for Mobile Software Objects
ICDCS '97 Proceedings of the 17th International Conference on Distributed Computing Systems (ICDCS '97)
Object management for network-centric systems with mobile objects
ICECCS '97 Proceedings of the Third IEEE International Conference on Engineering of Complex Computer Systems
System Support for Dynamic Layout of Distributed Applications
ICDCS '99 Proceedings of the 19th IEEE International Conference on Distributed Computing Systems
Agent Tcl: a flexible and secure mobile-agent system
TCLTK'96 Proceedings of the 4th conference on USENIX Tcl/Tk Workshop, 1996 - Volume 4
An aspect-oriented approach to dynamic adaptation
WOSS '02 Proceedings of the first workshop on Self-healing systems
Dynamic Module Replacement in Distributed Protocols
ICDCS '03 Proceedings of the 23rd International Conference on Distributed Computing Systems
DREAM: a component framework for the construction of resource-aware, reconfigurable MOMs
ARM '04 Proceedings of the 3rd workshop on Adaptive and reflective middleware
DREAM: A Component Framework for Constructing Resource-Aware, Configurable Middleware
IEEE Distributed Systems Online
Model-driven development of component-based adaptive distributed applications
Proceedings of the 2008 ACM symposium on Applied computing
An algorithm for task-based application composition
SEA '07 Proceedings of the 11th IASTED International Conference on Software Engineering and Applications
Towards composing software components in both design and deployment phases
CBSE'07 Proceedings of the 10th international conference on Component-based software engineering
Reconfigurable run-time support for distributed service component architectures
Proceedings of the IEEE/ACM international conference on Automated software engineering
Designing dynamic software architecture for home service robot software
EUC'06 Proceedings of the 2006 international conference on Embedded and Ubiquitous Computing
Dimensions of composition models for supporting software evolution
SC'06 Proceedings of the 5th international conference on Software Composition
Enabling on demand deployment of middleware services in componentized middleware
CBSE'10 Proceedings of the 13th international conference on Component-Based Software Engineering
A component-based middleware platform for reconfigurable service-oriented architectures
Software—Practice & Experience
Hi-index | 0.01 |
Global network connectivity has enabled accessibility to a wide range of geographically dispersed services. By encapsulating and representing such services as components, they can be effectively composed into sophisticated wide-area applications that otherwise would be much harder to build. This paper presents a component model for encapsulating such services and a composition model for assembling encapsulated and possibly active services into new applications, while preserving the administrative autonomy of sites and individual components. The component model is dynamically- and self-adaptable, allowing for the adjustment of structure and behavior of autonomous components to changing or previously unknown contexts in which they need to operate. The composition model includes a set of protocols that enable us to dynamically deploy live components into remote sites and to dynamically reconfigure the deployment scheme through reflective stubs termed Ambassadors. The component and composition models have been fully implemented in Hadas, which also includes a host of tools for the creation, deployment, and composition of autonomous components.