Using Association Aspects to Implement Organisational Contracts

  • Authors:
  • Alan Colman;Jun Han

  • Affiliations:
  • Faculty ICT, Swinburne University of Technology, Melbourne, Australia;Faculty ICT, Swinburne University of Technology, Melbourne, Australia

  • Venue:
  • Electronic Notes in Theoretical Computer Science (ENTCS)
  • Year:
  • 2006

Quantified Score

Hi-index 0.01

Visualization

Abstract

The maintenance of organisation is a prerequisite for all viable systems in dynamic environments. In many living systems this organisation is, in part, achieved through coordination systems such as the nervous or endocrinic systems that can be seen as separate from the functional systems they coordinate. As software systems become more open and complex, the definition of separate organisational structures may prove a useful way to maintain their viability while managing their complexity. In this paper we show how a coordination system can be implemented as a separate concern, and posterior, to the definition of the functional system it controls and regulates. Such functional systems are loosely coupled collections of roles played by objects. We show how association-aspects can be used to create contracts that bind these roles together into an organisation. These contracts regulate the flow of control through a structure of roles in the organisation, and allow performance to be specified and monitored. These contracts also bind clusters of roles into self-managed composites - each composite with its own organiser role. The organiser roles can control, create, abrogate and reassign contracts. This ability enables organisers to reconfigure the system in response to changes in external conditions or changes in performance requirements.