Most common errors in software modeling using UML

  • Patricia Chourio
  • Romualdo Azevedo
  • Alberto Castro
  • Bruno Gadelha

Resumo




This article adresses recurrent errors in software modeling made by students from Software Engineering courses. Software Modeling teachers and related literature agrees that there are certain patterns on errors made by students, although there is no detailed description of them. In this context, we evaluated 2 editions of Requirements Engineering and Systems Analysis of a Software Engineering course with a total of 41 students. Based on this analysis, student errors instances were compared with those found through a literature review, especially the ones involving text interpretation and abstraction difficulties, given these are essential skills for designing and representing models. Our results include a list of most common software modeling errors along with a description of each one, and the resulting catalog can support teachers who seek to develop techniques using error as a mediating instrument for teaching and learning as well as a fundamental resource to reduce them.




 

Referências

Vaibhav Anu, Wenhua Hu, Jeffrey C Carver, Gursimran S Walia, and Gary Bradshaw. 2018. Development of a human error taxonomy for software requirements: a systematic literature review. Information and Software Technology (2018).

Vaibhav Anu, Gursimran Walia, and Gary Bradshaw. 2017. Incorporating Human Error Education into Software Engineering Courses via Error-based Inspections. In Proceedings of the 2017 ACM SIGCSE Technical Symposium on Computer Science Education. ACM, 39--44.

IEEE Standards Association et al. 2010. Systems and software engineering--Vocabulary ISO/IEC/IEEE 24765: 2010. Iso/Iec/Ieee 24765 (2010), 1--418.

Jean Pierre Astolfi. 1999. El "error", un medio para enseñar. Diada Editorial, S.L.

Elizabeth F Barkley, K Patricia Cross, and Claire H Major. 2014. Collaborative learning techniques: A handbook for college faculty. John Wiley & Sons.

Grady Booch, Jacobson Jacobson, and J Rumbaugh. 2016. Uml-Guia do usuário, tradução da segunda edição. Elsevier Brasil.

Maria Fernanda Castro and Patrícia Tedesco. 2018. Utilização de Portfólios na Criação de Relatos e Reflexão Sobre o Erro em Programação para Alunos do Ensino Superior. In Brazilian Symposium on Computers in Education (Simpósio Brasileiro de Informática na Educação-SBIE), Vol. 29. 1003.

Brian Dobing and Jeffrey Parsons. 2006. How UML is used. Commun. ACM 49, 5 (2006), 109--113.

Gilleanes TA Guedes. 2018. UML 2-Uma abordagem prática. Novatec Editora.

Jaime Alberto Guzmán-Luna, Carlos Andrés Vélez-Carvajal, and Sebastián Alonso Gámez Arias. 2015. Un modelo de procesamiento de lenguaje natural para la detección de errores en requisitos de software. Revista Virtual Universidad Católica del Norte 46 (2015), 169--186.

Ethan Hadar and Irit Hadar. 2007. Effective preparation for design review: using UML arrow checklist leveraged on the Gurus' knowledge. In Companion to the 22nd ACM SIGPLAN conference on Object-oriented programming systems and applications companion. ACM, 955--962.

O Kilic, B Say, and O Demirors. 2008. Cognitive aspects of error finding on a simulation conceptual modeling notation. In 2008 23rd International Symposium on Computer and Information Sciences. IEEE, 1--6.

Jeff Kramer. 2007. Is abstraction the key to computing? Commun. ACM 50, 4 (2007), 36--42.

Felix Leung and Narasimha Bolloju. 2005. Analyzing the quality of domain models developed by novice systems analysts. In Proceedings of the 38th annual Hawaii international conference on system sciences. IEEE, 188b--188b.

Zhiyi Ma. 2017. An approach to improve the quality of object-oriented models from novice modelers through project practice. Frontiers of Computer Science 11, 3 (2017), 485--498.

Felipe Nery Rodrigues Machado. 2018. Análise e Gestão de Requisitos de Software--Onde nascem os sistemas. Editora Saraiva.

Jesás García Molina, Marcos Menárguez Tortosa, and Joaquín Nicolás Ros. [n. d.]. Aplicación práctica de un proceso basado en UML. ([n. d.]).

Marco Antonio Moreira. 2013. Aprendizagem significativa subversiva. Série-Estudos-Periódico do Programa de Pós-Graduação em Educação da UCDB 21 (2013).

Marco Antonio Moreira. 2017. Aprendizaje significativo como un referente para la organización de la enseñanza. Archivos de Ciencias de la Educación 11, 12 (2017).

Irwin D Nahinsky, Mary S Morgan, and David E Oeschger. 1979. Cognitive strategies, field dependence, and the abstraction process. Journal of Research in Personality 13, 4 (1979), 490--504.

Hossein Nassaji. 2018. Errors Versus Mistakes. The TESOL Encyclopedia of English Language Teaching (2018), 1--5.

Roberta Pasqualli et al. 2002. Identificação e diagnósttico de erros de modelagem conceitual cometidos por aprendizes. (2002).

Miriam Pérez Pérez. 2017. El error como elemento positivo durante el proceso de enseñanza-aprendizaje del inglés en educación primaria en España. Traslaciones 4, 8 (2017), 68--96.

J Pow-Sang. 2003. La especificación de requisitos con casos de uso: buenas y malas prácticas. In II Simposio Internacional de Sistemas de Información e Ingeniería de Software en la Sociedad del Conocimiento-SISOFT. Retrieved from.

Jens Rasmussen. 1982. Human errors. A taxonomy for describing human malfunction in industrial installations. Journal of occupational accidents 4, 2-4 (1982), 311--333.

Tobias Reischmann and Herbert Kuchen. 2016. Towards an E-assessment tool for advanced software engineering skills. In Proceedings of the 16th Koli Calling International Conference on Computing Education Research. ACM, 81--90.

Keng Siau and Poi-Peng Loo. 2006. Identifying difficulties in learning UML. Information Systems Management 23, 3 (2006), 43--51.

Claes Wohlin, Per Runeson, Martin Höst, Magnus C Ohlsson, Björn Regnell, and Anders Wesslén. 2012. Experimentation in software engineering. Springer Science & Business Media.

Ángela Zamora, José Manuel Suárez, and Diego Ardura. 2018. Error detection and self-assessment as mechanisms to promote self-regulation of learning among secondary education students. The Journal of Educational Research 111, 2 (2018), 175--185.

CARLOS M ZAPATA, FERNANDO ARANGO, et al. 2007. Un ambiente para la obtención automática de diagramas UML a partir de un lenguaje controlado. Dyna 74, 153 (2007), 223--236.
Publicado
21/01/2020
CHOURIO, Patricia; AZEVEDO, Romualdo; CASTRO, Alberto; GADELHA, Bruno. Most common errors in software modeling using UML. In: EDUCATION - SIMPÓSIO BRASILEIRO DE ENGENHARIA DE SOFTWARE (SBES), 33. , 2019, Salvador. Anais [...]. Porto Alegre: Sociedade Brasileira de Computação, 2020 .