Skip to main content

ReflexML: UML-Based Architecture-to-Code Traceability and Consistency Checking

  • Conference paper
Software Architecture (ECSA 2011)

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

Included in the following conference series:

Abstract

The decay of software architecture - the divergent evolution of architecture models and the derived code - is one of the reasons for a decreasing maintainability of software systems. Several approaches for architecture-to-code consistency checking exist that stop the decay by detecting a divergence after evolution steps of either the architecture or the corresponding code. Known approaches have two main insufficiencies. First, the effort to derive and maintain the consistency checks is higher than necessary or they cannot be applied a posteriori. Second, they are not well integrated into UML-based model driven engineering. In the paper we present ReflexML: A UML-embedded mapping of architecture models to code plus a rich set of predefined consistency checks based on that mapping. The mapping is described with a UML profile that allows to attach AOP type patterns to an UML component model to define its reflexion on code elements. This abolishes the two insufficiencies of current approaches. We apply ReflexML to an industry project to demonstrate its effectiveness and its capability of a seamless integration into a pre-existing UML architecture model.

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 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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Avgustinov, P., Hajiyev, E., Ongkingco, N., de Moor, O., Sereni, D., Tibble, J., Verbaere, M.: Semantics of static pointcuts in AspectJ. SIGPLAN Not. 42(1), 11–23 (2007)

    Article  MATH  Google Scholar 

  2. Biehl, M., Löwe, W.: Automated architecture consistency checking for model driven software development. In: Mirandola, R., Gorton, I., Hofmeister, C. (eds.) QoSA 2009. LNCS, vol. 5581, pp. 36–51. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  3. Bischofberger, W., Kühl, J., Löffler, S.: Sotograph - A pragmatic approach to source code architecture conformance checking. In: Oquendo, F., Warboys, B.C., Morrison, R. (eds.) EWSA 2004. LNCS, vol. 3047, pp. 1–9. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  4. Dashofy, E.M., Van der Hoek, A., Taylor, R.N.: A highly-extensible, XML-based architecture description language. In: WICSA 2001: Proc. of the Conf. on Softw. Architecture (Amsterdam), pp. 103–112 (2001)

    Google Scholar 

  5. Feiler, P., Lewis, B., Vestal, S., Colbert, E.: An overview of the SAE architecture analysis and design language (AADL) standard. In: Architecture Description Languages. IFIP Int. Fed. for Inf. Proc., vol. 176, pp. 3–15 (2005)

    Google Scholar 

  6. Groher, I., Voelter, M.: XWeave: models and aspects in concert. In: AOM 2007: Proc. Intl. Work. Aspect-Oriented Modeling, Vancouver, pp. 35–40 (2007)

    Google Scholar 

  7. Knodel, J., Popescu, D.: A comparison of static architecture compliance checking approaches. In: WICSA 2007: Proc. Conf. Softw. Architecture, Mumbai, pp. 12–21 (2007)

    Google Scholar 

  8. Koschke, R., Simon, D.: Hierarchical reflexion models. In: WCRE 2003: Proc. Conf. Reverse Eng., Victoria, pp. 36–45 (2003)

    Google Scholar 

  9. Murphy, G.C., Notkin, D., Sullivan, K.: Software reflexion models: bridging the gap between source and high-level models. In: SIGSOFT 1995: Proc. Symp. Foundations of Software Eng., Washington, D.C, pp. 18–28 (1995)

    Google Scholar 

  10. Murta, L.G., Hoek, A., Werner, C.M.: Continuous and automated evolution of architecture-to-implementation traceability links. Automated Softw. Eng. 15(1), 75–107 (2008)

    Article  Google Scholar 

  11. OMG. UML 2.3 Superstructure Specification. OMG (May 2010)

    Google Scholar 

  12. Parnas, D.L.: On the criteria to be used in decomposing systems into modules. Commun. ACM 15(12), 1053–1058 (1972)

    Article  Google Scholar 

  13. Parnas, D.L.: Software aging. In: ICSE 1994: Proc. Intl. Conf. Softw. Eng., Sorrento, pp. 279–287 (1994)

    Google Scholar 

  14. Passos, L., Terra, R., Valente, M.T., Diniz, R., Mendonca, N.d.C.: Static architecture-conformance checking: An illustrative overview. IEEE Softw. 27(5), 82–89 (2010)

    Article  Google Scholar 

  15. Perry, D.E., Wolf, A.L.: Foundations for the study of software architecture. ACM SIGSOFT Software Engineering Notes 17(4), 40–52 (1992)

    Article  Google Scholar 

  16. Szyperski, C.: Component Software: Beyond Object-Oriented Programming. Addison-Wesley, Reading (2002)

    MATH  Google Scholar 

  17. Terra, R., Valente, M.T.: A dependency constraint language to manage object-oriented software architectures. Softw. Pract. Exper. 39(12), 1073–1094 (2009)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Adersberger, J., Philippsen, M. (2011). ReflexML: UML-Based Architecture-to-Code Traceability and Consistency Checking. In: Crnkovic, I., Gruhn, V., Book, M. (eds) Software Architecture. ECSA 2011. Lecture Notes in Computer Science, vol 6903. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-23798-0_37

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-23798-0_37

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-23797-3

  • Online ISBN: 978-3-642-23798-0

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics