Bassel F. Saab     supervised by: Dr. Mohamed S. HajjiDepartment of Software Engineering and Information Systems,         ...
Agenda   Introduction   XMAN REVIEW   XML UIDLS REVIEW   CRITERIA AND COMPARISON   IMPLEMENTATION OF THE    PRESENTAT...
Introduction Modern Business Rapid Application Development (RAD) XML    From Data Structure Exchanging to    Software ...
What is XMAN Framework? XMAN is a Framework for Rapid  Development of Business Applications The developers can specify t...
XMAN Framework Is    Multi-tier    Open Architecture    XML-Centric    Data-Centric    Descriptive or Declarative   ...
XMAN Framework Produced Applications    Rapid development    Data-Centric    Powerful and flexible users’ security    ...
XMAN Main Components Developer environment (GUI,XML) Engine   Persistence Management   Business Management   Presenta...
Main Components-How they Work?Mr. Developer     Or Expert User              The Required                           Applica...
Main Configuration files             XPO                           Persistence Management<XpoElement><element_type>intege...
Main Configuration files                XView                                       Business Management<XViewElement>   <...
Main Configuration files            XPrivilege                        Business Management<XprivilageElement><Action>Updat...
Main Configuration files XForm & XReport                           Presentation Management XTemplate XRule             ...
Architecture - Main Configuration files      Presentation Layer                   XReport        XTemplate     XForm      ...
Architecture - Main Components    Presentation Layer                         Presentation Manager    Business Layer       ...
XMAN Enhancement - UIDLs       Motivation       UIDLs: User Interface Definition Languages       Main efforts         ...
Selected UIDLs - UIML   User Interface Markup Language UIML   Created by Virginia Tech’s Center for Human    Computer In...
Selected UIDLs - UIMLDescription into six orthogonal pieces, answering sixquestions :What are the parts comprising the UI...
Selected UIDLs - UIMLDownside:Does not allow the creation of user interfaces for thedifferent languages or for different ...
Selected UIDLs - XIML The eXtensible Interface Markup Language (XIML) The follower of MIMIC Provides a way to describe ...
Selected UIDLs - XIMLXIML divides the definition of an interface into components,high-level building blocks of an interfac...
Selected UIDLs – XIMLDownsideGleaning information on XIML from the freelyavailable sources on the Internet is difficult....
Selected UIDLs – USIXML UsiXML (http://www.usixml.org) Mainly supported by the Cameleon research project  (http://giove....
Selected UIDLs – USIXMLdevelopment life cycle into four levels of abstraction:  Task and Concepts,s Abstract UI (AUI),  Co...
Selected UIDLs – USIXMLOne of the mostly integrated UIDL thataddresses platform-, modality-, and context-independence     ...
Selected UIDLs – XForms XForms 1.0 Recommendation is the next-generation  Web forms language, designed by the W3C. It so...
Selected UIDLs – XForms XForms separates the presentation from the data Allowing reuse and device independence. Integra...
Selected UIDLs – XForms XForms is a W3C initiative Express forms-based UIs at a level that is more abstract than  suppos...
UIDLs Comparison – Cretriaa   Standardizationp   Separation of concern.n   Independencyn   Supported XML-Based languagess ...
UIDLs Comparison – ResultsCriteria/ UIDL   1       2   3    4    5    6    7    TotalUIML             ++      +   +    -  ...
Integration Approaches Model-based approach Browsers-based approach Transcode approach               XMAN         30
Available Tools Chiba    http://chiba.sourceforge.net Orbeon    http://www.orbeon.com betterFORM    http://www.bette...
Integration Rules Playing CRUDS with forms in XMAN applications depends on    XPrivilege which determine every User (or g...
Integration Rules Using dynamic binding, XTemplate configurations can be specified for any    generated form, and could b...
Conclusions & Future Work Development of applications in full or in part  through the different components The XMAN conf...
Conclusions        XMAN   35
XMAN       XMAN   36
Upcoming SlideShare
Loading in …5
×

Toward a Standardized XMAN Presentation Layer with Consideration of User Interface Description Languages

1,248 views

Published on

Bassel Saab and Mohamad Haji, “Toward a Standa rdized XMAN Presentation Layer with Consideration of User Interface Description Languages”, DeSE2011 Conference, Dubai, UAE, Dec 2011

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
1,248
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
7
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide
  • Modern Business is fast created, growing up and changed Business application must be developed rapidly and so for the changing RAD is coming as an answer for business application development From another perspective, XML is a promising technology that developed for data structure exchanging and now its penetrating the application development
  • Using XMAN, Developers can … Required application: mean the application under development or the application we want to develop Application data model Application behavior Moreover, The data presentation Configuration files we will describe later XMAN Framework consist of many components we will describe later
  • Multi-tier application Open Architecture framework Produce XML-Centric applications
  • Multi-tier application Open Architecture framework Produce XML-Centric applications
  • Definitions: XPO: represent the Application data entities XView: 2 key roles in the system, first identifying information to be displayed second, to identify the permissions on the system entities XPrivilege: Descriptions of the users&apos; privileges to implement CRUD operations on the XViews
  • Definitions: XPO: represent the Application data entities XView: 2 key roles in the system, first identifying information to be displayed second, to identify the permissions on the system entities XPrivilege: Descriptions of the users&apos; privileges to implement CRUD operations on the XViews
  • Definitions: XPO: represent the Application data entities XView: 2 key roles in the system, first identifying information to be displayed second, to identify the permissions on the system entities XPrivilege: Descriptions of the users&apos; privileges to implement CRUD operations on the XViews
  • Definitions: XForm &amp; XReport XTemplate XRule
  • Describe the possible relations between the configuration files
  • Link the main components and the configuration files
  • Toward a Standardized XMAN Presentation Layer with Consideration of User Interface Description Languages

    1. 1. Bassel F. Saab supervised by: Dr. Mohamed S. HajjiDepartment of Software Engineering and Information Systems, Faculty of Information Technology (FIT), University of Damascus, Damascus, Syria
    2. 2. Agenda Introduction XMAN REVIEW XML UIDLS REVIEW CRITERIA AND COMPARISON IMPLEMENTATION OF THE PRESENTATION LAYER Conclusions & Future Work XMAN 2
    3. 3. Introduction Modern Business Rapid Application Development (RAD) XML  From Data Structure Exchanging to Software development XMAN 3
    4. 4. What is XMAN Framework? XMAN is a Framework for Rapid Development of Business Applications The developers can specify the required application using a specific XML configuration files to describe:  Application data model  Application behavior XMAN Framework produce the required application XMAN 4
    5. 5. XMAN Framework Is  Multi-tier  Open Architecture  XML-Centric  Data-Centric  Descriptive or Declarative  Semi-MDA Framework Supports  Aspects of Change Management  Aspects of Security Management XMAN 5
    6. 6. XMAN Framework Produced Applications  Rapid development  Data-Centric  Powerful and flexible users’ security management  Easy to change  Support simple process  Web application XMAN 6
    7. 7. XMAN Main Components Developer environment (GUI,XML) Engine  Persistence Management  Business Management  Presentation Management  Privilege Management XMAN 7
    8. 8. Main Components-How they Work?Mr. Developer Or Expert User The Required Application Configuration Files Mrs. End User XMAN Engine XMAN 8
    9. 9. Main Configuration files  XPO Persistence Management<XpoElement><element_type>integer</element_type> <<DB Table>><element_name> ID </element_name> student_profile”</ "student_idSelector Field_id=><XpoElement/> Map •Id<XpoElement> •Name<element_type>sting</element_type><element_name> First Name</element_name> •… </ "Selector Field_id="First_Name><XpoElement/>..… XMAN 9
    10. 10. Main Configuration files  XView Business Management<XViewElement> <Source> <Selector Selector_id="student_xpo" Field_id="id"/> </Source></XViewElement><XViewElement> Used By <Source> XPO <Selector Selector_id="student_xpo" Field_id="First Name"/> </Source></XViewElement> XMAN 10
    11. 11. Main Configuration files  XPrivilege Business Management<XprivilageElement><Action>Update</Action> </"User Value="Bassel> Define the user <"ViewComponent Source="Student_reg_view> permissions<element_name>Acceptance</component_name><ViewComponent/> XView”</"FIT_registrarconstrain rule_ref=>< XprivilageElement /> XMAN 11
    12. 12. Main Configuration files XForm & XReport Presentation Management XTemplate XRule Rule Management XMAN 12
    13. 13. Architecture - Main Configuration files Presentation Layer XReport XTemplate XForm Business Layer XView XView XRule XPrivilege Persistence Layer XPO XPO XPO XMAN 13
    14. 14. Architecture - Main Components Presentation Layer Presentation Manager Business Layer XView Manager Action Manager XManager XRule Manager XPrivilege Manager Persistence Layer Persistence Manager XMAN 14
    15. 15. XMAN Enhancement - UIDLs Motivation UIDLs: User Interface Definition Languages Main efforts  Separating the purpose from the presentation  AUIML, AAIML, Seescoa XML, Teresa XML, TADEUS-XML، useML, RIML, DIAL, DISL, GIML XMAN 15
    16. 16. Selected UIDLs - UIML User Interface Markup Language UIML Created by Virginia Tech’s Center for Human Computer Interaction HCI, Harmonia Inc., and other organizations on uiml.org (http://www.uiml.org). Work on UIML began in 1997 Last version UIML 4.0 was published in 2008 XMAN 16
    17. 17. Selected UIDLs - UIMLDescription into six orthogonal pieces, answering sixquestions :What are the parts comprising the UI? (the<structure>).What is the presentation (look/feel/sound) used for theparts? (the <style>).What is the content (e.g., text, images, sounds) used inthe UI? (the <content>).What is the behavior of the UI (e.g., when someone clicksor says something)? (the <behavior>).What is the mapping of the parts to UI controls in sometoolkit (e.g., Java Swing classes or HTML tags)? (the<presentation>).What is the API of the business logic that the UI isconnected to? (the <logic>). XMAN 17
    18. 18. Selected UIDLs - UIMLDownside:Does not allow the creation of user interfaces for thedifferent languages or for different devices from asingle descriptionNot separating user interface elements from theirpresentation and lacking an explicit data modelAs it just offers a single language to define thedifferent types of user interfaces, it does not allow thecreation of user interfaces for the different languagesor for different devices from a single descriptionThere is still a need to design separate UIs for eachdevice XMAN 18
    19. 19. Selected UIDLs - XIML The eXtensible Interface Markup Language (XIML) The follower of MIMIC Provides a way to describe a user interface without worrying about its implementation. It was initially developed by the research laboratories of RedWhale Software Corp. It is now supported by the XIML forum (http://www.ximl.org), an industrial organization dedicated to the research, the dissemination, the adoption, and the standardization of XIML XMAN 19
    20. 20. Selected UIDLs - XIMLXIML divides the definition of an interface into components,high-level building blocks of an interface:2.Task (business processes)3.Domain (defines a hierarchy of components)4.User (defines a hierarchy of end-users)5.Presentation, and Dialog (defines actions within theinterface).Components are then mapped to Elements (concreterepresentations such as widgets). Using:s Relations Attributes Statements Definitions. XMAN 20
    21. 21. Selected UIDLs – XIMLDownsideGleaning information on XIML from the freelyavailable sources on the Internet is difficult.intended to lead to code generation at design timeand code interpretation at runtime, no tool isavailableA possible problem is that it does not support thirdparty extensions, or synchronization of the UI state It is unclear at this time exactly how these objectsinteract. XMAN 21
    22. 22. Selected UIDLs – USIXML UsiXML (http://www.usixml.org) Mainly supported by the Cameleon research project (http://giove.cnuce.cnr.it/cameleon.html) under the umbrella of the European Fifth and Sixth Framework Programme (FP5-2000-IST2, FP6-2002- IST1) and the SIMILAR network of excellence ( http://www.similar.cc) “µ7” concept:  multi-device, multi-user, multi-linguality, multi- organisation, multi-context, multi-modality, and multi-platform XMAN 22
    23. 23. Selected UIDLs – USIXMLdevelopment life cycle into four levels of abstraction: Task and Concepts,s Abstract UI (AUI), Concrete UI (CUI) Final UI (FUI) XMAN 23
    24. 24. Selected UIDLs – USIXMLOne of the mostly integrated UIDL thataddresses platform-, modality-, and context-independence XMAN 24
    25. 25. Selected UIDLs – XForms XForms 1.0 Recommendation is the next-generation Web forms language, designed by the W3C. It solves some of the problems found in the HTML forms by separating the purpose from the presentation and using declarative markup to describe the most common operations in form-based applications XForms 1.0 (Third Edition) was published on 29 October 2007. The original XForms specification was made an official W3C Recommendation on 14 October 2003, while XForms 1.1, which introduced a number of improvements, reached the same status on 20 October 2009. XMAN 25
    26. 26. Selected UIDLs – XForms XForms separates the presentation from the data Allowing reuse and device independence. Integrated into other markup languages, such as XHTML , SVG or any suitable markup language XForms is an abstract user interface description language. XForms 1.0 includes other W3C specifications directly: XML Events, XPath 1.0, XML Schema Datatypes, and XML 1.0. XMAN 26
    27. 27. Selected UIDLs – XForms XForms is a W3C initiative Express forms-based UIs at a level that is more abstract than supposed-to be physical HTML descriptions. In some way, this initiative addresses the question of multiple computing platforms. Although XForms is promoted by the W3C, thus giving it the widest potential audience abroad. XForms is basically aimed at expressing forms-based UIs with presentation and some dialog aspects XMAN 27
    28. 28. UIDLs Comparison – Cretriaa Standardizationp Separation of concern.n Independencyn Supported XML-Based languagess Integrations Available Toolss XMAN Deployment XMAN 28
    29. 29. UIDLs Comparison – ResultsCriteria/ UIDL 1 2 3 4 5 6 7 TotalUIML ++ + + - + - + 2- ,5+XIML - + + + + - + 2- ,5+UsiXML - ++ ++ + + + + 1- ,8+XForms ++ + + ++ ++ ++ ++ 12+ XMAN 29
    30. 30. Integration Approaches Model-based approach Browsers-based approach Transcode approach XMAN 30
    31. 31. Available Tools Chiba  http://chiba.sourceforge.net Orbeon  http://www.orbeon.com betterFORM  http://www.betterform.de XMAN 31
    32. 32. Integration Rules Playing CRUDS with forms in XMAN applications depends on XPrivilege which determine every User (or group) - XView (at elements level) privileges. Using betterXForm and XFORMS replacing XMAN-XForm and XReport configuration files, XTemplate still there with some additions to its basic rule. Then XViews, in XMAN business layer, mapped to the XForms model in the generated form. A complete XView or part of it could be mapped to one or more XForms models in the generated forms. Every generated form have to provide CRUDS functions, with respect to the related XPrivileges. The relations among CRUDS screens could be configured. User Interface in the generated Form configured using XTemplate. XMAN 32
    33. 33. Integration Rules Using dynamic binding, XTemplate configurations can be specified for any generated form, and could be linked to Context, User or Group (this point needs extra research). Instance data fetched in run time using dynamic binding. BizManager, with corporation with ActionManager and PrivilegeManager in XMAN business layer, provide the required instance data. Form controls generated from the form model applying the mapping rules and styles defined in XTemplates. To use new widget some configurations needed in the declarative Useragents in betterFORM. Controls validation follows the related business rules defined in the business layer. Controls binding follows Master-Details model and some Validation rules. Other possible dynamic behaviors of the form elements could be declared in the generated forms. Detect these declarations is essential for the change management. The XForms submitting determined dynamically by the BizManager in XMAN business layer, this allow a dynamic linking, behavior and flow for the forms of the XMAN developed applications. XMAN 33
    34. 34. Conclusions & Future Work Development of applications in full or in part through the different components The XMAN configuration files and components helps RAD and facilitate change management Based on employing and integrating a number of the most important standards and frameworks currently known XMAN 34
    35. 35. Conclusions XMAN 35
    36. 36. XMAN XMAN 36

    ×