  Context: Software development is human-centric and vulnerable to human error.
Human errors are errors in the human thought process. To ensure software
quality, practitioners must understand how to manage these human errors.
Organizations often change the requirements engineering process to 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 on the prevention and mitigation of human errors in software
engineering, and requirements engineering specifically, are limited. The
software engineering studies do not provide strong results about the types of
changes that are most effective in requirements engineering. Objective: The
goal of this paper is to develop a taxonomy of human error prevention and
mitigation strategies based on data from requirements engineering
professionals. Method: We performed a qualitative analysis of two practitioner
surveys on requirements engineering practices to identify and classify
strategies for the prevention and mitigation of human errors. Results: We
organized the human error management strategies into a taxonomy based on
whether they primarily affect People, Processes, or the Environment. Inside
each high-level category, we further organized the strategies into low-level
classes. More than 50% of the reported strategies require a change in Process,
23% require a change in Environment, 21% require a change in People, with the
remaining 5% too ambiguous to classify. In addition, more than 50\% of the
strategies focus on Management activities. Conclusions: The Human Error
Management Taxonomy provides a systematic classification and organization of
strategies for prevention and mitigation of human errors in requirements
engineering. This systematic organization provides a foundation upon which
research can build.
