skip to main content
10.1145/2031759.2031764acmotherconferencesArticle/Chapter ViewAbstractPublication PagesecsaConference Proceedingsconference-collections
research-article

Rationale, decisions and alternatives traceability for architecture design

Published:13 September 2011Publication History

ABSTRACT

When designing information systems, architects must often deal with many requirements and constraints. Also, many parties may collaborate during design phases. Therefore, the rationale and decisions sustaining the architecture model can be lost if not documented appropriately. However, in order to understand and maintain these systems, we need to have a clear picture of the rationale and decisions behind their designs. To tackle this problem, we propose a design approach combining architecturally significant requirement modelling and architecture modelling. Constraint and Requirement are attached to architectural constructs. And any modification in the architecture model resulting from a decision made in the requirement model is recorded as a model transformation. We present both modelling formalisms and explain how we combine them to increase the traceability of the rationale, design decisions and alternatives as well as the maintainability of information systems.

References

  1. I. F. Alexander and R. Stevens. Writing Better Requirements, chapter 7, pages 96--107. Addison-Wesley, 2002.Google ScholarGoogle Scholar
  2. M. A. Babar, A. Northway, I. Gorton, P. Heuer, and T. Nguyen. Introducing tool support for managing architectural knowledge: An experience report. In Proc. of the 15th Annual IEEE Int. Conf. and Workshop on the Engineering of Computer Based Systems (ECBS'08), pages 105--113, 31 2008-april 4 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. M. A. Babar, X. Wang, and I. Gorton. Pakme: A tool for capturing and using architecture design knowledge. In Proc. of the 9th International Multitopic Conference IEEE INMIC 2005, pages 1--6, 2005.Google ScholarGoogle ScholarCross RefCross Ref
  4. O. Barais. Construire et Maîtriser l'évolution d'une architecture logicielle à base de composants. PhD thesis, Laboratoire d'Informatique Fondamentale de Lille, Lille, France, Nov 2005.Google ScholarGoogle Scholar
  5. M. Biehl. Documenting stepwise model refinement using executable design decisions. In Proc. of the Int. Workshop on Models and Evolution (ME'10), Oslo, Norway, 2010.Google ScholarGoogle Scholar
  6. J. Bosch. Software architecture: The next step. In Proc. of the 1st European Workshop on Software Architecture, pages 194--199. Springer, 2004.Google ScholarGoogle ScholarCross RefCross Ref
  7. M. Brandozzi and D. E. Perry. Transforming goal oriented requirements specifications into architectural prescriptions. In From Software Requirements to Architectures (STRAW1)- ICSE 2001 Workshop, pages 54--61, May 2001.Google ScholarGoogle Scholar
  8. R. Capilla. Embedded design rationale in software architecture. In WICSA/ECSA, pages 305--308, Cambridge, UK, 2009. IEEE.Google ScholarGoogle ScholarCross RefCross Ref
  9. R. Capilla, F. Nava, and A. Tang. Attributes for characterizing the evolution of architectural design decisions. In Software Evolvability, Proc. of the 3rd Int. IEEE Workshop on, pages 15--22, oct. 2007.Google ScholarGoogle Scholar
  10. P. Clements, D. Garlan, L. Bass, J. Stafford, R. Nord, J. Ivers, and R. Little. Documenting Software Architectures: Views and Beyond. Pearson Education, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. P. H. Feller, D. P. Gluch, and J. J. Hudack. The Architecture Analysis & Design Language (AADL): An Introduction, 2006.Google ScholarGoogle Scholar
  12. I. Galvão and A. Goknil. Survey of traceability approaches in model-driven engineering. In EDOC, pages 313--326. IEEE Computer Society, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. F. Gilson. A transformational approach for component-based distributed architectures. In Preliminary Proc. of the MODELS 2010 Doctoral Symposium, pages 25--30, 2010.Google ScholarGoogle Scholar
  14. F. Gilson and V. Englebert. Towards handling architecture design, variability and evolution with model transformations. In Proc. of the 5th Workshop on Variability Modeling of Software-Intensive Systems, VaMoS '11, pages 39--48, New York, NY, USA, 2011. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. P. Grünbacher, A. Egyed, and N. Medvidovic. Reconciling software requirements and architectures: The cbsp approach. In Proc. of the 5th IEEE Int. Symposium on Requirements Engineering, pages 202--211. IEEE Computer Society, August 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. IEEE. Recommended practices for architectural description of software-intensive systems. IEEE Std 1471--2000, 2000.Google ScholarGoogle Scholar
  17. A. Jansen, P. Avgeriou, and J. S. van der Ven. Enriching software architecture documentation. J. Syst. Softw., 82:1232--1248, August 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. A. Jansen and J. Bosch. Software architecture as a set of architectural design decisions. In Proc. of the 5th Working IEEE/IFIP Conf. on Software Architecture (WICSA 05), pages 109--120, Washington, DC, USA, 2005. IEEE Computer Society. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. A. Jansen, J. van der Ven, P. Avgeriou, and D. K. Hammer. Tool support for architectural decisions. In Proc. of the 6th Working IEEE/IFIP Conf. on Software Architecture, pages 4--, Washington, DC, USA, 2007. IEEE Computer Society. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. P. Kruchten, P. Lago, and H. V. Vliet. Building up and reasoning about architectural knowledge. In Proc. of the 2nd Int. Conf. on the Quality if Software Architectures (QoSA), pages 43--58, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. P. Krutchen. An ontology of architectural design decisions in software intensive systems. In Proc. of the 2nd Groningen Workshop on Software Variability Management, pages 54--61, October 2004.Google ScholarGoogle Scholar
  22. D. C. Luckham, J. J. Kenney, L. M. Augustin, J. Vera, D. Bryan, and W. Mann. Specification and analysis of system architecture using rapide. IEEE Trans. Softw. Eng., 21(4):336--355, 1995. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. N. Medvidovic and R. N. Taylor. A Classification and Comparison Framework for Software Architecture Description Languages. IEEE Trans. Software Eng., 26(1):70--93, 2000. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. B. Nuseibeh. Weaving together requirements and architectures. IEEE Computer, 34(3):115--117, March 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Object Management Group. OMG Unified Modeling Language (OMG UML), Superstructure, version 2.2, chapter 16, pages 587--605. Object Management Group, February 2009.Google ScholarGoogle Scholar
  26. Object Management Group. OMG Unified Modeling Language (OMG UML), Superstructure, version 2.2, chapter 8, pages 143--160. Object Management Group, February 2009.Google ScholarGoogle Scholar
  27. D. L. Parnas and P. C. Clements. A rational design process: How and why to fake it. IEEE Trans. Software Eng., 12:251--257, February 1986. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. D. E. Perry and A. L. Wolf. Foundations for the study of software architecture. SIGSOFT Software Engineering Notes, 17(4):40--52, 1992. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. C. Potts and G. Bruns. Recording the reasons for design decisions. In Software Engineering, 1988., Proc. of the 10th Int. Conf. on, pages 418--427, apr 1988. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. B. Ramesh and M. Jarke. Toward reference models for requirements traceability. IEEE Trans. Software Eng., 27(1):58--93, jan 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. R. Roeller, P. Lago, and H. van Vliet. Recovering architectural assumptions. J. Syst. Softw., 79:552--573, April 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. J. Sametinger and M. Riebisch. Evolution support by homogeneously documenting patterns, aspects and traces. In CSMR, pages 134--140, Hungary, 2002. IEEE Computer Society. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. A. Tang, M. A. Babar, I. Gorton, and J. Han. A survey of architecture design rationale. J. Syst. Softw., 79(12):1792--1804, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  34. A. Tang and J. Han. Architecture rationalization: a methodology for architecture verifiability, traceability and completeness. In Proc of the 12th IEEE Int. Conf. and Workshops on the Engineering of Computer-Based Systems, pages 135--144, april 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. A. Tang, Y. Jin, and J. Han. A rationale-based architecture model for design traceability and reasoning. J. Syst. Softw., 80(6):918--934, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. J. Tyree and A. Akerman. Architecture decisions: Demystifying architecture. IEEE Software, 22:19--27, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. R. Watkins and M. Neal. Why and How of Requirements Tracing. IEEE Software, 11:104--106, July 1994. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. O. Zimmermann, J. Koehler, F. Leymann, R. Polley, and N. Schuster. Managing architectural decision models with dependency relations, integrity constraints, and production rules. J. Syst. Softw., 82(8):1249--1267, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Rationale, decisions and alternatives traceability for architecture design

        Recommendations

        Comments

        Login options

        Check if you have access through your login credentials or your institution to get full access on this article.

        Sign in
        • Published in

          cover image ACM Other conferences
          ECSA '11: Proceedings of the 5th European Conference on Software Architecture: Companion Volume
          September 2011
          79 pages
          ISBN:9781450306188
          DOI:10.1145/2031759

          Copyright © 2011 ACM

          Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

          Publisher

          Association for Computing Machinery

          New York, NY, United States

          Publication History

          • Published: 13 September 2011

          Permissions

          Request permissions about this article.

          Request Permissions

          Check for updates

          Qualifiers

          • research-article

          Acceptance Rates

          Overall Acceptance Rate48of72submissions,67%

        PDF Format

        View or Download as a PDF file.

        PDF

        eReader

        View online with eReader.

        eReader