(IJACSA) International Journal of Advanced Computer Science and Applications, Vol. 7, No. 10, 2016 Software Requirements Conflict Identification: Review and Recommendations Maysoon Aldekhail College of Computer and Information Sciences King Saud University Azzedine Chikh College of Computer and Information Sciences King Saud University Djamal Ziani College of Computer and Information Sciences King Saud University Abstract—Successful development of software systems re- quires a set of complete, consistent and clear requirements. A wide range of different stakeholders with various needs and backgrounds participate in the requirements engineering process. Accordingly, it is difficult to completely satisfy the requirements of each and every stakeholder. It is the requirements engineer’s job to trade-off stakeholders’ needs with the project resources and constraints. Many studies assert that failure in understanding and managing requirements in general, and requirement conflicts in particular, are one of the main problems of exceeding cost and allocated time which in turn results in project failure. This paper aims at investigating the different reasons of re- quirements conflicts and the different types of requirements conflicts. It providing an overview of existing research works on identifying conflicts; and discussing their limitations in order to yield suggestions for improvement. Objective: To provide an overview of existing research studies on identifying software requirements conflict and identifying limitations and areas for improvement. Method: A comparative literature was conducted by assessing 20 studies dated from 2001 to 2014. Keywords—software requirements; requirements engineering; requirements conflicts I. I NTRODUCTION In requirement engineering, the term conflict involves in- terference, interdependency or inconsistency between require- ments [1]. Different studies state that failure in managing requirement conflicts is one of the main reasons for failure in software projects which is caused by cost and lack of time [2]. It is essential to detect and resolve conflicts in early phases of the project lifecycle to prevent re-iterations of all phases [3]. In recent research studies, a high number of conflicting requirements is stated as in [4], n 2 conflicts are reported in n requirements, whereas [5] reported 40%-60% of requirements were in conflict, In addition, the functional and nonfunctional requirements were both found to be equal in the percentage of conflicts. Also, most research has shown the risks of working with requirements that are in conflicts with other requirements. These risks are overtime or over budget which can lead to project failure. At the very least, it would result in extra effort expended. The remainder of the paper is organized as follows: sec- tion II gives an overview about requirements conflict, the different reasons for requirements conflict and the different types of requirements conflict. Section III presents in de- tails the existing techniques for requirements conflict and a comparison between them. Then, section IV, discusses the limitation and research gaps in previous works and gives some recommendations should be taken into consideration when working to find practical techniques for detecting conflict between requirements. Finally, a conclusion of the review is giving. II. REQUIREMENTS CONFLICT This section explains the meaning of requirements con- flicts, the different reasons that may cause conflict between requirements and the different types of requirements conflicts. A. Definition of Requirements Conflict Conflicting requirements is a problem that occurs when a requirement is inconsistent with another requirement [7]. Consistency between requirements requires no two or more re- quirements contradict each other [8]. In requirements engineer- ing, the term conflict involves interference, interdependency or inconsistency between requirements [1]. Kim et al. [9] gave a good definition of requirements conflict as: “The interactions and dependencies between requirements that can lead to negative or undesired operation of the system” An example of a conflict in nonfunctional requirements can be the gap between performance and security; when the client wants certain functionality to be satisfied in minimal time (e.g. calculate something and display it on screen), as well as the use of a secure protocol for data transferee and double password access control. B. Causes of Requirements Conflict There are different reasons that cause conflicts between stakeholders’ requirements. One good categorization for con- flicts reasons is presented in [10]; it classifies the reasons into technical reasons and social reasons. Technical reasons are caused by the following difficulties: • Massive quantity of requirements can lead to conflicts between them. • Changes in requirements during system development phases. These changing may occur after the addition of new requirements or the update of old ones [14]. www.ijacsa.thesai.org 326 | P a g e