Articulo de referencia

WebML

El lenguaje de modelado web ( WebML) es una notación visual y una metodología para el diseño de aplicaciones web con gran cantidad de datos . [ 1 ] Proporciona un medio gráfico ...

El lenguaje de modelado web ( WebML) es una notación visual y una metodología para el diseño de aplicaciones web con gran cantidad de datos . [ 1 ] Proporciona un medio gráfico para definir las particularidades del diseño de aplicaciones web dentro de un proceso de diseño estructurado . Este proceso puede mejorarse con la ayuda de herramientas de diseño visual.

En 2013, WebML se amplió para abarcar una gama más amplia de interfaces de usuario , lo que dio lugar al desarrollo del Lenguaje de Modelado de Flujo de Interacción (IFML). Desde entonces, IFML ha sido reconocido como estándar por el Object Management Group (OMG).

Este enfoque implica el desarrollo de cinco modelos distintos: estructura, derivación, composición, navegación y presentación. Estos modelos se perfeccionan mediante un proceso iterativo.

Conceptos

WebML permite a los diseñadores expresar las características principales de un sitio a un alto nivel sin comprometerse con detalles arquitectónicos complejos. Los conceptos de WebML se asocian con una representación gráfica, que puede ser compatible con herramientas CASE y comunicada a miembros no técnicos de un equipo de desarrollo web (por ejemplo, diseñadores gráficos y creadores de contenido). WebML también admite una sintaxis XML , que puede utilizarse con generadores de software para producir automáticamente la implementación de un sitio web. La especificación de un sitio en WebML consta de cuatro perspectivas ortogonales:

  1. Modelo estructural: expresa el contenido de datos del sitio en términos de las entidades y relaciones relevantes. WebML no propone un nuevo lenguaje para el modelado de datos , sino que es compatible con notaciones clásicas como el modelo entidad-relación, el modelo orientado a objetos ODMG y los diagramas de clases UML.
  2. Modelo de hipertexto: describe uno o más hipertextos que pueden publicarse en el sitio. Cada hipertexto diferente define una vista del sitio. Las descripciones de las vistas del sitio, a su vez, constan de dos submodelos.
    • Modelo de composición: especifica qué páginas componen el hipertexto y qué unidades de contenido conforman una página.
    • Modelo de navegación: describe cómo se enlazan las páginas y las unidades de contenido para formar el hipertexto. Los enlaces pueden ser no contextuales, cuando conectan páginas semánticamente independientes (por ejemplo, la página de un artista con la página de inicio del sitio), o contextuales, cuando el contenido de la unidad de destino del enlace depende del contenido de la unidad de origen.
  3. Modelo de presentación: expresa el diseño y la apariencia gráfica de las páginas, independientemente del dispositivo de salida y del lenguaje de representación, mediante una sintaxis XML abstracta. Las especificaciones de presentación pueden ser específicas de cada página o genéricas.
  4. Modelo de personalización: los usuarios y los grupos de usuarios se modelan explícitamente en el esquema de estructura mediante entidades predefinidas llamadas Usuario y Grupo. Las características de estas entidades se pueden utilizar para almacenar contenido específico de grupos o individual, como sugerencias de compra, listas de favoritos y recursos para la personalización gráfica.

Proceso de diseño

Un proceso de diseño típico que utiliza WebML consta de los siguientes pasos para cada ciclo de diseño:

  • Recopilación de requisitos: Se recopilan los requisitos de la aplicación, incluidos los objetivos principales del sitio, el público objetivo, ejemplos de contenido, pautas de estilo, personalización requerida y limitaciones debido a datos heredados.
  • Diseño de datos: El experto en datos diseña el modelo estructural, posiblemente mediante la ingeniería inversa de los esquemas lógicos existentes de las fuentes de datos heredadas.
  • Diseño de hipertexto: El arquitecto de aplicaciones web define la estructura general del hipertexto, identificando páginas y unidades, conectándolas y asignando las unidades a las entidades y relaciones principales del esquema de la estructura. De esta manera, se desarrolla una vista básica del sitio, que luego se mejora iterativamente.
  • Diseño de hipertexto: El arquitecto de aplicaciones web se concentra a continuación en el diseño "en detalle" del hipertexto, considerando cada página y unidad individualmente. En esta etapa, se pueden agregar enlaces no contextuales entre páginas, consolidar los atributos que deben incluirse dentro de una unidad e introducir nuevas páginas o unidades para requisitos especiales (por ejemplo, páginas de índice alternativas para localizar objetos, filtros para buscar la información deseada, etc.).
  • Diseño de la presentación: Una vez que todas las páginas sean suficientemente estables, el arquitecto de estilo web añadirá un estilo de presentación a cada página.
  • Diseño de usuarios y grupos: El administrador web define las características de los perfiles de usuario según los requisitos de personalización. Los usuarios y grupos potenciales se asignan a usuarios y grupos WebML, y se puede crear una vista de sitio diferente para cada grupo. El ciclo de diseño se modifica para cada una de las vistas de sitio identificadas.
  • Diseño personalizado: El administrador web identifica las derivaciones de datos basadas en perfiles y las reglas de negocio que pueden garantizar una personalización eficaz del sitio.

Modelo estructural

Los elementos fundamentales del modelo de estructura WebML son las entidades, que son contenedores de elementos de datos, y las relaciones, que permiten la conexión semántica entre entidades. Las entidades tienen atributos con nombre y un tipo asociado; las propiedades con múltiples ocurrencias se pueden organizar mediante componentes multivalorados, lo que corresponde a la clásica relación "parte de". Las entidades se pueden organizar en jerarquías de generalización. A las relaciones se les pueden asignar restricciones de cardinalidad y nombres de roles.

Modelo de derivación

  • Similar a las vistas en el modelado de bases de datos, como las vistas en Oracle o MySQL.
  • Para cada página, hay una tabla abstracta de datos fusionados de otras tablas.
  • Utiliza WebML-OQL (WebML-Object Query Language ).

Modelo de composición

El objetivo del modelado de composición es definir qué nodos conforman el hipertexto contenido en el sitio web. Más precisamente, el modelado de composición especifica unidades de contenido (o simplemente unidades), es decir, los elementos de información atómicos que pueden aparecer en el sitio web, y páginas, es decir, contenedores mediante los cuales se agrupa la información para su entrega al usuario. En un contexto concreto, por ejemplo, una implementación HTML o WML de un sitio WebML, las páginas y las unidades se asignan a construcciones adecuadas en el lenguaje de entrega; por ejemplo, las unidades pueden asignarse a archivos HTML y las páginas a marcos HTML que organizan dichos archivos en la pantalla.

WebML admite seis tipos de unidades para componer un hipertexto:

  • Unidades de datos (muestran información sobre un solo objeto).
  • Unidades de datos múltiples (muestran información sobre un conjunto de objetos).
  • Unidades de índice (muestran una lista de objetos sin presentar la información detallada de cada objeto).
  • Unidades de desplazamiento (comandos de visualización para acceder a los elementos de un conjunto ordenado de objetos).
  • Unidades de filtro (muestra campos de edición para introducir valores utilizados para buscar dentro de un conjunto de objetos aquellos que cumplen una condición).
  • Las unidades directas (no muestran información, sino que se utilizan para indicar la conexión con un único objeto que está semánticamente relacionado con otro objeto).
Elementos
  • Unidad de datos
  • Unidad de datos múltiples
  • Unidad de índice
  • Unidad de índice de opción múltiple
  • Unidad jerárquica
  • Unidad de desplazamiento
  • Unidad de entrada

Las unidades y las páginas no existen de forma aislada, sino que deben conectarse para formar una estructura de hipertexto. El objetivo del modelado de navegación es especificar la forma en que las unidades y las páginas se enlazan para formar un hipertexto. Para ello, WebML proporciona la noción de enlace. Existen dos variantes de enlaces:

  • Los enlaces contextuales conectan unidades de forma coherente con la semántica expresada por el esquema de estructura de la aplicación. Transmiten información (denominada contexto) desde la unidad de origen a la unidad de destino. El contexto se utiliza para determinar el objeto o conjunto de objetos que se mostrarán en la unidad de destino.
  • Los enlaces no contextuales conectan páginas de forma totalmente libre, es decir, independientemente de las unidades que contienen y de las relaciones semánticas entre los conceptos estructurales incluidos en dichas unidades. Sintácticamente, los enlaces contextuales y no contextuales se denotan mediante los elementos INFOLINK e HYPERLINK, respectivamente, anidados dentro de las unidades y las páginas.
Elementos
  • Páginas web
  • Enlaces entre páginas
  • contexto
  • no contexto

Modelo de personalización

La personalización es la definición del contenido o el estilo de presentación en función de los datos del perfil del usuario. En WebML, las unidades, las páginas, sus estilos de presentación y las vistas del sitio se pueden definir para tener en cuenta los datos específicos del usuario o del grupo. Esto se puede hacer de dos maneras complementarias:

  • Personalización declarativa: el diseñador define conceptos derivados (por ejemplo, entidades, atributos, componentes multivalorados) cuya definición depende de datos específicos del usuario. De esta forma, la personalización se especifica de manera declarativa; el sistema completa la información relativa a cada usuario al calcular el contenido de las unidades.
  • Personalización procedimental: WebML incluye una sintaxis XML para escribir reglas de negocio que calculan y almacenan información específica del usuario. Una regla de negocio es una triple estructura evento-condición-acción, que especifica el evento que se va a monitorizar, la condición previa que se va a comprobar cuando se produce el evento y la acción que se va a realizar cuando se cumple la condición. Las tareas típicas que realizan las reglas de negocio son la asignación de usuarios a grupos de usuarios en función de la información recopilada dinámicamente, la notificación de mensajes a los usuarios cuando se actualiza la base de datos (tecnología push), el registro de las acciones del usuario en estructuras de datos específicas del usuario, etc.

Modelo de presentación

El modelado de presentación se centra en la apariencia de las páginas definidas por el modelado de composición. Las páginas WebML se renderizan según una hoja de estilo. Esta hoja define el diseño de las páginas y los elementos de contenido que se insertarán en dicho diseño, y es independiente del lenguaje de programación utilizado para la representación de la página. Para una mayor reutilización, se ofrecen dos categorías de hojas de estilo: las hojas de estilo sin tipado (también llamadas modelos) describen el diseño de la página independientemente de su contenido y, por lo tanto, se pueden aplicar sin importar la correspondencia de la página con un concepto determinado; las hojas de estilo tipadas se especifican con mayor detalle y, por lo tanto, se aplican solo a las páginas que describen conceptos específicos.

Otras posibilidades

Véase también

Referencias

  1. Stefano Ceri ; Piero Fraternali; Aldo Bongio; Marco Brambilla; Sara Comai y Maristella Matera (2002). Diseño de aplicaciones web con uso intensivo de datos . Morgan Kaufmann, Estados Unidos. ISBN 978-1-55860-843-6.

Lecturas adicionales

  • Stefano Ceri; Piero Fraternali y A. Bongio (mayo de 2000). "Web modelling language (WebML): Un lenguaje de modelado para el diseño de sitios web". Actas de la 9ª Conferencia Internacional World Wide Web, Ámsterdam, 2000 .
  • Stefano Ceri; Piero Fraternali; Aldo Bongio; Marco Brambilla; Sara Comai; Maristella Matera (2002). Diseño de aplicaciones web con uso intensivo de datos . Morgan Kaufman. ISBN 978-1-55860-843-6.
  • S. Ceri; M. Brambilla; P. Fraternali (2009), "La historia de WebML: Lecciones aprendidas de 10 años de desarrollo de aplicaciones web basado en modelos", Modelado conceptual: Fundamentos y aplicaciones, Ensayos en honor a John Mylopoulos , Springer LNCS, serie Festschrift, vol.  5600, pp. 273–292 
  • Luciano Baresi; Piero Fraternali; Massimo Tisi y Sandro Morasca. "Hacia las pruebas basadas en modelos de un generador de aplicaciones web". En Martin Gaedke (ed.). Ingeniería web: 5.ª Conferencia Internacional, ICWE 2005, Sídney, Australia .
  • Berthold Daum y Udo Merten (2003). "Hipermedios". Arquitectura del sistema con XML . Morgan Kaufman. págs. 267–302 . ISBN  978-1-55860-745-3.
  • M. Brambilla; S. Ceri; S. Comai y P. Fraternali (2006). "Una herramienta CASE para modelar y generar automáticamente aplicaciones habilitadas para servicios web". International Journal of Web Engineering and Technology . 2 (4): 354– 372. CiteSeerX 10.1.1.108.1107 . doi : 10.1504/IJWET.2006.010420 . 
  • Sitio web oficialEdita esto en Wikidata
Obtenido de " https://en.wikipedia.org/w/index.php?title=WebML&oldid=1295567398 "