intuitive and allows to define only the process flow
without take into consideration human and/or system
interaction.
Exploring different notations, our choice is on a
recent notation: BPMN (Business Process
Management notation) (Stephen A., 2004) proposed
by BPMI (Business Process Management Initiative)
that, thanks to its readability and completeness
seems the best way to represent a process. The main
BPMN goal is to cover the semantic gap between IT
and Business experts. BPMN, today, is not a
standard but several companies support it. The
design obtained is clear and it is easy to understand
the actors (human or system) involved in the process
and the relationships between them. BPMN notation
is made up of two different details level:
• core objects made up of base elements that
allow to define a process in the large;
• details may be provided adding properties to
obtain a detail level close to the detail needed in
the implementation phase.
These different details level makes the design
easy to understand not only by experts of the
notation but also by not experts. At the same time,
BPMN allows to provide in the design phase all the
details needed for implementation phase. Core
Objects are made up of four different groups of
primitives (fig.2): each group is made up of different
elements and for each element, there are different
variants. BPMN defines also the context where each
element may be used. As an example, it is not
“legal” the use of Sequence Flow between Lane and
it is imposed to use Message Flow. Starting from
core object it is possible to define another detail
level. As an example, there are different types of
Start event depending on the context where it is
used; each type of start event has its own icon inside
of the general start event icon.
5 PROCESS DEFINITION: A
BPMN PROCESS EDITOR
A look to the business process design tools market
brought us about an important consideration: the
only free way to design a process using BPMN
notation is the use of Visio palette
(
http://www.workflowresearch.de/Downloads/BPMN) but
this design is far from an integrate environment. In
this context, we developed a design tool for process
definition with several goals:
• To hide to the user the notation complexity and
to support the user in the choose of the right
BPMN element in the right context (useful for
business experts);
• To support BPMN notation in all its complexity
(useful for IT experts);
• To export the process design in a machine
readable format (we choose OWL (W3C, 2004)
an ontological language machine readable);
• To provide the same tool to two different type
of user: business experts and IT experts.
• The BPMN editor must be accessible on the
web.
To reach these goals, we started our research
work with the design and implementation of a
BPMN editor. Our effort is oriented to hide to the
final user the complexity of the notation due to the
several primitives and their properties.
The editor, never show all BPMN elements to
the user but drives the user in the choice of the
correct elements in the correct context.
To understand this, in fig. 3 we can see an
overview of possible type of “Events” and related
icons that will be used inside (the same is for other
BPMN elements). Our effort in the design and
implementation of BPMN editor has been oriented
to support user design: the right stereotype depends
on the user action. For example, if the user chooses
an event from the palette (the palette shows only a
circle without start, intermediate or end distinction)
it became automatically a Start Event without any
icon inside. If the Event becomes a target for a
sequence flow and the same Event is a source for
another sequence flow it automatically became an
Intermediate Event (without icon inside). In the
same way if the Event is target for a sequence flow
and it is not a source for any other sequence flow, it
became End Event (without icon inside). Another
feature of the BPMN editor is the support to the
design of the flow. BPMN defines connecting rules
both for Sequence Flow and for Message Flow. User
without experience on BPMN has some problems to
know what kind of connection is legal between two
BPMN elements. To solve this problem our editor
provides only the right interconnection tool:
depending on the context and on the connecting
rules the editor automatically provide the correct
connection. As it regards properties of each BPMN
element, our efforts has been oriented to provide the
user with the capability to insert a property, using a
property form, by the right click of mouse on the
BPMN element icon. In this way, the work area is
only for the process design.
This is an innovative idea because tools on the
market only present all the properties in a single
form and the user may be disoriented. In fig.4,we
WEBIST 2006 - WEB INTERFACES AND APPLICATIONS
378