Metodologías Centradas en el Usuario para la Ingeniería de Requisitos: un Análisis Comparativo utilizando ISO/IEC/IEEE 29148
DOI:
https://doi.org/10.32870/recibe.v11i1.242Palabras clave:
Requisitos de software, Ingeniería de Requerimientos, Metodología de Software, ISO/IEC 29148, Centrado en el usuarioResumen
La ingeniería de requisitos es un proceso fundamental del ciclo de vida del desarrollo de software que permite definir las funcionalidades, la calidad y el alcance de un software. La ingeniería de requisitos es un proceso de participación humana intensiva y que tiene, en ISO/IEC/IEEE 29148, un estándar que define un conjunto de procesos (actividades, tareas, elementos de información, etc.) que brindan soporte para su formalización. Sin embargo, en la industria del software, se han reportado muchos tipos de deficiencias. En este contexto, han surgido propuestas de Metodologías Centradas en el Usuario para Ingeniería de Requisitos que requieren ser estudiadas para determinar su alineación con la norma ISO 29148. (OBJETIVO) El objetivo de este estudio es comparar Metodologías Centradas en el Usuario para Ingeniería de Requisitos (MCUIR) tomando elementos de proceso de ISO 29148 como criterio. (MÉTODOS) Para esta investigación se realizó un estudio de mapeo sistemático y un análisis comparativo de las MCUIR obtenidas. (RESULTADOS) En el estudio de mapeo sistemático, se obtuvieron 4.463 estudios de tres bases de datos digitales relevantes en la primera etapa, y luego del proceso de selección, se identificaron cinco Metodologías Centradas en el Usuario para Ingeniería de Requisitos. Estas metodologías se caracterizaron y analizaron desde la perspectiva de los elementos del proceso para compararlas con la ISO 29148. (CONCLUSIONES) La metodología DoRCU es la más cercana a la ISO 29148, seguida de las metodologías Ammeth y Borja; y la metodología XRE es la que más se aleja de la ISO 29148.Citas
Ambreen, T., Ikram, N., Usman, M., & Niazi, M. (2018). Empirical Research in Requirements Engineering: Trends and Opportunities. Requirements Engineering, 23, 63–95. https://doi.org/10.1007/s00766-016-0258-2
Anu, V., Hu, W., Carver, J. C., Walia, G. S., & Bradshaw, G. (2018). Development of a Human Error Taxonomy for Software Requirements: A Systematic Literature Review. Information and Software Technology, 103, 112–124. https://doi.org/10.1016/j.infsof.2018.06.011
Beecham, S., Hall, T., & Rainer, A. (2005). Defining a Requirements Process Improvement Model. Software Quality Journal, 13, 247–279. https://doi.org/10.1007/s11219-005-1752-9
Borja Buestán, C. D., & Cuji Torres, V. A. (2013). Metodología para la Especificación de Requerimientos de Software Basado en el Estándar IEEE 830-1998.
Boyarchuk, A., Pavlova, O., Bodnar, M., & Lopatto, I. (2020). Approach to the Analysis of Software Requirements Specification on its Structure Correctness. CEUR Workshop, 85–95.
Cano, C., Melgar, A., Dávila, A., & Pessoa, M. (2015). Comparison of Software Process Models. A Systematic Literature Review. 41st Latin American Computing Conference - CLEI 2015, 1–6. https://doi.org/10.1109/CLEI.2015.7360025
Chandra, V. (2015). Comparison between Various Software Development Methodologies. International Journal of Computer Applications, 131(9), 7–10. https://doi.org/10.5120/ijca2015907294
Chang, C. K. (2018). Situation Analytics — at the Dawn of a New Software Engineering Paradigm. Science China - Information Sciences, 61(5), 1–14. https://doi.org/10.1007/s11432-017-9372-7
De Bellis, M., & Haapala, C. (1995). User-Centric Software Engineering. IEEE Expert, 10(1), 34–41.
Forbrig, P. (2016). Continuous Requirements Engineering and Human-Centered Agile Software Development. International Working Conference on Requirement Engineering: Foundation for Software Quality - REFSQ 2016, 1–11.
Griselda Báez, M., & Barba Brunner, S. I. (2001). Metodología DoRCU para la Ingeniería de Requerimientos. WorkShop on Requirement Engineering, 1–13.
Guida, G., & Lamperti, G. (2000). AMMETH: a Methodology for Requirements Analysis of Advanced Human-System Interfaces. IEEE Transactions on Systems, Man, and Cybernetics Part A:Systems and Humans., 30(3), 298–321. https://doi.org/10.1109/3468.844355
Hu, W., Carver, J. C., Anu, V., Walia, G., & Bradshaw, G. (2017). Defect Prevention in Requirements Using Human Error Information: An Empirical Study. International Working Conference on Requirements Engineering: Foundation for Software Quality - REFSQ 2017. In Lecture Notes in Computer Science, 10153 LNCS, 61–76. https://doi.org/10.1007/978-3-319-54045-0_5
IEEE-CS. (2014). SWEBOK Guide V3.0 - Guide to the Software Engineering Body of Knowledge. In P. Bourque & R. Fairley (Eds.), IEEE.
IEEE SA. (2011). IEEE SA Standards. Web EEE/ISO/IEC 29148-2011. https://standards.ieee.org/standard/29148-2011.html
Ikram, N., & Naz, S. (2015). Extreme Requirements Engineering (XRE). Requirements Engineering in the Big Data Era. In Communications in Computer and Information Science, 558, 95–108. https://doi.org/10.1007/978-3-662-48634-4_7
ISO/IEC/IEEE. (2018). ISO/IEC/IEEE 29148:2018 Systems and Software Engineering — Life Cycle Processes — Requirements Engineering. In ISO (2nd ed.). https://www.iso.org/standard/72089.html
ISO. (2019). ISO 9241-210: 2019 Ergonomics of Human-System Interaction — Part 210: Human-Centred Design for Interactive Systems Ergonomie. 2do Edition. In ISO.
Juárez-Ramírez, R. (2017). User-Centered Design and Adaptive Systems: Toward Improving Usability and Accessibility. Universal Access in the Information Society, 16, 361–363. https://doi.org/10.1007/s10209-016-0480-1
Kelly, J. C., Sherif, J. S., & Hops, J. (1992). Analysis of Defect Densities Found During Software Inspections. NASA -15th Annual Software Engineering Workshop, 17(2), 111–117.
Miotti, H. (2009). The Economic Impact of Standardization. Technological Change, Standards Growth in France. In AFNOR.
Nazir, F., Butt, W. H., Anwar, M. W., & Khan Khattak, M. A. (2017). The Applications of Natural Language Processing (NLP) for Software Requirement Engineering - A Systematic Literature Review. ICISA 2017 Information Science and Applications. In Lecture Notes in Electrical Engineering, 424, 485–493. https://doi.org/10.1007/978-981-10-4154-9_56
Niazi, M. (2005). An Instrument for Measuring the Maturity of Requirements Engineering Process. Product Focused Software Process Improvement - PROFES 2005 . In Lecture Notes in Computer Science, 3547, 574–585. https://doi.org/10.1007/11497455_44
Niazi, M., & Shastry, S. (2003). Critical Success Factors for the Improvement of Requirements Engineering Process. International Conference on Software Engineering Research and Practise, 433–439.
Nieva, A., Hardisty, A., & Jones, A. (2016). SCRAM–CK: Applying a Collaborative Requirements Engineering Process for Designing a Web Based e-Science Toolkit. Requirements Engineering, 21, 107–129. https://doi.org/10.1007/s00766-014-0212-0
Norman, D. A., & Draper, S. W. (1987). User Centred System Design-New Perspectives on Human/Computer Interaction. Journal of Educational Computing Research, 3(1), 129–134.
Nuseibeh, B., & Easterbrook, S. (2000). Requirements Engineering: A Roadmap. International Conference on The Future of Software Engineering - ICSE 2000., 35–46. http://mcs.open.ac.uk/ban25/papers/sotar.re.pdf%5Cn./CitaviFiles/Nuseibeh2000.pdf
Paez Cardenas, P., Arias Peralta, C. D., & Wanumen Silva, L. F. (2018). Metodología para Elaboración de Requerimientos en Aplicaciones con Servicios Web. Revista Vínculos, 15(2), 160–174. https://doi.org/10.14483/2322939x.13505
Petersen, K., Vakkalanka, S., & Kuzniarz, L. (2015). Guidelines for Conducting Systematic Mapping Studies in Software Engineering: An Update. Information and Software Technology, 64, 1–18. https://doi.org/10.1016/j.infsof.2015.03.007
Saleh, S. M., Rahman, M. A., & Asgor, K. A. (2017). Comparative Study on the Software Methodologies for Effective Software Development. International Journal of Scientific & Engineering Research, 8(4), 1018–1025.
Selvyanti, D., & Bandung, Y. (2017). The Requirements Engineering Framework Based on ISO 29148:2011 and Multi-View Modeling Framework. International Conference on Information Technology Systems and Innovation - ICITSI 2017, 128–133. https://doi.org/10.1109/ICITSI.2017.8267930
Shafiq, M., Zhang, Q., & Akbar, M. A. (2019). Software Requirements Engineering Maturity Model (SREMM) in Offshore Software Development Outsourcing. International Conference on Frontiers of Information Technology - FIT 2019, 101–104. https://doi.org/10.1109/FIT47737.2019.00028
Subbarayudu, B., Srija Harshika, D., Amareswar, E., Reddy, R. G., & Reddy, K. K. (2017). Review and Comparison on Software Process Models. International Journal of Mechanical Engineering and Technology, 8(8), 967–980.
Toro, A., & Gálvez, J. G. (2016). Especificación de Requisitos de Software: Una Mirada desde la Revisión Teórica de Antecedentes. Entre Ciencia e Ingeniería, 10(19), 108–113. http://biblioteca.ucp.edu.co/OJS/index.php/entrecei/article/view/2803/2785
UNCTAD. (2012). Information Economy Report 2012. The Software Industry and Developing Countries. In United Nations Publication.
Vidal, D., Ibarra, J., Flores, B., & Lopez, G. (2012). Adopción del Estándar ISO 9241-210 : 2010 en la Construcción de Sistemas Interactivos Basados en Computadora. Congreso Internacional de Investigación e Innovación En Ingeniería de Software - CONISOFT 2012, 1–7.
Wanderley, F., Silva, A., Araujo, J., & Silveira, D. S. (2014). SnapMind: A Framework to Support Consistency and Validation of Model-Based Requirements in Agile Development. IEEE 4th International Model-Driven Requirements Engineering Workshop - MoDRE 2014, 47–56. https://doi.org/10.1109/MoDRE.2014.6890825
Ward, D., Rossi, M., Sullivan, B. P., & Pichika, H. V. (2018). The Metamorphosis of Systems Engineering Through the Evolution of Today’s Standards. 4th IEEE International Symposium on Systems Engineering - ISSE 2018, 1–8. https://doi.org/10.1109/SysEng.2018.8544426
Westfall, L. (2011). Las Fallas en la Ingeniería de Requisitos. Ingenierías USBMed, 2(2), 40–47. https://doi.org/10.21500/20275846.257