A large scale empirical study of the impact of Spaghetti Code and Blob anti-patterns on program comprehension

Published in Information and Software Technology -- Elsevier, 2020

Several studies investigated the impact of anti-patterns (i.e., “poor” solutions to recurring design problems) during maintenance activities and reported that anti-patterns significantly affect the developers’ effort required to edit files. However, before developers edit files, they must understand the source code of the systems. This source code must be easy to understand by developers.

Download here

Dataset of Video Game Development Problems

Published in 17th International Conference on Mining Software Repositories (MSR20), October 5--6, 2020, Seoul, Republic of Korea, 2020

Different from traditional software development, there is little information about the software-engineering process and techniques in video-game development. One popular way to share knowledge among the video-game developers’ community is the publishing of postmortems, which are documents summarizing what happened during the video-game development project. However, these documents are written without formal structure and often providing disparate information. Through this paper, we provide developers and researchers with grounded dataset describing software-engineering problems in video-game development extracted from postmortems. We created the dataset using an iterative method through which we manually coded more than 200 postmortems spanning 20 years (1998 to 2018) and extracted 1,035 problems related to software engineering while maintaining traceability links to the postmortems. We grouped the problems in 20 different types. This dataset is useful to understand the problems faced by developers during video-game development, providing researchers and practitioners a starting point to study video-game development in the context of software engineering.

Download here

[PORTUGUESE] LoadTime is Money! Avaliação da PerformanceWeb de E-Commerces no Brasil

Published in Anais do XV Workshop em Desempenho de Sistemas Computacionais e de Comunicação, 2017

Performance of web applications is an under-explored topic by developers and academic work in Brazil. However, the access speed to pages is directly related to the user experience and, therefore, reflects directly the revenue from E-Commerces. This research presents an evaluation of performance of the 29 most accessed virtual stores in Brazil according to the Alexa ranking. There is a wide difference between the best and the worst placed. Moreover, the numbers show that the pages of Brazilian e-commerces, with few exceptions, are worse than the amounts considered appropriate by experts and / or global averages.

Download here

Are the old days gone? A survey on actual software engineering processes in video game industry

Published in Proceedings of the 5th International Workshop on Games and Software Engineering, 2016

In the past 10 years, several researches studied video game development process who proposed approaches to improve the way how games are developed. These approaches usually adopt agile methodologies because of claims that traditional practices and the waterfall process are gone. However, are the “old days” really gone in the game industry?

Download here

Software Engineering Processes in Game Development: a Survey about Brazilian Developers’ Experiences

Published in Proceedings of the XIV Brazilian Symposium on Computer Games and Digital Entertainment (SBGames), 2016

With the increasing participation of digital games in the economy and our society, the attention given to this subject in the academic field has also increased. However, the software engineering field and, more precisely, game development processes seems to be forgotten by researchers. In addition, game developers and big game companies prefer to keep their processes and methodologies to themselves. Studies and professional reports have shown the “ugly face” behind the game industry. Crunch Times and heavy pressure during the development are treated as normal practices in a game developer’s life. In this work, we surveyed 58 Brazilian game developers about the relations between game development process and problems in a software engineering context. We sought for answers based on empirical data collected from the questionnaire. The goal was to understand the area and provide insights to improve game development, pointing a direction for future researches. As a result, considering the Brazilian context, this paper presents three main contributions. The first shows that, on projects that used systematic approaches, regardless of the type, result in better products. The second presents that Delays, Unrealistic scope and Lack of documentation are the most common problems faced by game developers. Finally, we describe insights and considerations gathered from developers and literature studies, which may serve as a source of knowledge as well as characterization of the Brazilian game developers.

Download here