Impact Propagation of Human Errors on Software Requirements Volatility

Zahra Askarinejadamiri, Abdul Azim, Hazura Zulzallil, Koh Tieng
2017 International Journal of Advanced Computer Science and Applications  
Requirements volatility (RV) is one of the key risk sources in software development and maintenance projects because of the frequent changes made to the software. Human faults and errors are major factors contributing to requirement change in software development projects. As such, predicting requirements volatility is a challenge to risk management in the software area. Previous studies only focused on certain aspects of the human error in this area. This study specifically identifies and
more » ... ses the impact of human errors on requirements gathering and requirements volatility. It proposes a model based on responses to a survey questionnaire administered to 215 participants who have experience in software requirement gathering. Exploratory factor analysis (EFA) and structural equation modelling (SEM) were used to analyse the correlation of human errors and requirement volatility. The results of the analysis confirm the correlation between human errors and RV. The results show that human actions have a higher impact on RV compared to human perception. The study provides insights into software management to understand socio-technical aspects of requirements volatility in order to control risk management. Human actions and perceptions respectively are a root cause contributing to human errors that lead to RV. 228 | P a g e www.ijacsa.thesai.org gathering [24]. Usually, requirements elicited from customers are vague and incomplete and do not include adequate detailed information. Requirements are obtained through communication with stakeholders [25] and poor communication can reduce the quality of requirements gathering [26]. Undefined requirement process and misunderstanding are signs of poor communication in software requirements gathering [27]. Some techniques are presented for preventing defect in RE. In the paper titled "Preventing requirement defects: An experiment in process improvement", the authors categorized software requirement defects as error source (where the true requirement has been "lost"); quality factor (functionality, usability, performance, etc.); related interface (user interface, third-party software, etc.); cost of handling and repair. Human and developer errors in this study are also considered as a source of defect in RE. Based on this study some techniques were presented which, if applied, can reduce failure of the project [28] . Scholars believe that human errors during the communication phase have a vital role to play in enhancing RE quality. They conducted their research using case studies. They classified communication and domain knowledge as two essential factors that impact on RE quality [29] . Simple omissions in communication can cause many challenges in requirements gathering [30] . In a similar study, researchers noted that trust relationship, increased knowledge, and better understanding are main elements that impact on the communication between users and developers. In one study, individual actors based on cognitive perspective, organizational factors, human flexibility, and human artfulness are the main contributors to human error that result in RE failure [31] , while another study attributes it to organizational safety and human behaviour [32] . These factors are some aspects of human behaviour which cause human errors in the system. In requirements engineering, verification and validation are important steps for development of the product as discussed in the paper titled "Challenges and practices in aligning requirements with verification and validation: a case study of six companies" [33] . The authors believe that weak communication is an example of weak RE that can cause many problems in software project such as invalid requirements, software quality problem, and wasted effort. Weak communication occurs through human errors, and the paper stressed the importance of human communication in requirement gathering in ensuring the success of a project. Some studies have focused on the human personality and attitude on software engineering and apply theories such as Myers-Briggs Type Indicator (MBTI), the Big Five Personality Theory, and so on [5] [34] [35] .
doi:10.14569/ijacsa.2017.080230 fatcat:acz7xwzzjfg47mxxsrnnbfos5m