Pub Date : 2023-04-24DOI: 10.5753/cibse.2023.24700
G. N. Ferrari, Thais S. Nepomuceno, Claudia H. Santana, C. Luz, G. C. L. Leal, A. Amaral, Renato Balancieri, E. Oliveirajr
Aspects of software quality (SQ), such as process and product metrics, and assessment techniques, can be taught to computing students during their undergraduate courses, however, there is no consensus on how. In Brazil, computing courses are structured as the Brazilian Computer Society suggests, still, researchers point out that there are few SQ subjects in these courses. This paper aims to analyze the perception of SQ concepts by advanced undergraduate students in the northwest of the Paraná state. We applied a survey and received ninety-nine answers. Our results show that most SQ concepts are taught, but the students feel they did not learn and are not able to apply them. We discuss and suggest guidelines to improve the understanding of SQ concepts.
{"title":"Advanced Undergraduate Computing Students' Perception of Software Quality Teaching: a Survey in the Brazilian Paraná State","authors":"G. N. Ferrari, Thais S. Nepomuceno, Claudia H. Santana, C. Luz, G. C. L. Leal, A. Amaral, Renato Balancieri, E. Oliveirajr","doi":"10.5753/cibse.2023.24700","DOIUrl":"https://doi.org/10.5753/cibse.2023.24700","url":null,"abstract":"Aspects of software quality (SQ), such as process and product metrics, and assessment techniques, can be taught to computing students during their undergraduate courses, however, there is no consensus on how. In Brazil, computing courses are structured as the Brazilian Computer Society suggests, still, researchers point out that there are few SQ subjects in these courses. This paper aims to analyze the perception of SQ concepts by advanced undergraduate students in the northwest of the Paraná state. We applied a survey and received ninety-nine answers. Our results show that most SQ concepts are taught, but the students feel they did not learn and are not able to apply them. We discuss and suggest guidelines to improve the understanding of SQ concepts.","PeriodicalId":146286,"journal":{"name":"Conferencia Iberoamericana de Software Engineering","volume":"10 4 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-04-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134283373","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2023-04-24DOI: 10.5753/cibse.2023.24694
J. A. D. Pace, Santiago A. Vidal, Antonela Tommasel, Sebastian Frank, A. Hoorn
When designing a software architecture to fulfill quality-attribute requirements, architects normally explore and assess alternative solutions leading to different quality-attribute tradeoffs. In this context, we developed the SQuAT framework to support automated multi-objective optimization in large design spaces. SQuAT provides a modular, multi-agent architecture in which each agent represents and optimizes a particular quality attribute. However, this search strategy has problems identifying tradeoffs that satisfy all the parties (or architects’ concerns), particularly when searching for many candidate solutions and evaluating them becomes computationally costly. This is actually a general challenge for architecture optimization tools. To deal with it, SQuAT features an agent negotiation protocol that seeks consensus based on the utility of solutions as judged by each agent. In this paper, we present a parameterized heuristic that enhances the integration between search and negotiation in SQuAT, and also report on an empirical evaluation with two case studies. The results show initial evidence that using negotiation is more effective than doing a pure search to identify solutions having a balanced utility across agents, and thus, offer alternative quality-attribute tradeoffs to the architect.
{"title":"Can Multi-Agent Consensus Improve Quality Tradeoffs in Software Architecture Optimization?","authors":"J. A. D. Pace, Santiago A. Vidal, Antonela Tommasel, Sebastian Frank, A. Hoorn","doi":"10.5753/cibse.2023.24694","DOIUrl":"https://doi.org/10.5753/cibse.2023.24694","url":null,"abstract":"When designing a software architecture to fulfill quality-attribute requirements, architects normally explore and assess alternative solutions leading to different quality-attribute tradeoffs. In this context, we developed the SQuAT framework to support automated multi-objective optimization in large design spaces. SQuAT provides a modular, multi-agent architecture in which each agent represents and optimizes a particular quality attribute. However, this search strategy has problems identifying tradeoffs that satisfy all the parties (or architects’ concerns), particularly when searching for many candidate solutions and evaluating them becomes computationally costly. This is actually a general challenge for architecture optimization tools. To deal with it, SQuAT features an agent negotiation protocol that seeks consensus based on the utility of solutions as judged by each agent. In this paper, we present a parameterized heuristic that enhances the integration between search and negotiation in SQuAT, and also report on an empirical evaluation with two case studies. The results show initial evidence that using negotiation is more effective than doing a pure search to identify solutions having a balanced utility across agents, and thus, offer alternative quality-attribute tradeoffs to the architect.","PeriodicalId":146286,"journal":{"name":"Conferencia Iberoamericana de Software Engineering","volume":"563 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-04-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"134291285","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2023-04-24DOI: 10.5753/cibse.2023.24698
Nicolás Paez, Carlos Fontela
DevOps has reached the mainstream, in part, because it proposed a way to solve the last mile of the software delivery process. It brought to the industry concrete solutions to some concerns that software engineering and academia have traditionally ignored. The popularity and success of DevOps got the attention of the academia and some universities have started to include DevOps related content in their programs. After doing our own experience, we found out that introducing DevOps is not as simple as adding a new course. In fact, it requires a major redesign of the Software Engineering curriculum. In this article we share some key ideas and recommendations to include DevOps in Software Engineering programs.
{"title":"Software Engineering Education in the DevOps Era: Experiences and Recommendations","authors":"Nicolás Paez, Carlos Fontela","doi":"10.5753/cibse.2023.24698","DOIUrl":"https://doi.org/10.5753/cibse.2023.24698","url":null,"abstract":"DevOps has reached the mainstream, in part, because it proposed a way to solve the last mile of the software delivery process. It brought to the industry concrete solutions to some concerns that software engineering and academia have traditionally ignored. The popularity and success of DevOps got the attention of the academia and some universities have started to include DevOps related content in their programs. After doing our own experience, we found out that introducing DevOps is not as simple as adding a new course. In fact, it requires a major redesign of the Software Engineering curriculum. In this article we share some key ideas and recommendations to include DevOps in Software Engineering programs.","PeriodicalId":146286,"journal":{"name":"Conferencia Iberoamericana de Software Engineering","volume":"17 6 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-04-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"131803851","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2023-04-24DOI: 10.5753/cibse.2023.24690
M. Jørgensen
A proper interpretation of survey results on the importance of software development productivity factors requires an understanding of what the responses reflect. To find out more about this, we conducted a survey with 79 experienced software professionals. The strongest connection found was between the high perceived importance of a productivity factor and how frequently the respondents had experienced that a low performance on that factor had caused productivity problems. We argue that it is challenging to interpret survey-based results on the importance of productivity factors. Instead of conducting more surveys on the importance of such factors, we recommend asking directly about previous experiences related to productivity factors and including contextual information that enables proper interpretation of the responses.
{"title":"What can we learn from surveys on the importance of software development productivity factors?","authors":"M. Jørgensen","doi":"10.5753/cibse.2023.24690","DOIUrl":"https://doi.org/10.5753/cibse.2023.24690","url":null,"abstract":"A proper interpretation of survey results on the importance of software development productivity factors requires an understanding of what the responses reflect. To find out more about this, we conducted a survey with 79 experienced software professionals. The strongest connection found was between the high perceived importance of a productivity factor and how frequently the respondents had experienced that a low performance on that factor had caused productivity problems. We argue that it is challenging to interpret survey-based results on the importance of productivity factors. Instead of conducting more surveys on the importance of such factors, we recommend asking directly about previous experiences related to productivity factors and including contextual information that enables proper interpretation of the responses.","PeriodicalId":146286,"journal":{"name":"Conferencia Iberoamericana de Software Engineering","volume":"29 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2023-04-24","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127251150","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2022-06-13DOI: 10.5753/cibse.2022.20975
Juliana Oliveira dos Santos, Guilherme Augusto dos Reis Martins, É. Souza, K. Felizardo, G. V. Meinerz
The software development companies conduct activities that generate a considerable amount of knowledge. Knowledge Management (KM) allows working with the generated knowledge helping in organizational learning. However, professionals in software companies still face several challenges to articulate and leverage knowledge in the organization. We aim at providing evidence about how KM has been adopted in practical environments of software development. We designed a survey instrument that was distributed to Brazilian software development professionals. The survey results improved the current understanding of KM and how it manifests itself in practical software development environments.
{"title":"Perceptions of knowledge management in Brazilian software development companies","authors":"Juliana Oliveira dos Santos, Guilherme Augusto dos Reis Martins, É. Souza, K. Felizardo, G. V. Meinerz","doi":"10.5753/cibse.2022.20975","DOIUrl":"https://doi.org/10.5753/cibse.2022.20975","url":null,"abstract":"The software development companies conduct activities that generate a considerable amount of knowledge. Knowledge Management (KM) allows working with the generated knowledge helping in organizational learning. However, professionals in software companies still face several challenges to articulate and leverage knowledge in the organization. We aim at providing evidence about how KM has been adopted in practical environments of software development. We designed a survey instrument that was distributed to Brazilian software development professionals. The survey results improved the current understanding of KM and how it manifests itself in practical software development environments.","PeriodicalId":146286,"journal":{"name":"Conferencia Iberoamericana de Software Engineering","volume":"65 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-06-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130264239","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2022-06-13DOI: 10.48550/arXiv.2207.05539
Railana Santana, L. Martins, T'assio Virg'inio, L. Soares, Heitor A. X. Costa, Ivan Machado
Test smells can reduce the developers' ability to interact with the test code. Refactoring test code offers a safe strategy to handle test smells. However, the manual refactoring activity is not a trivial process, and it is often tedious and error-prone. This study aims to evaluate RAIDE, a tool for automatic identification and refactoring of test smells. We present an empirical assessment of RAIDE, in which we analyzed its capability at refactoring Assertion Roulette and Duplicate Assert test smells and compared the results against both manual refactoring and a state-of-the-art approach. The results show that RAIDE provides a faster and more intuitive approach for handling test smells than using an automated tool for smells detection combined with manual refactoring.
{"title":"Refactoring Assertion Roulette and Duplicate Assert test smells: a controlled experiment","authors":"Railana Santana, L. Martins, T'assio Virg'inio, L. Soares, Heitor A. X. Costa, Ivan Machado","doi":"10.48550/arXiv.2207.05539","DOIUrl":"https://doi.org/10.48550/arXiv.2207.05539","url":null,"abstract":"Test smells can reduce the developers' ability to interact with the test code. Refactoring test code offers a safe strategy to handle test smells. However, the manual refactoring activity is not a trivial process, and it is often tedious and error-prone. This study aims to evaluate RAIDE, a tool for automatic identification and refactoring of test smells. We present an empirical assessment of RAIDE, in which we analyzed its capability at refactoring Assertion Roulette and Duplicate Assert test smells and compared the results against both manual refactoring and a state-of-the-art approach. The results show that RAIDE provides a faster and more intuitive approach for handling test smells than using an automated tool for smells detection combined with manual refactoring.","PeriodicalId":146286,"journal":{"name":"Conferencia Iberoamericana de Software Engineering","volume":"25 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-06-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127902862","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2022-06-13DOI: 10.5753/cibse.2022.20985
Jorge Moran
El uso de dispositivos físicos como herramientas de aprendizaje presenta diversos desafíos. Una de las dificultades más grandes a las que se enfrentan los alumnos es la construcción de un modelo mental que permita entender la ejecución de los programas y su relación con el código fuente. El uso de lenguajes visuales no alcanza a resolver este problema y, adicionalmente, puede complicar la eventual transición a lenguajes basados en texto. En este artículo se presenta un entorno de desarrollo integrado para robótica educativa que ofrece una experiencia de programación interactiva basada en un lenguaje híbrido bloques/código.
{"title":"Diseño e implementación de un entorno de desarrollo integrado para robótica educativa soportado por una máquina virtual para plataformas de computación física","authors":"Jorge Moran","doi":"10.5753/cibse.2022.20985","DOIUrl":"https://doi.org/10.5753/cibse.2022.20985","url":null,"abstract":"El uso de dispositivos físicos como herramientas de aprendizaje presenta diversos desafíos. Una de las dificultades más grandes a las que se enfrentan los alumnos es la construcción de un modelo mental que permita entender la ejecución de los programas y su relación con el código fuente. El uso de lenguajes visuales no alcanza a resolver este problema y, adicionalmente, puede complicar la eventual transición a lenguajes basados en texto. En este artículo se presenta un entorno de desarrollo integrado para robótica educativa que ofrece una experiencia de programación interactiva basada en un lenguaje híbrido bloques/código.","PeriodicalId":146286,"journal":{"name":"Conferencia Iberoamericana de Software Engineering","volume":"6 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-06-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114244955","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2022-06-13DOI: 10.5753/cibse.2022.20970
Marcela Quispe-Cruz, Nelly Condori-Fernández
This research aims at providing a guiding support for the selection of relevant features and quality requirements for designing persuasive software systems. To do this, a mapping between the Persuasive System Design (PSD) model and a generic Sustainability-Quality (SQ) model was carried out. As a result of this mapping, we extended the SQ model, by adding certain types of relationships with specific features of the PSD model. A Graph database tool, named Neo4j, was used for facilitating the visualization of the identified relationships. And we also used the query language Cypher in order to retrieve data from the graph. Finally, we used an existing persuasive software system for illustrating the usefulness of the extended SQ model represented as graphs.
{"title":"Extending the Sustainability-Quality Model for supporting the design of Persuasive Software Systems","authors":"Marcela Quispe-Cruz, Nelly Condori-Fernández","doi":"10.5753/cibse.2022.20970","DOIUrl":"https://doi.org/10.5753/cibse.2022.20970","url":null,"abstract":"This research aims at providing a guiding support for the selection of relevant features and quality requirements for designing persuasive software systems. To do this, a mapping between the Persuasive System Design (PSD) model and a generic Sustainability-Quality (SQ) model was carried out. As a result of this mapping, we extended the SQ model, by adding certain types of relationships with specific features of the PSD model. A Graph database tool, named Neo4j, was used for facilitating the visualization of the identified relationships. And we also used the query language Cypher in order to retrieve data from the graph. Finally, we used an existing persuasive software system for illustrating the usefulness of the extended SQ model represented as graphs.","PeriodicalId":146286,"journal":{"name":"Conferencia Iberoamericana de Software Engineering","volume":"75 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-06-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125446640","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2022-06-13DOI: 10.5753/cibse.2022.20961
Diego de Morais, J. Almeira, F. Siqueira
This paper investigates the state of the practice of ASD estimation based on User Stories. We conducted a survey with 85 Brazilian professionals experienced in ASD estimating. The survey analyzes what is used in the estimation (User Story, task, or both), its differences, how the estimate is made (especially if there is any segmentation), and the average precision of the effort estimates. The main findings are: 1) Planning Poker is the most used technique and points with a Fibonacci scale as a metric; 2) User Stories are broken down into tasks in the vast majority of teams; 3) Teams that estimate both: User Stories and tasks/subtasks showed greater accuracy compared to the others; 4)At least ¼ of the teams make estimates for the team segmenting by some criteria.
{"title":"A Survey on the Differences of Using User Story and Tasks in the ASD Effort Estimation in Brazil","authors":"Diego de Morais, J. Almeira, F. Siqueira","doi":"10.5753/cibse.2022.20961","DOIUrl":"https://doi.org/10.5753/cibse.2022.20961","url":null,"abstract":"This paper investigates the state of the practice of ASD estimation based on User Stories. We conducted a survey with 85 Brazilian professionals experienced in ASD estimating. The survey analyzes what is used in the estimation (User Story, task, or both), its differences, how the estimate is made (especially if there is any segmentation), and the average precision of the effort estimates. The main findings are: 1) Planning Poker is the most used technique and points with a Fibonacci scale as a metric; 2) User Stories are broken down into tasks in the vast majority of teams; 3) Teams that estimate both: User Stories and tasks/subtasks showed greater accuracy compared to the others; 4)At least ¼ of the teams make estimates for the team segmenting by some criteria.","PeriodicalId":146286,"journal":{"name":"Conferencia Iberoamericana de Software Engineering","volume":"28 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-06-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115943598","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
Pub Date : 2022-06-13DOI: 10.5753/cibse.2022.20983
Luis Florez
Although Blockchain has grown in importance, great barriers still remain, including high failure rates, governance concerns and issues with quality attributes. These barriers have complex interactions and many trade-offs which suggests the need for design tools such as reference governance models and reference architectures. However, these tools are scarce and research in this area, especially governance, is sparse. The object of this research is thus to propose and then validate a new reference governance model and reference architecture to better design systems with desired attributes. The research will be conducted using the design science methodology and validated through case studies.
{"title":"Blockchain Governance using Reference Architectures","authors":"Luis Florez","doi":"10.5753/cibse.2022.20983","DOIUrl":"https://doi.org/10.5753/cibse.2022.20983","url":null,"abstract":"Although Blockchain has grown in importance, great barriers still remain, including high failure rates, governance concerns and issues with quality attributes. These barriers have complex interactions and many trade-offs which suggests the need for design tools such as reference governance models and reference architectures. However, these tools are scarce and research in this area, especially governance, is sparse. The object of this research is thus to propose and then validate a new reference governance model and reference architecture to better design systems with desired attributes. The research will be conducted using the design science methodology and validated through case studies.","PeriodicalId":146286,"journal":{"name":"Conferencia Iberoamericana de Software Engineering","volume":"36 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2022-06-13","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116653048","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}