Revisão Sistemática da Literatura em Engenharia de Software: Teoria e Prática

Questão 6: Qual a estratégia de busca mais adequada para um MS?

um MS?

A estratégia de busca a ser adotada em um MS é um ponto-chave para o sucesso ou fracasso desse

mapeamento. Conforme discutido no Capítulo 3, há três estratégias principais que podem ser aplicadas: busca automática em bases bibliográficas, busca manual e snowballing. De maneira geral, para que um mapeamento forneça uma visão ampla de um dado tópico de pesquisa, é necessário realizar a busca automática. A busca manual e snowballing são consideradas estratégias complementares que devem ser usadas em conjunto com a automática. A busca manual deve ser usada quando se sabe que algum evento científico ou periódico específico é um importante veículo de publicação para o tópico em questão e o mesmo não está contemplado nas bases selecionadas para a busca automática. Já snowballing é uma estratégia muito útil para encontrar estudos relevantes a partir dos já selecionados por meio da aplicação de outras estratégias ou por meio, inclusive, de snowballing.

Uma quarta estratégia que pode ser aplicada em MSs consiste em, uma vez selecionados os estudos aplicando-se as estratégias anteriormente mencionadas, identificar autores e grupos de pesquisa que têm atuado na área e realizar uma busca por outros estudos desses autores/grupos em suas páginas

institucionais. Para tornar essa busca mais sistemática, recomenda-se utilizar o DBLP1 (Digital Bibliography & Library Project), um repositório contendo as principais publicações dos pesquisadores em Ciência da Computação, ou redes sociais de pesquisa, como Research Gate ou Academia.

Vale destacar que aplicar múltiplas estratégias pode ser útil, mas consome muito tempo. Assim, nem sempre é prático e recomenda-se selecionar as estratégias de forma combinada com as fontes de pesquisa. Se muitas fontes de pesquisa forem usadas, dependendo da quantidade de estudos selecionados, técnicas de busca manual, snowballing e pesquisa direta a autores/grupos de pesquisa podem não ser viáveis ou sequer necessárias.

Por exemplo, em Souza et al. (2015), inicialmente foi aplicada a busca automática. Contudo, como apenas poucos estudos foram selecionados (13 dos 440 estudos retornados, já eliminados os duplicados), decidiu-se aplicar outras duas estratégias: snowballing e pesquisa direta a autores/grupos de pesquisa. Aplicando-se a primeira, mais oito estudos foram considerados, sendo que apenas um foi selecionado. Utilizando a pesquisa direta a autores/grupos, mais três estudos foram considerados, sendo dois selecionados. Vale destacar que um dos estudos selecionados nessa última etapa levou à exclusão de outro anteriormente selecionado por meio da aplicação do seguinte critério de exclusão: O estudo é uma versão mais antiga de um estudo já considerado. Assim, terminado o processo de seleção, 15 estudos foram selecionados.

Em relação às fontes de pesquisa, no que concerne à busca automática, é importante distinguir entre bases bibliográficas de editoras (tais como IEEE Xplorer, ACM Digital Library e Springer Link) e motores de busca (por exemplo, Scopus e Web of Science). As bases bibliográficas de editoras contêm, basicamente, os artigos publicados apenas por elas, enquanto os motores de busca indexam artigos de várias bases bibliográficas. Poder-se-ia pensar que basta, então, fazer a pesquisa em motores abrangendo as principais bases bibliográficas. Contudo, nem sempre estes cobrem completamente o conteúdo das bases bibliográficas e, muitas vezes, alguns artigos só são retornados a partir das bases bibliográficas das próprias editoras. Esse tem sido o caso, sobretudo, da IEEE Xplorer e ACM Digital Library. Nesse sentido, recomenda-se usar tanto bases bibliográficas de editoras quanto motores de busca como fontes de pesquisa para a busca automática.

Segundo 2 Dybå et al. (2007) , o uso das bases bibliográficas da IEEE Xplorer e da ACM Digital

Library 3 4 , combinado com duas bases bibliográficas de motores de busca, por exemplo, Scopus e

Engineering Village5, pode ser suficiente. Ainda que essa diretriz possa ser útil, recomenda-se avaliar se essa combinação é efetivamente suficiente, tendo em vista que o comportamento dos mecanismos de busca tem se alterado nos últimos anos. Assim, é importante avaliar a cobertura obtida e recomenda-se,

também, avaliar a inclusão das seguintes fontes de dados: 6 7 Springer Link , ISI Web of Science e Science

Direct8. Em todos os MSs realizados mais recentemente, nos quais usamos todas essas fontes, houve casos de estudos que foram retornados somente em uma dessas bases, o que mostra que a diretriz de

Dybå et al. (2007) não garante a mesma cobertura que a obtida usando todas as bases.

Deve-se evitar o uso de mecanismos gerais de busca (como o Google), pois eles não apresentam o

mesmo comportamento ao longo do tempo, comprometendo, assim, a possibilidade de se reproduzir as buscas realizadas. O mesmo ocorre com o Google Acadêmico (Google Scholar) e, portanto, essa base de dados deve ser evitada como fonte de pesquisa para um MS. Isso não impede que esses mecanismos sejam usados para encontrar estudos retornados na busca. Uma prática bastante comum é fazer a busca automática nas bases bibliográficas das editoras e nos motores de busca e, uma vez selecionados os estudos, procurar seus textos completos utilizando esses mecanismos.

Vale destacar que cada base possui características e limitações próprias e que os motores de busca

trabalham de maneiras diferentes. Assim, a string de busca deve ser adaptada para rodar adequadamente em cada base (WOLIN et al., 2013). Deve-se observar, dentre outras coisas, se a base considera termos no plural ou se devem ser adicionados à string, se a base permite realizar buscas considerando apenas partes do texto (por exemplo, título, resumo e palavras-chave) ou estas são feitas sempre considerando o texto completo.

O MS apresentado em Souza et al. (2015) foi realizado no contexto de uma tese de doutorado. Havia,

então, uma preocupação em se obter uma ampla cobertura, sobretudo porque, em uma revisão preliminar e informal da literatura, poucos estudos haviam sido encontrados. Dessa forma, optou-se por realizar a busca automática sobre um conjunto amplo de fontes de pesquisa, a saber: IEEE Xplore, ACM Digital Library, SpringerLink, Scopus, Science Direct, Engineering Village e Web of Science.

Finalmente, em relação à definição da string de busca de um MS, várias abordagens podem ser

usadas, tais como (PETERSEN et al., 2015): consultar especialistas, melhorar iterativamente a string, identificar termos a partir de artigos conhecidos e usar padrões, enciclopédias e tesauros. Vale destacar que essas abordagens não são difíceis de aplicar, não consomem muito tempo e melhoram a qualidade da

string de busca (PETERSEN et al., 2015); portanto, recomenda-se aplicá-las.

Durante a definição da string de busca, o foco é a identificação de termos relacionados com o tópico

de pesquisa que sejam comumente usados nos estudos primários alvos do MS. Uma boa prática para formular a string de busca consiste em agrupar termos relacionados que podem ser considerados sinônimos, concatenando-os em um grupo de termos utilizando-se o conectivo OU (OR em inglês). Posteriormente, cada grupo é concatenado com os demais por meio de conectivos E (AND em inglês).

A partir do MS apresentado em Souza et al. (2015), para a formação da string de busca, foram

considerados dois grupos de termos: um relativo à Gestão do Conhecimento e outro ao Teste de Software. Para o grupo de termos relacionados com Gestão de Conhecimento, foram identificados os seguintes termos: knowledge management, knowledge reuse, knowledge sharing e knowledge transfer; para o grupo de termos relacionados com o teste de software foram identificados os seguintes termos: software testing e software test, bem como uma combinação dos termos software project, test e testing, resultando na seguinte string de busca:

(“software testing” OR “software test” OR

(“software project” AND (test OR testing)))

AND

(“knowledge management” OR “knowledge reuse” OR “knowledge sharing” OR “knowledge transfer”)

 

Vale ressaltar que os termos da string de busca devem estar alinhados ao objetivo e às questões de pesquisa do MS. Essa preocupação pode ser claramente percebida no exemplo discutido anteriormente, no qual a string de busca é montada completamente alinhada ao objetivo do mapeamento e às questões de pesquisa, conforme discutido na Questão 4 deste capítulo. Em qualquer caso, a string de busca precisa ser avaliada. Especialistas no tema podem avaliar, mas somente isso é insuficiente. Uma forma comum e efetiva de avaliar a string de busca é utilizar um conjunto de estudos primários conhecidos, dito grupo de controle. Nesse caso, a string de busca é executada em uma das bases bibliográficas previamente selecionadas (na qual se tenha certeza de que os estudos do grupo de controle estão presentes) e verifica-se se os estudos de controle são retornados. Esse procedimento é chamado de teste piloto e serve como

um meio de avaliar todo o protocolo do MS (conforme analogamente discutido no Capítulo 2, para o caso de RSs). Para a criação do grupo de controle, recomenda-se a participação de especialistas no tópico do MS, acompanhada de uma revisão informal da literatura.

Para a avaliação da string de busca, deve-se considerar sua precisão. Se esta retornar um número muito grande de estudos irrelevantes, então vale a pena tentar refiná-la de modo a restringir um pouco mais este número. A meta é obter uma string que retorne um grande número de estudos relevantes, associado ao menor possível de irrelevantes. Assim, melhorar iterativamente a string de busca é uma abordagem que deve ser sempre considerada. De fato, sua definição é um processo iterativo. Na medida em que a string é testada, em função dos resultados obtidos, novos termos podem ser adicionados, bem como podem ser excluídos por terem se mostrado desnecessários ou pouco eficazes para melhorar a busca.