How a Human-Centered Approach Impacts Software Development

  • Xavier Ferre
  • Nelson Medinilla
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4550)


Usability has become a critical quality factor in software systems, and it requires the adoption of a human-centered approach to software development. The inclusion of humans and their social context into the issues to consider throughout development deeply influences software development at large. Waterfall approaches are not feasible, since they are based on eliminating uncertainty from software development. On the contrary, the uncertainty of dealing with human beings, and their social or work context, makes necessary the introduction of uncertainty-based approaches into software development. HCI (Human-Computer Interaction) has a long tradition of dealing with such uncertainty during development, but most current software development practices in industry are not rooted in a human-centered approach. This paper revises the current roots of software development practices, illustrating how their limitations in dealing with uncertainty may be tackled with the adoption of well-known HCI practices.


uncertainty software engineering waterfall iterative Human-Computer Interaction-Software Engineering integration 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Blum, B.I.: Software Engineering A Holistic View. Oxford University Press, New York (1992)Google Scholar
  2. 2.
    Boehm, B.W.: A Spiral Model of Software Development and Enhancement. ACM SIGSOFT Engineering Notes 11-4, 14–24 (1986)Google Scholar
  3. 3.
    Bourque, P., Dupuis, R., Abran, A., Moore, J.W., Tripp, L., Wolf, S.: Fundamental principles of software engineering- a journey. Journal of Systems and Software 62, 59–70 (2002)CrossRefGoogle Scholar
  4. 4.
    Carroll, J.M.: Scenario-Based Design. In: Helander, M., Landauer, T., Prabhu, P. (eds.) Handbook of Human-Computer Interaction, 2nd edn., pp. 383–406. Elsevier North-Holland (1997)Google Scholar
  5. 5.
    Constantine, L.L., Lockwood, L.A.D.: Software for Use: A Practical Guide to the Models and Methods of Usage-Centered Design. Addison-Wesley, New York (1999)Google Scholar
  6. 6.
    Cooper, A., Reimann, R.: About Face 2.0: The Essentials of Interaction Design. Wiley Publishing, Indianapolis (2003)Google Scholar
  7. 7.
    Costabile, M.F.: Usability in the Software Life Cycle. In: Chang, S.K. (ed.) Handbook of Software Engineering and Knowledge Engineering, pp. 179–192. World Scientific, New Jersey (2001)Google Scholar
  8. 8.
    Descartes, R.: Discourse on the Method of Rightly Conducting One’s Reason and of Seeking Truth (1993),
  9. 9.
    Hakiel, S.: Delivering Ease of Use. Computing and Control Engineering Journal 8-2, 81–87 (1997)CrossRefGoogle Scholar
  10. 10.
    Hix, D., Hartson, H.R.: Developing User Interfaces: Ensuring Usability Through Product and Process. John Wiley and Sons, New York (1993)zbMATHGoogle Scholar
  11. 11.
    Glass, R.L.: Facts and Fallacies of Software Engineering. Addison-Wesley, Boston (2003)Google Scholar
  12. 12.
    Gould, J.D., Lewis, C.: Designing for Usability: Key Principles and What Designers Think, Communications of the ACM, 300–311 (March 1985)Google Scholar
  13. 13.
    IEEE: IEEE Std 610.12-1990. IEEE Standard Glossary of Software Engineering Terminology. IEEE, New York, USA (1990)Google Scholar
  14. 14.
    IEEE: IEEE Std 830-1998. IEEE Recommended Practice for Software Requirements Specifications. IEEE, New York, USA (1998)Google Scholar
  15. 15.
    IEEE: IEEE Std 1362-1998. IEEE Guide for Information Technology - System Definition - Concept of Operations (ConOps) Document. IEEE, New York, USA (1998)Google Scholar
  16. 16.
    ISO: International Standard: Human-Centered Design Processes for Interactive Systems, ISO Standard 13407: 1999. ISO, Geneva, Switzerland (1999) Google Scholar
  17. 17.
    Klir, G.J., Folger, T.A.: Fuzzy Sets, Uncertainty and Information. Prentice Hall, N.J. (1988)zbMATHGoogle Scholar
  18. 18.
    Larman, C.: Agile and Iterative Development. In: A Manager’s Guide, Addison-Wesley, Boston (2004)Google Scholar
  19. 19.
    Matsubara, T., Ebert, C.: Benefits and Applications of Cross-Pollination. IEEE Software. 24–26 (2000) Google Scholar
  20. 20.
    Mayhew, D.J.: The Usability Engineering Lifecycle. Morgan Kaufmann, San Francisco (1999)Google Scholar
  21. 21.
    Parnas, D.L.: On the Criteria To Be Used in decomposing System into Modules. Communications of the ACM. 15-12, 1053–1058 (1972)Google Scholar
  22. 22.
    Preece, J., Rogers, Y., Sharp, H., Benyon, D., Holland, S., Carey, T.: Human-Computer Interaction. Addison Wesley, Harlow (1994)Google Scholar
  23. 23.
    Raccoon, L.B.S.: The Chaos Strategy. ACM SIGSOFT Software Engineering Notes, 20-5, 40–46 (1995)Google Scholar
  24. 24.
    Seffah, A., Andreevskaia, A.: Empowering Software Engineers in Human-Centered Design. In: Proc. of the ICSE 2003 Conference, Portland (OR), USA, pp. 653–658 (2003)Google Scholar
  25. 25.
    Seffah, A., Gulliksen, J., Desmarais, M.D. (eds.): Human-Centered Software Engineering - Integrating Usability in the Development Process. Springer, Heidelberg (2005)Google Scholar
  26. 26.
    Shneiderman, B.: Designing the User Interface: Strategies for Effective Human-Computer Interaction, 3rd edn. Addison-Wesley, Reading (1998)Google Scholar
  27. 27.
    Vredenburg, K., Mao, J.Y., Smith, P.W., Carey, T.: A Survey of User-Centered Design Practice. In: Proc. of CHI 2002, Minneaopolis (MI), USA, pp. 471–478 (2002)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2007

Authors and Affiliations

  • Xavier Ferre
    • 1
  • Nelson Medinilla
    • 1
  1. 1.Universidad Politecnica de Madrid, Campus de Montegancedo, 28660 - Boadilla del Monte (Madrid)Spain

Personalised recommendations