Sunteți pe pagina 1din 5

RESUMEN MBUI para Procesos de Ingeniera Inversa

La ingeniera inversa es un proceso que sirve para analizar un sistema


existente con el objetivo de identificar sus componentes, relaciones y crear
otras representaciones del mismo o alguna abstraccin sobre el propio sistema.
La reingeniera enfrenta una gran dificultada, la cual es la falta de informacin
de alto nivel de los programas para as automatizar el proceso de ingeniera
inversa, es por esto que la mayora de las propuestas existentes permiten
extraer algn tipo de informacin del dominio. Toda esa informacin es posible
obtenerla mediante tcnicas manuales que se basan en la observacin para
posteriormente generar un diseo que mejore al anterior.
El desarrollo de interfaces de usuario es un proceso que se presta igualmente a
la ingeniera inversa, la creacin de estas es una tarea difcil y muy costosa,
pues se estima que el 50% de cdigo de las aplicaciones corresponde a la
interfaz de usuario.
Una de las propuestas enfocada a facilitar la construccin automtica de
interfaces, ha sido la que se conoce como Interfaces de Usuario Basadas en
Modelos, que consiste en desarrollar interfaces mediante descripciones de alto
nivel de los distintos aspectos de la interfaz, en lugar de escribir el cdigo
directamente con un lenguaje de programacin.
Uno de los aspectos ms interesantes de la modelizacin de interfaces de
usuario es cmo poder aprovechar esta especificacin utilizada en la definicin
de la interfaz no solamente para la generacin automtica de la misma, sino
para llevar a cabo, de forma automtica, procesos ms laboriosos que
involucren tcnicas de reingeniera para el mantenimiento de las propias
interfaces.
En general, la mayora de las propuestas que utilizan el paradigma basado en
modelos han aportado herramientas y aplicaciones capaces de controlar el
proceso de generacin automtica de las interfaces.
En base a lo anterior el artculo nos propone dos lenguajes de especificacin y
diferentes herramientas, capaces de hacer frente a los requisitos establecidos
para llevar a cabo procesos de ingeniera inversa.
Por un lado, XIML permite la especificacin de los elementos de la interfaz para
la construccin de aplicaciones multimodales. Por otro lado, PEGASUS describe,
utilizando ontologas del dominio, informacin explcita tanto de los datos como
de la presentacin de la interfaz con alta independencia entre el modelo del
dominio y el de la presentacin.
En base a estos lenguajes se presentan tambin distintas herramientas y
metodologas de uso, como DESK que utiliza la representacin explcita
utilizada por PERSEUS para la caracterizacin de cambios a partir de la interfaz
final generada, haciendo mnimas suposiciones sobre los conocimientos del

usuario final en cuanto a programacin o lenguajes de especificacin para


interfaces.
Uno de los puntos clave para una correcta especificacin de la interfaz es ver
los distintos niveles de modelizacin que se van a llevar a cabo. Entre los
diferentes aspectos que se han distinguido a la hora de modelizar las
interfaces, se han considerado principalmente los siguientes modelos:

Modelo del dominio: describe la estructura y atributos de la informacin


que la aplicacin proporciona.
Modelo de la presentacin: consiste en una descripcin declarativa de la
representacin de la interfaz.
Modelo de tarea: describe las tareas que los usuarios pueden llevar a
cabo bajo la interfaz.
Modelo del dialogo: representa una especificacin de cmo ser el
comportamiento de la interfaz.
Modelo del usuario y de la plataforma: permiten una personalizacin del
aspecto de la interfaz en funcin del perfil del usuario que la manipula y
de las caractersticas del equipo que se utiliza para interactuar con la
interfaz de usuario.

Para la modelizacin de dominio existen herramientas como: ADEPT, que nos


permite un modelo de dominio minimalista, y est compuesto exclusivamente
por una lista de tipos de entidad. Esta herramienta est enfocada a la
identificacin de los requerimientos del usuario. Tambin est la herramienta
UIDE, la cual utiliza un modelo extendido de datos para generar el layout de la
interfaz de usuario. De forma parecida, Mecano y MOBI-D utilizan un modelo
del dominio a partir del cual se genera el layout y el comportamiento dinmico
de la interfaz. En estas herramientas es posible definir modelos del dominio
mediante la utilizacin de un lenguaje de frames con la cual podemos marcar
la jerarqua de las interfaces.
Para la modelizacin de la presentacin tenemos a MASTERMIND, el cual est
basado en ideas extradas de otras herramientas como HUMANOID e ITS.
HUMANOID define un elaborado modelo de la interfaz que incluye
componentes de la aplicacin, la presentacin y el dilogo.
Uno de los trabajos ms notables en la modelizacin de tareas es
ConCurTaskTrees, que aporta una especificacin del modelado de tareas
utilizado para disear aplicaciones interactivas.
Uno de los principales aspectos a tener en cuenta en la representacin de la
informacin de la interfaz para procesos de reingeniera es adoptar, de forma
generalizada, una especificacin que permita recuperar, a partir de la
generacin de la interfaz, informacin semntica suficiente para poder inferir o
detectar las estructuras que dieron lugar a su generacin.

Uno de los aspectos de mayor relevancia actual en materia de desarrollo de


interfaces de usuario es la necesidad de producir interfaces que puedan
utilizarse en varias plataformas. Esto es posible gracias a XIML, que es un
lenguaje de modelado de interfaces que provee el soporte necesario para la
modelizacin, diseo y generacin de interfaces multiplataforma. El lenguaje
XIML es capaz de representar las cinco dimensiones de una interfaz (tareas,
dominio, usuarios, presentacin y dialogo) y las relaciones que se puedan
establecer entre los elementos de cada una de estas dimensiones.
Otra de las soluciones que se proponen es la utilizacin de ontologas del
dominio como propuesta para poder reflejar aspectos semnticos de alto nivel
que luego puedan ser identificados en procesos de reingeniera. Para este
cometido se dise PEGASUS, un sistema de representacin del conocimiento y
generacin automtica de pginas webs dinmicas, que utiliza ontologas del
dominio a la medida para la descripcin y estructuracin conceptual de la
informacin.
El proceso de ingeniera inversa con XIML se puede dividir en dos metodologas
que son: concreta y abstracta.
Ingeniera inversa concreta. En el caso concreto, el proceso de ingeniera
inversa est basado en reglas. Las reglas para convertir HTML a XIML se basan
en su mayora en las reglas usadas por una herramienta que convierte XIML a
HTML. Basado en estas reglas, el proceso automatizado de ingeniera inversa
HTML a XIML sigue los siguientes pasos:
1. Identificacin de todos los elementos de presentacin y navegacin en la
pgina HTML.
2. Trazado relacional entre los elementos identificados y elementos
intermedios XIML basado en la base de conocimiento acerca del
dispositivo de presentacin.
3. Resolucin de ambigedades en el trazado relacional usando las reglas
de conversin XIML a HTML. Se anticipa que normalmente no todas las
ambigedades o conflictos pueden ser resueltos automticamente.
4. (Opcional) Reconversin de la presentacin y dialogo a una tercera
representacin como WML.
Ingeniera inversa abstracta. Este proceso incluye los siguientes pasos:
1. Proceso de ingeniera inversa concreta para producir modelos de
presentacin y dialogo en XIML.
2. Asignacin de elementos de presentacin a tareas en forma interactiva
usando la herramienta MOBILE.
3. Definicin interactiva de los modelos de dominio y usuarios en XIML a
partir del modelo de tareas.
4. (Opcional) Reconversin a una tercera representacin.
Tambin se propone una herramienta de autor concreta, DESK, que hace uso
de la representacin del conocimiento de PEGASUS y permite, de forma
transparente, aplicar una ingeniera inversa explcita a partir de la interfaz web

generada. De esta forma se detectan los elementos que intervienen en los


cambios que lleva a cabo el usuario final sobre la interfaz. Los principales
pasos en el proceso de interaccin con DESK son los siguientes:
1. En primer lugar, el usuario edita una pgina concreta, generada por
PEGASUS, mediante la herramienta DESK del front-end.
2. DESK recoge informacin sobre la interaccin del usuario y la plasma en
un modelo de monitorizacin, que es un modelo estructurado codificado
en XML, el cual refleja informacin de alto nivel sobre las acciones o
cambios llevados a cabo por el usuario durante la edicin de un
documento web.
3. Los cambios realizados por el usuario se envan al servidor. La parte de
DESK que se encuentra en el back-end procesa los cambios a partir del
modelo de monitorizacin, empleando para ello los correspondientes
mecanismos de inferencia mediante el uso de conocimiento de alto nivel
del dominio.
4. Como resultado final del proceso anterior de inferencia se modifican los
modelos subyacentes de PEGASUS: presentacin y dominio.
5. Finalmente se enva al usuario informacin relativa a los cambios
efectuados y a lo acontecido durante todo el proceso de inferencia.
6. La prxima vez que se genere una pgina del mismo tipo, los cambios
surtirn efecto, habiendo modificado as el mecanismo por el cual se
generan las pginas web de forma persistente.

Ingeniera Inversa De Interfaces De Usuario

Las IGUs sofisticadas se van volviendo de rigor para los productos


basados en computadoras y para los sistemas de todo tipo. Por tanto, el
nuevo desarrollo de interfaces de usuario ha pasado a ser uno de los
tipos ms comunes de las actividades de reingeniera. Ahora bien, antes
de que se pueda reconstruir una interfaz de usuario, deber tener lugar
una actividad de ingeniera inversa.
Cmo puedo entender el funcionamiento de la interfaz de usuario
existente?
Para comprender totalmente una interfaz de usuario ya existente (IU), es
preciso especificar la estructura y comportamiento de la interfaz. Se
sugieren tres preguntas bsicas a las cuales hay que responder cuando
comienza la ingeniera inversa de la IU:

Cules son las acciones bsicas que deber procesar la interfaz,


por ejemplo, acciones de teclado y clics de ratn?
Cul es la descripcin compacta de la respuesta de
comportamiento del sistema a estas acciones?
Qu queremos decir con sustitucin, o ms exactamente, qu
concepto de equivalencia de interfaces es relevante en este caso?

La notacin de modelado de comportamiento puede proporcionar una


forma de desarrollar las respuestas de las dos primeras preguntas
indicadas anteriormente.
Gran parte de la informacin necesaria para crear un modelo de
comportamiento se puede obtener mediante la observacin de la
manifestacin extrema de la interfaz existente. Ahora bien, es preciso
extraer del cdigo la informacin adicional necesaria para crear el
modelo de comportamiento.
Es importante indicar que una IGU de sustitucin puede que no refleje la
interfaz antigua de forma exacta (de hecho, puede ser totalmente
diferente). Con frecuencia, merece la pena desarrollar metforas de
interaccin nuevas. Por ejemplo, una solicitud de IU antigua en la que un
usuario proporcione un superior (del 1 a 10) para encoger o agrandar
una imagen grfica. Es posible que una IGU diseada utilice una barra
de imgenes y un ratn para realizar la misma funcin.

S-ar putea să vă placă și