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 specied 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).
WebRatio BPM: a Tool for Designing and Deploying Business Processes on the Web
1. WebRatio BPM: a Tool for Design and Deployment of Business Processes on the Web Stefano Butti, Marco Brambilla, PieroFraternali Web Models Srl, Italy ICWE 2010, July 7th 2010, Vienna
3. 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
4. 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
5. 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
6. 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
12. Navigation Models ( content publication and manipulation, page computation, hypertextual links, side effects)
13.
14. BPMN WebMLtransformation 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
15. 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
18. A step-by-step example (3): Site- and Service- view 14 Views for starting the process / orchestration (manual and service-based)
19. A step-by-step example (4): Orchestration siteview 15 Views for orchestrating the call to the modules (services, hypertext, or gateways)
20. 16 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)
21. 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