22
Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006. Patrones de diseño Patrones de diseño para mejorar la usabilidad Prof. Adelaide Bianchini Dpto. de Computación y Tecnología de la Información Universidad Simón Bolívar Marzo 2006

Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006. Patrones de diseño Patrones de diseño

Embed Size (px)

Citation preview

Page 1: Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006. Patrones de diseño Patrones de diseño

Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006.

Patrones de diseño

Patrones de diseño para mejorar la usabilidad

Prof. Adelaide Bianchini

Dpto. de Computación y Tecnología de la InformaciónUniversidad Simón Bolívar

Marzo 2006

Page 2: Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006. Patrones de diseño Patrones de diseño

Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006.

Patrones de diseño

Agenda

• ¿Qué es un patrón de diseño?• ¿Por qué patrones?• Más patrones• Ejemplos• Algunas referencias

Page 3: Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006. Patrones de diseño Patrones de diseño

Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006.

Patrones de diseño

¿Qué es un patrón de diseño?

Christopher Alexander (Urbanista) (1)

“un patrón de diseño es una solución a un problema que se usa repetidamente en contextos similares con algunas variantes en la implementación”

(1) http://g.oswego.edu/dl/ca/ca/ca.html

Page 4: Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006. Patrones de diseño Patrones de diseño

Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006.

Patrones de diseño

¿Qué es un patrón de diseño?

La primera importación de este modelo de diseño, usado en el campo de la Arquitectura para su aplicación en el diseño de productos informáticos, se produce en el área de la Ingeniería del Software y programación orientada a objetos a principios de los 90 y se conoce como Patrones de Diseño de Software.

Page 5: Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006. Patrones de diseño Patrones de diseño

Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006.

Patrones de diseño

¿Qué es un patrón de diseño?

Los patrones de diseño son el esqueleto de las soluciones a problemas comunes en el desarrollo de software.

Brindan una solución ya probada y documentada a problemas de desarrollo de software que están sujetos a contextos similares.

Page 6: Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006. Patrones de diseño Patrones de diseño

Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006.

Patrones de diseño

¿Qué es un patrón de diseño de interacción?

Los Patrones de Diseño de Software estaban

destinados a solucionar problemas de funcionalidad;

Los Patrones de Diseño de Interacción tienen el objetivo de resolver problemas de usabilidad.

Los modelos de diseño basados en patrones se complementan y pueden ser usados conjuntamente con resultados exitosos en el diseño de aplicaciones

interactivas.

Page 7: Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006. Patrones de diseño Patrones de diseño

Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006.

Patrones de diseño

¿Por qué patrones?

Aunque ambos tipos de patrones están destinados a solucionar problemas claramente diferentes, la usabilidad y funcionalidad no pueden ser tratadas como aspectos independientes de una aplicación interactiva.

Page 8: Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006. Patrones de diseño Patrones de diseño

Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006.

Patrones de diseño

¿Por qué patrones?

La usabilidad no sólo depende del diseño del interfaz (2) sino también del diseño a nivel de arquitectura de la aplicación.

Esto quiere decir que una decisión de diseño a nivel de funcionalidad afectará a la usabilidad, y

viceversa.

(2) Folmer, E.; Bosch, J. (2004). “Architecting for usability: a survey”. Journal of Systems and Software. Febrero 2004, v. 70, n. 1-2. pp. 61-78. http://is.ls.fi.upm.es/status/results/survey.pdf

Page 9: Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006. Patrones de diseño Patrones de diseño

Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006.

Patrones de diseño

Ejemplos de patrones

Según (2), algunos de los tipos de patrones de diseño para usabilidad son:

• Tidwell´s usability pattern collection

• The Amsterdam Collection of Patterns in User Interface design (WELIE)

• The Brighton Usability Pattern Collection

(2) Folmer, E.; Bosch, J. (2004). “Architecting for usability: a survey”. Journal of Systems and Software. Febrero 2004, v. 70, n. 1-2. pp. 61-78. http://is.ls.fi.upm.es/status/results/survey.pdf

Page 10: Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006. Patrones de diseño Patrones de diseño

Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006.

Patrones de diseño

¿Más patrones?

Se propone un tercer tipo de patrón, los Patrones Arquitectónicos de Usabilidad, (3) destinados precisamente a resolver el problema de incorporación de un patrón de usabilidad concreto en el diseño de un software y sus efectos en los componentes de la arquitectura del sistema.

(3) Moreno, A.M.; Sánchez-Segura, M. (2003).Patrones de Usabilidad: Mejora de la Usabilidad del Software desde el momento de Arquitectónico. VIII Jornadas de Ingeniería del Software y Bases de Datos (JISBD'03). Alicante, Noviembre 2003.

Page 11: Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006. Patrones de diseño Patrones de diseño

Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006.

Patrones de diseño

¿Más patrones?

Un patrón arquitectónico determinará cómo se incorporará este patrón de usabilidad en una arquitectura software; es decir, qué efecto tendrá la inclusión del patrón de usabilidad en los componentes de la arquitectura del sistema.

Al igual que los patrones de diseño, los patrones arquitectónicos reflejarán una posible solución a un problema: la incorporación de un patrón de usabilidad concreto en un diseño software. (3)

(3) Moreno, A.M.; Sánchez-Segura, M. (2003).Patrones de Usabilidad: Mejora de la Usabilidad del Software desde el momento de Arquitectónico. VIII Jornadas de Ingeniería del Software y Bases de Datos (JISBD'03). Alicante, Noviembre 2003.

Page 12: Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006. Patrones de diseño Patrones de diseño

Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006.

Patrones de diseño

¿Más patrones?

(3) Moreno, A.M.; Sánchez-Segura, M. (2003).Patrones de Usabilidad: Mejora de la Usabilidad del Software desde el momento de Arquitectónico. VIII Jornadas de Ingeniería del Software y Bases de Datos (JISBD'03). Alicante, Noviembre 2003.

Relaciones entre Atributos, Propiedades y Patrones

Page 13: Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006. Patrones de diseño Patrones de diseño

Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006.

Patrones de diseño

¿Más patrones?

(3) Moreno, A.M.; Sánchez-Segura, M. (2003).Patrones de Usabilidad: Mejora de la Usabilidad del Software desde el momento de Arquitectónico. VIII Jornadas de Ingeniería del Software y Bases de Datos (JISBD'03). Alicante, Noviembre 2003.

Relaciones entre los atributos, propiedades y patrones de usabilidad y patrones arquitectónicos

Page 14: Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006. Patrones de diseño Patrones de diseño

Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006.

Patrones de diseño

¿Más patrones?

Por otro lado existen una serie de “Patrones de Usabilidad Arquitectónicamente Sensibles” (4) como patrones de diseño propios del nivel estructural de una aplicación software que previsiblemente mejorarán la usabilidad final de dicha aplicación.

(4) Folmer, E.; Gurp, J.; Bosch, J. (2003). “A framework for capturing the relationship between usability and software architecture”. Software Process: Improvement and Practice, Vol. 8, n 2. pp. 67-87. April/June 2003.

Page 15: Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006. Patrones de diseño Patrones de diseño

Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006.

Patrones de diseño

¿Más patrones?

(4) Folmer, E.; Gurp, J.; Bosch, J. (2003). “A framework for capturing the relationship between usability and software architecture”. Software Process: Improvement and Practice, Vol. 8, n 2. pp. 67-87. April/June 2003.

Wizard pattern

Page 16: Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006. Patrones de diseño Patrones de diseño

Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006.

Patrones de diseño

¿Más patrones?

(4) Folmer, E.; Gurp, J.; Bosch, J. (2003). “A framework for capturing the relationship between usability and software architecture”. Software Process: Improvement and Practice, Vol. 8, n 2. pp. 67-87. April/June 2003.

Multi-channeling pattern

Page 17: Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006. Patrones de diseño Patrones de diseño

Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006.

Patrones de diseño

¿Más patrones?

http://www.visi.com/~snowfall/InteractionPatterns.html

http://webpatterns.org/

Page 18: Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006. Patrones de diseño Patrones de diseño

Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006.

Patrones de diseño

¿Patrones o directrices de diseño?

• Las directrices de usabilidad describen reglas a seguir, mientras los patrones además especifican el resultado deseado.

• Una directriz de usabilidad representa una regla que si se cumple el diseño “estará bien”, y si no “estará mal”, mientras que un patrón especifica qué hacer para conseguir un objetivo concreto en un contexto determinado.

Page 19: Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006. Patrones de diseño Patrones de diseño

Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006.

Patrones de diseño

¿Patrones o directrices de diseño?

• Como indica (5) los patrones de interacción están destinados a la solución de problemas concretos, frente al enfoque más generalista de las directrices.

(5) Henninger, S. (2001). Supporting Design through Usability Guidelines and Patterns. CHI2001 Workshop on Tools, Conceptual Frameworks, and Empirical Studies for Early Stages of Design, 10-13, April 2001.

Page 20: Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006. Patrones de diseño Patrones de diseño

Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006.

Patrones de diseño

¿Patrones o directrices de diseño?

• Como indica (5) los patrones de interacción están destinados a la solución de problemas concretos, frente al enfoque más generalista de las directrices.

• El enfoque de los patrones es más constructivo, en vez de especificar reglas del tipo “qué se debe hacer” o “qué no se debe hacer”, describen “qué se debe hacer para conseguir determinado objetivo”. (6)

(6) Welie, M.; Veer, G.C.; Eliëns, A. (2000). Patterns as Tools for User Interface Design. In: International Workshop on Tools for Working with Guidelines, pp. 313-324, 7-8 October 2000, Biarritz, France.

Page 21: Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006. Patrones de diseño Patrones de diseño

Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006.

Patrones de diseño

¿Patrones o directrices de diseño?

• Otra diferencia es en cuanto a la representación de la información. A pesar que mucha de la información de los patrones es repetición de la existente en guías y directrices de usabilidad, en los patrones además se describe el contexto en el que el patrón es aplicable, y ejemplos concretos de aplicación (7). Es decir, especifican cuándo, cómo y por qué la solución puede aplicarse (6).

(7) Henninger, S. (2000). A methodology and tools for applying context-specific usability guidelines to interface design. Interacting with Computers 12 (2000) pp. 225–243

Page 22: Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006. Patrones de diseño Patrones de diseño

Prof. Adelaide Bianchini. Dpto. de Computación y Tecnología de la Información. Universidad Simón Bolívar. Marzo 2006.

Patrones de diseño

Algunas referencias

Richard N. Griffiths: “Don’t Write Guidelines Write Patterns!”Disponible en: http://www.it.bton.ac.uk/staff/lp22/guidelinesdraft.html

Hernández Hernández, MªE.; Álvarez Carrión, G.; Muñoz Arteaga, J.; (2003). “Patrones de Interacción para el Diseño de Interfaces Web Usables”. CIECE 2003, Zacatepec, Morelos, México, Abril 9, 2003. Disponible en: http://ccc.inaoep.mx/~grodrig/Descargas/com10017.pdf

Moreno, A.M.; Sánchez-Segura, M. (2003). “Patrones de Usabilidad: Mejora de la Usabilidad del Software desde el momento de Arquitectónico”. VIII Jornadas de Ingeniería del Software y Bases de Datos (JISBD'03). Alicante, Noviembre 2003.Disponible en http://www.willydev.net/descargas/prev/PatronesUsa.pdf