Skip to main content

Associations in MDE: A Concern-Oriented, Reusable Solution

  • Conference paper
  • First Online:
Modelling Foundations and Applications (ECMFA 2016)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 9764))

Included in the following conference series:

Abstract

Associations play an important role in model-driven software development. This paper describes a framework that uses Concern-Oriented Reuse (CORE) to capture many different kinds of associations, their properties, behaviour, and various implementation solutions within a reusable artifact: the Association concern. The concern exploits aspect-oriented modelling techniques to modularize the structure and behaviour required for enforcing uniqueness, multiplicity constraints and referential integrity for bidirectional associations. Furthermore, it packages different collection implementation classes that can be used to realize associations. For each implementation class, the impact of its use on non-functional qualities, e.g., memory consumption and performance, has been determined experimentally and formalized. We show how the class diagram notation, i.e., its metamodel and visual representation, can be extended to support reusing the Association concern, and present enhancements to automate feature selection and customization mappings to maximally streamline the reuse process in modelling tools.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    http://touchcore.cs.mcgill.ca.

  2. 2.

    Bidirectional associations are supported as well by using two unidirectional associations between the same elements in opposite direction.

  3. 3.

    The results for the other operations, i.e., access performance, iteration, and removal, are not shown for space reasons. They are available in [5], which also describes additional experiments that we ran to compare performance on different Java execution platforms.

References

  1. Ahuja, K.V.: Technical Whitepaper: Performance Evaluation | Java Collections Framework (2008). http://scrtchpad.files.wordpress.com/2008/10/java-collections-performance-evaluation.pdf

  2. Akehurst, D., Howells, G., McDonald-Maier, K.: Implementing associations: UML 2.0 to Java 5. Softw. Syst. Model. 6(1), 3–35 (2006)

    Article  Google Scholar 

  3. Alam, O., Kienzle, J., Mussbacher, G.: Concern-oriented software design. In: Moreira, A., Schätz, B., Gray, J., Vallecillo, A., Clarke, P. (eds.) MODELS 2013. LNCS, vol. 8107, pp. 604–621. Springer, Heidelberg (2013)

    Chapter  Google Scholar 

  4. Badreddin, O., Forward, A., Lethbridge, T.C.: Improving code generation for associations: enforcing multiplicity constraints and ensuring referential integrity. In: Lee, R. (ed.) SERA 2013. SCI, vol. 496, pp. 129–149. Springer, Heidelberg (2013)

    Chapter  Google Scholar 

  5. Bensoussan, C.: Associations in MDE: A Concern-Oriented, Reusable Solution. M.Sc. Thesis, School of Computer Science, McGill University, March 2016

    Google Scholar 

  6. Schmidt, D.C.: Model-driven engineering. IEEE Comput. 39, 41–47 (2006)

    Article  Google Scholar 

  7. EJ Technologies: JProfiler. https://www.ej-technologies.com/products/jprofiler/overview.html

  8. France, R., Rumpe, B.: Model-driven development of complex software: a research roadmap. In: Future of Software Engineering, pp. 37–54. IEEE (2007)

    Google Scholar 

  9. Génova, G., del Castillo, C.R., Llorens, J.: Mapping UML associations into Java code. J. Object Technol. 2(5), 135–162 (2003)

    Article  Google Scholar 

  10. Georges, A., Buytaert, D., Eeckhout, L.: Statistically rigorous java performance evaluation. SIGPLAN Not. 42(10), 57–76 (2007)

    Article  Google Scholar 

  11. Gessenharter, D.: Mapping the UML2 Semantics of associations to a java code generation model. In: Czarnecki, K., Ober, I., Bruel, J.-M., Uhl, A., Völter, M. (eds.) MODELS 2008. LNCS, vol. 5301, pp. 813–827. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  12. Harrison, W., Barton, C.: Mapping UML designs to Java. In: OOPSLA, pp. 178–188. ACM Press (2000)

    Google Scholar 

  13. International Telecommunication Union (ITU-T): Recommendation Z.151: User Requirements Notation (URN) - Language Definition, October 2012

    Google Scholar 

  14. Kang, K., Cohen, S., Hess, J., Novak, W., Peterson, S.: Feature-Oriented Domain Analysis (FODA) Feasibility Study. Technical report. CMU/SEI-90-TR-21, SEI, CMU, November 1990

    Google Scholar 

  15. Kienzle, J. (ed.): Transactions on Aspect-Oriented Development VII, Special Issue on a Common Case Study for Aspect-Oriented Modeling. Springer, Heidelberg (2010)

    MATH  Google Scholar 

  16. Object Management Group: Unified Modeling Language (UML) Superstructure, v. 2.5, pp. 32–35, March 2015

    Google Scholar 

  17. Object Management Group (OMG): UML Profile for MARTE: Modeling and Analysis of Real-Time Embedded Systems, June 2011

    Google Scholar 

  18. Pohl, K., Böckle, G., van der Linden, F.J.: Software Product Line Engineering: Foundations, Principles and Techniques. Springer, New York (2005)

    Book  MATH  Google Scholar 

  19. Filman, R., Elrad, T., Clarke, S., Akşit, M.: Aspect-Oriented Software Development. Addison-Wesley, Reading (2004)

    Google Scholar 

  20. Schöttle, M., Alam, O., Kienzle, J., Mussbacher, G.: On the modularization provided by concern-oriented reuse. In: Modularity in Modelling Workshop - MOMO 2016, MODULARITY Companion 2016, pp. 184–189. ACM (2016)

    Google Scholar 

  21. Schöttle, M., Thimmegowda, N., Alam, O., Kienzle, J., Mussbacher, G.: Feature modelling and traceability for concern-driven software development with TouchCORE. In: Companion Proceedings of MODULARITY, pp. 11–14. ACM (2015)

    Google Scholar 

  22. Tarr, P., Ossher, H., Harrison, W., Sutton Jr., S.M.: N Degrees of separation: multi-dimensional separation of concerns. In: International Conference on Software Engineering - ICSE, pp. 107–119. IEEE (1999)

    Google Scholar 

  23. Weigert, T., Weil, F., van den Berg, A., Dietz, P., Marth, K.: Automated code generation for industrial-strength systems. In: COMPSAC 2008, pp. 464–472 (2008)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Céline Bensoussan .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing Switzerland

About this paper

Cite this paper

Bensoussan, C., Schöttle, M., Kienzle, J. (2016). Associations in MDE: A Concern-Oriented, Reusable Solution. In: Wąsowski, A., Lönn, H. (eds) Modelling Foundations and Applications. ECMFA 2016. Lecture Notes in Computer Science(), vol 9764. Springer, Cham. https://doi.org/10.1007/978-3-319-42061-5_8

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-42061-5_8

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-42060-8

  • Online ISBN: 978-3-319-42061-5

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics