Information Technology Reference
In-Depth Information
the PROPHETS synthesis framework and the introduction of explicit vari-
ability management, which are described in greater detail in the following,
can be regarded as direct outcomes of this work.
Synthesis Framework
This topic has demonstrated that the PROPHETS plugin, which is the cur-
rent reference implementation of the loose programming paradigm, facilitates
semantics-based, (semi-) automatic workflow design within the jABC frame-
work for service-oriented, model-driven process/workflow development. Open
issues involve in particular the performance of the current implementation of
the synthesis algorithm, the flexibility of the specifications, and an instance-
based synthesis procedure, but also different usability aspects ought to be
addressed in the scope of future work. The major ideas in these regards are
sketched in the following.
Performance
Improving synthesis performance can essentially be done by improving the
performance of the automaton construction and of the search for solutions (cf.
Section 9.1.2). As for the construction of the automaton, existing ideas com-
prise an adaption of the fast LTL to Buchi Automata Translation described
in [101] for finite automata, or a direct compositional automaton construc-
tion strategy, for which ideas like Second-order Value Numbering [213] could
be applied.
Regarding the actual search for solutions, the main idea for improving
the performance of the synthesis algorithm is to make use of domain-specific
heuristics [255, Section 3.6] for the search for solutions. As discussed earlier,
constraints can reduce the size of the search space effectively, especially when
expressing (domain-) specific knowledge about the intended solutions. Thus,
domain-specific search heuristics might exploit domain-specific knowledge,
such as typical workflow patterns, to better recognize adequate solutions and
thus speed up the search.
The impact of state explosion, however, remains also with improvements
as sketched above. Hence, additional, pragmatic strategies are needed for
making synthesis feasible also for average desktop or laptop computers. The
simplest idea in this regard is to execute the synthesis remotely on a truly
performant server. More sophisticated would be to apply a kind of divide-
and-conquer strategy (cf. Section 7.2.3): Instead of synthesizing one long
sequence of services, several smaller sub-workflows are synthesized and then
strung together. Due to the exponential runtime behavior of the synthesis,
the decrease of the maximal search depth to be explored would then result in
a better overall execution time. The central challenge here is how to split the
initial synthesis into adequate, definite sub-problems. One possible starting
point could be to identify elements in the solution that are guaranteed by
 
Search WWH ::




Custom Search