SEMINARIOS DE DOCTORADO 2004-2005

 

Doctorado en Ingeniería Informática y de Telecomunicación
Escuela Politécnica Superior, Universidad Autónoma de Madrid

Escuela Politécnica Superior                       UAM


10 y 31 de Marzo de 2005, 12:00

Salón de Grados, Escuela Politécnica Superior, Universidad Autónoma de Madrid


Mejora de la Usabilidad del Software mediante el Uso de Patrones

Ana María Moreno (PARTE I)

Universidad Politécnica de Madrid

María-Isabel Sánchez-Segura (PARTE II)

Universidad Carlos III  de Madrid


Resumen

Distintas clasificaciones de atributos de calidad consideran la usabilidad como un criterio de calidad más [IEEE, 98] [ISO, 00]. La usabilidad determina cuánto de fácil un sistema software es de aprender y usar, cuánto de productivos son los usuarios que trabajan con ese sistema y cuánta ayuda necesitarán [ISO, 99].

La usabilidad es una característica del software bastante compleja y que abarca un amplio espectro de aspectos. Por lo tanto, para que un sistema software sea usable es necesario ocuparse de este atributo de calidad durante prácticamente todo el proceso de construcción de dicho sistema [Ferré, 01], desde la educción de requisitos hasta las pruebas.

Una revisión en la literatura sobre HCI (Human Computer Interaction, en ingles) e Ingeniería de Usabilidad dirigido a encontrar técnicas que mejoren la usabilidad de un sistema software muestra cómo la gran mayoría de dichas técnicas se aplican a actividades relacionadas con la educción y modelización de los requisitos (técnicas de prototipado, por ejemplo), con el diseño de bajo nivel (guías de usabilidad que sugieren colores, tipos de letras, ordenamiento en la pantalla, etc.), y con la evaluación del sistema software resultante (usability testing, heuristic evaluation, etc.), siendo el diseño arquitectónico escasamente tratado .

Sin embargo, la relación entre usabilidad y arquitectura software ha sido justificada por distintos autores, tanto del campo de la HCI como de la Ingeniería de Software (IS). Por ejemplo, Ben Shneiderman, del campo de la HCI reconoce las implicaciones arquitectónicas de la usabildad en su libro "Designing the User Interface" [Shneiderman, 98]. Por otra parte, en el campo de la IS, Bass, John y Kates del SEI [Bass, 03] han descrito un conjunto de 26 escenarios que representan características de usabilidad (por ejemplo, la capacidad de proporcionar undo o help) y han mostrado cómo contemplar dichos escenarios tiene implicaciones en la arquitectura software del sistema correspondiente. Finalmente, nosotras también hemos mostrado las implicaciones de ciertas características de usabilidad en una arquitectura software [Juristo, 03a] [Juristo, 03b].

Por este motivo, en la comunidad de desarrollo de software se está trabajando recientemente en la idea de considerar explícitamente en el diseño software determinadas características de usabilidad [Bass, 2004]  [Bosch, 2003]. En este seminario se desarrollará esta relación mediante el concepto de patrón de usabilidad sensible a la arquitectura.

Siguiendo la filosofía de los patrones de diseño [Gamma et al, 95], la idea es que los patrones de usabilidad sensibles a la arquitectura capturen la experiencia del diseño de una manera que pueda ser eficientemente reutilizada por los diseñadores, sin tener la necesidad de resolver cada problema desde cero. Al tratarse de patrones que son sensibles a la arquitectura, el objetivo es que los desarrolladores los utilicen en el momento arquitectónico, de modo que en momentos tempranos del proceso de desarrollo se puedan considerar y evaluar ciertos aspectos de usabilidad, así como plantear la relación con otros atributos de calidad.

Estos patrones proporcionarán al desarrollador una ayuda para incorporar en sus diseños determinadas características de usabilidad. Esta ayuda incluirá la solución de usabilidad que la comunidad de HCI ha definido para incorporar cada característica de usabilidad en un sistema software. Pero, además, para que dicho patrón sea realmente significativo para los desarrolladores incluirá también recomendaciones y guías para incorporar dicha característica de usabilidad en un diseño software.

En este seminario se discutirá qué características de usabilidad son sensibles a la arquitectura (denominados, mecanismos de usabilidad sensibles a la arquitectura), así como una propuesta basada en una aproximación al uso de patrones se ha de proporcionar al desarrollador, una ayuda (tanto desde el punto de vista de usabilidad como de diseño software) para incorporar dichos mecanismos en el sistema software a construir desde el momento de la identificación de los requisitos del sistema.

[Bass, 03] L. Bass, B. John. Linking usability to software architecture patterns through general scenarios Source Journal of Systems and Software, Volume 66 ,  Issue 3, June 2003.

[Bass, 04] L. Bass, N. Juristo, B. John, M. Sanchez-Segura. “Avoiding We Can’t Change It”.  ICSE Tutorial, Mayo 2004.

[Bosch, 03] J. Bosch and N. Juristo. “Designing Software Architectures for Usability”. ICSE Tutorial. Mayo 2003.

[Ferré, 01] X. Ferré, N. Juristo, H. Windl, L. Constantine. Usability Basics for Software Developers. IEEE Software, Vol. 18 (1), pp. 22-30. Enero 2001.

[Ferré, 03] X. Ferré, N. Juristo, A.M. Moreno, M. Sánchez-Segura. A Software Architectural View of Usability Patterns. INTERACT 2003. 2nd Workshop on Software and Usability Cross Pollination: The Role of Usability Patterns. Zürich, Suiza. Septiembre 2003.

[Gamma, 95] E Gamma, R Helm, R Johnson, J Glissades. Design Patterns. Elements of Reusable Object-Oriented Software. Addison Wesley, 1998.

[IEEE, 98]. IEEE Std 1061: Standard for a Software Quality Metrics Methodology. IEEE, 1998.

[ISO, 99] ISO. ISO 13407.Human-Centred Design Processes for Interactive Systems. ISO, 1999.1

[ISO, 00] ISO. ISO 9126-1 Software Engineering – product quality – part 1: Quality Model, 2000.

[Juristo, 03a] N. Juristo, M. Lopez, A.M. Moreno, M. Sanchez-Segura. Workshop on Bridging the Gaps between Software Engineering and Human-Computer Interaction at ICSE '03. Portland USA, May 2003.

[Juristo, 03b] N. Juristo, A.M. Moreno, M. Sanchez-Segura. Deliverable 3.4 Techniques, patterns and styles for architecture-level usability improvement. Abril 2003. Http://www.ls.fi.upm.es/STATUS.

[Shneiderman, 98]  B. Shneiderman. Designing the User Interface: Strategies for Effective Human-Computer Interaction. Addison-Wesley, 1998

presentación PDF

Ana María Moreno

Ana Maria Moreno es Licenciada y Doctora en Informática por la Universidad Politécnica de Madrid. En la actualidad es Profesora Titular de dicha universidad. La profesora Moreno ha sido co-autora de dos libros internacionales sobre Ingeniería del Software publicados respectivamente en el año 2001 y 2005. Desde el año 1997 ha publicado artículos en revistas internacionales como IEEE Software o Journal of Systems and Software, entre otras. Ha sido también editora invitada de números especiales publicados en revistas como Data and Knowledge Engineering o International Journal of Software Engineering and Knowledge Engineering. Ha servido como Program Chair en dos conferencias internacionales (Applications of Natural Language to Information Systems en el año 2001 y Software Development Conference en el año 2002), y como Conference Chair en otra (Conference on Software Engineering Education and Training en el año 2003); además es miembro del Comité de Programa de varias conferencias tanto nacionales como internacionales. También es de destacar la particpación activa de la profesora Moreno en varios proyectos de investigación relacionados con Proceso Software y Usabilidad financiados tanto por el estado español, como por la Unión Europea, cuyos frutos han sido publicados tanto en las revistas ya mencionadas como en congresos internacionales y nacionales.

María Isabel Sánchez Segura

Maribel Sánchez es Licenciada y Doctora en Informática por la Universidad Politécnica de Madrid. En la actualidad es Profesora de la Universidad Carlos III de Madrid. Las áreas de investigación en las que se centra están relacionadas con Ingeniería del Software, sistemas interactivos y usabilidad en sistemas interactivos. Es autora de varios trabajos publicados en conferencias y revistas internacionales sobre la mejora del desarrollo de sistemas interactivos desde la perspectiva de la ingeniería del software. Además ha participado como  instructora, junto con investigadores de Carnegie Mellon y de la Universidad Politécnica de Madrid, en los tutoriales impartidos en la conferencia CHI 2004, en Abril de 2004 en Viena , y en la conferencia ICSE 2004 celebrada en Mayo de 2004 en Edimburgo, entre otros.