Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

WebML for OMG

5 038 vues

Publié le

Presentation given at the OMG ADTF meeting in Salt Lake City, June 22, 2011.
We presented our experience with WebML and WebRatio and we opened a discussion on the need and the scope required for a user interaction modeling language. See more at:

Publié dans : Technologie
  • ♣♣ 10 Easy Ways to Improve Your Performance in Bed... ➤➤ http://ishbv.com/rockhardx/pdf
    Voulez-vous vraiment ?  Oui  Non
    Votre message apparaîtra ici
  • Soyez le premier à aimer ceci

WebML for OMG

  1. 1. Experiences and requirements for a User Interaction Modeling Language<br />Marco Brambilla @marcobrambi<br />Politecnico di Milano and WebRatio<br />Stefano Butti @stebutti<br />WebRatio<br />OMG Technical Meeting, ADTF, Salt Lake City, June 22nd, 2011<br />
  2. 2. Agenda<br />2<br />WebML: Web Modeling Language<br />History<br />Language<br />Metamodel<br />Relation to other standards<br />Industrial Experience<br />WebRatio<br />Users<br />Projects<br />Requirements for a Web UI Language<br />Discussion<br />RFC or RFP<br />Consensus and partners<br />
  3. 3. 1. WebML<br />
  4. 4. WebML: purpose<br />4<br />A visual modeling language (DSL) ...<br />Oriented to the high level design<br />Incorporating all the details that are needed for refined specification<br />... Effective and essential ...<br />Including only the concepts relevant to the domain<br />No overhead because of verbose notation or orthogonality<br />... For user interaction design ...<br />Page contents<br />Navigation paths and UI events<br />... Within web applications<br />Born bottom-up from the features of dynamic web applications<br />
  5. 5. WebML: role and positioning <br />Process:<br />BPMN<br />User Interaction: <br />WebML<br />Contents:<br /> ER, class, ..<br />Style:<br />CSS, ...<br />BPMN model<br />Backend:<br />SoaML, WSDL..<br />Services<br />5<br />
  6. 6. The WebML notation: example<br />Two pages<br />Retrieval of session data (CurrentUser)<br />Review Page<br />Lists of (prefered) artists <br />Links to artist details<br />Albums Page<br />List of albums of selected artist<br />Checkbox and deletion of albums<br />
  7. 7. WebML: content publishing units<br />7<br />A WebML unit is the atomic information publishing element<br />A “view” defined upon a container of objects:<br />The instances of an concept<br />Based on a complex selection condition (called selector)<br />A unit may need some input and produces some output<br />Input is required to compute the unit itself (params of the selector)<br />Output can be used to compute other unit(s)<br />
  8. 8. WebML: Links<br />Source<br />Destination<br />Links in WebML have 3 purposes<br />Describe navigation paths<br />Transport parameters between units<br />Activate computation of units and execution of side effects<br />Normally, links are rendered as one or more anchors/buttons based on the dataset and semantics of the source unit<br />Various behaviours are allowed (automatic, asynchronous, transport ..)<br />Transportlinks: onlycarryparameters, no navigationnor side effects<br />
  9. 9. WebML: CRUD operation units<br />9<br />Execution of CRUD operations<br />Simple failure/success model of operations<br />Success: green “OK link” is navigated<br />Failure: red “KO link” is navigated<br />Chains of operations can be defined<br />Control dictated by links<br />Basic control flow elements available (loop, switch)<br />
  10. 10. WebML units: coverage <br />Content publishing<br /> Data Index MultiData Entry Scroller Multichoice HierarchicalIndex<br />Session management Web Services<br /> Login Logout Get Set Request-Response ….<br />CRUD Operations<br />Create Modify Delete Connect Disconnect<br />10<br />
  11. 11. WebML foundation and extensibility<br />11<br />The language foundations<br />Basic set of units<br />Connection to a content model for data retrieval and management<br />Links for control and data flow<br />Page computation algorithms for execution semantics<br />The page content is automatically calculated also in case of complex topologies<br />Incoming links and dependencies among units are considered<br />The language is open<br />New units and operations can be specified<br />For implementing ad-hoc business logics<br />
  12. 12. WebML metamodel<br />12<br />Language metamodel available<br />As UML diagrams (MagicDraw)<br />As ECORE (EMF) models written in Eclipse Modeling Tools <br />Excerpt / overview:<br />
  13. 13. WebML metamodel<br />13<br />
  14. 14. 2. WebRatio<br />
  15. 15. What is WebRatio<br />15<br />An Eclipse-based development environment allowing:<br />Modeling: ER + WebML + BPMN<br />100% code generation of standard JEE applications<br />Clear separation between design time and run time<br />No proprietary runtime<br />Quick and agile development cycles<br />Extending the generation rules<br />Defining new presentation styles<br />Defining new components<br />Versioning, teamwork, full lifecycle mgt<br />
  16. 16. Who are the user of WebRatio<br />16<br />Business Process<br />Analyst <br />(*) 4 days<br />(*) 15 days<br />Application Analyst /WebRatio Modeler<br />Model editor<br />Application Model(ER + WebML)<br />Process Model <br />(BPMN)<br />Standard Java<br />Web application<br />Generation rules<br />Custom Model Components <br />(Java, API ,…)<br />Layout Templates(HTML, CSS, JavaScript, ...)<br />Web<br />Designer<br />Java<br />Programmer<br />(*) Learning time<br />(*) 5 days<br />(*) 5 days<br />
  17. 17. A broad spectrum of possible applications<br />17<br />Document Management<br />Customer Information Mgt<br />Sales and LeadManagement<br />Web Content Management<br />Knowledge Management<br />CustomerRelationshipManagement<br />Learning Management<br />Partner Relationship Mgt<br />Knowledge Support<br />Marketing Resources Mgt<br />Project Management<br />Web Customer<br />Services<br />Business Intelligence<br />Supply Chain Management<br />B2C/B2B<br />E-Commerce<br />Enterprise Resource Planning<br />Web Front-End of accounting sys.<br />Financial Services<br />Supplier Relationship Mgt<br />Payment Services Orchestration<br />Corporate Operations<br />Human Capital Management<br />Product Life Cycle Management<br />Front-Office Process Mgt<br />
  18. 18. Summary<br />WebRatio is<br />now at its 6th major release<br />in the market since 2001<br />WebRatio customers<br />100+ companies and 500+ users<br />in Italy, Europe and South America<br />WebRatio partners<br />40+ software houses and system integrators<br />300+ universities worldwide, 12.000+ students<br />
  19. 19. 3. Requirements and discussion<br />
  20. 20. Modeling and standardization gap<br />20<br />A perceived gap in the standardization efforts <br />User interaction has been overlooked in modeling proposals<br />Previous attempts failed because of:<br />Low usability and effectiveness of notation<br />Missing solid implementations with vendors support<br />
  21. 21. Lesson learned (so far)<br />21<br />Reasons for the success of the current notation<br />Extremely compact (no useless overhead)<br />Effective (allows to model exactly what users want)<br />Efficient (grants high reusability of model fragments)<br />Easy to learn (very low learning curve)<br />Comprehensive (covers most of the web interaction needs)<br />Open and extensible (for covering any ad hoc logic)<br />Perceived missing aspects<br />Appropriate management of client-side logics, RIAs (Rich Internet Applications), AJAX, complex user events<br />Full-fledged support to UML class diagrams (esp. methods)<br />
  22. 22. WebML in the OMG framework<br />22<br />Exploit the possible relations with<br />BPMN -- Already in place<br />Class diagrams<br />SoaML<br />Other standards?<br />Support the standardization<br />Refine the metamodel<br />Implement appropriate injectors to MOF-compliant models<br />
  23. 23. WebML standardization effort<br />23<br />Gather interest and consensus<br />From vendors and users<br />Open to changes, extensions, integration<br />Establish a joint effort / strategy<br />Decide scope<br />Possible options:<br />Only Web<br />Web + Mobile<br />Generic Graphical UI<br />Decide RFP vs. RFC<br />Pros and cons<br />
  24. 24. Thanks<br />www.webratio.comcontact@webratio.com<br />