Generation of WebML Web Application Models ... - Semantic Scholar

14 downloads 73869 Views 184KB Size Report
These applications can be implemented either with the help of a generic workflow management system or using "traditional" Web development tools. However ...
Generation of WebML Web Application Models from Business Process Specifications Marco Brambilla Politecnico di Milano Dipartimento di Elettronica e Informazione Piazza L. Da Vinci, 32. 20133 Milano, Italy +39 02 2399 7621

[email protected] ABSTRACT This short paper aims at demonstrating the integration of workflow specifications with conceptual models for Web application design. In particular, we propose a visual editor of business process diagrams (according to the BPMN notation), which seamlessly integrates into the commercial CASE tool called WebRatio, which allows the designer to model data-intensive and service-intensive Web applications based on WebML (Web Modeling Language) models. A set of model transformations from BPMN workflow diagrams to WebML hypertext diagrams allows fast generation of site skeletons implementing the specified business process. Such skeletons can be modified by the designer that is relieved from the time-consuming and error-prone task of specifying all the details of the workflow constraints.

In this context, hypertext conceptual modeling becomes the best candidate for specification of lightweight workflow-based Web applications, thus transferring the benefits of conceptual modeling and automatic code generation to this class of applications. Figure 1 shows an overall view of the proposed approach: • • • •

through a visual workflow editor, the analyst specifies the business process model to be implemented; the designed workflow model can be processed by an automatic transformation that generates a set of hypertext skeletons implementing the specified behavior; the produced skeletons can be modified by designers by means of CASE tools for conceptual Web application modeling; the resulting models can be finally manipulated by automatic code generators that produce the running Web application.

Categories and Subject Descriptors D.2.2 [Software Engineering]: Design tools and techniques.

General Terms

Figure 1 – Steps of the proposed methodology and tools

Design, Languages, Algorithms, Workflow.

2. WORKFLOWS AND HYPERTEXTS Keywords Workflow, business process, B2B Web application, transformation

1. INTRODUCTION In these days the mission of Web applications is evolving from the support of online content browsing to the management of fullfledged collaborative workflow-based applications, spanning multiple individuals and organizations. These applications can be implemented either with the help of a generic workflow management system or using "traditional" Web development tools. However, both approaches are not optimal: workflow systems are heavy-weight applications not specialized in the design of hypertext interfaces. Conversely, Web development tools are smart in the definition of the front-end pages, but bury control aspects in the server-side code, thus becoming hard to maintain.

Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. ICWE’06, July, 11-15, 2006, Stanford, USA. Copyright 2006 ACM 1-59593-108-2/06/0004…$5.00.

Integrating hypertexts with workflows means delivering Web interfaces that permit the execution of activities and embody constraints that drive the navigation of users. We call these applications workflow-driven hypertexts. Their model-driven development process blends three ingredients, representing orthogonal perspectives: •

The workflow model represents the business process to be executed, in terms of activities, precedence constraints, and actors in charge of executing the activities; • The data model represents the domain objects published and manipulated by the application, and possibly the meta-data necessary for implementing the workflow constraints; • The hypertext model specifies the elements of the interface for executing and tracking the activities, in terms of pages, published content, operations, navigation links, and activity boundaries. In previous works we have defined the workflow-specific features [BC+03] as an extension of the WebML language [CF+02] (see webml.org), a high-level notation for specifying Web applications. WORKFLOW MODEL. Many standard notations have been proposed to express process structure. For our implementation we adopt the Business Process Management Notation [BPMN], which covers the basic concepts required by WfMC (Workflow Management Coalition), and is compatible with Web services

choreography languages (e.g., BPEL4WS) and standard business process specification languages (e.g., XPDL).

verifications by employees. After both are completed, the manager takes the final decision.

DATA MODEL. The extensions to the ER models include some standard entities for recording activities, activity instances, and process cases, thus allowing to store the state of the business process execution and enacting it accordingly.

The tool is designed to be flexible and extensible. It can manage user-defined properties of objects and new XSLT transformations of the workflow models. The workflow schema is stored as an XML document and WebML models are generated using XSLT technology. Generation rules have been built based on the experience and the theory presented in [BC+03]. In particular, the tool produces a WebML model in terms of application data model, workflow metadata, and hypertext diagrams. To facilitate the transformation, a pattern-based approach has been adopted: two BPMN elements at time are considered for defining the basic rules; the whole transformation is obtained by composing such rules.

HYPERTEXT MODEL. Some of the new hypertext primitives can be seen in Figure 3. Start activity and End activity units delimit the portion of hypertext associated with the execution of an activity. Assign operations are conceived for connecting application object(s) to an activity instance, typically to specify the future job to be performed on it. Objects connected to the instances of a particular activity can be retrieved by means of workflow-aware content units (e.g. indexes). Finally, If and Switch units can be used to express navigation conditions. WORKFLOW-HYPERTEXT MAPPING. Workflow activities are realized in the hypertext model by suitable configurations of pages and units, enclosed between Start activity and End activity operations. Workflow constraints are turned into navigation constraints among the pages of the activities and into data queries on the workflow metadata for checking the status of the process, thus ensuring that the data shown by the application and the user navigation satisfy the constraints described by the process specification. [BC+03] describes the mapping between each workflow pattern and the corresponding hypertext, by expressing the precedence and synchronization constraints between the activities as hypertext primitives. An example of generated hypertext skeleton for two activities is shown in Figure 3.

Once the transformation has been accomplished, the result can be opened automatically within WebRatio (www.webratio.com), thus allowing the designer to refine the generated hypertext and to implement the internals of each activity. Figure 3 shows the hypertext generated for the two parallel activities of the example. Notice that the internals of the activities is not modeled yet, because no annotation was provided on the workflow. The designer is in charge of specifying the content of the activity, but not the workflow constraints, already in place.

Our approach supports all the main WfMC precedence constraints, which include sequences of activities, and AND-, OR-, XOR- splits and joins. Since no semantics is implied by the activity description, the generated skeleton can only implement the empty structure of the activity, whose internals must be specified by the designer.

3. DESCRIPTION OF THE TOOL The implemented prototype tool (see Figure 2) allows to design BPMN diagrams and to automatically generate the corresponding WebML hypertext models. The tool provides also sub-process primitives, according to the BPMN specifications. This multi-level representation of the workflow can be flattened in a single level workflow schema, from which the hypertext can be extracted.

Figure 3 – Webratio hypertext editor interface

4. CONCLUSIONS We proposed the implementation of a tool that allows to visually design workflow models and to automatically generate high-level hypertext models in WebML language, with great advantage in terms of designer productivity. Future work will address specification of the missing BPMN primitives, such as intermediate events and message flow, for implementing also distributed processes. Implementation of semantic annotations of concepts will be extended too.

REFERENCES [BC+03] M. Brambilla, S. Ceri, S. Comai, P. Fraternali, I. Manolescu. Specification and Design of Workflow-Driven Hypertexts. Journal of Web Engineering (JWE), vol.1(2), 2003. Figure 2 – Workflow editor user interface Figure 2 shows the BPMN specification of an online loan request. An application request is issued by an applicant, and is submitted for validation to a manager of the loan company. After the validation, the request is assigned in parallel to two distinct

[CF+02] S. Ceri, P. Fraternali, A. Bongio, M. Brambilla, S.Comai, M. Matera. Designing Data-Intensive Web Applications, MorganKaufmann, December 2002. [BPMN] Business Processing Modeling Notation (BPMN), OMG, Version 1.0, 2006, in www.bpmn.org.

Suggest Documents