Você está na página 1de 12

Qu es UWE?

UWE (UML-Based Web Engineering) es una propuesta para el desarrollo de aplicaciones Web basada en UML y en el proceso unificado para modelar aplicaciones web. Esta propuesta proporciona una notacin para especificar el dominio de la aplicacin, un proceso de desarrollo dirigido por modelos. La caracterstica de UWE es el hecho de ser un enfoque basado en normas, el cual no solo se limita a el uso de UML, sino tambin al uso de XMI como modelo de intercambio de formatos, MOF para el meta-modelado, los principios de la arquitectura dirigida por modelos (MDA), el lenguaje para la transformacin de modelos QVT y XML. UWE y UML Las principales razones para el uso de los mecanismos de extensin de UML en lugar de una de las tcnicas de modelado propietarias es la aceptacin de UML en el desarrollo de sistemas de software, la flexibilidad para la definicin de un lenguaje de modelado especifico para el dominio Web (perfil UWE) y el amplio soporte para el modelado visual por parte de las herramientas CASE que soportan UML. UWE utiliza la notacin UML y los tipos de diagramas UML sin el uso de ninguna extensin siempre que sea posible. Por las caractersticas especficas Web, como nodos y enlaces de la estructura del hipertexto, el perfil UWE incluye estereotipos, valores etiquetados y restricciones definidas para los elementos de modelado. La extensin UWE cubre navegacin, presentacin, procesos de negocio y los aspectos de adaptacin. La notacin UWE se define como una extensin "ligera" de UML. Modelos de UWE Modelo de requerimientos Para el modelado de los requerimientos funcionales UWE hace uso del modelo de casos de uso y el modelo de actividades de los casos de uso. En el modelos de casos de uso UWE distingue entre casos de uso estereotipados como <<browsing>> donde no se modifican los datos persistentes o <<processing>> donde si. En el siguiente ejemplo "SearchContact" por ejemplo, modela la bsqueda de contactos y por ello lleva el esterotipo browsing pues los datos son solamente leidos y presentados al usuario. Los otros casos de uso por el contrario modelan cambios, lo que se especifica con el estereotipo processing.

Con los casos de uso a veces no es posible capturar toda la informacin necesaria, por ello los casos de uso pueden ser descritos ms en profundidad mediante el un diagrama de actividades, para esto UWE proporciona los siguientes estereotipos:

El estereotipo user Action es usado para indicar interacciones de usuario en la pgina web iniciando un proceso o respondiendo a un requerimiento de informacin, por lo contrario, system Action describe acciones que son ejecutados por el sistema. Para determinar que datos se muestran en el sistema usamos el estereotipo <<display Action>>, mientras que para modelar la entrada y salida de datos se usan los pines de accin estereotipados como <<iteration Pin>> y <<display Pin>> respectivamente. Finalmente el estereotipo <<navigation Action>> puede ser usado para modelar opciones de navegacin y elementos asociados a la presentacin. Como ejemplo de los diagramas de actividades el siguiente grafico muestra el diagrama de actividad del caso de uso createContact del diagrama anterior:

Modelo de contenidos Este modelo especifica como se encuentran relacionados los contenidos del sistema, es decir, define la estructura de los datos que se encuentran alojados en el sitio web. Para este modelo UWE propone el uso de un diagrama de clases de UML sin ningn estereotipo aadido. En el siguiente figura vemos un ejemplo:

Modelo de usuario Mientras que el modelo de contenidos define los contenidos almacenados en la aplicacin, el modelo de usuario tiene dos propsitos diferentes. Por un lado contiene las clases que define que informacin es almacenado en el contexto de una sesin de usuario, como se ve en la figura siguiente la sesin esta formada por el usuario actual y sus discos. Por otra parte las clases tambin se usan para mostrar operaciones que pueden ser usadas en el proceso de negocio, el comportamiento de estas operaciones no es modelado pero si puede ser implementado de forma separa, El comportamiento de estos mtodos se puede describir de mltiples formas, en la siguiente imagen se ha usado OCL (Object Constraint Language) para ello.

Modelo de navegacin Para modelar como estn enlazadas las pginas de una aplicacin web usaremos el modelo de navegacin, para ello se usara un donde se mostraran los nodos y enlaces. Pero, qu son los nodos?, Nodos son unidades de navegacin que estn unidad mediante enlaces, los nodos pueden ser presentados en una misma pgina o en pginas diferentes. Para la realizacin de estos diagramas UWE propone el uso del diagrama de clases de UML con los siguientes estereotipos:

Para explicar en que consisten estos estereotipos vamos a comentar el diagrama de la siguiente figura:

Para empezar tenemos AddressBook como pgina de inicio, as que est etiquetada como {isHome} y como clase de navegacin con el smbolo correspondiente. La pgina de inicio enlaza con un men, que sera nuestra pgina de ndice, para ello la clase Main Menu esta etiquetada como pagina Menu. Desde la clase Main Menu enlazamos con las clases Search (que implementar la funcin de buscar un contacto y es etiquetada con la etiqueta de query) que es un proceso predefinido, y con la clase ConctactCreation (que crear un contacto), esta clase es un proceso no definido con lo cual llevar la etiqueta de processClass, as ambos enlaces sern del tipo process link. Vemos que la clase ConctactCreation est enlazada con Conctact ya que cuando se crea un nuevo contacto, este se debe mostrar. Como tambin cuando se realiza una bsqueda se debe mostrar la lista con los contactos del resultado, de ah que exista otro processLink entre las clases Search y ConctactList, esta ultima adems etiquetada como index, al ser una lista. En el modelo tambin vemos las dos processClass ContactDeletion y ContactUpdate, que representan las funcionalidades del borrado y actualizacin de

contactos. Estas dos clases son ambas accedidas desde el contacto concreto, por ello necesitamos nuevamente un men que se ha llamado ContactMenu. Modelo de procesos En este modelo se especifican las acciones de las clases de proceso definidas en el modelo de Navegacin, Este modelo comprende el Modelo de Estructura del Proceso que describe las relaciones entre las diferentes clases de proceso y el Modelo de Flujo del Proceso que especifica las actividades que se realizan en cada proceso. En la siguiente imagen vemos el Modelo de Estructura del Proceso que podra resultar del Modelo de navegacin presentado en el punto anterior. Como puede observarse, hemos agregado otras clases para expresar, que las tres operaciones requieren una confirmacin. Adems las clases ContactCreation and ContactUpdate heredan de la clase abstracta ContactProcessing, que representa un proceso que asegura que los asegurando que los campos de texto, que son atributos de ContactDataInput contienen valores vlidos (por ejemplo podemos pensar en prohibir un nombre en blanco para prevenir entradas inservibles en la base de datos).

Modelo de Flujo del Proceso Un flujo del proceso es representado como un diagrama de actividades, describiendo el comportamiento de una clase de proceso. Para ello UWE proporciona los siguientes estereotipos:

El estereotipo user Action es usado para indicar interaciones de usuario con la pgina web iniciando un proceso o respondiendo a un requerimiento explcito de informacin. Por el contrario, system Action describe acciones, que son ejecutadas por el sistema. En la siguiente figura se muestra el diagrama de actividades para la clase ContactDelete:

Modelo de Presentacin Este modelo representa las clases de navegacin y de proceso que pertenecen a cada pgina Web. Para este modelo UWE hace uso de un diagrama de clases con los siguientes estereotipos:

En la siguiente imagen se muestra diagrama de presentacin del ejemplo de la Agenda de contactos que hemos ido modelando en los puntos anteriores. En ella se puede ver como la clase contacto es representada como un grupo de presentacin donde se anidan diferentes texto y botones, esto significa que cada contacto la correspondiente direccin de correo y los correspondientes campos de telfonos y direcciones sern visualizados en la pgina. Tambin se puede observar que la pgina de inicio AddressBook contiene un texto introductorio y un formulario de bsqueda con un capo de texto y un botn para lanzar la bsqueda.

Modelo de adaptabilidad La adaptabilidad es una caracterstica cada vez ms importante en las aplicaciones Web. Las aplicaciones Web adaptativas proporcionan pginas ms adecuadas al usuario teniendo en cuenta las caractersticas de este o las propiedades del contexto. Un ejemplo de adaptabilidad es mostrar en la pgina inicial de una tienda online recomendaciones de productos relacionados con los productos consultados en visitas anteriores. Para modelar la adaptabilidad de un aplicacin Web de forma no intrusiva, UWE propone la utilizacin de tcnicas de modelizacin orientada a aspectos (Aspect-Oriented Modeling- AOM). Se introduce un nuevo elemento de modelado llamado aspecto. Un aspecto esta compuesto de dos partes llamadas pointcut y advise . El pointcut es un patrn parametrizable que selecciona los elementos del modelo original con los que coincide y para cada uno de estos elementos el advice aade una nueva caracterstica. De esta manera es posible definir un pointcut que detecte todas las clases que pertenecen a un tipo de usuario y asociarles a travs del advice un atributo especifico para ese tipo de usuarios. En la orientacin a aspectos esto es conocido como weaving. Como ejemplo en la siguiente figura vemos como se modela el hecho de que se muestre un enlace para comprar un disco solo cuando hay un usuario registrado.

Requisitos no funcionales Uno de los problemas que tiene UWE es que no contempla la recogida de requerimientos no funcionales como pueden ser la seguridad, la accesibilidad o el rendimiento, para ello en el desarrollo del proyecto se aadir una fase para la especiacin de requerimientos no funcionales.

Las fases que utiliza la metodologa UWE son: Anlisis o Levantamiento de Requisitos: para el levantamiento de los requisitos funcionales de la aplicacin UWE propone el uso del modelo de casos de uso de UML y la descripcin de estos mediante un modelo de actividades. Diseo: en esta fase se realizan los siguientes modelos de la metodologa: Modelo Conceptual, Modelo de Navegacin, Modelo de Presentacin, Modelo de Procesos y el Modelo de Adaptacion.

http://www.pst.ifi.lmu.de/personen/kochn/presentations/UWE_0306201 0_almeria.pdf Implementacin: UWE incluye implementacin de la arquitectura, de la estructura del hiperespacio, del modelo de usuario, de la interfaz de usuario, de los mecanismos adaptativos y las tareas referentes a la integracin de todas estas implementaciones.

Metamodelo UWE

Você também pode gostar