<!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>Requirements for Supporting the Iterative Exploration of Scientific Workflow Variants</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Lucas A. M. C. Carvalho</string-name>
          <email>lucas.carvalho@ic.unicamp.br</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Bakinam T. Essawy</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff3">3</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Daniel Garijo</string-name>
          <email>dgarijo@isi.edu</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Claudia Bauzer Medeiros</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>Yolanda Gil</string-name>
          <email>gil@isi.edu</email>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>Artificial intelligence; Knowledge</institution>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>University of Campinas, Institute of Computing</institution>
          ,
          <addr-line>Campinas, SP</addr-line>
          ,
          <country country="BR">Brazil</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>University of Southern California, Information Sciences Institute</institution>
          ,
          <addr-line>Marina del Rey, CA</addr-line>
          ,
          <country country="US">U.S.A</country>
        </aff>
        <aff id="aff3">
          <label>3</label>
          <institution>University of Virginia, Department of Civil and Environmental Engineering</institution>
          ,
          <addr-line>Charlottesville, VA</addr-line>
          ,
          <country country="US">U.S.A</country>
        </aff>
      </contrib-group>
      <pub-date>
        <year>2017</year>
      </pub-date>
      <abstract>
        <p>Workflow systems support scientists in capturing computational experiments and managing their execution. However, such systems are not designed to help scientists create and track the many related workflows that they build as variants, trying different software implementations and distinct ways to process data and deciding what to do next by looking at previous workflow results. An initial workflow will be changed to create many new variants thereof that differ from each other in one or more steps. Our goal is to support scientists in the iterative design of computational experiments by assisting them in the creation and management of workflow variants. In this paper, we present several use cases for creating workflow variants in hydrology, from which we specify requirements for workflow variants. We also discuss major research directions to address these requirements.</p>
      </abstract>
      <kwd-group>
        <kwd>workflows</kwd>
      </kwd-group>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>workflow
variants,
computational</p>
    </sec>
    <sec id="sec-2">
      <title>INTRODUCTION</title>
      <p>Scientific workflow systems play a major role in supporting
scientists to design, document and execute their computational
experiments, automatically tracking provenance during the
workflow execution [11; 1]. Scientists follow an iterative
exploratory cycle where they often create an initial workflow, and
then explore variations of it using different data, replacing some of
the software steps, or adding new steps. Sometimes workflows
have to be modified because of changes in data (e.g. when datasets
are updated with new formats) or software (e.g., software is no
longer available, a newer version is better).</p>
      <p>In current workflow systems, scientists manage this exploratory
process manually. Updating a workflow is a complex and
timeconsuming task that may involve several steps, and may require
tracking down information about different versions of the software
used in the workflow.
2</p>
    </sec>
    <sec id="sec-3">
      <title>WORKFLOW VARIANTS</title>
      <p>Computational workflows describe the computational steps and the
dataflow among them to perform complex multi-step analyses. The
steps are implemented by software components (or workflow
components) that process data. A software component has a
welldefined interface consisting of input and output files as well as
parameter constant values. The dataflow between components is
captured as connections among their respective interfaces. A
workflow component may be implemented by a scientist, for
example a routine to check for erroneous sensor readings. A
workflow component may also be implemented using third-party
software, for example invoking a linear regression function from a
machine learning software package. A workflow component can
be updated in two ways. In some cases, a new upgrade of the
component is created to override a previous one, for example in
cases where the underlying software was corrected to fix a bug. In
other cases, a new variant of the component is created with new
inputs or outputs or other modifications, where the previous
versions are still valid and available to the user to use in workflows.</p>
      <p>Workflow executions are the result of running workflows and
provide provenance for the newly generated data products.</p>
      <p>After running a certain workflow, a scientist may want to
explore a workflow variant that represents a variation of an existing
workflow that was run earlier where one or more steps are changed.
That step change may require changing other steps that may be
affected. In other cases, the scientist may create a new workflow
upgrade of a previously run workflow that simply replaces a
component by a new one with a bug fix. When a workflow is
upgraded, the scientist may need to redo previous runs.</p>
      <p>Due to the exploratory nature of science, a scientist may start
with an initial workflow and iteratively create many workflow
variants. During this process, the scientist will want to consider
different designs of variants, compare any given variant with
previous ones, and synthesize the results of several variants with
comparable settings. This iterative process of creating and
managing workflow variants is currently not well supported. There
are several reasons why a scientist may create a workflow variant:
1. New versions of the software used in the workflow
components are released. These may add new
functionality that could be useful for the investigation.
These may also correct errors or fix bugs, and in that case
the scientist may be interested to check whether their
results done with the older version still hold.
2. New possible models or algorithms become available.</p>
      <p>The scientist may discovery these through online search,
reading articles, or talking with colleagues. These open
new possibilities for exploring alternative designs of the
workflow.
3. New datasets become available to the scientist. In this
case, the scientist may want to change their workflow to
incorporate that new kind of data.</p>
      <p>Sometimes the explorations are due to a combination of these.
For example, new software versions may fix errors and offer new
functionality that allows the scientist to use new kinds of data.</p>
    </sec>
    <sec id="sec-4">
      <title>3 RELATED WORK</title>
      <p>
        There have been several efforts to keep track and manage workflow
updates and versions. VisTrails [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] tracks the evolution of
workflows using a change-based provenance model that records
information about modifications to workflow components, inputs,
outputs and parameters. They compare results of workflow
executions using visualizations. However, this approach focuses on
capturing changes and comparing workflows, while we are
interested in supporting the process of designing, creating, and
managing workflow variants.
      </p>
      <p>
        Koop et al. [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ] focuses on the problem of supporting workflow
upgrades when the software that implements a component has a
new version by suggesting how the change-based provenance
actions might be reused to upgrade other similar workflows. The
focus is on the mechanics of the upgrades, while our interest is on
supporting the iterative exploration and design of new workflows.
      </p>
      <p>
        Workflow variants are also explored in Experiment Lines [
        <xref ref-type="bibr" rid="ref20">20</xref>
        ].
Their focus is on the variation of models or algorithms and software
packages. In contrast, our focus is broader in that we support the
creation of workflow variants.
4
      </p>
    </sec>
    <sec id="sec-5">
      <title>MOTIVATING SCENARIOS AND</title>
    </sec>
    <sec id="sec-6">
      <title>REQUIREMENTS</title>
      <p>
        This section describes several scenarios where scientists iteratively
create and explore workflow variants. The scenarios use examples
from hydrology. A hydrologist uses models, often developed by
others, to estimate how much water will flow in an area. We will
consider several hydrology models in these scenarios.
MODFLOW is the U.S. Geological Survey's three-dimensional
(3D) finite-difference groundwater model that has been developed
for several years and has many versions and variants. A major
version of the core implementation is MODFLOW-2005 [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] which
simulates confined, unconfined, or a combination of confined and
unconfined groundwater-flow problems. A major variant is
MODFLOW-NWT [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ] which uses a Newton-Raphson formulation.
MODFLOW has many packages that run different types of
simulations depending on the input data selected, so it needs to be
configured to use the packages needed to process the desired data.
This is done using FloPy [
        <xref ref-type="bibr" rid="ref12">12</xref>
        ], a Python package to create, run, and
post-process MODFLOW-based models. We will also use
MIKESHE [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ], another computational hydrology model that solves for
both saturated and unsaturated zones in groundwater.
      </p>
      <p>Hydrology models need data about the area for the simulation.
For example, MODFLOW requires elevation data, in the U.S.
typically coming from the National Elevation Dataset, recharge
data, typically from the National Recharge Dataset, and the data for
the area from the Watershed Boundary Dataset.</p>
      <p>Figure 1 shows an initial workflow W0 that uses
MODFLOWNWT. The input data includes the boundary for the area being
studied, elevation data, and recharge (drainage) data. Area is an
input to the step Rasterize, which converts the data from a
geographic system format to raster (bitmap) and is implemented
using GDAL (Geospatial Data Abstraction Library). The step
Convert Area converts the raster data to text data (ASCII) using
NumPy, a library for array/matrix in Python. Then, the unit of
measurement for this data is converted from centimeters to meters
and the data format is converted from raster to text using the step
Convert Elevation, which is implemented using NumPy. Rasterize
Recharge, which is implemented using GDAL, generates the
recharge raster and then Convert Recharge, which is implemented
using NumPy, converts the unit of measurement of the data from
centimeters to meters and from meter/year to meter/day and from
raster format to ASCII. The simulation component is implemented
using MODFLOW-NWT Version 1.0.2, and uses FloPy to
configure it with the appropriate packages.
4.1</p>
    </sec>
    <sec id="sec-7">
      <title>Case I: Same Component Interface, Different</title>
    </sec>
    <sec id="sec-8">
      <title>Software Version</title>
      <p>In this case, a workflow component is replaced by another one that
uses a different version of software to implement it but the
component interface remains the same. We consider two main
scenarios for this case. One occurs when a new version of the
software used in a workflow component is released to fix errors or
bugs. The other one occurs when a new version is released to carry
out a different function.</p>
      <p>
        The first scenario S1 starts with a scientist that runs workflow
W0 several times, changing the data sets used and comparing the
results to understand how changes in the inputs influence the
results. After several weeks, the scientist notices a new release of
MODFLOW, with modifications to enhance the model outputs. So
they create an upgrade of the MODFLOW component, which
results in the creation of workflow W1, an upgrade of W0, shown in
Figure 2. In this example, from version 1.0.2 to 1.0.3 of
MODFLOW-NWT a bug was fixed in the UZF1 package that was
causing UZF1 to incorrectly calculate unsaturated-zone
evapotranspiration, which results in a much smaller value [
        <xref ref-type="bibr" rid="ref19">19</xref>
        ]. The
earlier version 1.0.1 calculated this value properly, so the bug was
introduced in version 1.0.2 but fixed in 1.0.3. In some cases,
scientists may downgrade to an earlier version because it has a
desired feature or it does not produce a wrong value introduced by
a bug in later versions but not fixed yet. The scientist may need to
discard all previous executions of W0 because the results were
incorrect due to bugs, and run them using W1 instead.
      </p>
      <p>The second scenario S2 occurs when the software in a
component is modified to carry out a different function. In this
case, from version 1.0.2 to 1.0.3 of MODFLOW-NWT there is a
major change to generate a more accurate calculation of
evapotranspiration. First, the header of the listing file that results
from running MODFLOW-NWT is changed from having a variable
"RMS" to "RMS1" and "RMS2," and from a variable "L2-NORM"
to "L2-NEW" and "L2-OLD". This change was done to improve
the calculation of the residual terms as the L2-NORM rather than
the root-mean-squared error (RMS error). This change does not
affect the format of the results, only their value to be more accurate.
Thus, the interface of the new component variant does not change,
and the newly created workflow variant W2 has the same structure
as W1 in Figure 2.</p>
      <p>The scientist needs to be able to understand the changes to the
software in new versions in order to assess the differences between
versions and estimate the effort to make the changes in the
workflow. This may require a significant effort, as this information
may be scattered across release notes, documentation, papers, web
sites, and other sources. In some cases, the scientist may be
interested in skipping ahead several versions. For example, she
may want to change from version 1.0.2 all the way to the newest
version that is 1.1.3. This is challenging since the scientist needs to
track and summarize all the differences between several
consecutive versions.</p>
      <p>In addition, when changing a software version used to
implement a component, the scientist needs to check if the new
version is compatible with the software version of other
components of the same workflow. For example, a specific FloPy
version is compatible only with some MODFLOW-NWT versions.
Sometimes these incompatibilities can occur across different
workflow components, for example if two components make
different assumptions about the Newton-Raphson formulation.
This means that the scientist needs to track in detail all the software
dependencies and compatibilities across the software components
of a workflow.</p>
      <p>Finally, the scientist may need to check that the new simulation
results do not require additional changes in the workflow steps that
use those results. In our case they were the output of the workflow,
but in other cases further adjustments may be required.</p>
      <p>Scenarios 1 and 2 motivate the following requirements:
 R1 – Version descriptions need to capture useful
metadata of the software.
 R2 – Scientists need to understand differences in
metadata between different software versions,
particularly about their interfaces.
 R3 – Scientists need to be alerted about relevant updates
of software used in their workflows.
 R4 – Workflow descriptions need to capture the
software, software version, and functions used in the
implementation of workflow components.
 R5 – Scientists need to understand how new workflow
variants can be used to correct errors in prior results.
 R6 – Scientists should be able to easily replace a
component of a workflow with a new one when the
interfaces of the components are the same.
 R7 – Given a software package that can be used to create
many workflow components, scientists need to easily
figure out how to implement new variants of a workflow
component with newer versions of that package.
 R8 – Scientists should be able to easily create new
versions of workflow components and relate them to each
other.
 R9 – Scientists should be able to easily create new
workflow variants and relate them to each other.
 R10 – Scientists should be able to relate changes in
software to specific workflow results, so it is clear how
new software versions affect calculated variables to
produce wrong values.
 R11 – Version descriptions need to capture bug fixes and
known bugs and relate them to software features and
input and output file variables.
In this case, a workflow variant is created by replacing a workflow
component by another one that uses the same software
implementation but invokes a different function and as a result has
a new component interface (i.e., adding, removing or replacing
,whi
inputs or outputs). This interface change may require changes in
other steps of the workflow (e.g., adding, replacing or removing
data conversion or post-processing steps.) We consider two
scenarios for this case. One occurs when a component is changed
to use additional inputs or outputs provided by the software used to
implement it. Another occurs when a component is changed to
replace inputs or outputs or use them differently in the software
used to implement it. In both cases, the rest of the workflow may
be affected by the changes.</p>
      <p>Scenario S3 starts with a scientist running workflow W2. The
scientist would like to add an input regarding water elevation
through wells, so she creates a new variant of the workflow
component by adapting the MODFLOW component used in W2 by
adding a new input for well data. The well data is already provided
as an ASCII file, so unlike the elevation and recharge data there is
no need to convert wells data to ASCII. The only data preparation
needed is converting the unit of measurement from feet to meters.
To perform this change, the scientist adds Well to the workflow
inputs, adds the step Convert Well for unit conversion. This results
in workflow variant W3, shown in Figure 3. The scientist created
one new component variant and created a variant of an existing
component.</p>
      <p>In scenario S4, the scientist decides to include snowmelt in the
simulation. This can be done by using infiltration as an input
instead of recharge (since the infiltration package will also account
for recharge). Figure 4 shows the resulting workflow variant W4
where the recharge input of W3 is replaced with infiltration.
Additional changes include replacing the steps to prepare data for
simulation with those steps to clip and resample infiltration, and to
convert the unit of measurement in the input data from centimeter
per year to meters per day, reformatting it to ASCII format. In
addition, the MODFLOW step needs to be modified in two ways.
First, the recharge input needs to be replaced with infiltration input.
Second, the FloPy software configures MODFLOW to use the
infiltration packages. In total, the scientist created five new
components and created a variant of an existing component.</p>
      <p>There are several important tasks that the scientist needs to
address in these two scenarios.</p>
      <p>Before creating the data preparation components for W3 and W4
the scientist has to find whether components that already do those
conversions are available or not. Reusing components saves time,
but after spending many years running similar workflows with
similar data it may be hard to remember which components have
been created before. Furthermore, in addition to reusing
components it may be possible to reuse entire sub-workflows. In
our example, the sub-workflow to prepare infiltration data has five
steps that can be reused together.</p>
      <p>Another important task is to compare the results of different
workflow variants. For example, a scientist would run W3 and W4
and compare the results to each other and to W2 to understand how
changes in the workflows affect the simulation results.</p>
      <p>Scenarios 3 and 4 motivate these additional requirements:
 R15 – Scientists need to easily find software packages
and workflow components that are appropriate to process
a specific type of data input.
 R16 – Scientists need to easily find workflow
components for data conversion.
 R17 – Scientists need to be able to understand the
differences between two workflow variants.
4.3</p>
    </sec>
    <sec id="sec-9">
      <title>Case III: Alternative Component, Different</title>
    </sec>
    <sec id="sec-10">
      <title>Software</title>
      <p>In this case, a workflow variant is created by replacing a workflow
component by a component that does an equivalent function but is
implemented using a different software. There are several reasons
to create workflow variants that use equivalent software, such as
testing different models or taking into account parameters that are
ignored by the current model used in a workflow. The new
component may have a very different interface from the previous
one, thus requiring a major update of the workflow to create,
replace, or remove several data preparation or post-processing
steps. Note that although the tasks to create the workflow variant
may be similar to those in scenarios 3 and 4, now there are
additional tasks in finding out information about the new software
to check its functionality and analyze how it fits into the workflow
and the overall exploration that the scientist is doing. We consider
two scenarios. One occurs when the scientist already knows which
alternative method to use. Another one occurs when the scientist
needs to find and compare the assumptions, functionalities and the
effort to change the workflow when considering more than one
method to decide which one to use.</p>
      <p>Scenario S5 has a scientist who is concerned about
MODFLOW-NWT only solving for saturated zones, so some
parameters are simplified or even ignored. The scientist would like
to use a different method to solve for the unsaturated zones, and has
heard that the MIKE-SHE model does a similar simulation to
MODFLOW, but is a fully coupled and integrated surface water
and ground water model that considers parameters regarding
unsaturated zones. The inputs and outputs for MIKE-SHE are
different from MODFLOW. MIKE-SHE uses area data in the same
raw format that is provided by the data source, so it does not need
to be pre-processed. It also uses topography data and can ingest
formats very similar to the data source, so the data only needs to be
clipped. MIKE-SHE also requires several new input data, namely
rainfall, evaporation, and temperature, all in the format provided by
data sources so they only need to be clipped. MIKE-SHE also
generates several separate outputs, including files associated with
the simulation (SHERES), a binary output file containing all the
static information on the simulation (FRF), and other results stored
in a series of DFS0, DFS2 and DFS3 files. As for the MIKE-SHE
component, there is no need to use the FloPy software to implement
it. Figure 5 shows workflow variant W5 created from W4: the
scientist had to create three new data pre-processing components,
one new component for MIKE-SHE, and one new component to
combine the simulation results to obtain a format that is comparable
to W4 and to all the previous workflow variants. Many components
from W4 were discarded as they were no longer needed.</p>
      <p>
        In scenario S6, the scientist decides to investigate other models,
since MIKE-SHE is a commercial, proprietary model. There are
many other hydrology models available, including PIHM [
        <xref ref-type="bibr" rid="ref13">13</xref>
        ],
TopoFlow [
        <xref ref-type="bibr" rid="ref14">14</xref>
        ], VIC [
        <xref ref-type="bibr" rid="ref15">15</xref>
        ], and dozens of others available in
repositories such as CSDMS [
        <xref ref-type="bibr" rid="ref16">16</xref>
        ]. The scientist starts to investigate
which models produce interesting simulation results, and considers
how much effort is required to locate the data required by each
model, to develop the data pre-processing components needed, and
to install and run each of these models. The scientist finds out that
PIHM provides Hydroterre [
        <xref ref-type="bibr" rid="ref17">17</xref>
        ], a comprehensive data repository
that already provides data in the required format, and a PIHM-GIS
software to visualize simulation results [
        <xref ref-type="bibr" rid="ref18">18</xref>
        ]. The scientist also
finds that PIHM requires a solver in order to run, so the simulation
component needs to include the solver software in addition to
PIHM. The scientist develops a workflow variant W6 that includes
new components implemented using PIHM, Hydroterre, and
PIHM-GIS.
      </p>
      <p>
        It is important to highlight several important tasks done by the
scientist in these scenarios. In both scenarios, but particularly in
scenario S6, the scientist needs to compare how two models are
similar and how they differ in terms of the input data that they use
and the output data that they generate. The documentation of
models always includes details of the input and output requirements
in terms of files and formats. The scientist will want to understand
conceptually how the models work in terms of the physical
variables used or generated in the model. That is, understanding
the inputs and outputs at the file and format level is important, but
understanding how model variables map to each of the files is also
necessary. This information is usually not included in the software
documentation, but in the publications associated with the model.
The scientist will need to consult a variety of sources in order to
understand how different models compare [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ].
      </p>
      <p>Another important task is to understand the assumptions made
by the different models. For example, in hydrology some models
may assume the Navier-Stokes equations for fluid motion, while
others do not. These assumptions are often not captured in the
descriptions of workflow components, which focus on the models
as software artifacts rather than research artifacts.</p>
      <p>In addition, after creating and running the new workflow
variants W5 and W6, the scientist will want to compare their results
to the results obtained with previous workflows W4, W3, and earlier
ones. This requires that the scientist understands how the model
results are related to one another, which requires understanding
what modeling variables are generated and included in the
simulation outputs.</p>
      <p>Scenarios S5 and S6 motivate the following additional
requirements:
 R18 – Version descriptions need to capture assumptions
used in software.
 R19 – Workflow components, inputs, outputs or parameters
in new workflow variants that are no longer needed need to
be removed.
different versions of the software and the different versions
and variations of a given workflow component.
 Workflow updates, which address the creation of new
workflow variants by replacing, adding, or removing
workflow components, the propagation of the effects of
those changes throughout the structure of the workflow, and
the validation of the new workflow variants.
 Workflow comparisons, which address the comparison
between different software versions, software packages,
workflow variants and workflow runs.</p>
      <p>
        Table 1 summarizes the requirements introduced in this section,
pointing out the broad categories they belong to and the cases where
they occur. Although we adopt the hydrology domain in our
scenarios to illustrate the requirements, our requirements are
domain-independent. Workflows in any domain have
preprocessing steps, post-processing steps, and major analytic steps
[
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. In the case of hydrology, the analytic steps are done using
different hydrology models. Other sciences use algorithms rather
than models. For example, different clustering algorithms or
sequence alignment algorithms would be used in genomics. The
requirements outlined here are generally applicable to other
domains.
      </p>
    </sec>
    <sec id="sec-11">
      <title>DISCUSSION AND FUTURE RESEARCH</title>
      <p>Given the state of the art and the requirements from the scenarios,
we outline possible research directions for future work:
Describing
workflow</p>
      <p>
        components and their underlying
software. This includes the creation and adaptation of existing
ontologies to capture information about software versions and
variants, including software interfaces and features. OntoSoft
[
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] is an ontology that might be extended to capture relevant
information about software versions and variants. It is also
important to integrate these ontologies with workflow systems
to describe workflow components. Another area of work is to
use them to support the creation of workflow variants.
Managing
differences.
      </p>
      <p>and
tracking</p>
      <p>workflow
This includes
how
to
variants
compare
and</p>
      <p>
        their
workflow
components and workflow variants regarding their interfaces
and functions, and present these results in a useful way for
scientists to understand their differences and the implications
on experiment results. A possible approach is using
multimedia
narratives
that
combine
text,
graphics,
and
visualizations to explain the similarities and differences
between software versions, software variants, workflow
versions, or functions/methods. More importantly, these
narratives should be easily customized to the reader’s level of
expertise and interest. As a starting point our approach may be
based in an approach for data narrative generation [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ]. Another
research area is to manage histories of creation and evolution
of workflow variants, and doing so across many users that may
benefit from reusing segments or traversals across users.
the
exploration
and
experimentation
process
through
workflow variants. This includes how to leverage workflow
reuse and composition to support the creation of workflow
variants. For example, given a new component that needs to
replace an existing one in a workflow, suggest what other
components may need to be added or removed from the
workflow. Other research would involve mechanisms to
identify critical and non-critical components in workflows.
The critical and non-critical components could be associated
to abstractions defined as motifs [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ].
      </p>
      <p>Designing an interactive framework to support scientists in
5
This paper discusses the need to support scientists in exploring
different experiment designs over time.</p>
      <p>We presented several
scenarios where an initial workflow is modified to create workflow
variants by replacing, adding or removing workflow steps.
describe the requirements of these scenarios, and grouped them into
categories:
updates, and workflow comparisons. We also discussed major
research directions to address those requirements, including
improved frameworks for describing workflow components and the
associated software, for managing and tracking workflow variants,
and
supporting
scientists in the iterative
exploration
and
experimentation process through workflow variants.</p>
      <p>Acknowledgments. This work was supported in part by a grant from the
US National Science Foundation under award ICER-1440323 and
ICER1632211 (EarthCube RCN IS-GEO), and in part by the Sao Paulo Research
Foundation (FAPESP) under grants 2017/03570-3, 2014/23861-4 and
2013/08293-7.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <surname>Altintas</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Barney</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Jaeger-Frank</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          (
          <year>2006</year>
          ).
          <article-title>Provenance collection support in the Kepler scientific workflow system</article-title>
          .
          <source>International Provenance and Annotation Workshop (IPAW)</source>
          , pages
          <fpage>118</fpage>
          -
          <lpage>132</lpage>
          . Springer.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <surname>Freire</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Silva</surname>
            ,
            <given-names>C. T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Callahan</surname>
            ,
            <given-names>S. P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Santos</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Scheidegger</surname>
            ,
            <given-names>C. E.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Vo</surname>
            ,
            <given-names>H. T.</given-names>
          </string-name>
          (
          <year>2006</year>
          ).
          <article-title>Managing rapidly-evolving scientific workflows</article-title>
          .
          <source>In Provenance and Annotation of Data</source>
          , pages
          <fpage>10</fpage>
          -
          <lpage>18</lpage>
          . Springer.
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <surname>Garijo</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Alper</surname>
            ,
            <given-names>P.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Belhajjame</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Corcho</surname>
            ,
            <given-names>O.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Gil</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          , &amp;
          <string-name>
            <surname>Goble</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          (
          <year>2014</year>
          ).
          <article-title>Common motifs in scientific workflows: An empirical analysis</article-title>
          .
          <source>Future Generation Computer Systems</source>
          ,
          <volume>36</volume>
          ,
          <fpage>338</fpage>
          -
          <lpage>351</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <surname>Gil</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Garijo</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          (
          <year>2017</year>
          ).
          <article-title>Towards Automating Data Narratives</article-title>
          .
          <source>In Proceedings of the Twenty-Second ACM International Conference on Intelligent User Interfaces (IUI-17)</source>
          , Limassol, Cyprus.
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <surname>Gil</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ratnakar</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          , &amp;
          <string-name>
            <surname>Garijo</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          (
          <year>2015</year>
          ).
          <article-title>OntoSoft: Capturing scientific software metadata</article-title>
          .
          <source>Proceedings of the 8th International Conference on Knowledge Capture (K-CAP)</source>
          ,
          <year>2015</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <surname>Graham</surname>
            ,
            <given-names>D. N.</given-names>
          </string-name>
          , &amp;
          <string-name>
            <surname>Butts</surname>
            ,
            <given-names>M. B.</given-names>
          </string-name>
          (
          <year>2005</year>
          ).
          <article-title>Flexible, integrated watershed modelling with MIKE-SHE</article-title>
          . Watershed models,
          <volume>849336090</volume>
          ,
          <fpage>245</fpage>
          -
          <lpage>272</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <surname>Harbaugh</surname>
            ,
            <given-names>A. W. MODFLOW</given-names>
          </string-name>
          <article-title>-2005, the US Geological Survey modular groundwater model: the ground-water flow process. Reston: US Department of the Interior</article-title>
          ,
          <source>US Geological Survey</source>
          ,
          <year>2005</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <surname>Koop</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Scheidegger</surname>
            ,
            <given-names>C. E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Freire</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          , &amp;
          <string-name>
            <surname>Silva</surname>
            ,
            <given-names>C. T.</given-names>
          </string-name>
          (
          <year>2011</year>
          ).
          <article-title>The Provenance of Workflow Upgrades</article-title>
          .
          <source>Third International Provenance and Annotation Workshop (IPAW)</source>
          ,Vol.
          <volume>6378</volume>
          . Springer.
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <surname>Niswonger</surname>
            ,
            <given-names>R.G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Panday</surname>
          </string-name>
          , Sorab, and
          <string-name>
            <surname>Ibaraki</surname>
          </string-name>
          , Motomu,
          <year>2011</year>
          ,
          <article-title>MODFLOW-NWT, A Newton formulation for MODFLOW-2005: U</article-title>
          .S.
          <source>Geological Survey Techniques and Methods 6-A37</source>
          , 44 p.
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <surname>Essawy</surname>
            ,
            <given-names>B. T.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Goodall</surname>
            ,
            <given-names>J. L.</given-names>
          </string-name>
          ;
          <string-name>
            <surname>Xu</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          ; and Gil,
          <string-name>
            <surname>Y.</surname>
          </string-name>
          <article-title>Evaluation of the OntoSoft Ontology for Describing Legacy Hydrologic Modeling Software</article-title>
          .
          <source>Environmental Modelling &amp; Software</source>
          ,
          <fpage>92</fpage>
          .
          <year>2017</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <surname>Wolstencroft</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Haines</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Fellows</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Williams</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Withers</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Owen</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Soiland-Reyes</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Dunlop</surname>
            ,
            <given-names>I.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Nenadic</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          , Fisher,
          <string-name>
            <given-names>P.</given-names>
            ,
            <surname>Bhagat</surname>
          </string-name>
          ,
          <string-name>
            <given-names>J.</given-names>
            ,
            <surname>Belhajjame</surname>
          </string-name>
          ,
          <string-name>
            <given-names>K.</given-names>
            ,
            <surname>Bacall</surname>
          </string-name>
          ,
          <string-name>
            <given-names>F.</given-names>
            ,
            <surname>Hardisty</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Nieva de la Hidalga</surname>
          </string-name>
          ,
          <string-name>
            <given-names>A.</given-names>
            ,
            <surname>Balcazar</surname>
          </string-name>
          <string-name>
            <surname>Vargas</surname>
          </string-name>
          ,
          <string-name>
            <given-names>M. P.</given-names>
            ,
            <surname>Sufi</surname>
          </string-name>
          ,
          <string-name>
            <given-names>S.</given-names>
            , and
            <surname>Goble</surname>
          </string-name>
          ,
          <string-name>
            <surname>C.</surname>
          </string-name>
          (
          <year>2013</year>
          ).
          <article-title>The Taverna workflow suite: designing and executing workflows of web services on the desktop, web or in the cloud</article-title>
          .
          <source>Nucleic Acids Research</source>
          ,
          <volume>41</volume>
          (
          <issue>W1</issue>
          ).
          <fpage>W557</fpage>
          -
          <lpage>W561</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref12">
        <mixed-citation>
          [12]
          <string-name>
            <surname>Bakker</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Post</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Langevin</surname>
            ,
            <given-names>C.D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hughes</surname>
            ,
            <given-names>J.D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>White</surname>
            ,
            <given-names>J.T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Starn</surname>
            ,
            <given-names>J.J.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Fienen</surname>
            ,
            <given-names>M.N.</given-names>
          </string-name>
          ,
          <year>2016</year>
          ,
          <source>FloPy v3.2</source>
          .6: U.S.
          <source>Geological Survey Software Release, 19 March</source>
          <year>2017</year>
          , http://dx.doi.org/10.5066/F7BK19FH.
        </mixed-citation>
      </ref>
      <ref id="ref13">
        <mixed-citation>
          [13]
          <string-name>
            <surname>Qu</surname>
            ,
            <given-names>Y.</given-names>
          </string-name>
          and
          <string-name>
            <given-names>C. J.</given-names>
            <surname>Duffy</surname>
          </string-name>
          .
          <article-title>"A semidiscrete finite volume formulation for multiprocess watershed simulation</article-title>
          .
          <source>" Water Resources Research</source>
          <volume>43</volume>
          (
          <issue>8</issue>
          ),
          <year>2007</year>
          .
        </mixed-citation>
      </ref>
      <ref id="ref14">
        <mixed-citation>
          [14]
          <string-name>
            <surname>Peckham</surname>
            ,
            <given-names>S. D.</given-names>
          </string-name>
          <article-title>Geomorphometry and spatial hydrologic modelling</article-title>
          .
          <source>In Geomorphometry: Concepts</source>
          , Software, Applications, Developments in Soil Science, vol.
          <volume>33</volume>
          , edited by S. D. Peckham, pp.
          <fpage>579</fpage>
          -
          <lpage>602</lpage>
          , Elsevier.
        </mixed-citation>
      </ref>
      <ref id="ref15">
        <mixed-citation>
          [15]
          <string-name>
            <surname>Liang</surname>
            ,
            <given-names>X.</given-names>
          </string-name>
          ,
          <string-name>
            <given-names>D. P.</given-names>
            <surname>Lettenmaier</surname>
          </string-name>
          ,
          <string-name>
            <given-names>E. F.</given-names>
            <surname>Wood</surname>
          </string-name>
          , and
          <string-name>
            <given-names>S. J.</given-names>
            <surname>Burges</surname>
          </string-name>
          ,
          <year>1994</year>
          :
          <article-title>A Simple Hydrologically-Based Model of Land Surface Water and Energy Fluxes for GSMs</article-title>
          ,
          <source>J. Geophys. Res.</source>
          ,
          <volume>99</volume>
          (
          <issue>D7</issue>
          ),
          <volume>14</volume>
          ,
          <fpage>415</fpage>
          -
          <lpage>14</lpage>
          ,
          <fpage>428</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref16">
        <mixed-citation>
          [16]
          <string-name>
            <given-names>Community</given-names>
            <surname>Surface Dynamics Modeling System (CSDMS) Model</surname>
          </string-name>
          <article-title>Repository</article-title>
          . Available from http://csdms.colorado.edu/wiki/Model_download_portal.
        </mixed-citation>
      </ref>
      <ref id="ref17">
        <mixed-citation>
          [17]
          <string-name>
            <given-names>HydroTerre</given-names>
            <surname>Data Services</surname>
          </string-name>
          . Available from http://www.hydroterre.psu.edu.
        </mixed-citation>
      </ref>
      <ref id="ref18">
        <mixed-citation>
          [18]
          <article-title>The Pennsylvania Integrated Hydrology Model GIS Interface (PIHMgis)</article-title>
          , http://www.pihm.psu.edu/pihmgis_home.html
        </mixed-citation>
      </ref>
      <ref id="ref19">
        <mixed-citation>
          [19]
          <article-title>USGS</article-title>
          .
          <article-title>MODFLOW-NWT Release Notes</article-title>
          . https://water.usgs.gov/ogw/modflownwt/Release.txt
        </mixed-citation>
      </ref>
      <ref id="ref20">
        <mixed-citation>
          [20]
          <string-name>
            <surname>Marinho</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>de Oliveira</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ogasawara</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Silva</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Ocaña</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Murta</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Braganholo</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Mattoso</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <year>2017</year>
          .
          <article-title>Deriving scientific workflows from algebraic experiment lines: A practical approach</article-title>
          .
          <source>Future Generation Computer Systems</source>
          ,
          <volume>68</volume>
          , pp.
          <fpage>111</fpage>
          -
          <lpage>127</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>