Language Support for Managing Variability in Architectural Models

  • Neil Loughran
  • Pablo Sánchez
  • Alessandro Garcia
  • Lidia Fuentes
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4954)

Abstract

The effective management and composition of architectural variabilities has long been of importance to product line architects. Architects need to describe how conceptual variabilities are composed and realised through architectural decompositions of a product line. Architecture variabilities need to be described in terms of the chosen design decompositions, which do not often correspond naturally to feature model decompositions. Also, the fine-grained nature of certain architectural variabilities makes it difficult to represent them in a modular fashion, and describe how they are composed across different views. In order to address these issues, this paper presents a variability modelling language (VML), which supports first-class representation of heterogeneous forms of architectural variabilities. The language complements existing architectural modelling approaches for product lines by providing mechanisms to: (i) explicitly reference variation points in multiple architectural views, and (ii) support compositions involving both fine-grained and coarse-grained variabilities in an orthogonal fashion. The completeness and simplicity of VML is assessed through four case studies from different domains.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Clements, P., Northrop, L.: Software Product Lines: Practices and Patterns, 3rd edn. Addison-Wesley, Reading (2001)Google Scholar
  2. 2.
    Czarnecki, K., Eisenecker, U.W.: Generative Programming - Methods, Tools, and Applications. Addison-Wesley, Reading (2000)Google Scholar
  3. 3.
    Pohl, K., et al.: Software Product Line Engineering: Foundations, Principles and Techniques. Springer, Heidelberg (2005)MATHGoogle Scholar
  4. 4.
    Bachmann, F., et al.: A meta-model for representing variability in product family development. In: van der Linden, F.J. (ed.) PFE 2003. LNCS, vol. 3014, pp. 66–80. Springer, Heidelberg (2004)Google Scholar
  5. 5.
  6. 6.
    Gears-BigLever Software Inc, http://www.biglever.com
  7. 7.
    Loughran, N., et al.: Synthesis of state-of-the-art in spl architecture design and mdd-based architecture design. Technical Report D2.1, AMPLE Project (2007)Google Scholar
  8. 8.
    Sánchez, P., et al.: A metamodel for designing software architectures of aspect-oriented software product lines. Technical Report D2.2, AMPLE Project (2007)Google Scholar
  9. 9.
    van Gurp, J., Bosch, J.: Design erosion: problems and causes. Journal of Systems and Software 61(2), 105–119 (2002)CrossRefGoogle Scholar
  10. 10.
    Clauß, M.: Modelling variability with uml. In: Proc. of the Young Researchers Workshop, 3rd GCSE, Erfurt (2001)Google Scholar
  11. 11.
    Rashid, A., Chitchyan, R.: Persistence as an aspect. In: Proc. of the 2nd Int. Conf. on AOSD, Boston, USA, pp. 120–129 (2003)Google Scholar
  12. 12.
    Garcia, A., et al.: Agents in object-oriented software engineering. Software Practice and Experience 34(5), 489–521 (2004)CrossRefGoogle Scholar
  13. 13.
    Soares, S., et al.: Implementing distribution and persistence aspects with aspectj. In: Proc. of the 22nd Conf. on OO Programming, Systems, Languages and Applications (OOPSLA), Seattle, USA, pp. 174–190 (2002)Google Scholar
  14. 14.
    Kulesza, U., et al.: Towards a method for developing aspect-oriented generative approaches. In: Proc. of the Workshop on Early Aspects (EA), 24th OOPSLA, Vancouver, Canada (2004)Google Scholar
  15. 15.
    van Ommering, R., et al.: The koala component model for consumer electronics software. IEEE Computer 33(3), 78–85 (2000)Google Scholar
  16. 16.
    Hendrickson, S.A., van der Hoek, A.: Modeling product line architectures through change sets and relationships. In: Proc. of the 29th Int. Conf. on Software Engineering (ICSE), Minneapolis, USA, pp. 189–198 (2007)Google Scholar
  17. 17.
    Whittle, J., Jayaraman, P.: Mata: A tool for aspect-oriented modeling based on graph transformation. In: Proc. of the 11th Workshop on AOM, 10th MODELS, Nashville, USA (2007)Google Scholar
  18. 18.
    Greenwood, P., et al.: On the impact of aspectual decompositions on design stability: An empirical study. In: Ernst, E. (ed.) ECOOP 2007. LNCS, vol. 4609, pp. 176–200. Springer, Heidelberg (2007)CrossRefGoogle Scholar
  19. 19.
    Molesini, A., et al.: On the quantitative analysis of architecture stability in aspectual decompositions. In: Proc. of the 7th Working IEEE/IFIP Conf. on Software Architecture (WICSA), Vancouver, Canada (2008)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2008

Authors and Affiliations

  • Neil Loughran
    • 1
  • Pablo Sánchez
    • 2
  • Alessandro Garcia
    • 1
  • Lidia Fuentes
    • 2
  1. 1.Computing DepartmentLancaster UniversityUK
  2. 2.Dpto. de Lenguajes y Ciencias de la ComputaciónUniversidad de MálagaMálagaSpain

Personalised recommendations