Page 31 -
P. 31

16                                                  W. van der Aalst et al.
                           evolve over time due to changes in a business and/or its environment. As in differ-
                           ent contexts different solutions may be desirable, YAWL not only provides services
                           supporting various flexibility requirements but also allows these services to inter-
                           operate. This leads to a powerful approach in dealing with such requirements. For
                           example, it is possible to combine the procedural YAWL language with worklets
                           (cf. Chap. 4) and Declare (cf. Chap. 6). Worklets can be used to select process frag-
                           ments at runtime based on rules. Declare can be used to enact processes based on
                           (temporal) constraints.
                              The YAWL support environment is open source and is therefore not only freely
                           available but can also be extended as desired, thus avoiding vendor lock-in. Its
                           service-oriented architecture, with a rich set of interfaces, allows the system to
                           interact with other systems and to be extended in a variety of ways.
                              Through a link with the ProM environment, YAWL logs can be analyzed in a
                           number of ways and YAWL specifications can be simulated. For example, it is pos-
                           sible to do a simulation that starts with the current state and that looks into the
                           near future, for example, to decide whether it is beneficial to hire more resources
                           or not. The log analysis can reveal, among others, what the typical walk-throughs
                           are through a process or what the probabilities are of the process choosing one
                           alternative path over another.
                              Finally, one can leverage the benefits of BPMN through the BPMN2YAWL plug-
                           in, where BPMN models can be mapped onto YAWL specifications. Contrary to
                           BPEL, the resulting YAWL models remain readable and maintain a close link with
                           the original BPMN models. This is a consequence of the fact that in YAWL arbi-
                           trary cycles can be specified and that YAWL offers comprehensive support for the
                           control-flow patterns in general. The BPMN2YAWL plug-in is discussed in detail
                           in Chap. 13.



                           1.9 Overview of the Book


                           This book is about YAWL, both the language and the open source support environ-
                           ment. It discusses the foundations of the language, its unique support for flexibility,
                           the support environment, services that can interoperate with this environment, its
                           relationship to other well-established approaches in the field of BPM, and sev-
                           eral applications. There are many technical papers that focus on various aspects
                           of YAWL. This book aims to make this work accessible to a wider audience and is
                           therefore less technical in nature. Where possible, references are provided so that the
                           interested reader can deepen her understanding of specific topics. Another objective
                           of this book is to bring the main material concerning YAWL together in one place
                           and to properly integrate this material. To facilitate the understanding of the reader,
                           a running example is provided in the area of supply chain management.
                              The book is divided into nine parts. Part II provides the conceptual foundation of
                           YAWL. It explains the concepts required for workflow specification and introduces
                           the running example.
   26   27   28   29   30   31   32   33   34   35   36