Exploring Quality Attributes Using Architectural Prototyping

  • Jakob Eyvind Bardram
  • Henrik Bærbak Christensen
  • Aino Vonge Corry
  • Klaus Marius Hansen
  • Mads Ingstrup
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3712)

Abstract

A central tenet of software architecture design is to base this on a formulation of desired quality attributes, such as buildability, performance, and availability of the target system. Thus there is a need for architectural evaluation—ensuring the architecture’s support for desired quality attributes—and a variety of evaluation techniques have been developed, described, and used. Architectural prototyping is an experimental approach that creates executable ‘skeleton’ systems to investigate architectural qualities of a future system. Architectural prototyping is a learning vehicle for exploring an architectural design space as well as an evaluation technique. The contribution of this paper is to explore the evaluation aspect of architectural prototypes from an analytical standpoint. We present an analysis and discussion of architectural prototyping in the context of two well-established quality frameworks. Our analysis concludes that architectural prototyping is a viable evaluation technique that may evaluate architectural quality attributes and especially valuable in cases where the balance between opposing qualities must be assessed.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Bardram, J.E., Christensen, H.B., Hansen, K.M.: Architectural Prototyping: An Approach for Grounding Architectural Design and Learning. In: Proceedings of the 4th Working IEEE/IFIP Conference on Software Architecture, Oslo, Norway, pp. 15–24 (2004)Google Scholar
  2. 2.
    Bass, L., Clements, P., Kazman, R.: Software Architecture in Practice, 2nd edn. Addison-Wesley, Reading (2003)Google Scholar
  3. 3.
    Coutaz, J.: PAC, an object-oriented model for dialog design. In: Proceedings of IFIP INTERAC 1987, pp. 431–436 (1987)Google Scholar
  4. 4.
    Dromey, R.G.: Cornering the chimera. IEEE Software 13(1), 33–43 (1996)CrossRefGoogle Scholar
  5. 5.
    Dromey, R.G.: Software quality—prevention versus cure? Software Quality Journal 11, 197–210 (2003)CrossRefGoogle Scholar
  6. 6.
    Eugster, P.T., Felber, P., Guerraoui, R., Kermarrec, A.-M.: The many faces of publish/subscribe. ACM Computing Surveys 35(2), 114–131 (2003)CrossRefGoogle Scholar
  7. 7.
    Fagan, M.E.: Design and code inspections to reduce errors in program developement. IBM Systems Journal 15(3) (1976)Google Scholar
  8. 8.
    Floyd, C.: A systematic look at prototyping. In: Budde, R., Kuhlenkamp, K., Mathiassen, L., Züllighoven, H. (eds.) Approaches to Prototyping, pp. 1–18. Springer, Heidelberg (1984)Google Scholar
  9. 9.
    Garvin, D.A.: What does ”product quality” really mean? Sloan Management Review 26(1), 25–43 (1984)Google Scholar
  10. 10.
    Gromey, R.G.: A model for software product quality. IEEE Transactions on Software Engineering 21(2), 146–162 (1995)CrossRefGoogle Scholar
  11. 11.
    Hansen, K., Wells, L., Maier, T.: HAZOP Analysis of UML-Based Software Architecture Descriptions of Safety-Critical Systems. In: Proceedings of NWUML 2004 (2004)Google Scholar
  12. 12.
    IEC. Functional Safety of Electrical/ Electronic/ Programmable Electronic Safety-Related Systems, 1st edition, 1998-2000. International Standard IEC 61508, Parts 1-7Google Scholar
  13. 13.
    Ingstrup, M., Hansen, K.M.: Palpable Assemblies: Dynamic Service Composition in Ubiquitous Computing. To appear in Proceedings of Software Engineering and Knowledge Engingeering, SEKE 2005 (2005)Google Scholar
  14. 14.
    ISO/IEC. Software engineering – Product quality – Part 1: Quality model, ISO/IEC 9126-1:2001 (2001)Google Scholar
  15. 15.
    ISO/IEC. Software engineering – Product quality – Part 2: External metrics, ISO/IEC 9126-2:2001 (2001)Google Scholar
  16. 16.
    ISO/IEC. Software engineering – Product quality – Part 3: Internal metrics, ISO/IEC 9126-3:2001 (2001)Google Scholar
  17. 17.
    ISO/IEC. Software engineering – Product quality – Part 3: Quality in use metrics, ISO/IEC 9126-3:2001 (2001)Google Scholar
  18. 18.
    John, B.E., Bass, L.: Usability and software architecture. Behavior & Information Technology 20(5), 329–338 (2001)CrossRefGoogle Scholar
  19. 19.
    Kitchenham, B., Pfleeger, S.L.: Software quality: The elusive target. IEEE Software, 12–21 (1996)Google Scholar
  20. 20.
    Krasner, G., Pope, S.: A cookbook for using the Model-View-Controller user interface paradigm in Smalltalk-80. Journal of Object-Oriented Programming 1(3), 26–49 (1988)Google Scholar
  21. 21.
    Lauesen, S., Younessi, H.: Is software quality visible in code? IEEE Software, 69–73 (July/August 1998)Google Scholar
  22. 22.
    Michael, C.C., Voas, J.: The ability of directed tests to predict software quality. Annals of Software Engineering 4, 31–64 (1997)CrossRefGoogle Scholar
  23. 23.
    Osterweil, L., Clarke, L.A., DeMillo, R.A., Feldman, S.I., McKeeman, B., Miller, E.F., Salasin, J.: Strategic directions in software quality. ACM Computing Surveys 28(4), 738–750 (1996)CrossRefGoogle Scholar
  24. 24.
    6th Framework Programme, Information Society Technologies, Disappearing Computer II, project 002057 PalCom: Palpable Computing – A new perspective on Ambient Computing, http://www.ist-palcom.org
  25. 25.
    Perry, D., Wolf, A.: Foundations for the study of software architecture. ACM SIGSOFT Software Engineering Notes 17(4), 40–52 (1992)CrossRefGoogle Scholar
  26. 26.
    Rational Software. Rational Unified Process: Best Practices for Software Development Teams (1998), http://www.rational.com/media/whitepapers/rup_bestpractices.pdf
  27. 27.
    Rosqvist, T., Koskela, M., Harju, H.: Software Quality Evaluation Based on Expert Judgement. Software Quality Journal 11, 39–55 (2003)CrossRefGoogle Scholar
  28. 28.
    Svahnberg, M., Wohlin, C.: An Investigation of a Method for Identifying a Software Architecture Candidate with Respect to Quality Attributes. Empirical Software Engineering 10, 149–181 (2005)CrossRefGoogle Scholar
  29. 29.
    Wong, B., Jeffrey, R.: A Framework for Software Quality Evaluation. In: Peled, D.A., Vardi, M.Y. (eds.) FORTE 2002. LNCS, vol. 2529, pp. 103–118. Springer, Heidelberg (2002)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Jakob Eyvind Bardram
    • 1
  • Henrik Bærbak Christensen
    • 1
  • Aino Vonge Corry
    • 1
  • Klaus Marius Hansen
    • 1
  • Mads Ingstrup
    • 1
  1. 1.Department of Computer ScienceUniversity of AarhusÅrhus NDenmark

Personalised recommendations