<!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>Map-driven Modular Method Re-engineering: Improving the RESCUE Requirements Process</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Jolita Ralyté</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Neil Maiden</string-name>
          <email>N.A.M.Maiden@city.ac.uk</email>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Colette Rolland</string-name>
          <email>rolland@univ-paris1.fr</email>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Rébecca Deneckère</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>CRI, University of Paris 1 - Sorbonne</institution>
          ,
          <addr-line>90 Rue de Tolbiac, 75013 Paris</addr-line>
          ,
          <country country="FR">France</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>CUI, University of Geneva</institution>
          ,
          <addr-line>Rue de Général Dufour, 24, CH-1211 Genève 4</addr-line>
          ,
          <country country="CH">Switzerland</country>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>Centre for HCI Design, City University</institution>
          ,
          <addr-line>Northampton Square, London EC1V OHB</addr-line>
          ,
          <country country="UK">UK</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>Configuring and applying complex requirements processes in organisations remains a challenging problem. This paper reports the application of the Map-driven Modular Method Re-engineering approach (MMMR) to a research-based requirements process called RESCUE in order to identify omissions and weaknesses, and to reason about improvements to RESCUE that are currently being implemented. Results have implications for both the scalability and effectiveness of the MMMR approach and for innovative requirements processes such as RESCUE.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        Establishing the requirements for software-based socio-technical systems remains a
challenge for many organisations. One reason for this is the increasing complexity of
the processes needed to establish such requirements effectively. As a consequence, we
need tried-and-tested techniques for manipulating and adapting these requirements
processes so that they meet the needs and constraints of client organisations. This
paper reports the results of a collaboration between method engineering and
requirements engineering researchers to apply one formalism – the MAP formalism
[
        <xref ref-type="bibr" rid="ref7">7</xref>
        ] – to model and extend the RESCUE requirements process [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ].
      </p>
      <p>
        Our objectives for this work were two-fold: (1) to validate and extend the
RESCUE process and improve its effectiveness in future requirements engineering
projects, and (2) to test the utility of the map-driven method re-engineering (MMMR)
approach [
        <xref ref-type="bibr" rid="ref5">5</xref>
        ] for verifying, extending, customising and integrating a full-scale
requirements process. The MMMR approach was applied to discover gaps and
inconsistencies in the RESCUE process, to extend RESCUE by adding new strategies
based on reported good practice and academic research and to enable local
customization of RESCUE to meet client process needs.
      </p>
      <p>In the next section we briefly describe the MMMR approach. Section 3 introduces
the RESCUE process. Section 4 describes how we re-engineered RESCUE using
MMMR. Section 5 reports how RESCUE was extended using this re-engineering
work. Section 6 concludes the paper.</p>
    </sec>
    <sec id="sec-2">
      <title>Map-driven Modular Method Re-engineering (MMMR)</title>
      <p>
        Our approach for modular method re-engineering uses the MAP formalism [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]
which provides a process representation system based on a non-deterministic ordering
of intentions and strategies. An intention Ii is a goal to be achieved by the
performance of an activity whereas a strategy Sij is a manner to achieve an intention.
Several strategies can be provided by the process model to achieve each intention.
Each triplet &lt;Ii, Ij, Sij&gt; in a map is named a section and represents a way to achieve
the target intention Ij from the source intention Ii following the strategy Sij. This way is
captured in the Intention Achievement Guideline (IAG). The arrangement of the
sections in a map forms a labelled directed graph with intentions as nodes and
strategies as edges. Two types of progression guidelines, Intention Selection
Guideline (ISG) and Strategy Selection Guideline (SSG), help to select the next
intention and the next strategy respectively. The map allows to represent methods in
different levels of abstraction. An IAG associated to one map section can also be
represented by a map at a lower level of abstraction.
      </p>
      <p>Fig. 1 depicts the process model of the MMMR as a map. This process model helps
to represent every method as a map with its associated guidelines. According to the
map structure, re-engineering the process model of a method consists in redefining it
in terms of map sections and their guidelines. For this reason, our process (Fig. 1)
seeks to achieve two core intentions: Define a section and Define a guideline and
proposes a set of strategies to satisfy these two intentions. For example, we can
identify map sections By structural analysis of the method product model elements or
By functional analysis of its process model steps and activities. The definition of new
sections based on the existing ones may be achieved By decomposition of an existing
section into several ones, By aggregation of a set of sections, By elicitation of
alternative sections to a given one, and By progression strategy which helps to define
a new section allowing to progress in the map from the existing one. The Template
based strategy provides a template for every type of guideline (IAG, ISG and SSG)
while the Guided strategy helps novices with more detailed recommendations for
guidelines definition. The Modification strategy helps to revise the existing sections
while the Correction strategy allows to transform the existing sections due to some
guideline modification. The Completeness validation ends the re-engineering process
by verifying if all the guidelines have been defined.</p>
    </sec>
    <sec id="sec-3">
      <title>Introduction to RESCUE</title>
      <p>
        The RESCUE (Requirements Engineering with Scenarios for User-Centred
Engineering) process [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ] supports a concurrent engineering process in which different
modelling and analysis processes take place in parallel. The concurrent processes are
structured into 4 streams: (1) Human activity modelling provides an understanding of
how people work, in order to baseline possible changes to it [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]; (2) System goal
modelling enables the team to model the future system boundaries, actor
dependencies and most important system goals [
        <xref ref-type="bibr" rid="ref10">10</xref>
        ]; (3) Use case modelling and
scenario-driven walkthroughs enable the team to communicate more effectively with
stakeholders and acquire complete, precise and testable requirements from them [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ];
(4) Requirements management enables the team to handle the outcomes of the other 3
streams effectively as well as impose quality checks on all aspects of the requirements
document [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ]. Work and deliverables from RESCUE’s 4 streams are coordinated at 5
key synchronisation points at the end of the 5 stages:
1. The boundaries point, where the team establishes first-cut system boundaries and
undertakes creative thinking to investigate these boundaries;
2. The work allocation point, where the team allocates functions between actors
according to boundaries, and describe interaction and dependencies between
these actors;
3. The generation point, where required actor goals, tasks and resources are
elaborated and modelled, and scenarios are generated;
4. The coverage point, where stakeholders have walked through scenarios to
discover and express all requirements so that they are testable;
5. The consequences point, where stakeholders undertake walkthroughs of the
scenarios and system models to explore impacts of implementing the system as
specified on its environment.
      </p>
      <p>
        The synchronisation checks applied at these 5 points are designed using a
RESCUE meta-model [
        <xref ref-type="bibr" rid="ref4">4</xref>
        ] of human activity, use case and i* modelling concepts
constructed specifically to design the synchronisation checks.
4
      </p>
    </sec>
    <sec id="sec-4">
      <title>Re-engineering RESCUE</title>
      <p>The re-engineering of RESCUE started by defining the map at the higher level of
abstraction, then by detailing the IAG associated with each of its sections as lower
level maps. As RESCUE is process-oriented, the Functional analysis strategy was
applied to identify the sections of its map. This identification was based on the
analysis of the five main RESCUE stages and their objectives. Therefore, five main
intentions were identified: Agree on System Boundaries, Specify Use Cases, Generate
Scenarios, Specify Requirements and Validate Requirements. Besides, the strategies
allowing to achieve these intentions was named and ordered. For example, the
Multiperspective modelling strategy proposes different models, such as human activity
model, context model and use case model, to achieve the intention Agree on System
Boundaries. The Creativity workshop driven strategy proposes to organise creativity
workshops in order to Specify Use Cases. The intention Generate Scenarios is
realised with ART-SCENE tool which generates scenarios automatically from the
previously specified use cases. The Scenario Walkthrough strategy is proposed to
Specify Requirements. The Impact Scenario Analysis strategy is used to Validate
Requirements by analysing the impact of scenario execution and requirements
correction, while the Feedback strategy is used for new requirements acquisition and
specification if necessary. The RESCUE process ends by delivering the complete set
of requirements specifications. We called this strategy the Delivery strategy.</p>
      <p>Each intention in the RESCUE map should be modelled at the same level of
abstraction. However, the scenarios produced by achieving the intention Generate
Scenarios are only used as a means to specify requirements in a specification that is
the main achievement from RESCUE. Therefore, the Aggregation strategy (Fig. 1)
was applied and the intentions Generate Scenarios and Specify Requirements were
merged into a new one Specify Complete Requirements.</p>
      <p>As each RESCUE stage ends by synchronising the results of that stage, we added
three new sections allowing to reiterate the execution of the intentions Agree on
System Boundaries, Specify Use Cases, and Specify Complete Requirements,
following the With synchronisation workshop strategy. Fig. 2 depicts the obtained
first level RESCUE map.</p>
      <p>Each IAG associated to the RESCUE map can also be defined as a map following
the MMMR approach (Fig. 1). Fig. 3 illustrates the map (in solid lines) representing
the IAG associated to the RESCUE map section &lt;Specify Use Cases, Specify
Complete Requirements, With generated scenario walkthrough&gt;. The RESCUE team
generates scenarios and walking through them using ART-SCENE to discover
requirements by using different walkthrough techniques. Requirements are
documented using the VOLERE shell.
5</p>
    </sec>
    <sec id="sec-5">
      <title>Validation and Extension of RESCUE</title>
      <p>In order to validate and extend the RESCUE process we explored all its second level
maps. First of all we analysed the intentions having only one strategy in the current
version of RESCUE and considered other possible ways to achieve these intentions.
For example, we considered possible new strategies to enhance the complete
requirements specification process captured in the map depicted in solid lines in Fig.
3. As a consequence, 9 new strategies and one new intention were identified and
modelled. They are shown in Fig. 3 in dashed lines.</p>
      <p>The new intention, Explain System, was added to the map in response to questions
about how the process ended. Not all instances of the process result in documented
requirements. Scenarios can also be used as effective communication and explanation
devices for a new system, independent of their use to discover requirements.</p>
      <p>
        Two new strategies, Video Generation with ART-SCENE and By Video
Walkthrough were designed to produce the agreed scenario and discover requirements
by using the recent extensions to ART-SCENE to support multi-media representation
of scenarios and video-based scenario walkthroughs [
        <xref ref-type="bibr" rid="ref11">11</xref>
        ]. The Pattern-based
generation strategy for discovering requirements recalled earlier research undertaken
by the RESCUE team that is not currently implemented in ART-SCENE. Two types
of patterns [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ] that guide the discovery and documentation of system requirements
will extend the ART-SCENE. Another discovered strategy for discovering
requirements from an agreed scenario was By hazard analysis. In simple terms,
hazard analysis applies simple techniques, such as checklists, to discover hazards
associated with a new system. To implement a full hazard analysis strategy within
ART-SCENE we will extend its model of abnormal behaviour and state to include a
more complete set of hazard classes, then introduce generation settings that will allow
a requirements engineer to generate scenarios that are tailored for more rigorous
hazard analysis. Finally, we introduced two new strategies based on techniques from
the SOPHIST group to document requirements. 25 authoring rules from
psychotherapy that assist in the analysis and quality assurance of requirements
expressed in text form are reported in [
        <xref ref-type="bibr" rid="ref1">1</xref>
        ].
      </p>
      <p>We hypothesise that all these new strategies will result in more correct and
consistent discovery and documentation of requirements.
6</p>
    </sec>
    <sec id="sec-6">
      <title>Conclusion</title>
      <p>This paper reports a research-driven investigation of the MMMR approach to
reengineer the RESCUE requirements process. Findings were relevant for RESCUE and
MMMR. Development of the process models revealed important omissions and single
strategy intentions in RESCUE that we resolved by adding new intentions and
strategies to the process models. This led us to re-investigate existing literature about
scenario-driven requirements processes, and to undertake cost-benefit analyses of
RESCUE strategies that we will investigate through future RESCUE rollouts.
Existing process representations of RESCUE did not afford such analysis. The
MMMR process maps also gave the authors confidence that changes to RESCUE
were consistent with the existing process. The result was an agenda of improvements
to RESCUE and its software tools that we are currently implementing.</p>
      <p>The paper also demonstrates the effectiveness of MMMR for modelling large-scale
requirements processes. Modelling intentions and strategies, rather than processes and
artefacts was tractable and cost-effective whilst still allowing the discovery of missing
or weak elements of the process.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          [1]
          <string-name>
            <surname>Goetz</surname>
            ,
            <given-names>R.</given-names>
          </string-name>
          &amp;
          <string-name>
            <surname>Rupp</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          (
          <year>2003</year>
          ), '
          <article-title>Psychotherapy for Systems Requirements'</article-title>
          ,
          <source>Proceedings 2nd IEEE International Conference on Cognitive Informatics</source>
          , IEEE CS Press, p.
          <fpage>75</fpage>
          -
          <lpage>80</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          [2]
          <string-name>
            <surname>Maiden</surname>
            ,
            <given-names>N.A.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Cisse</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Perez</surname>
            ,
            <given-names>H.</given-names>
          </string-name>
          &amp;
          <string-name>
            <surname>Manuel</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          (
          <year>1998</year>
          ),
          <article-title>'CREWS Validation Frames: Patterns for Validating System Requirements''</article-title>
          ,
          <source>Proceedings REFSQ98 Workshop.</source>
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          [3]
          <string-name>
            <surname>Maiden</surname>
            ,
            <given-names>N.A.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Jones</surname>
            ,
            <given-names>S.V.</given-names>
          </string-name>
          &amp;
          <string-name>
            <surname>Flynn</surname>
            <given-names>M.</given-names>
          </string-name>
          (
          <year>2003</year>
          ), 'Innovative Requirements Engineering Applied to ATM',
          <source>Proceedings ATM (Air Traffic Management)</source>
          , Budapest, June 23-27.
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          [4]
          <string-name>
            <surname>Maiden</surname>
            ,
            <given-names>N.A.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Jones</surname>
            ,
            <given-names>S.V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Manning</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Greenwood</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          &amp;
          <string-name>
            <surname>Renou</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          (
          <year>2004</year>
          ), 'ModelDriven Requirements Engineering:
          <article-title>Synchronising Models in an Air Traffic Management Case Study'</article-title>
          ,
          <source>Proceedings CAISE'04</source>
          ,
          <string-name>
            <surname>Springer-Verlag</surname>
            <given-names>LNCS</given-names>
          </string-name>
          3084, p.
          <fpage>368</fpage>
          -
          <lpage>383</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          [5]
          <string-name>
            <surname>Ralyté</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          &amp;
          <string-name>
            <surname>Rolland</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          (
          <year>2001</year>
          ),
          <article-title>'An Approach for Method Re-engineering'</article-title>
          .
          <source>Proceedings ER'2001, LNCS 2224</source>
          , Springer, p.
          <fpage>471</fpage>
          -
          <lpage>484</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          [6]
          <string-name>
            <surname>Robertson</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          &amp;
          <string-name>
            <surname>Robertson</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          (
          <year>1999</year>
          ),
          <article-title>'Mastering the Requirements Process'</article-title>
          , AddisonWesley-Longman.
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          [7]
          <string-name>
            <surname>Rolland</surname>
            ,
            <given-names>C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Prakash</surname>
            ,
            <given-names>N.</given-names>
          </string-name>
          &amp;
          <string-name>
            <surname>Benjamen</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          (
          <year>1999</year>
          ),
          <article-title>A multi-model view of process modelling</article-title>
          .
          <source>Requirements Engineering Journal</source>
          , p.
          <fpage>169</fpage>
          -
          <lpage>187</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          [8]
          <string-name>
            <surname>Sutcliffe</surname>
            ,
            <given-names>A.G.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Maiden</surname>
            ,
            <given-names>N.A.M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Minocha</surname>
            ,
            <given-names>S.</given-names>
          </string-name>
          &amp;
          <string-name>
            <surname>Manuel</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          (
          <year>1998</year>
          ), 'Supporting ScenarioBased Requirements Engineering',
          <source>IEEE Transactions on Software Engineering</source>
          ,
          <volume>24</volume>
          (
          <issue>12</issue>
          ), p.
          <fpage>1072</fpage>
          -
          <lpage>1088</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          [9]
          <string-name>
            <surname>Vicente</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          (
          <year>1999</year>
          ), '
          <article-title>Cognitive work analysis'</article-title>
          , Lawrence Erlbaum Associates.
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          [10]
          <string-name>
            <surname>Yu</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          &amp;
          <string-name>
            <surname>Mylopoulos</surname>
            ,
            <given-names>J.M.</given-names>
          </string-name>
          (
          <year>1994</year>
          ), 'Understanding “
          <article-title>Why” in Software Process Modelling, Analysis and Design'</article-title>
          ,
          <source>Proceedings ICSE'94</source>
          , IEEE CS Press, p.
          <fpage>159</fpage>
          -
          <lpage>168</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref11">
        <mixed-citation>
          [11]
          <string-name>
            <surname>Zachos</surname>
            ,
            <given-names>K.</given-names>
          </string-name>
          &amp;
          <string-name>
            <surname>Maiden</surname>
            ,
            <given-names>N.A.M.</given-names>
          </string-name>
          (
          <year>2004</year>
          ), '
          <article-title>ART-SCENE: Enhancing Scenario Walkthroughs with Multi-Media Scenarios'</article-title>
          ,
          <string-name>
            <surname>Proceedings</surname>
            <given-names>RE</given-names>
          </string-name>
          '
          <year>2004</year>
          , IEEE CS Press, p.
          <fpage>360</fpage>
          -
          <lpage>361</lpage>
          .
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>