Using human error information for error prevention

Wenhua Hu, Jeffrey C. Carver, Vaibhav Anu, Gursimran S. Walia, Gary L. Bradshaw

Research output: Contribution to journalArticle

Abstract

Developing error-free software requirements is of critical importance to the success of a software project. Problems that occur during requirements collection and specification, if not fixed early, are costly to fix later. Therefore, it is important to develop techniques that help requirements engineers detect and prevent requirements problems. As a human-centric activity, requirements engineering can be influenced by psychological research about human errors, which are the failings of human cognition during the process of planning and executinge a task. We have employed human error research to describe the types of problems that occur during requirements engineering. The goals of this research are: (1) to evaluate whether understanding human errors contributes to the prevention of errors and concomitant faults during requirements engineering and (2) to identify error prevention techniques used in industrial practice. We conducted a controlled classroom experiment to evaluate the benefits that knowledge of errors has on error prevention. We then analyzed data from two industrial surveys to identify specific prevention and mitigation approaches employed in practice. The classroom study showed that the better a requirements engineer understands human errors, the fewer errors and concomitant faults that engineer makes when developing a new requirements document. Furthermore, different types of Human Errors have different impacts on fault prevention. The industry study results identified prevention and mitigation mechanisms for each error type. Human error information is useful for fault prevention during requirements engineering. There are practices that requirements engineers can employ to prevent or mitigate specific human errors.

Original languageEnglish
Pages (from-to)3768-3800
Number of pages33
JournalEmpirical Software Engineering
Volume23
Issue number6
DOIs
StatePublished - 1 Dec 2018

Fingerprint

Requirements engineering
Engineers
Specifications
Planning
Industry
Experiments

Keywords

  • Empirical study
  • Error prevention
  • Fault prevention
  • Human errors
  • Human factors
  • Software requirements

Cite this

Hu, Wenhua ; Carver, Jeffrey C. ; Anu, Vaibhav ; Walia, Gursimran S. ; Bradshaw, Gary L. / Using human error information for error prevention. In: Empirical Software Engineering. 2018 ; Vol. 23, No. 6. pp. 3768-3800.
@article{f25d12dd11814445ae29f92cc4e8bfaa,
title = "Using human error information for error prevention",
abstract = "Developing error-free software requirements is of critical importance to the success of a software project. Problems that occur during requirements collection and specification, if not fixed early, are costly to fix later. Therefore, it is important to develop techniques that help requirements engineers detect and prevent requirements problems. As a human-centric activity, requirements engineering can be influenced by psychological research about human errors, which are the failings of human cognition during the process of planning and executinge a task. We have employed human error research to describe the types of problems that occur during requirements engineering. The goals of this research are: (1) to evaluate whether understanding human errors contributes to the prevention of errors and concomitant faults during requirements engineering and (2) to identify error prevention techniques used in industrial practice. We conducted a controlled classroom experiment to evaluate the benefits that knowledge of errors has on error prevention. We then analyzed data from two industrial surveys to identify specific prevention and mitigation approaches employed in practice. The classroom study showed that the better a requirements engineer understands human errors, the fewer errors and concomitant faults that engineer makes when developing a new requirements document. Furthermore, different types of Human Errors have different impacts on fault prevention. The industry study results identified prevention and mitigation mechanisms for each error type. Human error information is useful for fault prevention during requirements engineering. There are practices that requirements engineers can employ to prevent or mitigate specific human errors.",
keywords = "Empirical study, Error prevention, Fault prevention, Human errors, Human factors, Software requirements",
author = "Wenhua Hu and Carver, {Jeffrey C.} and Vaibhav Anu and Walia, {Gursimran S.} and Bradshaw, {Gary L.}",
year = "2018",
month = "12",
day = "1",
doi = "10.1007/s10664-018-9623-8",
language = "English",
volume = "23",
pages = "3768--3800",
journal = "Empirical Software Engineering",
issn = "1382-3256",
number = "6",

}

Hu, W, Carver, JC, Anu, V, Walia, GS & Bradshaw, GL 2018, 'Using human error information for error prevention', Empirical Software Engineering, vol. 23, no. 6, pp. 3768-3800. https://doi.org/10.1007/s10664-018-9623-8

Using human error information for error prevention. / Hu, Wenhua; Carver, Jeffrey C.; Anu, Vaibhav; Walia, Gursimran S.; Bradshaw, Gary L.

In: Empirical Software Engineering, Vol. 23, No. 6, 01.12.2018, p. 3768-3800.

Research output: Contribution to journalArticle

TY - JOUR

T1 - Using human error information for error prevention

AU - Hu, Wenhua

AU - Carver, Jeffrey C.

AU - Anu, Vaibhav

AU - Walia, Gursimran S.

AU - Bradshaw, Gary L.

PY - 2018/12/1

Y1 - 2018/12/1

N2 - Developing error-free software requirements is of critical importance to the success of a software project. Problems that occur during requirements collection and specification, if not fixed early, are costly to fix later. Therefore, it is important to develop techniques that help requirements engineers detect and prevent requirements problems. As a human-centric activity, requirements engineering can be influenced by psychological research about human errors, which are the failings of human cognition during the process of planning and executinge a task. We have employed human error research to describe the types of problems that occur during requirements engineering. The goals of this research are: (1) to evaluate whether understanding human errors contributes to the prevention of errors and concomitant faults during requirements engineering and (2) to identify error prevention techniques used in industrial practice. We conducted a controlled classroom experiment to evaluate the benefits that knowledge of errors has on error prevention. We then analyzed data from two industrial surveys to identify specific prevention and mitigation approaches employed in practice. The classroom study showed that the better a requirements engineer understands human errors, the fewer errors and concomitant faults that engineer makes when developing a new requirements document. Furthermore, different types of Human Errors have different impacts on fault prevention. The industry study results identified prevention and mitigation mechanisms for each error type. Human error information is useful for fault prevention during requirements engineering. There are practices that requirements engineers can employ to prevent or mitigate specific human errors.

AB - Developing error-free software requirements is of critical importance to the success of a software project. Problems that occur during requirements collection and specification, if not fixed early, are costly to fix later. Therefore, it is important to develop techniques that help requirements engineers detect and prevent requirements problems. As a human-centric activity, requirements engineering can be influenced by psychological research about human errors, which are the failings of human cognition during the process of planning and executinge a task. We have employed human error research to describe the types of problems that occur during requirements engineering. The goals of this research are: (1) to evaluate whether understanding human errors contributes to the prevention of errors and concomitant faults during requirements engineering and (2) to identify error prevention techniques used in industrial practice. We conducted a controlled classroom experiment to evaluate the benefits that knowledge of errors has on error prevention. We then analyzed data from two industrial surveys to identify specific prevention and mitigation approaches employed in practice. The classroom study showed that the better a requirements engineer understands human errors, the fewer errors and concomitant faults that engineer makes when developing a new requirements document. Furthermore, different types of Human Errors have different impacts on fault prevention. The industry study results identified prevention and mitigation mechanisms for each error type. Human error information is useful for fault prevention during requirements engineering. There are practices that requirements engineers can employ to prevent or mitigate specific human errors.

KW - Empirical study

KW - Error prevention

KW - Fault prevention

KW - Human errors

KW - Human factors

KW - Software requirements

UR - http://www.scopus.com/inward/record.url?scp=85047265527&partnerID=8YFLogxK

U2 - 10.1007/s10664-018-9623-8

DO - 10.1007/s10664-018-9623-8

M3 - Article

AN - SCOPUS:85047265527

VL - 23

SP - 3768

EP - 3800

JO - Empirical Software Engineering

JF - Empirical Software Engineering

SN - 1382-3256

IS - 6

ER -