Mining GitLab repositories for software development activities

Bibliographic Details
Main Author: Amores, Diogo Alexandre Santos
Publication Date: 2021
Format: Master thesis
Language: eng
Source: Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
Download full: https://hdl.handle.net/10316/97983
Summary: Dissertação de Mestrado em Engenharia Informática apresentada à Faculdade de Ciências e Tecnologia
id RCAP_8c92d79a7579c5b60ff1fd87d9e638c3
oai_identifier_str oai:estudogeral.uc.pt:10316/97983
network_acronym_str RCAP
network_name_str Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
repository_id_str https://opendoar.ac.uk/repository/7160
spelling Mining GitLab repositories for software development activitiesMining GitLab repositories for software development activitiesBusiness ManagementMining Software RepositoriesProcess ManagementEvent LogsSoftware DevelopmentDesenvolvimento de SoftwareLogs de EventoBusiness ManagementProcess ManagementMining Software RepositoriesDissertação de Mestrado em Engenharia Informática apresentada à Faculdade de Ciências e TecnologiaCom a crescente complexidade da sociedade moderna, as organizações tornam-se cada vez mais conscientes das melhorias potenciadas por Process Management para melhor fluxos de trabalho e otimizar recursos. Mining Software Repositories, inicialmente um tópico de pesquisa obscuro, cresceu para fornecer contribuições inestimáveis no campo de process management. Estas contribuições foram possibilitadas pelo aumento no uso de repositórios de software, dados de evento disponíveis e projetos open-source.Em particular, repositórios de software como GitLab e GitHub contêm uma quantidade vasta de dados que são considerados de particular interesse para cientistas neste campo. Mining Software Repositories visa alterar a função puramente de armazenação destes repositórios para ferramentas que possam ajudar a moldar e melhorar o processo de desenvolvimento de software. Os dados que estes repositórios contêm fornecem informação sobre os diferentes estados de um projeto durante o desenvolvimento, como o histórico de alterações feitas em cada ficheiro bem como os autores responsáveis. Devido a isto, estes repositórios apresentam um excelente ponto de partida para a análise de projetos e fornecem uma oportunidade para melhor entender como um projeto está a ser conduzido, se as metodologias estabelecidas, planos e distribuição de trabalho são comparáveis à execução prevista.O objetivo principal da presente tese é explorar estes repositórios de software de modo a extrair informação que pode ser útil para monitorizar projetos de software. Este tipo de informação pode ser extremamente valiosa de modo a melhorar a eficácia de equipas de desenvolvimento e identificar eventuais problemas com a devida antecedência, a fim de melhorar a qualidade do software produzido. Estes dados podem também fornecer informações relativas às práticas de desenvolvimento de membros individuais de uma equipa.Para atingir este objetivo, uma ferramente que usa repositórios git (como GitHub e GitLab) como fonte principal para extrair logs de evento foi desenvolvida pelo autor. O objetivo desta ferramenta é extrair estes dados e estabelecer um método para categorizar os diferentes conteúdos do repositório em atividades de desenvolvimento de software (como Code ou Test). Após esta categorização, vários aspetos dos logs serão analisados e exibidos ao usuário através de uma interface visual simples e acessível.With the growing complexity of modern societies, organizations become increasingly conscious of the improvements made possible by Process Management to improve workflows and optimize resources. Mining Software Repositories, initially an obscure research topic, has grown to provide invaluable contributions to the field of process management, made only possible by the exponential increase in the usage of software repositories, available event data, and open-source projects.In particular, software repositories such as GitLab and GitHub contain vast data that is considered of particular interest to researchers in this field. Mining Software Repositories aims to shift these repositories from purely storage spaces to actual tools that help in shaping and improving the development process. The data these repositories contain provide information about the different states of the project during development such as the history of every change made to every file and the responsible contributors. Due to this, these repositories present an excellent starting point for project analysis and provide an opportunity to better understand how a project is being conducted, if established methodologies, schedules, and if work distribution is comparable to the envisioned execution.The primary goal of this thesis is to mine these software repositories and extract information that can be useful for monitoring software projects. This information can prove extremely valuable in order to improve the effectiveness of teams and identify issues early in order to improve the quality of the produced software. It can also provide insight into the development practices of individual team members.To achieve this goal, a tool that uses git-based repositories (such as GitHub and GitLab) as the main source to extract event logs was designed and built by the author. The aim of this tool is to extract this data and establish a method to categorize the different contents of these repositories into software development activities (such as Code or Test). After this categorization, multiple aspects of the log will be analyzed and displayed to the user via a user-friendly visual interface.Universidade de Coimbra - Bolsa de Iniciação à Investigação no âmbito do projeto CISUC-SSE 7175322021-11-10info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesishttps://hdl.handle.net/10316/97983https://hdl.handle.net/10316/97983TID:202921140engAmores, Diogo Alexandre Santosinfo:eu-repo/semantics/openAccessreponame:Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiainstacron:RCAAP2022-05-25T03:32:22Zoai:estudogeral.uc.pt:10316/97983Portal AgregadorONGhttps://www.rcaap.pt/oai/openaireinfo@rcaap.ptopendoar:https://opendoar.ac.uk/repository/71602025-05-29T05:46:49.758245Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologiafalse
dc.title.none.fl_str_mv Mining GitLab repositories for software development activities
Mining GitLab repositories for software development activities
title Mining GitLab repositories for software development activities
spellingShingle Mining GitLab repositories for software development activities
Amores, Diogo Alexandre Santos
Business Management
Mining Software Repositories
Process Management
Event Logs
Software Development
Desenvolvimento de Software
Logs de Evento
Business Management
Process Management
Mining Software Repositories
title_short Mining GitLab repositories for software development activities
title_full Mining GitLab repositories for software development activities
title_fullStr Mining GitLab repositories for software development activities
title_full_unstemmed Mining GitLab repositories for software development activities
title_sort Mining GitLab repositories for software development activities
author Amores, Diogo Alexandre Santos
author_facet Amores, Diogo Alexandre Santos
author_role author
dc.contributor.author.fl_str_mv Amores, Diogo Alexandre Santos
dc.subject.por.fl_str_mv Business Management
Mining Software Repositories
Process Management
Event Logs
Software Development
Desenvolvimento de Software
Logs de Evento
Business Management
Process Management
Mining Software Repositories
topic Business Management
Mining Software Repositories
Process Management
Event Logs
Software Development
Desenvolvimento de Software
Logs de Evento
Business Management
Process Management
Mining Software Repositories
description Dissertação de Mestrado em Engenharia Informática apresentada à Faculdade de Ciências e Tecnologia
publishDate 2021
dc.date.none.fl_str_mv 2021-11-10
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv https://hdl.handle.net/10316/97983
https://hdl.handle.net/10316/97983
TID:202921140
url https://hdl.handle.net/10316/97983
identifier_str_mv TID:202921140
dc.language.iso.fl_str_mv eng
language eng
dc.rights.driver.fl_str_mv info:eu-repo/semantics/openAccess
eu_rights_str_mv openAccess
dc.source.none.fl_str_mv reponame:Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
instname:FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
instacron:RCAAP
instname_str FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
instacron_str RCAAP
institution RCAAP
reponame_str Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
collection Repositórios Científicos de Acesso Aberto de Portugal (RCAAP)
repository.name.fl_str_mv Repositórios Científicos de Acesso Aberto de Portugal (RCAAP) - FCCN, serviços digitais da FCT – Fundação para a Ciência e a Tecnologia
repository.mail.fl_str_mv info@rcaap.pt
_version_ 1833602468994351104