Interconnecting objects via contracts
Abstract:
Abstract. The evolution of today's markets and the high volatility of business requirements put an increasing emphasis on the flexibility of systems, i.e. on the ability for systems to accommodate the changes required by new or different organisational needs with a minimum impact on the implemented services. In this paper, we put forward an extension of UML with a semantic primitive – contract – for representing explicitly the rules that determine the way object interaction needs to be coordinated to satisfy business requirements, as well as the mechanisms that make it possible to reflect changes of the business requirements without having to modify the basic objects that compose the system. Contracts are proposed as extended forms of association classes whose semantics rely on principles that have been used in Software Architectures and Distributed System Design for supporting dynamic reconfiguration. 1
Citations
| 958 | Software Architecture: Perspectives on an Emerging Discipline – Shaw, Garlan - 1996 |
| 300 | Applying “design by contract – Meyer - 1992 |
| 106 | A superimposition control construct for distributed systems – Katz - 1993 |
| 58 | Design Patterns, Elements of Reusable Software – Gamma, Johnson, et al. - 1995 |
| 35 | Categorical foundations for general systems theory – Goguen - 1973 |
| 20 | A.Lopes, "Semantics of Architectural Connectors – Fiadeiro - 1997 |
| 19 | T.Maibaum, "Categorical Semantics of Parallel Program Design", Science of Computer Programming 28 – Fiadeiro - 1997 |
| 19 | Towards an Algebra of Architectural Connectors: a Case Study on Synchronisation for Mobility – Wermelinger, Fiadeiro - 1998 |
| 15 | J.Kramer, "Dynamic Structure in Software Architectures – Magee - 1996 |
| 11 | Using explicit state to describe architectures – Lopes, Fiadeiro - 1999 |

