processes: handling of complex workflow-relevant data and complex activity
sequencing rules. The main extensions are:
Introduce the capability of using complex data in the processes; this
extension must consider two aspects: the definition of complex data types
and the presentation and editing of such data.
Add the management of new rules for the sequencing of activities, such as
split of thread of control among two (or more) branches that can be
executed in parallel or in mutual exclusion (based on some condition),
and the join of multiple branches.
Domain analysis . The wide diffusion of workflow and process enactment
systems requires a framework to support their development. We started the
top-down domain analysis from the reference models defined by inter-
national bodies, and from the inter-operation standards. Accordingly we
developed a framework that is conformant with the standards.
Scope . The framework provides the infrastructure required to develop
workflow systems. It provides the basic mechanisms to enact business
processes. The domain comprises the processes, the organization performing
such processes and the data manipulated.
Customization . The customization of the framework can be performed by
means of definition files that contain the description of both the processes
and the data. This file is a sort of script that defines the behaviour of the
system. This kind of customization can be classified as grey box.
Script extensible framework
Allow the user to easily customize the framework by
adding new functionalities.
Forces or tradeoffs
The concept of the framework requires new classes to
customize the framework.
The user must not be required to program to customize
The framework must be customizable at run time.
Define a component ( Behavior Specification ) that can be
used to define the behaviour of the framework. This part
of the framework has a meta-functionality because it is
used to define an object structure that is interpreted by
the core component of the framework.
Based on this run-time customization facility it is
relatively easy to define a language that is used to script
the behaviour definition. A scripting component parses
the language and builds a representation using the