business process -based conceptual design of rich internet applications

15
Marco Brambilla, J.Carlos Preciado, Marino Linaje, Fernando Sánchez-Figueroa Business Process - based Conceptual Design of Rich Internet Applications

Upload: marco-brambilla

Post on 15-Nov-2014

1.733 views

Category:

Technology


0 download

DESCRIPTION

 

TRANSCRIPT

Page 1: Business Process -based Conceptual Design of Rich Internet Applications

Marco Brambilla, J.Carlos Preciado, Marino Linaje, Fernando Sánchez-Figueroa

Business Process -based Conceptual Design of

Rich Internet Applications

Page 2: Business Process -based Conceptual Design of Rich Internet Applications

Summary

• Motivation and objetives• RIA modeling foundations• RIA modeling foundations with BPMN

• Data modeling• Business Logic modeling• Communication modeling

• Transforming from BPMN to WebML and RUX models• BPMN to WebML transformations• From WebML to RUX-Method transformation (Presentation

modeling)

• Case Study

Page 3: Business Process -based Conceptual Design of Rich Internet Applications

Motivation and objetives

MotivationComplexity of tasks is increasing

(multimedia, interaction and processing) HTML is showing its limits. Developers

migrating to Web 2.0 (RIA)

Paper objectivesRepresenting RIA

modeling foundationsIntegrating Web

Engineering proposalsInclude in the

development BP modeling

Page 4: Business Process -based Conceptual Design of Rich Internet Applications

Basic RIAs modeling foundations

Page 5: Business Process -based Conceptual Design of Rich Internet Applications

Representing RIA modeling foundations with BPMN

• For specifying BP models BPMN and its companion metamodel BPDM. • the BPMN to generate later the design of data,

business logic, communication, and presentation• interpretation of the BPMN models that fits the needs

of RIAs• define a translation to the various aspects of the

application.

• An intermediate level of abstraction is required:• activities and events specified in the BP model should be the

ones that trigger the behaviour of the business logics and of the presentation components.

Page 6: Business Process -based Conceptual Design of Rich Internet Applications

Representing RIA modeling foundations with BPMN

• BPMN models for RIAs is to specify the distribution of the computation and data storage between client and server.

• pools and lanes must be organized:• pool actor/role of the Web application. • each pool is composed by a set of predefined

lanes that must be marked as: CLIENT, SERVER, and (optionally) CLIENT-SERVER.• Client and server lanes will comprise aspects that

will stand/occur just in one of the sides• client-server lane may be used to represent

common issues.

Page 7: Business Process -based Conceptual Design of Rich Internet Applications

Data modeling

• BPMN data objects can be exploited for inferring the basic information concepts in the data model of the application.

• Data distribution (client or server) and persistence (persistent or volatile) can be described in the BPMN: • Data objects are represented inside the client or the

server lanes• Persistence is described by the state attribute (‘P’ or

‘V’) within the data object• Special considerations:

• When the same name is used by two data objects, these data objects are considered the same

Page 8: Business Process -based Conceptual Design of Rich Internet Applications

Business Logic modeling

• BPMN allows representing the business logic by using the control flow (arrows), connection objects, artifacts, and lanes. • Client and Server lanes indicate those elements that will

stand/occur at one of the sides, while mixed business logic can be specified in the Client-server lane.

• The client-server lane is useful for two different scenarios:• To perform the same operation twice (once at client and later at server

side).• On BPMN collapsed sub-processes where their expansions involve

processes both in the client and in the server lanes.

• Special considerations:• relation between the activities and the data associations.• Directionality (depicted by an arrow) added to an association

shows whether the data object is an input or an output to the activity

Page 9: Business Process -based Conceptual Design of Rich Internet Applications

Communication modeling

• we focus in the native communication mechanisms that these applications provide. • We must notice that in RIAs the servers are also able

to begin a conversation, by means of PUSH communication paradigms (plus traditional client-server PULL communication).

• BPMN control flow arrows are used to describe communication between activities of the processes. • The kind of communication (push or pull) can be

immediately derived from the direction of the arrow from the origin to the target.

• Control flows can be refined by a text annotation specifying whether the transmission is synchronous (‘S’) or asynchronous (‘A’).

Page 10: Business Process -based Conceptual Design of Rich Internet Applications

Transforming from BPMN to WebML and RUX models

• In our proposal, the information specified in the BP is used by the WebML model as a high level specification of the hypertext behaviour

• The design steps can be summarized as follows: (1) • design of the BPMN model

(2) • automatic generation of preliminary data model and navigation model, which need further refinement by the designer

(3) • extraction of the abstract RUX-Method user interface model

(4) • definition of the RUX-method concrete model

(5) • implementation of the application through automatic code generation

Page 11: Business Process -based Conceptual Design of Rich Internet Applications

BPMN to WebML Transformation

Process metadata model (RIA specific information is in bold red font).

User Metadata

ActivityType

NameDescriptionCreationTimeVisibility

User

UsernamePassword...

Group

Name...

0:N

1:1

Activity Instance

StatusStartTimeStampEndTimeStampVisible

Case

StatusNameStartTimeStampEndTimeStamp

0:N 0:N

0:N

1:1 1:N

Assigned To

1:1

0:N

1:1

Process

Name1:1 1:N

0:N

1:N

Default

Assigned To

PartOf

PartOf

1:1

0:N

InstanceOfInstanceOf

0:N 1:1

Executed By

Process Metadata

Page 12: Business Process -based Conceptual Design of Rich Internet Applications

From WebML to RUX-Method transformation

Page 13: Business Process -based Conceptual Design of Rich Internet Applications

Case Study

1. a product list on which filters, searches and selections can be applied; on the right side

2. the details of the selected product; and at the bottom 3. the shopping cart4. drag&drop

Page 14: Business Process -based Conceptual Design of Rich Internet Applications

Case Study

Page 15: Business Process -based Conceptual Design of Rich Internet Applications

Case Study