Component Composition Using Feature Models

  • Michael Eichberg
  • Karl Klose
  • Ralf Mitschke
  • Mira Mezini
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6092)

Abstract

In general, components provide and require services and two components are bound if the first component provides a service required by the second component. However, certain variability in services – w.r.t. how and which functionality is provided or required – cannot be described using standard interface description languages. If this variability is relevant when selecting a matching component then human interaction is required to decide which components can be bound. We propose to use feature models for making this variability explicit and (re-)enabling automatic component binding. In our approach, feature models are one part of service specifications. This enables to declaratively specify which service variant is provided by a component. By referring to a service’s variation points, a component that requires a specific service can list the requirements on the desired variant. Using these specifications, a component environment can then determine if a binding of the components exists that satisfies all requirements. The prototypical environment Columbus demonstrates the feasibility of the approach.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Kang, K., Cohen, S., Hess, J., Novak, W., Peterson, A.: Feature-oriented domain analysis (FODA) feasibility study. Technical report, Software Engineering Institute, Carnegie Mellon University (1990)Google Scholar
  2. 2.
    Czarnecki, K., Helsen, S., Eisenecker, U.: Staged configuration through specialization and multilevel configuration of feature models. Software Process: Improvement and Practice 10(2) (2005)Google Scholar
  3. 3.
    Lee, K., Kang, K.C., Lee, J.: Concepts and guidelines of feature modeling for product line software engineering. In: Proceedings of the 7th International Conference on Software Reuse: Methods, Techniques, and Tools, pp. 62–77. Springer, London (2002)CrossRefGoogle Scholar
  4. 4.
    Batory, D.: Feature models, grammars, and propositional formulas. In: Obbink, H., Pohl, K. (eds.) SPLC 2005. LNCS, vol. 3714. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  5. 5.
    Christensen, E., Curbera, F., Meredith, G., Weerawarana, S.: Web Services Description Language (WSDL) 1.1. W3C (March 2001), http://www.w3.org/TR/2001/NOTE-wsdl-20010315
  6. 6.
    Hadley, M.J.: Web Application Description Language (WADL). Sun Microsystems Inc. (February 2009), https://wadl.dev.java.net/wadl20090202.pdf
  7. 7.
    Nadalin, A., Goodner, M., Gudgin, M., Barbir, A., Granqvist, H.: WS-SecurityPolicy 1.3. OASIS (February 2009)Google Scholar
  8. 8.
    Nadalin, A., Goodner, M., Gudgin, M., Barbir, A., Granqvist, H.: WS-Trust 1.4. OASIS (February 2009)Google Scholar
  9. 9.
    Nadalin, A., Goodner, M., Gudgin, M., Barbir, A., Granqvist, H.: WS-SecureConversation 1.4. OASIS (February 2009), http://docs.oasis-open.org/ws-sx/ws-secureconversation/v1.4/os/ws-secureconversation-1.4-spec-os.html
  10. 10.
    aliCE Research Group: Tuprolog, http://www.alice.unibo.it/tuProlog/
  11. 11.
    Fowler, M.: Inversion of control containers and the dependency injection pattern (January 2004), http://www.martinfowler.com/articles/injection.html
  12. 12.
    Gosling, J., Joy, B., Steele, G., Bracha, G.: Java Language Specification, 3rd edn. Addison-Wesley, Reading (2005)Google Scholar
  13. 13.
    Forman, I.R., Conner, M.H., Danforth, S.H., Raper, L.K.: Release-to-release binary compatibility in som. SIGPLAN Not. 30(10), 426–438 (1995)CrossRefGoogle Scholar
  14. 14.
    Robak, S., Franczyk, B.: Modeling web services variability with feature diagrams. In: Chaudhri, A.B., Jeckle, M., Rahm, E., Unland, R. (eds.) NODe-WS 2002. LNCS, vol. 2593. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  15. 15.
    Topaloglu, N.Y., Capilla, R.: Modeling the variability of web services from a pattern point of view. In: Zhang, L.-J., Jeckle, M. (eds.) ECOWS 2004. LNCS, vol. 3250, Springer, Heidelberg (2004)Google Scholar
  16. 16.
    Kim, Y., Doh, K.G.: Adaptable webservices modeling using variability analysis. In: Proceedings of the Third International Conference on Convergence and Hybrid Information Technology. IEEE Computer Society, Los Alamitos (2008)Google Scholar
  17. 17.
    Rao, J., Su, X.: A survey of automated web service composition methods. In: Cardoso, J., Sheth, A.P. (eds.) SWSWPC 2004. LNCS, vol. 3387, pp. 43–54. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  18. 18.
    Keller, A., Ludwig, H.: The WSLA framework: Specifying and monitoring service level agreements for web services. Journal of Network and Systems Management 11(1), 57–81 (2003)CrossRefGoogle Scholar
  19. 19.
    Ludwig, H., Keller, A., Dan, A., King, R.P., Franck, R.: Web Service Level Agreement (WSLA) Language Specification 1.0. IBM Corporation (January 2003), http://www.research.ibm.com/wsla/WSLASpecV1-20030128.pdf
  20. 20.
    Frølund, S., Koistinen, J.: Qml: A lanugage for quality of service specification. Technical report, Software Technology Laboratory, HPL-98-10 (1998)Google Scholar
  21. 21.
    Vedamuthu, A.S., Orchard, D., Hirsch, F., Hondo, M., Yendluri, P., Boubez, T.: Web Services Policy 1.5 - Framework. W3C (September 2007)Google Scholar
  22. 22.
    van der Storm, T.: Variability and Component Composition. In: Bosch, J., Krueger, C. (eds.) ICOIN 2004 and ICSR 2004. LNCS, vol. 3107, pp. 157–166. Springer, Heidelberg (2004)Google Scholar
  23. 23.
    The OSGi Alliance: OSGi Service Platform, Release 4, Version 4.0.1 (2006)Google Scholar
  24. 24.
    Cervantes, H., Hall, R.: Automating service dependency management in a service-oriented component model. In: Proceedings of the 6th ICSE Workshop on CBSE: Automated Reasoning and Prediction. Carnegie Mellon University/Monash University, USA/Australia (2003)Google Scholar
  25. 25.
    Yu, H.Q., Reiff-Marganiec, S.: Non-functional property based service selection: A survey and classification of approaches. In: 2nd Non Functional Properties and Service Level Agreements in Service Oriented Computing Workshop (2008)Google Scholar
  26. 26.
    Beuche, D.: Composition and Construction of Embedded Software Families. PhD thesis, Otto-von-Guericke-Universität Magdeburg (2003)Google Scholar
  27. 27.
    Czarnecki, K., Wasowski, A.: Feature diagrams and logics: There and back again. In: Proceedings of the 11th International Software Product Line Conference (SPLC), IEEE Computer Society, Los Alamitos (2007)Google Scholar
  28. 28.
    Benavides, D., Trinidad, P., Ruiz-Cortés, A.: Automated reasoning on feature models. In: Pastor, Ó., Falcão e Cunha, J. (eds.) CAiSE 2005. LNCS, vol. 3520, pp. 491–503. Springer, Heidelberg (2005)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Michael Eichberg
    • 1
  • Karl Klose
    • 2
  • Ralf Mitschke
    • 1
  • Mira Mezini
    • 1
  1. 1.Technische Universität DarmstadtGermany
  2. 2.Aarhus UniversityDenmark

Personalised recommendations