Separation of concerns in hybrid component and agent systems

This paper discusses the Socially Situated Agent Architecture (SoSAA) – a complete construction methodology that leverages existing well-established research and associated methodologies and frameworks in both the agent-oriented and component-based software engineering domains. As a software framework, SoSAA is intended to serve as a foundation on which to build agent-based applications by promoting separation of concerns in the development of open, heterogeneous, adaptive and distributed systems. The paper highlights concerns typically addressed in the development of distributed systems, such as adaptation, concurrency and fault-tolerance. It analyses how a hybrid agent/component integration approach can improve the separation of these concerns by leveraging modularity constructs already available in agent and component systems. Finally, it provides a first evaluation of the framework's application by applying well-known metrics to a distributed information retrieval case study, and by discussing how these results can be projected to a typical multi-agent application developed with this hybrid approach.

[1]  Franco Zambonelli,et al.  Challenges and Research Directions in Agent-Oriented Software Engineering , 2004, Autonomous Agents and Multi-Agent Systems.

[2]  Gregory M. P. O'Hare,et al.  Beyond Prototyping in the Factory of Agents , 2003, CEEMAS.

[3]  H. D. Rombach,et al.  The Goal Question Metric Approach , 1994 .

[4]  Clemens A. Szyperski,et al.  Component software - beyond object-oriented programming , 2002 .

[5]  Alessandro F. Garcia,et al.  Coupling Metrics for Aspect-Oriented Programming: A Systematic Review of Maintainability Studies , 2009, ENASE.

[6]  Wouter Joosen,et al.  Aspectual vs. component-based decomposition: a quantitative study , 2007 .

[7]  Colin Atkinson,et al.  Separation of Concerns through Stratified Architectures , 2000 .

[8]  Yoav Shoham,et al.  Agent-Oriented Programming , 1992, Artif. Intell..

[9]  Hamid Mcheick,et al.  Understanding separation of concerns , 2004 .

[10]  Gregory M. P. O'Hare,et al.  SoSAA: a framework for integrating components & agents , 2009, SAC '09.

[11]  Gregory M. P. O'Hare,et al.  Practical Development of Hybrid Intelligent Agent Systems with SoSAA , 2009, AICS.

[12]  Liu Peng,et al.  A Self-configuring Agent-Based Document Indexing System , 2005, CEEMAS.

[13]  Harold Ossher,et al.  Subject-oriented programming: a critique of pure objects , 1993, OOPSLA '93.

[14]  Lodewijk Bergmans,et al.  An Object-Oriented Language-Database Integration Model: The Composition-Filters Approach , 1992, ECOOP.

[15]  Ali Mili,et al.  View programming for decentralized development of OO programs , 1999, Proceedings of Technology of Object-Oriented Languages and Systems - TOOLS 30 (Cat. No.PR00278).

[16]  Alessandro F. Garcia,et al.  On the Modularity Assessment of Software Architectures: Do my architectural concerns count? , 2007 .

[17]  Andrea Omicini,et al.  CArtA gO : A Framework for Prototyping Artifact-Based Environments in MAS , 2006, E4MAS.

[18]  José Alves Marques,et al.  Development of distributed applications with separation of concerns , 1995, Proceedings 1995 Asia Pacific Software Engineering Conference.

[19]  Antonia M. Reina Quintero,et al.  Components + Aspects: A General Overview , 2004, Rev. Colomb. de Computación.

[20]  Carlos José Pereira de Lucena,et al.  Separation of Concerns in Multi-agent Systems: An Empirical Study , 2003, SELMAS.

[21]  Erann Gat,et al.  Integrating Planning and Reacting in a Heterogeneous Asynchronous Architecture for Controlling Real-World Mobile Robots , 1992, AAAI.

[22]  Carlos José Pereira de Lucena,et al.  Quantifying the Effects of Aspect-Oriented Programming: A Maintenance Study , 2006, 2006 22nd IEEE International Conference on Software Maintenance.

[23]  Andrea Omicini,et al.  Environment as a first class abstraction in multiagent systems , 2007, Autonomous Agents and Multi-Agent Systems.

[24]  Vijay K. Vaishnavi,et al.  Design Science Research Methods and Patterns: Innovating Information and Communication Technology , 2007 .

[25]  Illah R. Nourbakhsh,et al.  Communication efficiency in multi-agent systems , 2004, IEEE International Conference on Robotics and Automation, 2004. Proceedings. ICRA '04. 2004.

[26]  Priya Narasimhan,et al.  Separation of concerns: functionality vs. quality of service , 1997, Proceedings Third International Workshop on Object-Oriented Real-Time Dependable Systems.

[27]  Gregory M. P. O'Hare,et al.  An Agent-Based Approach to Component Management , 2009, AAMAS.