<!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>The Role of FLIPP Explainers as a Tool to Assist the Visual Composition of Web Services for Enterprise Systems</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Neil Adams</string-name>
          <email>neil.g.adams@gmail.com</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Simon Polovina</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Richard Hill</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Faculty of Arts, Computing, Engineering &amp; Sciences, Sheffield Hallam University</institution>
          ,
          <addr-line>Sheffield</addr-line>
          ,
          <country country="UK">United Kingdom</country>
        </aff>
      </contrib-group>
      <fpage>7</fpage>
      <lpage>12</lpage>
      <abstract>
        <p>This work considers process orchestration for software development on ServiceO-riented Architectures (SOA). In this rese arch the concept of FLIPP explainers are introduced to the web service community. The FLIPP explainer is a conceptual structure providing mass simplification to otherwise complex logic without the use of text or symbols. In this research the FLIPP explainer has been transformed into a workable tool to develop composite applications alongside SOAs as a direct alternative to some of the current products being offered by SAP and Oracle. Tests indicate that the tool has potential to assist in the development of applications but offers more real promise for the visualization of complex systems and processes. Also, the work highlights the fundamental issues that the FLIPP has for software development, including the initial complexity of designing the diagrams. Finally, guidelines for future enhancements and potential work are provided.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        diagrams achieve this by creating ‘scenarios’ which portray the unambiguous
options to the user. Sowa [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] comments that each diagram provides the user
with an acrylic and-or graph in rectangular blocks, nested together to form the
system. Cox and Polovina [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] imply that by using the diagram frames, it is
possible to represent ideas that are not easily conveyed through semantics alone.
      </p>
      <p>
        The most convenient way to describe FLIPP Explainers is through example
and Figure 1 shows a sample FLIPP diagram by Sowa[
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. Cox explains how to
read the diagrams as “read down, don’t cross verticals”. From this example it
is possible to analyse the characteristics of the FLIPP diagrams. Sowa[
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] notes
that the 11 boxes, marked A to K, are grouped vertically, by implicit (AND)
symbols, and horizontally, by implicit (OR) symbols. Therefore, according to
Sowa, figure 1b can be represented logically through the following equivalent
formula:
      </p>
      <p>A ∧ ((B ∧ ((D ∧ G) ∧ (E ∧ H))) ∧ (C ∧ F ∧ (I ∧ J ))) ∧ K
(1)
In English the above diagram can be read as follows: “Start with A, if you proceed
to B as opposed to C then use D followed by G or E then followed by H. If you
follow A with C then use F followed by either I or J. Regardless of route, finally
finish with K.”</p>
      <p>
        It is by this reasoning that it seems that web services can be modelled through
these diagrams in order to improve user understanding and also to provide a
logical framework for semi-automated decision making. Although the concept
of FLIPP diagrams in relation to user interfaces has not been investigated yet,
Sowa[
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] has researched them in their original context. Figure 2 shows Sowas’
positioning of FLIPP diagrams in relation to common logic and other structures
related to the semantic web. By mapping a FLIPP diagram to formats such as
controlled English, processing can occur upon the logic by existing languages.
What is attractive about the FLIPP explainer in relation to this work is the
impact that it has upon data visualization. FLIPP diagrams immediately convey
complex information to people without the need to learn symbols or notation.
The results of this research have been collated from a number of business and
process analysts working at British Airways. In order to ascertain the results, the
users were subjected to a range of case studies and asked for opinions regarding
the usability and relevance of the interface for their current jobs. These results
are outlined in the section below.
      </p>
      <p>When comparing FLIPP explainers with SAP Visual Composer some of the
claims made by Cox regarding FLIPP explainer appear to be subjective. Analyst
1 found that lines were easier to decipher than the box system whereas Analyst
2, although understanding the methodology, failed to see a real advantage at
this stage. However, Analyst 3 found that reading the processes was much
easier on the FLIPP interface than on VC. Therefore it appears that there are
two distinct phases of using the FLIPP diagram in process orchestration;
software composition, creating a FLIPP, and software modification, reading from a
FLIPP.</p>
      <p>
        Cox’s[
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] main claim, regarding FLIPP’s simplicity of reading, is certai nly
shared by Analysts 2 and 3. Both users felt that it is simple to track processes
through the FLIPP grid yet they both struggled to produce the diagrams
initially. Parush et al.’s [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] work note that the use of graphic stimuli in a structured
interface help to create a h‘olistic’ view that users can interpret at a glance. This
effect was enhanced significantly amongst inexperienced users which is also
evident in the FLIPP testing analysis. Analyst 3 had little knowledge of the are
prior to experimentation and afterwards understood the purpose of both the
diagrams and the systems perfectly.
      </p>
      <p>However, Analyst 1 had plenty of knowledge of reading diagrams from UML
and other experience but failed to see the benefit of the holistic view. However,
when it came to developing the interfaces all the users had at least some initial
problems. There appear to be two obvious explanations for this trend. Firstly it
could be down to the lack of a finalised interface that caused the user frustration
with simple problems such as limitations with the colours or deleting items.
However it is more likely that it is harder to plan a system in ones’ head prior
to expressing it on a FLIPP interface. The development process of a FLIPP
explainer is not covered in detail in Cox’s material yet it is a fundamental part
of the process. Therefore with this part of the process proving challenging it may
deter other users as well.</p>
      <p>
        A common criticism of the interface in the results is the inability for the user
to create a series of loops or to use iteration to reach a particular goal. Analyst
3’s suggestion of using bolder borders, seems like a particularly interesting idea,
especially when compared to the idea of having linking arrows, thus effectively
detracting much of the simplification from the diagram. However even this leads
to some questions regarding usability as Cox[
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] champions the FLIPP diagrams
to reduce the complexity of standard arduous textual descriptions. Other
systems, such as SAPs’ Visual Composer, have the luxury of being able to simple
connect an arrow back to the start of the loop which is activated when a guard
condition is met. Interestingly in the SAP system it is not possible to mark the
guard condition on the line thus limiting the visualization that is available.
      </p>
      <p>
        Analyst 2 raised the point that between cells in the process there is no method
for identifying the condition that is met to trigger a certain path through the
system. Inside the SAP interface there is generally either a description on a
connecting line or the inputs/outputs to be connected are clearly shown.
However, inside the FLIPP interface at present this information isnt’ availabl e which
causes uncertainty. Pautusso and Alonso[
        <xref ref-type="bibr" rid="ref6">6</xref>
        ] conclude that a visual approach is
the natural complement to service selection only when the correct amount of
information is provided in the visualization.
      </p>
      <p>In order to read the FLIPP explainers the creator has derived a top to bottom
methodology as standard. However it was commented on by Analysts 2 and
3 that processes are traditionally expressed from left to right and Analyst 1
automatically began developing in the left hand corner. Analyst 2, in particular,
found that the processes should be expressed this way to promote usability
amongst differing sets of people. Many of the results taken from the analysts
appear to represent the FLIPP interface in a bad light. However the analysts
didnt’ report that the interface contained any fundamental problems. All the
analysts agreed that the interface was easy to read from and many of the points
mentioned above are purely improvements that would be necessary to use the
interface for on a full scale implementation.</p>
      <p>One major problem that has become apparent with the FLIPP explainer
when used in this context is related to the connection of inputs and outputs.
Each of the analysts liked the simple method of connection that the interface
utilised by combining the inputs via a single screen. However the problems
become apparent in the modification of the grid layout. When the grid is moved
with the web services attached it can effectively disconnect any connections that
have been made when the web services were placed in the grid.
3</p>
      <p>Conclusions
The principle contribution is that the FLIPP explainer appears to have a
future role in the composition of web services, assuming that some of the initial
limitations can be resolved. In response to the original question, of whether it
is possible to portray more information through a simpler visualization, the
results indicate that it is possible to convey more information through a FLIPP
based interface than through the current implementations. This is substantiated
as follows:
– Although the results suggest that it is easier to read data from FLIPP
diagrams, it is not clear whether it is a tangible effort or time saving approach
for the user;
– Being able to compile FLIPP diagrams quickly and accurately appears to be
an ability that requires some degree of skill;
– The benefit of process visualization via FLIPP diagrams also depends on the
person involved to a certain extent. However it appears to be less important
than when creating systems.</p>
      <p>
        It is apparent that the FLIPP explainers original claim by Cox[
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] that users
prefer complex logic to be portrayed without l‘anguage, symbols or formula ’ is
partially true when used for developmental purposes. Users have a desire to feel
empowered by the application and not restricted or frustrated with functional
limitations. Therefore the challenge for implementing a successful FLIPP
interface is to understand the balance between usability and simplicity. Building a
FLIPP interface true to Coxs’ guidelines [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ] would provide a logically super ior
product which would excel at demonstrating systems to people unaware of the
method. However, as noted by Halipern and Tarr[
        <xref ref-type="bibr" rid="ref3">3</xref>
        ], too much simplification
restricts the purpose of the interface, particularly for experienced users, thus
negating any advantages that might have been achieved.
      </p>
      <p>One of the limitations of the FLIPP interface is that it still fails to provide
an adequate method in assisting users to select the correct services for their
applications. In its current form it serves simply as a tool in the armory of
the Visual Composer user, and would best be used as an optional construct
dependent upon the developer’s preferences.</p>
      <p>
        However, the tool still has a much greater potential when assisting
information visualization. Ultimately, this is the strength of the FLIPP explainer, and
by implementing a system where the grid is used to assist in modifying
previous composite applications, or for identifying useful components from other
processes, its potential will be maximised.
This work represents the first stages of a topic that could potentially lead in many
disparate directions. Firstly, the immediate future would be to create an interface
with sufficient functionality that it could be used inside an SOA environment
to provide genuine ‘like for like’ tests. This, followed by more detailed a nalysis
of user behaviour in the environment would provide a detailed insight into the
real benefits of FLIPP diagrams for a variety of users. Another possible use
of the FLIPP diagram is to combine the interface with other Common Logic
tools. This would enable users to quickly and easily search for a process that
would meet their exact needs whilst communicating the relevant output via
the FLIPP interface. Sowa[
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] describes a link between FLIPP Explainers and
Common Logic, thus suggesting that this approach has potential. Since it is
possible to represent the FLIPP data inside common logic notation, it would
therefore be feasible to expose the composed service for placement within other
conceptual structures. Future work involving FLIPP Explainers is to be focused
around improving service composition and visualizing the processes for future
modifications.
      </p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Cox</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          (
          <year>2005</year>
          )
          <article-title>Explanation by Pattern Means Massive Simplification (an E-b ook</article-title>
          ),
          <source>[online] Last accessed 20th June</source>
          <year>2007</year>
          at http://www.flipp-explainers.org/
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Cox</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Polovina</surname>
            ,
            <given-names>S</given-names>
          </string-name>
          (
          <year>2007</year>
          )
          <article-title>Helping System Users to Be Smarter by Representing Logic in Transaction Frame Diagrams</article-title>
          ,
          <source>In Proceedings: of15th International Conference on Conceptual Structures, ICCS</source>
          <year>2007</year>
          ,
          <article-title>Sheffield</article-title>
          ,
          <string-name>
            <surname>UK</surname>
          </string-name>
          ,
          <source>July 22-27</source>
          ,
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3. Hailpern and
          <string-name>
            <surname>Tarr</surname>
          </string-name>
          (
          <year>2006</year>
          )
          <article-title>Model-driven development: The good, the bad, and the ugly</article-title>
          ,
          <source>In IBM Systems Journal</source>
          , Vol
          <volume>45</volume>
          , No 3.
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Norton</surname>
            ,
            <given-names>D</given-names>
          </string-name>
          (
          <year>2007</year>
          )
          <article-title>SOA is a Catalyst for ModelD-riven</article-title>
          <string-name>
            <surname>Development</surname>
          </string-name>
          , Gartne r Research
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Parush</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hod</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Shtub</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          (
          <year>2006</year>
          )
          <article-title>Impact of visualization type and contextual factors on performance with enterprise resource planning systems</article-title>
          ,
          <source>Computers &amp; Industrial Engineering</source>
          ,
          <volume>52</volume>
          ,
          <fpage>133</fpage>
          -
          <lpage>142</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Pautasso</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Alonso</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          (
          <year>2003</year>
          )
          <article-title>Visual Composition of Web Services</article-title>
          ,
          <source>In: Proceedings of the 2003 IEEE Symposia on Human Centric Computing Languages and Environments</source>
          , Auckland, New Zealand,
          <year>October 2003</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Sowa</surname>
            ,
            <given-names>J. F.</given-names>
          </string-name>
          (
          <year>2007</year>
          ) FLIPP Diagrams, [online]
          <source>Last Accessed 20th November</source>
          <year>2007</year>
          at: http://www.jfsowa.com/logic/flipp.htm
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Woods</surname>
            ,
            <given-names>D</given-names>
          </string-name>
          &amp; Mattern,
          <string-name>
            <surname>T.</surname>
          </string-name>
          (
          <year>2006</year>
          )
          <article-title>Enterprise SOA: Designing IT for business innovation</article-title>
          ,
          <source>O'Reilly.</source>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>