Marco Túlio de Oliveira Valente


Bolsa de Produtividade CNPq: 1D

Áreas de Pesquisa: Sala: 6310
Ramal: 5586
mtov@dcc.ufmg.br

Página pessoal     Lattes    Google scholar 


Informações resumidas do Currículo Lattes

Currículo Lattes atualizado em 26/08/2021

ORCID: https://orcid.org/0000-0002-8180-7548

Nome em citações bibliográficas: VALENTE, M. T. O.;Valente, Marco Tulio;VALENTE, MARCO TÚLIO;TULIO VALENTE, MARCO;VALENTE, MARCO TULIO O.


Formação acadêmica

Doutorado em Ciências da Computação na Universidade Federal de Minas Gerais em 2002
Mestrado em Ciências da Computação na Universidade Federal de Minas Gerais em 1995
Graduado em Informática na Universidade Federal de Viçosa em 1992

Projetos de pesquisa em andamento

2020 a AtualMineração em Larga Escala de Repositórios de Código Fonte - Bolsa de Produtividade em Pesquisa (CNPq)
Neste projeto de pesquisa, pretende-se utilizar grandes repositórios de software para aprender e derivar propriedades tanto de sistemas de software como de seus desenvolvedores. Mais especificamente, pretende-se: (1) identificar experts em tecnologias de software minerando em larga escala suas atividades em projetos de código-aberto; (2) derivar regras para migração de APIs por meio do aprendizado de transformações semelhantes realizadas em projetos de código-aberto; (3) investigar heurísticas para documentação automática de refactorings, incluindo documentação sobre a motivação que levou à aplicação do refactoring; (4) Tipagem de APIs REST, com o objetivo principal de proporcionar que usuários dessas APIs tenham benefícios semelhantes àqueles obtidos com GraphQL. Financiamento: CNPq (Processo: 308164/2019-9) - Valor financiado: R$ 105.600,00
Integrantes: Marco Tulio de Oliveira Valente (coordenador).
2017 a AtualAvaliação em Larga Escala de Práticas de Gerenciamento de Projetos de Código Aberto -- Programa Pesquisador Mineiro (PPM XI)
O objetivo central deste projeto é revelar e aperfeiçoar práticas de gerenciamento e monitoramento de projetos de código aberto, com ênfase em: (a) monitoramento de popularidade de sistemas open-source; (b) gerenciamento de fatores de riscos de sistemas open-source; (c) controle de breaking changes em APIs providas por bibliotecas e frameworks open-source. Financiamento: FAPEMIG (processo CEX-PPM-00490-17). Valor financiado: R$ 25.200,00
Integrantes: Marco Tulio de Oliveira Valente (coordenador).

Projetos de desenvolvimento em andamento

Veja todos os projetos no Currículo Lattes

Últimas publicações

Artigos em periódicos

Mining the Technical Roles of GitHub Users
2021. INFORMATION AND SOFTWARE TECHNOLOGY.
What skills do IT companies look for in new developers? A study with Stack Overflow jobs
2021. INFORMATION AND SOFTWARE TECHNOLOGY.
Are game engines software frameworks? A three-perspective study
2021. JOURNAL OF SYSTEMS AND SOFTWARE.
Is this GitHub project maintained? Measuring the level of maintenance activity of open-source projects
2020. INFORMATION AND SOFTWARE TECHNOLOGY.
Prioritizing versions for performance regression testing: The Pharo case
2020. SCIENCE OF COMPUTER PROGRAMMING.
You broke my code: understanding the motivations for breaking changes in APIs
2020. EMPIRICAL SOFTWARE ENGINEERING.
Algorithms for estimating truck factors: a comparative study
2019. SOFTWARE QUALITY JOURNAL.
Co-Change Patterns: A Large Scale Empirical Study
2019. JOURNAL OF SYSTEMS AND SOFTWARE.
Measuring and analyzing code authorship in 1+118 open source projects
2019. SCIENCE OF COMPUTER PROGRAMMING.
How Do Developers Promote Open Source Projects?
2019. COMPUTER.
How do developers react to API evolution? A large-scale empirical study
2018. SOFTWARE QUALITY JOURNAL (ONLINE).
AngularJS Performance: A Survey Study
2018. IEEE SOFTWARE.
On the use of replacement messages in API deprecation: An empirical study
2018. JOURNAL OF SYSTEMS AND SOFTWARE.
Who Can Maintain this Code? Assessing the Effectiveness of Repository-Mining Techniques for Identifying Software Maintainers
2018. IEEE SOFTWARE.
JMove: A novel heuristic and tool to detect move method refactoring opportunities
2018. JOURNAL OF SYSTEMS AND SOFTWARE.
What?s in a GitHub Star? Understanding Repository Starring Practices in a Social Coding Platform
2018. JOURNAL OF SYSTEMS AND SOFTWARE.
DCL 2.0: modular and reusable specification of architectural constraints
2017. JOURNAL OF THE BRAZILIAN COMPUTER SOCIETY (IMPRESSO).
Identifying Classes in Legacy JavaScript Code
2017. Journal of Software-Evolution and Process.
The shape of feature code: an analysis of twenty C-preprocessor-based systems
2017. Software and Systems Modeling (Print).
Architecture Conformance Checking in Dynamically Typed Languages.
2016. Journal of Object Technology.
Mining architectural violations from version history
2016. Empirical Software Engineering.
A Semi-automatic Approach for Extracting Software Product Lines
2012. IEEE Transactions on Software Engineering.
A dependency constraint language to manage object-oriented software architectures
2009. Software, Practice & Experience.

Trabalhos completos em congressos

Software engineering meets deep learning
2021. SAC '21: The 36th ACM/SIGAPP Symposium on Applied Computing.
Surveying the impacts of COVID-19 on the perceived productivity of Brazilian software developers
2020. SBES '20: 34th Brazilian Symposium on Software Engineering.
RefDiff4Go
2020. SBCARS '20: 14th Brazilian Symposium on Software Components, Architectures, and Reuse.
Refactoring Graphs: Assessing Refactoring over Time
2020. 2020 IEEE 27th International Conference on Software Analysis, Evolution and Reengineering (SANER).
REST vs GraphQL: A Controlled Experiment
2020. 2020 IEEE International Conference on Software Architecture (ICSA).
On the abandonment and survival of open source projects: An empirical investigation
2019. 2019 ACM/IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM).
Beyond Textual Issues
2019. the XXXIII Brazilian Symposium.
Identifying Experts in Software Libraries and Frameworks Among GitHub Users
2019. 2019 IEEE/ACM 16th International Conference on Mining Software Repositories (MSR).
Migrating to GraphQL: A Practical Assessment
2019. 2019 IEEE 26th International Conference on Software Analysis, Evolution and Reengineering (SANER).
Why and how Java developers break APIs
2018. 2018 IEEE 25th International Conference on Software Analysis, Evolution and Reengineering (SANER).
Assessing the threat of untracked changes in software evolution
2018. the 40th International Conference.
Why we engage in FLOSS
2018. the 11th International Workshop.
Feature location benchmark with argoUML SPL
2018. Proceeedings of the 22nd International Conference.
Identifying unmaintained projects in github
2018. the 12th ACM/IEEE International Symposium.
A Comparison of Three Algorithms for Computing Truck Factors
2017. 2017 IEEE/ACM 25th International Conference on Program Comprehension (ICPC).
Historical and impact analysis of API breaking changes: A large-scale study
2017. 2017 IEEE 24th International Conference on Software Analysis, Evolution and Reengineering (SANER).
How Clear is Your Code? An Empirical Study with Programming Challenges
2017. XX Congresso Ibero-americano de Engenharia de Software (CIbSE).
RefDiff: Detecting Refactorings in Version Histories
2017. 2017 IEEE/ACM 14th International Conference on Mining Software Repositories (MSR).
Why modern open source projects fail
2017. the 2017 11th Joint Meeting.
Do Developers Deprecate APIs with Replacement Messages? A Large-Scale Analysis on Java Systems
2016. 2016 IEEE 23rd International Conference on Software Analysis, Evolution, and Reengineering (SANER).
Learning from Source Code History to Identify Performance Failures
2016. the 7th ACM/SPEC.
Does Technical Debt Lead to the Rejection of Pull Requests?
2016. XII Simpósio Brasileiro de Sistemas de Informação (SBSI).
An Empirical Study on Recommendations of Similar Bugs
2016. 2016 IEEE 23rd International Conference on Software Analysis, Evolution and Reengineering (SANER).
A novel approach for estimating Truck Factors
2016. 2016 IEEE 24th International Conference on Program Comprehension (ICPC).
AngularJS in the wild: a survey with 460 developers
2016. the 7th International Workshop.
Predicting the Popularity of GitHub Repositories
2016. the The 12th International Conference.
Why we refactor? confessions of GitHub contributors
2016. the 2016 24th ACM SIGSOFT International Symposium.
When should internal interfaces be promoted to public?
2016. the 2016 24th ACM SIGSOFT International Symposium.
Modular Specification of Architectural Constraints
2016. 2016 X Brazilian Symposium on Software Components, Architectures and Reuse (SBCARS).
Perceptions of 395 Developers on Software Architecture's Documentation and Conformance
2016. 2016 X Brazilian Symposium on Software Components, Architectures and Reuse (SBCARS).
A Comparative Study of Algorithms for Estimating Truck Factor
2016. 2016 X Brazilian Symposium on Software Components, Architectures and Reuse (SBCARS).
A Lightweight Remodularization Process Based on Structural Similarity
2016. 2016 X Brazilian Symposium on Software Components, Architectures and Reuse (SBCARS).
Identifying Utility Functions in Java and JavaScript
2016. 2016 X Brazilian Symposium on Software Components, Architectures and Reuse (SBCARS).
Understanding the Factors That Impact the Popularity of GitHub Repositories
2016. 2016 IEEE International Conference on Software Maintenance and Evolution (ICSME).
Characterizing Bug Workflows in Mozilla Firefox
2016. the 30th Brazilian Symposium.

Resumos expandidos em congressos

GoCity: Code City for Go
2019. 2019 IEEE 26th International Conference on Software Analysis, Evolution and Reengineering (SANER).
Uma Análise da Produção Científica Brasileira em Conferências de Manutenção e Evolução de Software.
2018. 6th Brazilian Workshop on Software Visualization, Evolution and Maintenance (VEM).
APIDiff: Detecting API breaking changes
2018. 2018 IEEE 25th International Conference on Software Analysis, Evolution and Reengineering (SANER).
Monorepos: A Multivocal Literature Review
2018. 6th Brazilian Workshop on Software Visualization, Evolution and Maintenance (VEM).
Microservices in Practice: A Survey Study
2018. 6th Brazilian Workshop on Software Visualization, Evolution and Maintenance (VEM).
GitHub REST API vs GHTorrent vs GitHub Archive: A Comparative Study
2018. 6th Brazilian Workshop on Software Visualization, Evolution and Maintenance (VEM).
Statically identifying class dependencies in legacy JavaScript systems: First results
2017. 2017 IEEE 24th International Conference on Software Analysis, Evolution and Reengineering (SANER).
Why do we break APIs? First answers from developers
2017. 2017 IEEE 24th International Conference on Software Analysis, Evolution and Reengineering (SANER).
Como Pesquisadores Usam o Dataset GHTorrent?
2017. 5th Brazilian Workshop on Software Visualization, Evolution and Maintenance (VEM).
Caracterização do Papel Desempenhado por Desenvolvedores Responsáveis pelo Truck Factor de Projetos de Software
2017. 5th Brazilian Workshop on Software Visualization, Evolution and Maintenance (VEM).
Uma Caracterização em Larga Escala da Arquitetura de Sistemas Docker
2017. 5th Brazilian Workshop on Software Visualization, Evolution and Maintenance (VEM).
Um Estudo em Larga Escala sobre o Uso de APIs Internas
2016. 4th Brazilian Workshop on Software Visualization, Evolution and Maintenance (VEM).
Inferência de Tipos em Ruby: Uma Comparação entre Técnicas de Análise Estática e Dinâmica
2016. 4th Brazilian Workshop on Software Visualization, Evolution and Maintenance (VEM).
Distribuição de Conhecimento de Código em Times de Desenvolvimento -- uma Análise Arquitetural
2016. 4th Brazilian Workshop on Software Visualization, Evolution and Maintenance.
Uma Ferramenta para Conversão de Código JavaScript Orientado a Objetos em ECMA 5 para ECMA 6
2016. 4th Brazilian Workshop on Software Visualization, Evolution and Maintenance (VEM).
Um Estudo em Larga Escala sobre Estabilidade de APIs
2016. 4th Brazilian Workshop on Software Visualization, Evolution and Maintenance (VEM).
JAVALI: Uma Ferramenta para Análise de Popularidade de APIs Java
2016. Sessão de ferramentas do CBSoft.
Identifying Utility Functions Using Random Forests
2016. 2016 IEEE 23rd International Conference on Software Analysis, Evolution, and Reengineering (SANER).

Resumos em congressos

Modelo de Gestão de Demandas de Manutenção de Software: a Experiência da PUC Minas
2009. VI Workshop de Manutenção de Software Moderna.
Uma Extensão de Pascal Orientada a Objetos
1992. XV Congresso Nacional de Matemática Aplicada e Computacional.
EdTeX: Um Editor de Textos para o LaTeX
1991. V Simpósio Brasileiro de Engenharia de Software - Feira de Ferramentas.

Veja todas as publicações no Currículo Lattes

Orientações em andamento

Mestrado

Larissa Bicalho. Tema a definir. Início: 2021. Universidade Federal de Minas Gerais (Orientador principal)

Doutorado

Fabio Ferreira. Mineração de Repositórios de Software. Início: 2019. Universidade Federal de Minas Gerais (Orientador principal)
Aline Norberta de Brito. Mining software repositories. Início: 2018. Universidade Federal de Minas Gerais (Orientador principal)
José Laerte Pires Xavier Júnior. Mining Software Repositories. Início: 2017. Universidade Federal de Minas Gerais (Orientador principal)
Gleison Brito Batista. TRE: Typing REST APIs by Example. Início: 2016. Universidade Federal de Minas Gerais (Orientador principal)

Veja todas as orientações no Currículo Lattes