VLDB 2026 Research / reviewers in the wild / expert
André L. M. Santos
dblp:s/AndreSantos · also Andre Luís de Medeiros Santos
· DBLP profile ↗
22ranked-venue papers
1as first author
3since 2021 · last 2023
0000-0001-6661-5970ORCID · verified
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 16 · 1 first-author · 2 since 2021Applied, interdisciplinary, general and emerging computing · 3 · 1 since 2021Human-computer interaction and ubiquitous computing · 2Artificial intelligence and machine learning · 1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2023 | Manual Tests Do Smell! Cataloging and Identifying Natural Language Test SmellsabstractBackground: Test smells indicate potential problems in the design and implementation of automated software tests that may negatively impact test code maintainability, coverage, and reliability. When poorly described, manual tests written in natural language may suffer from related problems, which enable their analysis from the point of view of test smells. Despite the possible prejudice to manually tested software products, little is known about test smells in manual tests, which results in many open questions regarding their types, frequency, and harm to tests written in natural language. Aims: Therefore, this study aims to contribute to a catalog of test smells for manual tests. Method: We perform a two-fold empirical strategy. First, an exploratory study in manual tests of three systems: the Ubuntu Operational System, the Brazilian Electronic Voting Machine, and the User Interface of a large smartphone manufacturer. We use our findings to propose a catalog of eight test smells and identification rules based on syntactical and morphological text analysis, validating our catalog with 24 in-company test engineers. Second, using our proposals, we create a tool based on Natural Language Processing (NLP) to analyze the subject systems' tests, validating the results. Results: We observed the occurrence of eight test smells. A survey of 24 in-company test professionals showed that 80.7% agreed with our catalog definitions and examples. Our NLP-based tool achieved a precision of 92%, recall of 95%, and f-measure of 93.5%, and its execution evidenced 13,169 occurrences of our cataloged test smells in the analyzed systems. Conclusion: We contribute with a catalog of natural language test smells and novel detection strategies that better explore the capabilities of current NLP mechanisms with promising results and reduced effort to analyze tests written in different idioms. Elvys Soares, Manoel Aranda III, Naelson Oliveira, Márcio Ribeiro 0001, Rohit Gheyi, Emerson Souza, Ivan do Carmo Machado, André L. M. Santos, Baldoino Fonseca dos Santos Neto, Rodrigo Bonifácio |
ESEM | 8 |
| 2023 | Behaviour recommendations with a deep learning model and genetic algorithm for health debt characterisationabstractHuman behaviour is a dense longitudinal multi-featured measure that directly impacts the health of individuals in the short and long terms. Therefore, issues usually emerge from the insistence on performing risky behaviours, such as smoking or eating fast foods, which continuously increase the gap between current and beneficial health states. This paper introduces the term "health debt" as an economic metaphor to represent the quantification of this gap in domains such as sleep, contributing to physical and mental health states. Then, we present a theoretical framework that relies on behaviour change recommendations to quantify this debt. The practical instantiation of this framework relies on passively assessed sleep related data via personal wearable devices, and uses of an attention-based predictive model as the fitness function of a genetic algorithm that acts as a recommender. We evaluate this proposal by means of a case example aimed at improving the sleep duration of individuals. Results show, for example, that the use of individual rather than generic datasets produces more accurate models. At the same time, the use of constraints on the variability of behaviours features generates more feasible recommendations. These foundations open new research opportunities to support the adoption of preventive medicine based on longitudinal wearable passive data analysis. Clauirton Siebra, Lais Amorim, Jonysberg P. Quintino, André L. M. Santos, Fabio Q. B. da Silva, Katarzyna Wac |
J. Biomed. Informatics | 4 |
| 2023 | Refactoring Test Smells With JUnit 5: Why Should Developers Keep Up-to-Date?abstractTest smells are symptoms in the test code that indicate possible design or implementation problems. Previous research demonstrated their harmfulness and the developers’ acknowledgment of test smells’ effects, prevention, and refactoring strategies. Test automation frameworks are constantly evolving, and the JUnit, one of the most used ones for Java projects, has its version 5 available since late 2017. However, we do not know the extent to which developers use the newly introduced features and whether such features indeed help refactor existing test code to remove test smells. This article conducts a mixed-method study investigation to minimize these knowledge gaps. Our study consists of three parts. First, we evaluate the usage of this framework and its features by analyzing the source code of 485 popular Java open-source projects on GitHub that use JUnit. We found that 15.9% of these projects use the JUnit 5 library. We also found that, from 17 new features detected in use, only 3 (i.e., 17.6%) are responsible for more than 70% of usages, limiting optimized propositions to test code creation and maintenance. Second, after identifying features in the JUnit 5 framework that could be considered to test smells removal and prevention, we use these features to propose novel refactorings. In particular, we present refactorings based on 7 introduced JUnit 5 features that help to remove 13 test smells, such as Assertion Roulette, Test Code Duplication, and Conditional Test Logic. Third, to evaluate our refactorings with the opinions of experienced developers, we (i) survey 212 developers for their preferences and comments about our refactorings, corroborating the benefits of our proposals and raising community feedback on JUnit 5 features, and (ii) we refactor actual test code from popular GitHub Java projects and submit 38 Pull Requests, reaching a 94% acceptance rate among respondents. As implications of our study, we alert the software testing community (i.e., practitioners and researchers) to the need to study the JUnit 5 features to effectively remove and prevent test smells. To better assist this process, we give directions on how test smells can be refactored using such features. Elvys Soares, Márcio Ribeiro 0001, Rohit Gheyi, Guilherme Amaral, André L. M. Santos |
IEEE Trans. Software Eng. | 5 |
| 2018 | Developing a Corporate Chatbot for a Customer Engagement Program: A Roadmap
Maria Fernanda Castro, Patrícia C. A. R. Tedesco, Havana Alves, Jonysberg P. Quintino, Juliana Steffen, Frederico Oliveira, Rafael Soares, André L. M. Santos, Fabio Q. B. da Silva |
ICIC (1) | 8 |
| 2018 | From Theory to Practice: The Challenges of a DevOps Infrastructure as Code Implementation
Clauirton Siebra, Rosberg Lacerda, Italo Cerqueira, Jonysberg P. Quintino, Fabiana Florentin, Fabio Q. B. da Silva, André L. M. Santos |
ICSOFT | 7 |
| 2017 | Avoiding useless mutantsabstractMutation testing is a program-transformation technique that injects artificial bugs to check whether the existing test suite can detect them. However, the costs of using mutation testing are usually high, hindering its use in industry. Useless mutants (equivalent and duplicated) contribute to increase costs. Previous research has focused mainly on detecting useless mutants only after they are generated and compiled. In this paper, we introduce a strategy to help developers with deriving rules to avoid the generation of useless mutants. To use our strategy, we pass as input a set of programs. For each program, we also need a passing test suite and a set of mutants. As output, our strategy yields a set of useless mutants candidates. After manually confirming that the mutants classified by our strategy as "useless" are indeed useless, we derive rules that can avoid their generation and thus decrease costs. To the best of our knowledge, we introduce 37 new rules that can avoid useless mutants right before their generation. We then implement a subset of these rules in the MUJAVA mutation testing tool. Since our rules have been derived based on artificial and small Java programs, we take our MUJAVA version embedded with our rules and execute it in industrial-scale projects. Our rules reduced the number of mutants by almost 13% on average. Our results are promising because (i) we avoid useless mutants generation; (ii) our strategy can help with identifying more rules in case we set it to use more complex Java programs; and (iii) our MUJAVA version has only a subset of the rules we derived. Leonardo Fernandes, Márcio Ribeiro 0001, Rohit Gheyi, Melina Mongiovi, André L. M. Santos, Ana Cavalcanti 0001, Fabiano Cutigi Ferrari, José Carlos Maldonado |
GPCE | 6 |
| 2016 | Theoretical conceptualization of TD: A practical perspective
Clauirton Siebra, Rebeka G. Oliveira, Carolyn B. Seaman, Fabio Q. B. da Silva, André L. M. Santos |
J. Syst. Softw. | 5 |
| 2015 | Usability for Accessibility: A Consolidation of Requirements for Mobile ApplicationsabstractDifferently of the Web Accessibility Guidelines, which are already consolidated as a reference, the initiatives to develop guidelines for accessible mobile applications are recent and several approaches present only suggestions rather than a concrete list of functional requirements. This work analyzed 247 scientific articles to identify requirements that are being considered to different types of impairments. The collected information was consolidated and classified according to groups of impairments. As result, this paper presents the main points of a checklist proposal for functional requirements, which should be considered by mobile applications to ensure accessibility with usability. Clauirton Siebra, Tatiana B. Gouveia, Jose Anderson S. N. Filho, Walter Correia, Marcelo Penha, Marcelo Anjos, Fabiana Florentin, Fabio Q. B. da Silva, André L. M. Santos |
ASSETS | 9 |
| 2015 | Usability requirements for mobile accessibility: a study on the vision impairmentabstractWhen multimedia applications intend to support accessibility, aspects of usability must be reviewed to adapt or extend common functional requirements that are implemented to ensure an easy use of applications. Furthermore, these requirements must be identified and analyzed in a contextualized way, since different types of impairments require different types of requirements. This work analyzed 247 scientific and technological articles to identify requirements that are being considered to different types of impairments. The collected information was consolidated and classified according to groups of impairments. As result, this paper brings a checklist proposal focused on requirements for vision impaired users that should be considered by mobile multimedia applications to ensure accessibility with usability. Clauirton Siebra, Tatiana B. Gouveia, Jefté de Assumpção Macêdo, Walter Correia, Marcelo Penha, Fabio Q. B. da Silva, André L. M. Santos, Marcelo Anjos, Fabiana Florentin |
MUM | 7 |
| 2013 | The Adventure of Developing a Software Application on a Pre-release Platform: Features and Learned LessonsabstractFrom September 2011 to May 2012, Microsoft delivered three pre-releases of Windows 8. Its principal goal was to present the features of this operating system (OS) and motivate the development of new applications to this platform. However, as any pre-release version, several parts of the code and related documentations were incomplete. Furthermore, its APIs were very prone to be changed until the final release. Even considering such risks, the company X decided to face these challenges and create an application to be embedded into Windows 8 tablets as soon as this OS was released. This paper discusses interesting aspects of this adventure and some lessons that may be important to development teams that intend to trail this kind of project. Metrics are also used to better characterize some of these aspects. Clauirton Siebra, Angélica A. Mascaro, Fabio Q. B. da Silva, André L. M. Santos |
ICSM | 4 |
| 2013 | Special section on the Brazilian Symposium on Programming Languages
André L. M. Santos, João Saraiva |
Sci. Comput. Program. | 1 |
| 2012 | Managing technical debt in practice: an industrial reportabstractThe Technical Debt (TD) metaphor has been used as a way to manage and communicate long-term consequences that some decisions may cause. However the state of the art in TD has not culminated yet in rigorous analysis models for large-scale projects. This work analyses an industrial project, from the perspective of its decisions and related events, so that we can better characterize the existence of TD and show the evolution of its parameters. The project in study had a life cycle of six years (2005-2011) and its data for analysis was collected from emails, documents, CVS logs, code files and interviews with developers and project managers. From this analysis, we identified the factors that had influence on the project decisions and their impact on the system along the time. Furthermore, we were able to extract a set of lessons associated with the characterization of TD in projects of this port. Clauirton Siebra, Graziela Tonin, Fabio Q. B. da Silva, Rebeka G. Oliveira, Antonio L. O. C. Junior, Regina C. G. Miranda, André L. M. Santos |
ESEM | 7 |
| 2012 | The software perspective for energy-efficient mobile applications developmentabstractNowadays, there is a growing concern about the energy consumption of the ICT industry. This fact has given rise to a lot of energy saving research activities, which mainly focus on the hardware side of computational systems. However, it is tempting to suppose that only hardware dissipates power, not software. This paper discusses several software methods, which could be explored to develop energy-efficient mobile techniques. We argue that the development of applications that consider the energy saving, as one of their requirements, can result in a significant final energy saving because solutions will be part of the own software and they do not depend of external resources to obtain a lower consumption. Clauirton Siebra, Paulo Costa 0002, Regina C. G. Miranda, Fabio Q. B. da Silva, André L. M. Santos |
MoMM | 5 |
| 2012 | ESEML: empirical software engineering modeling languageabstractNew processes, patterns, structures, tools, languages, and practices are being proposed for software development, but technology transfer is hard to achieve. One of the objectives of empirical studies is easing technology transfer from academy to industry. On the other hand, there are a number of issues that hinder the application of empirical studies, more specifically, controlled experiments. This paper defines a visual DSL for modeling controlled experiments supporting researchers that are not experts in such study. By using the language, the researcher is guided to define the elements of an experimental plan and connections, which is automatically generated, resulting a complete document of experimental plan. The proposed environment assists the definition of controlled experiments, increasing empirical evaluation of the proposed technologies. More specifically, the current version of our proposal generates the experimental plan from the experiment model defined using the DSL. Bruno Cartaxo, Italo Costa, Dhiego Abrantes, André L. M. Santos, Sérgio Soares, Vinicius Cardoso Garcia |
DSM@SPLASH | 4 |
| 2011 | Tracking technical debt - An exploratory case studyabstractThe technical debt metaphor is increasingly being used to describe the effect of delaying certain software maintenance tasks on software projects. Practitioners understand intuitively how technical debt can turn into a serious problem if it is left unattended. However, it remains unknown how serious the problem is and whether explicit measurement and management of technical debt is useful. In this paper, we explore the effect of technical debt by tracking a single delayed maintenance task in a real software project throughout its lifecycle and simulate how explicit technical debt management might have changed project outcomes. The results from this study demonstrate how and to what extent technical debt affects software projects. The study also sheds light on the research methodologies that can be used to investigate the technical debt management problem. Yuepu Guo, Carolyn B. Seaman, Rebeka Gomes, Antonio L. O. Cavalcanti, Graziela Tonin, Fabio Q. B. da Silva, André L. M. Santos, Clauirton Siebra |
ICSM | 7 |
| 2011 | Towards a green mobile development and certificationabstractRecent advances in computing and communication technology have led to increased use of mobile devices. A trend in this area is the integration of different applications in a single general-purpose device, often resulting in much higher energy consumption and consequently much reduced battery life. This higher consumption brings up problems for the mobile evolution, once developers cannot use all the potential of the current technology. Furthermore, a higher consumption is also against the current trend of green computing, which tries to create more energy saving and eco-friendly computational systems. This paper discusses our efforts in creating techniques to optimize the energy consumption of mobiles and also creating a certification program that can verify if a mobile could be considered “green”. Results and details about our literature review, laboratory setup, experiments, list of good practices and others are given along this paper. Clauirton Siebra, Paulo Costa 0002, Rafael Marques, André L. M. Santos, Fabio Q. B. da Silva |
WiMob | 4 |
| 2011 | Six years of systematic literature reviews in software engineering: An updated tertiary study
Fabio Q. B. da Silva, André L. M. Santos, Sérgio Soares, A. César C. França, Cleviton V. F. Monteiro, Felipe Farias Maciel |
Inf. Softw. Technol. | 2 |
| 2010 | A critical appraisal of systematic reviews in software engineering from the perspective of the research questions asked in the reviewsabstractAfter a seminal article introducing-evidence based software engineering in 2004, systematic reviews (SR) have been increasingly used as a method for conducting secondary studies in software engineering. Our goal is to critically appraise the use of SR in software engineering with respect to the research questions asked and the ways the questions were used in the reviews. We analyzed 53 literature reviews that had been collected in two published tertiary studies. We found that over 65% of the research questions asked in the reviews were exploratory and only 15% investigated causality questions. We concluded that there is a need for a consistent use of terminology to classify secondary studies and that reports of literature reviews should follow reporting guidelines to support assessment and comparison. Fabio Q. B. da Silva, André L. M. Santos, Sérgio Soares, A. César C. França, Cleviton V. F. Monteiro |
ESEM | 2 |
| 2010 | Streamlining Domain Analysis for Digital Games Product Lines
André Wilson Brotto Furtado, André L. M. Santos, Geber L. Ramalho |
SPLC | 2 |
| 2008 | Improving the handsets network test process via DMAIC conceptsabstractThe wireless network evolution has allowed that the handset technology provides a broad and new set of resources and facilities to their users. However, this evolution is also increasing the number and complexity of testing prior to handsets deployment, so that there is a need to apply methodologies to ensure the quality of the test process while it evolves. This paper relates how the DMAIC framework could be used as an option to ensure and improve the quality of handsets network test processes. DMAIC is a six sigma framework based on measures and statistical analysis, which has commonly been applied during several stages of software development. Our focus, in this paper, is on the definition of the DMAIC phases and how this framework could be useful to stress problems and lead the effort of tests corrections and improvements. Clauirton Siebra, Paulo Costa 0002, André L. M. Santos, Fabio Q. B. da Silva |
ICSE | 3 |
| 1998 | A Transformation-Based Optimiser for Haskell
Simon L. Peyton Jones, André L. M. Santos |
Sci. Comput. Program. | 2 |
| 1996 | Let-floating: Moving Bindings to Give Faster ProgramsabstractVirtually every compiler performs transformations on the program it is compiling in an attempt to improve efficiency. Despite their importance, however, there have been few systematic attempts to categorise such transformations and measure their impact.In this paper we describe a particular group of transformations --- the "let-floating" transformations --- and give detailed measurements of their effect in an optimizing compiler for the non-strict functional language Haskell. Let-floating has not received much explicit attention in the past, but our measurements show that it is an important group of transformations (at least for lazy languages), offering a reduction of more than 30% in heap allocation and 15% in execution time. Simon L. Peyton Jones, Will Partain, André L. M. Santos |
ICFP | 3 |