<!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>Using Human Error Abstraction Method for Detecting and Classifying Requirements Errors: A Live Study</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Vaibhav Anu</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Gursimran Walia</string-name>
          <xref ref-type="aff" rid="aff0">0</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Gary Bradshaw</string-name>
          <xref ref-type="aff" rid="aff1">1</xref>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Wenhua Hu</string-name>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Jeffrey C. Carver</string-name>
          <xref ref-type="aff" rid="aff2">2</xref>
        </contrib>
        <aff id="aff0">
          <label>0</label>
          <institution>, Mississippi State University</institution>
          ,
          <country country="US">USA</country>
        </aff>
        <aff id="aff1">
          <label>1</label>
          <institution>, University of Ala-</institution>
        </aff>
        <aff id="aff2">
          <label>2</label>
          <institution>North Dakota State University</institution>
          ,
          <country country="US">USA</country>
        </aff>
      </contrib-group>
      <abstract>
        <p>bama3</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>Introduction</title>
      <p>
        Inspections, a proven quality improvement approach [
        <xref ref-type="bibr" rid="ref3 ref7">3, 7</xref>
        ], are a process where a
team of skilled individuals review a software artifact (e.g., requirements specification
document) to identify faults. Traditional fault-based software inspections (like Fault
Checklist inspection) focus inspectors’ attention on different type of faults (e.g.,
incorrect or incomplete or ambiguous requirements) [
        <xref ref-type="bibr" rid="ref7">7</xref>
        ]. Even a faithful application of
validated fault-based techniques does not help inspectors in finding all faults. As a result,
a larger part of (40%-50%) the development effort is spent fixing issues that should
have been fixed in an earlier phase [
        <xref ref-type="bibr" rid="ref3">3</xref>
        ]. Hence, there is a real need to improve early fault
detection and to help developers avoid the unnecessary rework. We hypothesize that
inspections focused on identifying human errors (i.e., the underlying cause of faults)
are better at identifying requirements problems when compared to inspections focused
on faults (i.e., manifestation of human error).
      </p>
      <p>
        On those lines, our recent work [
        <xref ref-type="bibr" rid="ref1 ref5">1, 5</xref>
        ] uses a Cognitive Psychology perspective on
human errors to improve the practice of requirements inspections. Human errors are
understood as purely mental events, failings of human cognition in the process of
problem solving, planning, and acting. Errors, in turn, will produce faults, a physical
manifestation of the error. It is important that a clear distinction is made between human
errors (mental events) vs program errors (related to coding or programmatic failures).
      </p>
      <p>
        To help inspectors in identifying human errors, the authors over the past two years,
have worked on developing a Human Error Taxonomy (HET) that classifies human
errors that commonly during requirements engineering [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ]. Additionally, we have also
developed a human error analysis framework called the Human Error Abstraction
(HEA) method that can guide inspectors in analyzing and abstracting (i.e., extracting)
human error information from requirements faults, a process referred to as Error
Abstraction (EA) by Psychologists. Description of HET and HEA appears in Section 2.
      </p>
      <p>
        We recently carried out a series of empirical studies to validate the effectiveness of
human error based inspections supported by HET against FC based inspection at two
different sites [
        <xref ref-type="bibr" rid="ref1 ref5">1, 5</xref>
        ]. While the results were promising, the subjects did not have a
supporting framework to assist them while abstracting errors from the faults. Analogous to
human error investigation frameworks in Psychology, this paper discusses the design
and evaluation of the HEA method during the live study.
      </p>
      <p>P$QZSJHIUªGTBFCVONEW</p>
      <p>Background</p>
      <p>In this section we briefly describe human errors and method for abstracting human
errors from the requirement faults which in turn can help find additional faults.</p>
      <p>
        (1) Human Error Based Requirements Inspections: Error based inspections [
        <xref ref-type="bibr" rid="ref6">6</xref>
        ],
works by assisting inspectors to identify and extract human error information from
faults found during FC inspection, and then to use the abstracted human error
information to guide the re-inspection. Our prior studies [
        <xref ref-type="bibr" rid="ref1 ref10 ref5">1, 5, 10</xref>
        ] have shown that, error
based inspections are a significant improvement over fault-based inspections. However,
an inspectors’ ability to find faults using the error information is highly dependent on
their ability to correctly identify human errors during the error abstraction (EA) process.
Therefore, the goal of this study is to evaluate the usability of HEA method during the
EA step so that their inspection effectiveness can be further improved.
      </p>
      <p>
        (2) Human Errors: To assist inspectors during the Error Abstraction (EA) leg of
human error based inspections, we have developed a Human Error Taxonomy (HET)
that classifies the most commonly occurring requirements phase human errors built
around Reason’s psychological account of human errors [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ]. The complete
development process of the HET can be found in [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
      </p>
      <p>
        Reason’s well-respected human error classification system, classifies human errors
into slips, lapses, and mistakes, as shown in Figure 1. According to Reason [
        <xref ref-type="bibr" rid="ref9">9</xref>
        ], when
faced with a situation that demands problem-solving, human operators go through two
major information-processing stages: planning stage and execution stage. The human
error mechanisms associated with execution (or action) stage are called slips and lapses.
The error mechanism associated with planning stage is called mistake. As illustrated in
Figure 1, assume that our goal is to drive to the store and entails steps such as starting
the car, backing down the driveway to the street, navigating the route, and parking in
the store lot. If we put the wrong key in the ignition, we have committed a failure of
execution known as a slip. If we forget to put the transmission into reverse before
stepping on the gas, the omitted step is a lapse. Failing to take into account the effect of a
bridge closing and getting caught in traffic is a planning mistake.
      </p>
      <p>Slips are execution failures that are caused by inattention and occur when a planned
action is incorrectly executed. Lapses, which are also execution failures, occur when
an action is forgotten (omitted) while executing a planned task or when an individual
forgets their place in a planned task and ends up repeating an action. Mistakes are
planning failures and are generally a result of being in an unfamiliar situation.</p>
      <p>
        (3) Human Error Abstraction Method (HEA): Although the HET provides a
concrete list of the most commonly occurring human errors, EA is still a subjective process
that different people might perceive in different ways. In order to reduce the subjectivity
and complexity of EA we developed the HEA method which can be found in [
        <xref ref-type="bibr" rid="ref2">2</xref>
        ].
      </p>
      <p>
        The HEA was created after performing pilot empirical evaluation of human error
based inspections with different set of subjects [
        <xref ref-type="bibr" rid="ref1 ref5">1, 5</xref>
        ]. After the studies, the subjects
provided feedback that EA can be improved by focusing the inspector’s attention on
various RE activities (elicitation, analysis, specification, and management). Hence,
HEA is developed to guide the selection of the appropriate RE activity and the situation
where the human error might have occurred. We created HEA (Figure 2) to act as an
intuitive frame-work to systematically guide inspectors during EA. Inspectors have to
answer a set of questions (decision points) to trace a fault to an underlying human error.
      </p>
      <p>
        The HEA method (that asked specific questions) has been converted into a decision
tree style framework that can better guide inspectors during the error-discovery (in
consultation with the Cognitive Psychology expert, Dr. Bradshaw). This decision tree (Fig.
2) uses the skill-rule-knowledge framework developed by Rasmussen [
        <xref ref-type="bibr" rid="ref8">8</xref>
        ], wherein
inspectors are directed through decision points (based on cognitive failure patterns).
Major decision points are discussed below:
      </p>
      <p>(i) Decision point D1 guides inspectors to distinguish between an error scenario as a
planning scenario (i.e., Mistakes) or an execution scenario (i.e., Slips and Lapses).</p>
      <p>(ii) Decision points D2 helps inspectors to distinguish between inattention failures
(i.e. slips) and memory failures (i.e., lapses).</p>
      <p>(iii) Decision points D3 and D4 helps identify the type of Mistake (i.e., rule-based
vs. knowledge based mistake). It is hoped that this type of EA framework can help
inspectors navigate to correct human error classes.
3</p>
    </sec>
    <sec id="sec-2">
      <title>Study Design</title>
      <p>The main goal of the live study is to evaluate the use of the HEAA tool in helping
inspectors correctly abstract and classify underlying human errors responsible for the
requirement faults.
3.1</p>
      <sec id="sec-2-1">
        <title>Research Questions</title>
        <p>RQ 1: Are inspectors able to use the HEA method to accurately abstract and classify
human errors that occurred during the requirements development process?</p>
        <p>RQ 2: Are the human error classes (Slips, Lapses and Mistakes) adequate and
relevant to the requirements development process??
3.2</p>
      </sec>
      <sec id="sec-2-2">
        <title>Subjects and Artifacts</title>
        <p>(1) Subjects: The population of interest are subjects with familiarity with
requirements engineering activities and industry experience. We want to evaluate the
usefulness of the HEA method from practitioners and experts in academia.</p>
        <p>(2) Artifacts: An SRS document that specified requirements for a Parking Garage
Control System (PGCS) will be used during the live study. PGCS SRS was developed
by researchers at University of Maryland and was seeded with 35 realistic faults..
3.3</p>
      </sec>
      <sec id="sec-2-3">
        <title>Study Procedure</title>
        <p>During the study, subjects will be trained on how to use the HEA method to abstract
errors from a small subset of PGCS faults (that will be provided to them), and then use
the training to abstract errors from a larger subset of remaining faults.</p>
        <p>Experimental steps are described as follows:</p>
        <p>Step 1 – Training on Error abstraction (EA): During this 25-30-minute training
session, subjects will be trained on human errors classes of HET, and how to use the
HEAA tool to abstract errors from supplied faults. Next, subjects will be asked to use
the training to trace errors from a subset of five PGCS faults followed by the discussion
of their results.</p>
        <p>Step 2 –Error abstraction (EA) on Remaining PGCS faults: During the remainder
of the live study, subjects will use the HEA template to abstract and classify human
errors (into Slips, Lapses, and Mistakes) from the a second subset of 15 faults in PGCS
SRS.</p>
        <p>Step 3 – Survey: Post study, we will collect feedback from subjects on HEAA and
EA using a survey that can either be handed out to the subjects or emailed to them.</p>
        <p>The following documents will be provided during the study run –
• PGCS SRS: Hard copy (i.e., printout) or a downloadable PDF file that will be
made available on local server.
• HEA decision tree: Hard copy or a downloadable PDF file that will be made
available on local server. The HEA decision tree will provide a handy template
to enter their error abstraction data.
• Error Report Form: The error report form will contain 20 faults (randomly
selected from a list of 35 seeded faults) in PGCS SRS. Subjects will be asked to
abstract errors from the first 5 faults during the training followed by error
abstraction for the remainder of 15 faults post training. We can supply the
errorreport form as a hard copy and also make a PDF copy available for download.
3.4</p>
      </sec>
      <sec id="sec-2-4">
        <title>Data collection and Analysis</title>
        <p>Additionally, at each step, we will ask subjects to report the effort spent (amount of
time taken to complete the task). We will also analyze the written accounts of human
errors collected during the study to analyze whether the accounts of human errors are
consistent across all subjects.
4</p>
      </sec>
    </sec>
    <sec id="sec-3">
      <title>Potential Validity Threats</title>
      <p>The live study faces the following validity threats:
(1) For some participants, this study might be the first introduction to Cognitive
Psychology concepts (like slips, lapses, and mistakes) and it is possible that they may not
properly understand the concepts within the stipulated time allocated for the study run.
We intend to mitigate this threat by involving a Cognitive Psychologist (Dr. Bradshaw)
when training the participants on human errors and how to abstract errors.</p>
      <p>(2) The heterogeneity of participant population (mix of researchers and practitioners)
is also a potential threat to the generalizability of the results of the live study. The
participants will be of different backgrounds and this may contribute to variability in
measures. We will collect data regarding the affiliation of subjects (industry or
academia) in order to perform separate data analyses on the two expected subgroups.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          1.
          <string-name>
            <surname>Anu</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Walia</surname>
            ,
            <given-names>G.S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hu</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Carver</surname>
            ,
            <given-names>J.C.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Bradshaw</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          <year>2016</year>
          .
          <article-title>Effectiveness of Human Error Taxonomy during Requirements Inspection: An Empirical Investigation</article-title>
          .
          <source>Software Engineering and Knowledge Engineering</source>
          ,
          <fpage>SEKE2016</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          2.
          <string-name>
            <surname>Anu</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Walia</surname>
            ,
            <given-names>G.S.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Hu</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Carver</surname>
            ,
            <given-names>J.C.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Bradshaw</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          <year>2016</year>
          .
          <article-title>The Human Error Abstraction Assist (HEAA) tool</article-title>
          . http://vaibhavanu.com/NDSU-CS
          <string-name>
            <surname>-TP-</surname>
          </string-name>
          2016-001.html
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          3.
          <string-name>
            <surname>Boehm</surname>
            ,
            <given-names>B.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Basili</surname>
            ,
            <given-names>V.R.</given-names>
          </string-name>
          <string-name>
            <surname>Software</surname>
          </string-name>
          <article-title>Defect Reduction Top 10</article-title>
          . Computer.
          <volume>34</volume>
          ,
          <issue>1</issue>
          (
          <year>2001</year>
          ),
          <fpage>135</fpage>
          -
          <lpage>137</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          4.
          <string-name>
            <surname>Hsieh</surname>
            ,
            <given-names>H.F.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Shannon</surname>
            ,
            <given-names>S.E.</given-names>
          </string-name>
          <year>2005</year>
          .
          <article-title>Three Approaches to Qualitative Content Analysis</article-title>
          .
          <source>Qualitative Health Research</source>
          .
          <volume>15</volume>
          ,
          <issue>9</issue>
          (
          <year>2005</year>
          ),
          <fpage>1277</fpage>
          -
          <lpage>1288</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          5.
          <string-name>
            <surname>Hu</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Carver</surname>
            ,
            <given-names>J.C.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Anu</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Walia</surname>
            ,
            <given-names>G.S.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Bradshaw</surname>
            ,
            <given-names>G.</given-names>
          </string-name>
          <year>2016</year>
          .
          <article-title>Detection of Requirement Errors and Faults via a Human Error Taxonomy: A Feasibility Study</article-title>
          .
          <source>10th ACM/IEEE International Symposium on Empirical Software Engineering and Measurement</source>
          , ESEM'
          <fpage>16</fpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          6.
          <string-name>
            <surname>Lanubile</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Shull</surname>
            ,
            <given-names>F.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Basili</surname>
            ,
            <given-names>V.R.</given-names>
          </string-name>
          <year>1998</year>
          .
          <article-title>Experimenting with Error Abstraction in Requirements Documents</article-title>
          .
          <source>In Proc. of the 5th International symposium on software metrics.</source>
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          7.
          <string-name>
            <surname>Porter</surname>
            ,
            <given-names>A.A.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Votta</surname>
            ,
            <given-names>L.G.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Basili</surname>
            ,
            <given-names>V.R.</given-names>
          </string-name>
          <year>1995</year>
          .
          <article-title>Comparing detection methods for software requirements inspections: a replicated experiment</article-title>
          .
          <source>IEEE Transactions on Software Engineering</source>
          .
          <volume>21</volume>
          ,
          <issue>6</issue>
          (
          <year>1995</year>
          ),
          <fpage>563</fpage>
          -
          <lpage>575</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          8.
          <string-name>
            <surname>Rasmussen</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Vicente</surname>
            ,
            <given-names>K.J.</given-names>
          </string-name>
          <article-title>Coping with human errors through system design: implications for ecological interface design</article-title>
          .
          <source>Jour. of Man-Machine Studies</source>
          .
          <volume>31</volume>
          ,
          <issue>5</issue>
          (
          <year>1989</year>
          ),
          <fpage>517</fpage>
          -
          <lpage>534</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref9">
        <mixed-citation>
          9.
          <string-name>
            <surname>Reason</surname>
            ,
            <given-names>J.</given-names>
          </string-name>
          <year>1990</year>
          .
          <article-title>Human error</article-title>
          . Cambridge University Press.
        </mixed-citation>
      </ref>
      <ref id="ref10">
        <mixed-citation>
          10.
          <string-name>
            <surname>Walia</surname>
            ,
            <given-names>G.S.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Carver</surname>
            ,
            <given-names>J.C.</given-names>
          </string-name>
          <year>2010</year>
          .
          <article-title>Evaluating the use of requirement error abstraction and classification method for preventing errors during artifact creation: A feasibility study</article-title>
          .
          <source>In Proc. of the 24th International Symposium on Software Reliability Engineering</source>
          , ISSRE'
          <fpage>10</fpage>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>