Skip to main content

An Enhanced Architectural Knowledge Metamodel Linking Architectural Design Decisions to other Artifacts in the Software Engineering Lifecycle

  • 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

Software architects create and consume many interrelated artifacts during the architecting process. These artifacts may represent functional and nonfunctional requirements, architectural patterns, infrastructure topology units, code, and deployment descriptors as well as architecturally significant design decisions. Design decisions have to be linked to chunks of architecture description in order to achieve a fine-grained control when a design is modified. Moreover, it is imperative to identify quickly the key decisions affected by a runtime change that are critical for a system’s mission. This paper extends previous work on architectural knowledge with a metamodel for architectural decision capturing and sharing to: (i) create and maintain fine-grained dependency links between the entities during decision identification, making, and enforcement, (ii) keep track of the evolution of the decisions, and (iii) support runtime 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. Bass, L., Clements, P., Kazman, R.: Software Architecture in Practice, 2nd edn. Addison-Wesley, Reading (2003)

    Google Scholar 

  2. Bosch, J.: Software Architecture: The Next Step. In: Oquendo, F., Warboys, B.C., Morrison, R. (eds.) EWSA 2004. LNCS, vol. 3047, pp. 194–199. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

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

    Article  Google Scholar 

  4. Zimmermann, O., Koehler, J., Leymann, F., Polley, R., Schuster, N.: Managing Architectural Decision Models with Dependency Relations, Integrity Constraints, and Production Rules. Journal of Systems and Software 82(8), 1249–1267 (2009)

    Article  Google Scholar 

  5. Capilla, R., Nava, F., Pérez, S., Dueñas, J.C.: Web-based Tool for Managing Architectural Design Decisions (SHARK’066). ACM SIGDOFT Software Engineering Notes 31(5) (2006)

    Google Scholar 

  6. Jansen, A., de Vries, T., Avgeriou, P., van Veelen, M.: Sharing the Architectural Knowledge of Quantitative Analysis. In: Proceedings of the Quality of Software-Architectures (QoSA), pp. 220–234 (2008)

    Google Scholar 

  7. Zimmermann, O., Gschwind, T., Küster, J.M., 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 

  8. Bosch, J.: Design and use of Software Architecture: Adopting and Evolving a Product-Line Approach. Addison-Wesley, Reading (2000)

    Google Scholar 

  9. Pohl, K., Böckle, G., Linden, F.v.d.: Software Product Line Engineering: Foundations, Principles, and Techniques. Springer, Heidelberg (2005)

    Book  MATH  Google Scholar 

  10. Liang, P., Jansen, A., Avgeriou, P.: Collaborative Software Architecting through Architectural Knowledge Sharing. In: Finkelstein, A., Grundy, J., van der Hoek, A., Mistrík, I., Whitehead, J. (eds.) Collaborative Software Engineering (CoSE), pp. 343–368. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  11. Liang, P., Avgeriou, P.: Tools and Technologies for Architecture Knowledge Management. In: Software Architecture Knowledge Management: Theory and Practice, pp. 91–111. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  12. Zimmermann, O., Doubrovski, V., Grundler, J., Hogg, K.: Service-Oriented Architecture and Business Process Choreography in an Order Management Scenario. In: ACM SIGPLAN International Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA 2005). ACM Press, New York (2005)

    Google Scholar 

  13. Hentrich, C., Zdun, U.: Patterns for Process-Oriented Integration in Service-Oriented Architectures. In: Proceedings of 11th European Conference on Pattern Languages of Programs (EuroPLoP 2006), Irsee, Germany, pp. 1–45 (July 2006)

    Google Scholar 

  14. Tang, A., Avgeriou, P., Jansen, A., Capilla, R., Babar, M.A.: A Comparative Study of Architecture Knowledge Management Tools. Journal of Systems and Software 83(3), 352–370 (2010)

    Google Scholar 

  15. Tyree, J., Akerman, A.: Architecture Decisions: Demystifying Architecture. IEEE Software 22 (2005)

    Google Scholar 

  16. Kruchten, P., Lago, P., van Vliet, H.: Building Up and Reasoning About Architectural Knowledge. In: Hofmeister, C., Crnković, I., Reussner, R. (eds.) QoSA 2006. LNCS, vol. 4214, pp. 43–58. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  17. Navarro, E., Cuesta, C.E.: Automating the trace of architectural design decisions and rationales using a MDD approach. In: Morrison, R., Balasubramaniam, D., Falkner, K. (eds.) ECSA 2008. LNCS, vol. 5292, pp. 114–130. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  18. Lee, K., Kang, K.C.: Feature dependency analysis for product line component design. In: Dannenberg, R.B., Krueger, C. (eds.) ICOIN 2004 and ICSR 2004. LNCS, vol. 3107, pp. 69–85. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  19. Capilla, R., Ali Babar, M.: On the role of architectural design decisions in software product line engineering. In: Morrison, R., Balasubramaniam, D., Falkner, K. (eds.) ECSA 2008. LNCS, vol. 5292, pp. 241–255. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  20. Hallsteeinsen, S., Hinchey, M., Park, S., Schmid, K.: Dynamic Software Product Lines. IEEE Computer 41(4), 93–95 (2008)

    Article  Google Scholar 

  21. Goedicke, M., Köllmann, C., Zdun, U.: Designing Runtime Variation Points in Product Line Architectures: three cases. Science of Computer Programming 53(3), 353–380 (2004)

    Article  MathSciNet  Google Scholar 

  22. Lago, P., Muccini, H., van Vliet, H.: A scoped approach to traceability management. Journal of Systems and Software 82(1), 168–182 (2009)

    Google Scholar 

  23. Sangal, N., Jordan, E., Sinha, V., Jackson, D.: Using Dependency Models to Manage Complex Software Architecture. In: OOPSLA 2005, pp. 167–176 (2005)

    Google Scholar 

  24. Mäder, P., Gotel, O., Philippow, I.: Enabling Automated Traceability Maintenance through the Upkeep of Traceability Relations. In: Paige, R.F., Hartman, A., Rensink, A. (eds.) ECMDA-FA 2009. LNCS, vol. 5562, pp. 174–189. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  25. Cleland-Huang, J., Chang, C.: Event-Based Traceability for Managing Evolutionary Change. IEEE Transactions on Software Engineering 29(9) (September 2003)

    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

Capilla, R., Zimmermann, O., Zdun, U., Avgeriou, P., Küster, J.M. (2011). 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) Software Architecture. ECSA 2011. Lecture Notes in Computer Science, vol 6903. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-23798-0_33

Download citation

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

  • 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