Evolving and using coordinated systems
Proceedings of the International Workshop on Principles of Software Evolution
Coordination contracts for Java applications
Proceedings of the 24th International Conference on Software Engineering
An architectural support for self-adaptive software for treating faults
WOSS '02 Proceedings of the first workshop on Self-healing systems
Support for business-driven evolution with coordination technologies
IWPSE '01 Proceedings of the 4th International Workshop on Principles of Software Evolution
Information Systems - The 13th international conference on advanced information systems engineering (CAiSE*01)
Novel Approaches in Dependable Computing
EDCC-4 Proceedings of the 4th European Dependable Computing Conference on Dependable Computing
The Coordination Development Environment
FASE '02 Proceedings of the 5th International Conference on Fundamental Approaches to Software Engineering
Coordination Technologies for Managing Information System Evolution
CAiSE '01 Proceedings of the 13th International Conference on Advanced Information Systems Engineering
Separating computation, coordination and configuration
Journal of Software Maintenance: Research and Practice - Special issue: Separation of concerns for software evolution
Developing and evolving Java applications using coordination contracts
OOPSLA '02 Companion of the 17th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
A coordination methodology and technology for agile businesses
OOPSLA '02 Companion of the 17th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Hi-index | 0.00 |
Whereas object-oriented techniques like inheritance and clientship have provided useful tools for taming the complexity of system construction, it is now clear that the same kind of support cannot be extended to evolution. Yet, the volatility of business requirements, namely as a result of e-economics, is putting an increasing pressure on the ability to accommodate changes and extensions in run-time, even performed directly by customers, and with minimal impact on the rest of the system. In this paper, we will argue for the adoption of a third structuring principle-coordination-which treats components as black boxes and is compositional with respect to change. This principle is supported by techniques borrowed from Parallel Program Design (superposition) and Configurable Distributed Systems (architectural connectors). We provide a formal semantics based on Category Theory that admits an implementation via design patterns. Finally, we discuss its impact on software development methodology.