Features of YAWL

YAWL offers the following distinctive features:

  • YAWL offers comprehensive support for the control-flow patterns. It is the most powerful process specification language for capturing control-flow dependencies.
  • The data perspective in YAWL is captured through the use of XML Schema, XPath and XQuery.
  • YAWL offers comprehensive support for the resource patterns. It is the most powerful process specification language for capturing resourcing requirements.
  • YAWL has a proper formal foundation. This makes its specifications unambiguous and automated verification becomes possible (YAWL offers two distinct approaches to verification, one based on Reset nets, the other based on transition invariants through the WofYAWL editor plug-in).
  • YAWL has been developed independent from any commercial interests. It simply aims to be the most powerful language for process specification.
  • For its expressiveness, YAWL offers relatively few constructs (compare this e.g. to BPMN!).
  • YAWL offers unique support for exception handling, both those that were and those that were not anticipated at design time.
  • YAWL offers unique support for dynamic workflow through the Worklets approach. Workflows can thus evolve over time to meet new and changing requirements.
  • YAWL aims to be straightforward to deploy. It offers a number of automatic installers and an intuitive graphical design environment.
  • Through the BPMN2YAWL component, BPMN models can be mapped to the YAWL environment for execution.
  • The Declare component (released through declare.sf.net) provides unique support for specifying workflows in terms of constraints. This approach can be combined with the Worklet approach thus providing very powerful flexibility support.
  • YAWL's architecture is Service-oriented and hence one can replace existing components with one's own or extend the environment with newly developed components.
  • The YAWL environments supports the automated generation of forms. This is particularly useful for rapid prototyping purposes.
  • Tasks in YAWL can be mapped to human participants, Web Services, external applications or to Java classes.
  • Through the C-YAWL approach a theory has been developed for the configuration of YAWL models. For more information on process configuration visit www.processconfiguration.com.
  • Simulation support is offered through a link with the ProM (www.processmining.org) environment. Through this environment it is also possible to conduct post-execution analysis of YAWL processes (e.g. in order to identify bottlenecks).