A Glass Box Design: Making the Impact of Usability on Software Development Visible

  • Natalia Juristo
  • Ana Moreno
  • Maria-Isabel Sanchez-Segura
  • Maria Cecília Calani Baranauskas
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4663)


User-centered design is not just about building nice-looking and usable interfaces, and software development is not just about implementing functionality that supports user tasks. This paper aims to build a tighter fit between human-computer interaction and software engineering practices and research by addressing what software and usability engineering practitioners can learn from each other regarding the impact of usability on software development. More specifically we aim to support usability people in helping developers to elicit requirements that can incorporate usability functions into software development. The paper shows what type of impact usability has on software models and suggests how this impact can be dealt with at the requirements elicitation and specification stages of the development cycle.


usability features software development 


  1. 1.
    Barbacci, M., Ellison, R., Lattanze, A., Stafford, J.A., Weinstock, C.B., Wood, W.G.: Quality Attribute Workshop, 3rd ed. CMU/SEI-2003-TR-016, Software Engineering Institute (2003) Google Scholar
  2. 2.
    Bass, L., John, B., Kates, J.: Achieving Usability through Software Architecture. Technical Report. CMU/SEI-2001-TR-005, Software Engineering Institute, CMU (2001) Google Scholar
  3. 3.
    Bass, L., John, B.: Linking Usability to software architecture patterns through general scenarios. The Journal of Systems and Software 66(3), 187–197 (2003)CrossRefGoogle Scholar
  4. 4.
    Bass, L., John, B., Juristo, N., Sanchez, M.I.: Usability Supporting Architectural Patterns. In: Tutorial International Conference on Software Engineering (2004) Google Scholar
  5. 5.
    Bevan, N.: Quality and usability: A new framework. In: van Veenendaal, E., McMullan, J. (eds.) Achieving software product quality, The Netherlands, pp. 25–34 (1997)Google Scholar
  6. 6.
    Bevan, N.: Quality in Use for All. In: Stephanidis, C. (ed.) User interfaces for all, Lawrence Erlbaum, Mahwah (1999)Google Scholar
  7. 7.
    Bias, R.G., Mayhew, D.J.: Cost-Justifying Usability. Elsevier, Amsterdam (2005)CrossRefGoogle Scholar
  8. 8.
    Bosch, J., Juristo, N.: Designing Software Architectures for Usability. In: Tutorial International Conference on Software Engineering (2003)Google Scholar
  9. 9.
    Brighton.: Usability Pattern Collection (2003),
  10. 10.
    Buschmann, F., Meuneir, R., Rohnert, H., Sommerland, P., Stal, M.: Pattern-Oriented Software Architecture, A System of Patterns. J. Wiley and Sons, Chichester (1996)Google Scholar
  11. 11.
    Chirstel, M. G., Kang, K.C.: Issues in Requirements Elicitation. Technical Report CMU/SEI-92-TR-012, Software Engineering Institute, CMU (1992) Google Scholar
  12. 12.
    Constantine, L., Lockwood, L.: Software for Use: A Practical Guide to the Models and Methods of Usage-Centered Design. Addison-Wesley, Reading (1999)Google Scholar
  13. 13.
    Coram, T., Lee, L.: Experiences: A Pattern Language for User Interface Design (1996),
  14. 14.
    Faulkner, X., Culwin, F.: Enter the Usability Engineer: Integrating HCI and Software Engineering. ITICSE ACM, pp. 61–64 (2000) Google Scholar
  15. 15.
    Ferré, X., Juristo, N., Moreno, A.: Which, When and How Usability Techniques and Activities Should be Integrated. In: Seffah, A., Gulliksen, J., Desmarais, M.C. (eds.) Human-Centered Software Engineering - Integrating Usability in the Software Development Lifecycle. Human-Computer Interaction Series, vol. 8, Kluwer, Dordrecht (2005)Google Scholar
  16. 16.
    Folmer, E., van Group, J., Bosch, J.: Architecting for usability: a survey. Journal of Systems and Software 70(1-2), 61–78 (2004)CrossRefGoogle Scholar
  17. 17.
    Guide to the Software Engineering Body of Knowledge. version (2004),
  18. 18.
    Holzinger, A.: Usability Engineering Methods for Software Developers. Communications of the ACM 48(1), 71–74 (2005)CrossRefGoogle Scholar
  19. 19.
    Hix, D., Hartson, H.R.: Developing User Interfaces: Ensuring Usability through Product and Process. J. Wiley and Sons, Chichester (1993)zbMATHGoogle Scholar
  20. 20.
    ISO/IEC FCD 9126-1 Software product quality - Part 1: Quality model (1998) Google Scholar
  21. 21.
    ISO 9241-11 Ergonomic requirements for office work with visual display terminals (1998) Google Scholar
  22. 22.
    ISO 13407 User-centred design process for interactive systems (1999) Google Scholar
  23. 23.
    ISO/IEC 14598-1 Information Technology - Evaluation of Software Products Part 1 General guide (1998) Google Scholar
  24. 24.
    Jokela, T.: Guiding Designers to the World of Usability: Determining Usability Requirements through Teamwork. In: Seffah, A., Gulliksen, J., Desmarais, M. (eds.) Human-Centered Software Engineering, Kluwer, Dordrecht (2005)Google Scholar
  25. 25.
    Juristo, N., Moreno, A., Sánchez, M.: Architectural Sensitive Usability Patterns. ICSE Workshop Bridging the Gaps between Usability and Software Development (2003) Google Scholar
  26. 26.
    Juristo, N., Moreno, A., Sánchez, M.: Techniques and Patterns for Architecture-Level Usability Improvements. Deliv. 3.4 STATUS project (May 2003),
  27. 27.
    Juristo, N., Moreno, A., Sánchez, M.: Clarifying the Relationship between Software Architecture and Usability. In: 16th International Conference on Software Engineering and Knowledge Engineering (2004)Google Scholar
  28. 28.
    Juristo, N., Moreno, A., Sánchez, M.: Analysing the impact of usability on software design. Journal of System and Software. Accepted for publication (2007)Google Scholar
  29. 29.
    Unified Modeling Language (UML). Version 2.0. OMG Object Management Group Visited January 2007 (2007),
  30. 30.
    Laasko, S.A.: User Interface Designing Patterns. Visited October 2004 (2003),
  31. 31.
    Milewski, A.E.: Software Engineers and HCI Practitioners Learning to Work Together: A Preliminary Look at Expectations. In: CSEET 2004. Proceedings of the 17th Conference on Software Engineering Education and Training, IEEE, Los Alamitos (2004)Google Scholar
  32. 32.
    Nielsen, J.: Usability Engineering. John Wiley & Sons, Chichester (1993)zbMATHGoogle Scholar
  33. 33.
    Perry, D., Wolf, A.: Foundations for the Study of Software Architecture. ACM Software Engineering Notes 17(4), 40–52 (1992)CrossRefGoogle Scholar
  34. 34.
    QUISTM Questionnaire For User Interaction Satisfaction,
  35. 35.
    Rubinstein, R., Hersh, H.: The Human Factor. Digital Press, Bedford, MA (1984)Google Scholar
  36. 36.
    Seffah, A., Djouab, R., Antunes, H.: Comparing and Reconciling Usability-Centered and Use Case-Driven Requirements Engineering Processes, pp. 132–139. IEEE, Los Alamitos (2001)Google Scholar
  37. 37.
    Seffah, A., Metzker, E.: The Obstacles and Myths of Usability and Software Engineering. Communications of the ACM 47(12), 71–76 (2004)CrossRefGoogle Scholar
  38. 38.
    Shneiderman, B.: Designing the User Interface: Strategies for Effective Human-Computer Interaction. Addison-Wesley, Reading (1998)Google Scholar
  39. 39.
    Sommerville, I.: Software Engineering, 7th edn. Pearson Education (2004)Google Scholar
  40. 40.
    Tidwell, J.: Common Ground: A Pattern Language for Human-Computer Interface Design (1999),
  41. 41.
    Tidwell, J.: Designing Interfaces. Patterns for Effective Interaction Design. O’Reilliy, USA (2005) Google Scholar
  42. 42.
    Welie, M.: Amsterdam Collection of Patterns in User Interface Design (2003),

Copyright information

© IFIP International Federation for Information Processing 2007

Authors and Affiliations

  • Natalia Juristo
    • 1
  • Ana Moreno
    • 1
  • Maria-Isabel Sanchez-Segura
    • 2
  • Maria Cecília Calani Baranauskas
    • 3
  1. 1.School of Computing - Universidad Politécnica de MadridSpain
  2. 2.Department of Computing - Universidad Carlos III de MadridSpain
  3. 3.Institute of Computing – UNICAMP State University of CampinasBrazil

Personalised recommendations