Home
        Editor 2.0 User Manual
         Contents
1.                 lii  l  zevin uob u                                           1  MVR mo                              1  Obtaining the Latest Version of YAWL             ccccccccseecceceeeeeeeeeeeeeeeseeeeeeeseeeeeeesaeeeeeeseageeeeeas 1  DP VPA Ve OUI AON Em m 1  The YAWL Architecture                       eeeseesssesssessseeeeeee nennen nnne nennen nnne nnn nennen sna sra nns 1  T Home TT TET 2  Lia NOW MR E                                        n 2  Launching thie YAWL AE GIOF ge EU T MIT 4  Tne YAWL Editor Works RAGE TT UT 5  Mona TOODA Room 5  Specification Maintenance           eccccceeeccccceeeeeeceeeeeceeeeeeeeeeseeeeeeesueeeeeeseaeeeeessueeeeessaeeeeesaaeeees 5  Specification Verification  Analysis Exporting  amp  Importing               cccccseeeeseeeeeeeeeeeeseeeeeseees 5  psit cinsincatiuensadosrcastnen tuntiansscouenguneuiealatnam iosvealdunrian seep EAEE 6  ELODOT eena a E EE ee eee 6  AODIment QO HONS aae E E E E E 6  e   16  az MR NER 6  RCS AO BIS sobre parue inn ox uUo sae tcad idee bin utra dues mis PUMP MEUM M MUI EEEE 6  ZOOM  OPO ENTE TNT 6  Palee elc RN UU E 7   Meam fic NE ses cere awe ence yeas EU             m 7  COMPO E Ess   Cees meee me en enn brum quac ee ee nee eee IM MEN 7  Multiple Atomic Task             ccccccccccsecccseeceeseceeeeeceuceceucessaeeeceueecsesessueessaeeeseeensueessaeessaeessaess 7  Multiple Composite Tasks             cccccceeeeccceeeeceeeeeeeceeeeeeeceeeseeeeeeseeueeeessaaeeeeseaeseesseaeeeeseaaeeees 7  CONO TER E T m 7  NWAT
2.       Fig  32 Updating Parameters for a Task       3  Inthe Input Parameters section  click on Create     An Update Task Pa        rameter dialog box will appear     If you have already set up a Task Variable for this task  then the Exist   ing Task Variable option will be activated and there will be a list of task    YAWL Editor v2 0 User Manual    38    variables to choose from  Choose a variable from the list and click on  Done  then Done again to close the task parameters dialog     If you haven t set up Task Variables  then click on Create    and return  to the previous section in the manual for Task Variable     If you are familiar with XQuery syntax  then you can paste in an XQuery  to allow manipulation of the Input Parameters   Syntactically well  formed  XQueries will be green  and badly formed ones will be red   Again  red text will be accompanied by a split pane table  returning the  parse errors that cause the text to be badly formed     For workflow designer convenience  two XQuery buttons are supplied  to generate XQuery expressions from available net variables     The add XQuery of element s content only button will return just the  content of the XML element for this variable  which is useful for simple  state transfer between two variables of the same XML Schema type   and expected to be the typical button that users will start out with     The other button  add XQuery of entire element  will return the entire  XML element of the selected variable  which is 
3.     In the Output Parameters section  click on Create  An Update Net Pa   rameter dialog box will appear  similar to Fig  33      If you have already set up a Task Variable for this task  then the Exist   ing Task Variable option will be activated and there will be a list of task  variables to choose from  Choose a variable from the list and click on  Done  then Done again to close the task parameters dialog     If you haven t set up Net Variables  then click on Create    and return to  the previous section in the manual for Adding a Net Variable     If you are familiar with XQuery syntax  then you can paste in an XQuery  to allow manipulation of the Output Parameters   Syntactically well  formed  XQueries will be green  and badly formed ones will be red     For workflow designer convenience  two XQuery buttons are supplied  to generate XQuery expressions from available task variables     The add XQuery of element s content only button will return just the  content of the XML element for this variable  which is useful for simple  state transfer between two variables of the same XML Schema type   and expected to be the typical button that users will start out with     The other button  add XQuery of entire element  will return the entire  XML element of the selected variable  which is useful for times when  you want to create a complex type expression from individual variable  elements  Experience with XMSchema and XQuery are necessary to  understand the effects this button wi
4.    Editor 2 0 User Manual       2008  The YAWL Foundation    Document Control    pate   Amer   version   change O    2 Sep 2004  27 Sep 2004  17 Oct 2004    26 Oct 2004    Sean Kneipp  Sean Kneipp  Sean Kneipp    Sean Kneipp    0     0 2    0 3    0 4    Initial Draft  Data Perspective  Updated Editor Version    Updated Engine Integration    25 Nov 2004 Lindsay Bradford 5 Sync with Editor 1 1    04 Feb 2005 Lindsay Bradford Finalised Release  25 Feb 2005 Lindsay Bradford Sync with Editor 1 1 1  17 May 2005 Lindsay Bradford Sync with Editor 1 2  27 Oct 2005 Lindsay Bradford Sync with Editor 1 3  25 Feb 2006 Lindsay Bradford Sync with Editor 1 4  19 May 2006 Lindsay Bradford Sync with Editor 1 4 1  12 July 2006 Lindsay Bradford Sync with Editor 1 4 2  10 Aug 2006 Lindsay Bradford Sync with Editor 1 4 3    07 Dec 2006 Jessica Prestedge Sync with Editor 1 4 5    01 Aug 2007 Lindsay Bradford 10    Sync with Editor 1 5    24 Jan 2008 Lindsay Bradford 2 0 beta    15 May 2008 Marcello La Rosa    Sync with Editor 2 0 beta    Synch with Editor 2 0       How to Use This Manual       This manual guides users through the YAWL Beta 8 2 installation process  After a  brief introduction to YAWL  two separate YAWL installation processes are described     1  automatic installation via an installer  only for Windows XP      2  manual installation via a binary distribution     YAWL Editor v2 0 User Manual T    Content    BDO UMON ONO BN T um li  mie to Use fhis Manual RUE Tm i  Mos M E          
5.    Enroll    task     E Update Task Decomposition  Enroll       Standard i Extended Attributes    Task Decomposition Label   Enrall      Task Decomposition Variables    Marne Type    YAWL Registered Service Detail    YAWL Service          Done Cancel       Fig  29 Updating variables for a task    Click on the Create    button  An Update Task Variable dialog box will  appear     Enter the Name of your variable  choose the Type of the variable from  the list  click Done  then Done again to exit the task decomposition de   tail dialog     Type in    StudentNumber    for the name of the variable and choose the  type string  Fig  30      Create another variable for the same task  called  SubjectCode  with  the type being string and usage being Input  amp  Output  Click Done  Fig   31      The    Enroll    task now has two variables   StudentNumber  and    Sub   jectCode      YAWL Editor v2 0 User Manual 36    Update Task Yarable     StudentNumber  Standard   Extended Attributes    Name  StudentNumber   Type   Usage   Input  amp  Output      Initial Value        Fig  30 Updating the Task Variable    Update Task variable  SubjectCode  Ed    Standard Extended Attributes    Initial Value     Cancel       Fig  31 Updating another Task Variable    Task Parameters    Both Input and Output Parameters can be assigned to any tasks to allow the passing  of state between nets and their tasks  and between tasks and workflow engine users  and web services     Input Parameters use an XQuery to m
6.   Allocating a work item for this task to one of the users offered the work item is to be done by   2 User   System    Starting an allocated work item of this task is to be done by     User     gt  System       Fig  46  Step 1 of the resource management wizard    Step 1    In Step 1 we can specify the interaction strategy for work items of the selected task   There are three interaction points     e offer   e allocation   e Start     If we choose that offered work items are dealt with by the User and not by the Sys   tem  at run time an Administrator will have to decide who to offer the work item to   Otherwise  in Steps 2 and 3  we can specify to whom work items have to be offered  by the System     If we choose that allocated work items are dealt with by the User and not by the Sys   tem  any participant who has been offered the work item  can choose whether to  commit to future execution of this work item  i e  to allocate the work item to them     YAWL Editor v2 0 User Manual 54    selves   Otherwise  in Step 4 we can specify how work items have to be offered by  the System     Step 2    In Step 2  shown in Fig  47  we can select resources that will be offered work items  of the selected task  The set of resources can be determined by the combination of  Participants and Roles  These can be picked from the respective lists and or from  variables of type string  which hold the id of a participant or the name of a role     B Manage Resourcing Wizard for Atomic Task Approve 
7.   Begin My  Career  i Studv  B Flow detail for Atomic Task  Begin My Career        Target Task Predicate  Attend University Cruel     Study Privately    The bottom most flow will be used as the default     Done       Fig  35 Updating the Flow Detail    Multiple Instance Queries    Multiple Instance Tasks need extra detail for data manipulation  The    Queries    tab   available by right clicking on a multiple instance task and selecting Set Instance De   tail     The    Queries    tab allows you to manipulate multiple instance data for the task     Right click on the task and choose  Ensure that you are viewing the    Queries    tab of  the dialog  as per Fig  36     YAWL Editor v2 0 User Manual 42      Multiple Atomic Task   Instance Detail     X       Bounds   Queries    Multiple Instance Variable       Accessor Query    ooo O    Splitter Query    ii    e a ER REET RARE TS    Instance Quer    oo Ol    3   UDUPPUPUPPPPUUUOEPUDUPUPPUDPUPPUPUPEPUCEUPPPCOPUPUPEDUUUPUPPUPUPUUEPPPUCPUPUPUUPUPPPPUEPEPPPEPPUPPPPECPPEPCOOPEEE    Aggregate Query         Result Net Variable          Fig  36  Data manipulation for Multiple Instance Tasks    To successfully specify multiple instance data manipulation  you first need to select  which of the task   s decomposition variables will be used as the    Multiple Instance  Variable     This variable needs to contain  or can derive  a number of unique values  that will be separated with the Splitter query to pass a unique value per each in   stanc
8.   Bg Update Data Type Defimtions      xs schema xmlns xs  http   www w3 orq a  0n01l7 xMLSchema      xxs complexType name  Geek  gt   ME  SEQUENCE gt     xs element name  Mame  type  xs strinq       amp xs element name  Salary  types xs idouble     z XS s8mguence   z xst conplexType     xxs complexType name  BookE     Zxs sequence minlccurz z l  maxOccurs  1  gt     xs element name  ritle  type  xs strinq        xs element name   author  type  xs string       z X83 s8mguence    z xs complexType       xs complexType name  BookList    Zxs sequence minlccurzs z l  maxOccurs  5  gt     xs element name  book  type  Booh    gt    lt ra  Sequence gt      xs  conplexType gt     z x8 28c0henma     tat tttte tt a aN Be a RR Be ttt tutta ttt tutt te attt ts ttt tte tatuta tuta t tutta  Invalid   ln  19 col  43   src resolve  Cannot resolve the name  Boo  to       Done Cancel       Fig  23 When the data type definition is invalid    4  Open the Data Type Definitions dialog and type in the XML text that  appears in Fig  22     The above example creates a complex data type called  Geek  that has two separate  sub components   Name  and  Salary  of type  string  and  double  respectively  As  depicted in Fig  24  the new data type  Geek  is available to choose when creating a  task or net variable  Variables with a usage of  Local  can have initial values speci   fied for them  as depicted in the same figure  As with the data type definition dialog   parse errors will be listed when the ini
9.   Elements    The Elements Menu allows you to align net elements within your specification  modify  their size or add or remove net elements from task cancellation sets     Tools    The Tools Menu allows you to specify a running engine that the editor should con   nect to so you can tailor your workflow designs to specific modules and web services  Installed in the engine  Included in this menu is an option for configuring specification  analysis  With this release of the editor  an amount of default specification analysis is  offered as part of the editor  If the wofyawl analysis utility is also supplied in the  same directory as the editor  the configuration dialog will allow specification design   ers to configure and use wofwawl for additional specification analysis  Also  for re   source allocation  this menu offers a dialog to identify an organisation database from  which resourcing detail can be retrieved     View    You can use this menu to turn off or on the Tooltips  which provide useful hints when  your mouse is positioned over a toolbar button or an option in a pop up dialog win   dow  obtained by right clicking on the canvas  It also allows you to change the font  size used for element labels  toggle whether diagrams should be drawn anti aliased  and toggle whether grids should be drawn with diagrams  Finally  it allows users to  select one net from all available for editing     Help    The Help Menu provides details of the YAWL Editor copyright as well as Acknow
10.   Multiple Instance Task EXample             ccccccccsecesseeeeseeeeeeeeeseeeeseeeeseeeeesaeeesaeeesseeesseeesaneesaes 61  Iiiutzedg  scus AM                                             61  KNOWN TIUS PRIOR 63  MOTOS SOO UO HM MN UU er 64  Mole  ale   11 NOCO NR UT s 65  Acknowledgements                     sssesssssssssseesseeeee enne nnn nnn snn nnns nas n ss na annes sn sss a nnns na nnn nns 65    YAWL Editor v2 0 User Manual IV    Welcome to YAWL    What is YAWL     Based on a rigorous analysis of existing workflow management systems and work   flow languages  we have developed a new workflow language called YAWL  Yet An   other Workflow Language   To identify the differences between the various lan   guages  we have collected a fairly complete set of workflow patterns   http   www workflowpatterns com   Based on these patterns we have evaluated sev   eral workflow products and detected considerable differences in expressive power   Languages based on Petri nets perform better when it comes to state based work   flow patterns  However  some patterns  e g  involving multiple instances  complex  synchronizations or non local withdrawals  are not easy to map onto  high level  Petri  nets  This inspired us to develop a new language by taking Petri nets as a starting  point and adding mechanisms to allow for a more direct and intuitive support of the  workflow patterns identified     YAWL can be considered a very powerful workflow language  built upon experiences  with languag
11.   supplied by a running engine  below     Choose the runtime allocation mechanism   Round Robin  by time       Round Robin  by time   Random Choice  Shortest Queue         test Queue      suauu PEES    Round n  by frequency           Fig  49  Step 4 of the resource management wizard    YAWL Editor v2 0 User Manual 56    Step 5    In Step 5  shown in Fig  50  we can specify participant task privileges  For example   we can specify whether certain participants are allowed to suspend the execution of  work items of the selected task  For each privilege it is possible it is possible to use  the base distribution set  by selecting the radio button Yes  or to refine the distribu   tion set  by pressing the radio button Yes  refine  If No is selected  no resource holds  the privilege  For each privilege that has been set to Yes  refine  a new Step will be  prompted  showing the base distribution set for restriction     E Manage Resourcing Wizard for Atomic Task Approve Purchase Order       step 5   Establish Default User Runtime Privileges    Can a user suspend a started work item of this task       amp  No    Yes C Yes  refine   Can a user reallocate a work item of this task to another user  resetting state  No    Yes   gt  Yes  refine  Can a user reallocate a work item of this task to another user  retaining state   2 No   Yes    Yes  refine  Can a user deallocate themselves from a work item of this task  No    Yes    Yes  refine   Can a user delegate a work item of this task to s
12.  Condition  the    sym   bol   and click the left mouse button once to place an Atomic Task    3  Set the decomposition of this task by right clicking on the  Atomic Task and choosing Select Task Decomposition  You should  see a dialog as per    4  Fig  4     5  Press the Create    button  and in the following window   Update Task  Decomposition     enter the decomposition s label     YAWL Editor v2 0 User Manual 11    See the    Select Task Decomposition    section of this manual for a full  explanation of its features          Atomic Task T    Set decomposition to            Fig  4 The  Select Task Decomposition  dialog       6  Setthe label to    Begin My Career     and click the Done button     7  Note that by default  a task takes on the label of the decomposition that  it is tied to  several tasks are allowed to share the same decomposi   tion   Once you ve task created your task  you are free to relabel the  task to whatever you like  This can be done by right clicking on the task  and choosing Set Label    from the pop up menu  This will not change  the name of the decomposition to which the task is tied     8  Connect the Input Condition to your Atomic Task  as shown in Fig  5  by  finding the flow connectors that appear as small blue boxes as you  hover your mouse over the sides of the objects  Hold the left mouse  button down and draw a line from the flow connector on the Input Con   dition to the one on the Atomic Task  The editor will only show a con   nection po
13.  In accordance with this editor s copyright licence  the source code may be obtained from the YAWL  SourceForge website     http   sourceforge net projects yawl      Acknowledgements       This documentation includes feedback from Marlon Dumas  Lachlan Aldred and Ar   thur ter Hofstede     YAWL Editor v2 0 User Manual 66    
14.  attributes referring to task decompositions must  be defined in a file named DecompositionProperties  no extension   The files are  read at the next editor   s restart     Attributes can be of type string  boolean  enumeration and xouery  The following is  an example of property file which defines the attributes description  help  mode  re   fresh and skipSchemaValidation  comments are indicated by a line starting with         Decomposition Attributes    Wed May 14 17 35 42 AET 2008  description xquery   help string  mode enumeration normal  final  pending   refresh xquery  skipSchemaValidation boolean    From the editor  the user can visualize and edit the list of attributes by selecting the  tab Extended Attributes from one of the following dialog windows       Update Task Decomposition      Update Net Variable      Update Task Variable    Fig  52 shows the rendered list of attributes for the above property file     Note that attributes can only be specified through property files and not from the  above files     YAWL Editor v2 0 User Manual 60    Update Task Decomposition Prepare Route Guide       Standard Extended Attributes    Mame Value  description       Fig  52 The dialog for editing the extended attributes associated to task decompositions    YAWL Editor v2 0 User Manual    61    Illustrative Examples    Multiple Instance Task Example    The example save file below  supplied with the editor source  gives you an example  of how to process a simple multiple instance 
15.  be removed as an option     Right click on    Attend University  and choose View Cancellation Set   as per Fig  20       e  My Career    J    a   e eine  gt m   Hl    4 Ctrl C   Begin My   i    Delet   Career uds   st View Cancellation Set    Priv Toggle viewing ofthis tasks cancellation set     EH Task Decomposition Detail          Update Parameters       Fig  20 Viewing a task s cancellation set       3  Next  using the Enter Marquee Selection Mode button      from the  Palette Bar  choose a task  condition or implicit condition to add to the  Cancellation set  Hold down the shift key to select more than one ob   ject for cancellation     YAWL Editor v2 0 User Manual 29     gt  select the    Study Privately    task and the Flow Relation preceding it   IE        4  Click on the Add Selected Items to Visible Cancellation Set button      on the Menu Toolbar     ltems will be coloured red to indicate belonging to the cancellation set   see Fig  21      gj Add the  Study Privately  task and the preceding Flow Relation to the  uu cancellation set     5  Once you have established the cancellation set  you can right click on  the cancellable task and tick off View Cancellation Set option     E    a                  Begin My    Er p  Get A Job Career  Career Started  study   Privately  cU                 MES  I     J     l          Fig  21 Adding elements to a Cancellation Set    Notes about Cancellation Sets     e A Cancellation Set that has been created will remain in the workflo
16.  name by clicking on the Net Menu and choosing  Update Net Detail        We are going to call this new Net    Study Privately    11  Return to your original Net and right click on your Multiple Composite  Task and choose Unfold to Net  You will then be given a drop down  list with all the Nets Available     choose the Net for this task to initiate  and then click Done      Choose    Study Privately      12  You can now complete your new    Study Privately    Net represented by  your Composite Task   y Create the following Atomic Tasks in order and then link them with Flow  us Relations as per Fig  12   e Head a Book  e Feel Smarter  Don t forget to validate your specification   Conditions    Conditions represent a states of the workflow and can be located in between tasks     To create a Condition     1     Click on the Add a Condition button       in the Palette Bar or right click  in the whitespace of the Net and choose Condition     Go to the  Study Privately  Net  We are going to place a loop Condition  after the Read a Book Atomic Task  to determine whether we gained  any knowledge from the book  We will add the new Condition next     Place your Condition in your Net and set the name by right clicking on  the Condition and choosing Set Label     YAWL Editor v2 0 User Manual 20       Call this Condition    Knowledge Gained        Now link to the Condition using the Flow Relations object     Begin My    nat GetAJob Career  Career started    Privately    Do Subjects Pass Al
17.  scenario specification    YAWL Editor v2 0 User Manual       45    Connections    Connecting to the YAWL Engine    In order to generate specifications that can be executed by the YAWL Engine  it is  required to establish a connection between with the latter     For this release of the editor  the engine behaviour available is limited to a number of  web services that the engine has been configured to interact with  Further detail on  specifying web services to have the workflow interact with can be found in the next  section     To set establish connection with the YAWL Engine   1  Click the Tools Menu and choose the Set Engine Connection item     2  From the resulting dialog  Fig  39   accept the default values or enter the following  engine details     e YAWL Engine URI   e Administrator s User Name     e Administrator s Password       Specify Engine Detail    YAWL Engine URI  http  2 r    0 1 8080 vawlila    User Name   admin    Password   eese   Test Connection    Successfully connected to a running engine with the above detail     Done Cancel       Fig  39 Specifying the YAWL Engine connection detail    The YAWL Engine URI value is set by default to a locally installed Engine   http   localhost 8080 yawl ia   The User Name and Passwords are set to  the default administrator user  name z admin   password  YAWL         As a user convenience  a button called Test Connection is supplied  which will at   tempt to connect to a running engine with the detail supplied before th
18.  teeth in  the meantime     e  f you suspect editor save file corruption  run your editor from the command  line  and be on the lookout for exception stack traces  The detail of these stack  traces is needed for tracking further problems of this nature     e Only the initial values defined for net  Local  variables will influence running  engine workflows  All other usage types  Input Only  Output Only and Input  amp   Output  will not make use of initial values defined for them in the running en   gine     e The editor does not currently support XML Schema elements when defining  data to pass through a workflow  Hand created engine specification files that  use   element   tags for data transfer will fail on editor import attempts  Convert  these into their equivalent  lt name gt  lt type gt  tags to get editor import working as  expected     e Editor Import functionality does not currently import resource perspective de   tail from an engine XML specification file     e We need to find a way of getting the clipboard to notify listeners of updates   Currently  we kludge up whether the  Paste  action can be activated by simply  turning it on when an editor user uses    Cut    or    Copy    in the same editor  Edi   tor elements cannot currently be cut paste across two running editors on the  same machine     e  he menu item  Print Specification  freezes if not used for some time     YAWL Editor v2 0 User Manual 64    Troubleshooting    The YAWL Editor is not responding to my 
19.  to allow a workflow designer to more easily  manage variations of the specifications they export     e The palette bar can now be resized via a sliding bar  mostly to allow a clear  view into a deep icon tree  However  given a couple of Swing limitations  the  palette bar can no longer be detached from the base editor window     e Via the plugin mechanism  workflow designers can now specify extra attrib   utes  so called extended attributes  to be stored on variables and decomposi   tions which will be exported into the engine specification  and used as required  for their own custom services     e Small change to the pause mechanism used at editor startup to make better  usage of system CPU     e Fixed a bug where the path of plugin icons was absolute  stopping plugin task  icons from working on machines where the plugin path is different     e Fixed a bug where the view menu would occasionally show the wrong icon for  a net     e Fixed a bug where the paste of a copied net element would result in the copy  having the same engine ID as the original  disrupting correct engine ex   port validation behaviour     e Fixed a bug where engine validation was failing  claiming that max instances  was smaller than min instance on multi instance tasks when max instances  was set to infinity     e Some refactoring around saving  closing and exiting to ensure that whenever  a user cancels their desire to save  close or exit  they are returned to the edi   tor correctly     e Fixed a bug
20.  where predicates and flow priorities were occasionally being reset  on tasks with XOR OR splits     e  he behaviour to iconify nets has been removed  This is mostly due to occa   sional odd behaviour witnessed with Swing that is outside the control of the  programmer  causing undue grief     e Fixed a bug where multiple instance tasks were not being initialised properly  and consequently causing a number of dialogs  and behaviours around multi   ple instance tasks to fail     e Changed the ordering of menu items on the vertex popup menu so that the   Cut  action no longer appears at the top of the menu     e Fixed a bug where cutting a task with attached flows containing predicates     then undoing the cut  would result in a previously correctly validating specifica   tion to stop validating     YAWL Editor v2 0 User Manual 3    e Enhanced the editor so that it shows a broken icon if the icon specified cannot  be found  useful for transferring specs between machines with different icon  sets plugged in      e The editor is now closer to  but not perfectly  rebuilding the state of the net  frames on a load  as per how the workflow designer left the state on a save     Fixed a bug where the editor was reacting poorly to an exception being thrown in an  engine client side API call when attempting to connect to a non existent engine     Launching the YAWL Editor    Download the latest version from the YAWL SourceForge website     http   sourceforge net projects yawl    Double cl
21. OUCC  SCC CH ON NEN 7  Biel  diio T                                             8  SIUS MAUI mI RETE 8  4 7      cT                8  Specification Problem Table               ierit errante codon nens c y Res iaaa 8  Background task progress bar                      eese eene eene nnne nnn nnn nnns nnns 8  Menus NE W e                   om 8  DDOCIICA OL gaye E E E E E E E E A E E E UE EU 8  NO Tea E E wevestadenesnaauiustaucesediiecmes 9  EOI ae E wos ete dene oe E E 9  Bee MS E E E E TEE I T E EN ATT 9  TOONS                                               M                  Y                               9  ds pm                                    9  mime                                                        9  Creating Your First Specification                      seeeeeesssessssssesseeeeee nennen nennen nnne nnn nnn 10  eM T                                  10  iif aeS t                                                10  eise Your First SOCCIIC ANON ETT 10  ATOMIC ASS aa a E E E nats  11  TaS De oO RTT                                           Em 13  Creating Splits and JOINS           cccccccceecceccseeeeeeceeeeeeeeeeeseeeeeeeeeeseeeeeesseaeeeeeseaeeeessaeeeessaeeees 13  COMPOSE TA E eaen E EE E iater issu sites eee Enea EM e 15  Multiple Atomic ASKS  sisssscosbuniviauitizvinbuneserpeUen irn iU r E AEA a Ep UTER UPS 16    YAWL Editor v2 0 User Manual Ii    Multiple Composite TasKS      cece tossrececesectuzdnsdannsaceaeteatoauvttestulieuhedsdedenboseebienceduneinedswesd
22. Purchase Order     step 2   Specify System Behaviour when Offering a Work Item    The offer process involves choossing a number of users that should be informed of the existance of the work item  one of whom  should eventually do this work  As you have asked that the system automatically do this  you must now specify how the system  should automatically qo about offering the work item  Begin byspecifying a set of users to distribute offers of work to    Users Task Input Parameters    Contains    Fredo Corleone  fc     Courier Admin Officer    Tom Hagen  th  Supply Officer    Connie Corleone Rizzi  CCT   Don Vito Corleone  dwe   Jack Woltz  jw    Sal Tessio  st    Kay Adams  ka    Virgil The Turk    Sollozzo  vs   Captain McCluskey  cmc   Don Carmine Cuneo  dcc   Carlo Rizzi  cr    Sonny Corleone  sc     Supply Admin Officer  Finance Officer   Courier   Order Fulfilffment Manager  PO Manager   Client Liaison   Senior Finance Officer  Account Manager       Fig  47  Step 2 of the resource management wizard    Step 3    In Step 3  shown in Fig  48  we can filter the set of participants that have been de   termined in Step 2  Filtering can be done over capabilities and over organizational  data  which consists of organizational groups and positions  Moreover  from this dia   log it is possible to     e allow the work items of the selected task to be offered to participants who  have done work items of a familiar task     e do not allow the work items of the selected task to be off
23. a code  selected from a reposi   tory of available codelets  In this case task variables of type Input Only will be used to  pass values from net variables to the Java code  and Output Only variables will be  used to pass values from the Java code back to the net variables     YAWL Editor v2 0 User Manual 53    Manual task   Resource Management       Once a connection with the Resource Service has been established  any non   composite task can be set as manual in a number of steps  by right clicking on it and  selecting Manage Resourcing for Manual Task  This will launch the resource man   ager wizard  Fig  46 shows the dialog window for Step 1 of the wizard       B Manage Resourcing Wizard for Atomic Task  Approve Purchase Order       Step 1   Choose Behaviour At Interaction Points    There are three key decision points to managing the resourcing of work items spawned from a task  At each of these  interaction points  you may choose to have the system automatically decide on resourcing  or alternately  allow a  user to manually make this decision  Each interaction point is briefly described below     s Offer  The point at which it is decided that a number of users coufd undertake the work item     Allocation  The point at which one of the users offered the work item is nominated to dothat work item   s Start  The point at which the user allocated a work item has begun working on it   Offering a work item for this task to a number of users is to be done by   2 User   System  
24. assage net variable state  across possible  several net variables  into a value that can be passed to a single selected task vari   able     Output parameters use an XQuery to massage task variable state  across possible  several task variables  into a value that can be passed to a single selected net vari   able     YAWL Editor v2 0 User Manual 37    For example  if a task is called    Place an Order     then an Input Parameter could be  the name of the person placing the order  whereas the Output Parameter could be  the corresponding identification number of that person     To add an Input Parameter     y 1  Select the task that will require the parameter  using the Enter Marquee  Es Selection Mode button     from the Palette Bar        We will be setting up Input Parameters for the variables that we created  in the Adding   Updating Task Variables section previously     Go to the  Attend University  Net and select the    Enroll    task      2  Right click on the task and choose Update Parameters     An Update  i Parameters dialog box will appear  Errore  L origine riferimento non     stata trovata       Update the Parameters for the    Enroll    task       Update Parameters for Atomic Task  Enroll     Input Parameters    Task Variable    Net Variables Task Variables    Mame Tye Usage Mame Tye Usage  SUbJectCode  string Local   SUbjJecttCode   string Input  amp      utput E    StudentNumber    Output Parameters    StudentNumber  string Input  amp  Output       Met variable 
25. ast   racking Data Definition coicssidsssieserinconsnspneinsnsinsaumensiachslacndiusutesamelmuanuiasnueintons 42  Endo CaN e ERN o EE UT 43  ROPING CONS eos maios es eEclapte tap E MUN IUNII Ma AURI iq MM MnU E cM  45  Connecting to the YAWL Engine                cccccccsseececeeeeeeeeeseeeeeeeseeeeeeseeeeeeesseeeeeeseaaeeeesaaaeeess 45  Connecting to the Resource Service                      eesssssssssesssssessee enne enne nnns 46  Connecting a Decomposition to a registered YAWL Service                            eseeessssss 46  Validating  Exporting and Importing assssssususenkedvasedwwiu o astu kat du uec drd ieu aU kd v wu iR Vw Elk ow cu 48  DS CHG ALI ag zia cl E CR TT 50  AOC ATIE Cee eue entm ee eM OM quM MUI EM SMEs M eee eS 51  Manual task   Resource Management              ccccceeecceececeeeeeseeeeseeeeseeesseeeeseuseseuseseueeeseeessaeeens 53  s                                                      53  p                                              54  wilom                                                              m 54  sio                                             55  O age ist ses desde T                              56  Huremr J4               e                                        m 57  Activation on enablement acacia sscnasesncbieninetgsncansacuncidunatawtievseecbeeeshsetateaduaoeeatocensbaxeleweeiesaeeie  57  Ac  vaton ORE SUA ING escrase EEO E EEEE 58  EOY VAO e E E EE a E E E 58  EX  CMOS GF Oe oean an E ETT 59  Hlustraive EXaMDlOS eneee OO T TR 61
26. ated     LS Set Timeout Detail for Atomic Task    Order Timeout     Task is required to timeout    Timeout       dynamically via net variable      C3 at the time of 12 05 2008 03 24 44      amp  after a duration of P3D    ote SS SS SS  Timer begins        upon work item enablement    C upon work item starting    Done Cancel       Fig  51 The timeout dialog for an atomic task    Activation on enablement    e  n case of a manual task  as soon as the task is enabled  the timer begins and  It remains live so long as the timeout does not expire  During this time frame   the task will follow the normal resource assignment policy  In other words  it  will be offered and can be allocated and started  Once the timeout expires  the  work item will complete no matter what the current status is  offered  allocated   started   The possible danger of this behaviour is that a work item might be  timed out while being edited by a user     e  n case of automated task  the timeout works as a delay  i e  the automatic  execution of the work item associated to an automated task is delayed by the  value of the timeout  Once the timeout expires  the task is executed and then  completed     YAWL Editor v2 0 User Manual 58    Activation on starting    e  n case of a manual task  the timeout only starts once the task has started   Therefore  the task will be first offered  then allocated  and once it is started  the timeout starts  Again  the timeout may expire while the task is being edited    by a 
27. e  and im   port a YAWL Engine XML file into the editor for further alteration respectively     Net Maintenance  BE    Your workflow diagrams are captured within Nets  of which a specification could con   tain many  You can use these buttons to create a new Net or remove existing Nets  within your specification     Edit Options  ejem    This group of buttons provides the standard Undo and Redo options as well as the  option to delete the currently selected objects     Alignment Options  T s e  Rie i    These buttons can be used to assist with the alignment of objects within your specifi   cation  when multiple objects have been selected     Object Sizes  EXE    To increase the size of an object within your specification  select the object s  and  then use these buttons     Cancellation Sets    These buttons allow you to include in and or exclude elements from the cancellation  set of a task     Zoom Options    BRR    These buttons allow you to apply zoom functionality to the currently selected net  In  order  the buttons allow you to reset the zoom to the actual size  to zoom the entire  net out  to zoom the entire net in  and to zoom into the currently selected net ele   ments     YAWL Editor v2 0 User Manual 6    Palette Bar    The Palette Bar contains seven selector buttons that assist with creation  selection  and positioning of objects within your specification  This menu can be repositioned  by dragging the left hand anchor bar     The Palette bar is also accessible by 
28. e and choose its  S type as string  Set the Usage to    Local     Fig  26      B Update Met Variable  StudentNumber     Extended Attributes    Name     StudentNumber   Type   usage   loca  v    Initial Value        Done Cancel       Fig  26 The Net Variable  Student Nmber     4  The Net Variables should now appear in the Update variables of Net   Attend University  dialog box  Fig  27      Net Decomposition Variables    Sub jJectlode  string Local      studenthunber         Fig  27 Updated  Attend University  Net Variables    Task Decomposition    By choosing the Select Task Decomposition    option when you right click on a  task  you have the ability to identify which decomposition this task represents     Like nets  tasks have decompositions where you can specify variables and a label to  associate with the task or net  Unlike nets  which cannot share net decompositions     YAWL Editor v2 0 User Manual 34    there is a 1 N relationship between task decompositions  scoped to the entire specifi   cation  and their tasks  scoped to nets      Besides variables and a label  task decompositions also allow the workflow designer  to identify which web service the decomposition should invoke in a running workflow  engine  When two tasks share the same decomposition  we are saying that the same  activity is required in two different places in the workflow     You can use the drop down list to select the task decomposition of a task  or alter   nately you can press the Create    butto
29. e task  If the    Multiple Instance Variable    needs manipulation overall before the  unique values are split out of it  use the Accessor Query to do so     On the completion of an instance  the    Instance Query    can be used to transform the  XML document returned to a form suitable for the Aggregate query to finally generate  an overall result  The overall result will be assigned to the    Result Net Variable    on  completion of the multiple instance task     See Fig  53 for an example of this screen being filled out with valid XQuery expres   sions     Fast Tracking Data Definition    Workflow designers have an option to directly transfer data from the net to a task   s  variable and then back again  This can be done by right clicking on an atomic task  that currently does not have a decomposition  and selecting Decompose to Direct  Data Transfer  Ihe dialog in Fig  37 will pop up     YAWL Editor v2 0 User Manual 43        Atomic Task       Select a number of net variables to be used as input to this task  Do the same for output  The selected net  variables will have type compatible task variables of the same name created for them  and mappings that  will enact a direct data copy between the newly created task variables and the specified selected net  variables     Decomposition name   Get Priority Code far User      Net Variables for Input Het Variables for Output    Mame Type Mame Type  UserName a3tring UserName string     J  AvailableCredit    AvailahleCredit  E  Pr
30. e user commits  to using those details for any further editor engine interactions     YAWL Editor v2 0 User Manual 46    Connecting to the Resource Service   In order to use the organizational model  the connection between the editor and the  Resource Service needs to be established    To set the Resource Service connection details    Click on the Tools menu and choose the Set Resource Service Connection item     From the resulting dialog  Fig  40   accept the default values or enter the following  engine details     e YAWL Engine URI   e Administrator s User Name   e Administrator s Password       Specify Resourcing Service    Resourcing Service URI  lhttp localhost 080resourceServiceg ateway    User Name  ladmin      Password  eese   Test Connection    Successfully connected to a running resourcing service with the above detail     Done Cancel       Fig  40 Specifying the Resource Service connection    The Resource Engine value is set by default to a locally installed Resource Service   http   localhost 8080 resourceService gateway   The User Name and  Passwords are set to the default administrator user  name  admin     pass   word  YAWLY         Connecting a Decomposition to a registered YAWL Service  You can use task decompositions within your workflow to make a connection to cus   tom YAWL services that have been registered with a running engine     For example  a decomposition may be set up to place an order with an external com   pany  Upon execution of any task using 
31. ed  as shown in Fig  44     LF Set Label       i Cut  Copy  Delete    View Cancellation Set       Task Timeout Detail       Select Task Decomposition       EH Task Decomposition Detail       Update Parameters       H Automated Task  P    Fig  44 The specification of an automated task       Data manipulation can be achieved by using the task s variables and the task s Input  and Output Parameters  Input Parameters are used to copy the content of a net vari   able onto a task variable  As Output Parameters  it is possible to copy either from a  task variable or from an XQuery expression onto a net variable  Fig  45 shows an ex   ample of copying from expression  where the literal true Is copied onto the net vari   able PO timedout     YAWL Editor v2 0 User Manual 52        Update Met Parameter  PO timedout     Li       from expression add XQuery of element s content  rom element of task variable  a uery of entire eleme  ME l nt of task variabl S add XQ f entire el nt    XQuery    PO timedout     Crue    LE REBAR EARS ES AAAS AREER ERE HAS t REAR ARERR RR RR BIRTH BR RI AAR ARES RR PERDRE RT REESE     lt  PO_timedout gt     populates the net variable   PO_timedout   r       Fig  45 An output parameter set to copy from expression for an automated task    Currently  an automated task behaves like a tau task and supports the definition of  task variables of type Input  amp  Output only  In future it is planned to extend the auto   mated task to allow the execution of predefined Jav
32. el Smarter    Gained   a a El       Fig  18 Changing the Size of Multiple Objects    Note also  that whenever you have selected a number of net elements  pressing one  of the arrow keys will move the selected elements in the direction of the arrow key   and pressing the CTRL key plus the A key will select all elements in the net with input  focus     Changing Font Size    You can change the size of the font used to label tasks and conditions     1  Change the font size by clicking on the View Menu and choosing the  Label Font Size    option     Change the font size to 18     Changing Task Icons    You can change the icon that renders for atomic tasks     1  Select any single atomic task in your workflow  The palette will expand  to include a task icon tree  depicted in Fig  15  where you can an icon  from the tree to the task  You are free to assign any icon  Icons have  no runtime effect on the engine  and are provided simply to make speci   fications more easily understood by people observing the specification  in the editor     Using Custom Icons    Workflow designers can plug in and use their own icons for specification design   Icons must be of the PNG file format  and be a maximum of 24x24 pixels to render  properly within editor task boundaries     When the editor starts  it checks the installation folder for a plugin directory  Currently  it looks in the directory   editor installation path   YAWL EditorPlugins Task   Icons for user defined icons  and adds them into t
33. en this release and  the previous  Version 1 5  of the YAWL Editor     Upgraded the editor to use version 2 0 of the engine  This includes a complete  renaming of the source package hierarchy  and breaks save file compatibility  with previous versions of the editor     Also included in the move to the 2 0 engine is a powerful replacement of the  resource perspective  The previous YAWL environment supported 9 of the 43  identified resource patterns  This release supports 38 patterns  We have no  plans to support the remaining five patterns at this time     Automated task added  It is now possible to differentiate between manual task      a task assigned to some human resource for its execution  and an auto   mated task     a task which is meant to be executed by the system  Currently  the automated task only supports the execution of XQuery expressions  In fu   ture we plan to extend this task to allow the execution of predefined Java  codelets     Added a timeout feature for atomic single instance tasks  The timeout can be  activated on task   s enablement or on task   s starting and can be given a value  in terms of absolute date or duration  The timeout works as a delay for an  automated task  and forces the work item   s completion for a manual task     YAWL Editor v2 0 User Manual 2    e Changed the specification version number to be a decimal number instead of  a free form string  This includes the export dialog now supplying the specifica   tion version as a convenience
34. ents that choose not to go to University        Finally  select your    Get A Job    task and decorate it with an Xor Join     Then set the orientation of the join to the western edge of this task     3  Split and Join decorators allow you to connect several Flow Relations  from and to your task respectively        Create a flow relation from    Begin My Career    to    Do Private Study        then create another flow relation from    Do Private Study    to    Get A  Job     as per Fig  8     4  Dont forget to check the validity of your specification     YAWL Editor v2 0 User Manual 14    Hint  If you are having troubles with positioning your tasks  the alignment tools are a    big help     When    Begin My Career    has been completed  a choice must be made on which of  the two tasks     Go To University    or    Do Private Study     will be followed  XOR Split       Get a Job    will become available after the completion of the task selected at the  point of the XOR split     I TO    Begin My a   Get A Job Career  Career   Started  Do Private  Study       Fig  8 XOR Split and Join    Composite Tasks    Composite tasks are place holders for other YAWL Nets  That is  you  can create another workflow in a separate Net  which is represented by  the composite task in other nets     To create a Composite Task     Click on the Composite Task button  Gl  in the Palette Bar or right click  in the whitespace of the Net and choose Composite Task     We are going to replace our existin
35. enu     Enter your XML Schema Data Type Definition into the dialog box   See  Fig  22        Update Data Type Definitions     lt x  schena xmlns xs  http   www uw3 org  z  01l xXMLSchema       lt xsicomplexType name  Geek     x531 Sequence gt    lt xs element name  Mame  type  xs  string      gt    lt xgielement names Salary  type  x3s  double    gt    lt  xS  Sequence gt   z xs complexType     zxs complexType name  Book       xs semquence minOccurs  1  max  ccurs  1     amp xs ielement name  title       types xs3s strinq      lt xs element name  author  type  xs strinq      z X83 8eguence    iz xst complexType      lt xsicomplexType name  BookList       esi sequence min    ccurzs z l  maxlccurssz 5     lt xs element name  book  type  Book     c xB8 semiences  iz xastcomplexType     zx xs schema                               8 i        LIEBE EERE SSE SEEGER EEE EEE IMT TERE EE EEG EEE EGE GEE EGET EET ET ETE AEE TEETER EERE EEE EEE EEE EEE REET t NN T       Fig  22 Adding the  Geek  complex data type    If the definition text is green  your new data type is now available for de   fining Net or Task variables in your specification  If the text is red  there  is something wrong with your data type definition  and the data type will  not be available     YAWL Editor v2 0 User Manual 31    When the text is red  the split pane will reveal a table listing parse errors that were  collected when determining the validity of the text supplied  An example of this is  shown in Fig  23   
36. ered to participants  who have done work items of another task     YAWL Editor v2 0 User Manual 55    Manage Resourcing Wizard for Atomic Task Approve Purchase Order       Step 3   Specify Distribution Set Filter s     Filters       Tick those filters to be run over the specified participant set  Set parameter values for the selected filter as appropriate              Filter Parameter Value      Filter by Capability OrgGroup  Orders    lv  Filter by Organisational Data Position    Runtime Constraints    Retain user from a familiar task  Modify Purchase Order 2768 Y    Purchase Order 2768  DA DIENEN    ed    T C  p 7  r    4f  jurchase Order 104      _  Do not allow users who ve done workitems of the following previous task to also do this task        Fig  48  Step 3 of the resource management wizard    Step 4    In Step 4  shown in Fig  49  we can select the allocation mechanism that determines  at run time who  among the distribution set  will actually be allocated the work items   The available mechanisms are Round Robin  by time  by frequency   Random  Choice and Shortest Queue     Manage Resourcing Wizard for Atomic Task  Approve Purchase Order       step 4   Specify System Behaviour when Allocating a Work Item    The allocation process involves choossing a single user  from those offered a work item  to actually undertake that work  As you  have asked that the system automatically do this  you must now select the mechanism for doing so  Choose from one of the  mechanisms
37. es supported by contemporary workflow management systems  While  not a commercial language itself it encompasses these languages  and  in addition   has a formal semantics  Such an approach is in contrast with e g  WfMC s XPDL  which takes commonalities between various languages as a starting point and does  not have formal semantics  Its design hopefully allows YAWL to be used for the pur   poses of the study of expressiveness and interoperability issues     Obtaining the Latest Version of YAWL    As new versions of the YAWL Engine are released to the public  they will be avail   able for download from the YAWL Project website  http   sourceforge net projects   yawl   From here it is also possible to access the source code of the engine for de   velopment purposes     The YAWL Foundation    For more information and progress on the YAWL project  visit the YAWL Foundation  Homepage  http   yawlfoundation org   The YAWL Foundation is a non profit organi   sation that acts as custodian of all IP related to YAWL and its support environment     The YAWL Architecture    The interactions among the components of the YAWL Engine are depicted in Fig  1     YAWL Editor v2 0 User Manual 1    Web Server  Apache Tomcat     POX over HTTP       POX over HTTP        lt     XML  lt  lt        Browser Mary cee YAWL Editor    http   localhost 8080 resourceService    Fig  1 The YAWL Components    Getting Started    What   s New    Following is a list of new features and bug fixes introduced betwe
38. g  3 Flugin    Use the palette toolbar to edit the selected net                     Fig  15 Making the  Study Privately  task an atomic composite    YAWL Editor v2 0 User Manual 23    Changing the Starting Net    At any stage you can change the starting Net of the specification  To change the  starting Net     1  Select Net from the Menu   2  Choose Set Starting Net  Fig  16      3  From the Choose Starting Net window  click on the drop down list and  select a new starting Net     4  Click Done     Choose Starting Net    Execution of the workflow starts in net My Career  v       Fig  16 Changing the Starting Net    Note that the starting net has an input condition symbol   gt   in its title frame  and its    minimised icon  All sub nets have a composite task symbol  LI  in their title frames  and minimised icons     YAWL Editor v2 0 User Manual 24    Changing the Appearance of Your Specification    Improving the Look of Flow Relations    You can control and improve the look of the Flow Relations by adding in  knees         Select the Enter Marquee Selection Mode button       from the Palette    Bar   Go to the  Study Privately  Net     Right click on the position in the Flow Relation where you want to add a   knee   signified by a small square           in the Flow Relation  A popup  menu will appear  allowing you to add and remove knees  as well as  change the line style of the flow     Create a knee somewhere on the Flow Relation going from  Knowledge  Gained     Condition 
39. g  Go to University  Atomic Task   with a composite task  so choose the Enter Marquee Selection Mode    reed       button    on the Palette Bar  click on the    Go to University Atomic  Task    and press the Delete key on the keyboard  We will add in the  new composite task next     Place your Composite Task in your Net     Reconnect the Flow Relations from    Begin My Career    to the new Com   posite Task  and from new Composite Task to    Get a Job        Create a new Net by clicking on the Create a new Net button     Bl  on the  Menu Toolbar  or click on Net in the Menu and choose Create Net     YAWL Editor v2 0 User Manual 15       Choose a name for this Net by clicking on the Net Menu and choosing  Update Net Detail     We are going to call this new Net    Attend University       Return to your original Net and right click on your Composite Task and  choose Unfold to net     You will then be given a drop down list with  all the Nets available     choose the Net this task is to represent and  then click Done    Choose    Attend University        You can now fill out the detail of your new    Attend University    Net     Create the following Atomic Tasks in order and then link them with Flow  Relations and don t forget to check for validity        Enrol      Do Subjects   e Pass All Subjects  e Get Degree    The resulting nets are shown in Fig  9     Begin My       Get A Job Career  Career started  Do Private  study    Enroll Do Subjects Pass All Get Degree  Subiects    F
40. he plugin branch of the task icon  tree widget of the editor s palette  Sub directories are supported  and will form new    YAWL Editor v2 0 User Manual 27    sub trees of the same name when the plugin sub tree is being created  If an icon  cannot be found that was previously used for a specification  a special  broken  icon  will render in its place  as depicted in Fig  19        Fig  19  A task specifying an icon that the editor cannot locate    YAWL Editor v2 0 User Manual 28    Advanced Specification Features    Cancellation Sets    Cancellation Sets allow you to nominate any number of tasks  conditions or implicit  conditions  which exist on flow relations between tasks but are not drawn  for cancel   lation  upon the execution of a specified task  That is  once a specified task is exe   cuted in the workflow  all state within that task s cancellation set is removed     To create a Cancellation Set     1  First select the task that will initiate the Cancellation Set  using the En     ter Marquee Selection Mode button   lt 4   from the Palette Bar        2  Right click on the task  then choose View Cancellation Set     The task will be coloured grey to indicate that this task is the cancella     ble task      Go to the    My Career    Net  We are going to make the    Attend Univer   We sity  task a cancellable task to demonstrate in the workflow  that if a    person executes this task  then they don t have time to perform the     Study Privately  task  therefore it should
41. hnedes 19    OPC ONS ARENREETINEDREKu                                                            20  CHANGING the Starung Net sssssencscsetubk paie quas tkbbb AAE 23  Changing the Appearance of Your Spe cifiCatiOn             cccccccecceceeeeeeeeeeeeeeeseeeeeeeseeeeeeeseaeeeeeeas 24  Improving the Look of Flow Relations                           sese 24  zelljgek8le  em T                                                   ON 25  Changing Font SiZC         cc eccccccseeccceceeeeeeceaeeeeeeeeeeeeeeseeeeceesseaeeesseeeeeeessaeeeeeseeeeeeessageeeessaeeees 26  ENING  T ISR eoa UE 26  WISIN   CIS CO MN IC ONS RR uu            26  Advanced  Speciicauon F edlilleS i ccactsicseeccuiseanseaedanteiactenichaeastbetidenpaivendesnietadcedadsateciouseandies 28  AICS IIT Reit NRI o OT sone eraceas 28  Data Type DEINIUONS EET 30  Net Decomposition Detail   Net Variables               ccccccccecccceeeeeseeeeeseeeesseeesseaeeesseeeeesaaees 32  TasK DecombpoSILIOFL essc nxaxo2adi uaa Gd orba coda uda cutn npe nca n Mo bao Ru col c n a 33  Task Decomposition Detail   Task Variables                ccccceccccsseeeeseeeeeeeeeesaeesesseeeeesaaeeesaaes 34  Ji Yefo  gre rz Wb ANIA   M To p WAS RO E T 34  Ta ul CEN TN u                Rm 36  A brief introduction to XQuery          ccccccccesssecececceeeseceeeeeeseeeeeeeeseeeeeeeeessaeaeeeeessaeaeeeeesseaneses 40  m0 Me  i T    Y                                          40  Multiple Instance QUGNES as edbduuea toxin er eee eee ee ene eee ee a ee eee 41  F
42. ick on the YAWL Editor2 0 jar file to start the application and away you go     YAWL Editor v2 0 User Manual 4    The YAWL Editor Workspace    The first time you start the YAWL Editor  you will be presented with a blank canvas   with the instructions in the Status Bar asking you to open or create specification to  begin     Before you create your first specification  let us take a brief tour of the Editor s work   space and the elements within  The workspace is shown in Fig  2        YAWLEditor       Specification Tools View Help                            t Tear away menu toolbar    a    The canvas _    Palette bar l             i  E    Notes   Problems Specafication problem panel          status bar  showing hints and messages  Background task progress bar     Fig  2 The YAWL Editor Workspace    Menu Toolbar    The Menu Toolbar contains six groups of buttons to assist you in maintaining your  YAWL specification  The menu can be repositioned by dragging the left hand anchor  bar     Specification Maintenance  PAO    This group of buttons provides you the standard options to create  save  open and  close YAWL specification files     Specification Verification  Analysis Exporting  amp  Importing  BASN    These four buttons allow you to validate your specification again YAWL Engine work   flow requirements  analyse your specification for deadlocks and other issues  export    YAWL Editor v2 0 User Manual 5    your workflow diagram into an XML file for uploading to the YAWL Engin
43. ig  9  Attend University  Composite Task and its matching Net    YAWL Editor v2 0 User Manual 16    Multiple Atomic Tasks    Multiple Atomic Tasks allow you to run multiple instances of a task concurrently     To create a Multiple Atomic Task     1     Click on the Add Multiple Atomic Task button    l  in the Palette Bar or  right click in the whitespace of the Net and choose Multiple Atomic  Task     Go back to the  My Career  Net  We are going to replace our existing   Do Private Study  Atomic Task  with a Multiple Atomic task  so choose  the Enter Marquee Selection Mode button      on the Palette Bar  click  on the  Do Private Study  Atomic Task and press the Delete key on the  keyboard  We will add in the new Multiple Atomic task next        Place your Multiple Atomic Task in your Net and set the name of this  task by right clicking on the task and choosing Select Task Decompo   sition     Call this task the same name as before by selecting the  Do Private  Study    decomposition from the drop down list     Reconnect the Flow Relations from  Begin My Career  to  Do Private  study     and from    Do Private Study  to  Get A Job     as per Fig  10     Attend  University    Begin My   Get A Job Career  Career I Started  Do Private  study       Fig  10 Adding a Multiple Atomic Task    You will now need to set the parameters of the Multiple Atomic Task   Right click on the task and choose Set Instance Detail  Ensure that  you are viewing the    Bounds    tab of the dialog  as 
44. ile     To Validate your specification     1  Click on Validate this Specification button  E on the Menu Toolbar or click  Specification on the Menu and choose Validate Specification       2  A table listing problems will appear with details of any inconsistencies that would  stop the specification from running in the YAWL Engine in the specification prob   lem panel  Fig  41   Fig  42 shows an example invalid specification       YAWLEditor   C QUTData YAWLEditorAncillary screenshots 2 0 Fig38_ValidSpecification 2 0    Mi   E3  Specification Net Edit Elements Tools View Help    DERK wy p  Ew                           c Task Icon  No Icon    o     Manual    o  c  Automated    o     Routing                  y Plugin                                  No design time engine validation problems were found in this specification                    Notes   Specification Validation Problems           Use the palette toolbar to edit the selected net     Fig  41 A valid specification                 YAWLEditor   C QUTData YAWLE ditorAncillary screenshots 2 0 Fig39_InvalidSpecification 2    Mi   E3  Specification Net Edit Elements Tools View Help    S S wm e  ES A DRIE                    ci Task Icon  No Icon    o  o Manual      Vo Automated    o     Routing    broken test                      y  Plugin                          sh  P            Specification Validation Problems    Atomic Task broken test 4 The outgoing flow number must be  gt  0    tomic Task broken test 4 is not on a back
45. int if it is valid to draw a flow connection using the current ob   ject     Begin My  Career    Fig  5 An established flow relation    That s it  Your Atomic Task is set        9  Repeat the process for the following Atomic Tasks in order  Go to Uni   iia versity  Get A Job  Begin My Career    g 10  Link the Begin My Career task to the Output Condition  the    symbol      as per Fig  6     11  Finally check the validity of specification by clicking on the Validate this    opecification button  1  in the Menu Toolbar or click on Specification  in the Menu and choose Validate Specification  If all things are going    YAWL Editor v2 0 User Manual 12    to plan  then you should receive a confirmation saying that there were  no errors detected     Begin My Go to Get A Job Career  Career University Started       Fig  6 The  My Career  Net    Task Decoration    Decorating a task is the process of adding splits or join conditions on task     By putting a split on a task  you are telling the task that when it has been completed   its succeeding task could be one or more tasks  Here are the possible splits for a  task     e No split  no split on task   e AND split   e OR split   e XOR split    By putting a join on a task  you are telling the task that it could become available  through the completion of one or more preceding tasks  Below are some possible  joins for a task     e No join  no join on task   e AND join   e OR join   e XOR join    For more information on join and split ty
46. iorityCode jv   PrierityCoae       Fig  37 An example of the direct data tranfer dialog    This dialog will automatically create a task decomposition and matching XQueries to  directly transfer data from a selected net variable to a task and back again     End of Scenario    This is where our scenario ends  The My Career Scenario was designed to explain  all the functions of the YAWL Editor and to provide you with a rudimentary under   standing of designing a YAWL workflow specification     But the complexity of the YAWL Editor does not stop with the current scenario  If you  are after something more challenging  try adjusting your version of the scenario to  expand into more sub Nets and more complex situations     The completed example described in this scenario is supplied with the editor source  distribution  Fig  38      YAWL Editor v2 0 User Manual 44    Q YAWLEditor   COUT Data yAWLE ditorAncillary screenshots 2 0 Fig35_UserManualExample 2 0  yel     Oy x   Specification Met Edit Elements Tools View Help               Attend m  CI Task Icon     University vis  Ma Icon     Begin My Get A Job Career  o     Manual     LUE Started  e c Automated     study    e  B Routing jq   Privately  2 Plugin         Look for an  Easier Book    Read A Book Knowledge Feel Smarter  Gained     Enroll Do Subjects Pass All Get Degree  Subjects    e ettet RAE RES R ERR tmt tst ttt ttt tht smit itt t tht SSmi tSt      Use the palette toolbar to edit the selected net       Fig  38  The complete
47. item  under the Specification menu allows workflow designers to analyse their specifica   tions  A number of potential problems with the workflow can be automatically spotted  with analysis  Examples include spotting potential deadlock situations  unnecessary  cancellations set members  and unnecessary or join decorators  at run time  or joins  require significant processing effort  and should be removed if they are not actually  needed      A configuration dialog for the specification analysis is available under the Tools  menu  by the name of Configure Analysis Tool  see Fig  43      Configure Specification Analysis      l Reset Net Analysis l WofYAWL Analysis    Use the reset net analysis algorithm     Use YAWL reduction rules before analysis for optimisation    Use Reset reduction rules before analysis for optimisation    Check for weak soundness property using coverability    Check for unnecessary cancellation regians    Check for unnecessary or joins    Check for soundness property using reachability results from bounded nets        Show observations in analysis results     These tests may overlap in identifying unreachable tasks in the  specification  potential deadlocks and possible unfinished work in  completed workflow cases        Fig  43 Specification analysis configuration    If the optional YAWL specification analysis utility wofyawl exe  written by Eric Ver   beek is supplied in the same directory as the editor  an extra tab entitled WofYAWL  Analysis will be e
48. l   edgements for all the dedicated YAWL contributors  Included is an  About the Editor     dialog  describing components used in the editors construction  compatibility issues   and a list of source code contributors     YAWL Editor v2 0 User Manual 9    Creating Your First Specification    Overview    This next chapter will lead you through the process of creating a YAWL specification  from beginning to end  through a series of brief lessons following a scenario     You can either follow all the instructions including the scenario provided  from begin   ning to end  or skip straight to the section that you are interested in and follow the in   structions        Look for the student icon next to the instructions for specific details of the sce        A  nario     The Scenario    P  The scenario that we will be following throughout this manual is the workflow  3 of a student who has just completed their secondary study and is now looking  to start their career     This scenario will follow the path of a student who either enrols in a University to  complete their tertiary education  or undertakes private study which will eventually  lead them to getting a job and starting their new career     Creating Your First Specification    1  Click on the Create a New Specification button   l   at the top left of the  Menu Toolbar  or click on Specification in the Menu and choose Cre   ate Specification     This will bring up a blank Net called  New Net 1  which will be  by de   fault  
49. l Get Degree  Subjects    Read A Book Feel Smarter    Fig  12  Study Privately  Multiple Composite Task and its Net       Select the Enter Marquee Selection Mode button     from the Palette  Bar and click on the Flow Relation going from the Read a Book Atomic  Task to the Feel Smarter Atomic Task and press the Delete button on  the keyboard     Create a Flow Relation from    Read A Book    to    Knowledge Gained      Create a Flow Relation from your Condition to a task     Set the Flow Relation from    Knowledge Gained     Condition to    Feel  smarter    Atomic Task     Create another Flow Relation from your Condition to another task to  signify the two possible flows from the Condition     YAWL Editor v2 0 User Manual 21      Before we create our second flow relation from our Condition  create  g another Atomic Task and call it  Look for Another Book        Change the Join Decoration for Atomic Task    Read a Book    to an OR  Join  with the orientation being West  by right clicking on Read a Book  and choosing Decorate  Click Done     Finally create the Flow Relation from the  Knowledge Gained   Condi   tion back to the OR Join of the    Read A Book  Atomic Task  as per Fig   13     O  Study Privatehy    ook for an      Easier Book Oe    Read A Book Knowledge Feel Smarter  Gained        Fig  13 Condition Loop for    Study Privately    Net    6  Validate your specification  Validation should fail and report errors as  per Fig  14  The problem here is that the    Study Priva
50. l now need to set the parameters of the Multiple Composite  Task  Right click on the task and choose Set Instance Detail     4  Set the Minimum Instances value  This is the minimum number of in   stances of this task that will be started when the task needs processing        Set the Minimum Instances to 5     5  Set the Maximum Instances value  This is the maximum number of in   stances of this task that can be created          Set the Maximum Instances to 100     6  Set the Continuation Threshold value  The moment all instances cre   ated have completed or as many instances as the Continuation  Threshold specified have completed  the multiple instance task itself is  considered completed  which triggers relevant outgoing flow relations  from this task        Set the Continuation Threshold to 50   7  Choose the Instance Creation  If a multi instance task has static crea     tion mode  when the task is started the number of instances created is    YAWL Editor v2 0 User Manual 19    decided then  and cannot be altered during the execution of the task   Conversely  if a task has dynamic creation mode then new instances of  the task can start once the initial minimum instance number of tasks  has started  but before the maximum number has been received     set the Instance Creation type to  Static      8  Click Done   9  Create a new Net by clicking on the Create a new Net button  B   on  the Menu Toolbar  or click on Net in the Menu and choose Create Net   10  Give the new Net a
51. ll have on runtime YAWL engine  state     From the list of task variables  select the  SubjectCode  task variable  and click add XQuery of element s content only  From the list of net  variables  select the  SubjectCode  variable  Click Done     YAWL Editor v2 0 User Manual 40    Create another Task Parameter and map the task  StudentNumber  to  the net variable of the same name using this technique  Click Done and  Done again     These Output Parameters were set up to demonstrate a simple transfer  of state from a net to a task and back to the net  Perhaps the task  would allow a user to change the values of one of the variables which  would eventuate in the net   s values changing     The Update Parameters dialog box should appear as in Fig  34     A brief introduction to XQuery    XQuery is a separate language that describes how to manipulate a given XML  document to extract data from it  For example  the XQuery   data myTaskVariable number     5 is saying that there is some XML  Schema element in an engine XML document with an element called myTaskVari   able whose content is a number  and that the resultant XQuery expression is that  element s value with 5 added to it     Update Parameters for Atomic Task    Enroll     7    x     Input Parameters    x ue Task variable   Attend Universitwv  sSubjecttode texti k   SubjectCode    i Attend Uniwersitw  s5ubhjectitade texti t   studenthumber    Met Variables Task Variables    Mame Tye Usage Mame Tye Usage  SUbJeCtLode string L
52. mouse clicks and it is beeping every  time I click the mouse     Check to see if you have any YAWL Editor dialog windows open  These windows  don t appear in the Windows Taskbar  To check if you have any open dialog win   dows  hold down the ALT key and press the TAB key  With the ALT key held down   press TAB until you reach the dialog window and let go of the ALT key  Close the  dialog window and you should be able use the YAWL Editor again     Dialog windows appear as the Java icon  blue coffee cup        can t connect two elements with a flow  Why     If the editor does not allow you to connect one element to another  it is steering you  away from building an invalid net  Typical examples include     Trying to connect a second flow to an undecorated task     Trying to point an incoming flow to a split decorator  or an outgoing flow from a join  decorator      Se the troubleshooting entry  How do   find out more about elements and princi   ples       for more detail     When   validate my Net  I get the following validation message     The net          may complete without any generated work  Should all atomic tasks in the net  be unlabelled        This message appears if you have not labelled any of your tasks  To label a task   and thus ensure that the engine will get a user to handle the task at this point in the  workflow   right click on the task and choose Select Task Decomposition     Choose  Create    and in the following window   Update Task Decomposition   and en
53. n and generate a new one that will automati   cally become the task   s decomposition  Fig  28         My Career       LI  cai XL E M pee   IND           Begin My MI   Get A Job i Career  Atomic Task  Get A Job  X   Set decomposition to   Get A Job E lait   Create      Get A Job     Career Started  Do Subjects       Pass All Subjects  Feel Smarter    Begin My Career    Fig  28 Select Task Decomposition    Task Decomposition Detail   Task Variables    You can add variables to a task to store specific information relating to that task   Task variables have several uses  One use is to transferring information between  workflow users and the workflow engine  A second use is for passing data between  web services that the running workflow engine invokes and the Net the task resides  In     For example  if your task is called  Place an Order   you may want to store the name  or identification number of the person placing the order or maybe store the items be   ing ordered     Adding a Variable to a Task    1  First select the task that will require the variable  using the Enter Mar   quee Selection Mode button       from the Palette Bar        YAWL Editor v2 0 User Manual 35    We will be setting up variables for the    Enroll    task   Go to the    Attend University    Net and select the    Enroll    task     Right click on the task and choose Task Decomposition Detail     An  Update Task Decomposition dialog box will appear  Fig  29      Retrieve the decomposition detail for the 
54. n going from the    Knowledge Gained     con   dition to the    Look for an Easier Book    atomic task  Drag the labels  about to a desired position  much like what has been done in Fig  17     Note that Fig  17 shows flows using two different line styles  The flow  running from    Look for an Easier Book    has been given the    spline    line  style in this figure  while the remaining flows are all    orthogonal     result   ing in sharp edged knees on flows  such as the one running from the     Knowledge Gained     condition to the    Look for an Easier Book    task     Editing Objects    You can edit more than one object at a time by using the Enter Marquee Selection  Mode tool  See Fig  18     1        Select the Enter Marquee Selection Mode button     from the Palette    Bar   Click on the first object that you want to edit     Hold down the shift key and then click on the other objects that you  want to edit     Now choose the Edit option from the Menu or continue holding down  the shift key and right click on the mouse button  Below are the edit op   tions    e Cut  Copy  Delete   e Align   e Size Increase   Decrease to change the appearance of the ob     jects  This can also be done using the CTRL key plus Up or Down  arrow on your keyboard     YAWL Editor v2 0 User Manual 26    O  Study Privatety    He at  eT i  fos    Look for an   no    i    Read A Book  Knowledge                g   o                  gt        D yes  gt  Ee     IM   i i  EXE GENS ra EE    t zi Fe
55. nabled in this dialog  allowing more analysis options than those  supplied by default  The utility must be compiled for specific architectures  and its  data format has changed over time  This version of the editor needs version 0 4 of  the utility  and expects it to be called wofyawl0 4 exe  regardless of the platform on  which it runs  Choose the wofyawl implementation right for your environment from  sourceforge  and then rename as above it to get analysis working     YAWL Editor v2 0 User Manual 51    Automated task    Any non composite task in YAWL can be defined as manual or automated  A manual  task is a task which is intended to be executed by a human resource  e g  a partici   pant in the organizational model  An automated task is a task that is not offered to  any resource as it is executed by the system  This type of task can be used for rout   ing purposes and or to manipulate the content of net variables  from simple data as   signments to complex reports generation     An automated task is still handled by the resource Service as a manual task  but it  behaves as follows     e on enablement  it is automatically checked in  thus having priority over manual  tasks in a deferred choice  and its input parameters are parsed     e itis automatically checked out and its output parameters are parsed     A task can be set as automated by right clicking on it and ticking the box for Auto   mated Task  This way the option Manage Resourcing for Manual Task will be dis   abl
56. nn aC nt no nna CnC een ee otc een nn et en Cn ec ete ne nC ee  Splitter Query  for  e in MasterList  return  zS  mePersonz  e texti  SamePersanz  ots ef htt hn SS htD    Instance Query    p rsson Aeri list s3amePersan text  c SomePerson     Mi DD SS E A A A T E DD ee att    Aggregate Query     for  d in  verify list   return  zPersanMame   d  text   Hz  PersonMame     lis E SS SI SS ISTIS SITIS ISSN ISSN NSNSSSISSSSS S SNNT ISSN SISTI SISTSSSNSSNSSSSNSSSI    Result Met Variable    MasterList      Cancel    Order Timeout    end Ordering       Fig  55 Example of timeout on enablement for an automated task    YAWL Editor v2 0 User Manual    63    Known Issues    e Users cannot type double quote characters in XQuery and XPath expressions   this is a deliberate restriction to stop oddities in engine export manifesting    Workflow designers are to use single quote characters when manipulating  String literals in XQuery XPath expressions     e There are intermittent reports of editor save file corruption occurring with ver   sions of the editor up to and including version 1 2  The 1 3 release of the edi   tor fixes some bugs that could lead to save file corruption  If you get version  1 3  or later  editor save file corruption  we d appreciate you supplying as  much detail to us as possible on when where how it occurred to help us nail  this problem once and for all  Obviously  working on backup copies of a work   flow specification is suggested to avoid any wailing and gnashing of
57. ocal   SUbJeCtLode string  Input  amp  OUTPUT     StudentNumber      StudentNumber string Input  amp    utput      Output Parameters    x ue Met variable   Enroll SubjectCode texte it  Subjectlode     Enroll  Ssubjecttode text ty  StudentNumber       Fig  34  Established task parameters    Flow Detail    When dealing with tasks that have XOR and OR splits  we need some way of telling  a running engine which flows should be activated  By updating the flow detail  you  can specify the default flow path and also establish predicates for each flow direction   Flows whose predicates evaluate to true in a running engine will execute those flows     YAWL Editor v2 0 User Manual 41    To update the flow detail of a task that has a split   Right click on the task and choose Update Flow Detail        The number of splits will be the number of Target Tasks  The currently selected flow  in the dialog will also be identified by being drawn green in the Net  Fig  35      To choose the flow ordering  select the Target Task that you want as the change the  order of  use the Up and Down arrows on the right to position the flow  The bottom   most flow will be used as the default if some flow needs to be followed  but no predi   cates evaluate to true     To specify a predicate for a particular flow  select the flow from the list and click on  Predicate       Enter a predicate as a boolean XQuery expression and choose Done         F  My Career    C IN m Tc  a         Get A Job Career  Started  
58. ome other user   No  Yes   Yes  refine   Can a user skip a work item of this task       amp  No     Yes C Yes  refine    Can a user pile work items of this task     No C Yes C Yes  refine       Fig  50  Step 5 of the resource management wizard    The maximum number of steps in the wizard can be 12  if all the interaction strate   gies are set to System and if all the privileges are given     When workflow specifications are exported to the engine  SQL queries that identify  users or roles authorised for  or to allocated tasks will be automatically generated  from the editor and passed into the engine XML  The engine can then use these que   ries to shortlist and pick from valid candidates     More details on engine run time user allocation and authorisation can be found in the  YAWL Engine manual and in the Resource Perspective Requirement Analysis  document     More details on populating the organisational database of the engine can be found in  the YAWL administration tool manual     YAWL Editor v2 0 User Manual 57    Timeout Task    Any atomic single instance task can be given a timeout behaviour by right clicking on  it and selecting the Task Timeout Detail     The dialog in Fig  51 will pop up     From this dialog it is possible to set the activation type and the expiry value for the  timeout  The timeout can be activated  i e  it fired  upon work item enablement or  upon work item starting  These have different meaning according to the type of task      manual vs  autom
59. pe to  Static      Click Done     With the values set in the scenario  the Do Private Study task is indicating that a  maximum of 100 instances of this task can be executed before triggering the task s    YAWL Editor v2 0 User Manual 18    outgoing flow  A minimum of five instances will be created  and once 50 instances  have completed  the outgoing flow relations to  Get A Job  will trigger     The    Queries    tab of the Multiple Instance dialog will be explained later in the    Setting  Multiple Instance Queries    section of this manual     Multiple Composite Tasks    Multiple Composite Tasks allow you to run multiple instances of the Net represented  by a multiple composite task  concurrently     To create a Multiple Composite Task     1  Click on the Add Multiple Composite Task button      in the Palette Bar  or right click in the whitespace of the Net and choose Multiple Com   posite Task     g Go to the  My Career  Net  We are going to replace our existing  Do Private   ee Study    Multiple Instance Task  with a Multiple Composite task  so choose the  Enter Marquee Selection Mode button     on the Palette Bar  click on the     Do Private Study    Task and press the Delete key on the keyboard  We will  add in the new Multiple Composite task next        2  Place your Multiple Composite Task in your Net     s Reconnect the Flow Relations from  Begin My Career  to the new Multiple    Composite Task  and from the new Multiple Composite Task to    Get a Job      3  You wil
60. per Fig  11     set the Minimum Instances value  This is the minimum number of in   stances of this task that will be started when the task needs processing     Set the Minimum Instances to 5     YAWL Editor v2 0 User Manual 17            2    Set the Maximum Instances value  This is the maximum number of in   stances of this task that can be created     Set the Maximum Instances to 100     set the Continuation Threshold value  The moment all instances cre   ated have completed or as many instances as the Continuation  Threshold specified have completed  the multiple instance task itself is  considered completed  which triggers relevant outgoing flow relations  from this task     Set the Continuation Threshold to 50     i Multiple Atomic Task   Instance Detail          Bounds      Minimum Instances  1      Maximum Instances     2  is infinite       is equal to 1      Continuation Threshold     is infinite       is equal to p      Instance Creation   amp  Static     2 Dynamic       Fig  11 Instance Bounds on Multiple Instance Tasks    Choose the Instance Creation  If a multi instance task has static crea   tion mode  when the task is started the number of instances created is  decided then  and cannot be altered during the execution of the task   Conversely  if a task has dynamic creation mode then new instances of  the task can start once the initial minimum instance number of tasks  has started  but before the maximum number has been received     oet the Instance Creation ty
61. pes  please consult the YAWL technical pa   pers on the YAWL website     Creating Splits and Joins  To create a split or join     1  Ensure that your palette is in    Net Element Selection  mode     YAWL Editor v2 0 User Manual 13    2  Select a task  When a single task is selected the palette menu will ex   pand  see Fig  7  to include two tabs that allow you to decorate a task  with a split and or join  You can also choose a fill colour to help visually  differentiate splits from joins with the expanded palette           YAWLEditor   C  QUTData YAWLE ditorAncillary screenshots 2 0 Fig7_UserManualExample 2 0  ywl  Specification Net Edit Elements Tools View Help    Beh wah E    eT HE ENIRA             Of   0 6  C Task Icon     Begin My     Go to Get A Job Career   No Icon Career University Started  o  o Manual z y 3    o  TEA 1a  y Automated    o     Routing S                   y  Plugin                   Join   Split     H I  NONE   AND    B   E  XOR OR                   dat                                            H           Use the palette toolbar to edit the selected net        Fig  7 Decorating a Task    1  Choose the required split or join and the orientation for the split or join  to appear and then click Done        2  Select your    Begin My Career    task and change the split to Xor Split   wu Then set the orientation to eastern edge of the task   as per Fig  8        Create a new Atomic task called    Do Private Study     This task will rep     resent those stud
62. right clicking anywhere on a net that does not  contain a net element     Once an element is selected  it is possible to drop objects in the canvas by left   clicking the mouse button     Atomic Task    ol    Select this button to create an Atomic Task  which represent a single task to be per   formed by a human or external application     Composite Task    o    Select this button to create a Composite Task  which is a container for another YAWL  Net   with its own set of YAWL elements constrained by the same syntax     Multiple Atomic Task    fal    Select this button to create a Multiple Atomic Task  which allows you to run multiple  instances of a task concurrently     Multiple Composite Tasks    Select this button to create a Multiple Composite Task  which allows you to run multi   ple instances of a composite task concurrently     Condition    Ol    Select this button to create a Condition  which is a way to represent state for the Net     Marquee Selection          YAWL Editor v2 0 User Manual 7    select this button to activate the Marquee Selector  which will allow you to select in   dividual or multiple objects by clicking and dragging your left mouse button  Please  note  you can not create flows while using the Marquee Selector     Drag Net Window         Select this button to drag the visible window of a net around that net     Status Bar    The Status Bar provides useful hints throughout the creation of your specification and  depending upon which object you are 
63. task  with its queries filled in  Fig  53      Q YAWLEditor   C QUT Data Sourceforgelmage yawleditor trunk lib exampleEditorFiles simpleMultip     i  OF X   Specification Met Edit Elements Tools View Help    Beak E B  ARA                   o Oee    isti done  Verify list Show list  o  o Manual Create list items       o  o Automated             o     Routing    y  Plugin                      sth    Y     Use the palette toolbar to edit the selected net              Fig  53  A simple specification showcasing multiple instance tasks    Fig  54 shows the core multiple instance queries used to manipulate a XML Schema  element defined for this specification  The element has a complex type of  Per   sonList    which defines a sequence of     lt PersonName gt someName lt  PersonName gt      elements     Timeout Example    This example shows a timeout set on the enablement of an automated task  The  purpose of this task is to allow users a given time frame for the modification or con   firmation of a purchase order  This situation is shown in the sub net Ordering of Fig   55  where after the creation and the approval of the purchase order  the process flow  leads to a deferred choice among tasks Modify Purchase Order  Confirm Purchase  Order and Order Timeout     YAWL Editor v2 0 User Manual 62    Multiple Atomic Task  Verify list    Instance Detail  Queries  Multiple Instance Variable  SomePerson  Y    Accessor Query    fList_Maker Masterlist    Data C RCAC oe Bonne oC nn nn aac Bon 
64. tely    multiple in   stance composite task needs to have more information specified for it  to be valid     For setting data detail of multiple instance tasks  please see the    Setting Multiple In   stance Queries    section of this manual     YAWL Editor v2 0 User Manual 22          Y AWLEditor   COUT Datayr AWLEditor  ncillaryAscreenshotsV    MFig14 UserkanualExample  2 U  ywl  Specification Het Edit Elements Tools View Help    Task          p WENN     Begin My Get    Job Career    e     Manual     Started  e  Automated    e    Routing   y Plugin    Notes   Specification Validation Problems    Composite Task  study Privately 69 id  Study Privately 69  the xDuery fur param  null  cannot be equal to null     The task iid  ictal Frivately 69  claims to assign its output to a net vwariable named inullj  Howewer the cC          Use the palette toolbar to edit the selected net          Fig  14 Validation with unfinished Multiple Instance Tasks    7  Remove the  Study Privately  multiple instance composite task and re   place it with an atomic composite task using the same decomposition   and re drawing flows from  Begin My Career  and to  Get A Job  tasks   Your updated net should look like Fig  15     Q Y AWI Editor   CXQUTDataYXY AWLE ditorAnci llaryscreenshotsV2 DAFIg 15  UserManualExample  2 U  ywl  Specification Het Edit Elements Tools View Help          p       7  Task Icon    Mo Icon        Begin My   Career    o    Manual  Career Started    o   o Autamated  e     Routin
65. ter the  name of your task under Decomposition Label  then click Done    To label a Condition  right click on a task and choose Set Label     then type in a  name for the label and click Done    My specification won t validate without any errors and   don t know what to do     First  check the logic of your specification and exercise every branch of your workflow  for correctness     If you are sure of your workflow  consult the YAWL website for the proper use of the  YAWL elements     http   yawlfoundation org     YAWL Editor v2 0 User Manual 65    How do   find out more about the elements and principles of the YAWL work   flow specifications     For more information about the mechanics of the YAWL workflow elements  please  consult the YAWL website     http   yawlfoundation org      Copyright Notice    Copyright to this software and its source code is granted under the GNU Lesser General Public Li   cence  v2 1      For detail on the permissions this licence grants you  please refer to    http   Awww gnu org copyleft lesser html     This editor makes use of JGraph 5 9 2 2  This version of the JGraph library is covered under a n  LGPL style licence and is available separately from     http    www jgraph com      This editor also makes use of code from the YAWL Engine and its support libraries  The engine and its  support libraries are covered under their own individual copyright licences  detail of which may be  found at the YAWL website     http   www yawlfoundation org    
66. the starting net of the workflow  For details on selecting a starting  net  consult the Changing the Starting Net section in this manual     2  Alter the specification s properties as you feel appropriate  Click on    Specification in the Menu and choose Update Specification Proper   ties  A screen as per Fig  3 will appear     YAWL Editor v2 0 User Manual 10     T Update Specification Properties         Specification ID  hnnamedswl sd   Specification Name  Po  Specification Description   No description has been given      Specification Author linas      Version Number   0 1      EMEN i   amp  always  Specification valid from          i2 the date of O2 08 2007    PET  0 always  Specification valid until _     J the date of O2 O0e 200        Fig  3 Specification Properties Dialog    3  Rename this Net by clicking on the Net Menu and choosing Update  Net Detail     4  Enter the new name of the Net in the    Decomposition Label  field  then  click the Done button     Decomposition Variables will be explained later in the  Net Decomposi   tion Detail  section of this manual        Change the name of the Net in the Decomposition Label  to    My Ca    us reer   This Net will be the primary net for our scenario     5  You are now ready to start drawing your specification   Atomic Tasks  1  Click on the    Add an Atomic Task  button  O    in the Palette Bar  or    right click in the whitespace of the Net and choose Atomic Task     2  Position your mouse just to the right of the Input
67. this decomposition  data could be transmit   ted via a Web Service invocation to this company     To have a decomposition invoke custom YAWL service  do the following   3  Right click on a task  the choose Task Decomposition Detail     An Update Task    Decomposition dialog box will appear  see the    YAWL Registered Service Detail     box of Fig  29      YAWL Editor v2 0 User Manual AT    4  Enter the following details regarding the Web Service   YAWL Service     the Service registered with the YAWL Engine  5  Click Done to finish     If a valid running YAWL Engine instance can be connected to via the detail supplied  in the section above  the YAWL Service Dropdown Box will contain entries for all cus   tom YAWL services the engine has registered  Otherwise  only the default  manual    Worklist  YAWL service will be available     When you select a YAWL Service  the editor will query this running engine for the in   put and output variables required  and populate the decomposition variables of the  selected task with those variables  Base custom services that are supplied with the  engine include one for RPC Style Web Service Invocation  and one for making and  receiving mobile phone SMS messages  Later in this manual  an example editor save  file  showing the usage of a custom time service is supplied     YAWL Editor v2 0 User Manual 48    Validating  Exporting and Importing       At any stage you can validate or export your specification to a YAWL Engine execu   table XML f
68. tial value text is red     YAWL Editor v2 0 User Manual 32      Update Net Variable    testGeek       Standard Extended Attributes    Name  Ite stGeeak    usage   Local  v    Initial Value    sane John Franks  Name      Salary  lO000  00 lt  S5alary gt        Fig  24 A  Geek  net variable with initial value    Net Decomposition Detail   Net Variables  You can add variables to a net to store information relating to that net that tasks  within the net may need to read or update   To add a variable to a Net   1  Choose Update Net Detail from the Net Menu      We will be setting up Net variables in the    Attend University    net     Go to the    Attend University Net    and choose Update Net Detail from  the Net Menu     2  An Update Variables dialog box will appear  see Fig  25   Click on Cre   ate  An Update Net Variable dialog box will appear  Click Done  Create  another Net Variable with the name  SubjectCode  and Type of string   Leave the Initial Value blank and set the Usage to  Local   Click Done     i Update Net Decomposition    Attend Univ     Net Decomposition Label   Attend University      Net Decomposition Variables      Update       Darina  REMOVE                Fig  25 Updating  Attend University  Net Variables    YAWL Editor v2 0 User Manual 33    3  Enter the Name of your variable  choose the Type of the variable from  the list  then click Done  then Done again to close the Net Decomposi   tion dialog     E Type in    StudentNumber    for the name of the variabl
69. to    Look for an Easier Book    Atomic Task  Then left  click on the knee created and drag it out to a more desirable location   You can add as many knees to a Flow Relation as you like     Hepeat the process for the Flow Relation between  Look For an Easier  Book  and    Read A Book    tasks  see Fig  17      You can now reconnect flow relations to other elements of a net  or dif   ferent points on the same element by selecting the flow  and dragging  one of its connecting ends from one net element to another  If a con   nection is possible at some other element  connection points will be   come visible as described earlier  Release the mouse button to attach  the flow to its new home     Take the current flow relation  and move it from the top of the task to its  side  as depicted in Fig  17      _  Study Privately    Look for an  asier Book    Read A Book Knowledge Feel Smarter  Gained        Fig  17 Adding  knees  to a Flow Relation    YAWL Editor v2 0 User Manual 25       when the pallet button  Net Element Selection Mode      is selected  A  small editor will appear over the flow  Type your desired text  and com   mit the flow label by pressing the ENTER key  You may then drag that  flow label around as desired     Take the two flow relations that have recently had knees added to  them  Attach the label    yes    to the flow relation going from the    Knowl   edge Gained     condition to the    Feel Smarter    atomic task  Attach the  label    no    to the flow relatio
70. useful for times when  you want to create a complex type expression from individual variable  elements  Experience with XMSchema and XQuery are necessary to  understand the effects this button will have on runtime YAWL engine  state     y Select the  SubjectCode  variable from the list of Existing Task Vari   uS ables  Select the  SubjectCode  net variable and click add XQuery of  element s content only  Fig  33  Click Done      Update Task Parameter     SubjectCode          add XQuery of elements conte     pum EU  A add XQuery of entire element    Query   lt SubjectCode gt     Artend_Uni versity   subjectlode stext ey      lt  SubjectCode gt     populates the task variable    amp uhjectCode         Fig  33 Passing a net s SubjectCode value to a Task    YAWL Editor v2 0 User Manual 39    2    Create another Task Parameter and map the net  StudentNumber  to  the task variable of the same name using this technique  Click Done  and Done again     To add an Output Parameter           1     First select the task that will require the parameter  using Enter Mar   quee Selection Mode button     from the Palette Bar        We will be setting up Output Parameters for the variables that we cre   ated in the Adding   Updating TaskVariables section     Go to the    Attend University    Net and select the    Enroll    task     Right click on the task and choose Update Parameters     An Update  Parameters dialog box will appear  Fig  33      Update the Parameters for the    Enroll    task 
71. user     e This option is not available for an automated task     Expiry value    The expiry value of the timeout indicates for how long the timeout will live after being  activated  This value can either be dynamically read from a net variable of type     TimerType     late bound timeout  or be statically specified as a fixed type  via an  XML Schema    dateTime    type  or as a duration relative to the timeout activation  vua    an XML Schema  duration  type      The  TimerType  for late bound is defined as follows      lt complexType name  TimerType  gt    lt sequence gt    lt element name  trigger  gt    lt simpleType gt    lt restriction base  xs string  gt    lt enumeration value  OnEnabled   gt    lt enumeration value  OnExecuting   gt    lt  restriction gt    lt  simpleType gt    lt  element gt    lt element name  expiry  type  xs string   gt    lt  sequence gt    lt  complexType gt     YAWL Editor v2 0 User Manual    99    Extended Attributes    The editor offers a mechanism for defining extended attributed to be associated to  task decompositions  net variables and task variables  The implementation and the  semantics of these attributes is left to the developer     Extended attributes can be defined in property files  which need to be placed in the  folder  lt editor_installation_path gt  YAWL EditorPlugins Extended AttributeProp     erties     Attributes referring to net and task variables must be defined in a file named vari   ableProperties  no extension   while
72. using in the Palette Bar     Canvas    The Canvas is where you will be creating and editing your workflow diagram s      Specification Problem Table    The Specification problem table is where you see what problems are currently out   standing in the specification you are building     Background task progress bar    The Background task progress bar shows work in progress for certain background  tasks  like the saving of specification files     Menus Overview    This section provides a brief overview of the YAWL Menus located along the top of  the YAWL Editor     specification Net Edit Elements Tools View Help    Specification    The Specification Menu provides all the standard file options of Create  Open  Save   Close and Exit  It also contains options to validate  engine syntax   analyse  workflow  semantics   export the specification to the YAWL Engine  XML format   import speci   fications from the YAWL Engine XML format  updating the specifications XML  schema data type definitions  setting a specification s properties and for printing the  specification     YAWL Editor v2 0 User Manual 8    Net    The Net Menu provides options to create  remove  set the starting net  specify de   composition detail  and resize the currently selected net  It also provides options to  export a net to a PNG image file and for directly printing out the net     Edit    The Edit Menu provides the standard options of Undo  Redo  Cut  Copy  Paste and  Delete objects within your specification   
73. w  regard   less of whether you have the View Cancellation Set option ticked     e You can create multiple Cancellation Sets in your workflow  by selecting an   other task and choosing the View Cancellation Set option     e All flows leading to or from conditions are not valid cancellation set members   Neither are the Input and Output conditions  The editor will ignore them if you  select them for inclusion in a task   s cancellation set     To remove an element from a Cancellation Set   1  First  make sure you have the View Cancellation Set option ticked     If it isn t ticked  select the task that is initiating the Cancellation Set  us   ing the Enter Marquee Selection Mode tool from the Palette Bar and  right click  then choose View Cancellation Set     YAWL Editor v2 0 User Manual 30    select the element for removal  using the Enter Marquee Selection  Mode button           Click on the Remove Selected Items from Visible Cancellation Set but   ton       on the Menu Toolbar     Data Type Definitions    Version 1 1 of the YAWL Editor introduced the ability for workflow designers to spec   ify data that is processed by a workflow  XML Schema is used to describe the valid  data types that are available     By default  a number of simple XML Schema data types are supplied for variable  definition  but if you need more complex data types  you can supply your own XML  Schema definition to describe them     1     2     Select Update Data Type Definitions from the Specification M
74. ward directed path between the input and output condit        Use the palette toolbar to edit the selected net                                  Fig  42 An invalid specification    YAWL Editor v2 0 User Manual 49    To Export your specification to an XML file    1  Click on the    Export this specification to the YAWL Engine file format    button  E3  on the Menu Toolbar or click Specification on the Menu and choose Export to  YAWL Engine File       A window will appear asking you where to save the file     2  Select a location and choose Save     This specification save file can now be loaded into a running YAWL Engine and  executed     To Export a specification from an XML file     1  Click on the    Import YAWL Engine file  button        on the Menu Toolbar or click  Specification on the Menu and choose Import from YAWL Engine File        A window will appear asking you specify the engine XML file   2  Select a location and choose Open   This engine XML file is then loaded into the editor  As there is no layout and    graphing detail on the engine XML file  the editor will apply basic layout to the im   ported specification     YAWL Editor v2 0 User Manual 50    Specification Analysis       Verification of specifications for the engine only determines whether the specification  will be executed by the engine  In contrast  the analysis tool can be used to test for  deeper issues in the specification     The analysis toolbar button  EJ and matching Analyse Specification menu 
    
Download Pdf Manuals
 
 
    
Related Search
    
Related Contents
ahd series 4/8 channel  Imprimante photo compacte HP Photosmart 375  LC11 Liquid Nitrogen Level Controller User Manual  Bedienungsanleitung    Sony ECM-CR120 Operating Instructions    Copyright © All rights reserved. 
   Failed to retrieve file