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.
|Number of pages||12|
|Publication status||Published - 2001|
|Event||Technology of Object-Oriented Languages and Systems (TOOLS 38) - Zurich, Switzerland|
Duration: 14 Mar 2001 → 14 Mar 2001
|Conference||Technology of Object-Oriented Languages and Systems (TOOLS 38)|
|Period||14/03/01 → 14/03/01|