Non-modularity in aspect-oriented languages: integration as a crosscutting concern for AspectJ
AOSD '02 Proceedings of the 1st international conference on Aspect-oriented software development
Object-Oriented Software Construction
Object-Oriented Software Construction
Separating computation, coordination and configuration
Journal of Software Maintenance: Research and Practice - Special issue: Separation of concerns for software evolution
Role Modeling for Agent System Analysis, Design, and Implementation
ASAMA '99 Proceedings of the First International Symposium on Agent Systems and Applications Third International Symposium on Mobile Agents
Eos: instance-level aspects for integrated system design
Proceedings of the 9th European software engineering conference held jointly with 11th ACM SIGSOFT international symposium on Foundations of software engineering
Proceedings of the 3rd international conference on Aspect-oriented software development
Operational Management Contracts for Adaptive Software Organisation
ASWEC '05 Proceedings of the 2005 Australian conference on Software Engineering
Coordination systems in role-based adaptive software
COORDINATION'05 Proceedings of the 7th international conference on Coordination Models and Languages
Adaptive application-specific middleware
Proceedings of the 1st workshop on Middleware for Service Oriented Computing (MW4SOC 2006)
Roles, players and adaptable organizations
Applied Ontology - Roles, an interdisciplinary perspective
Electronic Notes in Theoretical Computer Science (ENTCS)
Roles, players and adaptable organizations
Applied Ontology - Roles, an interdisciplinary perspective
Hi-index | 0.01 |
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.