Mineração de soluções relevantes para tarefas de programação a partir de resultados de mecanismos de busca

Detalhes bibliográficos
Autor(a) principal: Rocha, Adriano Mendonça
Data de Publicação: 2022
Tipo de documento: Tese
Idioma: eng
Título da fonte: Repositório Institucional da UFU
Texto Completo: https://repositorio.ufu.br/handle/123456789/36237
https://doi.org/10.14393/ufu.te.2022.565
Resumo: Software development is a knowledge-intensive activity. Official documentation for developers may not be sufficient for all developer needs. Searching for information on the web is a usual practice, but finding really useful information may be challenging, because the best solutions are not always among the first ranked pages. So, developers have to read and discard irrelevant pages, that is, pages that do not have code examples or that have content not focused on the desired solution. This work aims to understand how the ranking quality returned by search engines can influence the performance of developers when solving programming tasks, and to propose an approach to mine relevant solutions for programming tasks from search engines results. In a preliminary analysis, we evaluated the top 20 pages returned by Google’s search engine, for 10 different queries, and observed that only 31% of the pages evaluated are relevant to developers. Therefore, we carried out a first study with developers that showed that they spent less time solving programming tasks, when using a higher quality ranking (on average, developers spent around 4 minutes more during solving tasks, when using a lower quality ranking). In a second study, we proposed and evaluated three different approaches to mine relevant pages returned by the search engine. The Google search engine that was used as a baseline returns a fair number of pages that are irrelevant to developers. The filters we propose are effective in removing irrelevant pages, in this way, a better quality ranking is generated. Developers can benefit from these filters in order to increase their productivity while performing programming tasks.
id UFU_498863a7f918642d0d9b7fe5c4a29686
oai_identifier_str oai:repositorio.ufu.br:123456789/36237
network_acronym_str UFU
network_name_str Repositório Institucional da UFU
repository_id_str
spelling Mineração de soluções relevantes para tarefas de programação a partir de resultados de mecanismos de buscaMining relevant solutions for programming tasks from search engine resultsTarefas de ProgramaçãoProgramming TasksMineração de Soluções RelevantesMining Relevant SolutionsMotores de BuscaSearch EnginesCNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAOComputaçãoEngenharia de sistemasFerramentas de busca na WebProgramadores de computadorSoftware development is a knowledge-intensive activity. Official documentation for developers may not be sufficient for all developer needs. Searching for information on the web is a usual practice, but finding really useful information may be challenging, because the best solutions are not always among the first ranked pages. So, developers have to read and discard irrelevant pages, that is, pages that do not have code examples or that have content not focused on the desired solution. This work aims to understand how the ranking quality returned by search engines can influence the performance of developers when solving programming tasks, and to propose an approach to mine relevant solutions for programming tasks from search engines results. In a preliminary analysis, we evaluated the top 20 pages returned by Google’s search engine, for 10 different queries, and observed that only 31% of the pages evaluated are relevant to developers. Therefore, we carried out a first study with developers that showed that they spent less time solving programming tasks, when using a higher quality ranking (on average, developers spent around 4 minutes more during solving tasks, when using a lower quality ranking). In a second study, we proposed and evaluated three different approaches to mine relevant pages returned by the search engine. The Google search engine that was used as a baseline returns a fair number of pages that are irrelevant to developers. The filters we propose are effective in removing irrelevant pages, in this way, a better quality ranking is generated. Developers can benefit from these filters in order to increase their productivity while performing programming tasks.Tese (Doutorado)O desenvolvimento de software é uma atividade intensiva em conhecimento. Documentações oficiais para desenvolvedores podem não ser suficientes para todas as suas necessidades. A busca de informações na Web é uma prática usual, mas encontrar informações realmente úteis pode ser um desafio, pois nem sempre as melhores soluções estão entre as primeiras páginas ranqueadas. Assim, os desenvolvedores têm que ler e descartar páginas irrelevantes, ou seja, páginas que não possuem exemplos de código ou que possuem conteúdo não focado na solução desejada. Este trabalho tem como objetivo entender como a qualidade do ranking retornado por mecanismos de busca pode influenciar o desempenho de desenvolvedores durante a resolução de tarefas de programação, e propor uma abordagem para minerar soluções relevantes para tarefas de programação a partir de resultados de buscas. Em uma análise preliminar, avaliamos as 20 principais páginas retornadas pelo mecanismo de pesquisa do Google, para 10 consultas diferentes, e observamos que apenas 31% das páginas avaliadas são relevantes para desenvolvedores. Diante disso, realizamos um primeiro estudo com desenvolvedores que mostrou que estes gastaram menos tempo durante a resolução de tarefas de programação, ao utilizarem um ranking de qualidade superior (em média, os desenvolvedores gastaram por volta de 4 minutos a mais, durante a resolução das tarefas, ao utilizarem um ranking de qualidade inferior). Em um segundo estudo, propusemos e avaliamos três abordagens diferentes para minerar páginas relevantes retornadas pelo mecanismo de busca. Os filtros propostos se mostraram eficazes na remoção de páginas irrelevantes, e desta forma, melhoraram a qualidade do ranking. Concluímos que desenvolvedores podem se beneficiar desses filtros, de maneira a aumentar sua produtividade durante realizações de tarefas de programação.Universidade Federal de UberlândiaBrasilPrograma de Pós-graduação em Ciência da ComputaçãoMaia, Marcelo de Almeidahttp://lattes.cnpq.br/4915659948263445Figueiredo, Eduardohttp://lattes.cnpq.br/1265706528850746Kulesza, Uiráhttp://lattes.cnpq.br/0189095897739979Dorça, Fabiano Azevedohttp://lattes.cnpq.br/3944579737930998Silva, Flávio de Oliveirahttp://lattes.cnpq.br/3190608911887258Rocha, Adriano Mendonça2022-10-05T13:46:27Z2022-10-05T13:46:27Z2022-09-29info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/doctoralThesisapplication/pdfROCHA, Adriano Mendonça. Mineração de soluções relevantes para tarefas de programação a partir de resultados de mecanismos de busca. 2022. 91 f. Tese (Doutorado em Ciência da Computação) - Universidade Federal de Uberlândia, Uberlândia, 2022. DOI https://doi.org/10.14393/ufu.te.2022.565.https://repositorio.ufu.br/handle/123456789/36237https://doi.org/10.14393/ufu.te.2022.565enghttp://creativecommons.org/licenses/by-nc-nd/3.0/us/info:eu-repo/semantics/openAccessreponame:Repositório Institucional da UFUinstname:Universidade Federal de Uberlândia (UFU)instacron:UFU2022-10-06T06:18:17Zoai:repositorio.ufu.br:123456789/36237Repositório InstitucionalONGhttp://repositorio.ufu.br/oai/requestdiinf@dirbi.ufu.bropendoar:2022-10-06T06:18:17Repositório Institucional da UFU - Universidade Federal de Uberlândia (UFU)false
dc.title.none.fl_str_mv Mineração de soluções relevantes para tarefas de programação a partir de resultados de mecanismos de busca
Mining relevant solutions for programming tasks from search engine results
title Mineração de soluções relevantes para tarefas de programação a partir de resultados de mecanismos de busca
spellingShingle Mineração de soluções relevantes para tarefas de programação a partir de resultados de mecanismos de busca
Rocha, Adriano Mendonça
Tarefas de Programação
Programming Tasks
Mineração de Soluções Relevantes
Mining Relevant Solutions
Motores de Busca
Search Engines
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
Computação
Engenharia de sistemas
Ferramentas de busca na Web
Programadores de computador
title_short Mineração de soluções relevantes para tarefas de programação a partir de resultados de mecanismos de busca
title_full Mineração de soluções relevantes para tarefas de programação a partir de resultados de mecanismos de busca
title_fullStr Mineração de soluções relevantes para tarefas de programação a partir de resultados de mecanismos de busca
title_full_unstemmed Mineração de soluções relevantes para tarefas de programação a partir de resultados de mecanismos de busca
title_sort Mineração de soluções relevantes para tarefas de programação a partir de resultados de mecanismos de busca
author Rocha, Adriano Mendonça
author_facet Rocha, Adriano Mendonça
author_role author
dc.contributor.none.fl_str_mv Maia, Marcelo de Almeida
http://lattes.cnpq.br/4915659948263445
Figueiredo, Eduardo
http://lattes.cnpq.br/1265706528850746
Kulesza, Uirá
http://lattes.cnpq.br/0189095897739979
Dorça, Fabiano Azevedo
http://lattes.cnpq.br/3944579737930998
Silva, Flávio de Oliveira
http://lattes.cnpq.br/3190608911887258
dc.contributor.author.fl_str_mv Rocha, Adriano Mendonça
dc.subject.por.fl_str_mv Tarefas de Programação
Programming Tasks
Mineração de Soluções Relevantes
Mining Relevant Solutions
Motores de Busca
Search Engines
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
Computação
Engenharia de sistemas
Ferramentas de busca na Web
Programadores de computador
topic Tarefas de Programação
Programming Tasks
Mineração de Soluções Relevantes
Mining Relevant Solutions
Motores de Busca
Search Engines
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
Computação
Engenharia de sistemas
Ferramentas de busca na Web
Programadores de computador
description Software development is a knowledge-intensive activity. Official documentation for developers may not be sufficient for all developer needs. Searching for information on the web is a usual practice, but finding really useful information may be challenging, because the best solutions are not always among the first ranked pages. So, developers have to read and discard irrelevant pages, that is, pages that do not have code examples or that have content not focused on the desired solution. This work aims to understand how the ranking quality returned by search engines can influence the performance of developers when solving programming tasks, and to propose an approach to mine relevant solutions for programming tasks from search engines results. In a preliminary analysis, we evaluated the top 20 pages returned by Google’s search engine, for 10 different queries, and observed that only 31% of the pages evaluated are relevant to developers. Therefore, we carried out a first study with developers that showed that they spent less time solving programming tasks, when using a higher quality ranking (on average, developers spent around 4 minutes more during solving tasks, when using a lower quality ranking). In a second study, we proposed and evaluated three different approaches to mine relevant pages returned by the search engine. The Google search engine that was used as a baseline returns a fair number of pages that are irrelevant to developers. The filters we propose are effective in removing irrelevant pages, in this way, a better quality ranking is generated. Developers can benefit from these filters in order to increase their productivity while performing programming tasks.
publishDate 2022
dc.date.none.fl_str_mv 2022-10-05T13:46:27Z
2022-10-05T13:46:27Z
2022-09-29
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/doctoralThesis
format doctoralThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv ROCHA, Adriano Mendonça. Mineração de soluções relevantes para tarefas de programação a partir de resultados de mecanismos de busca. 2022. 91 f. Tese (Doutorado em Ciência da Computação) - Universidade Federal de Uberlândia, Uberlândia, 2022. DOI https://doi.org/10.14393/ufu.te.2022.565.
https://repositorio.ufu.br/handle/123456789/36237
https://doi.org/10.14393/ufu.te.2022.565
identifier_str_mv ROCHA, Adriano Mendonça. Mineração de soluções relevantes para tarefas de programação a partir de resultados de mecanismos de busca. 2022. 91 f. Tese (Doutorado em Ciência da Computação) - Universidade Federal de Uberlândia, Uberlândia, 2022. DOI https://doi.org/10.14393/ufu.te.2022.565.
url https://repositorio.ufu.br/handle/123456789/36237
https://doi.org/10.14393/ufu.te.2022.565
dc.language.iso.fl_str_mv eng
language eng
dc.rights.driver.fl_str_mv http://creativecommons.org/licenses/by-nc-nd/3.0/us/
info:eu-repo/semantics/openAccess
rights_invalid_str_mv http://creativecommons.org/licenses/by-nc-nd/3.0/us/
eu_rights_str_mv openAccess
dc.format.none.fl_str_mv application/pdf
dc.publisher.none.fl_str_mv Universidade Federal de Uberlândia
Brasil
Programa de Pós-graduação em Ciência da Computação
publisher.none.fl_str_mv Universidade Federal de Uberlândia
Brasil
Programa de Pós-graduação em Ciência da Computação
dc.source.none.fl_str_mv reponame:Repositório Institucional da UFU
instname:Universidade Federal de Uberlândia (UFU)
instacron:UFU
instname_str Universidade Federal de Uberlândia (UFU)
instacron_str UFU
institution UFU
reponame_str Repositório Institucional da UFU
collection Repositório Institucional da UFU
repository.name.fl_str_mv Repositório Institucional da UFU - Universidade Federal de Uberlândia (UFU)
repository.mail.fl_str_mv diinf@dirbi.ufu.br
_version_ 1805569587138265088