A Framework for Rapid Integration of Presentation Components <ul><li>Jin Yu   Fabio Casati Florian Daniel </li></ul><ul><l...
Outline <ul><li>INTRODUCTION </li></ul><ul><li>GUIDING PRINCIPLES </li></ul><ul><li>PRESENTATION INTEGRATION FRAMEWORK </l...
INTRODUCTION <ul><li>A large body of research and development in integration-related areas </li></ul><ul><ul><li>enterpris...
INTRODUCTION <ul><li>Hundreds of examples of presentation integration exist today ,in the form of  web mashups . </li></ul...
INTRODUCTION <ul><li>There are three presentation components in this example (see Figure 1) </li></ul><ul><ul><li>A nation...
INTRODUCTION
GUIDING PRINCIPLES─ Lessons Learned from EAI <ul><li>A key learning from research in EAI   is the  need for a homogeneous ...
GUIDING PRINCIPLES─ Difference between Presentation and Application integration <ul><li>Presentation Integration is typica...
GUIDING PRINCIPLES─ Difference between Presentation and Application integration
PRESENTATION INTEGRATION FRAMEWORK <ul><li>Figure 3 describes the high-level architecture of the presentation integration ...
PRESENTATION INTEGRATION FRAMEWORK
PRESENTATION INTEGRATION FRAMEWORK─Component Model <ul><li>Events. </li></ul><ul><ul><li>To notify other components of its...
PRESENTATION INTEGRATION FRAMEWORK─Component Model <ul><li>Properties . </li></ul><ul><ul><li>The initial state and the co...
PRESENTATION INTEGRATION FRAMEWORK─Component Model
PRESENTATION INTEGRATION FRAMEWORK─Composition Model <ul><li>Event   subscription . A one to many publisher/subscriber rel...
PRESENTATION INTEGRATION FRAMEWORK─Composition Model <ul><li>Additional integration   logic . Additional integration logic...
PRESENTATION INTEGRATION FRAMEWORK─Composition Model
PRESENTATION INTEGRATION FRAMEWORK─Language Representation <ul><li>A declarative composition language, the Extensible Pres...
PRESENTATION INTEGRATION FRAMEWORK─Runtime Middleware <ul><li>Event automation . </li></ul><ul><ul><li>Via event automatio...
PRESENTATION INTEGRATION FRAMEWORK─Runtime Middleware
PRESENTATION INTEGRATION FRAMEWORK─Runtime Middleware
EXAMPLE <ul><li>First ,component developers implement the component. </li></ul><ul><li>After that, they need to provide an...
EXAMPLE <ul><li>If event automation is insufficient ,additional integration logics can be specified in the <listener> elem...
IMPLEMENTATION <ul><li>Middleware and Deployment  </li></ul><ul><ul><li>A server-side code generator implemented in ASP.NE...
RELATED WORK <ul><li>.NET Composite UI Application Block (CAB) </li></ul><ul><li>Eclipse’s Rich Client Platform (RCP) </li...
FUTURE WORK <ul><li>We plan to provide additional component adapters for AJAX-based toolkits. </li></ul><ul><li>We will cr...
CONCLUSION <ul><li>Presentation integration is undoubtedly the next step that has to be taken in the integration area. </l...
Upcoming SlideShare
Loading in...5
×

1023 paper

708

Published on

Published in: Technology, Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
708
On Slideshare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

1023 paper

  1. 1. A Framework for Rapid Integration of Presentation Components <ul><li>Jin Yu Fabio Casati Florian Daniel </li></ul><ul><li>Boualem Benatallah Maristella Matera </li></ul><ul><li>Regis Saint-Paul </li></ul><ul><li>Proceedings of the 16th international conference on </li></ul><ul><li>World Wide Web 2007 </li></ul><ul><li>Reporter : CHE-MIN LIAO </li></ul><ul><li>2007/10/23 </li></ul>
  2. 2. Outline <ul><li>INTRODUCTION </li></ul><ul><li>GUIDING PRINCIPLES </li></ul><ul><li>PRESENTATION INTEGRATION FRAMEWORK </li></ul><ul><li>EXAMPLE </li></ul><ul><li>IMPLEMENTATION </li></ul><ul><li>RELATED WORK </li></ul><ul><li>FUTURE WORK </li></ul><ul><li>CONCLUSION </li></ul>
  3. 3. INTRODUCTION <ul><li>A large body of research and development in integration-related areas </li></ul><ul><ul><li>enterprise application integration ( EAI ) </li></ul></ul><ul><ul><li>enterprise information integration ( EII ) </li></ul></ul><ul><ul><li>service composition. </li></ul></ul><ul><li>Most of these efforts focus on simplifying integration at data and application level. </li></ul>
  4. 4. INTRODUCTION <ul><li>Hundreds of examples of presentation integration exist today ,in the form of web mashups . </li></ul><ul><li>The presentation aspect of most mashups today is developed manually. </li></ul><ul><li>We introduce a framework for integration at presentation. </li></ul>
  5. 5. INTRODUCTION <ul><li>There are three presentation components in this example (see Figure 1) </li></ul><ul><ul><li>A national park listing </li></ul></ul><ul><ul><li>An image displayer </li></ul></ul><ul><ul><li>A map </li></ul></ul><ul><li>When the user selects a national park from the park listing component ,the image displayer will show an image of the selected park while the map will display its location. </li></ul>
  6. 6. INTRODUCTION
  7. 7. GUIDING PRINCIPLES─ Lessons Learned from EAI <ul><li>A key learning from research in EAI is the need for a homogeneous way to describe the different components to be integrated </li></ul><ul><ul><li>Simplicity Only simple languages made it into the mainstream use, such as IDL and WSDL . </li></ul></ul><ul><ul><li>Formalization It is needed as the tool support. </li></ul></ul><ul><ul><li>Readability To overcome inflexibility of the tools. </li></ul></ul><ul><ul><li>Modularization Disseminate a new integration model. </li></ul></ul>
  8. 8. GUIDING PRINCIPLES─ Difference between Presentation and Application integration <ul><li>Presentation Integration is typically event-driven, and driven by end users’ actions. (see Figure 2) </li></ul><ul><li>Presentation components often require the configuration of UI appearances ,such as font and background color. </li></ul>
  9. 9. GUIDING PRINCIPLES─ Difference between Presentation and Application integration
  10. 10. PRESENTATION INTEGRATION FRAMEWORK <ul><li>Figure 3 describes the high-level architecture of the presentation integration framework </li></ul><ul><ul><li>One or more components </li></ul></ul><ul><ul><li>A specification of the composition model </li></ul></ul><ul><ul><li>A middleware </li></ul></ul><ul><ul><ul><li>An event broker that manages a set of event listeners defined in the composition model. </li></ul></ul></ul><ul><ul><ul><li>The event listeners map state change events, generated by one component ,onto operations of other components. </li></ul></ul></ul>
  11. 11. PRESENTATION INTEGRATION FRAMEWORK
  12. 12. PRESENTATION INTEGRATION FRAMEWORK─Component Model <ul><li>Events. </li></ul><ul><ul><li>To notify other components of its state changes. </li></ul></ul><ul><ul><li>They are initiated either by user actions on the UI ,or by requests from other components . </li></ul></ul><ul><li>Operations. </li></ul><ul><ul><li>For queries and modifications of its state. </li></ul></ul><ul><ul><li>A list of input parameters which allows the caller to pass in values </li></ul></ul><ul><ul><li>A return value which allows the caller to retrieve the result. </li></ul></ul>
  13. 13. PRESENTATION INTEGRATION FRAMEWORK─Component Model <ul><li>Properties . </li></ul><ul><ul><li>The initial state and the configuration parameters of the component. </li></ul></ul><ul><ul><li>Component’s state at runtime . </li></ul></ul><ul><li>Presentation modes . </li></ul><ul><ul><li>Component’s visual appearance characteristics </li></ul></ul><ul><ul><ul><li>Visibility </li></ul></ul></ul><ul><ul><ul><li>Window state </li></ul></ul></ul><ul><ul><li>component’s lifecycle information </li></ul></ul><ul><ul><ul><li>Instantiated (downloaded and instance created) </li></ul></ul></ul><ul><ul><ul><li>Destroyed </li></ul></ul></ul>
  14. 14. PRESENTATION INTEGRATION FRAMEWORK─Component Model
  15. 15. PRESENTATION INTEGRATION FRAMEWORK─Composition Model <ul><li>Event subscription . A one to many publisher/subscriber relationship among presentation components . </li></ul><ul><li>Data mapping . When direct mappings between event parameters and operation parameters are impossible ,additional mappings and transformations can be specified inside event listeners. </li></ul>
  16. 16. PRESENTATION INTEGRATION FRAMEWORK─Composition Model <ul><li>Additional integration logic . Additional integration logic may be needed for those infrequent occurrences when the integration cannot be entirely declared in the composition model. </li></ul><ul><li>Layout information . The composition model itself does not define any layout mechanism ,but supports the notion of external layout managers . </li></ul>
  17. 17. PRESENTATION INTEGRATION FRAMEWORK─Composition Model
  18. 18. PRESENTATION INTEGRATION FRAMEWORK─Language Representation <ul><li>A declarative composition language, the Extensible Presentation Integration Language (XPIL). </li></ul><ul><li>The language contains two sets of XML elements </li></ul><ul><ul><li>component model </li></ul></ul><ul><ul><li>composition model. </li></ul></ul>
  19. 19. PRESENTATION INTEGRATION FRAMEWORK─Runtime Middleware <ul><li>Event automation . </li></ul><ul><ul><li>Via event automation ,the middleware captures an event from a source component and automatically dispatches it to the designated operations of other components. (see Figure 5) </li></ul></ul><ul><li>Component adapters and wrappers. </li></ul><ul><ul><li>To communicate with components from different component technologies. (see Figure 6) </li></ul></ul><ul><ul><li>Functionalities </li></ul></ul><ul><ul><ul><li>Component location and instantiation </li></ul></ul></ul><ul><ul><ul><li>Component inspection </li></ul></ul></ul><ul><ul><ul><li>Data type mapping </li></ul></ul></ul><ul><ul><ul><li>Component invocation. </li></ul></ul></ul>
  20. 20. PRESENTATION INTEGRATION FRAMEWORK─Runtime Middleware
  21. 21. PRESENTATION INTEGRATION FRAMEWORK─Runtime Middleware
  22. 22. EXAMPLE <ul><li>First ,component developers implement the component. </li></ul><ul><li>After that, they need to provide an abstract component model describing their components in XPIL. (i.e. via <component>) </li></ul><ul><li>The composition author links the components together by adding event subscriptions (i.e. via <listener>) in the composition model. </li></ul>
  23. 23. EXAMPLE <ul><li>If event automation is insufficient ,additional integration logics can be specified in the <listener> element ,as either inline scripts or references to external code. </li></ul><ul><li>Finally ,the composition author provides layout specification (i.e. via <layout>) to position the three components appropriately. </li></ul>
  24. 24. IMPLEMENTATION <ul><li>Middleware and Deployment </li></ul><ul><ul><li>A server-side code generator implemented in ASP.NET. </li></ul></ul><ul><ul><li>Given one or more XPIL documents as the input , the code generator outputs a complete HTML page. </li></ul></ul><ul><li>Component Adapters </li></ul><ul><ul><li>With browsers’ built-in support for most popular components technologies (e.g. ActiveX ,Java applet ,Flash) ,component adapters are relatively easy to implement . </li></ul></ul><ul><ul><li>Component adapters also support configuration options for component instantiation, through the <config> elements inside <component>. </li></ul></ul>
  25. 25. RELATED WORK <ul><li>.NET Composite UI Application Block (CAB) </li></ul><ul><li>Eclipse’s Rich Client Platform (RCP) </li></ul><ul><li>ASP.NET Web Parts </li></ul><ul><li>WSRP for web applications </li></ul><ul><li>Java Portlet </li></ul><ul><li>IBM ADIEU and IntelligentPad </li></ul>
  26. 26. FUTURE WORK <ul><li>We plan to provide additional component adapters for AJAX-based toolkits. </li></ul><ul><li>We will create a visual authoring tool that allows the composition model to be specified in a drag-and-drop fashion with the final output generated in XPIL. </li></ul>
  27. 27. CONCLUSION <ul><li>Presentation integration is undoubtedly the next step that has to be taken in the integration area. </li></ul><ul><li>In this article ,we proposed a presentation integration framework to facilitate the creation of composite applications through a simple declarative composition language ,XPIL. </li></ul>

×