Mostrar registro simples

dc.contributor.advisorFontoura, Lisandra Manzoni
dc.creatorRossi, Bruno Budel
dc.date.accessioned2023-02-23T14:56:36Z
dc.date.available2023-02-23T14:56:36Z
dc.date.issued2023-02-15
dc.date.submitted2023-02-15
dc.identifier.urihttp://repositorio.ufsm.br/handle/1/27881
dc.descriptionTrabalho de conclusão de curso (graduação) - Universidade Federal de Santa Maria, Centro de Tecnologia, Curso de Sistemas de Informação, RS, 2023.por
dc.description.abstractThe concern about how software developers use their time and attempts to automate manual processes have taken on a greater proportion every year. In Software Engineering, recommender systems help developers find information that should be known, evaluate alternatives and aid data navigation. Currently, Git-based shared code repositories are part of everyday life for most software developers. These repositories make several functionalities available to their users, among them, issues are a way to document problems, request some documentation, provide feedback and track the workflow on a problem, however, active code repositories tend to generate many issues, which which in turn ends up making the task of recovering relevant issues something more costly for its users. The purpose of this work is the elaboration of a recommendation system capable of analyzing issues, using unsupervised machine learning, through the Word2Vec natural language processing algorithm, with the objective of facilitating the search for issues and assisting in decision making based on stored issues. in a code repository. To achieve this goal, it was necessary to extract the issues from the code repository, pre-process the previously defined fields, create unigram, bigram and trigram dictionaries and finally train the neural network used by the Word2Vec algorithm, using as input previously created dictionaries. After the model has already been trained, the user will be able to search for issues through a data entry, this entry may contain one, two or three words and should return a set of issues more semantically similar to the entry. The evaluations showed that the recommendation system makes relevant suggestions, helps with navigation and facilitates decision-making regarding issues in code repositories.eng
dc.languageporpor
dc.publisherUniversidade Federal de Santa Mariapor
dc.rightsAcesso Abertopor
dc.rightsAttribution-NonCommercial-NoDerivatives 4.0 International*
dc.rights.urihttp://creativecommons.org/licenses/by-nc-nd/4.0/*
dc.subjectSistemas de recomendaçãopor
dc.subjectProcessamento de Linguagem Naturalpor
dc.subjectAprendizado de Máquina Não Supervisionadopor
dc.subjectRedes Neuraispor
dc.subjectIssueseng
dc.subjectRecommender Systemeng
dc.subjectNatural Language Processingeng
dc.subjectUnsupervised Machine Learningeng
dc.subjectNeural Networkeng
dc.titleSistema inteligente de busca de issues em repositórios de códigopor
dc.title.alternativeIntelligent system for searching issues in code repositoryeng
dc.typeTrabalho de Conclusão de Curso de Graduaçãopor
dc.degree.localSanta Maria, RS, Brasil.por
dc.degree.graduationSistemas de Informaçãopor
dc.description.resumoA preocupação em como desenvolvedores de software usam seu tempo e as tentativas de automatizar processos manuais têm tomado uma proporção maior a cada ano. Em Engenharia de Software, sistemas de recomendação auxiliam desenvolvedores a encontrar informações que se deve conhecer, avaliar alternativas e auxiliar na navegação de dados. Atualmente, repositórios de código compartilhado com base em Git fazem parte do dia a dia de grande parte dos desenvolvedores de software. Estes repositórios disponibilizam várias funcionalidades aos seus usuários, dentre essas, as issues são uma maneira de documentar problemas, solicitar alguma documentação, prover feedbacks e rastrear o fluxo de trabalho sobre um problema, entretanto, repositórios de código ativos tendem a gerar muitas issues, o que por sua vez acaba tornando a tarefa de recuperar issues relevantes algo mais custoso aos seus usuários. A proposta deste trabalho é a elaboração de um sistema de recomendação capaz de analisar issues, utilizando aprendizado de máquina não supervisionado, através do algoritmo de processamento de linguagem natural Word2Vec, com objetivo de facilitar a busca de issues e auxiliar na tomada de decisão a partir de issues armazenadas em um repositório de código. Para atingir este objetivo, foi necessário extrair as issues do repositório de código, realizar o pré-processamento dos campos previamente definidos, criar dicionários de unigram, bigram e trigram e, por fim, realizar o treinamento da rede neural utilizada pelo algoritmo Word2Vec, utilizando como entrada os dicionários criados anteriormente. Após o modelo já treinado, o usuário será capaz de buscar issues através de uma entrada de dados, esta entrada pode conter uma, duas ou três palavras e deve obter como retorno um conjunto de issues mais similar semanticamente com a entrada. As avaliações mostraram que o sistema de recomendação realiza sugestões relevantes, auxilia na navegação e facilita a tomada de decisão no âmbito de issues em repositórios de código.por
dc.publisher.countryBrasilpor
dc.publisher.initialsUFSMpor
dc.subject.cnpqCNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO::SISTEMAS DE INFORMACAOpor
dc.publisher.unidadeCentro de Tecnologiapor


Arquivos deste item

Thumbnail
Thumbnail

Este item aparece na(s) seguinte(s) coleção(s)

Mostrar registro simples

Acesso Aberto
Exceto quando indicado o contrário, a licença deste item é descrito como Acesso Aberto