1 / 46

Modelado de la agregración de portlets por medio de statecharts

Jornadas de Ingeniería del Software y Bases de Datos. Modelado de la agregración de portlets por medio de statecharts. O. Díaz, A. Irastorza , M. Azanza, F.M. Villoria ONEKIN Research group University of the Basque Country San Sebastián (Spain) 5 octubre 2006.

ross
Download Presentation

Modelado de la agregración de portlets por medio de statecharts

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Jornadas de Ingeniería del Software y Bases de Datos Modelado de la agregración de portlets por medio de statecharts O. Díaz, A. Irastorza, M. Azanza, F.M. Villoria ONEKIN Research group University of the Basque Country San Sebastián (Spain) 5 octubre 2006

  2. El portal como agregador de portlets

  3. Complete Web Application Flow + Presentation Portlets. Definición “Los portlets son Servicios Web interactivos, con interfaz de usuario y que pueden ser incrustados en aplicaciones de organizaciones externas” Business Logic 2Hand Car Database Data Search for Cars

  4. PORTAL TAREAS ORQUESTACIÓN VISUALIZACIÓN EXO PIM <<merge>> PSM

  5. PORTAL TAREAS ORQUESTACIÓN VISUALIZACIÓN EXO PIM <<merge>> PSM

  6. ACM Tarea: ACM portlet

  7. DeliciousStore ISIWOK DBLP

  8. Metamodelo de tareas

  9. TAREAS PORTAL ORQUESTACIÓN VISUALIZACIÓN EXO PIM <<merge>> PSM

  10. TAREAS PORTAL ORQUESTACIÓN VISUALIZACIÓN EXO PIM <<merge>> PSM

  11. El portal como agregador de portlets

  12. El portal como agregador de portlets

  13. DIAGRAMAS DE TRANSICIÓN DE ESTADOS El portal como agregador de portlets

  14. DTE para modelar la orquestación • Transición: abstracción de la interacción de un usuario • Estado atómico: una unidad de visualización (p.e. un portlet) • Estado AND:agrupa “n” estados activos simultáneamente • Estado OR:agrupa “n” estados disjuntos DTE = estados + transiciones

  15. PaperSearch AuthorSearch CiteSeerSearch DBLPSearch 2AuthorSearch Diseño de la orquestación del portal IEEESearch ACMSearch

  16. Browser Search PaperSearch 2Search IEEESearch deliciousStore ACMSearch 2Delicious 2ISI 2Paper Search 2AuthorSearch ISIWoK CiteSeerSearch DBLPSearch AuthorSearch Diseño de la orquestación del portal

  17. Metamodelo de orquestación < Metamodelo UML >

  18. TAREAS ORQUES TACIÓN PORTAL VISUALIZACIÓN EXO PIM <<merge>> PSM

  19. TAREAS ORQUES TACIÓN VISUALIZACIÓN PORTAL EXO PIM <<merge>> PSM

  20. Visualización del portal • Estructura del portal • Presentación del portal Páginas Estética

  21. Visualización del portal. Páginas • En nuestro contexto, una página es un conjunto de portlets que son visulizados simultáneamente • Es decir, una CONFIGURACIÓN DE ESTADOS

  22. Configuraciones de estados. Ejemplo Página1={Browser, Search, PaperSearch, IEEESearch,ACMSearch} Página2= { Browser, Search, AuthorSearch, DBLPSearch, citeSeerSearch } Página3= { Browser, deliciousStore } Página4= { Browser, ISIWoK }

  23. Visualización del portal • Las páginas (estructura) del portal se generan automáticamente a partir del DTE • La navegación entre páginas también se deriva del DTE

  24. 2Search 2Paper Search 2AuthorSearch Configuraciones de estados. Ejemplo Incrustar un ancla en la página Página1={Browser, Search, PaperSearch, IEEESearch,ACMSearch} Página2= { Browser, Search, AuthorSearch, DBLPSearch, citeSeerSearch } Página3= { Browser, deliciousStore } Página4= { Browser, ISIWoK }

  25. ancla Página state2page mapping evento Configuración Parámetros presentación + controller Páginas del portal cjtos. de fragmentos que provienen de los portlets + anclas Dependiente plataforma anchor2event Modelo de diseño

  26. Visualización del portal. Estética • PortalAppDescriptor • Describe el formato externo, la estructura, con el que se presentará el conjunto de los portlets y las anclas • WindowAppDescriptory AnchorAppDescriptor • Describen el formato externo con el que se presentarán los portlets y las anclas incluidos en el portal • Describen la estética de presentación del contenido de los portlets y de las anclas

  27. Página2 = {Browser, Search, AuthorSearch, DBLPSearch, citeSeerSearch} PortalAppDescriptor {transition=anchor; distribution=detached; position=top; backgrd=white;…} WindowAppDescriptor {alignment=row;background=yellow; borderColor=orange; fontFamily=times; color=black; fontSize=12pt; fontStyle=normal; …} AnchorAppDescriptor { background=orange; fontFamily=arial; color=black; fontSize=10pt;…}

  28. Página3 = { Browser, deliciousStore} PortalAppDescriptor {transition=anchor; distribution=detached; position=top; backgrd=white;…} WindowAppDescriptor {background=yellow; borderColor=orange; fontFamily=times;color=black; fontSize=12pt; fontStyle=normal; …} AnchorAppDescriptor { background=orange; fontFamily=arial; color=black; fontSize=10pt;…}

  29. Página4 = { Browser, ISIWoK} No hay reutilización No hay abstracción PortalAppDescriptor {transition=anchor; distribution=detached; position=top; backgrd=white;…} WindowAppDescriptor {background=white; borderColor=white; fontFamily=times; fontStyle=normal;color=yellow; fontSize=12pt; …} AnchorAppDescriptor { background=orange; fontFamily=arial; color=black; fontSize=10pt;…}

  30. Usar la jerarquía en DTE para estructurar los parámetros de presentación • Añadir parámetros de presentación al DTE • Herencia de parámetros

  31. PortalAppDescriptor {transition=anchor; distribution=detached; position=top; background=white; borderStyle=none; borderColor=transparent; borderWidth=0px} WindowAppDescriptor {alignment=column; background=yellow; borderStyle=solid; borderColor=blue; borderWidth=4px; fontFamily=times; color=black; fontSize=12pt; fontStyle=normal; textAlign=justify} AnchorAppDescriptor { background=orange; borderStyle=none; borderColor=transparent; borderWidth=0px; fontFamily=arial; color=black; fontSize=10pt; fontStyle=italic; textAlign=justify} Browser Search PaperSearch 2Search IEEESearch deliciousStore ACMSearch 2Delicious 2ISI 2Paper Search 2AuthorSearch ISIWoK CiteSeerSearch DBLPSearch AuthorSearch Visualización del portal. Estética AcademicBrowser

  32. PortalAppDescriptor {transition=anchor; distribution=detached; position=top; background=white; borderStyle=none; borderColor=transparent; borderWidth=0px} WindowAppDescriptor {alignment=column; background=yellow; borderStyle=solid; borderColor=blue; borderWidth=4px;fontFamily=times; color=black; fontSize=12pt; fontStyle=normal; textAlign=justify} AnchorAppDescriptor { background=orange; borderStyle=none; borderColor=transparent; borderWidth=0px; fontFamily=arial; color=black; fontSize=10pt; fontStyle=italic; textAlign=justify} Browser Search PaperSearch 2Search IEEESearch deliciousStore ACMSearch 2Delicious 2ISI 2Paper Search 2AuthorSearch ISIWoK CiteSeerSearch AnchorAppDescriptor {background=green} WindowAppDescriptor {background=white; fontFamily=courier} AnchorAppDescriptor { } DBLPSearch AuthorSearch Visualización del portal. Estética AcademicBrowser

  33. Metamodelo de visualización

  34. TAREAS ORQUES TACIÓN VISUALI ZACIÓN PORTAL EXO PIM <<merge>> PSM

  35. TAREAS ORQUES TACIÓN VISUALI ZACIÓN PORTAL EXO PIM <<merge>> PSM

  36. Plataforma eXo • Ofrece un núcleo común extensible y configurable para la construcción de portales • La funcionalidad, estructura, orquestación y visualización del portal se describen a través de ficheros de configuración: • browser-config.xml • browser-pages.xml • browser-navigation.xml • skin-config.xml • browser.css

  37. <page-set xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <page renderer="PageRowRenderer" decorator="academicBrowserPageDecorator"> <owner>@owner@</owner> <name>/home</name> <title>SearchingInPapers</title> <viewPermission>any</viewPermission> <editPermission>owner</editPermission> <container renderer="ContainerRowRenderer" decorator="academicBrowserTransparentDecorator"> <portlet renderer="PortletRenderer" decorator="ToIsiSDecorator"> <portlet-style>ToIsiSStyle</portlet-style> <showInfoBar>false</showInfoBar> <title>Step Navigation</title> <windowId>@owner@:/navigationstep/step/E5</windowId> <portlet-preferences> <preference> <name>transitionTitle</name> <value>2Isi</value> <read-only>false</read-only> </preference> <preference> <name>defaultPageName</name> <value>SC4</value> <read-only>false</read-only> </preference> </portlet-preferences> </portlet> </container> <portlet renderer="PortletRenderer" decorator="acmSearchPDecorator"> <portlet-style>acmSearchPStyle</portlet-style> <title>acmSearch</title> <windowId>@owner@:/acmLibrary/acmLibrary/S6</windowId> </portlet> … </page-set> browser-pages.xml

  38. Metamodelos eXo (I)

  39. Metamodelos eXo (II)

  40. TAREAS ORQUES TACIÓN VISUALI ZACIÓN PORTAL PIM <<merge>> EXO PSM

  41. TAREAS ORQUES TACIÓN VISUALI ZACIÓN PORTAL PIM <<merge>> Reglas RubyTL Colaboración Univ. Murcia EXO PSM

  42. Transformaciones

  43. Transformaciones

  44. Transformaciones

  45. Conclusiones • Un método para el diseño de portales agregadores de portlets • Basado en DTEs para el comportamiento • Utiliza la jerarquía de los estados de un DTE para definir la visualización • Enfoque MDA • Modelo complejo • Transformaciones recursivas • Se genera todo el código ¡¡¡¡ FUNCIONA !!!!

  46. Contacto Arantza Irastorza arantza.irastorza@ehu.es http://www.onekin.org

More Related