Sunteți pe pagina 1din 22

UNIVERSIDAD SAN PEDRO

VICERRECTORADO ACADMICO FILIAL LIMA-BARRANCA

FACULTAD DE INGENIERA ESCUELA DE INGENIERA INFORMTICA Y DE SISTEMAS

Tema de Exposicin: UWE (UML-Based Web Engineering)


PROF.: ING. MIGUEL MENDOZA DIONICIO.
PROYECTO QUE COMO PARTE DE LA ASIGNATURA DE INGENIERA WEB PRESENTAN LOS ALUMNOS:

AGERO TELLO, Erick Anderson COOSE AGUIRRE, Isaac LAREDO --RAMREZ BAUTISTA, Freling VILLACORTA LPEZ, Danilo

Septiembre, 2011

INTRODUCCIN Las aplicaciones web son programas que utilizan un navegador de internet para visualizar su interfaz. Las aplicaciones web son soluciones informticas que los usuarios utilizan accediendo a un servidor a travs de Internet o su red interna (intranet). Como interfaz con la aplicacin se utiliza un navegador de Internet. UWE Presenta unos modelos de diseo que ajustan bastante bien al diseo de sitios web. Otra ventaja es la notacin especfica que ofrece a UML para representar elementos de una pgina web.

TIPOS DE APLICACIONES WEB

A lo hora de establecer una clasificacin la podemos realizar atendiendo a criterios como pueden ser la complejidad de los datos, de la propia aplicacin, la volatilidad, la estructuracin de los datos o la intencionalidad de la aplicacin. De entre todas las posibles clasificaciones, la que aparece a continuacin est hecha en base a la intencionalidad de la aplicacin:

1. Informacionales: Orientadas a la difusin de informacin personalizada o no, y con acceso a la BD o sin l. 2. Orientados a la descarga de datos: Servidores de material didctico, servidores de canciones. 3. Interactivas: Orientadas a la interaccin con el usuario. 4. Orientas al Servicio: Sistemas de ayuda financiera, simuladores. 5. Transaccionales: Compra electrnica, banca electrnica. 6. De Flujo de Datos: Sistemas de planificacin en lnea, manejo de inventario 7. Entornos de Trabajo Colaborativo: Herramientas de diseo colaborativo, sistemas de autora distribuidos. 8. Comunidades on-line (Sistemas C2C): Foros de debate, servicios de subastas 9. Portales Web: Centros comerciales de compra electrnica, intermediarios en lnea. 10. Orientados al anlisis de datos: Dataworkhousing, aplicaciones OLAP.

Caractersticas de las aplicaciones web


Son aplicaciones basadas en el modelo Cliente/Servidor que gestionan datos almacenados en un servidor web, y que utilizan como interface pginas en formato HTML, conteniendo datos hipermedia. El usuario se comunica con la aplicacin desde cualquier cliente conectado a la red. Las aplicaciones web presentan las siguientes ventajas: 1) Facilidad de manejo: ya que la interaccin con el usuario se establece en base a elementos a los que est cada vez ms acostumbrado, pginas web, que le permiten conocer la funcionalidad del sistema con poco esfuerzo. 2) Accesibilidad: las aplicaciones web son accesibles desde cualquier punto de la red, lo cual significa que un usuario autorizado (se pueden establecer controles de acceso) puede utilizarla si dispone de cualquier conexin a Internet (salvo el caso de que se trate de una aplicacin que funcione en una red TCP/IP propia, en cuyo caso ser necesario disponer de acceso a la misma). 3) Portabilidad: los navegadores web se han desarrollado para todo tipo de mquinas, por lo que cualquier usuario de internet, dispone de la herramienta bsica para lanzar la aplicacin. 4) Facilidad de desarrollo: en este sentido, hay dos aspectos a destacar que determinan el desarrollo de este tipo de sistemas. En primer lugar, la descomposicin intrnseca en componentes, as como al hecho de que en cierta medida, algunos aspectos que tienen que ver con el carcter distribuido de la aplicacin estn resueltos de antemano (por ejemplo el protocolo HTTP controla el acceso a datos en el servidor).

Requisitos para las aplicaciones web


1) Requisitos de datos, tambin denominados requisitos de contenido, requisitos conceptuales o requisitos de almacenamiento de informacin. stos requisitos responden a la pregunta de qu informacin debe almacenar y administrar el sistema. 2) Requisitos de interfaz (al usuario), tambin llamados en algunas propuestas requisitos de interaccin o de usuario. Responden a la pregunta de cmo va a interactuar el usuario con el sistema. 3) Requisitos navegacionales, recogen las necesidades de navegacin del usuario. 4) Requisitos de personalizacin, describen cmo debe adaptarse el sistema en funcin de qu usuario interacte con l y de la descripcin actual de dicho usuario. 5) Requisitos transaccionales o funcionales internos, recogen qu debe hacer el sistema de forma interna, sin incluir aspectos de interfaz o interaccin. Tambin son conocidos en el ambiente web como requisitos de servicios. 6) Requisitos no funcionales, son por ejemplo los requisitos de portabilidad, de reutilizacin, de entorno de desarrollo, de usabilidad, de disponibilidad, etc.

EL PORQU DE UNA METODOLOGA DE DESARROLLO WEB?

Los principales problemas que nos encontramos es la falta de fiabilidad, seguridad, escalabilidad, mantenimiento, integracin y la alta dependencia para su desarrollo e implantacin junto con la falta de estndares. Lo que deseamos es controlar el caos que han provocado en el pasado procesos creativos de desarrollo con el fin de proporcionar un proceso sistemtico orientado a la mejora de la calidad de la aplicacin final. En esta nueva disciplina se parte de la base de que las necesidades de evolucin, mantenimiento, la adaptacin a nuevos dispositivos de acceso y la migracin a nuevas plataformas y entornos de desarrollo deben dirigir el proceso del ciclo de vida. Para todo esto se han desarrollado metodologas que permiten estructurar comunicar, entender, simplificar y formalizar tanto el dominio como las decisiones de diseo, as como disponer de documentacin detallada para posibles cambios del software.

QU ES UWE?
UWE (UML-Based Web Engineering Espaol: Lenguaje Unificado de Modelado basado en Ingeniera Web) es un mtodo de ingeniera del software para el desarrollo de aplicaciones web basado en UML. Cualquier tipo de diagrama UML puede ser usado, porque UWE es una extensin de UML. El enfoque UWE proporciona una notacin especfica de dominio, un proceso de desarrollo dirigido por modelos, y soporte de herramientas para la ingeniera de aplicaciones Web. La caracterstica de la UWE es el hecho de que un enfoque basado en normas que no se limita a la utilizacin de la "lengua franca" de UML, pero tambin utiliza XMI como un formato de cambio de modelo, Ministerio de Hacienda para el meta-modelo, los principios basado en modelos del enfoque de la MDA, la transformacin de modelos QVT idioma, y XML. Las principales razones para el uso de los mecanismos de extensin de UML en lugar de una propiedad de las tcnicas de modelado es la aceptacin de UML en el desarrollo de sistemas de software, flexibilidad para la definicin de un dominio web especfico lenguaje de modelado: un perfil UML llamada, y todo el apoyo visual de modelado por las herramientas CASE UML. UWE utiliza "pura" notacin UML y tipos de diagrama UML siempre que sea posible para el anlisis y diseo de aplicaciones Web, es decir, sin ampliaciones de ningn tipo. Por las caractersticas Web, tales como nodos y enlaces de la estructura de hipertexto, el perfil de UWE incluye estereotipos, valores etiquetados y restricciones definidas para los elementos de modelado. La extensin UWE cubre la navegacin, la presentacin, los procesos de negocio y los aspectos de la adaptacin. La notacin UWE se define como una "ligera" de extensin del UML.

UWE y su relacin con UML


UWE define una extensin del Lenguaje Unificado de Modelado (UML). sta, es considerada como una extensin ligera de peso e incluye en su definicin tipos, etiquetas de valores y restricciones para las caractersticas especficas del diseo Web, las cuales, unidas a las definiciones de UML forman el conjuntos de objetos de modelado que se usarn para el desarrollo del modelo utilizado en UWE. Las funcionalidades que cubren UWE abarcan reas relacionadas con la Web como la navegacin, presentacin, los procesos de negocio y los aspectos de adaptacin.

Una de las ventajas de que UWE extienda el estndar UML es la flexibilidad de ste para la definicin de un lenguaje de modelado especfico para el dominio web y sobretodo la aceptacin universal de dicho estndar en el campo de la ingeniera del software.

Otra gran ventaja es que actualmente existen mltiples de herramientas CASE basadas en UML, con lo cual es relativamente sencillo su utilizacin y ampliacin para utilizar los objetos de modelado definidos en UWE. Estas herramientas se vern en el siguiente punto.

Herramientas SW
Como se ha explicado en la seccin anterior, para aplicar las funcionalidades que aade UWE, se utilizan las mismas herramientas software de modelado basadas en UML y se les aade una extensin a la aplicacin para que permita estas nuevas funcionalidades. Se ha desarrollado un plugin(complementos) para una de las herramientas UML ms conocidas, MagicDraw, que es una herramienta que soporta la versin 2.1.2 de este estndar para lenguajes de programacin como por ejemplo Java, C++ o C#. Este plugin llamado MagicUWE, es de libre distribucin pudiendo adquirir gratuitamente y est desarrollado para la versin 16 de MagicDraw. En la pgina oficial de UWE se encuentra disponible as como un manual de instalacin y uso de esta extensin. Tambin se ha desarrollado UWEet, que es un plugin para la herramienta UML de cdigo abierto UMLet. Esta herramienta se caracteriza por una interfaz simple para el usuario y por su compatibilidad con Eclipse a la hora de compartir diagramas UML. Tambin puede exportar estos a distintos formado como el archiconocido PDF. Dicho esto, este plugin proporciona a UWEet de una paleta en su interfaz con todos los elementos que son definidos por UWE, permitiendo as la extensin del lenguaje UML. UWEet tambin se encuentra disponible de manera gratuita en la pgina web oficial de UWE. Para uno de los entornos de desarrollo ms utilizados en todo el mundo, Eclipse, tambin se ha creado una extensin. Este plugin se denomina UWE4JSF y permite la generacin automtica de aplicaciones web para JavaServer Faces (JSF) platform. Por ltimo destacar que existe una herramienta software basada especficamente en la metodologa UWE, esta herramienta fue desarrollada como una extensin de ArgoUML, herramienta de modelado basada en UML. Se trata de la aplicacin ArgoUWE que permite la semiautomtica generacin de los modelos caractersticos de UWE como son el de navegacin, el de presentacin, el de procesos y el de adaptacin. Est herramienta tambin se encuentra disponible en la pgina web oficial de UWE.

A) Principales aspectos del UWE


Los principales aspectos en los que se fundamenta UWE son los siguientes: 1) Uso de una notacin estndar, para todos los modelos (UML: Lenguaje de modelado unificado). 2) Definicin de mtodos: Definicin de los pasos para la construccin de los diferentes modelos. 3) Especificacin de Restricciones: Se recomienda el uso de restricciones escritas (OCL: Lenguaje de restricciones de objetos) para aumentar la exactitud de los modelos.

B) Modelos de UWE
En esta seccin se explicarn los modelos para cada una de los aspectos web que cubre la metodologa UWE, recordemos que estos aspectos eran los modelos de caso de uso, contenido, usuario, navegacin, proceso y presentacin. As procedemos a explicar con un breve ejemplo cada uno de estos modelos.

1)

Modelo de Casos de Uso

Lo primero que se ha realizado en el diseo de la web es modelar los casos de uso, para obtener una idea general de lo que un usuario puede o no puede hacer en el sistema, as en la siguiente imagen se muestra estas posibilidades, hay que decir que en el diseo de este caso prctico se ha omitido la informacin referente a las transacciones econmicas de las compras por motivos de simplificacin prctica.

Con lo cual el modelado de los casos de uso quedara: En la figura podemos ver que las funciones de un usuario no registrado son limitadas, ya que solo puede buscar informacin sobre los disco, registrarse y loguearse, para llegar a ser usuario Registrado. En cuanto a las funciones del usuario Registrado, son las mismas que el usuario no registrado ms las funcionalidades adicionales de comprar el disco, descargar el disco y las opciones de administracin de su cuenta de crdito personal: recargar cuenta, ver cuenta y ver historial de discos comprados

2) Modelo de Contenido
Este modelo especifica cmo se encuentra relacionados los contenidos del sistema, es decir, define la estructura de los datos que se encuentran alojados en el sitio web. A continuacin se muestra un ejemplo de este modelo contenido en la pgina web de UWE.

En este ejemplo se puede ver representado que el contenido web est formado por una agenda bsica de contactos, est agenda representada por la clase AddressBook contiene un conjunto de uno o ms contactos (clase Contact) , cada uno de ellos tiene un nombre, un email, una direccin y un telfono. De los cuales los dos primeros son de tipo String y los dos ltimos a son estructuras de otros atributos, representadas por las clases Address y Phone, cada contacto puede tener una direccin y un telfono principal y otros secundarios.

3)

Modelo de Usuario

La diferencia entre el modelo de Contenido y este modelo no explicado anteriormente, es que el modelo de Contenido define el contenido de los datos almacenados por la aplicacin, mientras que el modelo de Usuario tiene dos objetivos diferenciados: -Contiene las clases que define qu informacin es almacenada en el contexto de una sesin. En este caso prctico una sesin est formada por el usuario actual y sus discos. -Estas clases contenidas proveen de operaciones que puede ser usados en el proceso de negociacin de procesos. El comportamiento de estas operaciones no es modelado, pero tiene que ser implementado por separado. El comportamiento de estos mtodos se puede describir de mltiples formas, en la siguiente imagen se ha usado OCL (Object Constraint Language) para ello. En la siguiente imagen tenemos el modelo de Usuario realizado para este caso prctico

4) Modelo de navegacin
Este modelo indica como el sistema de pginas web del sitio est relacionado internamente. Es decir cmo se enlazan los elementos de navegacin. Para ello se utilizan unidades de navegacin llamadas "nodos" conectadas por enlaces de navegacin. Estos nodos pueden ser mostrados en la misma pgina web, no tienen por qu estar en pginas diferentes. Al mismo tiempo que explicamos este modelo con el ejemplo de la agenda de contactos, podemos ir viendo los distintos elementos que introduce la metodologa UWE, los elementos introducidos son los siguientes:

Aqu tenemos el ejemplo de navegacin del sitio web que representa una agenda de contactos:

Para empezar tenemos AddressBook como pgina de inicio, as que est etiquetada como {isHome} y como clase de navegacin con el smbolo correspondiente (ver smbolos ms abajo). La pgina de inicio enlaza con un men, que sera nuestra pgina de ndice, para ello la clase Main Menu esta etiquetada como pgina 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. Para finalizar 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.

5) Modelo de Proceso
Esta modelo especfica las acciones que realiza cada clase de proceso, en este modelo se incluye: - Modelo de Estructura de Procesos: que define las relaciones entre las diferentes clases proceso. Un ejemplo de diagrama de clases de este modelo siguiendo el caso de la Agenda de contactos sera:

En este diagrama se puede ver que hay clases para definir 3 operaciones que necesita una confirmacin. As por ejemplo si el usuario quiere borrar un contacto el mensaje ser mostrado y despus haciendo clic en "ok" el contacto ser borrado. Las operaciones de actualizacin y creacin funcional de manera similar, ambas heredan de ConctacProcessing, asegurando que los campos de datos tienen valores vlidos. - Modelo de Flujo de Procesos: que especifica las actividades conectadas con cada proceso. Describe los comportamientos de una clase proceso. Lo que ocurre en detalle dentro de cada una. Por ejemplo para la operacin de borrado de contactos tenemos el siguiente diagrama:

Aqu podemos ver que la etiqueta <<userAction>> es usada para indicar las interaccione entre el usuario y la pgina web iniciando un proceso o respondiendo a una peticin de informacin. Se puede ver el flujo que ocurre en cada operacin con sus distintas rutas en caso de xito en la operacin o en caso de error.

6) Modelo de presentacin
En este modelo se representan las clases de navegacin y de procesos que pertenecen a cada pgina web. Estos son los elementos que introduce la metodologa UWE en este modelo:

A continuacin se muestra el diagrama de presentacin del ejemplo de la Agenda de Contactos:

Como se puede ver la clase contacto es presentada como Presentation_Class, cubriendo tambin diferentes textos y botones, esto significa que por cada contacto, tiene que ser mostrado un email, direcciones y los telfonos. Tambin se puede observar que la pgina de inicio AddressBook contiene un texto de introduccin y un formulario de bsqueda con un campo de texto y un botn para lanzar la bsqueda.

Ventajas y desventajas
Desventajas:

No tiene desventajas ya que no he encontrado ninguna salvo la que implica conseguir el conocimiento de UWE para poder entender sus modelos, pero como esto no es una actividad que requiera de un esfuerzo amplio.

Ventajas: Presenta unos modelos de diseo que se ajustan bastante bien al diseo de sitios web. Por ejemplo el Modelo de Navegacin, como el Modelo de Presentacin, son muy tiles a la hora de poder visualizar como se navegar por un sitio web y como ser mostrada la informacin al usuario. Esta forma de visualizarlo, facilita a los diseadores encontrar errores de diseo, pues de un simple vistazo podemos observar si una pgina es difcilmente alcanzable mediante la navegacin o si hay informacin que no se representa en el sitio web o se representa en un lugar errneo por ejemplo. Otra ventaja que tiene es la notacin especifica que ofrece a UML para representar elementos de una pgina web, as tenemos elementos como: paginas ndices, pagina inicial, pagina men, texto de entrada, formularios web, botones, imgenes, clases de navegacin, clases de proceso o links entre otros muchos, para los que tenemos un estereotipo para representarlos, esto es una carencia de UML que no contempla estos elementos, as con UWE queda solucionada dicha carencia y podemos representar esta informacin. Por ltimo quera resaltar como ventaja la utilidad de todos estos modelos a la hora de transferir la implementacin o el rediseo de la pgina web, a segundas personas, es decir, una persona puede disear una pgina web usando UWE, y transferir este diseo a una segunda persona para su implementacin o rediseo (en caso de que hiciera falta), esta segunda persona tendra con los modelos de UWE muchas facilidades para llevar a cabo su labor, ya que UML y UWE se caracterizan por su simplicidad y buena legibilidad, as el uso de esta notacin es una muy buena prctica que debera ser llevada a cabo a la hora de realizar un proyecto web.

CONCLUSIN
La utilizacin de UWE sirve para disear proyectos sobre sitios web. Presenta unos modelos de diseo que ajustan bastante bien al diseo de sitios web. Otra ventaja es la notacin especifica que ofrece a UML para representar elementos de una pgina web, as tenemos elementos: pgina ndices, pagina inicial, pagina men, texto de entrada, formularios web, botones, imgenes, clases de navegacin. Clases de proceso o links entre otros muchos. La utilidad de los modelos a la hora de transferir la implementacin o el rediseo de la pgina web, a segundas personas, es decir, una persona puede disear una pgina web usando UWE, y transferir este diseo a una segunda persona para su implementacin o rediseo. Las metodologas que se utilizan para web o las que se utilizan hoy en da para las de escritorio son las mismas, la nica diferencia es el uso que se le da a estas en la hora de ser aplicadas.

Siglaro
UWE.- UML-Based Web Engineering UML.- Lenguaje de modelado unificado XMI o XML.- Metadata Interchange (XML de Intercambio de Metadatos) es una especificacin para el Intercambio de Diagramas MDA.- (Model-Driven Architecture o MDA) es un acercamiento al diseo de software OCL.- Lenguaje de restricciones de objetos)

Bibliografa
http://www.slideshare.net/CrisCobol/uwe-uml-6699151 http://www.slideshare.net/millernegro/aplicando-uwe-un-ejemplo-didactico http://es.scribd.com/doc/44936310/Estudio-de-UWE-MetodologiadeDesarrolloWeb http://www.youtube.com/watch?v=hoVcnfio6bM http://www.argentinawarez.com/programas-gratis/742838-magicdraw-umlenterprise-v16-8-a.html http://www.buenastareas.com/ensayos/Metodologia-Uwe/2591265.html

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