Issues in Applying Empirical Software Engineering to Software Architecture

  • Davide Falessi
  • Philippe Kruchten
  • Giovanni Cantone
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4758)


Empirical software engineering focuses on the evaluation of software engineering technologies, such as processes and tools, by comparing related sets of data. It has contributed a valuable body of knowledge in several areas such as Software Economics and Software Quality, which in turn drove important advances in related tools and techniques. Unfortunately this is not (yet) the case for software architecture, where empirical studies are still few. Such a condition demands for further empirical research efforts on the topic of software architecture and suggests specific areas of improvement. In this paper we discuss several essential, innovative, and maybe provocative, questions such as: Why do we have so few applications of empirical software engineering on software architecture? Which are the main difficulties? What can we do?


Software architecture empirical software engineering 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Babar, M.A., Zhu, L., Jeffery, R.: A Framework for Classifying and Comparing Software Architecture Evaluation Methods. In: Australian Software Engineering Conference (2004)Google Scholar
  2. 2.
    Basili, V., Briand, L.C.: Empirical Software Engineering: An International Journal, ISSN: 1382-3256Google Scholar
  3. 3.
    Bass, L., Clements, P., Kazman, R.: Software Architecture in Practice, 2nd edn. Addison-Wesley, Massachusetts (2003)Google Scholar
  4. 4.
    Biffl, S., Aurum, A., Bohem, B., Erdogmus, H., Grünbacher, P.: Value-Based Software Engineering. Springer, Heidelberg (2005)Google Scholar
  5. 5.
    Boehm, B.W.: Software Engineering Economics. Prentice Hall PTR, NJ (1981)zbMATHGoogle Scholar
  6. 6.
    Booch, G.: Goodness of Fit. IEEE Software 23(6), 14–15 (2006)CrossRefGoogle Scholar
  7. 7.
    Capilla, R., Nava, F., Perez, S., Dueñas, J.C.: A web-based tool for managing architectural design decisions. SIGSOFT Softw. Eng. Notes 31(4) (November 2006)Google Scholar
  8. 8.
    ESEM: International Symposium on Empirical Software Engineering and Measurement (2007),
  9. 9.
    Host, M., Wohlin, C., Thelin, T.: Experimental context classification: incentives and experience of subjects. In: Proceedings of the 27th international Conference on Software Engineering, St. Louis, MO, USA, pp. 470–478 (2005)Google Scholar
  10. 10.
    Juristo, N., Moreno, A.: Basics of Software Engineering Experimentation. Springer, Heidelberg (2001)zbMATHGoogle Scholar
  11. 11.
    Kruchten, P., Obbink, H., Stafford, J.: The Past, Present, and Future for Software Architecture. IEEE Software 23(2), 22–30 (2006)CrossRefGoogle Scholar
  12. 12.
    Kruchten, P.: A Taxonomy of Architecture Design Decisions in Software-Intensive Systems. In: 2nd Groningen Workshop on Software Variability Management, Groningen, NL (2004)Google Scholar
  13. 13.
    Kruchten, P., Lago, P., van Vliet, H.: Building up and Reasoning about Architectural Knowledge. In: 2nd International Conference on the Quality of Software Architectures, Vaesteras, Sweden (June 2006)Google Scholar
  14. 14.
    Lago, P., Avgeriou, P.: First ACM Workshop on SHAring and Reusing architectural Knowledge (SHARK). SIGSOFT Software Engineering Notes 31(5), 32–36 (2006)CrossRefGoogle Scholar
  15. 15.
    Obbink, H., et al.: Report on Software Architecture Review and Assessment (SARA). Version 1.0 (2002), available from:
  16. 16.
    SEI: Published Software Architecture Definitions (2007),
  17. 17.
    Shull, F., Seaman, C., Zelkowitz, M.: Victor R. Basili’s Contributions to Software Quality. IEEE Software 23(1), 16–18 (2006)CrossRefGoogle Scholar
  18. 18.
    Simon, H.A.: The Sciences of the Artificial, 3rd edn. The MIT Press, Cambridge (1996)Google Scholar
  19. 19.
    Smolander, K.: Four metaphors of architecture in software organizations: finding out the meaning of architecture in practice. In: International Symposium on Empirical Software Engineering, Nara, Japan (October 3-4, 2002)Google Scholar
  20. 20.
    Wohlin, C., Runeson, P., Höst, M., Ohlsson, M.C., Regnell, B., Wesslen, A.: Experimentation in Software Engineering: an Introduction, Massachusetts (2000)Google Scholar
  21. 21.
    Zelkowitz, M.V., Wallace, D.R.: Experimental models for validating technology. IEEE Computer 31(5), 23–31 (1998)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Davide Falessi
    • 1
  • Philippe Kruchten
    • 2
  • Giovanni Cantone
    • 1
  1. 1.University of Rome "Tor Vergata", DISP, RomeItaly
  2. 2.University of British Columbia, ECE, VancouverCanada

Personalised recommendations