Separating Interaction Concerns from Distributed Feature Components

Interaction problems between heterogeneous appli- cations require consideration of the semantic issue of reliable composition. This problem has become significant and ubiquitous in distributed systems as the Internet rapidly grows as a mainstream service platform and requires increasing automatic coordination and cooperation between services at two ends. A feature must be able to adjust itself to work with other features or services - a highly relevant problem called feature interaction. In line with this, in this paper we propose a complexity controlling method that is suitable for distributed systems in which each feature has two concerns, namely a hard logic and a soft logic. The hard logic implements exactly the specification of a feature, while the soft logic deals with the adaptation aspects of a feature, i.e. resolving interaction problems and making features work together. A two level architecture, particularly designed for aspect oriented programming, is described with a meta level being used to describe interaction resolution, with features being at the base level. Through a case study of email systems, we explain the architecture and highlight the cause of resolution interaction problems and how this particular problem is solved.

[1]  Stephan Reiff-Marganiec,et al.  A Feature Manager Approach to the Analysis of Component-Interactions , 2002, FMOODS.

[2]  Karl J. Lieberherr,et al.  Aspectual Collaborations: Combining Modules and Aspects , 2003, Comput. J..

[3]  Doug Orleans,et al.  Incremental programming with extensible decisions , 2002, AOSD '02.

[4]  Lynne Blair,et al.  Feature Interactions - Life Beyond Traditional Telephony , 2000, FIW.

[5]  Daniel Amyot,et al.  Feature-Interaction Visualisation and Resolution in an Agent Environment , 1998, FIW.

[6]  Lynne Blair,et al.  An adaptive run time manager for the dynamic integration and interaction resolution of features , 2002, Proceedings 22nd International Conference on Distributed Computing Systems Workshops.

[7]  Mark Dermot Ryan,et al.  Feature Interactions in Telecommunications and Software Systems VIII, ICFI'05, 28-30 June 2005, Leicester, UK , 2005, FIW.

[8]  William G. Griswold,et al.  Getting started with ASPECTJ , 2001, CACM.

[9]  Ruth Milkman,et al.  Microsoft Secrets: How the World's Most Powerful Software Company Creates Technology, Shapes Markets, and Manages People , 1995 .

[10]  Robert J. Hall,et al.  Feature Interactions in Electronic Mail , 2000, FIW.

[11]  Stanley M. Sutton,et al.  Hyper/J™: multi-dimensional separation of concerns for Java™ , 2001, ICSE '02.

[12]  Yow-Jian Lin,et al.  A feature-interaction benchmark for IN and beyond , 1993, IEEE Communications Magazine.

[13]  Mario Kolberg,et al.  Feature interaction: a critical review and considered forecast , 2003, Comput. Networks.

[14]  Gordon S. Blair,et al.  Feature Interactions Outside a Telecom Domain , 2001, FICS.

[15]  Laurent Bussard,et al.  Towards a pragmatic composition model of Corba services based on AspectJ , 2000 .

[16]  Michel Riveill,et al.  Towards dynamic configuration of distributed applications , 2002, Proceedings 22nd International Conference on Distributed Computing Systems Workshops.

[17]  Nancy D. Griffeth,et al.  The negotiating agents approach to runtime feature interaction resolution , 1994, FIW.

[18]  Jan Vitek,et al.  Secure composition of untrusted code: wrappers and causality types , 2000, Proceedings 13th IEEE Computer Security Foundations Workshop. CSFW-13.

[19]  Karl J. Lieberherr,et al.  DJ: Dynamic Adaptive Programming in Java , 2001, Reflection.

[20]  Lynne Blair,et al.  Aspect-Oriented Solutions to Feature Interaction Concerns using AspectJ , 2003, FIW.