Top Banner
WebRatio BPM: a Tool for Design and Deployment of Business Processes on the Web Stefano Butti, Marco Brambilla, Piero Fraternali Web Models Srl, Italy ICWE 2010, July 7 th 2010, Vienna
20

WebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web

Nov 18, 2014

Download

Technology

Marco Brambilla

See also:
http://www.webratio.com
http://dbgroup.como.polimi.it/brambilla/webratio-bpm
http://www.youtube.com/watch?v=jRS1LTazxFk (demo video)

We present WebRatio BPM, an Eclipse-based tool that supports the design and deployment of business processes as Web applications. The tool applies Model Driven Engineering techniques to complex, multi-actor business processes, mixing tasks executed by humans and by machines, and produces a Web application running prototype that implements the speci ed process. Business processes are described through the standard BPMN notation, extended with information on task assignment, escalation policies, activity semantics, and typed dataflows, to enable a two-step generative approach: first the Process Model is automatically transformed into a Web Application Model in the WebML notation, which seamlessly expresses both human- and machine-executable tasks; secondly, the Application Model is fed to an automatic transformation capable of producing the running code. The tool provides various features that increase the productivity and the quality of the resulting application: one-click generation of a running protoype of the process from the BPMN model; fine-grained refinement of the resulting application; support of continuous evolution of the application design after requirements changes (both at business process and at application levels).
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: WebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web

WebRatio BPM: a Tool for Design and Deployment

of Business Processes on the Web

Stefano Butti, Marco Brambilla, Piero Fraternali

Web Models Srl, Italy

ICWE 2010, July 7th 2010, Vienna

Page 2: WebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web

Agenda• Introduction• Development Process• WebML Workflow Primitives• Model Transformation• Conclusions

Page 3: WebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web

Introduction

• Web applications, Web services, and BPM are the de facto standard of modern enterprise integration– Web services enable system-to-system interaction;– Web applications allow distributed and ubiquitous user interaction– Business process specification languages ease the definition of the

business constraints, by orchestrating service execution

• We propose a model-driven approach for multiparty business processes, based on Web Service orchestration and Web user interface design. – BPMN– WebML 3

Page 4: WebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web

Model-driven Development Process

• Manual specification of BPMN process model • Automatic transformation of BPMN to WebML• Possible manual refinement of WebML models• Automatic running code generation on J2EE platform• Virtuous development cycle

4

Page 5: WebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web

The contribution• Adoption of Process Model to precisely specify the

workflow for a given application – including user interaction and service orchestration

• Model transformation and code generation techniques to implement and deploy the process

5

Page 6: WebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web

Background• Business Process Design

– representing processes (of heterogeneous nature) in terms of related, structured activities or tasks that produce a specific service or product

– several proposals for visual modeling languages (e.g., UML, YAML, BPMN)

• Model Driven Architectures • abstraction (separation of platform independent and platform

dependent concerns) and models in Web application design and development

• Web Engineering– use of models (and model transformations) as the key artifacts for

application developments– several proposals (e.g., UML, Hera, OOHDM, UWE, W2000, WebML)

6

Page 7: WebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web

Background: BPMN(Business Process Model Notation)

7

Description of business activities (technology- and platform- independent) Activities FlowsConstraints (OR-XOR-AND gateways)

Artifacts (Data Objects and data associations) Events

Running example:

Banking

application

for processing

leasing requests

(cars or houses)

Page 8: WebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web

Background: WebML (Web Modeling Language)

www.webml.org

8

Web Modeling Language

Specification of interactive, integrated Web applications through orthogonal models.• Domain Models (ER or UML class diagrams for defining “the content”)

• Navigation Models ( content publication and manipulation, page computation, hypertextual links, side effects)

• Service definition and composition Models ( Web service invocation and publication, XML management)

Page 9: WebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web

Background: BPMN

• BPMN– does not provide support for:

• Process data• Formalized data flows

– does not convey information about the activity’s business logic

• BPMN language, with 2.0 crucial features:– Activity typing (2)– Typed attributes and parameters– Typed and named data, consumed (3) and produced (4)– Links with guard conditions and mapped parameters (5)

9

Page 10: WebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web

BPMN WebML transformation• Transformation rules

– finer-grained Application Model, needing few refinements by the designer• typed activities enables reusable application models• data dependencies are specified at a higher level

– less errors in Application Model design– Faster development

10

(1) One control siteview per pool: Human interaction(2) One control serviceview per pool: WS Choreography(3) One site view per lane: user navigation(4) One site view per lane: business logics of activities and gateways(4) One site view per lane: business logics of activities and gateways(5) Orchestration view: a controller component invokes the activities

Page 11: WebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web

The NEXT unit• The Next unit encapsulates the process control logic• It exploits the information stored in the Process Metadata • It calculates the current process status and the enabled state

transitions • It needs the following input parameters:

– caseID (the currently executed process instance ID)– activityInstanceID (the current activity instance ID)– conditionParameters (the values to evaluate the

conditions)

11

NEXT

Page 12: WebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web

A step-by-step example (1): Extended BPMN model

• the complete BPMN example

12

Page 13: WebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web

A step-by-step example (2): Content model

• The metadata needed for tracking the process execution enacting the web service orchestration

+ application-specific data

13

Page 14: WebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web

A step-by-step example (3): Site- and Service- view

– Views for starting the process / orchestration (manual and service-based)

14

Page 15: WebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web

A step-by-step example (4): Orchestration siteview

– Views for orchestrating the call to the modules (services, hypertext, or gateways)

15

Page 16: WebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web

A step-by-step example (4): Business logics of activities

– Business logics for the XOR gateway (Car vs. House) and the Credit Score remote activity (WS invocation)

16

Page 17: WebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web

Implementation• Extensions to WebRatio, a commercial tool for the

automatic generation of Web applications• Creation of a extended BPMN editor for the

specification of the process models• Set of model to model and model to text

transformations

17

WebRatio BPMN Editor

Page 18: WebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web

Additional investigations • Backward engineering (2): modularization of hypertext

pieces and reuse as activity types through catalogues• Reverse Engineering (3): decomposition of the web

application and extraction of the BP model

18

Page 19: WebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web

Conclusions and future work

19

A modeling framework

• a model-driven design process for service orchestrations

• Helps the initial design of the process

• Helps for its evolution when requirements change

• the extensibility of the model, through the concept of activity types

• the availability of well-established code generation technology

• great improvement in productivity

Ongoing and future work

• industrial implementation

• reverse engineering of BP models

Page 20: WebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web

20

Thank You! Questions?

Come and see us at the booth!(And video on youtube)

Contact:

Stefano Butti

Marco Brambilla

Piero Fraternali

[email protected]

[email protected]

[email protected]

www.webratio.com