Skip to main content

Supporting Consistency between Architectural Design Decisions and Component Models through Reusable Architectural Knowledge Transformations

  • Conference paper
Software Architecture (ECSA 2013)

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

Included in the following conference series:

Abstract

In recent years, the software architecture community has proposed to use architectural design decisions (ADDs) for capturing the design rationale and the architectural knowledge (AK). As software systems evolve both ADDs and architectural designs need to be documented and maintained. This is a tedious and time-consuming task because of the lack of systematic and automated support for bridging between ADDs and designs. As a result, decisions and designs become inconsistent over time. We propose to alleviate this problem by introducing an AK transformation language supporting reusable AK transformations from pattern-based ADDs to component-and-connector models. In addition, we devise reusable consistency checking rules for verifying the consistency between decisions and designs. Through the use of model-driven transformations, as well as reusable, pattern-based decision models, we ensure the reusability of our approach. We apply our approach in an industrial case study and show that it offers high reusability, is largely automated and scalable, and can deal with the complexity of large numbers of recurring decisions.

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. Capilla, R., Zimmermann, O., Zdun, U., Avgeriou, P., Küster, J.M.: An Enhanced Architectural Knowledge Metamodel Linking Architectural Design Decisions to other Artifacts in the Software Engineering Lifecycle. In: Crnkovic, I., Gruhn, V., Book, M. (eds.) ECSA 2011. LNCS, vol. 6903, pp. 303–318. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  2. Choi, Y., Choi, H., Oh, M.: An architectural design decision-centric approach to architectural evolution. In: 11th Int’l Conf. on Advanced Communication Technology (ICACT), Gangwon-Do, South Korea, pp. 417–422. IEEE Press (2009)

    Google Scholar 

  3. Clements, P., Garlan, D., Bass, L., Stafford, J., Nord, R., Ivers, J., Little, R.: Documenting Software Architectures: Views and Beyond. Pearson Education (2002)

    Google Scholar 

  4. Dermeval, D., Pimentel, J., Silva, C.T.L.L., Castro, J., Santos, E., Guedes, G., Lucena, M., Finkelstein, A.: STREAM-ADD - Supporting the Documentation of Architectural Design Decisions in an Architecture Derivation Process. In: 36th Annual IEEE Computer Software and Applications Conf. (COMPSAC), Izmir, Turkey, pp. 602–611. IEEE Comp. Soc. (2012)

    Google Scholar 

  5. Grunbacher, P., Egyed, A., Medvidovic, N.: Reconciling Software Requirements and Architectures with Intermediate Models. Softw. Syst. Model. 3(3), 235–253 (2003)

    Google Scholar 

  6. Harrison, N.B., Avgeriou, P., Zdun, U.: Using Patterns to Capture Architectural Decisions. IEEE Softw. 24(4), 38–45 (2007)

    Article  Google Scholar 

  7. ISO: ISO/IEC CD1 42010, Systems and software engineering — Architecture description (2010)

    Google Scholar 

  8. Jansen, A., Bosch, J.: Software Architecture as a Set of Architectural Design Decisions. In: 5th Working IEEE/IFIP Conf. on Software Architecture (WICSA), Pittsburgh, PA, USA, pp. 109–120. IEEE Comp. Soc. (2005)

    Google Scholar 

  9. Kaindl, H., Falb, J.: Can We Transform Requirements into Architecture? In: 3rd Int’l Conf. on Software Engineering Advances (ICSEA), Sliema, Malta, pp. 91–96. IEEE (2008)

    Google Scholar 

  10. Könemann, P., Zimmermann, O.: Linking Design Decisions to Design Models in Model-Based Software Development. In: Babar, M.A., Gorton, I. (eds.) ECSA 2010. LNCS, vol. 6285, pp. 246–262. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  11. Kruchten, P., Capilla, R., Dueñas, J.C.: The Decision View’s Role in Software Architecture Practice. IEEE Softw. 26(2), 36–42 (2009)

    Article  Google Scholar 

  12. van Lamsweerde, A.: From System Goals to Software Architecture. In: Bernardo, M., Inverardi, P. (eds.) SFM 2003. LNCS, vol. 2804, pp. 25–43. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  13. Lee, L., Kruchten, P.: Capturing Software Architectural Design Decisions. In: 2007 Canadian Conf. on Electrical and Computer Engineering, pp. 686–689. IEEE Comp. Soc. (2007)

    Google Scholar 

  14. Loughran, N., Sánchez, P., Garcia, A., Fuentes, L.: Language Support for Managing Variability in Architectural Models. In: Pautasso, C., Tanter, É. (eds.) SC 2008. LNCS, vol. 4954, pp. 36–51. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  15. Lytra, I., Sobernig, S., Zdun, U.: Architectural Decision Making for Service-Based Platform Integration: A Qualitative Multi-Method Study. In: Joint 10th Working IEEE/IFIP Conf. on Software Architecture & 6th European Conf. on Software Architecture (WICSA/ECSA), IEEE Comp. Soc., Helsinki (2012)

    Google Scholar 

  16. Lytra, I., Tran, H., Zdun, U.: Constraint-based consistency checking between design decisions and component models for supporting software architecture evolution. In: 16th European Conf. on Software Maintenance and Reengineering (CSMR), Szeged, Hungary, pp. 287–296. Springer (2012)

    Google Scholar 

  17. MacLean, A., Young, R., Bellotti, V., Moran, T.: Questions, Options, and Criteria: Elements of Design Space Analysis. Human-Computer Interaction 6, 201–2502 (1991)

    Article  Google Scholar 

  18. Mehta, N.R., Medvidovic, N.: Composing architectural styles from architectural primitives. In: 9th European Software Engineering Conf. held jointly with 11th ACM SIGSOFT Int’l Symposium on Foundations of Software Engineering (ESEC/FSE-11), Helsinki, Finland, pp. 347–350. ACM (2003)

    Google Scholar 

  19. Mirakhorli, M., Cleland-Huang, J.: Using tactic traceability information models to reduce the risk of architectural degradation during system maintenance. In: 27th IEEE Int’l Conf. on Software Maintenance (ICSM), Williamsburg, VA, USA, pp. 123–132. IEEE (2011)

    Google Scholar 

  20. Pérez-Martínez, J.E., Sierra-Alonso, A.: From Analysis Model to Software Architecture: A PIM2PIM Mapping. In: Rensink, A., Warmer, J. (eds.) ECMDA-FA 2006. LNCS, vol. 4066, pp. 25–39. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  21. Shahin, M., Liang, P., Khayyambashi, M.R.: Architectural design decision: Existing models and tools. In: Joint Working IEEE/IFIP Conf. on Software Architecture and European Conf. on Software Architecture (WICSA/ECSA), Cambridge, UK, pp. 293–296. IEEE (2009)

    Google Scholar 

  22. Tran, H., Zdun, U., Dustdar, S.: View-based and Model-driven Approach for Reducing the Development Complexity in Process-Driven SOA. In: Int’l Conf. Business Process and Services Computing (BPSC). LNI, pp. 105–124 (2007)

    Google Scholar 

  23. Tyree, J., Akerman, A.: Architecture Decisions: Demystifying Architecture. IEEE Softw. 22(2), 19–27 (2005)

    Article  Google Scholar 

  24. Zdun, U., Avgeriou, P.: Modeling Architectural Patterns Using Architectural Primitives. In: 20th ACM Conf. on Object-Oriented Programming, Systems, Languages & Applications (OOPSLA), pp. 133–146. ACM Press (2005)

    Google Scholar 

  25. Zimmermann, O., Gschwind, T., Küster, J., Leymann, F., Schuster, N.: Reusable architectural decision models for enterprise application development. In: Overhage, S., Ren, X.-M., Reussner, R., Stafford, J.A. (eds.) QoSA 2007. LNCS, vol. 4880, pp. 15–32. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2013 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Lytra, I., Tran, H., Zdun, U. (2013). Supporting Consistency between Architectural Design Decisions and Component Models through Reusable Architectural Knowledge Transformations. In: Drira, K. (eds) Software Architecture. ECSA 2013. Lecture Notes in Computer Science, vol 7957. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-39031-9_20

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-39031-9_20

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-39030-2

  • Online ISBN: 978-3-642-39031-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics