Introducción
Desde el punto de ingeniería de software, la interfaz de usuario juega un papel preponderante en el desarrollo y puesta en marcha de todo sistema. Es la carta de presentación del mismo y en ocasiones resulta determinante para la aceptación o rechazo de todo un proyecto. En promedio, se estima que del 35% al 45% de los gastos destinados a un proyecto son direccionados al diseño de la interfaz. Teniendo conocimiento de esto, por que no formalizar su diseño.
Hasta ahora, el diseño de esta parte del sistema se realiza de manera lírica, no considerando elementos como:
El diseño visual de interfaces involucra diferentes disciplinas, entre las que podemos encontrar: diseño de comunicación visual, diseño industrial y arquitectura (incluyendo el diseño de interiores). La meta es resolver problemas de comunicación de manera efectiva tanto funcional como estéticamente.
Dado el lugar que ocupa la interfaz en todo sistema, es el principal medio de comunicación con el exterior. Por comunicación entendemos al proceso completo mediante el cual el comportamiento de una entidad se ve afectado por otra, debido a un intercambio de mensajes o signos a través de un canal físico. La meta de todo diseño orientado a la comunicación es desarrollar un mensaje que pueda ser transmitido y recibido de manera exacta y a tiempo, con lo cual se espera que el receptor del mismo modifique su estructura y comportamiento.
Un termino muy utilizado en esta área es el de lenguaje visual, el cual se entiende como las características visuales (forma, tamaño, posición, orientación, color, textura, etc.) de un conjunto de elementos de diseño (puntos, líneas, planos, volumen, etc.) y la manera en que se relacionan unos con otros (balance, ritmo, estructura, proporción, etc.) en la solución de un problema de comunicación particular. Cualquier lenguaje define un universo de signos y un conjunto de reglas para usarlos. Cada lenguaje visual tiene un vocabulario formal que contiene los elementos de diseño básicos, mediante los cuales se pueden ensamblar elementos de nivel superior, y una sintaxis visual que describe como realizar estos ensambles.
Actualmente, las GUI dejan mucho que desear en términos de la comunicación, siendo que teniéndose las herramientas y facilidades en equipo nos hemos acostumbrado a los malos diseños y por lo tanto seguiremos en este camino si no tomamos las riendas de este juego.
Por esto, en los últimos tiempos, los diferentes paradigmas de desarrollo de sistemas siguen una tendencia que involucra a la interfaz de usuario como una parte muy importante en el proceso de desarrollo, uno de estos paradigmas es el conocido con el nombre de VIEW-CONTROLLER-MODEL utilizado ampliamente en desarrollos con SmallTalk, y actualmente en todo sistema que integre facilidades para la construcción de interfaces usando la metodología orientada a objetos.
Dentro de este paradigma, se conciben tres capas de implementación:
Siguiendo esta metodología de desarrollo se logra una independencia entre la solución del problema y el ambiente de interfaz de usuario.
Por ejemplo:
Suponga que esta utilizando un compilador estándar para varias plataformas, digamos DEC/OSF, Linux Red Hat, OpenStep, Raphsody, Windows. Cuando diseña la solución del problema, no toma en cuenta restricciones del ambiente de trabajo ya que el compilador es estándar. Esto quiere decir que el MODELo que diseñe para un ambiente puede utilizarlo en otro sin modificación alguna.
Solo en el momento de construir la capa VIEW y CONTROLLER debe tomar en cuenta las características del ambiente.
Esta es una de las premisas más importantes en el desarrollo de sistemas abiertos, que como su nombre lo indica, pretenden que un problema sea resuelto una sola vez y pueda ser implantado en diferentes plataformas sin cambios o actualizaciones muy drásticas.
En este curso introducimos inicialmente los conceptos del área. Presentamos los principales factores que intervienen en el diseño de una interfaz de usuario. Continuamos con aspectos de diseño y finalizamos con métricas de evaluación de interfaces.