Improving a Model for NFR Estimation Classifying Equal Size Bands with KNN
https://doi.org/10.15514/ISPRAS-2023-35(6)-2
Abstract
Any software development project needs to estimate Non-Functional Requirements (NFR). Typically, software managers are forced to use expert judgment to estimate the NFR. Today, NFRs cannot be measured, as there is no standardized unit of measurement for them. Consequently, most estimation models focus on the Functional User Requirements (FUR) and do not consider the NFR in the estimation process because these terms are often subjective. The objective of this paper was to show how an NFR estimation model was created using fuzzy logic, and K-Nearest Neighbors classifier algorithm, aiming to consider the subjectivity embedded in NFR terms to solve a specific problem in a Mexican company. The proposed model was developed using a database with real projects from a Mexican company in the private sector.
About the Authors
Francisco VALDÉS-SOUTOMexico
Doctor in Software Engineering with a specialty in Software Measurement and Estimation at the École de Technologie Supérieure (ETS) in Canada, two master's degrees in Mexico and France. President of COSMIC. Associate Professor of the Faculty of Sciences of the National Autonomous University of Mexico (UNAM). Founder of the Mexican Association of Software Metrics (AMMS). More than 25 years of experience in critical software development. He currently has more than 50 publications including articles in Indexed Journals, Proceedings, books and book chapters. He is the main promoter of the topic of formal software metrics in Mexico, promoting COSMIC (ISO/IEC 19761) as a National Standard. Member of the National System of Researchers (SNI). Research interests: software measurement and estimation applied to software project management, scope management, productivity and economics in software projects.
Jorge VALERIANO-ASSEM
Mexico
Master in Computer Science and Engineering from the National Autonomous University of Mexico, specialist consultant in formal software measurement and estimation since 2016. Areas of interest: Software metrics (COSMIC), Software estimation models, Software Validation Models, Estimation of Functional and Non-Functional Requirements, Evaluation of the Performance of Software Development Projects aligned to Software Metrics, Evaluation of the Quality of the Software Development Product.
Daniel TORRES-ROBLEDO
Mexico
Master student at Research Institute in Applied Mathematics and Systems, degree in Computer Science from Science Faculty of the UNAM.
References
1. O. Fedotova, L. Teixeira, A.H. Alvelos, Software effort estimation with multiple linear regression: Review and practical application, J. Inf. Sci. Eng. 29 (2013) 925–945.
2. T.K. Lee, K.T. Wei, A.A.A. Ghani, Systematic literature review on effort estimation for Open Sources (OSS) web application development, in: FTC 2016 - Proc. Futur. Technol. Conf., IEEE, San Francisco, California, USA, 2016: pp. 1158–1167. https://doi.org/10.1109/FTC.2016.7821748.
3. P. Sharma, J. Singh, Systematic literature review on software effort estimation using machine learning approaches, in: Proc. - 2017 Int. Conf. Next Gener. Comput. Inf. Syst. ICNGCIS 2017, IEEE, Jammu, India, 2018: pp. 54–57. https://doi.org/10.1109/ICNGCIS.2017.33.
4. C.E. Carbonera, K. Farias, V. Bischoff, Software development effort estimation: A systematic mapping study, IET Res. Journals. 14 (2020) 1–14. https://doi.org/10.1049/iet-sen.2018.5334.
5. R. Silhavy, Z. Prokopova, P. Silhavy, Algorithmic optimization method for effort estimation, Program. Comput. Softw. 42 (2016) 161–166. https://doi.org/10.1134/S0361768816030087.
6. M. Durán, R. Juárez-Ramírez, S. Jiménez, C. Tona, User Story Estimation Based on the Complexity Decomposition Using Bayesian Networks, Program. Comput. Softw. 46 (2020) 569–583. https://doi.org/10.1134/S0361768820080095.
7. M. Jørgensen, M. Shepperd, A systematic review of software development cost estimation studies, IEEE Trans. Softw. Eng. 33 (2007) 33–53. https://doi.org/10.1109/TSE.2007.256943.
8. A. Abran, Software Project Estimation: The Fundamentals for Providing High Quality Information to Decision Makers, 1st ed., John Wiley & Sons, 2015.
9. S. Bilgaiyan, S. Sagnika, S. Mishra, M. Das, A systematic review on software cost estimation in Agile Software Development, J. Eng. Sci. Technol. Rev. 10 (2017) 51–64. https://doi.org/10.25103/jestr.104.08.
10. R. Britto, V. Freitas, E. Mendes, M. Usman, Effort estimation in global software development: A systematic literature review, Proc. - 2014 IEEE 9th Int. Conf. Glob. Softw. Eng. ICGSE 2014. (2014) 135–144. https://doi.org/10.1109/ICGSE.2014.11.
11. F. Valdés-Souto, Validation of supplier estimates using cosmic method, CEURInternational Work. Softw. Meas. Int. Conf. Softw. Process Prod. Meas. (IWSM Mensura 2019). 2476 (2019) 15–30.
12. F. Valdés-Souto, L. Naranjo-Albarrán, Improving the Software Estimation Models Based on Functional Size through Validation of the Assumptions behind the Linear Regression and the Use of the Confidence Intervals When the Reference Database Presents a Wedge-Shape Form, Program. Comput. Softw. 47 (2021) 673–693. https://doi.org/10.1134/S0361768821080259.
13. ISO/IEC, ISO/IEC 14143-1:2007 Information technology — Software measurement — Functional size measurement, (2007) 6. https://www.iso.org/standard/38931.html.
14. S. Silva, M. Cortes, Use of Non-functional Requirements in Software Effort Estimation: Systematic Review and Experimental Results, Proc. - 2017 5th Int. Conf. Softw. Eng. Res. Innov. CONISOFT 2017. 2018-January (2018) 1–9. https://doi.org/10.1109/CONISOFT.2017.00008.
15. European Cooperation for Space Standardization, Space Engineering: Software- Part 1 Principles and Requirements, (2005).
16. Common Software Measurement International Consortium, Guideline on Non-Functional & Project Requirements, (2015).
17. F. Valdés-Souto, A.S. Núñez-varela, H.G. Pérez-gonzález, Evaluating the software quality non-functional requirement through a fuzzy logic- based model based on the ISO / IEC 25000 ( SQuaRE ) standard, in: 2019 7th Int. Conf. Softw. Eng. Res. Innov., Conference Publishing Services (CPS), México, CDMX, 2019: pp. 16–25. https://doi.org/10.1109/CONISOFT.2019.00014.
18. L. Buglione, The Next Frontier: Measuring and Evaluating Non-Functional Productivity, Metr. Views, IFPUG Newsl. 6 (2012) 11–14. http://www.ifpug.org/Metric Views/MVBuglione.pdf.
19. Project Management Institute, A Guide to the Project Management Body of Knowledge, PMBOK, 5th ed., Project Management Institute, 2013.
20. C. Tichenor, A new software metric to complement function points: The software non-functional assessment process (SNAP), CrossTalk. 26 (2013) 21–26.
21. A. Abran, IEEE 2430 Non-Functional Sizing Measurements: A Numerical Placebo, IEEE Softw. 38 (2020) 113–120. https://doi.org/10.1109/MS.2020.3028061.
22. P. Lago, P. Avgeriou, R. Hilliard, guest editors’ introduction Software Architecture: IEEE Softw. (2010) 20–24.
23. Y. Saito, A. Monden, K. Matsumoto, Evaluation of non-functional requirements in a request for proposal (RFP), in: Proc. 2012 Jt. Conf. 22nd Int. Work. Softw. Meas. 2012 7th Int. Conf. Softw. Process Prod. Meas. IWSM-MENSURA 2012, IEEE, 2012: pp. 106–111. https://doi.org/10.1109/IWSM-MENSURA.2012.23.
24. L. Chung, B. Nixon, E. Yu, J. Mylopoulos, Non-functional Requirements in Software Engineering, Kluwer Academic Publishing, 2000.
25. C. Jones, Estimating Software Costs: Bringing Realism to Estimating, Second, McGraw-Hill Companies, Inc., New York, N.Y., 2007.
26. F. Valdés-Souto, A. Abran, Industry Case Studies of Estimation Models Using Fuzzy Sets, in: Reiner Dumke (Ed.), Softw. Process Prod. Meas. Int. Conf. IWSM-Mensura 2007, UIB-Universitat de les Illes Baleares, Illes Baleares, Spain, 2007: pp. 87–101.
27. F. Valdés-Souto, A. Abran, Case Study: COSMIC Approximate Sizing Approach Without Using Historical Data, in: Jt. Conf. 22nd Int. Work. Softw. Meas. 2012 Seventh Int. Conf. Softw. Process Prod. Meas., IEEE, Assisi, Italy, 2012: pp. 178–189. https://doi.org/10.1109/IWSM-MENSURA.2012.34.
28. F. Valdés-Souto, A. Abran, COSMIC Approximate Sizing Using a Fuzzy Logic Approach: A Quantitative Case Study with Industry Data, in: F. Vogelezang, M. Daneva (Eds.), 2014 Jt. Conf. Int. Work. Softw. Meas. Int. Conf. Softw. Process Prod. Meas., Conference Publishing Services (CPS), Rotterdam (Netherlands), 2014: pp. 282–292. https://doi.org/10.1109/IWSM.Mensura.2014.44.
29. F.V. Souto, A. Abran, Improving the COSMIC approximate sizing using the fuzzy logic EPCU model, 2015. https://doi.org/10.1007/978-3-319-24285-9_13.
30. F. Valdés-Souto, A. Abran, Comparing the Estimation Performance of the EPCU Model with the Expert Judgment Estimation Approach Using Data from Industry, in: R. Lee (Ed.), Softw. Eng. Res. Manag. Appl. 2010, Springer-Verlag, Berlin, 2010: pp. 227–240.
31. F. Valdés-Souto, Design of a Fuzzy Logic Software Estimation Process, École De Technologie Supérieure, Université Du Québec, 2011.
32. Jacob Goldberger, Sam Roweis, Geoff Hinton, Ruslan Salakhutdinov, Neighbourhood components analysis, Adv. Neural Inf. Process. Syst. 17 (2005) 513–520.
33. T. Seidl, Nearest Neighbor Classification, Encycl. Database Syst. (2009). https://doi.org/https://doi.org/10.1007/978-0-387-39940-9_561.
34. Scikit-Learn, 1.6. Nearest Neighbors, 2023. (n.d.). https://scikit-learn.org/stable/modules/neighbors.html#classification.
35. A. Abran, A. Lestherhuis, B. Reynolds, A. Sellami, H. Soubra, S. Trudel, F. Valdés-Souto, F. Vogelezang, Early Software Sizing with COSMIC: Experts Guide, 2020 (2020) 1–67. https://doi.org/10.13140/RG.2.1.4195.0567.
36. L. Lavazza, S. Morasca, Empirical evaluation and proposals for bands-based COSMIC early estimation methods, Inf. Softw. Technol. 109 (2019) 108–125. https://doi.org/10.1016/j.infsof.2019.02.002.
37. B.R. Per Runeson, Martin Host, Austen Rainer, Case Study Research in Software Engineering: Guidelines and Examples, John Wiley & Sons, Inc., 2012. https://doi.org/10.1002/9781118181034.
38. Fellir, F., Nafil, K., & Touahni, R. (2015). Analyzing the non-functional requirements to improve accuracy of software effort estimation through case-based reasoning. 2015 10th International Conference on Intelligent Systems: Theories and Applications (SITA). doi:10.1109/sita.2015.7358402.
39. van der Vliet, Eric & Nijland, René & Mols, Harry & Vries, Jelle & Poort, Eltjo & Vogelezang, Frank. (2017). A Shortcut to Estimating Non-Functional Requirements? Architecture Driven Estimation as the Key to Good Cost Predictions. 10.1145/3143434.3143440.
Review
For citations:
VALDÉS-SOUTO F., VALERIANO-ASSEM J., TORRES-ROBLEDO D. Improving a Model for NFR Estimation Classifying Equal Size Bands with KNN. Proceedings of the Institute for System Programming of the RAS (Proceedings of ISP RAS). 2023;35(6):29-42. (In Russ.) https://doi.org/10.15514/ISPRAS-2023-35(6)-2