A workflow system, in its general form, is basically a heterogeneous a
nd distributed information system where the tasks are performed using
autonomous systems. Resources, such as databases, labor, etc. are typi
cally required to process these tasks. Prerequisite to the execution o
f a task is a set of constraints that reflect the applicable business
rules and user requirements. In this paper we present a Petri Net (PN)
based framework that (1) facilitates specification of workflow applic
ations, (2) serves as a powerful tool for modeling the system under st
udy at a conceptual level, (3) allows for a smooth transition from the
conceptual level to a testbed implementation and (4) enables the anal
ysis, simulation and validation of the system under study before proce
eding to implementation. Specifically, we consider three categories of
task dependencies: control flow, value and external (temporal). We id
entify several structural properties of PN and demonstrate their use f
or conducting the following type of analyses: (1) identify inconsisten
t dependency specifications among tasks; (2) test for workflow safety,
i.e. test whether the workflow terminates in an acceptable state; (3)
for a given starting time, test whether it is feasible to execute a w
orkflow with the specified temporal constraints. We also provide an im
plementation for conducting the above analyses.