-
ToffA-DSPL: an approach of trade-off analysis for designing dynamic software product lines
Authors:
Michelle Larissa Luciano Carvalho,
Paulo Cesar Masiero,
Ismayle de Sousa Santos,
Eduardo Santana de Almeida
Abstract:
Software engineers have adopted the Dynamic Software Product Lines (DSPL) engineering practices to develop Dynamically Adaptable Software (DAS). DAS is seen as a DSPL application and must cope with a large number of configurations of features, Non-functional Requirements (NFRs), and contexts. However, the accurate representation of the impact of features over NFRs and contexts for the identificati…
▽ More
Software engineers have adopted the Dynamic Software Product Lines (DSPL) engineering practices to develop Dynamically Adaptable Software (DAS). DAS is seen as a DSPL application and must cope with a large number of configurations of features, Non-functional Requirements (NFRs), and contexts. However, the accurate representation of the impact of features over NFRs and contexts for the identification of optimal configurations is not a trivial task. Software engineers need to have domain knowledge and design DAS before deploying to satisfy those requirements. Aiming to handle them, we proposed an approach of Trade-off Analysis for DSPL at design-time, named ToffA-DSPL. It deals with the configuration selection process considering interactions between NFRs and contexts. We performed an exploratory study based on simulations to identify the usefulness of the ToffA-DSPL approach. In general, the configurations suggested by ToffA-DSPL provide high satisfaction levels of NFRs. Based on simulations, we evidenced that our approach aims to explore reuse and is useful for generating valid and optimal configurations. In addition, ToffA-DSPL enables software engineers to conduct trade-off analysis, evaluate changes in the context feature, and define an adaptation model from optimal configurations found in the analysis.
△ Less
Submitted 1 July, 2024;
originally announced July 2024.
-
ProtoAL: Interpretable Deep Active Learning with prototypes for medical imaging
Authors:
Iury B. de A. Santos,
André C. P. L. F. de Carvalho
Abstract:
The adoption of Deep Learning algorithms in the medical imaging field is a prominent area of research, with high potential for advancing AI-based Computer-aided diagnosis (AI-CAD) solutions. However, current solutions face challenges due to a lack of interpretability features and high data demands, prompting recent efforts to address these issues. In this study, we propose the ProtoAL method, wher…
▽ More
The adoption of Deep Learning algorithms in the medical imaging field is a prominent area of research, with high potential for advancing AI-based Computer-aided diagnosis (AI-CAD) solutions. However, current solutions face challenges due to a lack of interpretability features and high data demands, prompting recent efforts to address these issues. In this study, we propose the ProtoAL method, where we integrate an interpretable DL model into the Deep Active Learning (DAL) framework. This approach aims to address both challenges by focusing on the medical imaging context and utilizing an inherently interpretable model based on prototypes. We evaluated ProtoAL on the Messidor dataset, achieving an area under the precision-recall curve of 0.79 while utilizing only 76.54\% of the available labeled data. These capabilities can enhances the practical usability of a DL model in the medical field, providing a means of trust calibration in domain experts and a suitable solution for learning in the data scarcity context often found.
△ Less
Submitted 6 April, 2024;
originally announced April 2024.
-
Elevating Software Quality in Agile Environments: The Role of Testing Professionals in Unit Testing
Authors:
Lucas Neves,
Oscar Campos,
Robson Santos,
Italo Santos,
Cleyton Magalhaes,
Ronnie de Souza Santos
Abstract:
Testing is an essential quality activity in the software development process. Usually, a software system is tested on several levels, starting with unit testing that checks the smallest parts of the code until acceptance testing, which is focused on the validations with the end-user. Historically, unit testing has been the domain of developers, who are responsible for ensuring the accuracy of thei…
▽ More
Testing is an essential quality activity in the software development process. Usually, a software system is tested on several levels, starting with unit testing that checks the smallest parts of the code until acceptance testing, which is focused on the validations with the end-user. Historically, unit testing has been the domain of developers, who are responsible for ensuring the accuracy of their code. However, in agile environments, testing professionals play an integral role in various quality improvement initiatives throughout each development cycle. This paper explores the participation of test engineers in unit testing within an industrial context, employing a survey-based research methodology. Our findings demonstrate that testing professionals have the potential to strengthen unit testing by collaborating with developers to craft thorough test cases and fostering a culture of mutual learning and cooperation, ultimately contributing to increasing the overall quality of software projects.
△ Less
Submitted 19 March, 2024;
originally announced March 2024.
-
Are We Testing or Being Tested? Exploring the Practical Applications of Large Language Models in Software Testing
Authors:
Robson Santos,
Italo Santos,
Cleyton Magalhaes,
Ronnie de Souza Santos
Abstract:
A Large Language Model (LLM) represents a cutting-edge artificial intelligence model that generates coherent content, including grammatically precise sentences, human-like paragraphs, and syntactically accurate code snippets. LLMs can play a pivotal role in software development, including software testing. LLMs go beyond traditional roles such as requirement analysis and documentation and can supp…
▽ More
A Large Language Model (LLM) represents a cutting-edge artificial intelligence model that generates coherent content, including grammatically precise sentences, human-like paragraphs, and syntactically accurate code snippets. LLMs can play a pivotal role in software development, including software testing. LLMs go beyond traditional roles such as requirement analysis and documentation and can support test case generation, making them valuable tools that significantly enhance testing practices within the field. Hence, we explore the practical application of LLMs in software testing within an industrial setting, focusing on their current use by professional testers. In this context, rather than relying on existing data, we conducted a cross-sectional survey and collected data within real working contexts, specifically, engaging with practitioners in industrial settings. We applied quantitative and qualitative techniques to analyze and synthesize our collected data. Our findings demonstrate that LLMs effectively enhance testing documents and significantly assist testing professionals in programming tasks like debugging and test case automation. LLMs can support individuals engaged in manual testing who need to code. However, it is crucial to emphasize that, at this early stage, software testing professionals should use LLMs with caution while well-defined methods and guidelines are being built for the secure adoption of these tools.
△ Less
Submitted 8 December, 2023;
originally announced December 2023.
-
The Power of Attention: Bridging Cognitive Load, Multimedia Learning, and AI
Authors:
Herbert dos Santos Macedo,
Italo Thiago Felix dos Santos,
Edgard Luciano Oliveira da Silva
Abstract:
This article addresses the intersection of various educational theories and their relationship with the education of computer science students, with a focus on the importance of understanding computational thinking and its application in education. The historical context and fundamental concepts of Cognitive Load Theory, Multimedia Learning, and Constructivism are explored, highlighting their unde…
▽ More
This article addresses the intersection of various educational theories and their relationship with the education of computer science students, with a focus on the importance of understanding computational thinking and its application in education. The historical context and fundamental concepts of Cognitive Load Theory, Multimedia Learning, and Constructivism are explored, highlighting their underlying biological assumptions about human learning. It also examines how these theories can be integrated with the use of Artificial Intelligence (AI) in education, with a particular emphasis on the attention mechanisms and abstract learning present in AI models like Transformers. Lastly, the relevance of these theories and practices for computer education student training is discussed, emphasizing how the development of computational thinking can contribute to a more effective approach in teaching and learning.
△ Less
Submitted 11 November, 2023;
originally announced November 2023.
-
Tag that issue: Applying API-domain labels in issue tracking systems
Authors:
Fabio Santos,
Joseph Vargovich,
Bianca Trinkenreich,
Italo Santos,
Jacob Penney,
Ricardo Britto,
João Felipe Pimentel,
Igor Wiese,
Igor Steinmacher,
Anita Sarma,
Marco A. Gerosa
Abstract:
Labeling issues with the skills required to complete them can help contributors to choose tasks in Open Source Software projects. However, manually labeling issues is time-consuming and error-prone, and current automated approaches are mostly limited to classifying issues as bugs/non-bugs. We investigate the feasibility and relevance of automatically labeling issues with what we call "API-domains,…
▽ More
Labeling issues with the skills required to complete them can help contributors to choose tasks in Open Source Software projects. However, manually labeling issues is time-consuming and error-prone, and current automated approaches are mostly limited to classifying issues as bugs/non-bugs. We investigate the feasibility and relevance of automatically labeling issues with what we call "API-domains," which are high-level categories of APIs. Therefore, we posit that the APIs used in the source code affected by an issue can be a proxy for the type of skills (e.g., DB, security, UI) needed to work on the issue. We ran a user study (n=74) to assess API-domain labels' relevancy to potential contributors, leveraged the issues' descriptions and the project history to build prediction models, and validated the predictions with contributors (n=20) of the projects. Our results show that (i) newcomers to the project consider API-domain labels useful in choosing tasks, (ii) labels can be predicted with a precision of 84% and a recall of 78.6% on average, (iii) the results of the predictions reached up to 71.3% in precision and 52.5% in recall when training with a project and testing in another (transfer learning), and (iv) project contributors consider most of the predictions helpful in identifying needed skills. These findings suggest our approach can be applied in practice to automatically label issues, assisting developers in finding tasks that better match their skills.
△ Less
Submitted 6 April, 2023;
originally announced April 2023.
-
Designing for Cognitive Diversity: Improving the GitHub Experience for Newcomers
Authors:
Italo Santos,
João Felipe Pimentel,
Igor Wiese,
Igor Steinmacher,
Anita Sarma,
Marco A. Gerosa
Abstract:
Social coding platforms such as GitHub have become defacto environments for collaborative programming and open source. When these platforms do not support specific cognitive styles, they create barriers to programming for some populations. Research shows that the cognitive styles typically favored by women are often unsupported, creating barriers to entry for woman newcomers. In this paper, we use…
▽ More
Social coding platforms such as GitHub have become defacto environments for collaborative programming and open source. When these platforms do not support specific cognitive styles, they create barriers to programming for some populations. Research shows that the cognitive styles typically favored by women are often unsupported, creating barriers to entry for woman newcomers. In this paper, we use the GenderMag method to evaluate GitHub to find cognitive style-specific inclusivity bugs. We redesigned the "buggy" GitHub features through a web browser plugin, which we evaluated through a between-subjects experiment (n=75). Our results indicate that the changes to the interface improve users' performance and self-efficacy, mainly for individuals with cognitive styles more common to women. Our results can inspire designers of social coding platforms and software engineering tools to produce more inclusive development environments.
△ Less
Submitted 10 February, 2023; v1 submitted 25 January, 2023;
originally announced January 2023.
-
Best Practices and Scoring System on Reviewing A.I. based Medical Imaging Papers: Part 1 Classification
Authors:
Timothy L. Kline,
Felipe Kitamura,
Ian Pan,
Amine M. Korchi,
Neil Tenenholtz,
Linda Moy,
Judy Wawira Gichoya,
Igor Santos,
Steven Blumer,
Misha Ysabel Hwang,
Kim-Ann Git,
Abishek Shroff,
Elad Walach,
George Shih,
Steve Langer
Abstract:
With the recent advances in A.I. methodologies and their application to medical imaging, there has been an explosion of related research programs utilizing these techniques to produce state-of-the-art classification performance. Ultimately, these research programs culminate in submission of their work for consideration in peer reviewed journals. To date, the criteria for acceptance vs. rejection i…
▽ More
With the recent advances in A.I. methodologies and their application to medical imaging, there has been an explosion of related research programs utilizing these techniques to produce state-of-the-art classification performance. Ultimately, these research programs culminate in submission of their work for consideration in peer reviewed journals. To date, the criteria for acceptance vs. rejection is often subjective; however, reproducible science requires reproducible review. The Machine Learning Education Sub-Committee of SIIM has identified a knowledge gap and a serious need to establish guidelines for reviewing these studies. Although there have been several recent papers with this goal, this present work is written from the machine learning practitioners standpoint. In this series, the committee will address the best practices to be followed in an A.I.-based study and present the required sections in terms of examples and discussion of what should be included to make the studies cohesive, reproducible, accurate, and self-contained. This first entry in the series focuses on the task of image classification. Elements such as dataset curation, data pre-processing steps, defining an appropriate reference standard, data partitioning, model architecture and training are discussed. The sections are presented as they would be detailed in a typical manuscript, with content describing the necessary information that should be included to make sure the study is of sufficient quality to be considered for publication. The goal of this series is to provide resources to not only help improve the review process for A.I.-based medical imaging papers, but to facilitate a standard for the information that is presented within all components of the research study. We hope to provide quantitative metrics in what otherwise may be a qualitative review process.
△ Less
Submitted 3 February, 2022;
originally announced February 2022.
-
Evaluation of Convolutional Neural Networks for COVID-19 Classification on Chest X-Rays
Authors:
Felipe André Zeiser,
Cristiano André da Costa,
Gabriel de Oliveira Ramos,
Henrique Bohn,
Ismael Santos,
Rodrigo da Rosa Righi
Abstract:
Early identification of patients with COVID-19 is essential to enable adequate treatment and to reduce the burden on the health system. The gold standard for COVID-19 detection is the use of RT-PCR tests. However, due to the high demand for tests, these can take days or even weeks in some regions of Brazil. Thus, an alternative for detecting COVID-19 is the analysis of Digital Chest X-rays (XR). C…
▽ More
Early identification of patients with COVID-19 is essential to enable adequate treatment and to reduce the burden on the health system. The gold standard for COVID-19 detection is the use of RT-PCR tests. However, due to the high demand for tests, these can take days or even weeks in some regions of Brazil. Thus, an alternative for detecting COVID-19 is the analysis of Digital Chest X-rays (XR). Changes due to COVID-19 can be detected in XR, even in asymptomatic patients. In this context, models based on deep learning have great potential to be used as support systems for diagnosis or as screening tools. In this paper, we propose the evaluation of convolutional neural networks to identify pneumonia due to COVID-19 in XR. The proposed methodology consists of a preprocessing step of the XR, data augmentation, and classification by the convolutional architectures DenseNet121, InceptionResNetV2, InceptionV3, MovileNetV2, ResNet50, and VGG16 pre-trained with the ImageNet dataset. The obtained results demonstrate that the VGG16 architecture obtained superior performance in the classification of XR for the evaluation metrics using the methodology proposed in this article. The obtained results for our methodology demonstrate that the VGG16 architecture presented a superior performance in the classification of XR, with an Accuracy of 85.11%, Sensitivity of 85.25%, Specificity of $85.16%, F1-score of $85.03%, and an AUC of 0.9758.
△ Less
Submitted 6 September, 2021;
originally announced September 2021.
-
Equalization with Expectation Propagation at Smoothing Level
Authors:
Irene Santos,
Juan José Murillo-Fuentes,
Eva Arias-de-Reyna
Abstract:
In this paper we propose a smoothing turbo equalizer based on the expectation propagation (EP) algorithm with quite improved performance compared to the Kalman smoother, at similar complexity. In scenarios where high-order modulations or/and large memory channels are employed, the optimal BCJR algorithm is computationally unfeasible. In this situation, low-cost but suboptimal solutions, such as th…
▽ More
In this paper we propose a smoothing turbo equalizer based on the expectation propagation (EP) algorithm with quite improved performance compared to the Kalman smoother, at similar complexity. In scenarios where high-order modulations or/and large memory channels are employed, the optimal BCJR algorithm is computationally unfeasible. In this situation, low-cost but suboptimal solutions, such as the linear minimum mean square error (LMMSE), are commonly used. Recently, EP has been proposed as a tool to improve the Kalman smoothing performance. In this paper we review these solutions to apply the EP at the smoothing level, rather than at the forward and backwards stages. Also, we better exploit the information coming from the channel decoder in the turbo equalization schemes. With these improvements we reduce the computational complexity, speed up convergence and outperform previous approaches. We included some simulation results to show the robust behavior of the proposed method regardless of the scenario, and its improvement in terms of performance in comparison with other EP-based solutions in the literature.
△ Less
Submitted 4 February, 2019; v1 submitted 4 September, 2018;
originally announced September 2018.
-
How Software Development Group Leaders Influence Team Members Behavior
Authors:
Fabio Q. B. da Silva,
Cleviton V. F. Monteiro,
Igor Ebrahim dos Santos,
Luiz Fernando Capretz
Abstract:
Evidence in the literature from several business sectors shows that exploratory and exploitative innovation strategies are complementarily important for competitiveness. Our empirical findings reinforced those evidences in the context of software development companies. The innovative behaviour of individuals is an essential ingredient to success in both types of innovations strategies and leaders…
▽ More
Evidence in the literature from several business sectors shows that exploratory and exploitative innovation strategies are complementarily important for competitiveness. Our empirical findings reinforced those evidences in the context of software development companies. The innovative behaviour of individuals is an essential ingredient to success in both types of innovations strategies and leaders can have a big influence on this behaviour. Adopting a leadership style that combines transactional and transformational practices is more likely to produce effective results in supporting innovative behaviour. In software development, project managers and other group leaders should be stimulated and supported in adopting such practices to create the conditions for innovative behaviour to thrive.
△ Less
Submitted 22 November, 2017;
originally announced November 2017.
-
Multi-wise and constrained fully weighted Davenport constants and interactions with coding theory
Authors:
Luz Elimar Marchan,
Oscar Ordaz,
Irene Santos,
Wolfgang Schmid
Abstract:
We consider two families of weighted zero-sum constants for finite abelian groups. For a finite abelian group $( G , + )$, a set of weights $W \subset \mathbb{Z}$, and an integral parameter $m$, the $m$-wise Davenport constant with weights $W$ is the smallest integer $n$ such that each sequence over $G$ of length $n$ has at least $m$ disjoint zero-subsums with weights $W$. And, for an integral par…
▽ More
We consider two families of weighted zero-sum constants for finite abelian groups. For a finite abelian group $( G , + )$, a set of weights $W \subset \mathbb{Z}$, and an integral parameter $m$, the $m$-wise Davenport constant with weights $W$ is the smallest integer $n$ such that each sequence over $G$ of length $n$ has at least $m$ disjoint zero-subsums with weights $W$. And, for an integral parameter $d$, the $d$-constrained Davenport constant with weights $W$ is the smallest $n$ such that each sequence over $G$ of length $n$ has a zero-subsum with weights $W$ of size at most $d$. First, we establish a link between these two types of constants and several basic and general results on them. Then, for elementary $p$-groups, establishing a link between our constants and the parameters of linear codes as well as the cardinality of cap sets in certain projective spaces, we obtain various explicit results on the values of these constants.
△ Less
Submitted 21 May, 2015; v1 submitted 8 July, 2014;
originally announced July 2014.