Frequently Asked Questions

Frequently Asked Questions about the YAWL workflow system. Click on a question to reveal the answer.

Installation (4)

Printer-friendly version

The YAWL editor role is used in the YAWL process designer for connecting to the worklet service. The standard password is "yEditor".

The password can be changed in the control centre under "Client apps".

Printer-friendly version

Does YAWL run with version x.y of Linux distribution z -  e.g. Ubuntu 11.10?

 

YAWL should be able to run on any available Linux distributions. YAWL relies on the Apache Tomcat server that it runs on and therefore has the same prerequisites as the Apache Tomcat.

Printer-friendly version

As explained in the YAWL User Manual they both include the complete YAWL system. Theoretically you may deploy the YAWL servlets in any servlet container enviroment manually.

  • YAWL4Enterprise is available only for Windows plattforms and uses the PostgreSQL database management system as backend. It is suited for a production enviroment and more configurable.
  • YAWL4Study is available for Windows, Mac and Linux and uses the Apache Derby database and ships with a reasonable default configuration. It is suited for testing and presentation usage.
Printer-friendly version

After installation YAWL4Study an administrative account is available with these credentials:

Username: admin
Password: YAWL (case sensitive)

This default administrative account may be switched off with the AllowGenericAdminID switch in the web.xml of the YAWL engine. (/engine/apache-tomcat-6.0.18/webapps/yawl/WEB-INF/web.xml)

Modeling (2)

Printer-friendly version

In the standard YAWL distribution is a codelet called "TaskCompleterInfo" that can help here. It stores the user ID and the user name of the user who completed a certain task in a variable. This variable can then be passed on to the worklet as an input parameter and there it can be used in the resources dialogue to refer to a participant in the section net parameters.

Printer-friendly version

Many of the YAWL workflows consist of only tasks and the special input and output conditions. Are conditions merely a remainder of the Petri net origins of YAWL or are they really useful? The answer is: they are useful. You can model workflows where the user can start one of many offered alternative workitems and the others are withdrawn from the worklist (see also the following article).

Administration (5)

Printer-friendly version

The YAWL editor role is used in the YAWL process designer for connecting to the worklet service. The standard password is "yEditor".

The password can be changed in the control centre under "Client apps".

Printer-friendly version

Access the YAWL resouce service and log in as an administrator. Once logged in, choose the tab 'Client Apps'. There you will find a list of 'Registered Client Application Accounts'. Select 'admin' and choose edit. Now you can set a new password for the default admin user.

Printer-friendly version

After installation YAWL4Study an administrative account is available with these credentials:

Username: admin
Password: YAWL (case sensitive)

This default administrative account may be switched off with the AllowGenericAdminID switch in the web.xml of the YAWL engine. (/engine/apache-tomcat-6.0.18/webapps/yawl/WEB-INF/web.xml)

Printer-friendly version

When you are logged in as admin in the YAWL control center, you can import and export organisational data via a simple click of a button in section Org Data. But what if you want to start from a clean slate and delete all organisational data? Deleting roles and users one by one via the YAWL control center can become tedious. There is a very simple workaround for that: in the engine/databases directory of the standard YAWL4Study installation there is a directory called yawldb. Replace this directory with the one from misc/yawldb and the engine's organisational data are reset. NOTE: this also deletes all loaded workflow specifications and cases.

Printer-friendly version

The YAWL control center is an indispensable application. It can be used by administrators to perform administrative tasks like loading new specifications, cancelling cases, adding new users etc. It can also be used by ordinary users to process their worklist.

But who starts workflows in practice? Suppose that you are an employee in an enterprise and you want to start the workflow for an application for leave. You would not want to go to the central workflow admin for that. In YAWL you cannot give the right to start workflows selectively to users. Either you cannot start workflows at all or you can start all workflows (because you are admin).

The solution is that the YAWL engine is always running under an application (e. g. a web-portal) that has its own user administration and that can start workflows. Thus you can selectively provide users with "buttons" to start the workflows they need.

Resource Service (1)

Printer-friendly version

If you are logged in, but you cannot see the 'Work Queue' tab in the YAWL Resource Service, then you are most likely logged in as the admin. Only normal users can see the Work Queue tab, since tasks cannot be assigned to the admin. To see the Work Queue, you need to be logged in as a normal user. If you have not yet created one, you can do so in the 'Users' tab.

A work item will only appear in the user's Work Queue, if the corresponding task is running and offered, allocated or started for the user. To see if any cases are running and to whom task are assigned to, you can log on to the YAWL Resource Service as the admin and go to the 'Admin Queues'.

Database (1)

Printer-friendly version

It has to be differentiated between the database that YAWL uses to store its state (YAWL database) and a database that is manipulated during a case with data captured in the work items (Other database).

YAWL database

As YAWL uses hibernate as persistence layer it supports every database that Hibernate supports. (see here) All you need to do is to configure the database in the hibernate.properties file of the three web applications "resourceService", "yawl" and "workletService". Refer to YAWL manual section 2.4.4 for more information.

Other database

YAWL offers multiple ways to store the captured data of a whole case or a single work item in a database.

  • Write a YAWL codelet that writes the tasks input parameters to a database, using for example JDBC. (Extending AbstractCodelet)
  • Write a YAWL external data gateway. (Extending AbstractExternalDBGateway) A external data gateway populates a case or work item from the database or updates the database with data after completion of a work item or case.
  • Write a YAWL service that handles the whole task.