Improving Case Based Software Effort Estimation Using a Multi-criteria Decision Technique Fadoua Fellir 1(B ) , Khalid Nafil 2 , Rajaa Touahni 1 , and Lawrence Chung 3 1 Lastid Laboratory, Faculty of Sciences, Ibn Tofail University, Kenitra, Morocco fadoua fellir@live.fr 2 Mohamed V University ENSIAS, Rabat, Morocco 3 Erik Johnson School of Engineering and Computer Science, The University of Texas at Dallas, P.O. Box 830688, Richardson, TX 75083-0688, USA Abstract. Producing an accurate effort estimate is essential for effec- tive software project management, and yet remains highly challenging and difficult to achieve, especially at the early stage of software devel- opment, because very little detail about the project are known at its beginning. To cope with this challenge, we present a novel framework for software effort estimation, which takes an incremental approach on one hand, using a case-based reasoning (CBR) model, while consider- ing a comprehensive set of different types of requirements models on the other hand, including functional requirements (FRs), non-functional requirements (NFRs), and domain properties (DPs). Concerning the use of CBR, this framework offers a multi-criteria technique for enhancing the accuracy of similarity measures among cases of multiple past projects that are similar to the current software project, towards determining and selecting the most similar one. We have tested our proposed framework on 36 (students’) projects and the results are very encouraging, in the sense that the difference between the estimated effort and the actual effort was lower than 10% in most cases. Keywords: FRs (Functional requirements) NFRs (Non-functional requirements) · Software effort estimation Case based reasoning (CBR) · Multi-criteria decision analysis (MCDA) 1 Introduction Software effort estimation has been noted as among the most critical factors that influence the success of software development projects, and yet equally challeng- ing. Although software effort estimation is not a rocket science, a good technique for software effort estimation can be a basis for helping avoid overruns in cost, time and manpower, while helping enhance the level of confidence in the overall process that may be defined and used for the particular software development project. To date, several software effort estimation models have been developed, c Springer International Publishing AG, part of Springer Nature 2019 R. Silhavy (Ed.): CSOC 2018, AISC 763, pp. 438–451, 2019. https://doi.org/10.1007/978-3-319-91186-1_46