Information Technology Reference
In-Depth Information
directions, ranging from methodical enhancements of the underlying frame-
work to large-scale, systematic exploration of further application domains.
1.2.1 A Framework for User-Level Workflow Design
The conception of the workflow framework presented and used in this topic was
guided by the ideas that have also been summarized as the loose programming
paradigm [178]. Looseprogrammingproclaims a formof model-basedgraphical
software development that is designed to enable workflow developers to design
their application-specific workflows in an intuitive style. In particular, it aims
at making highly heterogeneous services accessible to application experts that
need to design and managecomplex workflows.After an adequate domain mod-
eling, application experts should ultimately be able to profitably and eciently
work with a world-wide distributed collection of services and data, using their
own domain language. Moreover, loose programming enables users to specify
their intentions about a workflow in a very sparse way, by just giving intuitive
high-level specifications, because there is a mechanism available that automat-
ically translates this request into a running workflow.
In fact, the concept of loose specification is key to the loose programming
approach: a specific graphical formalism allows developers to express their
workflows just by sketching them as kinds of flow graphs without caring
about types, precise knowledge about the available process components or
the availability of resources. They only have to specify the rough process
flow graphically in terms of ontologically defined semantic entities. These
loose specifications are then concretized to executable workflows automati-
cally by inserting missing detail. This is achieved by means of a combination
of different formal methodologies: Data-flow analysis provides information
on available and required resources, which is then used by a temporal-logic
synthesis algorithm [305] to find sequences of services that are suitable to
concretize the loose parts. Additionally, model checking is used to monitor
global process constraints continuously.
In order to address particular open issues of the workflow design phase
as identified above, emphasizing the importance of semantics-based work-
flow development support, the jABC framework [306] for model-driven,
service-oriented workflow development was extended by functionality for
semantics-based, (semi-) automatic workflow composition according to the
loose programming paradigm. In contrast to earlier implementations and ap-
plications of the synthesis method (such as, e.g., [98, 302, 307, 204]), loose
programming assumes a shared memory for data exchange between the ser-
vices in a workflow. Concretely, it makes use of the control-flow models and
workflow execution context as provided by the jABC framework, and applies
data-flow analysis techniques to keep track of the available data. As such,
workflow design is not restricted to creating mere pipelines of services, but
opens a new dimension of workflow synthesis: Data that is created by one
Search WWH ::




Custom Search