Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Modelado de Aplicaciones Web

Descargar como pptx, pdf o txt
Descargar como pptx, pdf o txt
Está en la página 1de 35

FUNDACION

UNIVERSITARIA
LIBERTADORES
Modelado de aplicaciones Web
mediante UML
Ing Mabel Quintero Contreras

DESARROLLO DE APLICACIONES WEB

Gracias al desarrollo de nuevas herramientas y


tecnologas, las Aplicaciones Web son cada vez ms
populares.

La facilidad de su desarrollo provoca, a veces, la


ausencia de un anlisis y diseo correctos, pero estn
consiguiendo reemplazar a las aplicaciones software
tradicionales.

Lo que aqu vamos a ver es una presentacin genrica


del funcionamiento y estructura de dichas aplicaciones.

Arquitectura de una Aplicacin Web


Sitios Web

Una Aplicacin Web es un sitio donde la entrada de datos afecta al


estado de la lgica. Es decir, una Aplicacin Web se sirve de un sitio
o pgina como entrada a una verdadera aplicacin. Veamos primero
la estructura de un sitio Web :

Figura 1: A la izquierda tenemos la arquitectura de un sitio Web


tradicional, y a la derecha uno dinmico.

Aplicaciones Web

La arquitectura global de una Aplicacin Web es idntica a la


de un sitio Web, aunque su desarrollo sea ms elaborado.

Pginas

Las pginas son el componente fundamental de las


aplicaciones Web, y se muestran a travs de los
navegadores que hacen de contenedores del interfaz de
usuario. Estas pginas son el resultado de la combinacin de
pginas HTML junto con scripts de pginas dinmicas. El
nuevo formato obtenido como mezcla de los dos anteriores
ser lo que mostrar el navegador.

Aplicaciones Web

Los scripts pueden contener tanto variables como


procedimientos y funciones, cuyo objetivo final es actuar sobre
el servidor de manera que:

Se actualice el estado de la lgica del servidor.


Se creen las nuevas pginas que debe mostrar el navegador.

Una cosa importante a tener en cuenta es que el servidor no es


el nico elemento capaz de ejecutar scripts. Un navegador
tambin es capaz de hacerlo, aunque presenta el inconveniente
de que no tiene acceso al servidor, con lo que su trabajo se
limita al control de datos y asistencia en la navegacin.

En general, los procedimientos del lado del servidor son


procedurales, mientras que los del lado del navegador o cliente
son dirigidos por eventos.

Aplicaciones Web
Formas

Las formas ms comunes de introducir informacin son


las reas de texto, listas de seleccin o botones de
radio, por ejemplo. Cada uno de estos elementos tiene
un nombre o ID asociado a una pgina de accin, y
cuando el usuario introduce la informacin, el servidor
interpreta o ejecuta el cdigo contenido en dicha
pgina.

El resultado, la informacin introducida por el usuario


puede ser procesada.

Aplicaciones Web
Componentes

Hay

Aplicaciones Web que se sirven de una tercera


capa de componentes, entre el interfaz de usuario
y el sistema permanente, que suele estar formado
por objetos compilados que funcionan en un
servidor de aplicaciones. Esta capa slo se utiliza
cuando la lgica necesaria para controlar la
aplicacin es muy extensa y el tiempo es un factor
crtico en las decisiones de diseo.

Aplicaciones Web

Las pginas formateadas en HTML tambin


pueden tener referencias a componentes en la
mquina del cliente, como son los JavaApplets o
los controles ActiveX.

Su presencia supone la extensin de la


Aplicacin Web al cliente y nuevas posibilidades
en cuanto a la interfaz con el usuario, puesto
que aumentan la interaccin que pueden
ofrecer las pginas preformateadas.

Aplicaciones Web
Frames

Las capacidades de la interfaz de


usuario pueden ser incrementadas con
el uso de frames, que permiten tener
varias pginas abiertas y activas al
mismo tiempo.

Aplicaciones Web
Estructura

de una pagina web

Aplicaciones Web
Otros

Componentes

Con

los componentes ya mencionados, se


puede desarrollar una buena Aplicacin Web,
aunque otros componentes ms recientes
pueden afectar su arquitectura, como son el
caso de XML y los scriptlets.

Estos

ltimos tienen el inconveniente de que


slo funcionan en navegadores Microsoft.

Aplicaciones Web
Modelado

Una de las metodologas o notacin empleadas en la


modelizacin de sistemas Web es la Metodologa
Relacional ( RMM, Relationship Management
Methodology ), es una metodologa para el diseo,
construccin y mantenimiento de sistemas web para
intranets e internet.

Su principal objetivo es la reduccin de costes de


mantenimiento de sitios Web dinmicos dirigidos por la
base de datos.

Aplicaciones Web
Pero

esta metodologa falla a la hora de construir aplicaciones


Web, en las que la lgica de negocio es la parte central, ya que no
las cubre adecuadamente.

Las

aplicaciones Web pueden ser usadas como mecanismo


servidor para aplicaciones distribuidas, y adems pueden crear
mltiples instancias del mismo browser y frames en la parte
cliente que deben establecer y mantener su propio mecanismo de
comunicacin.

Todo

esto debe ser modelizado tambin y RMM no es capaz de


hacerlo.

Aplicaciones Web
La

eleccin de una notacin debe estar en


funcin de la necesidad de modelizar la
parte de las capas de la parte del servidor.

Con

la admisin de UML como notacin para


la modelizacin cada vez ms sistemas
estn siendo modelizados con l ya que es
capaz de expresar la lgica del sistema en
los componentes Web, a lo largo del resto de
la aplicacin.

Aplicaciones Web

Otro de los modelos importantes ADM


( analisis/desing Model) representa alguna
dificultades cuando trata de modelizar pginas
Web y el cdigo ejecutable asociado a stas
relacionndolo con el resto de elementos en el
modelo.

Decidir cmo modelizar ,determinar el grado de


abstraccin y el detalle que queremos alcanzar
es crtico para los usuarios de ese modelo.

Aplicaciones Web

En UML, los links representaran el path de navegacin


desde una pgina a otra.

Extendiendo esta forma de pensar las pginas seran clases


en la vista lgica del modelo, por lo tanto los scripsts de las
pgina seran operaciones ( mtodos ) de la clase, y las
variables de estos scripts cuyo mbito sea la pgina, seran
los atributos.

Lo anterior no nos ayuda cuando tenemos que saber que


operaciones, atributos, etc estn activos en el servidor, por
lo tanto es mejor modelizarlas como componentes del
sistema.

Aplicaciones Web
Un

sistema puede ser modelado de


diferentes maneras, y todas ellas
consistentes.

Por

ejemplo. Y esto suscita un nuevo


desafo : el cmo modelar dicho sistema
cuando tanto el servidor como el cliente
ejecutan scripts, puesto que compartir
atributos o mtodos entre ambos puede
llegar a ser muy confuso.

Aplicaciones Web
Extensiones del modelado

UML no es perfecto para todas las situaciones, y es por ello


que se definen mecanismos de extensin como las
Etiquetas, Estereotipos y Restricciones. Para resolver el
problema presentado anteriormente, se podran definir los
Estereotipos <<mtodo de cliente >> y << mtodo de
servidor >>, que nos permitiran hacer una distincin
adecuada en el diseo.

An as, al representar las relaciones no se garantiza que


slo sean vlidas desde el lado del servidor o el del
cliente

Aplicaciones Web
Estereotipos

de pgina

Una mejor solucin al modelado de


pginas pasa por la creacin de dos
clases con estereotipo:
Pgina

de servidor
Pgina de cliente

Aplicaciones Web
Su

implementacin puede aparecer en el


mismo fichero o componente, pero la
distincin es clara.

Mientras

la pgina de servidor se ocupa del


acceso a los componentes, scripts, datos y, u
otros elementos que se encuentren en la parte
del servidor, la pgina del cliente se ocupa de
los Applets de Java, los controles ActiveX y, o
el formateado de la pgina, por ejemplo.

Aplicaciones Web
Veamos los estereotipos en detalle.
1. Hay una relacin importante entre ambas
pginas, definida unidireccional y descrita
bajo el estereotipo <<construye>>.
Y es que una pgina de servidor se encarga
de construir una de cliente. Incluso podra
darse el caso de que una pgina de servidor
construya varias de las pginas cliente.

Aplicaciones Web
2. Otro estereotipo es el definido como <<redirige>>.
Dependiendo de la entrada y de las exigencias de
procesado, una pgina de servidor puede redirigirse
hacia otras que cumplan una labor ms especfica.
Redirigir toma en este caso el significado de delegar.
3. <<presenciar>>. Es algo ms sutil que los anteriores
y se sumara a un diagrama que ya conste de un
estereotipo <<construye>>. Una pgina de servidor
construye una de cliente y, bajo ambas, existe un
elemento Web que se da cuenta, que presencia, al
menos una de ambas pginas. Un componente Web
presenciara ambas pginas a la vez.

Aplicaciones Web
4. Una relacin que no se puede olvidar
viene definida por el estereotipo
<<enlace>>. Y sabiendo lo que significa un
hiperenlace, est claro que slo tiene sentido
definirlo desde una pgina cliente hacia una
pgina servidor que generar una nueva
pgina cliente -, o desde la pgina cliente
hacia otra de su misma clase. Si dicho enlace
contiene parmetros, se modelan fuera de la
relacin.

Aplicaciones Web
Componentes

Los componentes, presentados como


interfaces disponibles para los distintos
objetos - por ejemplo, DLLs, controles
ActiveX... -, se identifican como
<<componente servidor>> o <<componente
cliente>>, para poder diferenciar quin
puede servirse de ellos.

Aplicaciones Web
Formas

El significado de una forma se puede resumir diciendo que


una pgina cliente contiene formas.

Es decir, las formas existen porque hay una serie de atributos


que no tienen significado a lo largo de toda la pgina cliente,
y porque adems desde dicha pgina queremos llegar a
destinos diferentes.

De aqu se puede deducir que una forma no tenga mtodos y


que los mtodos de una pgina cliente tengan acceso a los
atributos de todas las formas en ella contenidas.

Aplicaciones Web

Por tanto, hemos de considerar el estereotipo


<<forma>> que a su vez va a generarnos otro
nuevo: <<enva>>.

Dicho estereotipo se justifica con la necesaria


relacin entre una forma y la pgina que la
procesa. Es ms, la relacin es bidireccional
puesto que la pgina que va a llevar a cabo el
proceso tiene acceso a los atributos de la forma,
que son enviados en tiempo de ejecucin.

Aplicaciones Web
Framesets

Los

framesets o conjuntos de marcos aparecen con la posibilidad de


mostrar varias pginas Web al mismo tiempo. Puesto que un
frameset puede contener cualquier pgina cliente, debemos
considerarlo como una especializacin de las mismas y, con ello,
generar un nuevo estereotipo <<marcos>>.

Coordinar

la actividad entre las pginas requiere la habilidad de


poder referenciar las pginas dentro de los marcos, y a dicha
referencia la llamaremos objetivo.

Un

objetivo es muy distinto de un marco y una pgina slo puede


referenciar objetivos de navegadores abiertos, as que nos vamos a
crear un nuevo estereotipo para mostrar tal descripcin:
<<objetivo>>.

Aplicaciones Web

La mayor ventaja de haber creado dicho estereotipo


es que puede ser compartido y referenciado por
muchas pginas cliente.

No posee atributos ni mtodos. Pero surge una


especializacin del mismo : cuando queremos cargar
un enlace en un navegador distinto de s mismo.

En este caso, estamos frente a un nuevo estereotipo


que llamaremos <<enlace con objetivo>>.

Aplicaciones Web- Enlace con objetivos

Aplicaciones Web
Otros

estereotipos

Las

extensiones Web para UML estn a


punto de finalizarse en su fase inicial.

Sin

embargo, hay otros estereotipos que


estn bajo consideracin como son
<<xml>> o <<scriplet>>...

Aplicaciones Web
Consideraciones del proceso

Una aplicacin Web no es ms que una


especializacin de un proceso cliente/servidor, con
lo que se puede aprovechar el modelado de dichas
aplicaciones.
En

particular, los casos de uso son una herramienta


fundamental en la captura de requisitos.

Aplicaciones Web

En el modelado, es importante tener en cuenta el


que debemos empezar por las pginas cliente.

En general, un caso de uso nos dar lugar a una


pgina cliente distinta. Las pginas de servidor
sern el ltimo eslabn del proceso de produccin,
puesto que se generarn prcticamente ellas
mismas al identificar los componentes del servidor
y relacionarlos con las pginas cliente.

Aplicaciones Web

Finalmente,

es necesario considerar que


se trata de un proceso abierto debido a
los posibles cambios en el diseo y las
extensiones propuestas, pero es una
imagen clara y precisa de la aplicacin
Web.

bibliografia
www.conallen.com
Whitepapers modelling Web applications
with UML.
Modeling Web Application Architecture with
UML
Jim Conallen

Aplicaciones Web

También podría gustarte