Identifying Difficulties of Software Modeling Through Class Diagrams: A Long-Term Comparative Analysis
Software modeling is a creative activity in which software components and their relationships are identified based on customer requirements. Based on the literature, object-oriented software modeling is based on four fundamental pillars which are abstraction, encapsulation, decomposition, and inheri...
Main Authors: | , , |
---|---|
Format: | Article |
Language: | English |
Published: |
IEEE
2022-01-01
|
Series: | IEEE Access |
Subjects: | |
Online Access: | https://ieeexplore.ieee.org/document/9729702/ |
_version_ | 1811271262524145664 |
---|---|
author | Pamela Flores Mayra Alvarez Jenny Torres |
author_facet | Pamela Flores Mayra Alvarez Jenny Torres |
author_sort | Pamela Flores |
collection | DOAJ |
description | Software modeling is a creative activity in which software components and their relationships are identified based on customer requirements. Based on the literature, object-oriented software modeling is based on four fundamental pillars which are abstraction, encapsulation, decomposition, and inheritance. However, despite the existence of guidelines and recommendations for implementing the object-oriented approach, novice software designers do not make good design decisions, leading to inefficient designs that cannot be modifiable, understandable, or user-friendly distribute at the development level. The literature reveals that the most common difficulties faced by software designers is a lack of understanding and confusion of concepts related to the object-oriented approach, as well as difficulties in creating Unified Modeling Language diagrams, especially class diagrams. The work presented in this article uses a qualitative and quantitative approach to determine, in a group of university students, what are the most recurrent difficulties and their persistence during the time. The qualitative case study is the method that allowed to generate the documents: <italic>diagnostic</italic> and <italic>evaluation</italic> tests. Additionally, a thematic analysis was used to identify, analyze and report patterns within the data. In order to know the occurrences of the problems in the case study, as part of our quantitative approach, a comparative study was applied to compare the results obtained between the diagnostic and evaluation tests and thus establish the similarities and differences among the cases observed, through the hierarchical clustering technique. The findings of this study show us 16 difficulties identified after the qualitative analysis, while the quantitative analysis shows us the number of occurrences and their persistence over time. The difficulties reported in both analyzes focus on these three difficulties: a) Definition of attributes that could be a class, b) Classes with inadequate or insufficient behavior and, c) Incorrect use of multiplicity between classes. Each of these difficulties is analyzed in depth in this study. |
first_indexed | 2024-04-12T22:16:58Z |
format | Article |
id | doaj.art-ff93fb36ab2a4e93abc428c47a5eb501 |
institution | Directory Open Access Journal |
issn | 2169-3536 |
language | English |
last_indexed | 2024-04-12T22:16:58Z |
publishDate | 2022-01-01 |
publisher | IEEE |
record_format | Article |
series | IEEE Access |
spelling | doaj.art-ff93fb36ab2a4e93abc428c47a5eb5012022-12-22T03:14:30ZengIEEEIEEE Access2169-35362022-01-0110288952891010.1109/ACCESS.2022.31572909729702Identifying Difficulties of Software Modeling Through Class Diagrams: A Long-Term Comparative AnalysisPamela Flores0https://orcid.org/0000-0002-4536-2780Mayra Alvarez1Jenny Torres2https://orcid.org/0000-0002-8920-1225Department of Informatics and Computer Science, Escuela Politécnica Nacional, Quito, EcuadorDepartment of Informatics and Computer Science, Escuela Politécnica Nacional, Quito, EcuadorDepartment of Informatics and Computer Science, Escuela Politécnica Nacional, Quito, EcuadorSoftware modeling is a creative activity in which software components and their relationships are identified based on customer requirements. Based on the literature, object-oriented software modeling is based on four fundamental pillars which are abstraction, encapsulation, decomposition, and inheritance. However, despite the existence of guidelines and recommendations for implementing the object-oriented approach, novice software designers do not make good design decisions, leading to inefficient designs that cannot be modifiable, understandable, or user-friendly distribute at the development level. The literature reveals that the most common difficulties faced by software designers is a lack of understanding and confusion of concepts related to the object-oriented approach, as well as difficulties in creating Unified Modeling Language diagrams, especially class diagrams. The work presented in this article uses a qualitative and quantitative approach to determine, in a group of university students, what are the most recurrent difficulties and their persistence during the time. The qualitative case study is the method that allowed to generate the documents: <italic>diagnostic</italic> and <italic>evaluation</italic> tests. Additionally, a thematic analysis was used to identify, analyze and report patterns within the data. In order to know the occurrences of the problems in the case study, as part of our quantitative approach, a comparative study was applied to compare the results obtained between the diagnostic and evaluation tests and thus establish the similarities and differences among the cases observed, through the hierarchical clustering technique. The findings of this study show us 16 difficulties identified after the qualitative analysis, while the quantitative analysis shows us the number of occurrences and their persistence over time. The difficulties reported in both analyzes focus on these three difficulties: a) Definition of attributes that could be a class, b) Classes with inadequate or insufficient behavior and, c) Incorrect use of multiplicity between classes. Each of these difficulties is analyzed in depth in this study.https://ieeexplore.ieee.org/document/9729702/Computer sciencecomputer science educationobject oriented modelingsoftware designsoftware engineeringsystems engineering education |
spellingShingle | Pamela Flores Mayra Alvarez Jenny Torres Identifying Difficulties of Software Modeling Through Class Diagrams: A Long-Term Comparative Analysis IEEE Access Computer science computer science education object oriented modeling software design software engineering systems engineering education |
title | Identifying Difficulties of Software Modeling Through Class Diagrams: A Long-Term Comparative Analysis |
title_full | Identifying Difficulties of Software Modeling Through Class Diagrams: A Long-Term Comparative Analysis |
title_fullStr | Identifying Difficulties of Software Modeling Through Class Diagrams: A Long-Term Comparative Analysis |
title_full_unstemmed | Identifying Difficulties of Software Modeling Through Class Diagrams: A Long-Term Comparative Analysis |
title_short | Identifying Difficulties of Software Modeling Through Class Diagrams: A Long-Term Comparative Analysis |
title_sort | identifying difficulties of software modeling through class diagrams a long term comparative analysis |
topic | Computer science computer science education object oriented modeling software design software engineering systems engineering education |
url | https://ieeexplore.ieee.org/document/9729702/ |
work_keys_str_mv | AT pamelaflores identifyingdifficultiesofsoftwaremodelingthroughclassdiagramsalongtermcomparativeanalysis AT mayraalvarez identifyingdifficultiesofsoftwaremodelingthroughclassdiagramsalongtermcomparativeanalysis AT jennytorres identifyingdifficultiesofsoftwaremodelingthroughclassdiagramsalongtermcomparativeanalysis |