Assessing Component's Behavioral Interoperability Concerning Goals

As reuse of components becomes increasingly important, so does the assessment of interoperability between them at the time of component assembly. In order for the assembled components to work appropriately according to the needs of the intended stakeholders, it is essential to clearly understand what the individual source components were intended for in the first place. However, research on component interoperability in the past by and large has been focused more on the structural similarities and behavioral interactions between architectural artifacts or between low-level library routines. In this paper, we present an approach to assessing components' behavioral interoperability, with the consideration of the stakeholders' goals which the source components were intended to help achieve. More specifically, we present rules for translating descriptions of stakeholders' goals, together with operations of components and their interactions, into declarative specifications, which are amenable to automatic analysis or automatic generation of visual displays of their execution model. This analysis and visual example will help assess whether the behavior of the assembled components helps, or hurts, the goals of the stakeholders of such assembled components. A Home Appliance Control System is used as a running example to illustrate the approach.

[1]  Sam Supakkul,et al.  Toward Component Non-functional Interoperability Analysis: A UML-based and Goal-Oriented Approach , 2006, 2006 IEEE International Conference on Information Reuse & Integration.

[2]  Philippe Massonet,et al.  GRAIL/KAOS: An Environment for Goal-Driven Requirements Engineering , 1997, Proceedings of the (19th) International Conference on Software Engineering.

[3]  Stephan Merz,et al.  Model checking UML state machines and collaborations , 2001, Workshop on Software Model Checking @ CAV.

[4]  Michael Jackson,et al.  A Reference Model for Requirements and Specifications , 2000, IEEE Softw..

[5]  하수철,et al.  [서평]「Component Software」 - Beyond Object-Oriented Programming - , 2000 .

[6]  Farhad Arbab,et al.  Coordination Models and Languages , 1998, Adv. Comput..

[7]  Alan W. Brown,et al.  Engineering of component-based systems , 1996, Proceedings of ICECCS '96: 2nd IEEE International Conference on Engineering of Complex Computer Systems (held jointly with 6th CSESAW and 4th IEEE RTAW).

[8]  David S. Rosenblum,et al.  Supporting architectural concerns in component interoperability standards , 2000, IEE Proc. Softw..

[9]  Arnaud Lanoix,et al.  Component Adaptation: Specification and Verification , 2006 .

[10]  Ariel Fuxman,et al.  Formal analysis of early requirements specifications , 2001 .

[11]  Steffen Becker,et al.  Performance Prediction of Component-Based Systems A Survey from an Engineering Perspective , 2006 .

[12]  Eric S. K. Yu,et al.  Towards modelling and reasoning support for early-phase requirements engineering , 1997, Proceedings of ISRE '97: 3rd IEEE International Symposium on Requirements Engineering.

[13]  Javier Cámara,et al.  Context-Based Adaptation of Component Behavioural Interfaces , 2007, COORDINATION.

[14]  Ralf Reussner,et al.  Architecting Systems with Trustworthy Components, 12.-17. December 2004 , 2006, Architecting Systems with Trustworthy Components.

[15]  Daniel Jackson,et al.  Elements of style: analyzing a software design feature with a counterexample detector , 1996, ISSTA '96.

[16]  Alan W. Brown Component-Based Software Engineering: Selected Papers from the Software Engineering Institute , 1996 .

[17]  John Mylopoulos,et al.  Non-Functional Requirements in Software Engineering , 2000, International Series in Software Engineering.

[18]  Fausto Giunchiglia,et al.  Tropos: An Agent-Oriented Software Development Methodology , 2004, Autonomous Agents and Multi-Agent Systems.

[19]  Steffen Becker,et al.  Towards an Engineering Approach to Component Adaptation , 2004, Architecting Systems with Trustworthy Components.

[20]  Evangelia Kavakli,et al.  Goal-Oriented Requirements Engineering: A Unifying Framework , 2002, Requirements Engineering.

[21]  Daniel Jackson,et al.  Software Abstractions - Logic, Language, and Analysis , 2006 .