<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>A Formalism and Method for the Automated Synthesis of Executable Process Models from SME-authored Process Diagrams</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>José Manuel Gómez-Pérez</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>iSOCO S.A. Madrid</string-name>
          <email>jmgomez@isoco.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Spain</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Ontoprise GmbH Karlsruhe</string-name>
          <email>Erdmann@ontoprise.de</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Germany</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>General Terms Algorithms</institution>
          ,
          <addr-line>Measurement, Performance, Design, Human Factors, Languages, Theory, Verification</addr-line>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>Universidad Politécnica de Madrid Boadilla del Monte</institution>
          ,
          <addr-line>Madrid</addr-line>
          ,
          <country country="ES">Spain</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Enabling Subject Matter Experts (SMEs) to formulate knowledge without the intervention of Knowledge Engineers (KEs) requires providing SMEs with methods and tools that abstract the underlying knowledge representation, allowing SMEs to focus on the modeling activities. However, automatically bridging the gap between SME-authored models and their internal representation is not an easy task, especially in the case of complex knowledge types like processes, where aspects like frame management, data, and control flow need to be addressed. In this paper, we present a process representation formalism and method for automatically grounding SME-authored process models in the form of process diagrams into a particular representation language, supporting process representation and reasoning.</p>
      </abstract>
      <kwd-group>
        <kwd>eol&gt;Process knowledge representation</kwd>
        <kwd>SMEs</kwd>
        <kwd>PSMs</kwd>
        <kwd>F-logic</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>1. INTRODUCTION</title>
      <p>Enabling Subject Matter Experts (SMEs) to model processes by
themselves without the intervention of Knowledge Engineers
(KEs) is a complex problem that needs to be addressed from a
multidimensional perspective in order to: i) provide the required
knowledge artifacts to acquire process knowledge and ii) develop
usable tools enabling SMEs to exploit such artifacts. To this
purpose, our work has focused on producing the following
models, methods and tools:</p>
      <p>A process metamodel, which provides the terminology
necessary to express process entities in scientific domains
and the relations between them.</p>
      <p>
        A library of Problem Solving Methods [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ], which provides
high-level, reusable abstractions for process representation
and reasoning strategies.
3. A graphical modeling and reasoning environment, which
leverages the process metamodel and the PSM library to
enable SMEs to model processes.
4. A formalism and method for the automatic synthesis of
executable process models from SME-authored process
diagrams.
      </p>
      <p>
        While we presented the first three outcomes in [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], herein we
focus on the fourth. More details about the overall approach can
be found in [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
      </p>
    </sec>
    <sec id="sec-2">
      <title>2. REPRESENTING AND REASONING</title>
    </sec>
    <sec id="sec-3">
      <title>WITH PROCESS KNOWLEDGE</title>
      <p>We consider four main types of process reasoning to be supported
by the formalism: i) reasoning about process entities, ii)
intermediate results, iii) process stages, and iv) process
preconditions. For example, the multiple-choice question below,
selected from Advanced Placement
(http://apcentral.collegeboard.com) exams in Biology, illustrates
the third type of process reasoning.</p>
      <p>Which part of the animal cell is required only in the first
stage of mitosis and what is the name of such stage?</p>
      <p>chromatin and prophase
chromatid and prometaphase
centromere and anaphase
plasma membrane and telophase
In our formalism, a process consists of a set of process actions,
connected in the form of a directed graph, with pre and post
conditions whose evaluation both determines the flow of data
between process steps and controls the order in which such
actions are executed. We define the pre and post states of an
action respectively as the content of the process frame
immediately before and after its execution. The pre state contains
all the process resources in the knowledge base that serve as
inputs to the action, while the post state contains the outcomes of
its execution, obtained by operating on the contents of the pre
state.</p>
      <p>
        At modeling time, our code generation method automatically
synthesizes sound and complete executable code in the form of
Flogic rules associated to each action in a process model. F-logic i)
provides a single entry point for reasoning, supporting the
different knowledge types involved in particular questions, ii)
enables the use of rule knowledge for reasoning within processes,
and iii) keeps introspective properties for retrieval of
metainformation about processes, like subprocesses and intermediate
process results. Process rules manage the process frame [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] in
order to support data and control flow and can be classified as
follows: i) setup rules, which take the relevant portion of
knowledge from the overall knowledge base, ii) transition rules,
which describe the transformation of inputs into outputs, and iii)
precedence rules, which transfer the output of actions to their
successors. We optimize performance by avoiding second order
reasoning and well-founded semantics evaluation mode. Next, we
show the sample F-logic code of a transition rule corresponding to
a muscle contraction process:
FORALL m, e, j
j: jump@postState(muscleContraction) AND
j: OUTPUT@postState(muscleContraction) AND
muscleContraction[PROVIDES -&gt; j] @postState(muscleContraction)
&lt;m:muscle @preState(muscleContraction) AND
m:TOOL@preState(muscleContraction) AND
m[IS_USED_BY -&gt; muscleContraction]@preState(muscleContraction) AND
e:energy@ preState(muscleContraction) AND
e:RESOURCE@preState(muscleContraction) AND
e[IS_CONSUMED_BY -&gt; muscleContraction]@preState(muscleContraction).
      </p>
    </sec>
    <sec id="sec-4">
      <title>3. EVALUATION</title>
      <p>This work was evaluated by an independent team in the context of
project Halo. Six SMEs formulated knowledge on the selected
syllabi for the domains of Chemistry, Biology, and Physics, and
tested reasoning with it. The quality of the resulting knowledge
bases was determined by test sets created by the SMEs themselves
through the testing &amp; debugging tool in the system in order to
check that their process models actually behaved as expected.
82% of the process models were correct. In all cases, process
models were formulated by SMEs without intervention of KEs
and only required initial training and sporadic support in the
utilization of the tools.</p>
      <p>
        The process modeling environment was rated by SMEs with an
average of 64.5 out of 100 in the System Usability Scale [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ]. As to
utility, SMEs modeling process knowledge rated the approach
with an average of 3 points out of 4, especially in the domain of
Biology. Additionally, personal interviews with SMEs showed a
high degree of satisfaction, with comments like “It makes the
representation of biological models easier” (SME2) and “The
modeling of processes is very useful. It must be possible to ask
questions about the various states of a process. And asking
questions with T&amp;D worked okay” (SME3).
      </p>
      <p>We studied the effects of the application of the optimizations
described in section 6 to the F-logic code resulting from the
process models formulated by the SMEs. We measured response
times (Table 1) of a sample of ten queries uniformly distributed
across the four reasoning types described in section 2. These
queries were executed against the Biology knowledge base
produced by SME3, which contained the largest sample of
process knowledge produced by the SMEs in the evaluation, with
three different configurations of the F-logic reasoner OntoBroker,
combining different uses of well-founded evaluation and
secondorder reasoning. C0 is the most generic configuration, with the
well-founded evaluation mode enabled and concept and attribute
names ground disabled. C1 and C2 correspond to the optimization
methods described in the previous section. C1 aims at increasing
performance with respect to C0 by enabling concept and attribute
names ground while C2 extends C1 by additionally disabling
well-founded evaluation.</p>
      <p>The results of executing this query set with the three different
configurations are shown in Table 1 (values equal to 0 stand for
queries with response times lower than 1ms) shows an average
performance improvement of 25% for C1 and almost 30% for C2.
The main reason is that concept and attribute names are ground as
in C1. C2, an extension of C1 that also disables well-founded
evaluation mode, adds in this case little performance gain since
the code generation mechanism already produced most of the
code in well-stratified form, hence reducing the need of
wellfound semantics.</p>
    </sec>
    <sec id="sec-5">
      <title>4. ACKNOWLEDGMENTS</title>
      <p>This work has been funded by Vulcan Inc. as part of Ontoprise’s
DarkMatter project within the Halo project
(http://www.projecthalo.com).</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <surname>Brooke</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          (
          <year>1996</year>
          )
          <article-title>SUS: a "quick and dirty" usability scale</article-title>
          . In P. W.
          <string-name>
            <surname>Jordan</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          <string-name>
            <surname>Thomas</surname>
            ,
            <given-names>B. A.</given-names>
          </string-name>
          <string-name>
            <surname>Weerdmeester</surname>
          </string-name>
          &amp;
          <string-name>
            <surname>A. L.</surname>
          </string-name>
          <article-title>McClelland (eds</article-title>
          .) Usability Evaluation in Industry. London.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <surname>Gómez-Pérez</surname>
            ,
            <given-names>J.M.</given-names>
          </string-name>
          <article-title>Acquisition and Understanding of Process Knowledge using Problem Solving Methods</article-title>
          .
          <source>Studies on the Semantic Web vol. 7. AKA Verlag - IOS Press. ISBN: 978-3-89838-639-5</source>
          . June 2010.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <surname>Gómez-Pérez</surname>
            ,
            <given-names>J.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Erdmann</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Greaves</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          <article-title>Applying Problem Solving Methods for Process Knowledge Acquisition, Representation, and</article-title>
          <string-name>
            <surname>Reasoning. KCAP</surname>
          </string-name>
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <surname>McDermott</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <article-title>Preliminary steps towards a taxonomy of problem-solving methods</article-title>
          . In Marcus, S., editor,
          <source>Automating Knowledge Acquisition for Expert Systems</source>
          , pages
          <fpage>225</fpage>
          -
          <lpage>255</lpage>
          . Boston, Kluwer.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <surname>Pylyshyn</surname>
            ,
            <given-names>Z.W.</given-names>
          </string-name>
          <article-title>The Robot's Dilemma: The Frame Problem in Artificial Intelligence</article-title>
          .
          <source>Norwood</source>
          ,
          <year>1987</year>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>