Your SlideShare is downloading. ×
  • Like

Loading…

Flash Player 9 (or above) is needed to view presentations.
We have detected that you do not have it on your computer. To install it, go here.

×

Now you can save presentations on your phone or tablet

Available for both IPhone and Android

Text the download link to your phone

Standard text messaging rates apply

WebML and WebRatio 5 - TOOLS conference, Zurich 2008

  • 1,645 views
Published

We present WebRatio 5.0, a design tool that supports WebML (Web Modelling Language). WebML is a domain specific language (DSL) for designing complex, distributed, multi-actor, and adaptive …

We present WebRatio 5.0, a design tool that supports WebML (Web Modelling Language). WebML is a domain specific language (DSL) for designing complex, distributed, multi-actor, and adaptive applications deployed on the Web and on Service Oriented Architectures using Web Services. WebRatio 5.0 provides visual design facilities based on the WebML notation and code generation engines for J2EE Web applications. The tool is developed as a set of Eclipse plug-ins and takes advantage of all the features of this IDE framework. It also provides support of customized extensions to the models, project documentation, and requirements specifications. The overall approach moves towards a full coverage of the specification, design, verification, and implementation of Web applications.

Published in Technology , Business
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
1,645
On SlideShare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
72
Comments
0
Likes
1

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. http://home.dei.polimi.it
    marco.brambilla@polimi.itmarcobrambiMarcoBrambi
    Web applications design and development
    with WebML and WebRatio 5.0
    Roberto Acerbis1, Aldo Bongio1, Marco Brambilla2, Stefano Butti1, Stefano Ceri2, Piero Fraternali2
    1WebRatio, Italy2 Politecnico di Milano, Italy @ TOOLS Europe 2008, Zurich
  • 2. Summary
    Introduction
    WebML
    Trends and evolutions
    WebRatio toolsuite
    The WebRatio 5 edition for Eclipse
    Industrial experiences
    Conclusions
    2
  • 3. Intro
    Conceptual modelsfor Web applications
    Software engineering practicesapplied to the Web environment
    Methodologies
    CASE tools
    Model verification
    Code generation
    Our story:
    Starting from data-intensive Web applications
    Moving toward service-oriented architectures, distributed business process modeling, client-side computation (RIA), semantic Web services and applications
    Added value to the analyst (Function Points), the designer and the developer
    Formalization of semantics, MDA representation
    3
  • 4. WebML (Web Modeling Language)
    DSL for designing large-scale Web applications
    Specifies CONTENT, HYPERTEXT, and PRESENTATION
    4
    Content + Hypertext + Presentation
  • 5. WebML: Data model
    5
    ShipmentServicewhere ShipmentService.shipTonot inShipmentService.locatedIn
    Self TO Europe where Self.locatedIn isa Europe
    Content model + redundant data calculation
    ER or UML class diagrams
  • 6. WebML: Hypertext model
    6
    • Composition modeling:pages and units
    • 7. Navigation modeling:links
    • 8. Execution modeling: operations, control and data (FSM formalization)
  • Going beyond: trends and challenges
    7
    Scenario:
    The Web as an implementation platform of business information systems
    Distributed intra- and inter-enterprise business processes
    Support to new user interaction patterns
    Integration of reasoning and Semantic Web features
    Needs:
    SOA support
    Business process management
    Rich Web Interfaces (RIAs)
    Solution:
    Modeling primitives for
    Business process management
    Service invocation and publishing
    AJAX-based user interaction
  • 9. Development step
    Focus: model driven design of collaborative Web applications based on business processes, spanning multiple individuals and organizations
    Proposal: a methodology for seamless flow from specifications to design, exploiting Top Down Design, Model Driven Specifications, standard models and languages. The methodology is supported by CASE tools, engines for semi-automatic generation of intermediate models, and automatic generation of running code
    8
  • 10. Overall picture
    9
  • 11. Business process modeling
    10
    The Workflow Model represents the business process to be executed, in terms of activities, precedence constraints, and actors in charge of executing the activities.
  • 12. Process Distribution
    11
    • Possibility of delegating one activity or a whole subprocess to different peers
    • 13. Interaction between peersbased on Web services
    • 14. Exchanged messagesnotify the workflow status changes to the peers
  • Mapping of BP to Hypertext Models
    12
    Automatic generation of:
    • SQL script
    • 15. WebML skeleton (different styles)
    • 16. Hypertext links behaviour
    • 17. Project documentation (specifications and design)
  • Rich Internet Application design and code generation
    RIA features covered by the language:
    partial page refresh, in-page popup windows, splash screens, dynamic tooltips, animations;
    drag&drop and dynamic dependencies;
    text autocompletion, on-event actions, and field dependencies.
    Code generation and runtime support:
    mix of opensource technologies, extensively exploiting the XMLhttpRequest method.
    Runtime solution: two dynamic pages for each conceptual page that interact through XMLhttpRequest for providing the rich interface features:
    a back-end dynamic XML page that stores the data of interest for a specific navigation context
    the front-end JSP page (including JavaScript for event management) shown to the user
    13
  • 18. WebRatio: The company and the product
    Some customers:
    Web Models
    Location: Como (research and product development)
    and Milano (sales and application development)
    Born in 2001 as a “spin-off”
    of Politecnico di Milano
    Continuous cross-fertilization with Politecnico
    for research and exploitation
    … and 80+ universities and research centers that use the tool for free
  • 19. WebML Project Design
    WebRatio
    Visual Identity
    Running
    Web Application
    Data Sources
    Custom Components
    WebRatio Tool Overview
    Model Diagram Editor based on GEF
    Text Editors and component wizards for implementation of custom units
    Full workspace and CVS support for versioning and multi-user development
    Code Generators based on Ant, Groovy, and XSL
  • 20. Model Diagram Editor
    Graph Editor
    Tabbed Properties
    Multi-editor
    Problems
  • 21. Text Editor
    Syntax Highlighting
    Code Completion
  • 22. Business Components Editor
    Eclipse Forms Components
    Multi-editor
  • 23. Runtime Architecture and Code Generation
    • Smart services: created upon request, cached, and reused;
    • 24. Activity log, XML parsing and access, Connection pooling
    • 25. One single service class is deployed for each type of component and one runtime XML descriptor is deployed for each component
  • Code Generation for a simple unit:
    <INDEXUNIT entity="News" name="News List"> <DISPLAYATTRIBUTE attribute="name"/> <ORDERATTRIBUTE attribute="date"/></INDEXUNIT>
    <Descriptor service="com.webratio.IndexUnitService">
    <OutputParameter position="1" type="String"/> <Query>
    SELECT NAME
    FROM NEWS_TABLE
    ORDER BY DATE
    </Query></Descriptor>
    Runtime Architecture and Code Generation
    • Smart services: created upon request, cached, and reused;
    • 26. Activity log, XML parsing and access, Connection pooling
    • 27. One single service class is deployed for each type of component and one runtime XML descriptor is deployed for each component
  • Conclusions and ongoing activities
    Current status:
    Established DSL and tool for Web application design
    Ongoing research on:
    Rich Internet Applications: models and code generation
    Business Process-based Applications: model transformations
    Search-oriented applications: technological platforms and front end architectures
    Semantic Web and SOA
    DSL modernization through MDD/MDA mainstream tools
    21
  • 28. Thanks
    22
    ?
    Questions
    Marco Brambilla
    http://home.dei.polimi.it
    Politecnico di Milano
    marco.brambilla@polimi.itmarcobrambiMarcoBrambi