<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Web-based Editor for YAWL</article-title>
      </title-group>
      <contrib-group>
        <aff id="aff0">
          <label>0</label>
          <institution>Bonn-Rhein-Sieg University of Applied Sciences</institution>
          ,
          <country country="DE">Germany</country>
        </aff>
      </contrib-group>
      <fpage>62</fpage>
      <lpage>68</lpage>
      <abstract>
        <p>This paper presents a web-based editor that o ers YAWL editing capabilities and comprehensive support for the XML format of YAWL. The open-source project Signavio Core Components is extended with a graphical user interface (GUI) for parts of the YAWL Language, and an import-/export component that converts between YAWL and the internal format of Signavio Core Components. This conversion, between the web-based editor and the o cial YAWL Editor, is lossless so both tools may be used together. Compared to the o cial YAWL Editor, the web-based editor is missing some features, but could still facilitate the usage of the YAWL system in use cases that are not supported by a desktop application.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        extensible with new process modeling languages through plug-ins. Unfortunately,
also the SCC project was discontinued in 2011, shortly after the rst release.
Nevertheless, the source-code is still available1, and e orts are made to continue
the development as part of the Apromore2 project [7]. The Apromore project also
includes the YAWL editing capabilities that are presented in this paper. Most
of the SCC editor is implemented with JavaScript that manipulates Scalable
Vector Graphics (SVG) to show and edit process models in the browser window.
For each supported process modeling language of SCC a so called Stencil Set [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]
needs to be de ned.
      </p>
      <p>The new web-based YAWL Editor consists of SCC together with three added
components: the YAWL Stencil Set, a client-side component and a server-side
component. The YAWL Stencil Set includes SVG graphics of all YAWL elements
(e.g. Tasks, Conditions, Edges), all their properties (e.g. description, routing
conditions, task variables) and basic rules regarding their interconnection.
Additional rules that cannot be expressed within the Stencil Set are added through
the client-side component with JavaScript. The server-side component, which is
realized with Java, is responsible to convert between the YAWL XML format and
the JSON format of SCC. This conversion is lossless, therefore work ows created
with the original YAWL Editor can be imported, modi ed with the web-based
YAWL Editor and exported back to the original YAWL Editor.</p>
      <p>In Section 2 the functionality of the new web-based YAWL Editor is
presented, then limitations of the current implementations are discussed in
Section 3, and before concluding this paper related work is described in Section 4.
2</p>
    </sec>
    <sec id="sec-2">
      <title>Web-based YAWL Editor</title>
      <sec id="sec-2-1">
        <title>1 http://code.google.com/p/signavio-core-components/</title>
        <p>2 Apromore is a process model repository, available at: http://apromore.qut.edu.au/
export of the work ow back to the YAWL XML format. The properties Split and
Join determine whether a task has split or join routing behavior. These
properties provide selectable options for all combinations of routing behavior (AND,
XOR, OR) and placement of the visible counterpart on the task node (Top, Left,
Right, Bottom).
In contrast to the original YAWL Editor, which stores subnets of a
workow embedded in the work ow speci cation, upon import of the Orderful lment
process all subnets have been stored separately in the repository. All composite
tasks, like the task Ordering in Figure 1, just store a reference to the target
subnet, as visible in the property Unfolds to net (link). The reference is stored
in form of an URI that points to the subnet in the SCC repository. When
using another repository (e.g. Apromore), then this reference will be an URI that
points to the process model in the external repository. This way, the same
subnet can be used in multiple YAWL work ow speci cations that are stored in
the web-based YAWL Editor. A subnet that is created in the web-based YAWL
Editor may also be exported as the rootnet of a YAWL work ow speci cation.
This allows for more exibility in the creation of work ows, for example the
Payment subnet could be exported as a stand-alone work ow. Of course, during
generation of the YAWL XML format all referenced subnets are embedded again
in order to generate valid YAWL XML.</p>
        <p>The features Highlight Cancellation Region and Unfold to Subnet have been
implemented to show that the web-based YAWL Editor can be extended with
more advanced features of the o cial YAWL Editor. Highlight Cancellation
Region emphasizes the nodes and edges that are in the Cancellation Region of a
selected task. YAWL speci c features, like Highlight Cancellation Region, can be
activated under the YAWL symbol in the menu as indicated by the arrow shown
in Figure 1. The second feature, Unfold to Subnet, supports the user with the
handling of subnets. Upon selecting a Composite Task a context menu appears,
as shown next to the task pay in Figure 2. The user can either open the already
linked subnet, create a new subnet, link the task to an existing subnet that was
created before, or unlink the currently assigned subnet. The selection of an
existing subnet is supported by showing a list of all available YAWL work ows in
the repository of the web-based YAWL Editor.</p>
        <p>The source code of the web-based YAWL Editor is currently available as part
of the Apromore Editor: http://code.google.com/p/apromore/. Additionally,
more information about future development and a demo version is available on
the website: http://www.yaug.org/WebYAWLEditor.
3</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Limitations</title>
      <p>The current implementation of the web-based YAWL Editor provides fewer
features than the o cial YAWL Editor. The most signi cant limitations are in the
area of the resource and data perspective of YAWL. At this stage of the
development, the web-based YAWL Editor does not connect to the Resource Service of
YAWL to look up organizational resources (e.g. Roles, Participants, Secondary
Resources), but the information about the resource perspective of an imported
YAWL work ow is preserved using fragments of the original YAWL XML format.
In a future version, the web-based YAWL Editor could connect to the Interface
R of YAWL to look up organizational resources and manipulate the stored XML
fragment according to the selection. Regarding the data perspective, there is
some support through structured editors, but the web-based YAWL Editor is
missing look up and validation features. Figure 3 shows the structured editor
for the routing predicates. New routing predicates can be added in a structured
way, but the editor in Figure 3 still provides no means of automatically picking
the target task, or checking the XSD expression for validity. The editor for task
variables has similar limitations.</p>
      <p>Furthermore, there are still some minor limitations regarding the visual
appearance of the YAWL work ows in the web-based Editor. SCC does not support
bended edges with bezier curves or splines and it is missing support for exact
positioning of labels. As a result, in the web-based YAWL Editor all labels are
positioned directly under the corresponding YAWL elements and edges using
bezier curves or splines are shown as straight lines.
4</p>
    </sec>
    <sec id="sec-4">
      <title>Related Work</title>
      <p>
        There have already been a few attempts bringing support for new process
modeling languages to the Oryx Editor (predecessor of SCC) similar to this approach.
For example, support for Coloured Petri Nets and UML class diagrams3. The
web-based jBPM Designer4, which is based on the Oryx Editor, is developed
as part of the jBPM project. As it is solely dedicated to BPMN 2.0 it was not
considered as starting point for the development of the web-based YAWL Editor.
Regarding to YAWL and SCC/Oryx the implementation of an automatic export
of BPMN models to YAWL in the Oryx Editor5 using the approach described
3 http://bpt.hpi.uni-potsdam.de/Oryx/OryxScreencasts
4 http://www.jboss.org/jbpm/components/designer
5 http://bpt.hpi.uni-potsdam.de/Oryx/BpmnToYawl
in [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] could be seen as related. The approach is limited to a subset of BPMN
1.2 and can not be used to edit existing YAWL work ows on the web. There is
a YAWL Android Client6 that supports the execution of a YAWL work ow on
mobile devices, but this project does not provide support for the design time of
a work ow. To the best of my knowledge there is currently no other web-based
YAWL Editor available.
5
      </p>
    </sec>
    <sec id="sec-5">
      <title>Conclusion</title>
      <p>With the web-based YAWL Editor, it is possible to create new, and modify
existing YAWL work ow speci cations using solely a web browser. The web-based
YAWL Editor is fully compatible with the o cial YAWL Editor. It has been
tested with the publicly available work ow speci cations, which are distributed
together with YAWL. The web-based YAWL Editor can be o ered as a service
without the need of a local installation, and it can be integrated in existing web
applications. In comparison to the original YAWL Editor some use cases are
simpli ed, like the usage of YAWL in a classroom during an exercise, and new
use cases are made possible, like the interactive presentation of YAWL work ow
speci cations on a web site.</p>
      <p>
        The web-based YAWL Editor is, furthermore, already integrated into the
process model repository Apromore. In the future, using Apromore and the
webbased YAWL Editor features like, for example, version control [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] and process
merging [6] may be available to the YAWL community. Still, there are some
shortcomings with the current implementation of the web-based YAWL Editor
that need to be mitigated. Most of all, better support for the resource and data
perspective of YAWL is needed. Overall with some additional development e ort,
the web-based YAWL Editor could evolve to a bene cial addition to the YAWL
ecosystem.
      </p>
      <sec id="sec-5-1">
        <title>6 http://www.yaug.org/tryOutYAWLAndroidClient</title>
        <p>Schmidt, Jules White, Manfred Hauswirth, Pascal Hitzler, and Mukesh K.
Mohania, editors, OTM Conferences (1), volume 7044 of Lecture Notes in Computer
Science, pages 20{37. Springer, 2011.
5. Marcello La Rosa, Stephan Clemens, Arthur Hofstede, and Nick Russell. Appendix
A The Order Ful llment Process Model. In Arthur H M ter Hofstede, Wil M P
van der Aalst, Michael Adams, and Nick Russell, editors, Modern Business Process
Automation, pages 599{616. Springer Berlin Heidelberg, 2010.
6. Marcello La Rosa, Marlon Dumas, Reina Uba, and Remco M. Dijkman. Merging
business process models. In Robert Meersman, Tharam S. Dillon, and Pilar Herrero,
editors, OTM Conferences (1), volume 6426 of Lecture Notes in Computer Science,
pages 96{113. Springer, 2010.
7. Marcello La Rosa, Hajo A. Reijers, Wil M.P. van der Aalst, Remco M. Dijkman,
Jan Mendling, Marlon Dumas, and Luciano Garca-Bauelos. Apromore: An advanced
process model repository. Expert Systems with Applications, 38(6):7029 { 7040, 2011.</p>
      </sec>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <given-names>Gero</given-names>
            <surname>Decker</surname>
          </string-name>
          ,
          <string-name>
            <surname>Remco M. Dijkman</surname>
          </string-name>
          , Marlon Dumas, and
          <article-title>Luciano Garc a-Ban~uelos. Transforming bpmn diagrams into yawl nets</article-title>
          .
          <source>In Dumas et al. [3]</source>
          , pages
          <fpage>386</fpage>
          {
          <fpage>389</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <given-names>Gero</given-names>
            <surname>Decker</surname>
          </string-name>
          , Hagen Overdick, and
          <string-name>
            <given-names>Mathias</given-names>
            <surname>Weske</surname>
          </string-name>
          .
          <article-title>Oryx - an open modeling platform for the bpm community</article-title>
          .
          <source>In Dumas et al. [3]</source>
          , pages
          <fpage>382</fpage>
          {
          <fpage>385</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <given-names>Marlon</given-names>
            <surname>Dumas</surname>
          </string-name>
          , Manfred Reichert, and Ming-Chien Shan, editors.
          <source>Business Process Management, 6th International Conference, BPM</source>
          <year>2008</year>
          , Milan, Italy, September 2-
          <issue>4</issue>
          ,
          <year>2008</year>
          . Proceedings, volume
          <volume>5240</volume>
          of Lecture Notes in Computer Science. Springer,
          <year>2008</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Chathura</surname>
            <given-names>C.</given-names>
          </string-name>
          <string-name>
            <surname>Ekanayake</surname>
          </string-name>
          , Marcello La Rosa,
          <string-name>
            <surname>Arthur H. M. ter Hofstede</surname>
          </string-name>
          , and MarieChristine Fauvet.
          <article-title>Fragment-based version management for repositories of business process models</article-title>
          .
          <source>In Robert Meersman</source>
          , Tharam S. Dillon, Pilar Herrero, Akhil Kumar, Manfred Reichert, Li Qing, Beng Chin Ooi, Ernesto Damiani, Douglas C.
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>