-
Evaluating LLMs Effectiveness in Detecting and Correcting Test Smells: An Empirical Study
Authors:
E. G. Santana Jr,
Jander Pereira Santos Junior,
Erlon P. Almeida,
Iftekhar Ahmed,
Paulo Anselmo da Mota Silveira Neto,
Eduardo Santana de Almeida
Abstract:
Test smells indicate poor development practices in test code, reducing maintainability and reliability. While developers often struggle to prevent or refactor these issues, existing tools focus primarily on detection rather than automated refactoring. Large Language Models (LLMs) have shown strong potential in code understanding and transformation, but their ability to both identify and refactor t…
▽ More
Test smells indicate poor development practices in test code, reducing maintainability and reliability. While developers often struggle to prevent or refactor these issues, existing tools focus primarily on detection rather than automated refactoring. Large Language Models (LLMs) have shown strong potential in code understanding and transformation, but their ability to both identify and refactor test smells remains underexplored. We evaluated GPT-4-Turbo, LLaMA 3 70B, and Gemini-1.5 Pro on Python and Java test suites, using PyNose and TsDetect for initial smell detection, followed by LLM-driven refactoring. Gemini achieved the highest detection accuracy (74.35\% Python, 80.32\% Java), while LLaMA was lowest. All models could refactor smells, but effectiveness varied, sometimes introducing new smells. Gemini also improved test coverage, unlike GPT-4 and LLaMA, which often reduced it. These results highlight LLMs' potential for automated test smell refactoring, with Gemini as the strongest performer, though challenges remain across languages and smell types.
△ Less
Submitted 9 June, 2025;
originally announced June 2025.
-
Which Prompting Technique Should I Use? An Empirical Investigation of Prompting Techniques for Software Engineering Tasks
Authors:
E. G. Santana Jr,
Gabriel Benjamin,
Melissa Araujo,
Harrison Santos,
David Freitas,
Eduardo Almeida,
Paulo Anselmo da M. S. Neto,
Jiawei Li,
Jina Chun,
Iftekhar Ahmed
Abstract:
A growing variety of prompt engineering techniques has been proposed for Large Language Models (LLMs), yet systematic evaluation of each technique on individual software engineering (SE) tasks remains underexplored. In this study, we present a systematic evaluation of 14 established prompt techniques across 10 SE tasks using four LLM models. As identified in the prior literature, the selected prom…
▽ More
A growing variety of prompt engineering techniques has been proposed for Large Language Models (LLMs), yet systematic evaluation of each technique on individual software engineering (SE) tasks remains underexplored. In this study, we present a systematic evaluation of 14 established prompt techniques across 10 SE tasks using four LLM models. As identified in the prior literature, the selected prompting techniques span six core dimensions (Zero-Shot, Few-Shot, Thought Generation, Ensembling, Self-Criticism, and Decomposition). They are evaluated on tasks such as code generation, bug fixing, and code-oriented question answering, to name a few. Our results show which prompting techniques are most effective for SE tasks requiring complex logic and intensive reasoning versus those that rely more on contextual understanding and example-driven scenarios. We also analyze correlations between the linguistic characteristics of prompts and the factors that contribute to the effectiveness of prompting techniques in enhancing performance on SE tasks. Additionally, we report the time and token consumption for each prompting technique when applied to a specific task and model, offering guidance for practitioners in selecting the optimal prompting technique for their use cases.
△ Less
Submitted 5 June, 2025;
originally announced June 2025.
-
Agentic SLMs: Hunting Down Test Smells
Authors:
Rian Melo,
Pedro Simões,
Rohit Gheyi,
Marcelo d'Amorim,
Márcio Ribeiro,
Gustavo Soares,
Eduardo Almeida,
Elvys Soares
Abstract:
Test smells can compromise the reliability of test suites and hinder software maintenance. Although several strategies exist for detecting test smells, few address their removal. Traditional methods often rely on static analysis or machine learning, requiring significant effort and expertise. This study evaluates LLAMA 3.2 3B, GEMMA 2 9B, DEEPSEEK-R1 14B, and PHI 4 14B - small, open language model…
▽ More
Test smells can compromise the reliability of test suites and hinder software maintenance. Although several strategies exist for detecting test smells, few address their removal. Traditional methods often rely on static analysis or machine learning, requiring significant effort and expertise. This study evaluates LLAMA 3.2 3B, GEMMA 2 9B, DEEPSEEK-R1 14B, and PHI 4 14B - small, open language models - for automating the detection and refactoring of test smells through agent-based workflows. We explore workflows with one, two, and four agents across 150 instances of 5 common test smell types extracted from real-world Java projects. Unlike prior approaches, ours is easily extensible to new smells via natural language definitions and generalizes to Python and Golang. All models detected nearly all test smell instances (pass@5 of 96% with four agents), with PHI 4 14B achieving the highest refactoring accuracy (pass@5 of 75.3%). Analyses were computationally inexpensive and ran efficiently on a consumer-grade hardware. Notably, PHI 4 14B with four agents performed within 5% of proprietary models such as O1-MINI, O3-MINI-HIGH, and GEMINI 2.5 PRO EXPERIMENTAL using a single agent. Multi-agent setups outperformed single-agent ones in three out of five test smell types, highlighting their potential to improve software quality with minimal developer effort. For the Assertion Roulette smell, however, a single agent performed better. To assess practical relevance, we submitted 10 pull requests with PHI 4 14B - generated code to open-source projects. Five were merged, one was rejected, and four remain under review, demonstrating the approach's real-world applicability.
△ Less
Submitted 9 April, 2025;
originally announced April 2025.
-
Prompting in the Wild: An Empirical Study of Prompt Evolution in Software Repositories
Authors:
Mahan Tafreshipour,
Aaron Imani,
Eric Huang,
Eduardo Almeida,
Thomas Zimmermann,
Iftekhar Ahmed
Abstract:
The adoption of Large Language Models (LLMs) is reshaping software development as developers integrate these LLMs into their applications. In such applications, prompts serve as the primary means of interacting with LLMs. Despite the widespread use of LLM-integrated applications, there is limited understanding of how developers manage and evolve prompts. This study presents the first empirical ana…
▽ More
The adoption of Large Language Models (LLMs) is reshaping software development as developers integrate these LLMs into their applications. In such applications, prompts serve as the primary means of interacting with LLMs. Despite the widespread use of LLM-integrated applications, there is limited understanding of how developers manage and evolve prompts. This study presents the first empirical analysis of prompt evolution in LLM-integrated software development. We analyzed 1,262 prompt changes across 243 GitHub repositories to investigate the patterns and frequencies of prompt changes, their relationship with code changes, documentation practices, and their impact on system behavior. Our findings show that developers primarily evolve prompts through additions and modifications, with most changes occurring during feature development. We identified key challenges in prompt engineering: only 21.9% of prompt changes are documented in commit messages, changes can introduce logical inconsistencies, and misalignment often occurs between prompt changes and LLM responses. These insights emphasize the need for specialized testing frameworks, automated validation tools, and improved documentation practices to enhance the reliability of LLM-integrated applications.
△ Less
Submitted 12 January, 2025; v1 submitted 23 December, 2024;
originally announced December 2024.
-
Statistical Validation of Column Matching in the Database Schema Evolution of the Brazilian Public School Census
Authors:
Muriki G. Yamanaka,
Diogo H. de Almeida,
Paulo R. Lisboa de Almeida,
Simone Dominico,
Leticia M. Peres,
Marcos S. Sunye,
Eduardo C. de Almeida
Abstract:
Publicly available datasets are subject to new versions, with each new version potentially reflecting changes to the data. These changes may involve adding or removing attributes, changing data types, and modifying values or their semantics. Integrating these datasets into a database poses a significant challenge: how to keep track of the evolving database schema while incorporating different vers…
▽ More
Publicly available datasets are subject to new versions, with each new version potentially reflecting changes to the data. These changes may involve adding or removing attributes, changing data types, and modifying values or their semantics. Integrating these datasets into a database poses a significant challenge: how to keep track of the evolving database schema while incorporating different versions of the data sources? This paper presents a statistical methodology to validate the integration of 12 years of open-access datasets from Brazil's School Census, with a new version of the datasets released annually by the Brazilian Ministry of Education (MEC). We employ various statistical tests to find matching attributes between datasets from a specific year and their potential equivalents in datasets from later years. The results show that by using the Kolmogorov-Smirnov test we can successfully match columns from different dataset versions in about 90% of cases.
△ Less
Submitted 13 July, 2024;
originally announced July 2024.
-
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.
-
Please do not go: understanding turnover of software engineers from different perspectives
Authors:
Michelle Larissa Luciano Carvalho,
Paulo da Silva Cruz,
Eduardo Santana de Almeida,
Paulo Anselmo da Mota Silveira Neto,
Rafael Prikladnicki
Abstract:
Turnover consists of moving into and out of professional employees in the company in a given period. Such a phenomenon significantly impacts the software industry since it generates knowledge loss, delays in the schedule, and increased costs in the final project. Despite the efforts made by researchers and professionals to minimize the turnover, more studies are needed to understand the motivation…
▽ More
Turnover consists of moving into and out of professional employees in the company in a given period. Such a phenomenon significantly impacts the software industry since it generates knowledge loss, delays in the schedule, and increased costs in the final project. Despite the efforts made by researchers and professionals to minimize the turnover, more studies are needed to understand the motivation that drives Software Engineers to leave their jobs and the main strategies CEOs adopt to retain these professionals in software development companies. In this paper, we contribute a mixed methods study involving semi-structured interviews with Software Engineers and CEOs to obtain a wider opinion of these professionals about turnover and a subsequent validation survey with additional software engineers to check and review the insights from interviews. In studying such aspects, we identified 19 different reasons for software engineers' turnover and 18 more efficient strategies used in the software development industry to reduce it. Our findings provide several implications for industry and academia, which can drive future research.
△ Less
Submitted 28 June, 2024;
originally announced July 2024.
-
Developers' Perceptions on the Impact of ChatGPT in Software Development: A Survey
Authors:
Thiago S. Vaillant,
Felipe Deveza de Almeida,
Paulo Anselmo M. S. Neto,
Cuiyun Gao,
Jan Bosch,
Eduardo Santana de Almeida
Abstract:
As Large Language Models (LLMs), including ChatGPT and analogous systems, continue to advance, their robust natural language processing capabilities and diverse applications have garnered considerable attention. Nonetheless, despite the increasing acknowledgment of the convergence of Artificial Intelligence (AI) and Software Engineering (SE), there is a lack of studies involving the impact of this…
▽ More
As Large Language Models (LLMs), including ChatGPT and analogous systems, continue to advance, their robust natural language processing capabilities and diverse applications have garnered considerable attention. Nonetheless, despite the increasing acknowledgment of the convergence of Artificial Intelligence (AI) and Software Engineering (SE), there is a lack of studies involving the impact of this convergence on the practices and perceptions of software developers. Understanding how software developers perceive and engage with AI tools, such as ChatGPT, is essential for elucidating the impact and potential challenges of incorporating AI-driven tools in the software development process. In this paper, we conducted a survey with 207 software developers to understand the impact of ChatGPT on software quality, productivity, and job satisfaction. Furthermore, the study delves into developers' expectations regarding future adaptations of ChatGPT, concerns about potential job displacement, and perspectives on regulatory interventions.
△ Less
Submitted 20 May, 2024;
originally announced May 2024.
-
What Makes a Great Software Quality Assurance Engineer?
Authors:
Roselane Silva Farias,
Iftekhar Ahmed,
Eduardo Santana de Almeida
Abstract:
Software Quality Assurance (SQA) Engineers are responsible for assessing a product during every phase of the software development process to ensure that the outcomes of each phase and the final product possess the desired qualities. In general, a great SQA engineer needs to have a different set of abilities from development engineers to effectively oversee the entire product development process fr…
▽ More
Software Quality Assurance (SQA) Engineers are responsible for assessing a product during every phase of the software development process to ensure that the outcomes of each phase and the final product possess the desired qualities. In general, a great SQA engineer needs to have a different set of abilities from development engineers to effectively oversee the entire product development process from beginning to end. Recent empirical studies identified important attributes of software engineers and managers, but the quality assurance role is overlooked. As software quality aspects have become more of a priority in the life cycle of software development, employers seek professionals that best suit the company's objectives and new graduates desire to make a valuable contribution through their job as an SQA engineer, but what makes them great? We addressed this knowledge gap by conducting 25 semi-structured interviews and 363 survey respondents with software quality assurance engineers from different companies around the world. We use the data collected from these activities to derive a comprehensive set of attributes that are considered important. As a result of the interviews, twenty-five attributes were identified and grouped into five main categories: personal, social, technical, management, and decision-making attributes. Through a rating survey, we confirmed that the distinguishing characteristics of great SQA engineers are curiosity, the ability to communicate effectively, and critical thinking skills. This work will guide further studies with SQA practitioners, by considering contextual factors and providing some implications for research and practice.
△ Less
Submitted 24 January, 2024;
originally announced January 2024.
-
Clustered Orienteering Problem with Subgroups
Authors:
Luciano E. Almeida,
Douglas G. Macharet
Abstract:
This paper introduces an extension to the Orienteering Problem (OP), called Clustered Orienteering Problem with Subgroups (COPS). In this variant, nodes are arranged into subgroups, and the subgroups are organized into clusters. A reward is associated with each subgroup and is gained only if all of its nodes are visited; however, at most one subgroup can be visited per cluster. The objective is to…
▽ More
This paper introduces an extension to the Orienteering Problem (OP), called Clustered Orienteering Problem with Subgroups (COPS). In this variant, nodes are arranged into subgroups, and the subgroups are organized into clusters. A reward is associated with each subgroup and is gained only if all of its nodes are visited; however, at most one subgroup can be visited per cluster. The objective is to maximize the total collected reward while attaining a travel budget. We show that our new formulation has the ability to model and solve two previous well-known variants, the Clustered Orienteering Problem (COP) and the Set Orienteering Problem (SOP), in addition to other scenarios introduced here. An Integer Linear Programming (ILP) formulation and a Tabu Search-based heuristic are proposed to solve the problem. Experimental results indicate that the ILP method can yield optimal solutions at the cost of time, whereas the metaheuristic produces comparable solutions within a more reasonable computational cost.
△ Less
Submitted 27 December, 2023; v1 submitted 26 December, 2023;
originally announced December 2023.
-
Finding the Needle in a Haystack: Detecting Bug Occurrences in Gameplay Videos
Authors:
Andrew Truelove,
Shiyue Rong,
Eduardo Santana de Almeida,
Iftekhar Ahmed
Abstract:
The presence of bugs in video games can bring significant consequences for developers. To avoid these consequences, developers can leverage gameplay videos to identify and fix these bugs. Video hosting websites such as YouTube provide access to millions of game videos, including videos that depict bug occurrences, but the large amount of content can make finding bug instances challenging. We prese…
▽ More
The presence of bugs in video games can bring significant consequences for developers. To avoid these consequences, developers can leverage gameplay videos to identify and fix these bugs. Video hosting websites such as YouTube provide access to millions of game videos, including videos that depict bug occurrences, but the large amount of content can make finding bug instances challenging. We present an automated approach that uses machine learning to predict whether a segment of a gameplay video contains the depiction of a bug. We analyzed 4,412 segments of 198 gameplay videos to predict whether a segment contains an instance of a bug. Additionally, we investigated how our approach performs when applied across different specific genres of video games and on videos from the same game. We also analyzed the videos in the dataset to investigate what characteristics of the visual features might explain the classifier's prediction. Finally, we conducted a user study to examine the benefits of our automated approach against a manual analysis. Our findings indicate that our approach is effective at detecting segments of a video that contain bugs, achieving a high F1 score of 0.88, outperforming the current state-of-the-art technique for bug classification of gameplay video segments.
△ Less
Submitted 17 November, 2023;
originally announced November 2023.
-
Test Smell: A Parasitic Energy Consumer in Software Testing
Authors:
Md Rakib Hossain Misu,
Jiawei Li,
Adithya Bhattiprolu,
Yang Liu,
Eduardo Almeida,
Iftekhar Ahmed
Abstract:
Traditionally, energy efficiency research has focused on reducing energy consumption at the hardware level and, more recently, in the design and coding phases of the software development life cycle. However, software testing's impact on energy consumption did not receive attention from the research community. Specifically, how test code design quality and test smell (e.g., sub-optimal design and b…
▽ More
Traditionally, energy efficiency research has focused on reducing energy consumption at the hardware level and, more recently, in the design and coding phases of the software development life cycle. However, software testing's impact on energy consumption did not receive attention from the research community. Specifically, how test code design quality and test smell (e.g., sub-optimal design and bad practices in test code) impact energy consumption has not been investigated yet. This study examined 12 Apache projects to analyze the association between test smell and its effects on energy consumption in software testing. We conducted a mixed-method empirical analysis from two dimensions; software (data mining in Apache projects) and developers' views (a survey of 62 software practitioners). Our findings show that: 1) test smell is associated with energy consumption in software testing. Specifically smelly part of a test case consumes 10.92\% more energy compared to the non-smelly part. 2) certain test smells are more energy-hungry than others, 3) refactored test cases tend to consume less energy than their smelly counterparts, and 4) most developers lack knowledge about test smells' impact on energy consumption. We conclude the paper with several observations that can direct future research and developments.
△ Less
Submitted 8 January, 2025; v1 submitted 23 October, 2023;
originally announced October 2023.
-
Strength in Diversity: Multi-Branch Representation Learning for Vehicle Re-Identification
Authors:
Eurico Almeida,
Bruno Silva,
Jorge Batista
Abstract:
This paper presents an efficient and lightweight multi-branch deep architecture to improve vehicle re-identification (V-ReID). While most V-ReID work uses a combination of complex multi-branch architectures to extract robust and diversified embeddings towards re-identification, we advocate that simple and lightweight architectures can be designed to fulfill the Re-ID task without compromising perf…
▽ More
This paper presents an efficient and lightweight multi-branch deep architecture to improve vehicle re-identification (V-ReID). While most V-ReID work uses a combination of complex multi-branch architectures to extract robust and diversified embeddings towards re-identification, we advocate that simple and lightweight architectures can be designed to fulfill the Re-ID task without compromising performance.
We propose a combination of Grouped-convolution and Loss-Branch-Split strategies to design a multi-branch architecture that improve feature diversity and feature discriminability. We combine a ResNet50 global branch architecture with a BotNet self-attention branch architecture, both designed within a Loss-Branch-Split (LBS) strategy. We argue that specialized loss-branch-splitting helps to improve re-identification tasks by generating specialized re-identification features. A lightweight solution using grouped convolution is also proposed to mimic the learning of loss-splitting into multiple embeddings while significantly reducing the model size. In addition, we designed an improved solution to leverage additional metadata, such as camera ID and pose information, that uses 97% less parameters, further improving re-identification performance.
In comparison to state-of-the-art (SoTA) methods, our approach outperforms competing solutions in Veri-776 by achieving 85.6% mAP and 97.7% CMC1 and obtains competitive results in Veri-Wild with 88.1% mAP and 96.3% CMC1. Overall, our work provides important insights into improving vehicle re-identification and presents a strong basis for other retrieval tasks. Our code is available at the https://github.com/videturfortuna/vehicle_reid_itsc2023.
△ Less
Submitted 2 October, 2023;
originally announced October 2023.
-
A Snapshot of the Mental Health of Software Professionals
Authors:
Eduardo Santana de Almeida,
Ingrid Oliveira de Nunes,
Raphael Pereira de Oliveira,
Michelle Larissa Luciano Carvalho,
Andre Russowsky Brunoni,
Shiyue Rong,
Iftekhar Ahmed
Abstract:
Mental health disorders affect a large number of people, leading to many lives being lost every year. These disorders affect struggling individuals and businesses whose productivity decreases due to days of lost work or lower employee performance. Recent studies provide alarming numbers of individuals who suffer from mental health disorders, e.g., depression and anxiety, in particular contexts, su…
▽ More
Mental health disorders affect a large number of people, leading to many lives being lost every year. These disorders affect struggling individuals and businesses whose productivity decreases due to days of lost work or lower employee performance. Recent studies provide alarming numbers of individuals who suffer from mental health disorders, e.g., depression and anxiety, in particular contexts, such as academia. In the context of the software industry, there are limited studies that aim to understand the presence of mental health disorders and the characteristics of jobs in this context that can be triggers for the deterioration of the mental health of software professionals. In this paper, we present the results of a survey with 500 software professionals. We investigate different aspects of their mental health and the characteristics of their work to identify possible triggers of mental health deterioration. Our results provide the first evidence that mental health is a critical issue to be addressed in the software industry, as well as raise the direction of changes that can be done in this context to improve the mental health of software professionals.
△ Less
Submitted 29 September, 2023;
originally announced September 2023.
-
Software Product Line Engineering via Software Transplantation
Authors:
Leandro O. Souza,
Earl T. Barr,
Justyna Petke,
Eduardo S. Almeida,
Paulo Anselmo M. S. Neto
Abstract:
For companies producing related products, a Software Product Line (SPL) is a software reuse method that improves time-to-market and software quality, achieving substantial cost reductions.These benefits do not come for free. It often takes years to re-architect and re-engineer a codebase to support SPL and, once adopted, it must be maintained. Current SPL practice relies on a collection of tools,…
▽ More
For companies producing related products, a Software Product Line (SPL) is a software reuse method that improves time-to-market and software quality, achieving substantial cost reductions.These benefits do not come for free. It often takes years to re-architect and re-engineer a codebase to support SPL and, once adopted, it must be maintained. Current SPL practice relies on a collection of tools, tailored for different reengineering phases, whose output developers must coordinate and integrate. We present Foundry, a general automated approach for leveraging software transplantation to speed conversion to and maintenance of SPL. Foundry facilitates feature extraction and migration. It can efficiently, repeatedly, transplant a sequence of features, implemented in multiple files. We used Foundry to create two valid product lines that integrate features from three real-world systems in an automated way. Moreover, we conducted an experiment comparing Foundry's feature migration with manual effort. We show that Foundry automatically migrated features across codebases 4.8 times faster, on average, than the average time a group of SPL experts took to accomplish the task.
△ Less
Submitted 20 July, 2023;
originally announced July 2023.
-
Test case quality: an empirical study on belief and evidence
Authors:
Daniel Lucrédio,
Auri Marcelo Rizzo Vincenzi,
Eduardo Santana de Almeida,
Iftekhar Ahmed
Abstract:
Software testing is a mandatory activity in any serious software development process, as bugs are a reality in software development. This raises the question of quality: good tests are effective in finding bugs, but until a test case actually finds a bug, its effectiveness remains unknown. Therefore, determining what constitutes a good or bad test is necessary. This is not a simple task, and there…
▽ More
Software testing is a mandatory activity in any serious software development process, as bugs are a reality in software development. This raises the question of quality: good tests are effective in finding bugs, but until a test case actually finds a bug, its effectiveness remains unknown. Therefore, determining what constitutes a good or bad test is necessary. This is not a simple task, and there are a number of studies that identify different characteristics of a good test case. A previous study evaluated 29 hypotheses regarding what constitutes a good test case, but the findings are based on developers' beliefs, which are subjective and biased. In this paper we investigate eight of these hypotheses, through an extensive empirical study based on open software repositories. Despite our best efforts, we were unable to find evidence that supports these beliefs. This indicates that, although these hypotheses represent good software engineering advice, they do not necessarily mean that they are enough to provide the desired outcome of good testing code.
△ Less
Submitted 12 July, 2023;
originally announced July 2023.
-
UAV-Assisted Wireless Communications: An Experimental Analysis of A2G and G2A Channels
Authors:
Kamran Shafafi,
Eduardo Nuno Almeida,
André Coelho,
Helder Fontes,
Manuel Ricardo,
Rui Campos
Abstract:
Unmanned Aerial Vehicles (UAVs) offer promising potential as communications node carriers, providing on-demand wireless connectivity to users. While existing literature presents various wireless channel models, it often overlooks the impact of UAV heading. This paper provides an experimental characterization of the Air-to-Ground (A2G) and Ground-to-Air (G2A) wireless channels in an open environmen…
▽ More
Unmanned Aerial Vehicles (UAVs) offer promising potential as communications node carriers, providing on-demand wireless connectivity to users. While existing literature presents various wireless channel models, it often overlooks the impact of UAV heading. This paper provides an experimental characterization of the Air-to-Ground (A2G) and Ground-to-Air (G2A) wireless channels in an open environment with no obstacles nor interference, considering the distance and the UAV heading. We analyze the received signal strength indicator and the TCP throughput between a ground user and a UAV, covering distances between 50~m and 500~m, and considering different UAV headings. Additionally, we characterize the antenna's radiation pattern based on UAV headings. The paper provides valuable perspectives on the capabilities of UAVs in offering on-demand and dynamic wireless connectivity, as well as highlights the significance of considering UAV heading and antenna configurations in real-world scenarios.
△ Less
Submitted 12 August, 2023; v1 submitted 29 March, 2023;
originally announced March 2023.
-
Position-Based Machine Learning Propagation Loss Model Enabling Fast Digital Twins of Wireless Networks in ns-3
Authors:
Eduardo Nuno Almeida,
Helder Fontes,
Rui Campos,
Manuel Ricardo
Abstract:
Digital twins have been emerging as a hybrid approach that combines the benefits of simulators with the realism of experimental testbeds. The accurate and repeatable set-ups replicating the dynamic conditions of physical environments, enable digital twins of wireless networks to be used to evaluate the performance of next-generation networks. In this paper, we propose the Position-based Machine Le…
▽ More
Digital twins have been emerging as a hybrid approach that combines the benefits of simulators with the realism of experimental testbeds. The accurate and repeatable set-ups replicating the dynamic conditions of physical environments, enable digital twins of wireless networks to be used to evaluate the performance of next-generation networks. In this paper, we propose the Position-based Machine Learning Propagation Loss Model (P-MLPL), enabling the creation of fast and more precise digital twins of wireless networks in ns-3. Based on network traces collected in an experimental testbed, the P-MLPL model estimates the propagation loss suffered by packets exchanged between a transmitter and a receiver, considering the absolute node's positions and the traffic direction. The P-MLPL model is validated with a test suite. The results show that the P-MLPL model can predict the propagation loss with a median error of 2.5 dB, which corresponds to 0.5x the error of existing models in ns-3. Moreover, ns-3 simulations with the P-MLPL model estimated the throughput with an error up to 2.5 Mbit/s, when compared to the real values measured in the testbed.
△ Less
Submitted 22 February, 2023;
originally announced February 2023.
-
Let's Go to the Whiteboard (Again):Perceptions from Software Architects on Whiteboard Architecture Meetings
Authors:
Eduardo Santana de Almeida,
Iftekhar Ahmed,
Andre van der Hoek
Abstract:
The whiteboard plays a crucial role in the day-to-day lives of software architects, as they frequently will organize meetings at the whiteboard to discuss a new architecture, some proposed changes to the architecture, a mismatch between the architecture and the code, and more. While much has been studied about software architects, the architectures they produce, and how they produce them, a detail…
▽ More
The whiteboard plays a crucial role in the day-to-day lives of software architects, as they frequently will organize meetings at the whiteboard to discuss a new architecture, some proposed changes to the architecture, a mismatch between the architecture and the code, and more. While much has been studied about software architects, the architectures they produce, and how they produce them, a detailed understanding of these whiteboards meetings is still lacking. In this paper, we contribute a mixed-methods study involving semi-structured interviews and a subsequent survey to understand the perceptions of software architects on whiteboard architecture meetings. We focus on five aspects: (1) why do they hold these meetings, what is the impact of the experience levels of the participants in these meetings, how do the architects document the meetings, what kinds of changes are made after the meetings have concluded and their results are moved to implementation, and what role do digital whiteboards plays? In studying these aspects, we identify 12 observations related to both technical aspects and social aspects of the meetings. These insights have implications for further research, offer concrete advice to practitioners, provide guidance for future tool design, and suggest ways of educating future software architects.
△ Less
Submitted 28 October, 2022;
originally announced October 2022.
-
Bug Analysis in Jupyter Notebook Projects: An Empirical Study
Authors:
Taijara Loiola de Santana,
Paulo Anselmo da Mota Silveira Neto,
Eduardo Santana de Almeida,
Iftekhar Ahmed
Abstract:
Computational notebooks, such as Jupyter, have been widely adopted by data scientists to write code for analyzing and visualizing data. Despite their growing adoption and popularity, there has been no thorough study to understand Jupyter development challenges from the practitioners' point of view. This paper presents a systematic study of bugs and challenges that Jupyter practitioners face throug…
▽ More
Computational notebooks, such as Jupyter, have been widely adopted by data scientists to write code for analyzing and visualizing data. Despite their growing adoption and popularity, there has been no thorough study to understand Jupyter development challenges from the practitioners' point of view. This paper presents a systematic study of bugs and challenges that Jupyter practitioners face through a large-scale empirical investigation. We mined 14,740 commits from 105 GitHub open-source projects with Jupyter notebook code. Next, we analyzed 30,416 Stack Overflow posts which gave us insights into bugs that practitioners face when developing Jupyter notebook projects. Finally, we conducted nineteen interviews with data scientists to uncover more details about Jupyter bugs and to gain insights into Jupyter developers' challenges. We propose a bug taxonomy for Jupyter projects based on our results. We also highlight bug categories, their root causes, and the challenges that Jupyter practitioners face.
△ Less
Submitted 13 October, 2022;
originally announced October 2022.
-
Robust Power Allocation and Linear Precoding for Cell-Free and Multi-Cell Massive MIMO Systems
Authors:
E. F. de Almeida,
R. C. de Lamare
Abstract:
Multi-Cell (MC) systems are present in mobile network operations from the first generation to the fifth generation of wireless networks, and considers the signals of all users to a base station (BS) centered in a cell. Cell-Free (CF) systems works with a large number of distributed antennas serving users at the same time. In this context, Multiple-input multiple-output (MIMO) techniques are used i…
▽ More
Multi-Cell (MC) systems are present in mobile network operations from the first generation to the fifth generation of wireless networks, and considers the signals of all users to a base station (BS) centered in a cell. Cell-Free (CF) systems works with a large number of distributed antennas serving users at the same time. In this context, Multiple-input multiple-output (MIMO) techniques are used in both topologies and result in performance gains and interference reduction. In order to achieve the benefits mentioned, proper precoder design and power allocation techniques are required in the downlink (DL). In general, DL schemes assume perfect channel state information at the transmitter (CSIT), which is not realistic. This paper studies MC and CF with MIMO systems equipped with linear precoders in the DL and proposes an adaptive algorithm to allocate power in the presence of imperfect CSIT. The proposed robust adaptive power allocation outperforms standard adaptive and uniform power allocation. Simulations also compare the performance of both systems frameworks using minimum mean-square error (MMSE) precoders with robust adaptive power allocation and adaptive power allocation.
△ Less
Submitted 1 October, 2022;
originally announced October 2022.
-
A Robust Learning Methodology for Uncertainty-aware Scientific Machine Learning models
Authors:
Erbet Costa Almeida,
Carine de Menezes Rebello,
Marcio Fontana,
Leizer Schnitman,
Idelfonso Bessa dos Reis Nogueira
Abstract:
Robust learning is an important issue in Scientific Machine Learning (SciML). There are several works in the literature addressing this topic. However, there is an increasing demand for methods that can simultaneously consider all the different uncertainty components involved in SciML model identification. Hence, this work proposes a comprehensive methodology for uncertainty evaluation of the SciM…
▽ More
Robust learning is an important issue in Scientific Machine Learning (SciML). There are several works in the literature addressing this topic. However, there is an increasing demand for methods that can simultaneously consider all the different uncertainty components involved in SciML model identification. Hence, this work proposes a comprehensive methodology for uncertainty evaluation of the SciML that also considers several possible sources of uncertainties involved in the identification process. The uncertainties considered in the proposed method are the absence of theory and causal models, the sensitiveness to data corruption or imperfection, and the computational effort. Therefore, it was possible to provide an overall strategy for the uncertainty-aware models in the SciML field. The methodology is validated through a case study, developing a Soft Sensor for a polymerization reactor. The results demonstrated that the identified Soft Sensor are robust for uncertainties, corroborating with the consistency of the proposed approach.
△ Less
Submitted 5 September, 2022;
originally announced September 2022.
-
Machine Learning Based Propagation Loss Module for Enabling Digital Twins of Wireless Networks in ns-3
Authors:
Eduardo Nuno Almeida,
Mohammed Rushad,
Sumanth Reddy Kota,
Akshat Nambiar,
Hardik L. Harti,
Chinmay Gupta,
Danish Waseem,
Gonçalo Santos,
Helder Fontes,
Rui Campos,
Mohit P. Tahiliani
Abstract:
The creation of digital twins of experimental testbeds allows the validation of novel wireless networking solutions and the evaluation of their performance in realistic conditions, without the cost, complexity and limited availability of experimental testbeds. Current trace-based simulation approaches for ns-3 enable the repetition and reproduction of the same exact conditions observed in past exp…
▽ More
The creation of digital twins of experimental testbeds allows the validation of novel wireless networking solutions and the evaluation of their performance in realistic conditions, without the cost, complexity and limited availability of experimental testbeds. Current trace-based simulation approaches for ns-3 enable the repetition and reproduction of the same exact conditions observed in past experiments. However, they are limited by the fact that the simulation setup must exactly match the original experimental setup, including the network topology, the mobility patterns and the number of network nodes. In this paper, we propose the Machine Learning based Propagation Loss (MLPL) module for ns-3. Based on network traces collected in an experimental testbed, the MLPL module estimates the propagation loss as the sum of a deterministic path loss and a stochastic fast-fading loss. The MLPL module is validated with unit tests. Moreover, we test the MLPL module with real network traces, and compare the results obtained with existing propagation loss models in ns-3 and real experimental results. The results obtained show that the MLPL module can accurately predict the propagation loss observed in a real environment and reproduce the experimental conditions of a given testbed, enabling the creation of digital twins of wireless network environments in ns-3.
△ Less
Submitted 9 May, 2022;
originally announced May 2022.
-
Traffic-Aware UAV Placement Using a Generalizable Deep Reinforcement Learning Methodology
Authors:
Eduardo Nuno Almeida,
Rui Campos,
Manuel Ricardo
Abstract:
Unmanned Aerial Vehicles (UAVs) acting as Flying Access Points (FAPs) are being used to provide on-demand wireless connectivity in extreme scenarios. Despite ongoing research, the optimization of UAVs' positions according to dynamic users' traffic demands remains challenging. We propose the Traffic-aware UAV Placement Algorithm (TUPA), which positions a UAV acting as FAP according to the users' tr…
▽ More
Unmanned Aerial Vehicles (UAVs) acting as Flying Access Points (FAPs) are being used to provide on-demand wireless connectivity in extreme scenarios. Despite ongoing research, the optimization of UAVs' positions according to dynamic users' traffic demands remains challenging. We propose the Traffic-aware UAV Placement Algorithm (TUPA), which positions a UAV acting as FAP according to the users' traffic demands, in order to maximize the network utility. Using a DRL approach enables the FAP to autonomously learn and adapt to dynamic conditions and requirements of networking scenarios. Moreover, the proposed DRL methodology allows TUPA to generalize knowledge acquired during training to unknown combinations of users' positions and traffic demands, with no additional training. TUPA is trained and evaluated using network simulator ns-3 and ns3-gym framework. The results demonstrate that TUPA increases the network utility, compared to baseline solutions, increasing the average network utility up to 4x in scenarios with heterogeneous traffic demands.
△ Less
Submitted 16 March, 2022;
originally announced March 2022.
-
Code Smells in Machine Learning Systems
Authors:
Jiri Gesi,
Siqi Liu,
Jiawei Li,
Iftekhar Ahmed,
Nachiappan Nagappan,
David Lo,
Eduardo Santana de Almeida,
Pavneet Singh Kochhar,
Lingfeng Bao
Abstract:
As Deep learning (DL) systems continuously evolve and grow, assuring their quality becomes an important yet challenging task. Compared to non-DL systems, DL systems have more complex team compositions and heavier data dependency. These inherent characteristics would potentially cause DL systems to be more vulnerable to bugs and, in the long run, to maintenance issues. Code smells are empirically t…
▽ More
As Deep learning (DL) systems continuously evolve and grow, assuring their quality becomes an important yet challenging task. Compared to non-DL systems, DL systems have more complex team compositions and heavier data dependency. These inherent characteristics would potentially cause DL systems to be more vulnerable to bugs and, in the long run, to maintenance issues. Code smells are empirically tested as efficient indicators of non-DL systems. Therefore, we took a step forward into identifying code smells, and understanding their impact on maintenance in this comprehensive study. This is the first study on investigating code smells in the context of DL software systems, which helps researchers and practitioners to get a first look at what kind of maintenance modification made and what code smells developers have been dealing with. Our paper has three major contributions. First, we comprehensively investigated the maintenance modifications that have been made by DL developers via studying the evolution of DL systems, and we identified nine frequently occurred maintenance-related modification categories in DL systems. Second, we summarized five code smells in DL systems. Third, we validated the prevalence, and the impact of our newly identified code smells through a mixture of qualitative and quantitative analysis. We found that our newly identified code smells are prevalent and impactful on the maintenance of DL systems from the developer's perspective.
△ Less
Submitted 1 March, 2022;
originally announced March 2022.
-
Wi-Fi Rate Adaptation using a Simple Deep Reinforcement Learning Approach
Authors:
Ruben Queiros,
Eduardo Nuno Almeida,
Helder Fontes,
Jose Ruela,
Rui Campos
Abstract:
The increasing complexity of recent Wi-Fi amendments is making optimal Rate Adaptation (RA) a challenge. The use of classic algorithms or heuristic models to address RA is becoming unfeasible due to the large combination of configuration parameters along with the variability of the wireless channel. Machine Learning-based solutions have been proposed in the state of art, to deal with this complexi…
▽ More
The increasing complexity of recent Wi-Fi amendments is making optimal Rate Adaptation (RA) a challenge. The use of classic algorithms or heuristic models to address RA is becoming unfeasible due to the large combination of configuration parameters along with the variability of the wireless channel. Machine Learning-based solutions have been proposed in the state of art, to deal with this complexity. However, they typically use complex models and their implementation in real scenarios is difficult. We propose a simple Deep Reinforcement Learning approach for the automatic RA in Wi-Fi networks, named Data-driven Algorithm for Rate Adaptation (DARA). DARA is standard-compliant. It dynamically adjusts the Wi-Fi Modulation and Coding Scheme (MCS) solely based on the observation of the Signal-to-Noise Ratio (SNR) of the received frames at the transmitter. Our simulation results show that DARA achieves up to 15\% higher throughput when compared with Minstrel High Throughput (HT) and equals the performance of the Ideal Wi-Fi RA algorithm.
△ Less
Submitted 11 February, 2022; v1 submitted 8 February, 2022;
originally announced February 2022.
-
We'll Fix It in Post: What Do Bug Fixes in Video Game Update Notes Tell Us?
Authors:
Andrew Truelove,
Eduardo Santana de Almeida,
Iftekhar Ahmed
Abstract:
Bugs that persist into releases of video games can have negative impacts on both developers and users, but particular aspects of testing in game development can lead to difficulties in effectively catching these missed bugs. It has become common practice for developers to apply updates to games in order to fix missed bugs. These updates are often accompanied by notes that describe the changes to t…
▽ More
Bugs that persist into releases of video games can have negative impacts on both developers and users, but particular aspects of testing in game development can lead to difficulties in effectively catching these missed bugs. It has become common practice for developers to apply updates to games in order to fix missed bugs. These updates are often accompanied by notes that describe the changes to the game included in the update. However, some bugs reappear even after an update attempts to fix them. In this paper, we develop a taxonomy for bug types in games that is based on prior work. We examine 12,122 bug fixes from 723 updates for 30 popular games on the Steam platform. We label the bug fixes included in these updates to identify the frequency of these different bug types, the rate at which bug types recur over multiple updates, and which bug types are treated as more severe. Additionally, we survey game developers regarding their experience with different bug types and what aspects of game development they most strongly associate with bug appearance. We find that Information bugs appear the most frequently in updates, while Crash bugs recur the most frequently and are often treated as more severe than other bug types. Finally, we find that challenges in testing, code quality, and bug reproduction have a close association with bug persistence. These findings should help developers identify which aspects of game development could benefit from greater attention in order to prevent bugs. Researchers can use our results in devising tools and methods to better identify and address certain bug types.
△ Less
Submitted 5 March, 2021;
originally announced March 2021.
-
Towards Image-based Automatic Meter Reading in Unconstrained Scenarios: A Robust and Efficient Approach
Authors:
Rayson Laroca,
Alessandra B. Araujo,
Luiz A. Zanlorensi,
Eduardo C. de Almeida,
David Menotti
Abstract:
Existing approaches for image-based Automatic Meter Reading (AMR) have been evaluated on images captured in well-controlled scenarios. However, real-world meter reading presents unconstrained scenarios that are way more challenging due to dirt, various lighting conditions, scale variations, in-plane and out-of-plane rotations, among other factors. In this work, we present an end-to-end approach fo…
▽ More
Existing approaches for image-based Automatic Meter Reading (AMR) have been evaluated on images captured in well-controlled scenarios. However, real-world meter reading presents unconstrained scenarios that are way more challenging due to dirt, various lighting conditions, scale variations, in-plane and out-of-plane rotations, among other factors. In this work, we present an end-to-end approach for AMR focusing on unconstrained scenarios. Our main contribution is the insertion of a new stage in the AMR pipeline, called corner detection and counter classification, which enables the counter region to be rectified -- as well as the rejection of illegible/faulty meters -- prior to the recognition stage. We also introduce a publicly available dataset, called Copel-AMR, that contains 12,500 meter images acquired in the field by the service company's employees themselves, including 2,500 images of faulty meters or cases where the reading is illegible due to occlusions. Experimental evaluation demonstrates that the proposed system, which has three networks operating in a cascaded mode, outperforms all baselines in terms of recognition rate while still being quite efficient. Moreover, as very few reading errors are tolerated in real-world applications, we show that our AMR system achieves impressive recognition rates (i.e., > 99%) when rejecting readings made with lower confidence values.
△ Less
Submitted 12 May, 2021; v1 submitted 21 September, 2020;
originally announced September 2020.
-
A Deep Dive on the Impact of COVID-19 in Software Development
Authors:
Paulo Anselmo da Mota Silveira Neto,
Umme Ayda Mannan,
Eduardo Santana de Almeida,
Nachiappan Nagappan,
David Lo,
Pavneet Singh Kochhar,
Cuiyun Gao,
Iftekhar Ahmed
Abstract:
Context: COVID-19 pandemic has impacted different business sectors around the world. Objective. This study investigates the impact of COVID-19 on software projects and software development professionals. Method: We conducted a mining software repository study based on 100 GitHub projects developed in Java using ten different metrics. Next, we surveyed 279 software development professionals for bet…
▽ More
Context: COVID-19 pandemic has impacted different business sectors around the world. Objective. This study investigates the impact of COVID-19 on software projects and software development professionals. Method: We conducted a mining software repository study based on 100 GitHub projects developed in Java using ten different metrics. Next, we surveyed 279 software development professionals for better understanding the impact of COVID-19 on daily activities and wellbeing. Results: We identified 12 observations related to productivity, code quality, and wellbeing. Conclusions: Our findings highlight that the impact of COVID-19 is not binary (reduce productivity vs. increase productivity) but rather a spectrum. For many of our observations, substantial proportions of respondents have differing opinions from each other. We believe that more research is needed to uncover specific conditions that cause certain outcomes to be more prevalent.
△ Less
Submitted 16 August, 2020;
originally announced August 2020.
-
Joint Traffic-Aware UAV Placement and Predictive Routing for Aerial Networks
Authors:
Eduardo Nuno Almeida,
André Coelho,
José Ruela,
Rui Campos,
Manuel Ricardo
Abstract:
Aerial networks, composed of Unmanned Aerial Vehicles (UAVs) acting as Wi-Fi access points or cellular base stations, are emerging as an interesting solution to provide on-demand wireless connectivity to users, when there is no network infrastructure available, or to enhance the network capacity. This article proposes a traffic-aware topology control solution for aerial networks that holistically…
▽ More
Aerial networks, composed of Unmanned Aerial Vehicles (UAVs) acting as Wi-Fi access points or cellular base stations, are emerging as an interesting solution to provide on-demand wireless connectivity to users, when there is no network infrastructure available, or to enhance the network capacity. This article proposes a traffic-aware topology control solution for aerial networks that holistically combines the placement of UAVs with a predictive and centralized routing protocol. The synergy created by the combination of the UAV placement and routing solutions allows the aerial network to seamlessly update its topology according to the users' traffic demand, whilst minimizing the disruption caused by the movement of the UAVs. As a result, the Quality of Service (QoS) provided to the users is improved. The components of the proposed solution are described and evaluated individually in this article by means of simulation and an experimental testbed. The results show that all the components improve the QoS provided to the users when compared to the corresponding baseline solutions.
△ Less
Submitted 15 April, 2020;
originally announced April 2020.
-
Examining user reviews of conversational systems: a case study of Alexa skills
Authors:
Soodeh Atefi,
Andrew Truelove,
Matheus Rheinschmitt,
Eduardo Almeida,
Iftekhar Ahmed,
Amin Alipour
Abstract:
Conversational systems use spoken language to interact with their users. Although conversational systems, such as Amazon Alexa, are becoming common and afford interesting functionalities, there is little known about the issues users of these systems face.
In this paper, we study user reviews of more than 2,800 Alexa skills to understand the characteristics of the reviews and issues that are rais…
▽ More
Conversational systems use spoken language to interact with their users. Although conversational systems, such as Amazon Alexa, are becoming common and afford interesting functionalities, there is little known about the issues users of these systems face.
In this paper, we study user reviews of more than 2,800 Alexa skills to understand the characteristics of the reviews and issues that are raised in them. Our results suggest that most skills receive less than 50 reviews. Our qualitative study of user reviews using open coding resulted in identifying 16 types of issues in the user reviews. Issues related to the content, integration with online services and devices, error, and regression are top issues raised by the users. Our results also indicate differences in volume and types of complaints by users when compared with more traditional mobile applications. We discuss the implication of our results for practitioners and researchers.
△ Less
Submitted 2 March, 2020;
originally announced March 2020.
-
A Routing Metric for Inter-flow Interference-aware Flying Multi-hop Networks
Authors:
André Coelho,
Eduardo Nuno Almeida,
José Ruela,
Rui Campos,
Manuel Ricardo
Abstract:
The growing demand for broadband communications anytime, anywhere has paved the way to the usage of Unmanned Aerial Vehicles (UAVs) for providing Internet access in areas without network infrastructure and enhancing the performance of existing networks. However, the usage of Flying Multi-hop Networks (FMNs) in such scenarios brings up significant challenges concerning network routing, in order to…
▽ More
The growing demand for broadband communications anytime, anywhere has paved the way to the usage of Unmanned Aerial Vehicles (UAVs) for providing Internet access in areas without network infrastructure and enhancing the performance of existing networks. However, the usage of Flying Multi-hop Networks (FMNs) in such scenarios brings up significant challenges concerning network routing, in order to permanently provide the Quality of Service expected by the users. The problem is exacerbated in crowded events, where the FMN may be formed by many UAVs to address the traffic demand, causing inter-flow interference within the FMN. Typically, estimating inter-flow interference is not straightforward and requires the exchange of probe packets, thus increasing network overhead. The main contribution of this paper is an inter-flow interference-aware routing metric, named I2R, designed for centralized routing in FMNs with controllable topology. I2R does not require any control packets and enables the configuration of paths with minimal Euclidean distance formed by UAVs with the lowest number of neighbors in carrier-sense range, thus minimizing inter-flow interference in the FMN. Simulation results show the I2R superior performance, with significant gains in terms of throughput and end-to-end delay, when compared with state of the art routing metrics.
△ Less
Submitted 17 December, 2019;
originally announced December 2019.
-
Joint User Mobility and Traffic Characterization in Temporary Crowded Events
Authors:
Adriano Valadar,
Eduardo Nuno Almeida,
Jorge Mamede
Abstract:
In TCEs (Temporary Crowded Events), for example, music festivals, users are faced with problems accessing the Internet. TCEs are limited time events with a high concentration of people moving within the event enclosure while accessing the Internet. Unlike other events where the user locations are constant and known at the start (e.g. stadiums), the traffic generation and the user movement in TCEs…
▽ More
In TCEs (Temporary Crowded Events), for example, music festivals, users are faced with problems accessing the Internet. TCEs are limited time events with a high concentration of people moving within the event enclosure while accessing the Internet. Unlike other events where the user locations are constant and known at the start (e.g. stadiums), the traffic generation and the user movement in TCEs is variable and influenced by the dynamics of the event. The movement of users can lead to overloads in APs (Access Point) in case they are fixed. In order to minimize this phenomenon, new techniques have been explored that resort to the adjustable positioning of APs integrated into UAVs (Unmanned Aerial Vehicles). In these scenarios, the dynamic of the location of the APs requires that tools of prediction of the users movements and, in turn, of the sources of traffic, gain particular expression when being related to the algorithms of positioning of the referred APs. In order to allow the development and analysis of new network planning solutions for TCEs, it is necessary to recreate these scenarios in simulation, which, in turn, requires a detailed characterization of this kind of events. This article aims to characterize and model the mobility and traffic generated by users in TCEs. This characterization will enable the development of new statistical models of traffic generation and user mobility in TCEs.
△ Less
Submitted 3 July, 2019; v1 submitted 30 June, 2019;
originally announced July 2019.
-
Unveiling Architecture Documentation: Brazilian Stakeholders in Perspective
Authors:
Crescencio Rodrigues Lima Neto,
Christina von Flach Chavez,
Eduardo Santana de Almeida,
Dominik Rost,
Matthias Naab
Abstract:
Over the years, software architecture has become a established discipline, both in academia and industry, and the interest on software architecture documentation has increased. In this context, the improvement of methods, tools, and techniques around architecture documentation is of paramount importance. We conducted a survey with 147 industrial participants (31 from Brazil), analyzing their curre…
▽ More
Over the years, software architecture has become a established discipline, both in academia and industry, and the interest on software architecture documentation has increased. In this context, the improvement of methods, tools, and techniques around architecture documentation is of paramount importance. We conducted a survey with 147 industrial participants (31 from Brazil), analyzing their current problems and future wishes. We identified that Brazilian stakeholders need updated architecture documents with the right information. Finally, the automation of some parts of the documentation will reduce the effort during the creation of the documents. But first, is necessary to change the culture of the stakeholders. They have to participate actively in the architecture documents creation.
△ Less
Submitted 21 October, 2015;
originally announced October 2015.
-
Characterization of Vehicle Behavior with Information Theory
Authors:
Andre L. L. Aquino,
Tamer S. G. Cavalcante,
Eliana S. Almeida,
Alejandro C. Frery,
Osvaldo A. Rosso
Abstract:
This work proposes the use of Information Theory for the characterization of vehicles behavior through their velocities. Three public data sets were used: i.Mobile Century data set collected on Highway I-880, near Union City, California; ii.Borlänge GPS data set collected in the Swedish city of Borlänge; and iii.Beijing taxicabs data set collected in Beijing, China, where each vehicle speed is sto…
▽ More
This work proposes the use of Information Theory for the characterization of vehicles behavior through their velocities. Three public data sets were used: i.Mobile Century data set collected on Highway I-880, near Union City, California; ii.Borlänge GPS data set collected in the Swedish city of Borlänge; and iii.Beijing taxicabs data set collected in Beijing, China, where each vehicle speed is stored as a time series. The Bandt-Pompe methodology combined with the Complexity-Entropy plane were used to identify different regimes and behaviors. The global velocity is compatible with a correlated noise with f^{-k} Power Spectrum with k >= 0. With this we identify traffic behaviors as, for instance, random velocities (k aprox. 0) when there is congestion, and more correlated velocities (k aprox. 3) in the presence of free traffic flow.
△ Less
Submitted 14 October, 2015;
originally announced October 2015.
-
ExpertBayes: Automatically refining manually built Bayesian networks
Authors:
Ezilda Almeida,
Pedro Ferreira,
Tiago Vinhoza,
Inês Dutra,
Jingwei Li,
Yirong Wu,
Elizabeth Burnside
Abstract:
Bayesian network structures are usually built using only the data and starting from an empty network or from a naive Bayes structure. Very often, in some domains, like medicine, a prior structure knowledge is already known. This structure can be automatically or manually refined in search for better performance models. In this work, we take Bayesian networks built by specialists and show that mino…
▽ More
Bayesian network structures are usually built using only the data and starting from an empty network or from a naive Bayes structure. Very often, in some domains, like medicine, a prior structure knowledge is already known. This structure can be automatically or manually refined in search for better performance models. In this work, we take Bayesian networks built by specialists and show that minor perturbations to this original network can yield better classifiers with a very small computational cost, while maintaining most of the intended meaning of the original model.
△ Less
Submitted 9 June, 2014;
originally announced June 2014.
-
The Generalized Statistical Complexity of PolSAR Data
Authors:
Alejandro C. Frery,
Eliana S. de Almeida,
Osvaldo A. Rosso
Abstract:
This paper presents and discusses the use of a new feature for PolSAR imagery: the Generalized Statistical Complexity. This measure is able to capture the disorder of the data by means of the entropy, as well as its departure from a reference distribution. The latter component is obtained by measuring a stochastic distance between two models: the $\mathcal G^0$ and the Gamma laws. Preliminary resu…
▽ More
This paper presents and discusses the use of a new feature for PolSAR imagery: the Generalized Statistical Complexity. This measure is able to capture the disorder of the data by means of the entropy, as well as its departure from a reference distribution. The latter component is obtained by measuring a stochastic distance between two models: the $\mathcal G^0$ and the Gamma laws. Preliminary results on the intensity components of AIRSAR image of San Francisco are encouraging.
△ Less
Submitted 8 February, 2014;
originally announced February 2014.
-
Preliminary Experiments with EVA - Serious Games Virtual Fire Drill Simulator
Authors:
José Fernando M. Silva,
João Emílio Almeida,
António Pereira,
Rosaldo J. F. Rossetti,
António Leça Coelho
Abstract:
Fire keeps claiming a large number of victims in building fires. Although there are ways to minimize such events, fire drills are used to train the building occupants for emergency situations. However, organizing and implement these exercises is a complex task, and sometimes not sucessfull. Furthermore, fire drills require the mobilization of some finantial resources and time, and affect the norma…
▽ More
Fire keeps claiming a large number of victims in building fires. Although there are ways to minimize such events, fire drills are used to train the building occupants for emergency situations. However, organizing and implement these exercises is a complex task, and sometimes not sucessfull. Furthermore, fire drills require the mobilization of some finantial resources and time, and affect the normal functioning of the site where they occur. To overcome the aforementioned issues, computer games have a set of features that might overcome this problem. They offer engagement to their players, keeping them focused, and providing training to real life situations. The game evaluate users, providing them some feedback, making possible for the players to improve their performance. The proposed methodology aims to study the viability of using a game that recreates a fire drill in a 3D environment using Serious Games. The information acquired through the player's performance is very valuable and will be later used to implement an artificial population. A sample of 20 subjects was selected to test the application. Preliminary results are promising, showing that the exercise had a positive impact on users. Moreover, the data acquired is of great important and will be later used to demonstrate the possibility of creating an artificial population based on human behaviour.
△ Less
Submitted 15 March, 2013;
originally announced April 2013.
-
Using UWB for Human Trajectory Extraction
Authors:
Gonçalo Vasconcelos,
Marcelo Petry,
João Emílio Almeida,
Rosaldo J. F. Rossetti,
António Leça Coelho
Abstract:
In this paper we report on a methodology to model pedestrian behaviours whilst aggregate variables are concerned, with potential applications to different situations, such as evacuating a building in emergency events. The approach consists of using UWB (ultra-wide band) based data collection to characterise behaviour in specific scenarios. From a number of experiments carried out, we detail the si…
▽ More
In this paper we report on a methodology to model pedestrian behaviours whilst aggregate variables are concerned, with potential applications to different situations, such as evacuating a building in emergency events. The approach consists of using UWB (ultra-wide band) based data collection to characterise behaviour in specific scenarios. From a number of experiments carried out, we detail the single-file scenario to demonstrate the ability of this approach to represent macroscopic characteristics of the pedestrian flow. Results are discussed and we can conclude that UWB-based data collection shows great potential and suitability for human trajectory extraction, when compared to other traditional approaches.
△ Less
Submitted 15 March, 2013;
originally announced March 2013.
-
NetLogo Implementation of an Evacuation Scenario
Authors:
João Emílio Almeida,
Zafeiris Kokkinogenis,
Rosaldo J. F. Rossetti
Abstract:
The problem of evacuating crowded closed spaces, such as discotheques, public exhibition pavilions or concert houses, has become increasingly important and gained attention both from practitioners and from public authorities. A simulation implementation using NetLogo, an agent-based simulation framework that permits the quickly creation of prototypes, is presented. Our aim is to prove that this mo…
▽ More
The problem of evacuating crowded closed spaces, such as discotheques, public exhibition pavilions or concert houses, has become increasingly important and gained attention both from practitioners and from public authorities. A simulation implementation using NetLogo, an agent-based simulation framework that permits the quickly creation of prototypes, is presented. Our aim is to prove that this model developed using NetLogo, albeit simple can be expanded and adapted for fire safety experts test various scenarios and validate the outcome of their design. Some preliminary experiments are carried out, whose results are presented, validated and discussed so as to illustrate their efficiency. Finally, we draw some conclusions and point out ways in which this work can be further extended.
△ Less
Submitted 15 March, 2013;
originally announced March 2013.
-
Crowd Simulation Modeling Applied to Emergency and Evacuation Simulations using Multi-Agent Systems
Authors:
João E. Almeida,
Rosaldo J. F. Rosseti,
António Leça Coelho
Abstract:
In recent years crowd modeling has become increasingly important both in the computer games industry and in emergency simulation. This paper discusses some aspects of what has been accomplished in this field, from social sciences to the computer implementation of modeling and simulation. Problem overview is described including some of the most common techniques used. Multi-Agent Systems is stated…
▽ More
In recent years crowd modeling has become increasingly important both in the computer games industry and in emergency simulation. This paper discusses some aspects of what has been accomplished in this field, from social sciences to the computer implementation of modeling and simulation. Problem overview is described including some of the most common techniques used. Multi-Agent Systems is stated as the preferred approach for emergency evacuation simulations. A framework is proposed based on the work of Fangqin and Aizhu with extensions to include some BDI aspects. Future work includes expansion of the model's features and implementation of a prototype for validation of the propose methodology.
△ Less
Submitted 15 March, 2013;
originally announced March 2013.
-
Using Serious Games to Train Evacuation Behaviour
Authors:
João Ribeiro,
João Emílio Almeida,
Rosaldo J. F. Rossetti,
António Coelho,
António Leça Coelho
Abstract:
Emergency evacuation plans and evacuation drills are mandatory in public buildings in many countries. Their importance is considerable when it comes to guarantee safety and protection during a crisis. However, sometimes discrepancies arise between the goals of the plan and its outcomes, because people find it hard to take them very seriously, or due to the financial and time resources required. Se…
▽ More
Emergency evacuation plans and evacuation drills are mandatory in public buildings in many countries. Their importance is considerable when it comes to guarantee safety and protection during a crisis. However, sometimes discrepancies arise between the goals of the plan and its outcomes, because people find it hard to take them very seriously, or due to the financial and time resources required. Serious games are a possible solution to tackle this problem. They have been successfully applied in different areas such as health care and education, since they can simulate an environment/task quite accurately, making them a practical alternative to real-life simulations. This paper presents a serious game developed using Unity3D to recreate a virtual fire evacuation training tool. The prototype application was deployed which allowed the validation by user testing. A sample of 30 individuals tested the evacuating scenario, having to leave the building during a fire in the shortest time possible. Results have shown that users effectively end up learning some evacuation procedures from the activity, even if only to look for emergency signs indicating the best evacuation paths. It was also evidenced that users with higher video game experience had a significantly better performance.
△ Less
Submitted 15 March, 2013;
originally announced March 2013.
-
Towards a serious games evacuation simulator
Authors:
João Ribeiro,
João Emílio Almeida,
Rosaldo J. F. Rossetti,
António Coelho,
António Leça Coelho
Abstract:
The evacuation of complex buildings is a challenge under any circumstances. Fire drills are a way of training and validating evacuation plans. However, sometimes these plans are not taken seriously by their participants. It is also difficult to have the financial and time resources required. In this scenario, serious games can be used as a tool for training, planning and evaluating emergency plans…
▽ More
The evacuation of complex buildings is a challenge under any circumstances. Fire drills are a way of training and validating evacuation plans. However, sometimes these plans are not taken seriously by their participants. It is also difficult to have the financial and time resources required. In this scenario, serious games can be used as a tool for training, planning and evaluating emergency plans. In this paper a prototype of a serious games evacuation simulator is presented. To make the environment as realistic as possible, 3D models were made using Blender and loaded onto Unity3D, a popular game engine. This framework provided us with the appropriate simulation environment. Some experiences were made and results show that this tool has potential for practitioners and planners to use it for training building occupants.
△ Less
Submitted 15 March, 2013;
originally announced March 2013.
-
Testing MapReduce-Based Systems
Authors:
João Eugenio Marynowski,
Michel Albonico,
Eduardo Cunha de Almeida,
Gerson Sunyé
Abstract:
MapReduce (MR) is the most popular solution to build applications for large-scale data processing. These applications are often deployed on large clusters of commodity machines, where failures happen constantly due to bugs, hardware problems, and outages. Testing MR-based systems is hard, since it is needed a great effort of test harness to execute distributed test cases upon failures. In this pap…
▽ More
MapReduce (MR) is the most popular solution to build applications for large-scale data processing. These applications are often deployed on large clusters of commodity machines, where failures happen constantly due to bugs, hardware problems, and outages. Testing MR-based systems is hard, since it is needed a great effort of test harness to execute distributed test cases upon failures. In this paper, we present a novel testing solution to tackle this issue called HadoopTest. This solution is based on a scalable harness approach, where distributed tester components are hung around each map and reduce worker (i.e., node). Testers are allowed to stimulate each worker to inject failures on them, monitor their behavior, and validate testing results. HadoopTest was used to test two applications bundled into Hadoop, the Apache open source MapReduce implementation. Our initial implementation demonstrates promising results, with HadoopTest coordinating test cases across distributed MapReduce workers, and finding bugs.
△ Less
Submitted 7 February, 2013; v1 submitted 28 September, 2012;
originally announced September 2012.
-
How good are MatLab, Octave and Scilab for Computational Modelling?
Authors:
Eliana S. de Almeida,
Antonio C. Medeiros,
Alejandro C. Frery
Abstract:
In this article we test the accuracy of three platforms used in computational modelling: MatLab, Octave and Scilab, running on i386 architecture and three operating systems (Windows, Ubuntu and Mac OS). We submitted them to numerical tests using standard data sets and using the functions provided by each platform. A Monte Carlo study was conducted in some of the datasets in order to verify the sta…
▽ More
In this article we test the accuracy of three platforms used in computational modelling: MatLab, Octave and Scilab, running on i386 architecture and three operating systems (Windows, Ubuntu and Mac OS). We submitted them to numerical tests using standard data sets and using the functions provided by each platform. A Monte Carlo study was conducted in some of the datasets in order to verify the stability of the results with respect to small departures from the original input. We propose a set of operations which include the computation of matrix determinants and eigenvalues, whose results are known. We also used data provided by NIST (National Institute of Standards and Technology), a protocol which includes the computation of basic univariate statistics (mean, standard deviation and first-lag correlation), linear regression and extremes of probability distributions. The assessment was made comparing the results computed by the platforms with certified values, that is, known results, computing the number of correct significant digits.
△ Less
Submitted 8 July, 2012;
originally announced July 2012.
-
Generalized Statistical Complexity of SAR Imagery
Authors:
Eliana S. de Almeida,
Antonio Carlos de Medeiros,
Osvaldo A. Rosso,
Alejandro C. Frery
Abstract:
A new generalized Statistical Complexity Measure (SCM) was proposed by Rosso et al in 2010. It is a functional that captures the notions of order/disorder and of distance to an equilibrium distribution. The former is computed by a measure of entropy, while the latter depends on the definition of a stochastic divergence. When the scene is illuminated by coherent radiation, image data is corrupted b…
▽ More
A new generalized Statistical Complexity Measure (SCM) was proposed by Rosso et al in 2010. It is a functional that captures the notions of order/disorder and of distance to an equilibrium distribution. The former is computed by a measure of entropy, while the latter depends on the definition of a stochastic divergence. When the scene is illuminated by coherent radiation, image data is corrupted by speckle noise, as is the case of ultrasound-B, sonar, laser and Synthetic Aperture Radar (SAR) sensors. In the amplitude and intensity formats, this noise is multiplicative and non-Gaussian requiring, thus, specialized techniques for image processing and understanding. One of the most successful family of models for describing these images is the Multiplicative Model which leads, among other probability distributions, to the G0 law. This distribution has been validated in the literature as an expressive and tractable model, deserving the "universal" denomination for its ability to describe most types of targets. In order to compute the statistical complexity of a site in an image corrupted by speckle noise, we assume that the equilibrium distribution is that of fully developed speckle, namely the Gamma law in intensity format, which appears in areas with little or no texture. We use the Shannon entropy along with the Hellinger distance to measure the statistical complexity of intensity SAR images, and we show that it is an expressive feature capable of identifying many types of targets.
△ Less
Submitted 3 July, 2012;
originally announced July 2012.
-
Estudo de Viabilidade de uma Plataforma de Baixo Custo para Data Warehouse
Authors:
Eduardo Cunha de Almeida
Abstract:
Often corporations need tools to improve their decision making in a competitive market. In general, these tools are based on data warehouse platforms to mange and analyze large amounts of data. However, several of these corporations do not have enough resources to buy such platforms because of the high cost. This work is dedicated to a feasibility study of a low cost platform to data warehouse. We…
▽ More
Often corporations need tools to improve their decision making in a competitive market. In general, these tools are based on data warehouse platforms to mange and analyze large amounts of data. However, several of these corporations do not have enough resources to buy such platforms because of the high cost. This work is dedicated to a feasibility study of a low cost platform to data warehouse. We consider as a low cost platform the use of open source software like the PostgreSQL database system and the GNU/Linux operational system. We verify the feasibility of this platform by executing two benchmarks that simulate a data warehouse workload. The workload reproduces a multi-user environment with the execution of complex queries, which executes: aggregations, nested sub queries, multi joins, in-line views and more. Considering the results we were able to highlight some problems on the PostgreSQL database system, and discuss improvements in the context of data warehouse.
△ Less
Submitted 2 August, 2011;
originally announced August 2011.