218 citations · 448 across the 38 of their papers we have counts for
42 papers
Type Hints in Python Libraries and Frameworks: An Empirical Analysis of Adoption and Maintenance
Thiago Roberto Magalhães, Fabio Petrillo, João Eduardo Montandon
Context: In Python, type hints allow developers to annotate variables and functions with explicit type information, improving code clarity and reliability. Although type hints are…
SPIRT: A Fault-Tolerant and Reliable Peer-to-Peer Serverless ML Training Architecture
Amine Barrak, Mayssa Jaziri, Ranim Trabelsi +2
The advent of serverless computing has ushered in notable advancements in distributed machine learning, particularly within parameter server-based architectures. Yet, the integrati…
Exploring the Impact of Serverless Computing on Peer To Peer Training Machine Learning
Amine Barrak, Ranim Trabelsi, Fehmi Jaafar +1
The increasing demand for computational power in big data and machine learning has driven the development of distributed training methodologies. Among these, peer-to-peer (P2P) net…
Assessing Video Game Balance using Autonomous Agents
Cristiano Politowski, Fabio Petrillo, Ghizlane ElBoussaidi +2
As the complexity and scope of games increase, game testing, also called playtesting, becomes an essential activity to ensure the quality of video games. Yet, the manual, ad-hoc na…
An Exploratory Approach for Game Engine Architecture Recovery
Gabriel C. Ullmann, Yann-Gaël Guéhéneuc, Fabio Petrillo +2
Game engines provide video game developers with a wide range of fundamental subsystems for creating games, such as 2D/3D graphics rendering, input device management, and audio play…
Architecting Peer-to-Peer Serverless Distributed Machine Learning Training for Improved Fault Tolerance
Amine Barrak, Fabio Petrillo, Fehmi Jaafar
Distributed Machine Learning refers to the practice of training a model on multiple computers or devices that can be called nodes. Additionally, serverless computing is a new parad…
An Approach to Build Consistent Software Architecture Diagrams Using Devops System Descriptors
Jalves Nicacio, Fabio Petrillo
System architecture diagrams play an essential role in understanding system architecture. They encourage more active discussion among participants and make it easier to recall syst…
Game Engine Comparative Anatomy
Gabriel C. Ullmann, Cristiano Politowski, Yann-Gaël Guéhéneuc +1
Video game developers use game engines as a tool to manage complex aspects of game development. While engines play a big role in the success of games, to the best of our knowledge,…
Towards Continuous Systematic Literature Review in Software Engineering
Bianca Minetto Napoleão, Fabio Petrillo, Sylvain Hallé +1
Context: New scientific evidence continuously arises with advances in Software Engineering (SE) research. Conventionally, Systematic Literature Reviews (SLRs) are not updated or up…
Video Game Project Management Anti-patterns
Gabriel C. Ullmann, Cristiano Politowski, Yann-Gaël Guéhéneuc +2
Project Management anti-patterns are well-documented in the software-engineering literature, and studying them allows understanding their impacts on teams and projects. The video g…
Towards Automated Video Game Testing: Still a Long Way to Go
Cristiano Politowski, Yann-Gaël Guéhéneuc, Fabio Petrillo
As the complexity and scope of game development increase, playtesting remains an essential activity to ensure the quality of video games. Yet, the manual, ad-hoc nature of playtest…
Log severity level classification: an approach for systems in production
Eduardo Mendes, Fabio Petrillo
Context: Logs are often the primary source of information for system developers and operations engineers to understand and diagnose the behavior of a software system in production.…
Log severity levels matter: A multivocal mapping
Eduardo Mendes, Fabio Petrillo
The choice of log severity level can be challenging and cause problems in producing reliable logging data. However, there is a lack of specifications and practical guidelines to su…
Mapping breakpoint types: an exploratory study
Eduardo Andreetta Fontana, Fabio Petrillo
Debugging is a relevant task for finding bugs during software development, maintenance, and evolution. During debugging, developers use modern IDE debuggers to analyze variables, s…
Continuous Systematic Literature Review: An Approach for Open Science
Bianca Minetto Napoleão, Fabio Petrillo, Sylvain Hallé
Systematic Literature Reviews (SLRs) play an important role in the Evidence-Based Software Engineering scenario. With the advance of the computer science field and the growth of re…
Towards auto-completion on software requirements statements
Carlos Alberto dos Santos, Fabio Petrillo
As software systems become more complex, modern software development requires more attention to human perspectives, and active participation of development teams in requirements el…
Towards Logging Noisiness Theory: quality aspects to characterize unwanted log entries
Eduardo Mendes, Fabio Petrillo
Context: Logging tasks track the system's functioning by keeping records of evidence that have been analyzed by monitoring and observability activities. For these activities to be…
What Makes a Game High-rated? Towards Factors of Video Game Success
Gabriel Ullmann, Cristiano Politowski, Yann-Gäel Guéhéneuc +1
As the video game market grows larger, it becomes harder to stand out from the crowd. Launching a successful game involves different aspects. But what are they? In this paper, we i…
Towards Automated Acceptance testing for industrial robots
Marcela G. dos Santos, Fabio Petrillo
Industrial robots are important machines applied in numerous modern industries that execute repetitive tasks with high accuracy, replacing or supporting dangerous jobs. In this kin…
Towards improving architectural diagram consistency using system descriptors
Jalves Nicacio, Fabio Petrillo
Communication between practitioners is essential for the system's quality in the DevOps context. To improve this communication, practitioners often use informal diagrams to represe…
A Survey of Video Game Testing
Cristiano Politowski, Fabio Petrillo, Yann-Gäel Guéhéneuc
Video-game projects are notorious for having day-one bugs, no matter how big their budget or team size. The quality of a game is essential for its success. This quality could be as…
Software Engineering for Robotic Systems:a systematic mapping study
Marcela G. dos Santos, Fabio Petrillo
Robots are being applied in a vast range of fields, leading researchers and practitioners to write tasks more complex than in the past. The robot software complexity increases the…
What Skills do IT Companies look for in New Developers? A Study with Stack Overflow Jobs
João Eduardo Montandon, Cristiano Politowski, Luciana Lourdes Silva +3
Context: There is a growing demand for information on how IT companies look for candidates to their open positions. Objective: This paper investigates which hard and soft skills ar…
Applying system descriptors to address ambiguity on deployment diagrams
Jalves Nicacio, Fabio Petrillo
Communication between practitioners is essential for product quality in the DevOps context. This communication often takes place through deployment diagrams of a system under devel…