Application of Human Error Theories in Managing Human Errors in Software Engineering

Show simple item record

dc.contributor Gray, Jeff
dc.contributor Crawford, Chris
dc.contributor Smith, Randy
dc.contributor Bradshaw, Gary
dc.contributor.advisor Carver, Jeffrey Mahaju, Sweta 2023-01-27 2023-01-27 2022
dc.identifier.other u0015_0000001_0004603
dc.identifier.other Mahaju_alatus_0004D_15026
dc.description Electronic Thesis or Dissertation
dc.description.abstract Context: Software development, especially in its initial requirements phase, is a human-centric activity and hence vulnerable to human error. Human errors are flaws in the human thought process. To ensure software quality, it is essential for practitioners to understand how to manage these human errors. Organizations often introduce changes into the requirements engineering process to either prevent human errors from occurring or to mitigate the harm caused when those errors do occur. While there are studies on human error management in other disciplines, research studies on the prevention and mitigation of human errors in software engineering and requirements engineering specifically are scarce. The current studies in software engineering do not provide strong results about the types of changes most effective in requirements engineering. Objective: The goal of this dissertation research is to structure and organize the findings on human error prevention and mitigation approaches and provide an initial evaluation of their effectiveness. To that end, I developed a taxonomy of human error prevention and mitigation strategies based on data gathered from requirements engineering professionals. Furthermore, I validated its feasibility to be broadly representative and useful in real software development processes. Method: I performed a qualitative analysis of data from two practitioner surveys on requirements engineering practices to identify and classify strategies for preventing and mitigating human errors. Then, I attempted to fit human error prevention and mitigation strategies identified in software engineering and cognitive psychology domains into the taxonomy to enhance and broaden it. Finally, I evaluated the feasibility and usefulness of the taxonomy by training senior-level undergraduate students to use the error management strategies organized in the taxonomy to handle their software development problems. Results: I organized the human error management strategies into a formal taxonomy based on whether the changes primarily affect People, Processes, or the Environment. I further organized the strategies into low-level classes inside each of these high-level categories. I found that error management strategies focused on changes in Process are more frequently used and, hence, more effective than those focused on changes in People. Conclusions: The Human Error Management taxonomy (HEMT) provides a systematic classification and organization of strategies for the prevention and mitigation of human errors in software engineering. This systematic organization provides a foundation upon which future research can build. This dissertation research provides an initial structure to the scattered error management approaches and an initial evaluation of the feasibility and usefulness of that structure. Further empirical studies are needed in more real software development environments and settings to validate and generalize the findings reported in this dissertation.
dc.format.medium electronic
dc.format.mimetype application/pdf
dc.language English
dc.language.iso en_US
dc.publisher University of Alabama Libraries
dc.relation.ispartof The University of Alabama Electronic Theses and Dissertations
dc.relation.ispartof The University of Alabama Libraries Digital Collections
dc.relation.hasversion born digital
dc.rights All rights reserved by the author unless otherwise indicated.
dc.subject.other cognitive psychology
dc.subject.other error management
dc.subject.other error mitigation
dc.subject.other error prevention
dc.subject.other human error
dc.subject.other software development life cycle
dc.title Application of Human Error Theories in Managing Human Errors in Software Engineering
dc.type thesis
dc.type text University of Alabama. Department of Computer Science Computer science The University of Alabama doctoral Ph.D.

Files in this item

This item appears in the following Collection(s)

Show simple item record

Search DSpace


My Account