You are on page 1of 4

Introduccin a la Ingeniera Web Basada en UML

Jess Ocaa Ziga, Mario Rossainz Lpez Benemrita Universidad Autnoma de Puebla, Facultad de Ciencias de la Computacin, Avenida San Claudio y 14 Sur, San Manuel, Puebla, Pue., 72000. Mxico jesus@grupocybac.com, rossainz@cs.buap.mx
implementacin de la aplicacin que esta siendo modelada se encuentra prxima a realizarse o se esta realizando, pero no cuando se trata de modelar una aplicacin como parte de la planificacin de un proyecto [2]. Estas metodologas, y otras muchas que se han propuesto, contribuyen con ideas importantes para el diseo de software orientado a Web. Entre estas aportaciones mencionamos a continuacin algunas de las ms significativas. El mtodo Hipermedia Orientado a Objetos (Object-oriented Hypermedia, OOH) proporciona un conjunto de nuevas vistas que extienden el UML para modelar nicamente la interfase de aplicaciones Web [3]. Otra propuesta interesante es el lenguaje de modelado Web (Web Modeling Language, WebML). El WebML es una notacin visual para el diseo de aplicaciones Web complejas. El WebML provee especificaciones grficas formales para un proceso de diseo completo que puede ser asistido por herramientas de diseo visuales [4]. De este trabajo podemos destacar la representacin grfica y en XML que realiza de conceptos asociados a las aplicaciones Web En este contexto, la Ingeniera Web Basada en UML (UML-Based Web Enginering, UWE) es una propuesta de metodologa que recupera muchos de los conceptos descritos en estos trabajos e incorpora nuevos elementos que permiten describir de mejor manera una aplicacin Web. Al respecto de UWE y su descripcin se comenta en el prximo captulo.

ResumenEn este artculo se presenta un marco de referencia respecto a una metodologa para el modelado de aplicaciones Web utilizando el lenguaje unificado de modelado (UML). Esta metodologa hace uso de los estereotipos como mecanismo de extensin del UML para su adaptar dicho lenguaje a un dominio especfico que, en este caso, es el de las aplicaciones Web.

Palabras clave Modelado de Aplicaciones Web, Lenguaje Unificado de Modelado, Extensiones UML usando estereotipos, Ingeniera de Software.

I. INTRODUCCION Hasta el da de hoy, lo ms importante en el desarrollo de aplicaciones Web han sido las herramientas, pero muy poco se ha dicho y escrito sobre el proceso de desarrollo. La fcil creacin de pginas HTML y en general de sitios Web, usando herramientas simples, ha hecho que el desarrollo de este tipo de aplicaciones se haga sin un trabajo serio de anlisis y diseo. Cualquier sistema de complejidad no trivial, necesita ser analizado y modelado. Las aplicaciones Web, al igual que otras aplicaciones, necesitan mtodos y tcnicas formales de anlisis y diseo. Todas las metodologas propuestas para las aplicaciones Web desde mediados de los aos noventa presentan su propia notacin para casi todos sus diagramas. Una recopilacin excelente de varios de estos mtodos fue presentada en el primer taller internacional sobre tecnologas de software orientadas a Web [1]. En ella se describen cada una de estas propuestas en base a un mismo caso de estudio. Jim Conallen, a finales de los noventas, present una extensin de UML basada en las tcnicas de implementacin actuales de ese tiempo. Esta extensin propuesta por Conallen es bastante til como tcnica de diseo para cuando la
.

II. DESARROLLO La Ingeniera Web basada en UML, es un proceso del desarrollo para aplicaciones Web enfocado sobre el diseo sistemtico, la personalizacin y la generacin semiautomtica de escenarios que guen el proceso de desarrollo de una aplicacin Web. UWE describe una metodologa de diseo sistemtica, basada en las tcnicas de UML, la notacin de UML y los mecanismos de extensin de UML [5].

A diferencia de los sistemas de software convencionales, las aplicaciones Web tienen caractersticas especiales, que van desde el entorno en el que operan hasta los requerimientos de usuario. Para satisfacer estos aspectos especiales de las aplicaciones Web, UWE define vistas especiales representadas grficamente por diagramas en UML, tales como el modelo de navegacin y el modelo de presentacin. Adems, UWE permite que un diseador Web pueda tambin hacer uso de otra tcnica de modelado UML que agreguen otras vistas de la aplicacin, en otras palabras, UWE no limita el nmero de vistas posibles de una aplicacin. Las tcnicas de modelado en UML abarcan la construccin de vistas estticas y dinmicas de los sistemas de software: diagramas del objeto y de clase, diagramas de componentes, diagramas de casos de uso, diagramas de estado y de actividades, de secuencia y diagramas de la colaboracin. Adems de esta coleccin de diagramas, el UML proporciona mecanismos de extensin basados en estereotipos. Estos mecanismos de extensin son los que UWE utiliza para definir estereotipos que son lo que finalmente se utilizarn en las vistas especiales para el modelado de aplicaciones Web. De esta manera, se obtiene una notacin UML adecuada a un dominio en especfico a la cual se le conoce como Perfil UML [5]. El perfil UML La mayora de los problemas del diseo Web pueden solucionarse si se utiliza la notacin "pura" de UML y los diferentes tipos de diagramas UML, es decir, sin extensiones de cualquier tipo. Sin embargo, los aspectos especiales de un dominio, como es la Web, se pueden satisfacer mediante mecanismos de extensin provistos por el mismo UML. El UML puro proporciona nueve tipos de diagramas y un conjunto de elementos de modelado para cada tipo de diagrama. La sintaxis y la semntica de estos elementos de modelado son definidas por el metamodelo y las reglas bien formadas de UML [6]. La semntica provista por cada uno de los diagramas es por si misma es un objeto de investigacin que no se cubre en este artculo. Esta nueva semntica de cada uno de los diagramas se logra mediante la utilizacin de los estereotipos como mecanismo de extensin del UML. Un estereotipo de UML es un nuevo tipo de elemento de modelado que se basa en un tipo existente de elemento de modelado de UML. Los estereotipos pueden ampliar la semntica pero no proporcionan acceso al metamodelo del lenguaje. Lo que se intenta es que una herramienta genrica de modelado, como lo puede ser un editor de modelos,

trate a un elemento estereotipado como un elemento de modelado ordinario para la mayora de los propsitos, a la vez que lo distingue para ciertas operaciones semnticas. La definicin de un estereotipo tambin incluye un icono de la notacin. El uso de este poderoso mecanismo tiene ventajas y riesgos. La ventaja es crear fcilmente lenguajes de modelado para aplicaciones de dominios especficos con elementos de modelado ms expresivos y claramente definidos. El riesgo es que el excesivo uso de estereotipos puede hacer a un lenguaje, difcil de manejar y entender. Algunos estereotipos solamente cambian la notacin de un elemento de modelado. Los estereotipos de gran alcance, en cambio, agregan o redefinen restricciones semnticas en el elemento del metamodelo. Los estereotipos de UML se clasifican segn su expresividad en estereotipos: decorativos, descriptivos, restrictivos y de redefinicin [5]. Los estereotipos decorativos cambian la sintaxis concreta y/o representacin visual de un elemento de lenguaje. Los estereotipos descriptivos amplan la sintaxis de un elemento de lenguaje de tal manera que la informacin adicional puede ser expresada. Los estereotipos restrictivos amplan la sintaxis e imponen restricciones semnticas. Los estereotipos de redefinicin, como su nombre lo indica, redefinen un elemento de lenguaje que modifica la semntica original del elemento del metamodelo. Los estereotipos utilizados en el perfil UML descrito por UWE de redefinicin. Actividades de modelado Las actividades base de modelado de UWE son el anlisis de requerimientos, el modelo conceptual, el modelo navegacional y el modelo de presentacin. A estos modelos se pueden sumar otros modelos como lo son el modelo de tareas y la visualizacin de Escenarios Web para representar los aspectos dinmicos de la aplicacin mediante la descripcin de situaciones. De esta manera se obtiene una coleccin de modelos y diagramas que describen una aplicacin Web de manera integral. Sin embargo en el proceso de anlisis y diseo de las aplicaciones Web, de los modelos y diagramas anteriores, se pueden destacar los siguientes: la especificacin de requerimientos, el modelo lgico-conceptual, el modelo navegacional, la visualizacin de Escenarios Web y la interaccin temporal como los necesarios para lograr representar de manera satisfactoria los elementos arquitectnicamente significativos de una aplicacin Web. Especificacin de requerimientos.- El modelo de casos de uso se puede utilizar para describir los

requisitos funcionales en trminos de los casos del uso. Un caso de uso en UML es una unidad coherente de la funcionalidad proporcionada por la aplicacin que obra recprocamente con unos o ms actores de la aplicacin [6]. Describe una parte del comportamiento de la aplicacin sin revelar la estructura interna. De esta manera, los requisitos para una aplicacin Web se pueden especificar con un modelo de casos de uso. Modelo Lgico-Conceptual.- Un diagrama de clases en UML se utiliza para representar grficamente un modelo conceptual como visin esttica que demuestre una coleccin de los elementos estticos del dominio. UWE apunta a construir un modelo conceptual de una aplicacin Web, la cual procura no hacer caso en la medida de lo posible de cuestiones relacionadas con la navegacin, y de los aspectos de interaccin de la aplicacin Web. Estos aspectos se posponen a los pasos navegacionales y de presentacin del diseo. [5]. La construccin de este modelo lgico-conceptual se debe llevar a cabo de acuerdo con los casos de uso que se definen en la especificacin de requerimientos. El modelo conceptual incluye los objetos implicados en las actividades tpicas que los usuarios realizarn en la aplicacin Web, es decir, los objetos que son relevantes para la realizacin de una actividad o que son el resultado de una de ellas. Modelo de Navegacin.- El modelo de navegacin de una aplicacin Web comprende la especificacin de qu objetos pueden ser visitados mediante la navegacin a travs de la aplicacin Web y las asociaciones entre ellos. Los modelos de la navegacin son representados por los diagramas de clases estereotipadas [5]. Este modelo se destaca en el marco de UWE como el ms importante, pues con l se pueden representar elementos estticos, a la vez que se pueden incorporar lineamientos semnticos de referencia para las funcionalidades dinmicas de una aplicacin Web. Interaccin Temporal.- Un diagrama de secuencia de UML demuestra la interaccin de elementos dispuesta en orden temporal. Presenta los objetos que participan en la interaccin y la secuencia de los mensajes enviados entre ellos. UWE propone el uso de los diagramas de secuencia para representar los aspectos dinmicos de la navegacin, es decir, las secuencias describen la realizacin de los casos de uso. De esta manera, los diagramas de secuencia proveen una representacin funcional centrada en el tiempo del modelo de navegacin [5]. Escenarios Web.- Un diagrama de estados de UML denota una secuencia de los estados que un objeto

puede adquirir durante su vida, junto con acciones responsivas, disparando eventos y las condiciones asociadas para indicar transiciones. UWE da otro sentido a los diagramas de estados del UML puro ya que los utiliza para visualizar escenarios de navegacin. Estos diagramas permiten detallar la parte dinmica del modelo de navegacin, especificando los eventos que disparan las situaciones, definen condiciones y explcitamente incluyen las acciones que son realizadas. Junto con el modelo de interaccin temporal, los escenarios Web proveen la representacin funcional dinmica del modelo de navegacin. [5] Con la construccin de estos modelos, UWE permite la descripcin completa de las funcionalidades que debe una aplicacin Web. III. RESULTADOS

Se logr establecer el marco de referencia para la Ingeniera Web basada en UML como una alternativa para que los desarrolladores de aplicaciones Web puedan hacer uso de esta metodologa en el modelado de este tipo de aplicaciones.

IV. CONCLUSIONES La Ingeniera Web basada en UML (UWE) es una metodologa propuesta enfocada al modelado de aplicaciones Web basada en la extensin de la semntica del UML mediante la utilizacin de estereotipos. En el marco de UWE es necesario la definicin de un perfil UML (extensin) basado en estereotipos Con este perfil se logra la asociacin de una semntica distinta a los diagramas del UML puro, con el propsito de acoplar el UML a un dominio especfico, en este caso, las aplicaciones Web. Por ultimo, los principales modelos especificados en UWE son: la especificacin de requerimientos, el modelo lgico-conceptual, el modelo navegacional, la visualizacin de Escenarios Web y la interaccin temporal. Estos modelos son los necesarios para lograr representar de manera satisfactoria los elementos arquitectnicamente significativos de una aplicacin Web.

REFERENCIAS
[1] D. Schwabe , "A conference Review System.", 1er taller internacional sobre tecnologas de software orientadas a Web, Valencia Espaa, 2001. J. Conallen "Building Web applications with UML". Ed. Addison-Wesley, 2002. C. Cachero, J. Gmez, O. Pastor, Extending an ObjectOriented Conceptual Modelling Approach to Web Application Design. CAISE 2000. Stocolmo Suecia, 2000.

[2] [3]

[4]

[5] [6]

S. Ceri, M. Matera, P. Fraternalli, A. Maurio, Designing multirole, collaborative Web sites with WebML: a conference management system case study. 1er taller internacional sobre tecnologas de software orientadas a Web, Valencia Espaa, 2001. N. Koch, A. Kraus, "The expresive Power of UML-based Web Engineering". Universidad de Munich Alemania, 2002. G. Booch, I. Jacobson, J. Rumbaugh, El Lenguaje Unificado de Modelado: Manual de Referencia. 1ra Edicin, Ed. Addison Wesley, 2000.

You might also like