Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que...

118
Pós-Graduação em Ciência da Computação Mapeamento Sistemático sobre Replicação de Estudos Empíricos em Engenharia de Software Por Marcos Suassuna Dissertação de Mestrado Universidade Federal de Pernambuco [email protected] www.cin.ufpe.br/~posgraduacao RECIFE, JUNHO/2011

Transcript of Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que...

Page 1: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

Pós-Graduação em Ciência da Computação

Mapeamento Sistemático sobre Replicação de Estudos Empíricos em Engenharia de Software

Por

Marcos Suassuna

Dissertação de Mestrado

Universidade Federal de Pernambuco [email protected]

www.cin.ufpe.br/~posgraduacao

RECIFE, JUNHO/2011

Page 2: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

Universidade Federal de Pernambuco

CENTRO DE INFORMÁTICA

PÓS-GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO

Marcos Suassuna

Mapeamento Sistemático sobre Replicação de Estudos Empíricos em Engenharia de Software

ORIENTADOR: PROF. FÁBIO QUEDA BUENO DA SILVA

RECIFE, JUNHO/2011

Este trabalho foi apresentado à Pós-Graduação em Ciência da Computação do Centro de Informática da Universidade Federal de Pernambuco como requisito parcial para obtenção do grau de Mestre em Ciência da Computação.

Page 3: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

Catalogação na fonte Bibliotecária Jane Souto Maior, CRB4-571 Suassuna, Marcos Mapeamento sistemático sobre replicação de estudos empíricos em engenharia de software / Marcos Suassuna - Recife: O Autor, 2011. xii, 117 folhas : il., fig., tab. Orientador: Fabio Queda Bueno da Silva. Dissertação (mestrado) - Universidade Federal de Pernambuco. CIn, Ciência da Computação, 2011. Inclui bibliografia e apêndice. 1. Engenharia de software. 2. Engenharia de software empírica. 3. Replicação de estudos. I. Silva, Fabio Queda Bueno da (orientador). II. Título. 005.1 CDD (22. ed.) MEI2011 – 084

Page 4: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver
Page 5: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

Dedico este trabalho à Cynthia, minha

esposa, por tudo que me proporcionou

para que eu chegasse até aqui.

Page 6: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

v

AGRADECIMENTOS

A DEUS, por iluminar toda a minha vida para que seja consistente com seus

mandamentos, sempre me oferecendo oportunidade para desenvolver a sabedoria, a

capacidade de entendimento e conselho, a ciência, a piedade e, consequentemente, o respeito

a sua obra.

Aos meus pais muito queridos, que sempre priorizaram e investiram o que tinham,

com muito amor, perseverança e diálogo, na formação e educação dos seus filhos;

A Cynthia, minha esposa, pelo respeito e amor sempre presentes no nosso

relacionamento, pelo carinho, apoio, críticas e incentivos dados, em horas e horas de

conversas, sobre cada passo desta pesquisa;

Aos meus filhos Humberto, Lorena e Carmem, pela paciência, compreensão e

respeito à minha ausência da vida familiar durante o período de desenvolvimento deste

trabalho;

A Fabio, grande parceiro de trabalho, pelo incentivo ao meu retorno à academia e

às pesquisas, pelos seus ensinamentos, disponibilidade, orientações e pelo respeito, atenção e

paciência;

Ao Grupo HASE, em especial A. César A. França, João Paulo N. de Oliveira,

Leonardo F. M. de Oliveira, Rodrigo. F. Lopes e Tatiana B. Gouveia, pela dedicação,

companheirismo e contribuições valiosas nos trabalhos desta pesquisa;

A Emerson, grande companheiro de trabalho, pelos constantes incentivos à minha

especialização com o desenvolvimento desta pesquisa;

A Dona Zezita, minha primeira professora, que, com amor e dedicação, me

ensinou a estudar, e que, em seu nome, estendo o agradecimento aos professores que me

ensinaram e me fizeram chegar até aqui;

A todos, muito obrigado!

Page 7: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

vi

"Se muito vale o já feito, mais vale o que será!"

Milton Nascimento

Page 8: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

vii

Resumo Estruturado

Contexto – Muitos autores consideram replicação de estudos empíricos como uma atividade

essencial para a construção do conhecimento em qualquer ciência empírica. Em engenharia de

software, os primeiros estudos de replicação datam de meados de 1990, portanto são

relativamente recentes. Embora o entendimento sobre replicação em engenharia de software

tenha evoluído ao longo dos anos, os estudos e o debate científico sobre replicação ainda se

encontram em um estágio inicial. Os trabalhos publicados ainda não fazem uso claro de

termos e conceitos associados à replicação e nenhuma base abrangente de conhecimentos tem

sido publicada para fornecer material sobre replicação.

Objetivo - Analisar as pesquisas relacionadas à replicação de estudos empíricos em

engenharia de software e trabalhos conceituais e teóricos sobre replicações. Nesta pesquisa

são apresentadas as conclusões desta análise, concentrando-se nas informações dos estudos

sobre replicações e estudos originais relacionados.

Método - Aplicou-se a metodologia de revisão sistemática para realizar um mapeamento

sistemático sobre o estado atual dos trabalhos de replicação de estudos empíricos realizados

em engenharia de software.

Resultados - Foram analisados 16.126 artigos, a partir dos quais foram extraídos 93 artigos,

com 125 replicações e 76 estudos originais, realizadas entre 1994 e 2010. Mais de 60% das

replicações foram realizadas nos últimos seis anos e 71% dos estudos foram replicações

internas. Os tópicos de construção de software, testes e manutenção concentram em torno de

50% dos trabalhos de replicação, enquanto os tópicos de projeto de software, gerenciamento

de configuração, ferramentas de software e métodos são os temas com menos replicações.

Conclusões - O número de replicações cresceu nos últimos anos, mas o número absoluto de

replicações ainda é muito pequeno, em particular considerando a amplitude dos temas

relacionados com engenharia de software. Incentivos para executar replicações externas e

melhorar os padrões dos relatórios de estudos empíricos e suas replicações ainda são

necessários.

PALAVRAS-CHAVE:

Replicações, Experimentos, Estudos Empíricos, Mapeamento Sistemático, Revisão da

Literatura, Engenharia de Software.

Page 9: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

viii

ABSTRACT

Context - Many authors consider replication of empirical studies as essential activity for the

construction of knowledge in any empirical science. In software engineering, the first articles

reporting replications of empirical studies date from the mid 1990s, so they are relatively

recent. Although understanding replication of software engineering has evolved over the

years, studies and scientific debate on replication are still at an initial stage. The published

works are not yet clear about the use of terms and concepts associated with replication and no

comprehensive body of knowledge has been published to provide material about replication.

Objective - To review the research related to the replication of empirical studies in software

engineering in terms of replications of empirical studies and conceptual or theoretical work

about replications.

Method - Applied the systematic review method to perform a mapping study about the

current state of the replication work of empirical studies performed in software engineering

research.

Results - We analyzed 16.126 articles, from which we extracted 93 articles reporting 125

replications performed between 1994 and 2010, of 76 original studies. Over 60% of the

replications were performed in the last six years and 71% percent of the studies were internal

replications. The topics of software construction, testing, and maintenance concentrate nearly

50% of the replication work, while software design, configuration management and software

tools and methods are the topics with least replications.

Conclusions - The number of replications grew in the last few years, but the absolute number

of replications is still very small, in particular considering the breadth of topics in software

engineering. Incentive to perform external replications and better standards to report empirical

studies and their replications are still needed.

KEY WORDS:

Replications, Experiments, Empirical Studies, Mapping Study, Literature Review, Software

Engineering.

Page 10: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

ix

LISTA DE FIGURAS

Figura 1. String de Busca ................................................................................................... 44

Figura 2. Resultados da Pesquisa e Processos de Seleção ................................................. 47

Figura 3. Distribuição Temporal das Replicações ............................................................ 53

Figura 4. Distribuição Temporal das Replicações Internas e Externas ........................... 53

Figura 5. Evolução das Replicações por Capítulos do SWEBOK ..................................... 56

Figura 6 - Distribuição Geográfica das Replicações Internas e Externas ........................ 65

Figura 7 - Métodos de Pesquisa Utilizados em Replicações Externas .............................. 66

Figura 8 - Métodos de Pesquisa Utilizados em Replicações Internas ............................... 67

Figura 9 - Métodos de Pesquisa Utilizados nos Temas da Engenharia de Software

(Capítulos do SWEBOK) .................................................................................................... 68

Figura 10 - Evolução da Qualidade das Replicações ........................................................ 81

Figura 11 - Evolução da Qualidade das Replicações Internas e Externas ....................... 81

Figura 12 - Evolução da Qualidade das Replicações Single e Multiple Reports ............... 82

Figura 13 - Evolução da Qualidade das Replicações Internas Single e Multiple Reports 83

Page 11: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

x

LISTA DE TABELAS

Tabela I. Tipos e Exemplos de Perguntas de Pesquisa ..................................................... 24

Tabela II. Síntese dos Estudos Associados ........................................................................ 34

Tabela III. Fontes Manuais ............................................................................................... 43

Tabela IV. Fontes Automáticas ......................................................................................... 43

Tabela V. Desenvolvimento da Pesquisa Automática ....................................................... 44

Tabela VI. Desenvolvimento da Pesquisa Manual ............................................................ 45

Tabela VII. Desenvolvimento da Pesquisa Manual .......................................................... 46

Tabela VIII. Extração de Dados dos Estudos de Replicações e Originais ....................... 47

Tabela IX. Extração de Dados Somente dos Estudos de Replicação ................................ 48

Tabela X. Replicações por Ano.......................................................................................... 54

Tabela XI. Cobertura dos Capítulos e Seções do SWEBOK ............................................. 55

Tabela XII. Autores Envolvidos com Replicações Externas ............................................ 58

Tabela XIII - Autores Envolvidos com Replicações Internas........................................... 59

Tabela XIV - Autores que mais Desenvolveram Replicações por SWEBOK ................... 61

Tabela XV - Organizações Envolvidas com Replicações Externas .................................. 63

Tabela XVI - Organizações Envolvidas com Replicações Internas.................................. 64

Tabela XVII - Replicações por Método de Pesquisa ......................................................... 67

Tabela XVIII - Tipos das Unidades de Análises das Replicações..................................... 68

Tabela XIX - Conjuntos de Replicações ............................................................................ 69

Tabela XX - Síntese dos Conjuntos de Replicações .......................................................... 79

Tabela XXI - Síntese das Médias dos Índices de Qualidade das Replicações .................. 83

Tabela XXII - Principais Lições Aprendidas .................................................................... 85

Page 12: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

xi

SUMÁRIO

1. INTRODUÇÃO .......................................................................................... 13

1.1. Motivação para o Estudo ........................................................................................... 14

1.2. Objetivos da Pesquisa ................................................................................................ 15

1.3. Resultados do Trabalho ............................................................................................. 16

1.4. Estrutura do Trabalho ................................................................................................ 16

2. REVISÃO DA LITERATURA E TRABALHOS ASSOCIADOS ........... 18

2.1. Definições sobre Replicação ...................................................................................... 18

2.2. Tipos e Classificações de Replicação ......................................................................... 20

2.3. Classificação de Estudos Empíricos em Engenharia de Software ............................... 21

2.3.1. SWEBOK ............................................................................................................ 21

2.3.2. Tipos de Estudos Empíricos ................................................................................ 22

2.4. Mapeamento Sistemático ........................................................................................... 24

2.5. Trabalhos Associados ................................................................................................ 26

2.5.1. A Survey of Controlled Experiments in Software Engineering (SJØBERG, et al.,

2005) ............................................................................................................................ 26

2.5.2. Replication of controlled experiments in empirical software engineering – a survey

(ALMQVIST, J. P. F., 2006) ........................................................................................ 30

2.5.3. Towards Reporting Guidelines for Experimental Replications: A Proposal.

(CARVER, J., 2010) .................................................................................................... 33

2.6. Síntese dos Trabalhos Associados.............................................................................. 34

3. METODOLOGIA ...................................................................................... 40

3.1. Questões de Pesquisa. ................................................................................................ 41

3.2. Equipe Envolvida ...................................................................................................... 41

3.3. Procedimentos de Decisão sobre Conflitos na Seleção, Extração e Qualidade dos

Estudos ............................................................................................................................ 42

3.4. Fontes de Dados e Estratégia de Busca ...................................................................... 42

3.5. Critérios de Inclusão e Exclusão ................................................................................ 45

3.6. Seleção dos Estudos .................................................................................................. 46

3.7. Extração de Dados ..................................................................................................... 47

3.8. Avaliação da Qualidade ............................................................................................. 48

Page 13: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

xii

3.9. Síntese e Apresentação dos Resultados ...................................................................... 50

4. ANÁLISE E DISCUSSÃO DOS RESULTADOS ..................................... 52

4.1. Análise dos Resultados .............................................................................................. 52

4.2. Discussão .................................................................................................................. 86

4.2.1 Implicações da Pesquisa ...................................................................................... 87

4.2.2. As limitações desta revisão ................................................................................. 89

5. CONCLUSÕES .......................................................................................... 91

5.1. Síntese de Resultados ................................................................................................ 91

5.2. Trabalhos Futuros ...................................................................................................... 91

5.3. Considerações Finais ................................................................................................. 92

REFERÊNCIAS BIBLIOGRÁFICAS .......................................................... 94

APÊNDICE A - ESTUDOS PRIMÁRIOS .................................................... 97

Papers de Replicação - REP ............................................................................................. 97

Papers de Estudos Originais - ORI ................................................................................. 103

Papers sobre Replicação - ABO ..................................................................................... 105

APÊNDICE B – SWEBOK ........................................................................... 109

Page 14: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

13

1. INTRODUÇÃO

Replicações de estudos empíricos são consideradas como uma atividade essencial na

construção do conhecimento em qualquer ciência empírica. Como apontado por Karl Popper,

"Nós não levamos as nossas próprias observações muito a sério, ou aceitamos como

observações científicas, até que nós tenhamos as repetido e as testado" (POPPER, K., 1959).

Nas ciências sociais, La Sorte (1972) registrou que “as razões para o desenvolvimento

de replicação é que irão determinar as relações entre a replicação, o estudo original e as

conclusões que podem ser extraídas dos dois conjuntos de estudos”. Lindsay e Ehrenberg

(1993) argumentam que a replicação "é necessária, não apenas para validar nossas conclusões,

mas importante para estabelecer o número crescente de condições, radicalmente diferentes,

sobre as quais as conclusões se baseiam e as exceções são previsíveis". Para Schmitd (2009),

"a replicação de um experimento para demonstrar que os mesmos resultados podem ser

obtidos em qualquer outro lugar, por qualquer outro pesquisador. [...] é a prova de que a

experiência reflete o conhecimento que pode ser separado das circunstâncias específicas (tais

como tempo, lugar, ou pessoas) em que foi adquirido. ".

Em engenharia de software, os primeiros artigos que relatam replicação datam de

meados de 1990 ([REP056], [REP073], [REP053], [REP085] e [REP089] no Apêndice A).

Por volta do mesmo período, Brooks et al. (1995), reuniram um conjunto de princípios para

replicação em engenharia de software, refinando e sistematizando princípios de outras

disciplinas. No final da década de 1990, Basili et al. (1999) discutiram um framework para

organizar conjuntos de experimentos relacionados (famílias) e a geração de conhecimento a

partir de tais conjuntos.

Mais recentemente, Lung et al. (2008) indicaram que replicação é uma atividade

científica necessária para a verificação de resultados de pesquisas, mas que “continua sendo

um desafio para os pesquisadores de engenharia de software pela complexidade do cenário

envolvido” e, ainda segundo os autores, “muitas vezes caras e difíceis de serem realizadas

pela falta de informações dos estudos originais”. E Goméz et al. (2010) indicaram como

razões para o desenvolvimento de replicações para verificação de erros de amostragem, de

resultados, para determinar os limites de uma operacionalização e os limites nas propriedades

das populações.

Page 15: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

14

Como o entendimento sobre a replicação evoluiu, a comunidade de engenharia de

software empírica começou a tratar várias questões importantes relacionadas com a

replicação. O papel dos pacotes de laboratórios (lab package) para apoio ao desenvolvimento

de replicações (SHULL, F. et al., 2008) (KITCHENHAM, B., 2008), a falta de incentivos

para replicações em empresas (KITCHENHAM, B.; DYBÅ, T.; JØRGENSEN, M., 2004), a

importância do conhecimento tácito (SHULL, F. et al., 2002), a necessidade de ter diretrizes

específicas para sua documentação (CARVER, J. C, 2010), as dificuldades de se replicar

estudos envolvendo aspectos humanos (LUNG, J. et al., 2008) (FRANÇA, A. C. C. et al.

2010), o papel dos diferentes tipos de replicações (GÓMEZ G. et al., 2009) (KREIN, J. L.;

KNUTSON, C. D., 2009) (GÓMEZ G. et al., 2010), a geração de conhecimento com as

replicações (JURISTO, N.; VEGAS, S., 2009), são alguns dos temas recentes.

1.1. Motivação para o Estudo

Considerando a importância de replicações para as ciências empíricas, em geral, e para

a engenharia de software empírica, em particular, seria de se esperar encontrar um conjunto de

conhecimentos que fornecesse definições claras e inequívocas para perguntas centrais como

"o que exatamente é uma replicação?", ou "o que exatamente é uma replicação bem-

sucedida?", e "quais são os tipos de replicação e as respectivas funções?" (SCHMIDT, S.,

2009). Além disso, esperaríamos encontrar orientações sobre como realizar e documentar

replicações complementando as orientações existentes para realizar experimentos e outros

tipos de estudos empíricos.

Como mencionado acima, algumas destas questões foram estudadas em engenharia de

software nas últimas duas décadas. No entanto, esses estudos e o debate científico sobre os

seus resultados ainda estão em um estágio inicial. Os trabalhos publicados ainda não fazem

uso claro das definições de termos e conceitos, não há, em geral, uma taxonomia aceita para

distinguir tipos de replicações e seus papéis na geração do conhecimento científico e, como

apontado por Schmidt, "a palavra replicação é usada como um termo coletivo para descrever

vários significados em diferentes contextos" (SCHMIDT, S., 2009).

Na medida em que a disciplina de engenharia de software empírica amadurece e os

estudos teóricos e práticos aumentam a compreensão sobre replicação, espera-se que essas

questões sejam abordadas. Uma ampla revisão da literatura sobre replicações em engenharia

de software é um passo importante para essa compreensão, no entanto, nenhuma base

Page 16: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

15

abrangente de conhecimento tem sido publicada para fornecer um retrato completo do

material disponível sobre replicação em engenharia de software.

1.2. Objetivos da Pesquisa

O objetivo principal deste estudo é analisar as pesquisas relacionadas à replicação de

estudos empíricos em engenharia de software, a partir de um amplo mapeamento na literatura,

de forma a responder a questão central “RQ: Qual é o estado atual dos trabalhos de replicação

de estudos empíricos realizados em pesquisas de engenharia de software?”, assim como as

seguintes questões secundárias:

• RQ01: Qual é a evolução do número e tipo (interna e externa) de replicações ao longo

dos anos?

• RQ02: Que temas de engenharia de software foram endereçados pelas replicações?

• RQ03: Quais pesquisadores e organizações estão replicando?

• RQ04: Quais os métodos de pesquisa estão sendo utilizados nas replicações?

• RQ05: Que conjuntos de replicações foram encontrados?

• RQ06: Qual é a qualidade dos trabalhos de replicação?

• RQ07: Quais as principais lições aprendidas apresentadas nos estudos de replicação?

E como objetivos específicos:

• Pesquisar e selecionar estudos empíricos de replicação e trabalhos conceituais e

teóricos sobre replicação em engenharia de software;

• Extrair e analisar as informações desses estudos com base nas 7 questões secundárias;

• Discutir os resultados analisados, suas implicações e sugerir estudos para serem

desenvolvidos futuramente;

• Contribuir, com informações válidas e úteis, para comunidade científica desenvolver

mais replicações de estudos empíricos em engenharia de software, aumentar a

cobertura e a qualidade dos temas pesquisados, melhorar a qualidade dos relatórios

dos estudos e estimular o desenvolvimento de trabalhos colaborativos entre

pesquisadores.

Page 17: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

16

1.3. Resultados do Trabalho

Nesta pesquisa, são apresentados os resultados da análise do mapeamento sistemático

sobre as 7 questões secundárias, concentrando-se nos estudos relatando replicações e os

estudos originais relacionados.

Foram encontrados 93 estudos que apresentaram 125 replicações de estudos empíricos

em engenharia de software. Estas replicações compõem 76 conjuntos de replicações

(agrupamento de estudos originais e suas replicações). A Manutenção de Software foi o tema

de engenharia de software com maior número de replicações (25). Os tipos de estudo mais

encontrados foram quasi experimento (63%) e experimento controlado (21%). Acreditamos

que este estudo será útil para os pesquisadores que trabalham com replicações, bem como

para aqueles que trabalham em fundamentos teóricos da engenharia de software empírica.

1.4. Estrutura do Trabalho

Este trabalho está estruturado em capítulos apresentados e detalhados abaixo.

No Capítulo 2, é apresentada uma revisão ad hoc da literatura, explorando definições e

conceitos relativos ao tema desta pesquisa e trabalhos associados a este estudo. Neste capítulo

estão apresentadas definições e conceitos sobre replicação e sobre estudos empíricos em

engenharia de software. São apresentados também, conceitos que embasaram a definição do

método de pesquisa desenvolvido por esta dissertação e 3 trabalhos associados a este estudo.

No Capítulo 3, seguindo as orientações de Kitchenham e Charters (2007), está descrita

a metodologia que foi empregada na construção e implementação do protocolo de

planejamento e execução deste mapeamento. Neste capítulo encontram-se descritas as

questões as quais a pesquisa procurou responder; a equipe envolvida nos processos de

pesquisas manual e automática; seleção e extração e avaliação de qualidade dos estudos

primários; os procedimentos adotados para decisão sobre os conflitos desses processos

realizados pela equipe; as fontes de dados e estratégias realizadas nas buscas manual e

automática; os critérios de inclusão e exclusão; a seleção dos estudos; as informações

extraídas dos estudos primários; os critérios e o processo de avaliação de qualidade; e,

finalmente, uma síntese de como os resultados foram analisados.

No Capítulo 4, com base nas 7 questões de pesquisa secundárias, são apresentadas as

análises sobre os resultados do estudo de mapeamento, como também uma discussão sobre as

Page 18: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

17

implicações do estudo e suas ameaças à validade. Neste capítulo, as análises foram realizadas,

na sua maioria, focadas em dados de frequências e percentuais.

Finalmente, no Capítulo 5, apresentam-se as conclusões, propostas para trabalhos

futuros e considerações finais.

Page 19: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

18

2. REVISÃO DA LITERATURA E TRABALHOS ASSOCIADOS

Aqui se apresenta uma revisão da literatura explorando o tema replicação de estudos

em engenharia de software. Considerando a natureza e a complexidade do tema, faz-se

necessário para o desenvolvimento dessa pesquisa, uma abordagem interdisciplinar, razão

pela qual serão empregados conceitos pertinentes a diversas áreas do conhecimento.

Tal como discutido no Capítulo 1, há pouco consenso sobre a nomenclatura e

definição de conceitos sobre replicação em muitas ciências empíricas e em engenharia de

software empírica, em particular. Embora, o aprofundamento do debate sobre a nomenclatura

e definições conceituais esteja fora do escopo deste trabalho, é necessário explorar algumas

definições e conceitos relativos ao tema desta pesquisa, a fim de orientar o processo de

revisão.

Neste Capítulo, são apresentadas definições e conceitos sobre replicação e sobre

estudos empíricos em engenharia de software, necessários para o desenvolvimento dos

processos de seleção, extração e análise das informações deste estudo. São apresentados

também, os conceitos que embasaram a definição do método de pesquisa desenvolvido por

esta dissertação. Em seguida, são descritos três trabalhos associados ao tema deste estudo.

2.1. Definições sobre Replicação

Nesta seção são apresentados conceitos e definições sobre replicação de estudos

registrados ao longo dos anos por pesquisadores de diversas ciências e, em particular, em

engenharia de software.

Na década de 1960, Gould e Kolb (1964), publicaram um dicionário de ciências

sociais, onde replicação foi definida como "uma repetição de um procedimento de pesquisa

para verificar a exatidão ou veracidade das conclusões apresentadas ".

Na década de 1970, Finifter (1972) ressaltou que uma replicação deveria reproduzir,

exatamente e com total fidelidade, as condições do estudo original. Se isso não fosse possível,

segundo o autor, se procurariam alternativas de amostras, medições e de condições de análise

do estudo original, que o recriassem, com maior ou menor grau de precisão. Essas alternativas

iriam desde “de tão perto quanto possível” para “perto o suficiente”, de forma tal que seus

resultados pudessem ser suficientes comparáveis. Segundo La Sorte (1972), "replicação se

refere a uma repetição consciente e sistemática de um estudo original". Kelly, Chase e Tucker

Page 20: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

19

(1979) abordaram replicação como um estudo que copia ou reproduz um experimento original

- seus métodos, procedimentos e resultados.

Na década de 1980, Bahr, Caplow e Chadwick (1983) também confirmaram que a

característica essencial de um estudo de replicação era a repetição de um estudo específico

anterior na totalidade ou em parte. Acrescentaram que, “em contraste com a pesquisa

científica em geral, que necessariamente se baseia em trabalhos anteriores, a replicação

envolveria uma vinculação direta com um estudo específico anterior”. Afirmaram, esses

autores que, levando-se em conta o estudo específico, uma replicação poderia diferir desse

estudo em tempo, lugar, método, sujeito, e pesquisador.

Na década de 1990, Lindsay e Ehrenberg (1993) indicaram que autoridades em

metodologia científica consideravam replicação como um aspecto fundamental para o método

científico por possibilitar a avaliação e extensão de resultados do estudo original e,

consequentemente, sua generalização. Defenderam que uma replicação pode ser adequada no

início de um programa de pesquisa para estabelecer, de forma rápida, relativamente fácil e

barata, se um novo resultado pode ser repetido do estudo original como um todo, ou para

aumentar o leque de condições sobre as quais o resultado ainda se mantém. Os mesmos

autores também indicaram outras 3 (três) razões para o desenvolvimento de replicação: uso de

diferentes métodos, instrumentos de medição, procedimentos de análise e/ou pesquisadores

para alcançar o mesmo resultado do estudo original; extensão do alcance dos resultados; e

definir as condições sobre as quais a generalização não se sustenta.

Na década de 2000, Almqvist (2006), definiu replicação em engenharia de software,

no contexto de sua pesquisa, como “uma repetição de um experimento com os mesmos

parâmetros experimentais, ou o mais próximo possível, ou ainda, com mudanças deliberadas

neles, para acompanhar um estudo original, de forma tal que seja possível conseguir maior

validade na pesquisa de engenharia de software”. Shull et al. (2008) ressaltaram a

importância da realização de replicação para melhor compreensão dos fenômenos da

engenharia de software e para melhorar a prática do desenvolvimento de software. Para os

autores, a replicação “ajuda os pesquisadores a construir conhecimentos sobre o que se espera

dos resultados, que podem ser semelhantes, ou não, aos do estudo original”. Juristo e Vegas

(2009) definiram replicação como "a repetição de um experimento para verificar seus

resultados”.

Page 21: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

20

Essas definições implicam que uma replicação deve ser explicitamente relacionada

(repetição consciente) com um estudo anterior, um estudo original. De acordo com estas

definições, pode-se concluir que experimentos que abordarem as mesmas questões ou

hipóteses, mas sem explicitar conhecimento de, ou deferência para estudos anteriores, não

devem ser consideradas replicações. Portanto, neste estudo, não serão considerados como

replicação, os estudos que Krein e Knutson (2009) classificaram como replicação

independente.

2.2. Tipos e Classificações de Replicação

Na literatura, os pesquisadores têm usado diferentes termos para definir os tipos ou

classificações de replicação. Gomez et al. (2009) realizaram uma revisão da literatura

procurando estudos em várias disciplinas científicas que fornecessem classificações de

replicação. Os pesquisadores encontraram 18 estudos que propõem tipos diferentes de

classificação e a descrição para os papeis de cada tipo de replicação na construção do

conhecimento científico.

Poucos estudos foram identificados tratando tipos de replicação. Observou-se que

estes estudos, em sua maioria, são originários das ciências sociais. São estudos que

cronologicamente iniciam da década de 1970 e se seguem até os dias atuais. Já os estudos

oriundos da engenharia de software são em menor número, e quanto ao aspecto cronológico,

começam a ser identificados no final da década de 1990.

Na engenharia de software, Basili (1999) definiu 3 tipos de replicação: as que repetem,

ao máximo possível, o estudo original, sem variar suas hipóteses (Strict); as que variam as

maneiras de execução do estudo original e as que estendem uma teoria, introduzindo grandes

mudanças nos elementos experimentais para verificar se os princípios fundamentais do estudo

original continuam válidos. Almqvist (2006) definiu 4 tipos de replicação: aquelas que

mantêm, ao máximo possível, as condições do estudo original, variando os pesquisadores

(Similar, External Replications); aquelas que variam as condições do estudo original,

mantendo os pesquisadores (Improved, Internal Replications), aquelas que mantêm, ao

máximo possível, as condições do próprio estudo, mantendo os pesquisadores (Similar,

Internal Replications) e aquelas que variam, deliberadamente, as condições do estudo

original, inclusive os pesquisadores (Differentiated, External Replications). Brooks et al.

(2007) considerou uma replicação interna aquela que foi realizada com os pesquisadores

originais, e externa, se a replicação foi realizada por pesquisadores independentes. E Shull et

Page 22: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

21

al. (2008) definiram 2 tipos: as que utilizam diferentes procedimentos experimentais para

verificar se os mesmos resultados são reproduzidos, e assim confirmar se eles são

independentes da abordagem do estudo original (Conceptual); e aquelas que executam, ao

máximo possível, os mesmos procedimentos do estudo original (Exact).

Como mencionado anteriormente, uma discussão mais aprofundada sobre conceitos e

tipos de replicação está fora do escopo deste estudo. No entanto, nesta pesquisa foi utilizada a

classificação de replicação interna e externa definida por Brooks et al. (2006) para apresentar

a evolução dos trabalhos de replicação ao longo dos anos.

Para tornar esta definição mais precisa para a seleção, extração, análise e conclusões

desta pesquisa, foi considerada replicação interna, aquela que envolve uma série evolutiva de

experimentos onde, pelo menos um pesquisador envolvido no estudo original, também foi

envolvido no estudo de replicação. E replicação externa, aquela realizada com base em um

estudo anterior (original), por pesquisadores completamente diferentes dos envolvidos com o

estudo original.

2.3. Classificação de Estudos Empíricos em Engenharia de Software

Nesta seção são exploradas duas bases para classificação de estudos em engenharia de

software. Uma apresentando a caracterização dos tópicos da disciplina de engenharia de

software, e outra, apresentando os métodos mais utilizados nos estudos de engenharia de

software.

2.3.1. SWEBOK

Abran et al. (2004) apresentaram um guia, fornecendo uma caracterização,

consensualmente validada, e limites da disciplina de engenharia de software, o que

denominaram de Software Engineering Body of Knowledge – SWEBOK.

Segundo os autores, o SWEBOK tem como objetivos: promover uma visão consistente

da engenharia de software em todo o mundo; esclarecer o lócus e o conjunto de limites da

engenharia de software com relação a outras disciplinas como ciência da computação,

gerência de projetos, engenharia da computação, e matemática; caracterizar o conteúdo da

disciplina de engenharia de software; prover acesso aos tópicos da base de conhecimento

(Body of Knowledge) da engenharia de software; e fornecer uma base para o desenvolvimento

Page 23: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

22

curricular e material para certificação e licenciamento. Apresentaram, em 10 capítulos, as

áreas de conhecimento da engenharia de software (Apêndice 2): Software Requirement,

Software Design, Software Construction, Software Testing, Software Maintenance, Software

Configuration Management, Software Engineering Management, Software Engineering

Process, Software Engineering Tools And Methods e Software Quality.

Nesta pesquisa foi utilizado o SWEBOK, seus capítulos e seções, para classificar os

estudos primários de replicação em engenharia de software.

2.3.2. Tipos de Estudos Empíricos

Easterbrook et al. (2007), classificaram os métodos dos estudos primários mais

comuns em engenharia de software em 5 tipos: Experimento Controlado, incluindo Quasi

Experimento, Estudo de Caso, Estudos de Campo (Survey), Etnografias e Pesquisa Ação,

cujas principais características encontram-se descritas a seguir.

O Experimento Controlado é uma pesquisa que apresenta hipóteses claras, onde

uma ou mais variáveis independentes são manipuladas para medir o seu efeito sobre uma ou

mais variáveis dependentes. Permitem determinar em termos precisos, como as variáveis são

relacionadas e, especificamente, se existe uma relação causa-efeito entre elas. Cada

combinação de valores das variáveis independentes é um tratamento. A escolha randômica de

sujeitos para aplicação dos tratamentos é necessária. Quando as circunstâncias do experimento

controlado não podem ser possíveis, a exemplo da impossibilidade de escolha randômica dos

sujeitos, variação desse tipo de experimento é possível. Os autores definem esse tipo de

variação como Quasi Experimento.

O Estudo de Caso oferece compreensão aprofundada de como e porque certos

fenômenos ocorrem, e pode revelar os mecanismos pelos quais as relações de causa-efeito

ocorrem. Estudo de caso exploratório é usado como pesquisa inicial de alguns fenômenos para

derivar novas hipóteses e construir teorias, e estudos de caso confirmatórios são usados para

testar teorias existentes. A seleção de casos é um passo crucial no estudo de caso. Para isso,

usa amostragem proposital, em vez de amostragem aleatória, com o objetivo de selecionar os

casos que são mais relevantes para a proposição de estudo. Uma variação de fontes de dados é

normalmente utilizada. Os dados qualitativos, incluindo resultados de entrevistas e

observações, desempenham um papel central por oferecerem percepções ricas sobre o caso.

Page 24: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

23

A Pesquisa de Campo (Survey) é utilizada para identificar as características de uma

população de indivíduos. É mais associado com o uso de questionários de coleta de dados, no

entanto, também pode ser realizado através de entrevistas estruturadas ou técnicas de registro

de dados. As características principais que definem um survey são a seleção de uma amostra

bem definida e representativa de uma população e as técnicas de análise de dados utilizadas

para generalizar os resultados. Uma pré-condição para a realização de survey é a existência de

uma questão clara de pesquisa que envolve, usualmente, frequência e distribuição, e que

investiga sobre a natureza de uma população-alvo específica.

A Etnografia, ou Estudo Etnográfico, é uma forma de pesquisa focada na sociologia

do significado através de observações de campo. Uma característica notável do estudo

etnográfico é que ele evita impor qualquer teoria pré-existente, mas se concentra em como os

membros da comunidade dão sentido ao seu ambiente social e cultural. Os pré-requisitos para

um estudo etnográfico incluem uma questão de pesquisa que enfoca as práticas culturais de

uma determinada comunidade e o acesso de seus membros a esta comunidade. Uma forma

especial de etnografia é a observação participante, onde o pesquisador se torna um membro da

comunidade a ser estudada por um período de tempo.

Na Pesquisa Ação, diferentemente da maioria das pesquisas empíricas onde se tenta

observar o mundo como ele existe atualmente, os pesquisadores têm a pretensão de intervir

nas situações estudadas com o propósito explícito de melhorá-las. Uma condição prévia para a

pesquisa-ação é ter um “dono” do problema disposto a colaborar tanto na sua identificação,

quanto se engajar em um esforço para resolvê-lo. Pesquisa ação é também caracterizada por

um compromisso de produzir mudanças reais, em uma abordagem iterativa, para a solução de

problemas.

Segundo Easterbrook et al. (2007), “selecionar o tipo de pesquisa para o

desenvolvimento de estudos empíricos de engenharia de software é problemático porque os

benefícios e desafios para usar cada tipo ainda não estão bem catalogados. [...] A escolha do

tipo de pesquisa depende da postura teórica do pesquisador, do acesso aos recursos e de

pergunta de pesquisa que é apresentada. [...] O primeiro passo para a escolha do tipo de

pesquisa a ser adotado é clarificar o tipo de questão”. Como visto, a escolha do tipo de

questão que se pretende tratar em um estudo tem uma relação direta com o tipo de pesquisa a

ser adotado pelo estudo. Neste sentido, os autores apresentaram exemplos de questões de

pesquisa, organizados por tipo de pergunta, conforme descritos na Tabela I abaixo.

Page 25: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

24

Tabela I. Tipos e Exemplos de Perguntas de Pesquisa

Tipo de Pergunta Exemplos

Categoria Sub-categoria Código

Exploratória

Existência E X existe?

Descrição e Classificação

DCL

O que X faz? Quais são as propriedades de X? Como X é categorizado? Como podemos medir X? Quais são as propostas de X? Quais são os componentes de X? Como os componentes de X se relacionam com outros? Quais são todos os tipos de X?

Descritiva-Comparativa

DCO Como X se diferencia de Y?

Base-rate

Frequência e Distribuição FD

Como X ocorre? O que é um valor médio de X?

Descritiva-Processo

DP

Como X normalmente trabalha? Qual é o processo pelo qual X ocorre? Em que sequência os eventos de X ocorrem? Quais são as etapas de X que levam à sua evolução? Como X atinge seus objetivos?

Relacionamento Relacionamento R X e Y estão relacionados? Que ocorrências de X estão correlacionadas as de Y?

Causalidade

Causalidade C

X causa Y? X previne Y? O que causa Y? Quais são todos os fatores que causam Y? Que efeitos X têm em Y?

Causalidade-Comparativa

CC X causa mais Y do que Z? X é melhor para prevenir Y do que Z?

Causalidade-Interação

Comparativa CCI

X ou Z causam mais Y sobre uma condição, mas não em outras?

Design Design D O que é um modo eficaz para conseguir X? Que estratégias ajudam para conseguir X?

2.4. Mapeamento Sistemático

A literatura sobre métodos de pesquisa diferencia dois grandes tipos de revisões

sistemáticas da literatura, a saber:

Page 26: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

25

• Revisões Sistemáticas Convencionais da Literatura (PETTICREW, M.; ROBERTS,

H., 2006), que agregam resultados sobre a efetividade de um tratamento, intervenção

ou tecnologia, e estão relacionados com questões de pesquisa específicas, como: numa

população P, a intervenção I, num contexto C, é mais eficaz na obtenção de resultados

O do que uma intervenção C? (resultando em estrutura PICOC)

• Estudos de Mapeamento (ou escopo) (ARKSEY, H.; O´MALLEY, L., 2005), que

visam identificar todas as pesquisas relacionadas a um tema específico, ou seja,

responder a questões mais amplas relacionadas à evolução da investigação. As

questões típicas são exploratórias: O que sabemos sobre o tópico T?

Kitchenham e Charters (2007) definiram uma revisão sistemática da literatura “como

um meio de identificar, avaliar e interpretar todas as evidências disponíveis relevantes para

uma questão específica de pesquisa, área temática, ou fenômeno de interesse”. E mapeamento

sistemático da literatura, “como uma ampla revisão dos estudos primários em um tema

específico que visa identificar as evidências disponíveis sobre o tema”.

Segundo os autores, as principais diferenças entre revisão sistemática e mapeamento

sistemático são:

• Estudos de mapeamento geralmente têm questões de pesquisa mais amplas e, muitas

vezes, tratam questões múltiplas pesquisas;

• Os termos utilizados no processo de busca nos estudos de mapeamento são menos

focados do que para revisões sistemáticas e, assim, é comum retornar com um número

muito grande de estudos. O objetivo é promover uma ampla cobertura dos estudos de

interesse;

• O processo de extração de dados em estudos de mapeamento também é muito mais

amplo do que o processo de extração de dados de revisões sistemáticas. Pode ser

chamado de fase de classificação ou categorização. O objetivo desta etapa é classificar

documentos com detalhes suficientes para responder às questões de pesquisa e

identificar estudos para revisões posteriores, sem ser uma tarefa demorada;

• A etapa de análise de um estudo sobre o mapeamento é a síntese dos dados para

responder às questões de pesquisas colocadas. Não incluem técnicas de análise

aprofundada, como a meta-análise e de sínteses narrativas, mas totais e resumos. As

Page 27: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

26

representações gráficas das distribuições dos estudos por tipo de classificação pode ser

um mecanismo de comunicação eficaz;

• A divulgação dos resultados de um estudo de mapeamento pode ser mais limitada do

que para uma revisão sistemática.

Os autores ressaltaram ainda que os estudos individuais que contribuem para uma

revisão sistemática são chamados de estudos primários, que uma revisão sistemática é uma

forma de estudo secundário e que um estudo terciário é uma revisão de estudos secundários

com as mesmas questões de pesquisa.

Considerando-se, então, a questão central desta pesquisa e os conceitos sobre métodos

de pesquisas apresentados, este trabalho é caracterizado como um mapeamento sistemático,

um estudo secundário para identificação de evidências sobre os estudos primários de

replicação encontrados na literatura.

2.5. Trabalhos Associados

Nesta seção são apresentados e analisados 3 estudos similares dentro da temática desta

pesquisa, onde serão explorados os seguintes aspectos: o contexto dos estudos; os

procedimentos desenvolvidos pelos pesquisadores; a análise dos resultados; os tratamentos de

validade; e as conclusões dos estudos.

Os estudos analisados foram: A Survey of Controlled Experiments in Software

Engineering (SJØBERG, D. et al., 2005), Replication of controlled experiments in empirical

software engineering – a survey (ALMQVIST, J. P. F., 2006) e Towards Reporting

Guidelines for Experimental Replications: A Proposal. (CARVER, J., 2010).

Os 36 estudos distintos de replicações, encontrados e analisados nessas três revisões,

foram analisados para a seleção neste mapeamento.

2.5.1. A Survey of Controlled Experiments in Software Engineering (SJØBERG, et al., 2005)

Sobre o contexto do estudo, os autores desenvolveram estudo secundário (quantitativo)

para identificar como experimentos controlados em engenharia de software são conduzidos.

Para tal, desenvolveram uma revisão sistemática em 12 revistas e anais de conferências

ligados à engenharia de software, identificando 5.453 artigos, entre os anos de 1993 e 2002,

Page 28: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

27

dos quais selecionaram 103 como relevantes por tratarem experimentos controlados e quasi

experimentos com indivíduos e equipes desenvolvendo uma ou mais tarefas em experimentos

de engenharia de software. Sobre esses estudos relevantes, os autores pesquisaram os tópicos

dos experimentos, sujeitos, tarefas desenvolvidas, os ambientes de desenvolvimento e uma

síntese de como desenvolveram o tratamento das suas validades internas e externas.

Além disso, dos 103 estudos relevantes, identificaram 20 artigos onde seus autores

classificaram como replicação, compondo 14 séries de replicação (original e suas replicações)

que, sobre esses, reportaram seus tópicos, sujeitos, resultados (confirmação ou rejeição) e tipo

de replicação. Esse número de artigos identificados como replicação representa 18% (dezoito

por cento) dos estudos classificados como relevantes pelos autores, confirmando que, embora

replicação seja defendida como fundamental para o progresso da ciência, o número de estudos

objetivando replicação ainda é muito baixo.

Não informaram no estudo questões ou hipóteses de pesquisa, assim como não foi

apresentado o seu processo de planejamento, nem referência ao uso de guidelines. Os autores

não apresentaram a string de busca utilizada no estudo. Também não foi apresentado

referência ao desenvolvimento de procedimentos de pesquisa manual complementar.

Utilizaram como critério de inclusão os experimentos com indivíduos e equipes

desenvolvendo uma ou mais tarefas em experimentos controlados e quasi experimentos de

engenharia de software. E como critérios de exclusão: estudos de correlação, estudos baseados

em apenas cálculo de dados (Datamining), de avaliação de simulação de times, experimentos

de múltiplos estudos de caso, sumários de programas de pesquisa e experimentos de

usabilidade.

Os artigos foram selecionados por duplas de pesquisadores, analisando título e abstract

e observando os seguintes aspectos e atributos:

• Autoria – autor, centro acadêmico, país, ano, revista / anais de conferência;

• Tópico – tratamento, título e palavras chave;

• Sujeitos – quantitativo, categoria, modo de seleção e recrutamento;

• Tarefas e Ambientes – localização, ferramentas, individual / equipe, tipo de aplicação,

duração e tamanho;

• Replicação – indicação de replicação, autoria, sujeitos e tópicos;

• Validade Interna – categoria explicita de tratamento de validade interna;

Page 29: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

28

• Validade Externa – categoria explicita de tratamento de validade externa;

As diferenças entre as duplas foram tratadas coletivamente e, quando

necessário, com a participação de um terceiro pesquisador. Os dados pesquisados foram

armazenados em um banco de dados MS SQL Server 2000. Além do banco de dados, foi

gerado um catálogo com todos os artigos pesquisados em formato PDF. A equipe utilizou

para análise dos dados o software de inteligência analítica SAS, do SAS Institute Inc.

Os autores não apresentaram critérios nem processo de avaliação de qualidade

dos artigos selecionados.

Para a apresentação da análise dos resultados obtidos, utilizaram 7 capítulos do estudo,

um para cada aspecto e atributos anteriormente referenciados, contendo tabelas, gráficos e

textos destacando situações relevantes de cada aspecto.

Sobre autoria, inicialmente, os autores apresentaram por revista / anais de conferência,

a distribuição do número de artigos pesquisados e relevantes. Em seguida, no mesmo capítulo,

apresentaram os 20 principais pesquisadores e as 10 principais organizações que conduziram

experimentos controlados em engenharia de software no período compreendido entre 1993 e

2002.

Sobre os tópicos desenvolvidos pelos experimentos, apresentaram a distribuição do

número de artigos, seguindo dois esquemas de classificação: IEEE Keyword Taxonomy -

Software Engineering, (http://www.computer.org/mc/keywords/software.htm), e o

apresentado por Glass, Vessey e Ramesh (2002).

No capítulo sobre sujeitos utilizados nos experimentos, foram apresentados 3

conjuntos de informações. Inicialmente foram apresentados os números de sujeitos

participantes dos experimentos, distribuídos por categoria. Em seguida, foram apresentadas

informações sobre o número de sujeitos envolvidos nos estudos por categoria e quantidade de

experimentos. E, finalmente, foram apresentadas informações sobre o número de sujeitos,

distribuídos por tipo de remuneração e quantidade de experimentos.

Sobre as tarefas dos experimentos, apresentaram as suas análises distribuídas em 4

partes. Na primeira parte da análise apresentaram informações sobre a duração das tarefas por

categoria de processo de software e número de experimentos. Na segunda, apresentaram

informações do número de experimentos, distribuídos por tempo de duração de suas tarefas.

Page 30: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

29

Na terceira, trataram da análise e apresentação de informações sobre o número de

experimentos, distribuídos por categoria de processo de software e duração das tarefas. E,

finalmente, na quarta parte, apresentaram as informações sobre as análises realizadas dos

experimentos por tipo de aplicação.

Sobre ambiente, os pesquisadores analisaram e apresentaram informações sobre a

distribuição dos experimentos por tipo de local onde foram desenvolvidos, assim como

informações sobre a distribuição do número de experimentos por tipo de ferramenta utilizada.

No capítulo sobre replicação, os autores apresentaram os experimentos agrupados em

conjuntos de original e suas replicações. Cada grupo foi associado a um tópico, cuja origem

do tópico os autores não deixaram clara. Além do tópico, cada experimento apresentou a sua

referência do número de seqüência de replicação sobre o experimento original, o tipo de

sujeito envolvido com o experimento, resultado (confirmação ou não do original), o tipo de

autor que desenvolveu o experimento de replicação, a classificação do tipo de replicação e as

diferenças entre o experimento e o estudo original. Para a tipificação de replicação, os autores

utilizaram o conceito e tipos (Close e Differentiated) de replicação abordados por (Lindsay e

Ehrenberg (1993).

E, finalmente, no capítulo sobre tratamento de validade, os atores, inicialmente

apresentaram a distribuição do número de experimentos que apresentaram tratamento de

validade interna e, em seguida, a distribuição do número que apresentaram tratamento de

validade externa, ambas agrupadas por categorias e fatores, segundo Shadish, Cook e

Campbell (2002).

Desenvolveram o tratamento de validade de sua pesquisa, detalhando considerações

sobre o viés na seleção de revistas, conferências e de artigos, sobre a imprecisão na extração

de dados e sobre os possíveis erros no processo de classificação dos tópicos.

Para a conclusão dos estudos apresentaram um sumário com os principais resultados

da revisão que caracterizaram quantitativamente os experimentos em engenharia de software.

Consideraram baixa a proporção entre número de experimentos desenvolvidos e o número de

experimentos controlados em engenharia de software. Observaram, também, que o número de

estudantes utilizados nos experimentos foi muito maior que o de profissionais, assim como o

número de aplicações em projetos estudantis foi muito maior que o de aplicações comerciais

utilizadas nos experimentos. Com o baixo uso do número de profissionais e de aplicações

Page 31: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

30

comerciais, pode-se questionar a representatividade dos resultados desses experimentos para a

indústria.

Finalizando o sumário, consideraram que o principal resultado da pesquisa é que os

relatórios dos experimentos, na sua maioria, são vagos, não sistemáticos e com muitas

inconsistências metodológicas. Chamaram a atenção da necessidade de utilização de

guidelines para prover apoio significativo para os pesquisadores lidarem, com qualidade, com

a complexidade do desenvolvimento e documentação de experimentos em engenharia de

software.

2.5.2. Replication of controlled experiments in empirical software engineering – a survey (ALMQVIST, J. P. F., 2006)

Sobre o contexto do estudo, o autor desenvolveu estudo secundário (quantitativo e

qualitativo) sobre o uso de replicação de experimentos controlados em engenharia de software

empírica. Desenvolveu sua pesquisa na Electronic Library System da Lund University,

biblioteca composta por mais de 300 bancos de dados com publicações científicas, na qual

identificou, até o ano de 2005, 223 estudos. Desses estudos, selecionou 31 como relevantes,

compondo 20 séries de replicação e apresentando, assim como em (SJØBERG, et al., 2005),

seus tópicos, sujeitos, resultados (confirmação ou rejeição), e tipo de replicação.

Utilizou guideline proposto em (KITCHENHAM, B., 2004) como base para o

planejamento e desenvolvimento de seu estudo. Apresentou como questão de pesquisa: Como

os pesquisadores fazem uso de replicação no campo da engenharia de software empírica?

O autor utilizou o conceito de replicação como “repetição de um experimento,

seguindo ao máximo possível, o experimento original ou com mudanças deliberadas de um ou

mais parâmetros experimentais do experimento original”. Definiu 4 tipos de replicação e

utilizou esses tipos para classificar as replicações pesquisadas.

Utilizou as seguintes strings de busca: (“software engineering” AND “replication”),

(“software engineering” AND “replica”), (“software engineering” AND “replicating”),

(“software engineering” AND “replicated”), (“software engineering” AND “replicates”),

(“software engineering” AND “validity”).

Não detalhou os critérios utilizados de inclusão e exclusão. Todo o processo de

seleção e extração foi executado pelo próprio autor. Após a seleção automática, desenvolveu

pesquisa manual, incluindo, os resultados da pesquisa de (SJØBERG, D. et al., 2005) que

Page 32: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

31

tratavam de replicação. Os artigos foram catalogados em um banco de dados, no entanto não

foi detalhado o processo de catalogação. Fez avaliação de qualidade dos artigos selecionados

baseado em (KITCHENHAM, B. 2004), no entanto, não utilizou essa informação ao longo do

seu estudo.

Para a apresentação da análise dos resultados quantitativos e qualitativos de seu

estudo, utilizou um capítulo para cada uma das análises, contendo tabelas e textos destacando

situações relevantes de cada tópico analisado.

Iniciou a análise quantitativa referenciando os dados tabulados de sua pesquisa e

apresentados de forma similar a apresentada por (SJØBERG, D. et al., 2005) para os dados

dos experimentos de replicação. Apresentou os experimentos agrupados na forma de original

e suas replicações. Cada conjunto foi associado a um tópico. Além do tópico, cada

experimento apresentou a sua referência do número de seqüência de replicação sobre o

experimento original, o ano de publicação, o tipo de sujeito envolvido com o experimento, o

resultado (confirmação ou não do original), a classificação do tipo de replicação segundo os

tipos definidos pelo próprio autor, a classificação do tipo de replicação (Similar, Alternative

or Improved), de (BROOKS, A. et al., 1995), e a referência bibliográfica do artigo.

Em seguida analisou e apresentou, por canal de publicação, o número de experimentos

originais e replicações, o número de experimentos por ano de publicação, e a distribuição do

número de experimentos que confirmaram e que não confirmaram o original, também por ano

de publicação.

Analisou os pesquisadores e instituições, apresentando a distribuição de frequência do

envolvimento desses com replicações. Depois analisou e apresentou informações sobre os

tópicos e séries, agrupando os experimentos originais e replicações, informações essas

relacionadas com frequência de distribuição do número de experimentos na série, relação

entre séries, as dificuldades do autor com a classificação dos experimentos nas séries e

informações sobre conteúdos dos artigos.

Finalizou sua análise quantitativa apresentando considerações sobre as replicações

referenciadas em (SJØBERG, D. et al., 2005), informações sobre os tipos de replicação

indicados pelo próprio autor e sobre os resultados da alocação dos artigos pesquisados nesses

tipos.

Page 33: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

32

Na análise qualitativa, o autor apresentou suas análises sobre como os pesquisadores

descreveram suas motivações para replicar, assim como suas descrições sobre os processos de

replicação. Inicialmente apresentou como motivação para se replicar, observada por vários

pesquisadores, a melhoria das conclusões de experimentos realizados, seja através de

modificações dos seus elementos e ambientes experimentais, de modificações dos métodos

estatísticos de análise, e/ou dos próprios pesquisadores. Outra motivação apresentada foi a de

melhorar a validade dos resultados dos experimentos. Nesse sentido o autor apresentou

conceitos e análises dos artigos sobre os tratamentos de validade interna, de construto e

externa considerados por vários pesquisadores.

Como parte dos processos de replicação, o autor apresentou informações sobre o uso

de estudantes e profissionais como sujeitos dos experimentos, uso de guidelines para o

planejamento e desenvolvimento de replicação, processos de escolha de experimento para

replicar e fatores, que o autor considerou decisivo para a replicação, como bases de

conhecimento, séries / famílias de experimentos e redes de pesquisa.

Apresentou ainda análise da importância de uma boa documentação, tanto do

experimento original, quanto de suas replicações, de forma a possibilitar o desenvolvimento

de novas replicações com base nessas informações. Apresentou também informações sobre a

utilização de guideline para documentação.

Finalizou sua análise qualitativa apresentando informações sobre o posicionamento de

alguns pesquisadores de que para fazer progresso no ramo da engenharia de software

empírica, resultados de experimentos com outros tipos de pesquisa, como survey e estudo de

caso, devem ser combinados e para isso, pode-se utilizar de meta-análises.

Desenvolveu o tratamento da validade de sua pesquisa considerando os conceitos de

validade interna, externa e de construto, apresentados por ele quando analisava

qualitativamente os estudos. Ressaltou como tratamento de validade interna a classificação

dos tópicos e séries e a classificação dos experimentos segundo (BROOKS, A. et al., 1995).

Como validade externa tratou a identificação dos artigos. Como validade de construto alegou

que não se aplicava a sua pesquisa.

Ao final do seu estudo, apresentou um capítulo com as suas principais conclusões.

Iniciou suas conclusões esclarecendo que o seu estudo foi conduzido de forma exploratória,

sem considerar nenhuma hipótese específica. Que um grande número de informações pode ser

Page 34: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

33

extraído de sua pesquisa, no entanto, algumas dessas informações podem requerer

complementação de novos estudos. Observou que o número de insucessos nas replicações

vem diminuindo nos últimos anos e que ele não conseguiu identificar se pode ser atribuído a

um viés de publicação, a uma melhor documentação dos originais ou uma melhoria nos

procedimentos de replicação.

Sobre essas conclusões, o autor fez recomendações ressaltando o uso de guidelines

para o desenvolvimento e documentação de experimentos de replicação, o uso, sempre que

possível, de bases de conhecimentos sobre as replicações, a necessidade de apresentação dos

dados brutos dos experimentos para efeito de análises futuras, e a necessidade de identificar o

experimento como replicação em seu resumo e palavras chave, de forma a facilitar o processo

de identificação.

Finalizando o capítulo, o autor indicou como trabalhos futuros aprofundar a

perspectiva de tratamento de validade de constructo da sua pesquisa, desenvolver meta-

análises das séries dos experimentos replicados, e desenvolver revisão sistemática sobre

replicação, ampliando os resultados da sua pesquisa.

2.5.3. Towards Reporting Guidelines for Experimental Replications: A Proposal. (CARVER, J., 2010)

Sobre o contexto do estudo, o autor desenvolveu uma revisão nas replicações

publicadas nos anais da conferência International Symposium on Empirical Software

Engineering and Metrics e no Empirical Software Engineering Journal, com o objetivo de

prover um ponto de partida para discussões sobre a formalização e utilização de guidelines

para relatórios de estudos de replicação. Encontrou 15 estudos relevantes de replicação, dos

quais 5 novos em relação aos encontrados por Almqvist (2006).

Sobre os estudos relevantes, o autor observou como eles documentaram referencias

às informações dos seus originais, como eram feitas as comparações entre os resultados dos

estudos originais e de suas replicações, assim como observou as famílias de estudos que,

necessariamente, não têm os mesmos originais, mas tratam questões assemelhadas.

O autor deixou claro que seu objetivo não era tratar conceitos sobre replicação,

nem fazer avaliações críticas sobre as replicações propriamente ditas, mas na sua

documentação.

Page 35: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

34

Não utilizou guidelines para o planejamento e desenvolvimento de seu estudo, nem

apresentou questão de pesquisa. Na verdade, com base em suas observações, propôs um

guideline para documentação de estudos de replicação, de forma incrementar sue valor

experimental.

Utilizou as seguintes strings de busca: “Replication” e “Replicated”, Não detalhou

os critérios de inclusão e exclusão.

Para a apresentação de sua proposta de guideline para documentação de estudos de

replicação, apresentou um capítulo, contendo referências sobre o que documentar em um

estudo de replicação, sobre documentação de famílias de replicações e adaptações necessárias

para publicação em short papers.

Sobre o que documentar, registrou orientações sobre a documentação das

informações sobre o estudo original, sobre a replicação, comparação dos resultados originais

com os da replicação e conclusões com informações cruzadas da replicação com as do estudo

original.

Não apresentou tratamento de validade de seu estudo.

Ao final, apresentou um capítulo sumarizando seu estudo, cujo principal objetivo

foi a proposição de um conjunto de diretrizes para a publicação de estudos de replicação, de

forma que a comunidade possa obter maior conhecimento com eles.

2.6. Síntese dos Trabalhos Associados

Encerrando esta seção, na Tabela II, encontra-se uma síntese dos três estudos.

Tabela II. Síntese dos Estudos Associados

(SJØBERG, et al., 2005)

(ALMQVIST, J. P. F., 2006)

(CARVER, J., 2010).

Estudo

Revisão sobre experimentos controlados em engenharia de software, inclusive replicação de experimentos controlados.

Revisão sobre replicação de experimentos controlados em engenharia de software.

Revisão nos estudos de replicação publicados nos anais da International

Symposium on

Empirical Software

Engineering and

Metrics e no Empirical

Software Engineering

Journal Período de Entre os anos de 1993 – Até o ano de 2005. Não foi citado. O

Page 36: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

35

(SJØBERG, et al.,

2005) (ALMQVIST, J. P. F.,

2006) (CARVER, J., 2010).

Referência 2002. estudo foi publicado em 2010.

Perguntas e Hipóteses da

Pesquisa

Não informaram no estudo perguntas ou hipóteses de pesquisa.

Apresentou como questão de pesquisa: Como os pesquisadores fazem uso de replicação no campo da engenharia de software empírica?

Não informou no estudo perguntas ou hipóteses de pesquisa. Uma hipótese inferida é que estudos bem documentados possibilitam maior conhecimento com eles.

Guideline Utilizado para

a Pesquisa

Não apresentaram processo de planejamento da pesquisa nem referência ao uso de guidelines.

Utilizou guideline proposto por (KITCHENHAM, B., 2004) como base para o planejamento e desenvolvimento de seu estudo.

Não apresentou processo de planejamento e desenvolvimento de sua pesquisa. Propôs, com base em suas observações, um guideline para documentação de estudos de replicação

Seleção de Estudos

Não apresentaram String de Busca Os autores não informaram sobre a realização de pesquisa manual complementar Inclusão: Experimentos com indivíduos e equipes desenvolvendo uma ou mais tarefas em experimentos (controlados e quasi experimentos) de engenharia de software. Exclusão: Estudos de correlação, estudos baseados em apenas cálculo de dados (datamining), de avaliação de simulação de times, experimentos de múltiplos estudos de caso, sumários de programas de pesquisa e experimentos de usabilidade.

Strings utilizadas: (“software

engineering” AND

“replication”),

(“software

engineering” AND

“replica”), (“software

engineering” AND

“replicating”),

(“software

engineering” AND

“replicated”),

(“software

engineering” AND

“replicates”),

(“software

engineering” AND

“validity”).

Não detalhou os critérios utilizados de inclusão e exclusão. Seleção e extração desenvolvida pelo próprio autor. O autor realizou

Strings utilizadas: “Replication” e “Replicated”. Não detalhou os critérios utilizados de inclusão e exclusão. Seleção e extração desenvolvida pelo próprio autor. Não informou sobre busca manual. Não apresentou avaliação de qualidade dos estudos selecionados. Mas deixou claro que isso não era objetivo de seu estudo.

Page 37: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

36

(SJØBERG, et al.,

2005) (ALMQVIST, J. P. F.,

2006) (CARVER, J., 2010).

Seleção e extração desenvolvida por uma equipe de 6 pesquisadores trabalhando em duplas. Os autores não realizaram avaliação de qualidade dos artigos selecionados.

pesquisa manual complementar, cuja base foi o conjunto de artigos tratados como replicação no estudo de (SJØBERG, D. et al., 2005) Fez avaliação de qualidade dos artigos selecionados, no entanto, não utilizou as informações ao logo do seu estudo.

Resultados da Seleção

5.453 artigos; 103 artigos selecionados, dos quais 20 artigos de replicações, distribuídos em 14 séries (original mais suas replicações).

223 artigos listados; 31 artigos de replicações selecionados, distribuídos em 20 séries.

Não apresentou o total de artigos selecionados. 15 artigos foram considerados relevantes.

Conceito de Replicação Utilizado

Método científico de avaliação e extensão de resultados do estudo original e, conseqüentemente, sua generalização. (LINDSAY, R. M.; EHRENBERG, A. S. C., 1993)

Repetição de um experimento, seguindo ao máximo possível, o experimento original ou com mudanças deliberadas de um ou mais parâmetros experimentais do experimento original. (Definição do próprio autor)

Não apresentou.

Tipos de Replicação Utilizados

Close: Mais próxima possível do original; Differentiated: Variações deliberadas sobre o original. (LINDSAY, R. M.; EHRENBERG, A. S. C., 1993)

Similar, external

replications: Mais próxima do original, variando os pesquisadores; Improved, internal

replications: Variando as condições do estudo, mantendo os pesquisadores; Similar, internal

replications: mais próxima possível do mesmo estudo,

Não apresentou.

Page 38: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

37

(SJØBERG, et al.,

2005) (ALMQVIST, J. P. F.,

2006) (CARVER, J., 2010).

mantendo os pesquisadores; Differentiated, external

replications: Variando deliberadamente o original e os pesquisadores. (Definições do próprio autor)

Análise dos Dados

Apresentaram suas análises quantitativas sobre os experimentos controlados através de tabelas, gráficos e textos destacando situações relevantes de cada aspecto seguinte: Autoria – autor, centro acadêmico, país, ano, revista / anais de conferência; Tópico – tratamento, título e palavras chave; Sujeitos – quantitativo, categoria, modo de seleção e recrutamento; Tarefas e Ambientes – localização, ferramentas, individual / equipe, tipo de aplicação, duração e tamanho; Replicação – indicação de replicação, autoria, sujeitos e tópicos; Validade Interna – categoria explicita de tratamento de validade interna; e Validade Externa – categoria explicita de tratamento de validade externa.

Apresentou suas análises quantitativas e qualitativas sobre os experimentos de replicação através de tabelas e textos, similar a forma apresentada por (SJØBERG, D. et al., 2005), destacando situações relevantes de cada tópico analisado. Nas análises quantitativas, utilizou como base a formatação de (SJØBERG, et al., 2005), Apresentou os experimentos agrupados na forma de original e suas replicações. Cada grupo foi associado a um tópico. Além do tópico, cada experimento apresentou a sua referência do número de seqüência de replicação sobre o experimento original, o ano de publicação, o tipo de sujeito envolvido com o experimento, o resultado (confirmação ou não do original), a classificação do tipo de replicação segundo os tipos definidos pelo

Apresentou informações sobre o que documentar em um estudo de replicação, sobre documentação de famílias de replicações e adaptações necessárias para publicação em short papers

Page 39: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

38

(SJØBERG, et al.,

2005) (ALMQVIST, J. P. F.,

2006) (CARVER, J., 2010).

próprio autor, a classificação do tipo de replicação segundo (BROOKS, A. et al., 1995) e a referência bibliográfica do artigo. Além desses dados, analisou quantitativamente os experimentos por canal de distribuição, pesquisadores e instituições, Nas análises qualitativas, o autor apresentou avaliações de como os pesquisadores descreveram suas motivações para replicar, assim como de suas descrições sobre os processos de replicação.

Tratamentos de Validade

Desenvolveram o tratamento de validade de sua pesquisa detalhando considerações sobre o viés na seleção de revistas, conferências e de artigos, sobre a imprecisão na extração de dados e sobre os possíveis erros no processo de classificação dos tópicos.

Desenvolveu o tratamento da validade interna e externa de sua pesquisa.

Não apresentou.

Conclusões

Registraram a baixa proporção entre o número de experimentos e o número de experimentos controlados em engenharia de software; Também registraram

Foi um estudo exploratório sem considerar nenhuma hipótese específica; Observou que o número de insucessos nas replicações vem diminuindo ao longo dos tempos por viés de

Considerou como principal objetivo do estudo foi a proposição de um conjunto de diretrizes para a publicação de estudos de replicação, de forma que a comunidade possa obter maior

Page 40: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

39

(SJØBERG, et al.,

2005) (ALMQVIST, J. P. F.,

2006) (CARVER, J., 2010).

um número de estudantes muito maior que o número de profissionais, assim como o número de aplicações em projetos estudantis foi muito maior que o número de aplicações comerciais, podendo interferir na representatividade dos resultados; Finalmente, consideraram como o principal resultado da pesquisa é que os relatórios dos experimentos, na sua maioria, são vagos, não sistemáticos e com muitas inconsistências metodológicas, chamando à atenção da necessidade de utilização de guidelines para prover apoio significativo para os pesquisadores lidarem, com qualidade, com a complexidade do desenvolvimento e documentação, com alta qualidade, de experimentos em engenharia de software.

publicação, melhor documentação dos originais ou melhoria nos procedimentos de replicação; Recomendou o uso de guidelines para o desenvolvimento e documentação de replicações; Finalmente, indicou como trabalhos futuros aprofundar a perspectiva de tratamento de validade de constructo da sua pesquisa; desenvolver meta-análises das séries dos experimentos replicados; e desenvolver revisão sistemática sobre replicação, ampliando os resultados da sua pesquisa.

conhecimento com eles.

Page 41: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

40

3. METODOLOGIA

Como referenciado anteriormente, com o amadurecimento da disciplina de engenharia

de software empírica e com o aumento da compreensão dos estudos teóricos e práticos sobre

replicação, espera-se que questões relacionadas com replicação sejam mais abordadas. Dessa

forma, uma revisão da literatura sobre replicações em engenharia de software é um passo

importante para essa compreensão e amadurecimento.

Neste trabalho sobre replicações de estudos empíricos em engenharia de software, foi

realizado um mapeamento sistemático. O objetivo com o mapeamento foi coletar evidências

que possam ser utilizadas como guias de pesquisas e práticas, portanto enquadra-se como

parte do esforço de engenharia de software baseada em evidências (KITCHENHAM, B.;

DYBÅ, T.; JØRGENSEN, M., 2004).

Este trabalho é classificado como um estudo secundário. As orientações de

Kitchenham e Charters (2007) foram seguidas para a construção e implementação do

protocolo de planejamento e execução desta pesquisa. Aqui, são apresentados e detalhados os

seus itens componentes e suas operacionalizações.

Neste capítulo encontram-se as questões as quais a pesquisa procurou responder; a

composição da equipe envolvida nos processos de pesquisas manual e automática, seleção e

extração e avaliação de qualidade dos estudos primários; os procedimentos adotados para

decisão sobre os conflitos desses processos; as principais fontes de dados e estratégias

realizadas nas buscas dos estudos de replicação; os critérios de inclusão e exclusão aplicados

nos estudos primários; o processo desenvolvido de seleção dos estudos e os seus resultados;

as informações extraídas dos estudos primários; os critérios e o processo de avaliação de

qualidade aplicados nos estudos; e uma síntese de como os resultados foram analisados.

É importante ressaltar que no restante deste estudo, será utilizado o termo paper para

se referir aos trabalhos publicados (artigo ou relatório técnico) analisados na revisão. Será

utilizado o termo “estudo original” (ou simplesmente, “original”) ou “replicação” para

referenciar um experimento ou outro tipo de estudo empírico publicado no paper. Assim, é

importante notar que um paper pode relatar uma ou mais replicações. Finalmente, o termo

“estudo” é usado para se referir a uma replicação ou estudo original, quando a distinção entre

eles não é importante.

Page 42: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

41

3.1. Questões de Pesquisa.

Neste mapeamento, a seguinte questão central de pesquisa orientou todo o seu

desenvolvimento:

RQ: Qual é o estado atual dos trabalhos de replicação de estudos empíricos realizados

em pesquisas de engenharia de software?

As seguintes questões específicas de pesquisa foram utilizadas para orientar a extração

de dados, análise, síntese e apresentação dos resultados:

• RQ01: Qual é a evolução do número e tipo (interna e externa) de replicações ao longo

dos anos?

• RQ02: Que temas de engenharia de software foram endereçados pelas replicações?

• RQ03: Quais pesquisadores e organizações estão replicando?

• RQ04: Quais os métodos de pesquisa estão sendo utilizados nas replicações?

• RQ05: Que conjuntos de replicações foram encontrados?

• RQ06: Qual é a qualidade dos trabalhos de replicação?

• RQ07: Quais as principais lições aprendidas apresentadas nos estudos de replicação?

3.2. Equipe Envolvida

Para a construção do protocolo deste mapeamento, realização das pesquisas manual e

automática e pré-seleção dos estudos (título e resumo), foi composta uma equipe de 5

pesquisadores. Além do autor desta dissertação, participaram como pesquisadores assistentes

desses processos: Rodrigo. F. Lopes, mestre em engenharia de software pelo CESAR.EDU,

João Paulo N. de Oliveira, Leonardo F. M. de Oliveira, mestrandos do curso de Pós-

Graduação em Ciência da Computação, do Centro de Informática, da Universidade Federal de

Pernambuco (CIn/UFPE), e Adelmo J. C. de Almeida, concluinte do curso de Bacharelado em

Ciência da Computação, também do CIn/UFPE.

E para o aperfeiçoamento do protocolo, realização da seleção dos estudos, extração de

dados e análise de qualidade dos estudos, houve uma mudança no número e na composição da

equipe. Saiu da equipe o concluinte do curso de graduação e entraram dois pesquisadores para

assistir à realização dessas fases do mapeamento: A. César A. França e Tatiana B. Gouveia,

ambos doutorandos do curso de Pós-Graduação em Ciência da Computação, do CIn/UFPE.

Page 43: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

42

A composição de uma equipe para certas etapas de um mapeamento sistemático é

considerada importante para aumentar a confiabilidade dos resultados (KITCHENHAM, B.;

CHARTERS, S., 2007). Com uma equipe é possível associar pares de pesquisadores para as

tarefas de seleção, avaliação de qualidade e extração de dados, que podem produzir resultados

pouco confiáveis quando conduzidos por um único pesquisador, conforme discutido na

próxima seção.

3.3. Procedimentos de Decisão sobre Conflitos na Seleção, Extração e Qualidade dos Estudos

Para a execução das pesquisas manual e automática, foram indicados, de forma

aleatória, os engenhos de busca, revistas e anais para cada um dos pesquisadores. Estes

realizaram, individualmente, as pesquisas e pré-seleção, gerando o conjunto de estudos para

as fases seguintes deste mapeamento.

Para as próximas etapas da pesquisa, Da Silva et al. (2011) ressaltaram na

apresentação da metodologia de seu estudo que “[...] Três importantes atividades em uma

revisão sistemática exigem decisões sobre possíveis situações de conflito: seleção de estudos,

avaliação de qualidade e extração de dados. Assim, é recomendado que tais atividades sejam

realizadas por, pelo menos, dois pesquisadores”. E concluíram que “[...] um processo de apoio

à tomada de decisão e consenso é necessário”.

A combinação dos seis membros da equipe envolvidos com essas atividades neste

mapeamento possibilitou a formação de 16 duplas distintas. Foram distribuídos,

aleatoriamente, os estudos resultantes da pré-seleção com essas duplas, que realizaram a

seleção, extração dos dados e avaliação de qualidade.

Cada componente da dupla trabalhou individualmente os estudos destinados para a

dupla. Ao final dos trabalhos de cada dupla, cada pesquisador discutiu com seu par, em uma

reunião de consenso, as diferenças sobre a seleção, extração e avaliação de qualidade dos

estudos. Quando o consenso não foi possível, um terceiro pesquisador, aleatoriamente

escolhido, resolveu as divergências.

3.4. Fontes de Dados e Estratégia de Busca

Um processo amplo de pesquisa foi realizado, combinando busca automática e

manual, de forma a atingir uma elevada cobertura dos estudos primários.

Page 44: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

43

A pesquisa manual foi realizada no mês de novembro de 2010 em relevantes revistas e

anais de conferências e na lista de estudos primários analisados em dois trabalhos associados

(ALMQVIST, J. P. F., 2006) (CARVER, J., 2010). Foram analisados os títulos e os resumos

de todos os papers e, muitas vezes, quando se tinha dúvidas da pertinência do paper ao tema,

na introdução e conclusões, em cada uma das fontes utilizadas na busca manual (Tabela III).

Tabela III. Fontes Manuais

ACM Transactions on Software Engineering Methodologies http://portal.acm.org/citation.cfm?id=J790&CFID=16581986&CFTOKEN=87385715

IEEE Transactions on Software Engineering http://www.computer.org/portal/web/csdl/transactions/tse#1

Empirical Software Engineering Journal http://www.springerlink.com/content/100262/ Information and Software Technology Journal http://www.sciencedirect.com/science/journal/09505849 Int. Conference on Software Engineering http://www.computer.org/portal/web/csdl/home Int. Conference on Evaluation and Assessment of Software Engineering http://www.computer.org/portal/web/csdl/home Int. Symposium on Empirical Software Engineering and Measurement http://www.computer.org/portal/web/csdl/home Int. Ws. on Replication in Empirical Software Engineering Research http://sequoia.cs.byu.edu/reser2010

Trabalhos Associados: (ALMQVIST, J. P. F., 2006) e (CARVER, J., 2010).

A busca automática foi realizada em outubro de 2010, em cinco engenhos de busca

e sistemas de indexação (Tabela IV).

Tabela IV. Fontes Automáticas

ACM Digital Library http://portal.acm.org IEEE Xplore Digital Library http://www.ieeexplore.ieee.org/Xplore ScienceDirect http://www.sciencedirect.com SCOPUS http://www.scopus.com JSTOR http://www.jstor.org

A string de busca utilizada na busca automática foi construída com base em três

termos extraídos da questão central da pesquisa: replicação, estudos empíricos e engenharia

de software. Sinônimos para replicação foram encontrados na literatura, em especial nos 18

estudos revistos por Gómez et al. (2009), e em consultas com especialistas em engenharia de

software empírica. Foram utilizados os tipos de estudos empíricos apresentados em

(EASTERBROOK S. M. et al., 2007). Foram adicionados plurais dos sinônimos porque

Page 45: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

44

vários engenhos de busca não tratam o “*” como esperado. Finalmente, não foi utilizado

sinônimo para engenharia de software. Para construir a string de busca, sinônimos foram

agrupados através do conectivo OR, e os conjuntos de sinônimos para cada termo foram

agrupados através do conectivo AND.

Com o intuito de avaliar e ajustar a string sobre os sinônimos e sobre a quantidade e

relevância dos artigos retornados, foram realizadas várias pesquisas no ACM Digital Library

(http://portal.acm.org) e ajustes na string. Escolheu-se o ACM por ser uma das principais

fontes de dados de estudos da engenharia de software. O formato final da string encontra-se

descrito na Figura 1.

Figura 1. String de Busca

("replication" OR "replications" OR "reproduction" OR "reproductions"

OR "reanalysis" OR "re-analysis" OR "empirical generalization" OR

"generalization and extension" OR ("reproducibility" AND "experiment")

OR "conceptual extension" OR "corroboration" OR "checking of analysis"

OR "complete secondary analysis" OR "restricted secondary analysis" OR

"pseudoreplication“ OR "duplication" OR "conceptual extension" OR

"empirical generalization“ OR "model comparisons")

AND

("empirical" OR "experimental" OR "experiment" OR "experiments" OR

"case study" OR "case studies" OR "ethnography" OR "ethnographic

study" OR "ethnographic studies" OR "survey" OR "surveys" OR "action

research" OR "quasi-experiment" OR "field research")

AND

("software engineering")

Os pesquisadores realizaram as pesquisas manuais e automática trabalhando

individualmente em um engenho e/ou em um conjunto de fontes manuais. Os pesquisadores

avaliaram os resultados da busca automática (n = 16.055), observando o título e resumo, e

excluindo os papers que não eram claramente relevantes (Tabela V). Os documentos

resultantes da pesquisa automática (n = 382) foram catalogados juntamente com os 74

documentos potencialmente relevantes encontrados na busca manual (Tabela VI). O processo

de busca finalizou com um conjunto de 456 papers potencialmente relevantes.

Tabela V. Desenvolvimento da Pesquisa Automática

Fonte Automática Resultado Engenhos

% sobre Total dos Engenhos

Pré-seleção (Título e Resumo)

% sobre Total Pré-

seleção

ACM Digital Library 4.853 30% 142 37% IEEE Xplore Digital Library 5.492 34% 76 20%

Page 46: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

45

ScienceDirect 1.134 7% 15 4% Scopus 2.571 16% 90 24% JSTOR 2.005 12% 59 15%

Total da Pesquisa 16.055 100% 382 100%

Tabela VI. Desenvolvimento da Pesquisa Manual

Fonte Manual Resultado da Busca

% sobre Total

Manual ACM Transactions on Software Engineering Methodologies 3 4% IEEE Transactions on Software Engineering 11 15% Empirical Software Engineering Journal 20 27% Information and Software Technology Journal 15 20% Int. Conference on Software Engineering 2 3% Int. Conference on Evaluation and Assessment of Software

Engineering

3 4%

Int. Symposium on Empirical Software Engineering and

Measurement

7 9%

Int. Ws. on Replication in Empirical Software Engineering

Research

1 1%

Trabalhos Associados: (ALMQVIST, J. P. F., 2006) e (CARVER, J., 2010).

12 16%

Total da Pesquisa 74 100%

Para apoiar a equipe nos processos de seleção, extração, e catalogação, foram

utilizadas as ferramentas MENDELEY (www.mendeley.com), JABREF

(jabref.sourceforge.net) e DROPBOX (www.dropbox.com);

3.5. Critérios de Inclusão e Exclusão

A equipe desenvolveu pesquisa na literatura à procura de documentos relatando dois

tipos de estudos (critérios de inclusão):

• Replicações de estudos empíricos em engenharia de software; e

• Trabalhos conceituais e teóricos sobre replicações, incluindo teorias, definições,

taxonomias, lições aprendidas, etc.

Foram excluídos papers que reuniram pelo menos um dos seguintes critérios (critérios

de exclusão):

• Não escrito em Inglês.

Page 47: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

46

• Não disponível na web.

• Papers de pesquisadores convidados, keynote speech, relatórios de workshops, livros,

teses e dissertações.

• Documentos incompletos, rascunhos, slides de apresentações e resumos estendidos.

• Estudos secundários, terciários e meta-análises.

• Endereçando áreas da ciência da computação que não são, claramente, engenharia de

software (por exemplo, sistemas de banco de dados, interação homem-máquina, redes

de computadores, etc.)

• Endereçando replicação somente como parte de trabalho futuro.

3.6. Seleção dos Estudos

Os pesquisadores realizaram a seleção dos estudos em duas etapas. Na primeira etapa,

as duplas de pesquisadores analisaram independentemente cada paper resultante do processo

de pesquisa (n = 456). Cada pesquisador aplicou os critérios de inclusão e exclusão (Seção

3.5) sobre os papers potencialmente relevantes após a leitura do resumo, introdução,

desenvolvimento e conclusão de cada paper. Essa etapa selecionou 136 trabalhos (Tabela

VII).

Tabela VII. Desenvolvimento da Pesquisa Manual

Desenvolvimento da Seleção Total de Estudos

Total de Estudos Potencialmente Relevantes (Tot. Manual + Tot. Pré-seleção) 456 Aplicação dos Critérios de Inclusão e Exclusão (-) 322 Total de Estudos Relevantes 134

Na segunda etapa, os papers resultantes da aplicação dos critérios de inclusão e

exclusão foram classificados em dois conjuntos: replicações e trabalhos conceituais e teóricos

sobre replicação. No final desta fase, foram encontrados 93 papers de replicação (REP no

Apêndice A) e 41 papers sobre replicação (ABO no Apêndice A). Nesta dissertação não serão

analisados os trabalhos do conjunto ABO, mas esta análise é apontada como um importante

trabalho futuro a ser desenvolvido no trabalho de doutorado do autor.

Ao longo do processo de extração, foram recuperados, por cada dupla de

pesquisadores, os papers dos estudos originais de cada replicação do conjunto REP. Foram

Page 48: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

47

encontrados 43 papers de estudos originais (ORI no Apêndice A). O número total de

documentos relevantes encontrados nesta revisão é de 177 e 136 foram analisados (REP +

ORI) (Figura 2).

Figura 2. Resultados da Pesquisa e Processos de Seleção

3.7. Extração de Dados

A extração de dados foi realizada guiada por um formulário de extração implementado

em Microsoft Excel ™. Para esta pesquisa, os dados (Tabela VIII e Tabela IX) foram

extraídos dos 136 trabalhos dos conjuntos REP e ORI (Apêndice A).

Tabela VIII. Extração de Dados dos Estudos de Replicações e Originais

Dados Descrição Ano de Publicação Ano de Publicação do Estudo Autores Nomes dos Autores Organizações de Pesquisa Afiliação dos Autores País Local da Organização Tópico de Engenharia de Software Capítulo e Seção do SWEBOK Objetivos Objetivos do Estudo Método de Pesquisa De acordo com (EASTERBROOK S. M. et al., 2007) Tipo de Questão de Pesquisa De acordo com (EASTERBROOK S. M. et al., 2007)

Page 49: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

48

Tabela IX. Extração de Dados Somente dos Estudos de Replicação

Dados Descrição Conceito de Replicação Definição Utilizada de Replicação Estudo Original Referência do Estudo Original Unidade de Análise Tipos das Unidades de Análises das Replicações Lições Aprendidas Lições sobre a Replicação

.

3.8. Avaliação da Qualidade

Foi avaliada a qualidade dos estudos de replicação e originais (REP e ORI) usando um

conjunto de critérios que trataram do planejamento do estudo, execução, resultados e suas

conclusões.

Para avaliação dos trabalhos de replicação (REP), foram separados os papers em 2

grupos: os papers em que as replicações foram relatadas juntamente com o estudo original

(referenciados como single report), e os papers em que as replicações foram apresentadas em

separado do estudo original (referenciados como multiple reports), uma vez que esta distinção

impacta na aplicação dos critérios de avaliação de qualidade, isto porque a avaliação dos

trabalhos de replicação (REP) de estudos originais (multiple reports) incluiu critérios para

avaliar a qualidade da descrição dos estudos originais, e que tem sido defendida como parte

essencial dos relatórios de replicações (CARVER, J. C., 2010).

Assim, os critérios adotados para avaliação de qualidade dos estudos (REP) que

apresentaram replicação de um estudo original (ORI) em papers separados (multiple reports)

foram os seguintes:

• Planejamento do Estudo

o Descreveu claramente seus objetivos;

o Descreveu claramente os objetivos do estudo original;

o Definiu claramente o seu método de pesquisa;

o Definiu claramente o método de pesquisa do estudo original;

o Descreveu que parâmetros foram alterados no estudo em relação ao estudo

original;

• Execução do estudo

o Descreveu adequadamente o ambiente onde ele foi realizado;

o Descreveu adequadamente o ambiente onde o estudo original foi realizado;

o Descreveu claramente seu método de análise de dados;

Page 50: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

49

o Descreveu claramente o método de análise de dados do estudo original;

• Resultados do Estudo

o Apresentou claramente os seus resultados;

o Apresentou claramente os resultados do estudo original;

o Atingiu os seus objetivos, respondeu perguntas de pesquisa, verificou

hipóteses;

o Mencionou a comparabilidade dos seus resultados com os resultados do estudo

original;

• Conclusão

o Descreveu suas ameaças à validade;

o Descreveu as ameaças à validade do estudo original;

o Descreveu adequadamente as dificuldades / limitações encontradas para

replicação do estudo original.

Os critérios adotados para avaliação de qualidade dos estudos (REP) que apresentaram

replicação de um estudo original (ORI) dentro do mesmo paper (single report) foram os

seguintes:

• Planejamento do Estudo

o Descreveu claramente seus objetivos;

o Definiu claramente o método de pesquisa;

o Justificou o uso de múltiplos experimentos;

o Definiu claramente o contexto e as alterações realizadas nos múltiplos

experimentos;

• Execução do estudo

o Descreveu claramente o método de coleta de dados;

o Descreveu claramente o método de análise de dados;

• Resultados do Estudo

o Apresentou claramente os seus resultados;

o Atingiu os seus objetivos, respondeu perguntas de pesquisa, verificou

hipóteses;

o Comparou os resultados dos diversos experimentos;

• Conclusão

Page 51: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

50

o Desenvolveu suas conclusões com base nos resultados dos múltiplos

experimentos;

o Descreveu suas ameaças à validade;

E os critérios adotados para avaliação de qualidade dos estudos originais (ORI) foram

os seguintes:

• Planejamento do Estudo

o Descreveu claramente seus objetivos;

o Definiu claramente o seu método de pesquisa;

• Execução do estudo

o Descreveu adequadamente o ambiente onde ele foi realizado;

o Descreveu claramente seu método de análise de dados;

• Resultados do Estudo

o Apresentou claramente os seus resultados;

o Atingiu os seus objetivos, respondeu perguntas de pesquisa, verificou

hipóteses;

• Conclusão

o Descreveu suas ameaças à validade.

Cada estudo recebeu no critério específico a nota 0, quando não respondeu ao critério,

a nota 1, quando o estudo respondeu completamente ao critério, e a nota 0,5, quando

respondeu ao critério parcialmente. O índice final de qualidade do estudo foi calculado pelo

somatório das notas conseguidas nos vários critérios, dividida pelo numero total de critérios e

multiplicada por 100.

As mesmas duplas que realizaram a extração dos dados, também realizaram as

avaliações de qualidade e as divergências foram resolvidas entre eles. Quando foi necessário,

porque não houve consenso entre os dois pesquisadores das duplas, um terceiro pesquisador

resolveu as divergências.

3.9. Síntese e Apresentação dos Resultados

Os resultados de extração de dados e avaliação da qualidade foram analisados com o

apoio do Microsoft Excel ™, que também foi usado para gerar gráficos e tabelas dinâmicas,

focados, na sua maioria, em frequências e percentuais.

Page 52: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

51

Após a extração dos dados e avaliação de qualidade, foi realizada a análise, síntese das

evidências e organização dos resultados de acordo com as questões de pesquisa, que

representam os conhecimentos gerados por este mapeamento.

Na análise da qualidade dos estudos (questão RQ06), utilizou-se o t-Test como teste

estatístico para comparar as médias dos índices de qualidade dos estudos e analisar se suas

diferenças eram significativas.

Não foi realizada meta-análise, ou outra forma de meta-síntese, pois está fora do

alcance das questões de pesquisa deste estudo.

Page 53: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

52

4. ANÁLISE E DISCUSSÃO DOS RESULTADOS

Neste capítulo, serão apresentadas as análises dos resultados, organizados de acordo

com as sete questões de pesquisa, e as discussões sobre os resultados analisados.

4.1. Análise dos Resultados

RQ01: Qual é a evolução do número e tipo (interna e externa) de replicações

ao longo dos anos?

A contabilização e classificação das replicações e estudos originais não foi simples

devido, principalmente, a falta de padronização da terminologia e da estrutura dos papers.

Portanto, um esclarecimento sobre estas questões é necessário, antes de apresentar os

resultados.

Quanto à contabilização de replicações e estudos originais, a maioria dos papers

relatou uma replicação única ou estudo original, assim havia uma correspondência um-para-

um entre o paper e o estudo. No entanto, vários papers relataram mais de uma replicação, e

cada uma foi contabilizada, por isso o número total de replicações é 125, e não 93.

Finalmente, 33 papers relataram replicações e o estudo original juntos. Portanto, o número de

estudos original é de 76 (43 foram relatados separadamente das replicações e 33 foram

relatados juntamente com uma ou mais replicações).

O primeiro estudo de replicação encontrado nesta revisão foi publicado em 1994. O

número de replicações tem crescido ao longo dos anos (Figura 3), apesar de uma queda em

2002, 2003 e 2008.

Page 54: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

53

Figura 3. Distribuição Temporal das Replicações

Nesta revisão, 71% (89/125) das replicações são internas e 29% (36/125) são externas.

Nos anos de 2002, 2003 e 2004 não foram registrados estudos de replicações externas e, nos

anos de 1994 e 1996, de replicações internas. O número de replicações internas publicadas a

cada ano aumentou substancialmente desde 2004, enquanto o número de replicações externas

por ano tem sido relativamente estável desde 1994 (Figura 4).

Figura 4. Distribuição Temporal das Replicações Internas e Externas

A mediana do número de replicações por ano cresceu de quatro no período entre 1994

e 2002, para onze entre 2003 e 2010. Este crescimento foi devido principalmente ao aumento

1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010

Interna 0 3 0 2 1 4 3 4 2 2 9 13 7 10 4 12 13

Externa 1 2 1 4 2 2 4 1 0 0 0 3 1 3 1 4 7

0

2

4

6

8

10

12

14

Page 55: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

54

do número de replicações internas, que cresceu de três a dez replicações por ano entre os dois

períodos de tempo. A mediana do número de replicações externas por ano nos dois períodos é

bastante estável, com crescimento de dois para três (Tabela X).

Tabela X. Replicações por Ano

Período Mediana de Replicações por Ano Externa Interna Total

1994-2002 2 3 4 2003-2010 3 10 11

Estes números parecem indicar que a comunidade de pesquisa de engenharia de

software tornou-se consciente da importância da realização de replicação, que é representado

pelo crescimento no número total de replicações nos últimos nove anos e desta taxa de

crescimento desde 2004. No entanto, este crescimento foi devido principalmente ao aumento

de replicações internas, pois o número de replicações externas permaneceu mais ou menos

estável desde 1994. Desde que replicações externas são consideradas importantes para

aumentar a validade dos resultados empíricos, isto parece indicar que mais incentivos para

replicações externas são necessários.

RQ02: Que temas de engenharia de software foram endereçados pelas

replicações?

Para avaliar a cobertura dos temas relacionados com a engenharia de software, cada

replicação foi relacionada com um capítulo e seção do Software Engineers’ Book of

Knowledge - SWEBOK (ABRAN, A. et al., 2004) Foram encontradas replicações relativas a

cada capítulo SWEBOK (Tabela XI).

Manutenção de Software (capítulo 6 do SWEBOK) tem o maior número de replicações

(25) que abrange três (seções 2-4) de suas quatro seções. Dezenove replicações neste capítulo

são internas. Teste de Software (capítulo 5) e Construção de Software seguem em segundo

lugar com 18 replicações, cada uma abrangendo quatro seções (2-5). Nesses tópicos, as seções

4.1, 5.1 e 6.1 não foram cobertas, o que não deve ser considerado uma limitação já que estas

são seções de background. Juntos, esses três temas concentram 50% (61/125) das replicações.

Os tópicos com o menor número de replicações foram Gerência de Configuração

(capítulo 7) e Ferramentas e Métodos (Capítulo 10), ambos com duas replicações. Quanto à

cobertura das seções SWEBOK, Gerência de Configuração (Capítulo 7) e Gerenciamento

Page 56: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

55

(Capítulo 8) apresentaram as maiores disparidades, com apenas uma seção coberta das seis

seções de cada capítulo.

Tabela XI. Cobertura dos Capítulos e Seções do SWEBOK

Capítulos do SWEBOK # Seç. Replicações

Internas Replicações

Externas Total

# Seç. não Cobertas

# Rep. # Seç. # Rep. # Seç. # Rep. # Seç. # Seç. 2. Software Requirements 7 14 4 0 0 14 4 -3 3. Software Design 6 5 4 1 1 6 4 -2 4. Software Construction 3 7 1 11 2 18 2 -1 5. Software Testing 5 10 4 8 3 18 4 -1 6. Software Maintenance 4 19 3 6 2 25 3 -1 7. Software Configuration

Management 6 2 1 0 0 2 1 -5 8. Software Engineering

Management 6 12 1 3 1 15 1 -5 9. Software Engineering

Process 4 12 1 1 1 13 1 -3 10. Software Engineering

Tools And Methods 2 1 1 1 1 2 1 -1 11. Software Quality 3 7 2 5 2 12 2 -1

Total 46 89 22 36 13 125 23 -23

Requisitos de Software e Gerência de Configuração (capítulos 2 e 3) só foram

contemplados com replicações internas, e este último, com apenas 2 estudos desenvolvidos

em 2006. Projeto de Software e Processos de Software (capítulos 3 e 9) foram contemplados,

na sua quase totalidade, com replicações internas, registrando apenas uma replicação externa

cada um.

Manutenção de Software (capítulo 6) tem a maior presença de replicações registradas

ao longo dos anos. Neste capítulo, dos 17 anos de cobertura deste mapeamento, foram

registradas replicações em 11 anos, a maior cobertura entre os capítulos. Construção de

Software e Teste de Software (capítulos 4 e 5) seguem na presença, registrando replicações ao

longo de 9 anos.

Entre todos os capítulos, apenas Construção de Software (capítulo 4) apresenta um

número de replicações externas superior ao número de replicações internas. Dos 10 capítulos

contemplados com replicações, Gerência de Configuração, Processos de Software, Métodos e

Ferramentas e Qualidade de Software (capítulos 7, 9, 10 e 11) não foram contemplados no

ano de 2010 (Figura 5).

Page 57: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

56

Figura 5. Evolução das Replicações por Capítulos do SWEBOK

Page 58: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

57

RQ03: Quais pesquisadores e organizações estão replicando?

Nos estudos revisados, 201 pesquisadores desenvolveram trabalhos de replicação.

Abaixo, estão apresentados os pesquisadores que participaram mais ativamente na execução

das replicações internas e externas, os que mais participaram por capítulo do SWEBOK e por

suas filiações. Foram considerados como mais ativos, os pesquisadores que participaram em,

pelo menos, 2 replicações (internas e/ou externas).

As relações estão divididas entre os pesquisadores que mais executaram replicações

externas (Tabela XII), pesquisadores que mais executaram replicações internas (tabela XIII) e

os pesquisadores que mais executaram replicações (internas e externas) por capítulo do

SWEBOK (Tabela XIV). A maioria desses pesquisadores só desenvolveu um tipo de

replicação (interna ou externa). Apenas 17 pesquisadores, dos que mais executaram

replicações, participaram de replicações externas e internas.

A maioria dos pesquisadores que desenvolveram mais replicações nos temas do

SWEBOK, desenvolveram replicações internas. O capítulo de ferramentas e métodos (capitulo

Page 59: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

58

10) foi o único capítulo do SWEBOK que não apresentou autores envolvidos em, pelo menos,

duas replicações.

Tabela XII. Autores Envolvidos com Replicações Externas

Replicações Externas Autor Organização # Ext. / Total James Miller University of Strathclyde 4/5 Hong Mei Peking University 3/4 Per Runeson Lund University 3/4 Minghui Zhou Peking University 3/3 Murray Wood University of Strathclyde 3/3 Marc Roper University of Strathclyde 3/3 Xiujuan Ma Peking University 3/3 Chris Lokan University of Auckland 2/4 Filippo Lanubile University of Bari 2/3 Michelle Cartwright Brunel University 2/2 James D. Kiper Miami University 2/2 Charles K. Ames California Institute of Technology 2/2 Brent Rentauernheimer California State University 2/2 A. César C. França Federal University of Pernambuco 2/2 Christopher M. Lott University of Kaiserslautern 2/2 Martin Shepperd Brunel University 2/2 Emilia Mendes University of Auckland 2/5 Paulo R. M. da Cunha Federal University of Pernambuco 2/2 Erik Kamsties University of Kaiserslautern 2/2 Thomas Thelin Lund University 2/3 Fabio Q. B. da Silva Federal University of Pernambuco 2/2 Carina Andersson Lund University 2/2 Steve Counsell University of Southampton 1/2 Michael Philippsen Universität Karlsruhe 1/2 Barbara Unger-Lamprecht Universität Karlsruhe 1/2 Mikael Lindvall Linköping University 1/2 Fabio Calefato University of Bari 1/2 Lutz Prechelt abaXX Technology 1/2 John W. Daly Agilent Technologies 1/2

Page 60: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

59

Tabela XIII - Autores Envolvidos com Replicações Internas

Replicações Internas Autor Organização # Int. / Total Mario Piattini University of Castilla-La Mancha 13/13 Felix Garcia University of Castilla-La Mancha 8/8 Marco Torchiano Politecnico di Torino 7/7 Massimiliano Di Penta University of Sannio 7/7 Mariano Ceccato Fondazione Bruno Kessler 7/7 Corrado Aaron Visaggio University of Sannio 7/7 Filippo Ricca University of Genova 7/7 Gerardo Canfora University of Sannio 7/7 Victor R. Basili University of Maryland, Fraunhofer

Center for Experimental Software

Engineering

6/7

Geert Poels Ghent University 6/6 Paolo Tonella Fondazione Bruno Kessler – IRST 6/6 Magne Jørgensen Simula Research Laboratory 6/6 Dag I. K. Sjøberg Simula Research Laboratory 5/5 Forrest Shull Fraunhofer Center for Experimental

Software Engineering 5/5

Marcela Genero University of Castilla-La Mancha 5/5 Silvia Abrahão Universidad Politécnica de Valencia 5/5 Lionel C. Briand Carleton University 4/5 Lorin Hochstein University of Nebraska-Lincoln 4/4 Marvin V. Zelkowitz University of Maryland, College Park 4/4 Jeffrey Carver Mississippi State University 4/4 Sima Asgari University of Maryland, College Park 4/4 Kejetil Moløkken Simula Research Laboratory 3/3 Francisco Ruiz University of Castilla-La Mancha 3/3 Miroslaw Staron Blekinge Institute of Technology 3/3 Ludwik Kuzniarz Blekinge Institute of Technology 3/3 Carmine Gravino University of Salerno 3/3 Esperanza Manso University of Valladolid 3/3 Khaled El Emam Canadian National Research Council,

Intstitute for Information Technology 3/3

Giuseppe Visaggio University of Bari 3/4 Oliver Laitenberger Fraunhofer Institute for Experimental

Software Engineering 3/3

Claes Wohlin Blekinge Institute of Technology 3/3 Emilia Mendes University of Auckland 3/5 Andrea De Lucia University of Salerno 3/3 Jeffrey K. Hollingsworth University of Maryland, College Park 3/3 Karl Halvor Teigen University of Oslo 3/3 John Krogstie Norwegian University of Science and

Technology 3/3

Page 61: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

60

Replicações Internas Autor Organização # Int. / Total Chris Lokan University of Auckland 2/4 Jürgen Wüst Fraunhofer Institute for Experimental

Software Engineering 2/2

Rocco Oliveto University of Salerno 2/2 Luciano Baresi Politecnico di Milano 2/2 Emilio Insfran Universidad Politécnica de Valencia 2/2 Stuart H. Zweben The Ohio State University 2/2 Erik Arisholm Simula Research Laboratory 2/2 Ladan Tahvildari University of Waterloo 2/2 Audris Mockus Avaya Labs Research 2/2 Marcus Ciolkowski University of Kaiserslautern 2/2 Gengshen Du University of Calgary 2/2 Siavash Mirarab IBM 2/2 Genoveffa Tortora University of Salerno 2/2 Joseph E. Hollingsworth Indiana University Southeast 2/2 Giuseppe Scanniello University of Basilicata 2/2 Adam A. Porter University of Maryland, College Park 2/2 Guenther Ruhe University of Calgary 2/2 Lawrence G. Votta Software Production Research

Department, AT&T 2/2

Hyunsook Do North Dakota State University 2/2 Aaron Visaggio University of Sannio 2/2 James D. Herbsleb Carnegie Mellon University 2/2 Ann Maes Ghent University 2/2 Bruce W. Weide The Ohio State University 2/2 Sandro Morasca Università degli Studi dell’Insubria 2/2 Jim Mcelroy University of Calgary 2/2 Stephen H. Edwards The Ohio State University 2/2 Walter F. Tichy Universität Karlsruhe 2/2 Thomas G. Harbich Bosch Telecom GmbH 2/2 José A. Cruz-Lemus University of Castilla-La Mancha 2/2 Steve Counsell University of Southampton 1/2 Michael Philippsen Universität Karlsruhe 1/2 Barbara Unger-Lamprecht Universität Karlsruhe 1/2 Mikael Lindvall Linköping University 1/2 Fabio Calefato University of Bari 1/2 Lutz Prechelt abaXX Technology 1/2 John W. Daly Agilent Technologies 1/2

Page 62: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

61

Tabela XIV - Autores que mais Desenvolveram Replicações por SWEBOK

Autor # Rep. Int. # Rep. Ext. # Total SWEBOK

2 - SOFTWARE REQUIREMENTS Filippo Ricca 6 0 6 Marco Torchiano 6 0 6 Massimiliano Di Penta 5 0 5 Paolo Tonella 5 0 5 Mariano Ceccato 5 0 5 Miroslaw Staron 3 0 3 Claes Wohlin 3 0 3 Ludwik Kuzniarz 3 0 3 Giuseppe Scanniello 2 0 2

3 - SOFTWARE DESIGN Mario Piattini 3 0 3 Ann Maes 2 0 2 Marcela Genero 2 0 2 Geert Poels 2 0 2 José A. Cruz-Lemus 2 0 2

4 - SOFTWARE CONSTRUCTION Hong Mei 0 3 3 Minghui Zhou 0 3 3 Xiujuan Ma 0 3 3 Bruce W. Weide 2 0 2 Jürgen Wüst 2 0 2 Stephen H. Edwards 2 0 2 Fabio Q. B. da Silva 0 2 2 Lionel C. Briand 2 0 2 Brent Auernheimer 0 2 2 Paulo R. M. da Cunha 0 2 2 Stuart H. Zweben 2 0 2 Charles K. Ames 0 2 2 A. César C. França 0 2 2 James D. Kiper 0 2 2 Joseph E. Hollingsworth 2 0 2

5 - SOFTWARE TESTING Per Runeson 1 2 3 Carina Andersson 1 2 3 James Miller 1 2 3 Khaled El Emam 3 0 3 Thomas Thelin 1 1 2 Siavash Mirarab 2 0 2 Hyunsook Do 2 0 2 Erik Kamsties 0 2 2 Thomas G. Harbich 2 0 2 Ladan Tahvildari 2 0 2 Christopher M. Lott 0 2 2 Oliver Laitenberger 2 0 2

Page 63: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

62

Autor # Rep. Int. # Rep. Ext. # Total SWEBOK

6 - SOFTWARE MAINTENANCE Mario Piattini 6 0 6 Dag I. K. Sjøberg 4 0 4 Felix Garcia 3 0 3 John Krogstie 3 0 3 Marcela Genero 3 0 3 Esperanza Manso 3 0 3 Francisco Ruiz 3 0 3 Lionel C. Briand 2 0 2 Corrado Aaron Visaggio 2 0 2 Carmine Gravino 2 0 2 Aaron Visaggio 2 0 2 John W. Daly 1 1 2 Genoveffa Tortora 2 0 2 Erik Arisholm 2 0 2 Gerardo Canfora 2 0 2 Rocco Oliveto 2 0 2 Giuseppe Visaggio 2 0 2 Andrea De Lucia 2 0 2

7 - SOFTWARE CONFIGURATION MANAGEMENT Gengshen Du 2 0 2 Jim Mcelroy 2 0 2 Guenther Ruhe 2 0 2

8 - SOFTWARE ENGINEERING MANAGEMENT Magne Jørgensen 6 0 6 Emilia Mendes 3 2 5 Chris Lokan 2 2 4 Karl Halvor Teigen 3 0 3 Kejetil Moløkken 3 0 3 Sandro Morasca 2 0 2 Luciano Baresi 2 0 2

9 - SOFTWARE ENGINEERING PROCESS Silvia Abrahão 4 0 4 Mario Piattini 4 0 4 Corrado Aaron Visaggio 4 0 4 Felix Garcia 4 0 4 Geert Poels 4 0 4 Gerardo Canfora 4 0 4 Marvin V. Zelkowitz 3 0 3 Sima Asgari 3 0 3 Forrest Shull 3 0 3 Lorin Hochstein 3 0 3 Victor R. Basili 3 0 3 Jeffrey Carver 3 0 3 Jeffrey K. Hollingsworth 3 0 3

Page 64: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

63

Autor # Rep. Int. # Rep. Ext. # Total SWEBOK

CHAPTER 11: SOFTWARE QUALITY Victor R. Basili 2 1 3 Lawrence G. Votta 2 0 2 Adam A. Porter 2 0 2 Giuseppe Visaggio 1 1 2

O número total de universidades, instituições de pesquisa e empresas constituem 97

organizações distintas, que estão localizados em 19 países diferentes. As Universidades de

Sannio (Itália), Castilla-La Mancha (Espanha), College Park (Maryland) e Simula Research

Laboratory (Noruega) são as organizações mais ativas na produção de replicações. Do

número total de organizações que produziram estudos de replicação, apenas 15 (15%),

produziram replicações externas e internas.

Na Tabela XV e Tabela XVI são apresentadas, respectivamente, as organizações mais

ativas nos trabalhos de replicações externas e internas. Foram consideradas como mais ativas,

as organizações que produziram, pelo menos, 2 replicações (internas e/ou externas).

Tabela XV - Organizações Envolvidas com Replicações Externas

Replicações Externas Organização # Rep Ext./Total Lund University 5/6 University of Strathclyde 4/5 Peking University 3/3 University of Bari 2/5 University of Auckland 2/5 CalTech 2/2 Brunel University 2/2 University of Kaiserslautern 2/4 California State University 2/2 Miami University 2/2 University of Maryland, College Park 1/14 Fraunhofer Institute for Experimental Software Engineering 1/9 Fraunhofer CESE 1/7 Carleton University 1/5 Universität Karlsruhe 1/3 Linköping University 1/2 abaXX Technology 1/2 University of Antwerp 1/2 University of Southampton 1/2 Agilent Technologies 1/2

Page 65: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

64

Tabela XVI - Organizações Envolvidas com Replicações Internas

Replicações Internas Organização # Rep Int./Total University of Sannio 16/16 University of Castilla-La Mancha 14/14 University of Maryland, College Park 13/14 Simula Research Laboratory 11/11 Fraunhofer IESE 8/9 University of Genova 7/7 Politecnico di Torino 7/7 Fondazione Bruno Kessler 7/7 Fraunhofer CESE 6/7 Ghent University 6/6 Universidad Politécnica de Valencia 5/5 Blekinge Institute of Technology 4/4 University of Oslo 4/4 University of Nebraska-Lincoln 4/4 Mississippi State University 4/4 Carleton University 4/4 University of Valladolid 4/4 Norwegian University of Science and Technology 3/3 University of Bari 3/3 University of Salerno 3/3 Canadian National Research Council, Intstitute for

Information Technology

3/3

University of Auckland 3/3 Università degli Studi dell’Insubria 2/2 University of New South Wales 2/2 North Dakota State University 2/2 Universität Karlsruhe 2/2 Indiana University Southeast 2/2 IBM 2/2 University of Kaiserslautern 2/2 Politecnico di Milano 2/4 University of Waterloo 2/2 University of Basilicata 2/2 Software Production Research Department, AT&T 2/2 University of Calgary 2/2 Bosch Telecom GmbH 2/2 Avaya Labs Research 2/2 Universität Karlsruhe 2/2 Carnegie Mellon University 2/2 The Ohio State University 2/2 Lund University 1/6 University of Strathclyde 1/5 abaXX Technology 1/2 Linköping University 1/2 University of Antwerp 1/2

Page 66: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

65

Replicações Internas Organização # Rep Int./Total University of Southampton 1/2 Agilent Technologies 1/2

A maioria das replicações foi desenvolvida em organizações localizadas na Itália

(30/125), Estados Unidos (22/125) e Espanha (20/125). Na Austrália (2) e Espanha (20) só

foram desenvolvidas replicações internas. Na Figura 6, é apresentada a lista dos países em que

duas ou mais replicações foram realizadas. Organizações na Argentina, Dinamarca, Hong

Kong, Irlanda e Turquia contribuíram com uma replicação cada.

Figura 6 - Distribuição Geográfica das Replicações Internas e Externas

RQ04: Quais os métodos de pesquisa estão sendo utilizados nas replicações?

Utilizou-se a classificação de métodos de pesquisa apresentados por Easterbrook et al.

(2007) na pesquisa e classificação dos estudos. Foram encontradas replicações externas

(Figura 7) em estudos de caso, experimentos controlados e quasi experimentos. E replicações

internas (Figura 8), em estudos de caso, experimentos controlados, quasi experimentos e

surveys.

Replicações externas utilizando estudo de caso, só aparecem a partir de 2005, e

demonstram um número crescente de estudos, ao contrário de replicações externas utilizando

experimentos controlados, que só apresentaram registros até 1998. O número de estudos que

3 3 2 1

69

13 4 4

22 1 13

75

3

12 11 11

2018

28

0

5

10

15

20

25

30

Externa Interna

Page 67: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

66

desenvolveram replicações externas utilizando quasi experimento é o mais frequente, desde

1994 e apresentando um crescimento importante, a partir de 2008.

Figura 7 - Métodos de Pesquisa Utilizados em Replicações Externas

Replicações internas utilizando estudo de caso e survey são as menos frequentes, e

aparecem a partir de 1999 e 2000 respectivamente. Replicações internas utilizando

experimentos controlados foram registradas desde 1995, apresentando um crescimento

importante em 2010. O número de estudos que desenvolvem replicações internas utilizando

quasi experimento é o mais frequente desde 1995, apresentando número superior a 3 estudos

desde 2004. Embora tenham sido registradas replicações utilizando survey, estes estudos são

esparsos, sendo desenvolvidos em intervalos de 3 anos.

1994 1995 1996 1997 1998 1999 2000 2001 2005 2006 2007 2008 2009 2010

Estudo de Caso 0 0 0 0 0 0 0 0 1 0 2 0 2 3

Experimento Controlado 0 2 0 1 1 0 0 0 0 0 0 0 0 0

Quasi Experimento 1 0 1 3 1 2 4 1 2 1 1 1 2 4

0

1

2

3

4

5

Page 68: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

67

Figura 8 - Métodos de Pesquisa Utilizados em Replicações Internas

A grande maioria das replicações é quasi experimentos, que corresponderam a 63%

(79/125) de todas as replicações. Juntos, os experimentos controlados e quasi experimentos

representam 84% (105/125) das replicações (Tabela XVII). Não foi encontrada nenhuma

replicação que fosse classificada como etnografia ou pesquisa-ação. Estes resultados não são

uma surpresa, já que seria de se esperar que a grande maioria de replicações fosse de

experimentos controlados ou quasi experimentos. Nenhum survey foi classificado como

replicação externa. Foram encontradas algumas dificuldades na análise de estudos de caso e

surveys, as quais serão discutidas na Seção 4.2.1.

Tabela XVII - Replicações por Método de Pesquisa

Método Externa (%) Interna (%) Total (%) Estudo de Caso 8 (6%) 8 (6%) 16 (13%) Experimento Controlado 4 (3%) 22 (18%) 26 (21%) Quasi Experimento 24 (19%) 55 (44%) 79 (63%) Survey 0 (0%) 4 (3%) 4 (3%) Total 36 (29%) 89 (71%) 125 (100%)

Manutenção de Software (capítulo 6) é o único tópico do SWEBOK onde foram

registradas replicações utilizando os 4 métodos de pesquisas (Figura 9). Todos os tópicos

1995 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010

Estudo de Caso 0 0 0 1 0 1 1 0 0 0 0 2 0 2 1

Experimento Controlado 2 1 0 0 1 0 0 0 3 4 2 2 0 1 6

Quasi Experimento 1 1 1 3 1 3 1 1 6 9 4 6 4 9 5

Survey 0 0 0 0 1 0 0 1 0 0 1 0 0 0 1

0

1

2

3

4

5

6

7

8

9

10

Page 69: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

68

registram experimentos de replicação que utilizam experimento controlado ou quasi

experimento. Só não há registro de replicações utilizando quasi experimento em configuração

de software (capítulo 7). Neste capítulo só foram registradas replicações utilizando

experimento controlado. Só há registros de replicações utilizando survey no tópico

manutenção de software (capítulo 6).

Figura 9 - Métodos de Pesquisa Utilizados nos Temas da Engenharia de Software

(Capítulos do SWEBOK)

Nesta parte da análise, foi realizada uma nova extração nos papers REP, seguindo a

mesma metodologia de extração apresentada, para enriquecê-la com informações sobre qual

tipo de unidade de análise foi utilizado em cada replicação. Os resultados mostram que a

grande maioria das replicações utilizou estudantes e pesquisadores (acadêmicos) como

unidades de análise, com profissionais da indústria em segundo lugar (Tabela XVIII).

Tabela XVIII - Tipos das Unidades de Análises das Replicações

Unidade de Análise Acadêmicos Profissionais Organizações Artefatos

73 (58%) 34 (27%) 3 (2%) 15 (12%)

0

2

4

6

8

10

12

14

16

Estudo de Caso

Experimento Controlado

Quasi Experimento

Survey

Page 70: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

69

RQ05: Que conjuntos de replicações foram encontrados?

A literatura tem usado o termo família de experimentos para se referir aos conjuntos de

replicações que se referem ao mesmo estudo original (BASILI V, et al., 1999). Não foi

utilizado esse termo neste estudo, porque não foi realizada uma análise mais profunda dos

conjuntos de replicações para verificar se eles foram consistentes com a definição de família.

Em vez disso, foi utilizado o termo genérico “conjunto” para as replicações que se referem ao

mesmo estudo original.

Na Tabela XIX, encontram-se os conjuntos identificados de replicações. Foram

agrupados por seção do SWEBOK e relacionadas as informações de identificação do conjunto

(Conj), ano de publicação dos estudos, sequência do estudo dentro do conjunto (Seq),

referência do estudo original (ORIxxx), referência do estudo de replicação (REPxxx),

classificação da replicação (Int = Interna, Ext = Externa), título do estudo e o índice de

qualidade do estudo (QL). As referências REPxxx e ORIxxx encontram-se no Apêndice A

deste documento.

Tabela XIX - Conjuntos de Replicações

Conj. Ano Seq ORI REP Int/Ext Título QL

SWEBOK 2 - SOFTWARE REQUIREMENTS

1

1997 0 ORI087

Validating the Defect Detection

Performance Advantage of Group

Designs for Software Reviews:

Report of a Laboratory

Experiment Using Program Code

100%

1997 1 REP087 Interna

Validating the Defect Detection

Performance Advantage of Group

Designs for Software Reviews:

Report of a Replicated

Experiment

72%

2 2005 0 REP068 REP068 Interna Investigating the Role of Use

Cases in the Construction of Class

Diagrams

95%

3 2006 0 REP026 REP026 Interna Empirical assessment of using

stereotypes to improve

comprehension of UML models

95%

4 2007 0 REP029 REP029 Interna The Role of Experience and

Ability in Comprehension Tasks

supported by UML Stereotypes

100%

5 2007 0 ORI111 Recovering Traceability Links in 71%

Page 71: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

70

Conj. Ano Seq ORI REP Int/Ext Título QL

SWEBOK Software Artifact Management

Systems using Information

Retrieval Methods

2009 1 REP111 Interna Assessing IR-based traceability

recovery tools through controlled

experiments

78%

6

2008 0 ORI023

Value-Based Design Decision

Rationale Documentation:

Principles and Empirical

Feasibility Study

86%

2008 1 REP023 Interna A value-based approach for

documenting design decisions

rationale - a replica experiment

50%

7 2008 0 ORI011

An Empirical Investigation on

Dynamic Modeling in

Requirements Engineering

100%

2009 1 REP011 Interna On the Effectiveness of Dynamic

Modeling in UML 72%

8 2009 0 REP094 REP094 Interna

How Developers’ Experience and

Ability Influence Web Application

Comprehension Tasks Supported

by UML Stereotypes: A Series of

Four Experiments

100%

9

2010 0 ORI012 Can screen mockups improve the

comprehension of functional

requirements?

100%

2010 1 REP012 Interna

On the effectiveness of screen

mockups in requirements

engineering_ results from an

internal replication

81%

3 - SOFTWARE DESIGN

10

2000 0 ORI001 Use of friends in C++ software:

an empirical investigation 86%

2010 1 REP001 Externa A replicated and refined empirical

study of the use of friends in C++

software

84%

11 2002 0 REP091 REP091 Interna

Two Controlled Experiments

Assessing the Usefulness of

Design Pattern Documentation in

Program Maintenance

86%

12 2005 0 REP101 REP101 Interna

The Influence of the Level of

Abstraction on the Evolvability of

Conceptual Models of Information

Systems

91%

13 2006 0 ORI027 Performances of Pair Designing

on Software Evolution: a

controlled experiment

100%

Page 72: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

71

Conj. Ano Seq ORI REP Int/Ext Título QL

SWEBOK

2007 1 REP027 Interna Evaluating performances of pair

designing in industry 88%

14 2010 0 REP016 REP016 Interna

The impact of structural

complexity on the

understandability of UML

statechart diagrams

86%

4 - SOFTWARE CONSTRUCTION

15

1991 0 ORI086

Comprehensibility of visual and

textual programs: a test of

superlativism against the 'match-

mismatch' conjecture.

--

1997 1 REP086 Externa

Visual Depiction of Decision

Statements: What is Best for

Programmers and Non-

programmers

75%

16 1995 0 REP089 REP089 Interna The Effects of Layering and

Encapsulation on Software

Development Cost and Quality

68%

17

1998 0 ORI055 A Comprehensive Empirical

Validation of Product Measures

for Object-Oriented Systems

100%

1999 1 REP055 Interna Investigating Quality Factors in

Object-Oriented Designs: an

Industrial Case Study

66%

2001 2 REP099 Interna Replicated Case Studies for

Investigating Quality Factors in

Object-Oriented Designs

75%

18 1999 0 REP083 REP083 Interna Comprehending Object and

Process Models: An Empirical

Study

91%

19

2002 0 ORI076 Two Case Studies of Open Source

Software Development: Apache

and Mozilla

79%

2005 1 REP076 Externa The FreeBSD Project: A

Replication Case Study of Open

Source Development

69%

20

2009 0 ORI104

How Tagging helps bridge the

Gap between Social and

Technical Aspects in Software

Development

93%

2010 1 REP104 Externa Investigating the Use of Tags in

Collaborative Development

Environments: A Replicated Study

63%

21 2010 0 REP065 REP065 Interna Understanding Exception

Handling Viewpoints of Novices

and Experts

77%

22 2006 0 ORI118 The camel has two humps 43%

Page 73: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

72

Conj. Ano Seq ORI REP Int/Ext Título QL

SWEBOK (working title)

2007 1 REP119 Externa Mental Models and Programming

Aptitude 56%

2008 2 REP118 Externa On the Difficulty of Replicating

Human Subjects Studies in

Software Engineering

94%

2010 3 REP120 Externa

The Effect of Reasoning Strategies

on Success in Early Learning of

Programming: Lessons Learned

from an External Experiment

Replication

88%

23

2000 0 ORI121 A Case Study of Open Source

Software Development: The

Apache Server

86%

2010 1 REP121 Externa

How Developers Participate in

Open Source Projects:

a Replicate Case Study on

JBossAS, JOnAS and Apache

Geronimo

63%

5 - SOFTWARE TESTING

24

1987 0 ORI085 Comparing the Effectiveness of

Software Testing Strategies 86%

1995 1 REP085 Externa An Empirical Evaluation of Three

Defect-Detection Techniques 78%

1997 2 REP048 Externa An empirical evaluation of defect

detection techniques 69%

25

1998 0 ORI043 Estimating the number of

remaining defects after inspection 86%

2009 1 REP043 Externa Confidence intervals for capture–

recapture estimations in software

inspections

72%

26 2000 0 REP049 REP049 Interna An empirical incremental

approach to tool evaluation and

improvement

100%

27

2000 0 ORI021 Quantitative Analysis of Faults

and Failures in a Complex

Software System

86%

2007 1 REP021 Externa A Replicated Quantitative

Analysis of Fault Distributions in

Complex Software Systems

78%

28 2001 0 REP051 REP051 Interna An Internally Replicated Quasi-

Experimental Comparison of

Checklist

95%

29 2002 0 ORI020

An Empirical Method for

Selecting Software Reliability

Growth Models

86%

2007 1 REP020 Externa A replicated empirical study of a 84%

Page 74: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

73

Conj. Ano Seq ORI REP Int/Ext Título QL

SWEBOK selection method for software

reliability growth models

30

2003 0 ORI038 An Experimental Comparison of

Usage-Based and Checklist-Based

Reading

100%

2004 1 REP038 Interna A Replicated Experiment of

Usage-Based and Checklist-Based

Reading

94%

31

2004 0 ORI041 Does Active Guidance Improve

Software Inspections? A

Preliminary Empirical Study

100%

2004 1 REP041 Interna Assessing the impact of active

guidance for defect detection a

replicated experiment

75%

32

2004 0 ORI006

Evaluating Web Software

Reliability Based on Workload

and Failure Data Extracted from

Server Logs

71%

2009 1 REP006 Externa

Another viewpoint on “evaluating

web software reliability based on

workload and failure data

extracted from server logs”

63%

33

2005 0 ORI009 A Characterization Schema for

Software Testing Techniques 93%

2009 1 REP009 Externa

Evaluation of {model-based}

testing techniques selection

approaches_ An external

replication

81%

34 2007 0 REP061 REP061 Interna Experimenting with software

testbeds for evaluating new

technologies

23%

35 2008 0 REP102 REP102 Interna

Theory of relative defect

proneness - Replicated studies on

the functional form of the size-

defect relationship

68%

36 2009 0 REP031 REP031 Interna

Using acceptance tests as a

support for clarifying

requirements- A series of

experiments

100%

37 2010 0 REP015 REP015 Interna The Effects of Time Constraints

on test case prioritization 100%

6 - SOFTWARE MAINTENANCE

38 1986 0 ORI073

An empirical study of the effects

of modularity on program

modifiability.

--

1994 1 REP073 Externa Verification of results in software

maintenance through external 72%

Page 75: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

74

Conj. Ano Seq ORI REP Int/Ext Título QL

SWEBOK replication

39

1996 0 ORI034 Evaluating inheritance depth on

the maintainability of object

oriented software

100%

1999 1 REP058 Externa An Empirical View of Inheritance 44%

2000 2 REP090 Externa

Experimental assessment of the

effect of inheritance on the

maintainability of object-oriented

systems

59%

2001 3 REP034 Externa A controlled experiment on

inheritance depth as a cost factor

for code maintenance

81%

40

1996 0 ORI045 Effort Estimation Using Analogy 57%

1999 1 REP045 Externa A controlled experiment to assess

the benefits of estimating with

Analogy and Regression Models

50%

41 1999 0 REP052 REP052 Interna Assessing the maintenance

process through replicated,

controlled

91%

42 1999 0 ORI046

An Assessment and Comparison

of Common Software Cost

Estimation Modeling Techniques

71%

2000 1 REP046 Interna A replicated Assessment and

Comparison of Common Software 63%

43

1997 0 ORI033

Na experimental comparison of

the maintainability of object-

oriented and structured design

documents

100%

2001 1 REP033 Interna

A controlled experiment for

evaluating quality guidelines on

the maintainability of object-

oriented designs

88%

44

2001 0 ORI032 A Controlled Experiment in

Maintenance Comparing Design

Patterns to Simpler Solutions

100%

2004 1 REP032 Interna

A Controlled Experiment

Comparing the Maintainability of

Programs Designed with and

without Design Patterns—A

Replication in a Real

Programming Environment

91%

45

2004 0 ORI081 Definition and Empirical

Validation of Metrics for Software

Process Models

100%

2004 1 REP081 Interna An Experimental Replica to

Validate a set of Metrics for

Software Process Models

78%

Page 76: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

75

Conj. Ano Seq ORI REP Int/Ext Título QL

SWEBOK

2005 1 REP044 Interna Maintainability of software

process models. An empirical

study

81%

46

2001 0 ORI093

Assessing the Changeability of

Two Object-Oriented Design

Alternatives—A Controlled

Experiment

100%

2004 1 REP093 Interna

Evaluating the Effect of a

Delegated versus Centralized

Control Style on the

Maintainability of Object-

Oriented Software

56%

47 2004 0 REP084 REP084 Interna

Finding “Early” Indicators of

UML Class Diagrams

Understandability and

Modifiability

82%

48

2003 0 ORI070 Building UML Class Diagram

Maintainability Prediction

Models Based on Early Metrics

100%

2007 1 REP070 Interna Building measure-based

prediction models for UML class

diagram maintainability

94%

49 2008 0 REP066 REP066 Interna The Effect of Pairs in Program

Design Tasks 91%

50

2003 0 ORI010 Locating Features in Source Code 64%

2009 1 REP010 Externa Feature Location in COBOL

Mainframe Systems - an

Experience Report

63%

51 2010 0 REP007 REP007 Interna

Assessing the influence of import-

coupling on OCL expression

maintainability_ A cognitive

theory-based perspective

100%

52 2010 0 REP072 REP072 Interna An experimental comparison of

ER and UML class diagrams for

data modelling

100%

53

1994 0 ORI114 Software Maintenance in Norway:

A Survey Investigation 86%

2000 1 REP114 Interna

A study of development and

maintenance in Norway:

assessing the efficiency of

information systems support using

functional maintenance

78%

2006 2 REP115 Interna

A longitudinal study of

development and maintenance in

Norway: Report from the 2003

investigation

78%

2010 3 REP116 Interna A longitudinal study of 78%

Page 77: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

76

Conj. Ano Seq ORI REP Int/Ext Título QL

SWEBOK development and maintenance

7 - SOFTWARE CONFIGURATION MANAGEMENT

54 2006 0 REP019 REP019 Interna A family of empirical studies to

compare informal and

optimization based planning

91%

8 - SOFTWARE ENGINEERING MANAGEMENT

55

2001 0 ORI025 Using Public Domain Metrics to

Estimate Software Development

Effort

71%

2005 1 REP037 Externa

A replicated comparison of cross-

company and within-company

effort estimation models using the

ISBSG database

78%

2006 2 REP025 Externa Cross-company and single-

company effort models using the

ISBSG database

63%

2007 3 REP037 REP028 Interna Replicating studies on cross- vs

single-company effort models

using the ISBSG Database

81%

56

2003 0 ORI036 Do Adaptation Rules Improve

Web Cost Estimation? 79%

2003 1 REP036 Interna A replicated assessment of the use

of adaptation rules to improve

Web cost estimation

78%

57

2003 0 ORI039 Software Effort Estimation by

Analogy and “Regression Toward

the Mean”

71%

2005 1 REP039 Externa

A Replication of the Use of

Regression towards the Mean

(R2M) as an Adjustment to Effort

Estimation Models

78%

58 2004 0 REP082 REP082 Interna

Better Sure Than Safe?

Overconfidence in Judgment

Based Software Development

Effort Prediction Intervals

59%

59 2007 0 REP030 REP030 Interna Three Empirical Studies on

Estimating the Design Effort of

Web Applications

95%

60

2008 0 ORI105

Investigating the Use of

Chronological Splitting to

Compare Software Cross-

company and Single-company

Effort Predictions

86%

2009 1 REP105 Interna

Investigating the Use of

Chronological Splitting to

Compare Software Cross-

company and Single-company

69%

Page 78: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

77

Conj. Ano Seq ORI REP Int/Ext Título QL

SWEBOK Effort Predictions: A Replicated

Study

61 2010 0 REP095 REP095 Interna

Identification of more risks can

lead to increased over-optimism

of and over-confidence in

software development effort

estimates

100%

9 - SOFTWARE ENGINEERING PROCESS

62

2004 0 ORI022

Evaluating a Functional Size

Measurement Method for Web

Applications: An Empirical

Analysis

100%

2008 1 REP022 Interna A replicated study on the

evaluation of a size measurement

procedure for web applications

81%

63 2005 0 REP035 REP035 Interna A family of experiments to

validate metrics for software

process models

100%

64 2005 0 REP071 REP071 Interna Parallel Programmer

Productivity. A Case Study of

Novice Parallel Programmers

77%

65 2009 0 REP003 REP003 Interna

A family of experiments to

evaluate a functional size

measurement procedure for Web

applications

100%

66 2009 0 REP005 REP005 Interna An investigation of the

relationships between lines of

code and defects

91%

10 - SOFTWARE ENGINEERING TOOLS AND METHODS

67 2009 0 REP014 REP014 Interna The Effectiveness of Source Code

Obfuscation: an Experimental

Assessment

95%

68 1998 0 ORI060 Guiding Use Case Authoring :

Results of an Empirical Study 71%

2000 1 REP060 Externa Replicating the CREWS Use Case

Authoring 78%

11 - SOFTWARE QUALITY

69 1994 0 ORI057

A Metrics Suite for Object-

Oriented Design 79%

1996 1 REP057 Externa A Validation of Object-Oriented

Design 84%

70 1995 0 REP053

Comparing detection methods for

software requirements

inspections: A replicated

experiment

91%

1995 1 REP053 Interna Comparing detection methods for

software requirements 91%

Page 79: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

78

Conj. Ano Seq ORI REP Int/Ext Título QL

SWEBOK inspections: A replicated

experiment

1997 2 REP047 Externa A Replicated Experiment to

Assess Requirements Inspection

Techniques

78%

1998 3 REP050 Externa

An extended replication of an

experiment for assessing methods

for Assessing Methods for

Software Requirements

Inspections

91%

1998 4 REP088 Externa Further Experiences with

Scenarios and Checklists 88%

1998 5 REP112 Interna

Comparing Detection Methods

For Software Requirements

Inspections: A Replication Using

Professional Subjects

81%

71

1996 0 ORI092 The Empirical Investigation of

Perspective-Based Reading. 100%

2000 1 REP092 Externa

Are the Perspectives Really

Different? – Further

Experimentation on Scenario-

Based Reading of Requirements

66%

2006 2 REP098 Interna

Perspective-Based Reading: A

Replicated Experiment Focused

on Individual Reviewer

Effectiveness

81%

1997 3 REP113 Interna Empirical Investigation of

perspective-based reading: A

replicated experiment

78%

72

2003 0 ORI024 Comprehensibility and Efficiency

of Multiview Framework for

Measurement Plan Design

93%

2005 1 REP024 Interna

Assessing multiview framework

(MF) comprehensibility and

efficiency: A replicated

experiment

56%

73 2005 0 REP103 REP103 Interna Two controlled experiments

concerning the comparison of

pair programming to peer review

95%

74

2007 0 ORI107

Recovering Traceability Links in

Software Artifact Management

Systems using Information

Retrieval Methods

93%

2007 1 REP107 Interna

A Replicate Empirical

Comparison between Pair

Development and Software

Development with Inspection

69%

Page 80: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

79

Conj. Ano Seq ORI REP Int/Ext Título QL

SWEBOK 12 - RELATED DISCIPLINES OF SOFTWARE ENGINEERING

75

1997 0 ORI106

The Personal Software Process-

SM (PSP-SM): An Empirical

Study of the Impact of PSP on

Individual Engineers

79%

2000 1 REP106 Externa A Replicated Empirical Study of

the Impact of the Methods in the

PSP on Individual Engineers

81%

76 2003 0 REP040 REP040 Interna An empirical study of speed and

communication in globally

distributed software development

82%

Foram identificados 76 conjuntos de replicações, dos quais 33 apresentaram o estudo

original e as replicações no mesmo paper (single report) e 43 conjuntos em papers separados

(multiple reports). O conjunto S5 foi o único conjunto identificado com uma replicação

interna replicando uma replicação externa no mesmo conjunto.

O número de replicações em cada conjunto variou de um a cinco (Tabela XX). Os

conjuntos com apenas uma replicação são a maioria, composto por 62% dos conjuntos.

Apenas 16 conjuntos de têm três ou mais replicações. Um dos conjuntos em S4 foi composto

por quatro replicações externas e outro por quatro replicações internas em um single report. O

único conjunto de S5 é composto por duas replicações internas e três externas.

Tabela XX - Síntese dos Conjuntos de Replicações

Id. Conjuntos # Rep./Conj. # Conjuntos % S1 1 47 62% S2 2 13 17% S3 3 13 17% S4 4 2 3% S5 5 1 1%

Conjuntos 76 100%

O baixo número de replicações por conjunto é uma preocupação. A média de

replicações por conjunto é de apenas 1,6 (excluindo o estudo original). Sessenta e dois por

cento dos conjuntos têm uma replicação e desses, 72% (34/47) são replicações internas.

Considerando-se que conjuntos com pequeno número de replicações adicionam muito pouco

Page 81: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

80

conhecimento, o benefício das replicações ainda é pequeno em relação ao incremento da

validade interna e externa dos estudos.

RQ06: Qual é a qualidade dos trabalhos de replicação?

Foi avaliada a qualidade dos relatórios das replicações e não das aplicações

individualmente. Ou seja, quando um paper relatou mais de uma replicação, foi avaliada a

qualidade do estudo completo, e não a qualidade de cada replicação separadamente. Embora

isto possa parecer uma limitação, a falta de informações detalhadas sobre as replicações

individuais dentro dos papers poderia tornar a avaliação da qualidade individual difícil, ou até

mesmo impossível, na maioria dos casos. Por este motivo, a coluna de N na Tabela XXI

refere-se ao número de papers avaliados, e não ao número de replicações.

Conforme mencionado na Seção 3.8, os papers foram avaliados quanto à qualidade do

planejamento do estudo, execução, resultados e conclusões. A avaliação dos papers relatando

replicações multiple reports, incluiu critérios para avaliar a qualidade da descrição dos seus

estudos originais. Apesar de se utilizarem os mesmos critérios para avaliar os papers que

descreveram replicações internas e externas, foi necessário ajustar os critérios para replicações

single report (aquelas em que um conjunto de replicações é relatado em um único paper). Para

a maioria dessas replicações, foi possível encontrar uma maneira clara para separar a

descrição do original a partir da descrição das replicações. Assim, optou-se por um conjunto

de critérios modificados.

A Figura 10 apresenta a evolução da qualidade média do total de replicações. A média

global dos estudos selecionados foi de 82%, sendo índice inferior de 72%, nos anos 1994 e

1999, e índice superior de 87%, no ano de 2001. Nos dois últimos anos o índice foi de 86%.

Page 82: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

81

Figura 10 - Evolução da Qualidade das Replicações

A Figura 11 apresenta a evolução das médias dos índices de qualidade das replicações

internas e externas ao longo dos anos. Todas as replicações, internas e externas, apresentaram

índice de qualidade superior a 60%, exceto duas replicações externas realizadas em 1999. O

estudo [REP045] do Apêndice A, com índice de qualidade de 50% e o estudo [REP058], com

índice de 44%. Esses baixos índices estão associados, basicamente, à falta de referências ao

estudo original e aos tratamentos de suas validades.

Figura 11 - Evolução da Qualidade das Replicações Internas e Externas

1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010

Total 72% 77% 84% 74% 86% 72% 75% 87% 82% 80% 73% 85% 86% 81% 77% 86% 86%

40%

45%

50%

55%

60%

65%

70%

75%

80%

85%

90%

1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010

Externa 72% 78% 84% 74% 89% 47% 71% 81% 0% 0% 0% 75% 63% 73% 94% 70% 73%

Interna 0% 76% 0% 75% 81% 85% 80% 88% 82% 80% 73% 87% 90% 84% 73% 92% 93%

40%

50%

60%

70%

80%

90%

100%

Page 83: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

82

Na Figura 12 é apresentada, por ano, a evolução das médias dos índices de qualidade

das replicações single report e multiple reports. As médias dos índices de qualidade das

replicações single report são maiores que as médias dos índices de qualidade das replicações

multiple reports, exceto em 1995 e 2004, cujas médias dos índices das replicações multiple

reports (78% e 79%) são maiores do que as single report (76% e 65%).

Figura 12 - Evolução da Qualidade das Replicações Single e Multiple Reports

Diferenças semelhantes ocorrem quando observadas as replicações internas (Figura

13). As médias dos índices de qualidade das replicações internas single report são maiores

que as médias dos índices de qualidade das replicações internas multiple reports, exceto em

2004 e 2007, cujas médias dos índices das replicações internas multiple reports (82% e 83%)

são maiores do que as single report (78% e 81%).

1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010

Multi-Report 72% 78% 84% 74% 86% 53% 71% 81% 0% 78% 79% 74% 74% 81% 75% 71% 74%

Single-Report 0% 76% 0% 0% 0% 91% 100% 95% 82% 82% 65% 91% 94% 83% 80% 98% 95%

40%

50%

60%

70%

80%

90%

100%

110%

Page 84: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

83

Figura 13 - Evolução da Qualidade das Replicações Internas Single e Multiple Reports

A Tabela XXI sintetiza as médias dos índices de qualidade para cada tipo de

replicação (interna e externa) e para cada tipo de relatório (multiple reports e single report),

apresentado também, uma percentagem da pontuação máxima, tornando possível comparar os

conjuntos.

Tabela XXI - Síntese das Médias dos Índices de Qualidade das Replicações

N Média Desvio Padrão Replicações Externas 31 73% 0,12 Replicações Internas 62 83% 0,15

Total 93 80% 0,15 Multiple reports 60 75% 0,11 Single report 33 88% 0,16

Total 93 80% 0,15 Multiple reports (Internas) 29 76% 0,11 Single report (Internas) 33 88% 0,16

Total 62 83% 0,15

Os relatórios de replicações externas tiveram menor média do que o conjunto de

replicações internas, e a diferença das médias é estatisticamente significativa (t = -3.299, p

<0,001). Da mesma forma, replicações multiple reports, apresentaram médias

significativamente inferiores às replicações single report (t = -4.407, p <0,001).

1995 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010

Multi-Report 0% 75% 81% 66% 70% 81% 0% 78% 79% 73% 80% 85% 66% 73% 80%

Single-Report 76% 0% 0% 91% 100% 95% 82% 82% 65% 91% 94% 83% 80% 98% 95%

40%

50%

60%

70%

80%

90%

100%

110%

Page 85: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

84

Essa diferença pode ser explicada observando-se os critérios de avaliação individual

de qualidade. Os papers de replicações externas e internas foram avaliados com relação à

qualidade da descrição do estudo original, e as avaliações destes critérios foram

sistematicamente inferiores, comparando-se com os demais critérios. Como explicado

anteriormente, os critérios relativos à descrição do estudo original não foram utilizados para

avaliar as replicações internas single reports. Se forem excluídos estes critérios da avaliação

de replicações externas, aumenta a pontuação média do índice de qualidade para 83%, o

mesmo que todo o conjunto de replicações internas, e comparáveis (a diferença não é

estatisticamente significativa) para as replicações internas single report. Da mesma forma, a

média do índice de qualidade das replicações multiple reports aumenta para 86%, quando se

retiram os mesmos critérios.

Estes resultados indicam que a qualidade geral dos trabalhos é boa se levado em conta

os critérios genéricos de avaliação de qualidade para os estudos empíricos em geral. No

entanto, se forem adicionados os critérios de qualidade para avaliar especificamente a

descrição dos estudos originais, como proposto por Carver (2010), a qualidade dos relatórios

diminui. Pode-se pensar em três razões para explicar a má qualidade da descrição dos estudos

originais. Primeiro, uma descrição completa do estudo original toma espaço e partes

importantes podem ser deixadas de fora em publicações de conferências em que há restrições

sobre o número de páginas. Em segundo lugar, os pesquisadores não sabem que essa

descrição deve ser parte de seus trabalhos. Em terceiro lugar, informações detalhadas sobre o

estudo original podem não estar disponíveis e os pesquisadores relataram com o que

dispunham.

Diretrizes para documentar replicações podem abordar a segunda razão. Repositórios

para armazenar dados sobre experimentos e replicações abordariam a primeira e terceira

razões.

RQ07: Quais as principais lições aprendidas apresentadas nos estudos de

replicação?

Dos 93 estudos de replicação (REP), apenas 31 (33%) registraram alguma lição

aprendida sobre replicação. As lições aprendidas mais referenciadas estão associadas à

operacionalização dos experimentos de replicação.

Page 86: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

85

Na Tabela XXII são apresentadas as principais lições aprendidas apresentadas pelos

estudos.

Tabela XXII - Principais Lições Aprendidas

Tema Evidência de Lição Aprendida Referência do Estudo

(Apêndice A)

Operacionalização do Experimento

“[...] Conduzir esta replicação externa introduziu vários aspectos positivos e negativos neste experimento no seu planejamento, projeto, execução e análise. [...] Planejamento: Essa etapa foi totalmente simples de ser executada porque foi reaproveitado do estudo original. [...] Projeto: Essa foi a fase mais difícil de ser realizada por conta da impossibilidade da repetição das condições descritas no estudo original. Foi necessário fazer algumas alterações em relação ao estudo original, sem afetar as suas hipóteses e seus objetivos. [...] Execução: Esta etapa não foi fortemente afetada pela o fato de estarmos conduzindo uma replicação. [...] Análise: Todos os procedimentos estatísticos da análise foram relatados com base nos procedimentos do estudo original. Nós só tivemos que utilizar outra ferramenta estatística de análise, por conta de não termos acesso à mesma ferramenta utilizada no estudo original.”

REP009

“[...] Re-analisamos os dados do experimento original utilizando o mesmo modelo de regressão, método de estimação e software na replicação, tornando assim mais fácil de comparar os dois experimentos.”

REP032

“[...] Replicação, em geral, suscita uma questão de como comparar e combinar os resultados do estudo original e as replicações. Identificamos as técnicas de meta-análise como uma ferramenta útil para este fim.”

REP051

“[...] Efeitos da replicação são causados por diferenças nos materiais, participantes, ou a execução de múltiplas replicações.”

REP112

“[...] Mesmo que um experimento pareça ser fácil de ser replicado, não significa necessariamente que ele é adequado para ser replicado. O pesquisador deve verificar a necessidade de compreensão da teoria, o processo de geração de hipóteses, a interferência, na confiabilidade, a interpretação dos resultados e da comparabilidade dos resultados dos experimentos.”

REP120

Validade e Generalização dos

Resultados

“[...] Replicação do experimento em dois locais diferentes nos permitiu comparar os seus efeitos em populações de usuários com diferentes formações.”

REP031

Page 87: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

86

Tema Evidência de Lição Aprendida Referência do Estudo

(Apêndice A) “[...] Nossa experiência a partir da replicação de vários experimentos com o uso de ferramentas profissionais é que o uso de ferramentas de desenvolvimento de sistemas requer uma preparação adequada do experimento.”

REP068

Documentação e Difusão

“[...] Ao publicar dados empíricos que confirmem ou rejeitem os conhecimentos convencionais e os resultados do estudo original, mais lições podem ser aprendidas sobre a área pesquisada.”

REP021

“[...] A replicação foi facilitada pela descrição detalhada do processo original. Publicação dos resultados é importante.”

REP039

“[...] Cada replicação sofre um conjunto diferente de questões contextuais e é importante relatar as experiências com as replicações para benefício da comunidade.”

REP118

Utilização de Estudo Piloto

“[...] Conduzir um experimento piloto antes do experimento de replicação permite testar os materiais e processos experimentais.”

REP003

“[...] Baseado em nossa experiência, sugerimos a inclusão de um estudo piloto em qualquer processo de replicação. Por ter sido este o primeiro experimento conduzido pelos replicadores, é possível que os protocolos experimentais não tenham sido seguidos o quanto necessário para se obter resultados precisos.”

REP098

4.2. Discussão

O objetivo da fase de análise dos estudos foi traçar um panorama geral dos trabalhos

de replicação em engenharia de software. Era de se esperar que este trabalho não seria

uniforme quanto à definição de replicação, aos tipos usados para categorizar replicações e

quanto a estrutura e conteúdo dos estudos. Por isso, optou-se por utilizar uma definição clara

de replicação (GOULD, J.; KOLB, W. L., 1964) (LA SORTE, M. A., 1972), que tem sido

usada em engenharia de software (GÓMEZ G. et al., 2009) (GÓMEZ G. et al., 2010), e uma

classificação simples de replicação interna e externa, também encontrada na literatura de

engenharia de software (ALMQVIST, J. P. F., 2006) (BROOKS, A. et al. 2007).

No restante deste capítulo, serão discutidas as implicações dos resultados de pesquisa

sobre a replicação de estudos empíricos e algumas limitações da análise. É importante

ressaltar que os resultados preliminares desta dissertação já resultaram na produção de um

Page 88: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

87

paper intitulado Replication of empirical studies in software engineering: Preliminary

findings from a systematic mapping study, com autoria de Fabio Q. B. da Silva, Marcos

Suassuna, Rodrigo. F. Lopes, Tatiana B. Gouveia, A. César A. França, João Paulo N. de

Oliveira, Leonardo F.M. de Oliveira e André L. M. Santos, submetido e aceito para o

International Workshop on Replication in Empirical Software Engineering Research - RESER

2011, a ser realizado nos dias 8 e 9 de setembro, em Hamburgo, Alemanha.

4.2.1 Implicações da Pesquisa

Os resultados preliminares levantam algumas questões que a comunidade de pesquisa

poderia enfrentar para melhorar os trabalhos de replicação no campo da engenharia de

software empírica. Espera-se que esta discussão estimule mais pesquisadores para

desenvolverem replicações de estudos, como também trabalhos conceituais e teóricos sobre

replicação.

A primeira questão fundamental é o que deve ser considerado como replicação.

Foram encontradas, pelo menos, três situações em que isso não era claro e que foram tomadas

decisões que podem ter sido imaturas.

Vários estudos de caso: Yin (2009) afirma que em projetos de múltiplos casos, cada

caso deve ser visto como uma replicação (interna), e isto é consistente com a definição de

replicação considerada neste estudo. Foram analisados vários estudos de caso procurando

verificar se cada um deles eram replicações. No entanto, alguns estudos não eram claros sobre

o projeto do estudo, por isso não foi possível saber se o projeto era de múltiplos casos ou um

projeto de caso único com múltiplas unidades de análise. Neste estudo foram contabilizados

todos os estudos de caso. Esta decisão pode ter aumentado artificialmente o número de

replicações. Os pesquisadores que relatam estudos de caso devem ser mais precisos sobre o

projeto do estudo, para permitir uma clara identificação das replicações.

Estudos longitudinais: na busca manual de estudos nas Revistas, foi encontrada uma

série de quatro pesquisas realizadas com a mesma população, ao longo de um período de dez

anos ([ORI114, [REP114], [REP115], [REP116] do Apêndice A). Como não estava claro se

as três pesquisas subseqüentes deveriam ser consideradas replicações da primeira, ou parte de

um estudo em curso, foi feita uma consulta a especialistas em pesquisas e replicações, que

responderam de forma diferente. A decisão foi a de considerar os estudos como replicações,

porque o primeiro estudo não deixa claro que ele seria a parte inicial de um estudo

Page 89: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

88

longitudinal ([ORI114]). No entanto, ainda não se tem certeza de que esta escolha foi a

correta.

A mudança no tratamento: há vários relatos de experimentos que compararam dois

ou mais tratamentos, considerando cada mudança de tratamento como uma replicação. Em

alguns casos, ficou evidente que os pesquisadores descreveram um único experimento com

atribuições múltiplas de tratamento para os sujeitos. Estes casos não foram considerados nesta

pesquisa como replicações. Porém, em alguns casos, isso não estava claro, e pode ter sido

considerado como dois experimentos distintos que ocorreram, e que o segundo foi uma

replicação em que o tratamento foi uma variação do primeiro experimento.

Uma segunda questão está relacionada com o que deve ser considerado um bom

relatório de replicação. Carver (2010) iniciou esta discussão e que foram incorporadas neste

estudo algumas de suas sugestões nos critérios de avaliação de qualidade. Os resultados

mostraram que os índices de avaliação de qualidade dos relatórios das replicações foram

consideravelmente menores nos critérios específicos do que sobre os critérios genéricos. Uma

das razões possíveis é que os critérios exigem a descrição de vários aspectos do estudo

original, e isso consome espaço nos relatórios. Assim, confrontados com as restrições de

espaço, os pesquisadores poderiam ter deixado estas informações fora dos seus trabalhos.

Outra razão pode ser a consideração dessas informações, por parte dos pesquisadores, como

não relevantes, concentrando-se em documentar seus experimentos com ênfase nas suas

variáveis, processos e análises, o que pode resultar em dificuldade de compreensão do estudo

por outros pesquisadores e, até mesmo, o comprometimento de suas validades.

O uso inconsistente de terminologia e falta de padrões na documentação das

replicações, tornou a extração de dados, análise e síntese uma tarefa difícil nesta revisão. Isto

pode ter introduzido inevitáveis inconsistências nos resultados, como será discutido na

próxima seção.

Outra questão, associada às anteriores, tem a ver com a diferença do número de papers

encontrados de replicação e os papers relevantes para a pesquisa. Dos 16.129 papers

encontrados nas buscas automáticas e manual, apenas 134 papers foram classificados como

relevantes para a pesquisa. Para aplicar os critérios de inclusão e exclusão, muitas vezes foi

necessário ler, além do título e resumo dos estudos, outros capítulos dos papers. Uma grande

quantidade de papers foi excluída porque referenciou “replicação” dentro de estudos de banco

de dados, interação homem-máquina e redes de computadores, que estão fora do campo da

Page 90: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

89

engenharia de software e, consequentemente, fora do escopo desta pesquisa. Outro motivo da

exclusão foi a identificação do endereçamento de replicação nos papers apenas como parte de

trabalhos futuros. Uma indicação para o tratamento desta questão poderia ser a utilização de

resumo estruturado nos estudos, com um tópico específico para apresentação dos dados

principais sobre a replicação. Neste tópico deveriam constar dados de referência do estudo

original, o conceito e tipo de replicação empregados, guidelines utilizados no

desenvolvimento e documentação da replicação e as principais variações aplicadas no estudo.

Isto pode ser um passo importante para melhorar as condições para os pesquisadores

selecionarem, extraírem e analisarem estudos de replicação para suas pesquisas.

Por fim, uma questão importante a ser levantada tem a ver com a diferença do número

de replicações internas e externas. Foi possível observar, ao longo das análises das questões

desta pesquisa, que a grande maioria das replicações é interna. Embora o número de

replicações dos estudos em engenharia de software como um todo, venha crescendo ao longo

dos anos, parece que os pesquisadores ainda não estão promovendo trabalhos colaborativos

com outros pesquisadores, limitando-se á replicação de seus próprios estudos. Considerando-

se, então, os conceitos apresentados sobre replicação neste estudo, o crescimento da prática

dessa colaboração contribuirá para o aumento de confiabilidade dos resultados dos

experimentos de replicação.

Finalizando a discussão, ficou claro que foram feitos avanços importantes no trabalho

conceitual sobre replicações em engenharia de software, que se expressa no número de

estudos que abordam questões conceituais e teóricas sobre replicação em engenharia de

software encontrado nesta revisão (41 estudos ABO). No entanto, os desafios neste

mapeamento mostraram que ainda se tem muito a fazer.

4.2.2. As limitações desta revisão

As limitações mais comuns em uma revisão sistemática são: cobertura limitada,

possível viés introduzido no processo de seleção e imprecisões durante a extração de dados e

avaliação da qualidade. Estas são também, possivelmente, as principais limitações desta

revisão. O protocolo de pesquisa desenvolvido com base em diretrizes bem estabelecidas, foi

a medida tomada para tentar minimizar estas limitações.

A combinação de busca automática em vários engenhos e a busca manual em

publicações relevantes melhoram a cobertura de uma revisão. Foram pesquisados mais de 16

Page 91: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

90

mil artigos na busca automática, sem qualquer restrição de tempo. Como não existe padrão de

uso de terminologia no trabalho de replicação em engenharia de software, como discutido

antes, é possível que se tenham perdidos papers de replicação que não usaram a string

"replicação" ou qualquer um dos seus sinônimos. No entanto, o uso de busca manual nas

principais revistas e anais de conferências de engenharia de software, aumentou a cobertura e

reduziu essa possibilidade.

Este problema ficou claro com relação aos quatro artigos descrevendo um estudo

longitudinal discutido na Seção 4.2.1. Nenhum dos quatro papers utilizou "replicação" no

corpo do estudo, ou qualquer um dos sinônimos utilizados na string de busca. Esses papers

não foram encontrados na busca automática. Foram encontrados na busca manual. Se fosse

concluído que surveys longitudinais deveriam ser consideradas como replicações, a string de

busca deveria ser estendida com a inclusão de termos relacionados a este tipo de estudo. De

fato, pode-se ter perdido outros estudos longitudinais neste estudo.

Um processo de seleção de múltiplos estágios foi utilizado neste mapeamento e os

pesquisadores registraram as razões de inclusão e exclusão dos estudos em cada fase,

conforme recomendado por Kitchenham e Charters (2007). A seleção dos estudos, extração de

dados e avaliação da qualidade, em todas as etapas, foram realizadas por, pelo menos, dois

pesquisadores, e os conflitos do processo de seleção foram resolvidos em reuniões de

consenso pela dupla, ou, quando necessário, por um terceiro pesquisador. Os estudos

revisados variaram muito com relação ao uso da terminologia e de padrões. Isto fez a extração

de dados ficar mais difícil e sujeita a erros. Espera-se que o uso de pares e do terceiro revisor

independente tenha reduzido o risco de extração incorreta de dados.

Page 92: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

91

5. CONCLUSÕES

Neste capítulo é apresentada a síntese dos resultados obtidos com a realização do

mapeamento, indicações para trabalhos futuros e considerações finais da pesquisa.

5.1. Síntese de Resultados

Foi apresentado um estudo de mapeamento sistemático da literatura sobre replicações

de estudos empíricos em engenharia de software. Dos 16.126 artigos encontrados durante

extensivas buscas manual e automática, foram selecionados 177 trabalhos relevantes,

divididos em três grupos: papers descrevendo replicações (93), apresentando só documentos

de estudos originais (43) e papers descrevendo trabalhos conceituais e teóricos sobre a

replicação (41). Neste estudo, foi utilizado um subconjunto de 136 trabalhos, que apresentam

replicações e estudos originais, para responder às 7 questões específicas de pesquisa. Estes

136 papers apresentam estudos de replicações (93 trabalhos) e seus estudos originais (43

trabalhos). Foram estendidos os trabalhos relacionados anteriores, com 57 papers que não

foram examinados em (SJØBERG, et al., 2005), (ALMQVIST, J. P. F., 2006) e (CARVER,

J., 2010).

Foram encontradas 125 replicações e 76 estudos originais nos 136 trabalhos revisados.

O número de replicações vem aumentando ao longo dos anos, em particular a partir de 2002.

A mediana do número de replicações por ano cresceu de cinco, no período entre 1994 e 2002,

para onze, entre 2003 e 2010. O número de replicações internas está crescendo mais rápido do

que as replicações externas. Isto parece indicar que, embora a comunidade científica esteja

mais consciente da importância da realização de replicações, as replicações de estudos

realizados por outros pesquisadores (externas) precisam se tornar uma prática estabelecida.

5.2. Trabalhos Futuros

Pretende-se ampliar e refinar os resultados apresentados neste trabalho, através de uma

análise mais profunda e mais abrangente, sobre replicações de estudos empíricos em

engenharia de software descrita nos seguintes tópicos:

• Ampliação da base de dados: ao longo do desenvolvimento dos trabalhos, foi

montada uma base de dados com informações sobre os estudos primários. Esta base

dispõe de estudos REP, ORI e ABO (Apêndice A). Pretende-se ampliar esta base com

novas buscas automática e manual, dentro da mesma estratégia adotada nesta pesquisa,

Page 93: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

92

para incorporar os estudos publicados a partir de 2011, assim como a realização de

busca manual nas referências dos papers disponíveis para também incorporar estudos

que porventura não tenham sido considerados.

• Análise dos papers ABO: foram identificados 41 papers descrevendo trabalhos

conceituais e teóricos sobre replicação que não foram tratados nesta pesquisa.

Desenvolver análises e sínteses de seus conteúdos, assim como publicá-los, contribuirá

para diminuir as inconsistências de terminologia e falta de padrões sobre replicação.

• Análise de tipos e variações: a partir da ampliação da base de dados, novas

informações sobre tipos de replicação e variações entre os estudos de replicação e seus

originais poderão ser incorporadas. Desenvolver análises e sínteses dessas informações

para refinar os tipos apresentados e encontrar padrões de variação que possam ser

comparados com estudos teóricos, será uma importante contribuição para as

discussões e proposições de taxonomia e guidelines para classificação,

desenvolvimento e documentação de estudos de replicações em engenharia de

software empírica.

Finalmente, foi concluído recentemente pelo grupo de pesquisa sobre aspectos

humanos da engenharia de software, um estudo terciário sobre as revisões sistemáticas em

engenharia de software (DA SILVA, F.Q.B. et al., 2011) que estende dois outros estudos

anteriores (KITCHENHAM B. et al., 2009) (KITCHENHAM B. et al., 2010). As revisões

sistemáticas e replicações são importantes ferramentas metodológicas para a engenharia de

software baseada em evidências. Assim, pretende-se, também, integrar esta análise sobre

replicações aos estudos terciários, de forma a produzir uma visão mais abrangente dos estudos

empíricos em engenharia de software.

5.3. Considerações Finais

Replicações são necessárias em qualquer ciência empírica, e isto é obviamente

verdadeiro para a engenharia de software empírica. De acordo com os resultados desta

dissertação, a engenharia de software precisa de mais replicações.

O cenário atual dos trabalhos neste campo é de que as replicações estão distribuídas

em vários conjuntos de estudos, cada um com um pequeno número de replicações. Foram

encontrados 76 conjuntos de replicações, com uma média de 1,6 replicações por conjunto. A

Page 94: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

93

maioria dos conjuntos tem apenas uma replicação do estudo original. A cobertura dos temas

de engenharia de software está concentrada em alguns tópicos. Experimentos controlados e

quasi experimentos representam 84% dos estudos de replicação. Finalmente, a grande maioria

das replicações é interna.

Para melhorar este cenário, será necessário aumentar a cobertura dos temas de

engenharia de software, o que significa que mais conjuntos de replicações devem ser

desenvolvidos. No entanto, é necessário também, aumentar o número de replicações por

conjunto, atuais e futuros, e este aumento deve ser, principalmente, no número de replicações

externas. Essa melhora requer mais trabalho colaborativo entre pesquisadores focados em

replicações e em informações sistematicamente estruturadas (em repositórios consistentes)

sobre experimentos e replicações.

Finalmente, acredita-se que este estudo de mapeamento é um passo importante no

campo da pesquisa empírica de engenharia de software, no sentido de apresentar informações

oportunas e valiosas e que possa catalisar mais pesquisadores em torno de temas de interesse

comum.

Page 95: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

94

REFERÊNCIAS BIBLIOGRÁFICAS

ABRAN, A.; MOORE, J.; BOURQUE, P.; DUPUIS, T. (Eds.), Guide to software engineering body of knowledge, IEEE Computer Society, 2004. ALMQVIST, J.P.F. Replication of controlled experiments in empirical software engineering – a survey. Master’s thesis, Department of Computer Science, Faculty of Science, Lund University, Sweden, 2006. ARKSEY, H.; O´MALLEY, L. Scoping studies: towards a methodological framework, International Journal of Social Research Methodology, 8(1), 19-32, 2005. BAHR, H. M.; CAPLOW, T.; CHADWICK, B. A. Middletown iii: Problems of replication, longitudinal measurement, and triangulation. Annu. Rev. Sociol., 9(1):243–264, Aug. 1983. BASILI, V. et al. Building knowledge through families of experiments. IEEE Trans Softw Eng 25 (4):456–473, Jul/Aug 1999. BROOKS, A. et al. Replication of Experimental Results in Software Engineering. Technical Report, EFoCS-17-95 [RR/95/193], Dept. of Computer Science, Univ. of Strathclyde, 1995. BROOKS, A. et al. Replication’s role in software engineering. In F. Shull, J. Singer, and D. I. K. Sjøberg, editors, Guide to Advanced Empirical Software Engineering, pages 365–379. Springer, 2007. CARVER, J. C. Towards Reporting Guidelines for Experimental Replications: A Proposal. In RESER´2010: Proceedings of the 1st International Workshop on Replication in

Empirical Software Engineering Research, Cape Town, South Africa, 2010. Da SILVA, F.Q.B. et al., Six years of systematic literature reviews in software engineering: An updated tertiary study, Inform. Softw. Technol. (2011), doi:10.1016/j.infsof.2011.04.004. EASTERBROOK, S. M.; et al. Selecting Empirical Methods for Software Engineering Research. In F. Shull, J. Singer and D. Sjøberg(eds) Guide to Advanced Empirical Software Engineering, Springer, 2007. FINIFTER, B. The generation of confidence: Evaluating research findings by random subsample replication. Sociological Methodology, 4:112–175, 1972. FRANÇA, A. C. C. et al. The Effect of Reasoning Strategies on Success in Early Learning of Programming: Lessons Learned from an External Experiment Replication. In EASE’2010: 14th International Conference on Evaluation and Assessment in Software Engineering, Keele University, UK, 2010.

Page 96: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

95

GLASS, R. L.; VESSEY, l.; RAMESH, V. Research in Software Engineering: An Analysis of the Literature, J. Information and Software Technology, vol. 44, no. 8, pp. 491-506, June 2002. GÓMEZ G.; JURISTO, N.; VEGAS, N. Replication, Reproduction and Re-analysis: Three ways for verifying experimental findings. In RESER´2010: Proceedings of the 1st

International Workshop on Replication in Empirical Software Engineering Research, Cape Town, South Africa, 2009. GÓMEZ G., OMAR S.; JURISTO, N.; VEGAS, N. Replications Types in Experimental Disciplines. ESEM ’10, September 16-17, 2010, Bolzano-Bozen, Italy. GOULD, J.; KOLB, W. L. (Eds.). A dictionary of the social sciences. London: Tavistock Publications, 1964. JURISTO, N.; VEGAS, S. Using differences among replications of software engineering experiments to gain knowledge. In ESEM'09: Proceedings of the 2009 3rd International

Symposium on Empirical Software Engineering and Measurement. IEEE Computer Society, Washington, DC, USA, pp 356-366, 2009. KELLY, C.; CHASE, l.; TUCKER, R. Replication in experimental communication research: an analysis. Human Communication Research, 5(4):338–342, 1979. KITCHENHAM, B.; DYBÅ, T.; JØRGENSEN, M. Evidence-based Software Engineering. Proceedings of the 26th International Conference on Software Engineering, (ICSE ’04), IEEE, Washington DC, USA, pp 273 – 281, 2004. KITCHENHAM, B. Procedures for performing systematic reviews. Technical Report TR/SE-0401, Department of Computer Science, Keele University, Keele, Staffs, UK, July 2004. KITCHENHAM, B.; CHARTERS, S. Guidelines for performing systematic literature reviews in software engineering, Technical Report EBSE-2007-01, School of Computer Science and Mathematics, Keele University, 2007. KITCHENHAM, B. The role of replications in empirical software engineering—a word of warning. Empirical Software Engineering Journal. 13:219–221. 2008. KITCHENHAM B. et al., Systematic literature reviews in software engineering – a systematic literature review, Information and Software Technology 51, pp. 7-15, 2009. KITCHENHAM B. et al., Literature reviews in software engineering – a tertiary study, Information and Software Technology 52 (8), pp. 792-805, 2010. KREIN, J. L.; KNUTSON, C. D. A Case for Replication: Synthesizing Research Methodologies in Software Engineering. In RESER´2010: Proceedings of the 1st International Workshop on Replication in Empirical Software Engineering Research, Cape Town, South Africa, 2009.

Page 97: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

96

La SORTE, M. A. Replication as a Verification Technique in Survey Research: A Paradigm. The Sociological Quarterly, Vol. 13, No. 2, Spring, pp. 218-227, 1972. LINDSAY, R. M.; EHRENBERG, A. The Design of Replicated Studies. American Statistician. 47(3): 217–228, 1993. LUNG, J. et al. On the difficulty of replicating human subjects studies in software engineering. In Proceedings of the 13th international conference on Software engineering -

ICSE '08, New York, USA: ACM Press, p. 191, 2008. PETTICREW, M.; ROBERTS, H. Systematic Reviews in the Social Sciences. Blackwell Publishing, 2006. POPPER, K.. The Logic of Scientific Discovery. Hutchinson & Co, 1959. SHADISH, W. R.; COOK, T. D.; CAMPBELL, D. T. Experimental and Quasi-Experimental Designs for Generalized Causal Inference. Houghton Mifflin, 2002. SCHMIDT, S. Shall we really do it again? The powerful concept of replication is neglected in the social sciences. Review of General Psychology, 13(2):90–100, 2009. DOI: 10.1037/a0015108. SHULL, F.; BASILI, V.; CARVER, J.; MALDONADO, J. C.; TRAVASSOS, G. H.; MENDONÇA, M.; FABBRI, S. Replicating software engineering experiments: Addressing the tacit knowledge problem. In ISESE ’02: Proc. Int. Symp. on Empirical Softw. Eng., Washington, DC, USA, 2002. IEEE Computer Society. SHULL, F.; CARVER, J.; VEGAS, S.; JURISTO. N. The Role of Replications in Empirical Software Engineering. Empirical Software Engineering Journal. 13:211–218. 2008. SJØBERG, D., et al. A survey of controlled experiments in software engineering. IEEE Transactions on Software Engineering 31 (9), pp. 733–753, 2005. YIN, R. K. Case study research: Design and methods, 4th Edition. London, Sage Publications, 2009.

Page 98: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

97

APÊNDICE A - Estudos Primários

Papers de Replicação - REP

Referência Estudo Primário [REP001] English, M.; Buckley, J.; Cahill, T. A replicated and refined empirical study of

the use of friends in C++ software. Journal of Systems and Software, 83(11), pp. 2275-2286, 2010.

[REP003] Abrahão, S.; Poels, G. A family of experiments to evaluate a functional size measurement procedure for Web applications. Journal of Systems and Software, 82(2), pp. 253-269, 2009.

[REP005] Zhang, H. An investigation of the relationships between lines of code and defects. 2009 IEEE International Conference on Software Maintenance, 274-283, 2009.

[REP006] Huynh, T.; Miller, J. Another viewpoint on “evaluating web software reliability based on workload and failure data extracted from server logs.” Empirical Software Engineering, 14(4), pp. 371-396, 2009.

[REP007] Reynoso, L.; Manso, E.; Genero, M.; Piattini, M. Assessing the influence of import-coupling on OCL expression maintainability: A cognitive theory-based perspective. Elsevier - Information Sciences, 180(20), pp. 3837-3862, 2010.

[REP009] Dias-Neto, A. C.; Travassos, G. H. Evaluation of {model-based} testing techniques selection approaches: An external replication. Empirical Software Engineering and Measurement, pp. 269-278, 2009.

[REP010] Geet, J. V.; Demeyer, S. Feature location in COBOL mainframe systems: An experience report. IEEE International Conference on Software Maintenance - ICSM 2009, pp. 361-370, 2009.

[REP011] Abrahão, S.; Insfran, E.; Gravino, C.; Scanniello, G. On the effectiveness of dynamic modeling in UML: Results from an external replication. 2009 3rd International Symposium on Empirical Software Engineering and Measurement, pp. 468

[REP012] Ricca, F.; Scanniello, G.; Torchiano, M.; Reggio, G.; Astesiano, E. On the effectiveness of screen mockups in requirements engineering: results from an internal replication. Empirical Software Engineering and Measurement, 2010.

[REP014] Ceccato, M.; Di Penta, M.; Nagra, J.; Falcarin, P.; Ricca, F.; Torchiano, M., et al. The effectiveness of source code obfuscation: An experimental assessment. ICPC ’09, IEEE 17th International Conference, pp. 178-187, 2009.

[REP015] Do, H.; Mirarab, S.; Tahvildari, L.; Rothermel, G. The Effects of Time Constraints on Test Case Prioritization: A Series of Controlled Experiments. IEEE Transactions on Software Engineering, 36, pp. 593-617, 2010.

[REP016] Cruz-Lemus, J. A.; Maes, A.; Genero, M.; Poels, G.; Piattini, M. The impact of structural complexity on the understandability of UML statechart diagrams. Information Sciences, 180(11), pp. 2209-2220, 2010.

[REP019] Du, G.; McElroy, J.; Ruhe, G. A family of empirical studies to compare informal and optimization-based planning of software releases. International Symposium on Empirical Software Engineering, 212, 2006.

[REP020] Andersson, C. A replicated empirical study of a selection method for software reliability growth models. Empirical Software Engineering, 12(2), 161, 2007.

[REP021] Andersson, C.; Runeson, P. A Replicated Quantitative Analysis of Fault

Page 99: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

98

Referência Estudo Primário Distributions in Complex Software Systems. IEEE Transactions on Software Engineering, 33(5), pp. 273-286, 2007.

[REP022] Abrahão, S.; Poels, G.; Insfran, E. A Replicated Study on the Evaluation of a Size Measurement Procedure for Web Applications. 2008 Eighth International Conference on Web Engineering, pp. 217-223, 2008.

[REP023] Falessi, D.; Capilla, R.; Cantone, G. A value-based approach for documenting design decisions rationale: a replicated experiment. International Conference on Software Engineering, pp. 63-70, 2008.

[REP024] Ardimento, P.; Baldassarre, M. T.; Caivano, D.; Visaggio, G. Assessing multiview framework (MF) comprehensibility and efficiency: A replicated experiment. Information and Software Technology, 48(5), pp. 313-322, 2006.

[REP025] Lokan, C.; Mendes, E. Cross-company and Single-company Effort Models Using the ISBSG Database : a Further Replicated Study. ISESE '06 Proceedings of the 2006 ACM/IEEE international symposium on Empirical software engineering, pp. 75-84, 2006.

[REP026] Staron, M.; Kuzniarz, L.; Wohlin, C. Empirical assessment of using stereotypes to improve comprehension of UML models: A set of experiments. Journal of Systems and Software, 79(5), pp. 727-742, 2006.

[REP027] Canfora, G.; Cimitile, A.; Garcia, F.; Piattini, M.; Visaggio, C. A. Evaluating performances of pair designing in industry. Journal of Systems and Software, 80(8), pp. 1317-1327, 2007.

[REP028] Mendes, E.; Lokan, C. Replicating studies on cross- vs single-company effort models using the ISBSG Database. Empirical Software Engineering, 13(1), pp. 3, 2008.

[REP029] Ricca, F.; Penta, M. D.; Torchiano, M.; Tonella, P.; Ceccato, M. The Role of Experience and Ability in Comprehension Tasks Supported by UML Stereotypes. 29th International Conference on Software Engineering - ICSE 2007, pp. 375-384, 2007.

[REP030] Baresi, L.; Morasca, S. Three empirical studies on estimating the design effort of Web applications. ACM Transactions on Software Engineering and Methodology, Vol. 16, No. 4, Article 15, 2007.

[REP031] Ricca, F.; Torchiano, M.; Penta, M. D.; Ceccato, M.; Tonella, P. Using acceptance tests as a support for clarifying requirements: A series of experiments. Information and Software Technology, 51(2), pp. 270-283, 2009.

[REP032] Vokác, M.; Tichy, W.; Sjøberg, D. I. K.; Arisholm, E.; Aldrin, M. A Controlled Experiment Comparing the Maintainability of Programs Designed with and without Design Patterns—A Replication in a Real Programming Environment. Empirical Software Engineering, 9(3), pp. 149, 2004.

[REP033] Briand, L. C.; Bunse, C.; Daly, J. W. A controlled experiment for evaluating quality guidelines on the maintainability of object-oriented designs. Software Engineering, IEEE Transactions on, 27(6), pp. 513-530, 2001.

[REP034] Prechelt, L.; Unger, B.; Philippsen, M.; Tichy, W. A controlled experiment on inheritance depth as a cost factor for code maintenance. Journal of Systems and Software, 65(2), pp. 115, 2003.

[REP035] Canfora, G.; García, F.; Piattini, M.; Ruiz, F.; Visaggio, C. A. A family of experiments to validate metrics for software process models. Journal of Systems and Software, 77(2), pp. 113-129, 2005.

[REP036] Mendes, E.; Mosley, N.; Counsell, S. A replicated assessment of the use of adaptation rules to improve Web cost estimation. Proceedings of International

Page 100: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

99

Referência Estudo Primário Symposium on Empirical Software Engineering, pp. 100-109, 2003.

[REP037] Mendes E.; Lokan, C.; Harrison, R.; Triggs, C. A replicated comparison of cross-company and within-company effort estimation models using the ISBSG database. Proceedings - International Software Metrics Symposium, pp. 331-340, 2005.

[REP038] Thelin, T.; Andersson, C.; Runeson, P.; Dzamashvili-Fogelstrom, N. A Replicated Experiment of Usage-Based and Checklist-Based Reading. METRICS '04 Proceedings of the Software Metrics, 10th International Symposium, 2004.

[REP039] Shepperd, M.; Cartwright, M. A Replication of the Use of Regression towards the Mean (R2M) as an Adjustment to Effort Estimation Models. METRICS '05 Proceedings of the 11th IEEE International Software Metrics Symposium, 2005.

[REP040] Herbsleb, J. D.; Mockus, A. An empirical study of speed and communication in globally distributed software development. Software Engineering, IEEE Transactions on, 29(6), 481-494, 2003.

[REP041] Lanubile, F.; Mallardo, T.; Calefato, F.; Denger, C.; Ciolkowski, M. Assessing the impact of active guidance for defect detection: a replicated experiment. Software Metrics, 2004. Proceedings. 10th International Symposium, pp. 269-278, 2004.

[REP043] Thelin, T.; Petersson, H.; Runeson, P. Confidence intervals for capture-recapture estimations in software inspections. Information and Software Technology, 44(12), pp. 683-702, 2002.

[REP044] García, F.; Piattini, M.; Ruiz, F.; Visaggio, C. A. Maintainability of Software Process Models : An Empirical Study. Proceedings of the Ninth European Conference on Software Maintenance and Reengineering (CSMR’05), 2005.

[REP045] Myrtveit, I.; Stensrud, E. A controlled experiment to assess the benefits of estimating with Analogy and Regression Models. IEEE Transactions on Software engineering, Vol. 25, no. 4, 1999.

[REP046] Briand, L. C.; Langley, T.; Wieczorek, I. A replicated assessment and comparison of common software cost modeling techniques. International Conference on Software Engineering, 377, 2000.

[REP047] Fusaro, P.; Lanubile, F.; Visaggio, G. A Replicated Experiment to Assess Requirements InspectionTechniques. Empirical Software Engineering, Vol. 2, pp. 39-57, 1997.

[REP048] Roper, M.; Wood, M.; Miller, J. An empirical evaluation of defect detection techniques. Information and Software Technology, 39(11), pp. 763-775, 1997.

[REP049] Miller, J.; Macdonald, F. An empirical incremental approach to tool evaluation and improvement. Journal of Systems and Software, 51(1), pp. 19-35, 2000.

[REP050] Sandahl, K. Blomkivst, O.; Karlsson, J.; Krysander, C.; Lindvall, M.; Ohlsson, N. An Extended Replication of an Experiment for Assessing Methods for Software Requirements Inspections. Empirical Software Engineering, Vol. 354, pp. 327-354, 1998.

[REP051] Laitenberger, O.; El Emam, K.; Harbich, T. G. An Internally Replicated Quasi-Experimental Comparison of Checklist and Perspective-Based Reading of Code Documents. IEEE Transactions on Software Engineering, 27(5), pp. 387, 2001.

[REP052] Visaggio, G. Assessing the maintenance process through replicated, controlled experiments. Journal of Systems and Software, 44(3), pp. 187-197, 1999.

[REP053] Porter, A. A.; Votta, L. G.; Basili, V. R. Comparing Detection Methods for

Page 101: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

100

Referência Estudo Primário Software Requirements Inspections: A Replicated Experiment. IEEE Transactions on Software Engineering, 21(6), pp. 563, 1995.

[REP055] Briand, L. C.; Wüst, J.; Ikonomovski, S. V.; Lounis, H.; West, S.; & Ha, C. Investigating Quality Factors in Object-Oriented Designs : an Industrial Case Study. International Conference on Software Engineering, ICSE’99, 1999.

[REP057] Basili, V. R.; Briand, L. C.; Melo, W. L. A validation of object-oriented design metrics as quality indicators. Software Engineering, IEEE Transactions on, 22(10), 751-761, 1996.

[REP058] Cartwright, M.; Shepperd, M. An empirical view of inheritance. Information and Software Technology, 40(14), PP. 795-799, 1998.

[REP060] Cox, K.; Phalp, K. Replicating the CREWS Use Case Authoring Guidelines Experiment. Empirical Software Engineering, 5(3), pp. 245, 2000.

[REP061] Lindvall, M.; Rus, I.; Donzelli, P.; Memon, A.; Zelkowitz, M.; Betin-Can, A.; et al. Experimenting with software testbeds for evaluating new technologies. Empirical Software Engineering, 12(4), pp. 417-444, 2007.

[REP065] Shah, H. B.; Görg, C.; Harrold, M. J. Understanding Exception Handling: Viewpoints of Novices and Experts. IEEE Transactions on Software Engineering, pp. 150-161, 2010.

[REP066] Lui, K. M.; Chan, K. C. C.; Nosek, J. T. The Effect of Pairs in Program Design Tasks. IEEE Transactions on Software Engineering, 34, pp. 197-211, 2008.

[REP068] Anda, B.; Sjøberg, D. I. K. Investigating the Role of Use Cases in the Construction of Class Diagrams. Empirical Software Engineering, 10(3), PP. 285-309, 2005.

[REP070] Genero, M.; Manso, E.; Visaggio, A.; Canfora, G.; Piattini, M. Building measure-based prediction models for UML class diagram maintainability. Empirical Software Engineering, 12(5), pp. 517-549, 2007.

[REP071] Hochstein, L.; Carver, J.; Shull, F.; Asgari, S.; Basili, V.; Hollingsworth J. K.; Zelkowitz, M. V. Parallel Programmer Productivity: A Case Study of Novice Parallel Programmers. Supercomputing, 2005. Proceedings of the ACM/IEEE SC 2005 Conference, p. 35, 2005.

[REP072] De Lucia, A.; Gravino, C.; Oliveto, R.; Tortora, G. An experimental comparison of ER and UML class diagrams for data modelling. Empirical Software Engineering, 15(5), pp. 455-492, 2009.

[REP073] Daly, J.; Brooks, A.; Miller, J.; Roper, M.; Wood, M. Verification of Results in Software Maintenance Through External Replication. IEEE International Conference on Software Maintenance, pp. 50-57, 1994.

[REP076] Dinh-Trong, T. T.; Bieman, J. M. The FreeBSD Project: A Replication Case Study of Open Source Development. IEEE Transactions on Software Engineering, 31(6), pp. 481, 2005.

[REP081] García, F.; Ruiz, F.; Piattini, M. An Experimental Replica to Validate a set of Metrics for Software Process Models. Proceedings of the European Software Process Improvement Conference (EuroSPI), 2004.

[REP082] Jørgensen, M.; Teigen, K. H.; Moløkken, K. Better Sure Than Safe? Overconfidence in Judgment Based Software Development Effort Prediction Intervals. Journal of Systems and Software, Vol. 70, nos. 1,2, pp. 79-93, 2004.

[REP083] Agarwal, R.; De, P.; Sinha, A. P. Comprehending Object and Process Models : An Empirical Study, IEEE Transactions on Software Engineering, vol. 25, no. 4, 1999.

[REP084] Genero M.; Piatini, M.; Manso. E. Finding “early” indicators of UML class

Page 102: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

101

Referência Estudo Primário diagrams understandability and modifiability. Proceedings - 2004 International Symposium on Empirical Software Engineering, ISESE 2004, pp. 207-216, 2004.

[REP085] Kamsties, E.; Lott, C. M. An empirical evaluation of defect detection techniques. Information and Software Technology, 39(11), pp. 763-775, 1997.

[REP086] Kiper, J.; Auerheimer, B.; Ames, C. K. Visual Depiction of Decision Statements : What is Best for Programmers and Visual Depiction of Decision Statements : What is Best For Programmers and Non-programmers. Technical Report: MU-SEAS-CSA-1997-001, 1997.

[REP087] Land, L. P. W.; Jeffery, R.; Sauer, C. Validating the Defect Detection Performance Advantage of Group Designs for Software Reviews: Report of a Replicated Experiment. Technical Report: MU-SEAS-CSA-1997-001, 2007.

[REP088] Miller, J.; Wood, M.; Roper, M. Further Experiences with Scenarios and Checklists. Empirical Software Engineering, Vol.3, pp. 37–64, 1998.

[REP089] Zweben, S. H.; Edwards, S. H.; Weide, B. W.; Hollingsworth, J. E. The Effects of Layering and Encapsulation on Software Development Cost and Quality. IEEE Transactions on Software Engineering, Vol. 21, no. 3, pp. 200-208, 1995.

[REP090] Harrison, R.; Counsell, S.; Nithi, R. Experimental assessment of the effect of inheritance on the maintainability of object-oriented systems. Journal of Systems and Software, 52(2-3), pp. 173-179, 2000.

[REP091] Prechelt, L.; Unger-lamprecht, B; Philippsen, M.; Tichy, W. F. Two Controlled Experiments Assessing the Usefulness of Design Pattern Documentation in Program Maintenance. Design, 28(6), pp. 595-606, 2002.

[REP092] Regnell, B.; Runeson, P.; Thelin, T. Are the Perspectives Really Different? – Further Experimentation on Scenario-Based Reading of Requirements, (1), 331-356, 2001.

[REP093] Arisholm, E.; Sjøberg, D. I. K. Evaluating the Effect of a Delegated versus Centralized Control Style on the Maintainability of Object-Oriented Software, 30(8), pp. 521-534, 2004.

[REP094] Ricca, F.; Penta, M. D.; Torchiano, M.; Tonella, P.; Ceccato, M. How Developers’ Experience and Ability Influence Web Application Comprehension Tasks Supported by UML Stereotypes: A Series of Four Experiments. IEEE Transactions on Software Engineering, Vol. 36, pp. 96-118, 2010.

[REP095] Jørgensen, M. Identification of more risks can lead to increased over-optimism of and over-confidence in software development effort estimates. Information and Software Technology, 52(5), pp. 506-516, 2010.

[REP098] Maldonado, J. C.; Carver, J.; Shull, F.; Fabbri, S.; Dória, E.; Martimiano, L.; et al. Perspective-Based Reading: A Replicated Experiment Focused on Individual Reviewer Effectiveness. Empirical Software Engineering, 11(1), pp. 119-142, 2006.

[REP099] Briand, L. C.; Wüst, J.; Lounis, H. Replicated Case Studies for Investigating Quality Factorsin Object-Oriented Designs. Empirical Software Engineering, 6(1), 11, 2001.

[REP101] Verelst, J. The Influence of the Level of Abstraction on the Evolvability of Conceptual Models of Information Systems. Empirical Software Engineering, 10(4), pp. 467-494, 2005.

[REP102] Koru, A. G.;El Emam, K.; Dongsong, Z.; Liu, H.; Mathew, D. Theory of relative defect proneness - Replicated studies on the functional form of the size-

Page 103: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

102

Referência Estudo Primário defect relationship. Empirical Software Engineering, vol. 13, pp. 473-498, 2008.

[REP103] Müller, M. M. Two controlled experiments concerning the comparison of pair programming to peer review. Journal of Systems and Software, 78(2), pp. 166-179, 2005.

[REP104] Calefato, F.; Gendarmi, D.; Lanubile, F. Investigating the use of tags in collaborative development environments: a replicated study. Proceedings of the 2010 ACM-IEEE International Symposium on Empirical Software Engineering and Measurement, pp. 24:1--24:9, 2010.

[REP105] Mendes, E.; Lokan, C. Investigating the Use of Chronological Splitting to Compare Software Cross-company and Single-company Effort Predictions : A Replicated Study. ACSC '09 Proceedings of the Thirty-Second Australasian Conference on Computer Science – Vol. 91, 2009.

[REP106] Wesslén, A. A Replicated Empirical Study of the Impact of the Methods in the PSP on Individual Engineers. Empirical Software Engineering, vol. 5, pp. 93–123, 2000.

[REP107] Phongpaibul, M.; Boehm, B. A Replicate Empirical Comparison between Pair Development and Software Development with Inspection. First International Symposium on Empirical Software Engineering and Measurement (ESEM 2007), pp. 265-274, 2007.

[REP111] Lucia, A. D.; Oliveto, R.; Tortora, G. Assessing IR-based traceability recovery tools through controlled experiments. Empirical Software Engineering, pp. 57-92, 2009.

[REP112] Porter, A.; Votta, L. Comparing Detection Methods For Software Requirements Inspections: A Replication Using Professional Subjects. Empirical Software Engineering, 3(4), pp. 355, 1998.

[REP113] Ciolkowski, M.; Differding, C.; Laintenberger, O.; Münch, J. Empirical Investigation of perspective-based reading: A replicated experiment. Fraunhofer IESE, IESE - Report N.048.97/E, V, 1997.

[REP114] Holgeid, K. K.; Krogstie, J.; Sjøberg, D. I. K. A study of development and maintenance in Norway : assessing the efficiency of information systems support using functional maintenance. Information and Software Technology, 42, pp. 687-700, 2000.

[REP115] Krogstie, J.; Jahr, A.; Sjøberg, D. I. K. A longitudinal study of development and maintenance in Norway : Report from the 2003 investigation. Information and Software Technology, 48, pp. 993-1005, 2006.

[REP116] Davidsen, M. K.; Krogstie, J. A longitudinal study of development and maintenance. Information and Software Technology, 52(7), pp. 707-719, 2010.

[REP118] Lung, J.; Aranda, J.; Easterbrook, S.; Wilson, G. On the difficulty of replicating human subjects studies in software engineering. International Conference on Software Engineering, pp. 191-200, 2008.

[REP119] Caspersen, M. E.; Bennedsen, J.; Larsen, K. D. Mental Models and Programming Aptitude. ACM SIGCSE Bulletin, vol 39, Issue: 3, pp. 206, 2007.

[REP120] França, A. C. C.; da Cunha, P. R. M.; da Silva, F. Q. B. The Effect of Reasoning Strategies on Success in Early Learning of Programming: Lessons Learned from an External Experiment Replication. In EASE’2010: 14th International Conference on Evaluation and Assessment in Software Engineering, 2010.

[REP121] Ma, X.; Zhou, M.; Mei, H. How Developers Participate in Open Source

Page 104: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

103

Referência Estudo Primário Projects : a Replicate Case Study on JBossAS , JOnAS and Apache Geronimo. Workshop on Replication in Empirical Software Engineering Research (RESER)’10, 2010.

Papers de Estudos Originais - ORI

Referência Estudo Primário [ORI001] Counsell, S.; Newson, P. Use of friends in C++ software: an empirical

investigation. Journal of Systems and Software, 53(1), pp. 15-21, 2000. [ORI006] Tian, J.; Rudraraju, S.; Li, Z. Evaluating Web software reliability based on

workload and failure data extracted from server logs. IEEE Transactions on Software Engineering, 30(11), pp. 754-769, 2004.

[ORI009] Vegas, S.; Basili, V. A Characterization Schema for Software Testing Techniques. Empirical Software Engineering, 10(4), pp. 437-466, 2005.

[ORI010] Eisenbarth, T.; Rainer Koschke, R.; Simon, D. Locating Features in Source Code. IEEE Transactions on Software Engineering, Volume 29 Issue 3, 2003.

[ORI011] Gravino, C.; Scanniello, G.; Tortora, G. An Empirical Investigation on Dynamic Modeling in Requirements Engineering, pp. 615-629, 2008.

[ORI012] Ricca, F.; Scanniello, G.; Torchiano, M.; Reggio, G.; Astesiano, E. Can screen mockups improve the comprehension of functional requirements? In http://www.scienzemfn.unisa.it/scanniello/ScreenMockupExp/, 2010.

[ORI020] Stringfellow, C.; Andrews, A. A. An Empirical Method for Selecting Software Reliability Growth Models. Journal Empirical Software Engineering Volume 7 Issue 4, 2002.

[ORI021] Fenton, N. E.; Ohlsson, N. Quantitative analysis of faults and failures in a complex software system. IEEE Transactions on Software Engineering, 26(8), 797-814, 2000.

[ORI022] Abrahao, S.; Poels, G.; Pastor, O. Evaluating a functional size measurement method for web applications:an empirical analysis. 10th International Symposium on Software Metrics, pp. 358-369, 2001.

[ORI023] Falessi, D.; Cantone, G.; Kruchten, P. Value-Based Design Decision Rationale Documentation: Principles and Empirical Feasibility Study. Seventh Working IEEE/IFIP Conference on Software Architecture (WICSA 2008), pp. 189-198, 2008.

[ORI024] Baldassarre, M. T.; Caivano, D.; Visaggio, G. Comprehensibility and efficiency of multiview framework for measurement plan design. Proceedings of 2003 International Symposium on Empirical Software Engineering, 2003.

[ORI025] Jeffery, R.; Ruhe, M.; Wieczorek, I. Using public domain metrics to estimate software development effort. Proceedings Seventh International Software Metrics Symposium, pp. 16-27, 2001.

[ORI027] Canfora, G.; Cimitile, A.; Visaggio, C. A.; Garcia, F.; Piattini, M. Performances of Pair Designing on Software Evolution: a controlled experiment. Conference on Software Maintenance and Reengineering (CSMR'06), pp. 197-205, 2006.

[ORI032] Prechelt, L.; Unger, B.; Tichy, W. F.; Brössler, P.; Votta, L. G. A controlled experiment in maintenance: comparing design patterns to simpler solutions. IEEE Transactions on Software Engineering, 27(12), pp. 1134-1144, 2001.

[ORI033] Briand, L.; Bunse, C.; Daly, J. W.; Differding, C. An experimental comparison of the maintainability of object-oriented and structured design documents.

Page 105: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

104

Referência Estudo Primário Proceedings International Conference on Software Maintenance, pp. 130-138, 1997.

[ORI034] Daly, J.; Brooks, A.; Miller, J.; Roper, M.; Wood, M. (1996). Evaluating inheritance depth on the maintainability of object-oriented software. Empirical Software Engineering, 1(2), pp. 109-132, 1996.

[ORI036] Mendes, E.; Mosley, N.; Counsell, S. Do adaptation rules improve web cost estimation? Proceedings of the fourteenth ACM conference on Hypertext and hypermedia - HYPERTEXT ’03, 173. New York, New York, USA: ACM Press, 2003.

[ORI038] Thelin, T.; Runeson, P.; Wohlin, C. An experimental comparison of usage-based and checklist-based reading. IEEE Transactions on Software Engineering, 29(8), pp. 687-704, 2003.

[ORI039] Jørgensen, M.; Indahl, U.; Sjøberg, D. Effort Estimation : Software Effort Estimation by Analogy and “Regression Toward the Mean.” J. of Systems & Software, vol. 68, pp. 253-262, 2003.

[ORI041] Denger, C.; Ciolkowski, M.; Lanubile, F. Does Active Guidance Improve Software Inspections? A Preliminary Empirical Study. IEEE Transaction on Software Engineering, vol. 29, no. 6, 2003.

[ORI043] Miller, J. Estimating the number of remaining defects after inspection. Technical Report ISERN-98-24, vol. 9, pp. 167--189, 1998.

[ORI045] Shepperd, M.; Schofield, C.; Kitchenham, B. Effort estimation using analogy. Proceedings of IEEE 18th International Conference on Software Engineering, pp. 170-178, 1996.

[ORI046] Briand, L. C.; El Emam, K.; Surmann, D.; Wieczorek, I.; Maxwell, K. D. An assessment and comparison of common software cost estimation modeling techniques. Proceedings of the 21st international conference on Software engineering - ICSE ’99, 313-322, 1999.

[ORI055] Briand, L. C.; Daly, J.; Porter, V.; Wust, J. A comprehensive empirical validation of design measures for object-oriented systems. Proceedings Fifth International Software Metrics Symposium. Metrics (Cat. No.98TB100262), pp. 246-257, 1998

[ORI057] Chidamber, S. R.; Kemerer, C. F. A Metrics Suite for Object-Oriented Design. IEEE Trans. Software Eng., vol. 20, no. 6, pp. 476-493, 1994.

[ORI060] Achour, C. B.; Rolland, C.; Maiden, N. A. M.; Souveyet, C. Guiding Use Case Authoring : Results of an Empirical Study. Proc. Fourth IEEE Int. Symposium on Requirements Engineering, Centre for HCI Design , School of Informatics Northampton Square London EC1V OHB - United Kingdom, 1998.

[ORI070] Genero, M.; Piattini, M.; Manso, E.; Cantone, G. Building UML class diagram maintainability prediction models based on early metrics. Proceedings. 5th International Workshop on Enterprise Networking and Computing in Healthcare Industry (IEEE Cat. No.03EX717), pp. 263-275, 2003.

[ORI076] Mockus, A.; Fielding, R. T.; Herbsleb, J. D. Two case studies of open source software development: Apache and Mozilla. ACM Transactions on Software Engineering and Methodology, 11(3), pp. 309-346, 2002.

[ORI081] García, F.; Ruiz, F.; Piattini, M. Definition and Empirical Validation of Metrics for Software Process Models. Proceedings of the 5th International Conference Product Focused Software Process Improvement (PROFES'2004), pp. 146-158, 2004.

[ORI085] Basili, V. R.; Selby, R. W. (1987). Comparing the Effectiveness of Software

Page 106: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

105

Referência Estudo Primário Testing Strategies. IEEE Transactions on Software Engineering, SE-13(12), pp. 1278-1296, 1987.

[ORI087] Pek, L.; Land, W.; Sauer, C.; Jeffery, R. Validating the Defect Detection Performance Advantage of Group Designs for Software Reviews : Report of a Laboratory Experiment Using Program Code. Proceedings of European Sofrware Engineering Conference, pp. 22-25, 1997.

[ORI092] Basili, V. R.; Green, S.; Laitenberger, O.; Lanubile, F.; Shull, F.; Sørumgård, S.; et al. The Empirial Investigation of Perspective-Based Reading, Empirical Software Engineering, 1(2), pp. 133–164, 1996.

[ORI093] Arisholm, E.; Sjøberg, DAG I.K.; Jørgensen, M. Assessing the Changeability of two Object-Oriented Design Alternatives - A Controlled Experiment. Empirical Software Eng., vol. 6, no. 3, pp. 231-277, 2001.

[ORI104] Treude, C.; Storey, M.-A. How Tagging helps bridge the Gap Between Social and Technical Aspects In Software Development. 2009 IEEE 31st International Conference on Software Engineering, pp. 12-22, 2009.

[ORI105] Lokan, C.; Mendes, E. Investigating the Use of Chronological Splitting to Compare Software Cross-company and Single-company Effort Predictions. 12th International Conference on Evaluation and Assessment in Software Engineering (EASE), 2008.

[ORI106] Hayes, W.; Over, J. W. The Personal Software Process (PSP): An Empirical Study of the Impact of PSP on Individual Engineers. Technical Report CMU/SEI-97-TR-001, ESC-TR-97-001. Software Engineering, Institute, 1997.

[ORI107] Phongpaibul, M.; Boehm, B. An Empirical Comparison Between Pair Development and Software Inspection in Thailand. Proceedings of the 2006 ACM/IEEE international symposium on International symposium on empirical software engineering - ISESE ’06, 2006.

[ORI111] Lucia, A. D.; Fasano, F.; Oliveto, R.; Tortora, G. Recovering Traceability Links in Software Artifact Management Systems using Information Retrieval Methods. ACM Transactions on Software Engineering and Methodology, 16(4), pp. 13-es, 2007.

[ORI114] Krogstie, J.; Sølvberg, A. Software Maintenance in Norway: a survey investigation. Proceedings International Conference on Software Maintenance ICSM-94, pp. 304-313, 1994.

[ORI118] Dehnadi, S.; Bornat, R. The camel has two humps ( working title ). In Little Psychology of Programming Interest Group, Volume: 2, Issue: 23, Publisher: Citeseer, pp. 1-21, 2006.

[ORI121] Mockus, A.; Fielding, R. T.; Herbsleb, J. A case study of open source software development: the Apache server. Proceedings of the 2000 International Conference on Software Engineering. ICSE 2000 the New Millennium, pp. 263-272, 2000.

Papers sobre Replicação - ABO

Referência Estudo Primário [ABO001] Mendonça, M. G.; Maldonado, J. C.; Oliveira, M. C. F. D.; Carver, J.; Fabbri,

C. P. F.; Shull, F.; et al. A Framework for Software Engineering Experimental Replications. 13th IEEE International Conference on Engineering of Complex Computer Systems, PP. 203-212, 2008.

Page 107: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

106

Referência Estudo Primário [ABO003] Dyba, T. A systematic review of statistical power in software engineering

experiments. Information and Software Technology, 48, pp. 745-755, 2006 [ABO004] Cater-Steel, A.; Toleman, M.; Rout, T. Addressing the challenges of

replications of surveys in software engineering research. International Symposium on Empirical Software Engineering, 2005. 2005 (p. 10 pp.), 2005.

[ABO005] Vegas, S.; Juristo, N.; Moreno, A.; Solari, M.; Letelier, P. Analysis of the influence of communication between researchers on experiment replication. International Symposium on Empirical Software Engineering, p. 28, 2006.

[ABO006] Basili, V. R.; Shull, F.; Lanubile, F.; Society, I. C. Building knowledge through families of experiments. IEEE Trans Softw Eng 25 (4), pp.456–473, Jul/Aug 1999.

[ABO007] Pickard, L. M.; Kitchenham, B. A.; Jones, P. W. (1998). Combining empirical results in software engineering. Information and Software Technology, 40(14), pp. 811-821, 1998.

[ABO008] Kitchenham, B. A.; Linkman, S. G.; & Law, D. T. Critical review of quantitative assessment. Software Engineering Journal, 9(2), pp. 43-53, 1994.

[ABO009] Kitchenham, B.; Al-khilidar, H.; Babar, M. A.; Berry, M.; Cox, K.; Keung, J.; et al. Evaluating Guidelines for Empirical Software Engineering Studies. Evaluation, pp. 38-47, 2006.

[ABO010] Sommerville, I.; & Kemerer, C. (2000). Evaluation and assessment in software engineering. Journal of Systems and Software, 52, pp. 93-94, 2000;

[ABO011] Ohlsson, M. C.; Runeson, P.; Lund, S.Experience from Replicating Empirical Studies on Prediction Models. Symposium A Quarterly Journal In Modern Foreign Literatures.; 2002.

[ABO012] Zelkowitzayb, M. V.; Wallace, D. Experimental validation in software engineering ’. Information and Software Technology, 39, pp. 735-743, 1997.

[ABO013] Garcia, R. E.; Oliveira, M. C. F. de, Maldonado, J. C. (2005). Genetic algorithms to support software engineering experimentation. International Symposium on Empirical Software Engineering, 2005, p. 10, 2005.

[ABO014] Shull, F., et al. Knowledge-Sharing Issues in Experimental Software Engineering. Empirical Software Engineering, Vol. 9 Num. 1-2, pp. 111-137, 2004.

[ABO015] Goulão, M.; Brito, F. Modeling the Experimental Software Engineering Process, pp. 77-88, 2007.

[ABO017] Robles, G. Replicating MSR: A study of the potential replicability of papers published in the Mining Software Repositories Proceedings. Proceedings - International Conference on Software Engineering, pp. 171-180, 2010.

[ABO018] Mende, T. Replication of defect prediction studies: problems, pitfalls and recommendations. ACM International Conference Proceeding Series, 2010.

[ABO019] Gómez, O. S.; Juristo, N.; & Vegas, S. (2010). Replications types in experimental disciplines. Empirical Software Engineering and Measurement, 2010.

[ABO020) Knutson, C. D.; Krein, J. L.; Prechelt, L.; & Juristo, N. (2010). Report from the 1st international workshop on replication in empirical software engineering research (RESER 2010). ACM SIGSOFT Software Engineering Notes, 35(5), pp. 42-44, 2010.

[ABO021] Runeson, P.; & Wiberg, M. Simulation of Experiments for Data Collection – a replicated study. Evaluation and Assessment in Software Engineering, pp.1-10, 2006.

Page 108: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

107

Referência Estudo Primário [ABO022] Miller, J.; Daly, J.; Wood, M.; Roper, M.; & Brooks, A. Statistical power and

its subcomponents -- missing and misunderstood concepts in empirical software engineering research. Information and Software Technology, 39(4), pp. 285-295, 1997.

[ABO023] Juristo N.; V. S. The role of non-exact replications in software engineering experiments. Empir Software Eng, Vol.16, Num. 3, pp. 295-324, 1996.

[ABO024] Shull, F.; Carver, J.; Vegas, S.; Juristo. N. The Role of Replications in Empirical Software Engineering. Empirical Software Engineering Journal. 13:211–218. 2008.

[ABO025] Kitchenham, B. The role of replications in empirical software engineering—a word of warning. Empirical Software Engineering Journal. 13:219–221. 2008.

[ABO026] Miller, J. Triangulation as a basis for knowledge discovery in software engineering. Empirical Software Engineering, 13(2), pp. 223-228, 2008.

[ABO027] Cruzes, D.; Mendonza, M.; Basili, V.; Shull, F.; Jino, M. (2007). Using Context Distance Measurement to Analyze Results across Studies. Empirical Software Engineering and Measurement, 2007.

[ABO028] Juristo, N.; Vegas, S. (2009). Using differences among replications of software engineering experiments to gain knowledge. Empirical Software Engineering and Measurement, pp. 356-366, 2010.

[ABO029] Shull, F.; Basili, V.; Carver, J.; Maldonado, J. C.; Travassos, G. H.; Mendonça, M.; Fabbri, S. Replicating software engineering experiments: Addressing the tacit knowledge problem. In ISESE ’02: Proc. Int. Symp. on Empirical Softw. Eng., 2002.

[ABO030] Miller, J. Applying meta-analytical procedures to software engineering experiments. Journal of Systems and Software, 54(1), pp. 29-39, 2000.

[ABO031] Shull, F.; Carver, J.; Travassos, G. H.; Maldonado, J. C.; Conradi, R.; Basili, V. R. Replicated studies: building a body of knowledge about software reading techniques. Software Engineering And Knowledge Engineering, 39, 2003.

[ABO032] Miller, J. Replicating software engineering experiments: a poisoned chalice or the Holy Grail. Information and Software Technology, 47(4), 233-244, 2005.

[ABO033] Falessi, D.; Babar, M.; Cantone, G.; Kruchten, P. Applying empirical software engineering to software architecture: challenges and lessons learned. Empirical Software Engineering, 15(3), pp. 250-276, 2010.

[ABO034] Shull, F.; Cruzes, D.; Basili, V.; Mendonça, M. Simulating families of studies to build confidence in defect hypotheses. Information and Software Technology, 47(15), 1019-1032, 2005.

[ABO035] Carver, J. C. Towards Reporting Guidelines for Experimental Replications: A Proposal. In RESER´2010: Proceedings of the 1st International Workshop on Replication in Empirical Software Engineering Research, Cape Town, South Africa, 2010.

[ABO036] Fernández, E. Hidden Evidence Behind Useless Replications. Report from the 1st international workshop on replication in empirical software engineering research (RESER 2010), 2010.

[ABO037] Ferrari, R.; Madhavji, N. H.; Sudmann, O.; Henke, C.; Schaefer, W. Transitioning from lab studies to large-scale studies : Emerging results from a literal replication. Report from the 1st international workshop on replication in empirical software engineering research (RESER 2010), 2010..

[ABO038] Gómez G.; Juristo, N.; Vegas, N. Replication, Reproduction and Re-analysis: Three ways for verifying experimental findings. In RESER´2010: Proceedings

Page 109: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

108

Referência Estudo Primário of the 1st International Workshop on Replication in Empirical Software Engineering Research, Cape Town, South Africa, 2009.

[ABO039] Krein, J. L., et al. A Case for Replication : Synthesizing Research Methodologies in Software Engineering Proceedings of the 1st International Workshop on Replication in Empirical Software Engineering Research (RESER '10), 2010.

[ABO040] Maclean, A. C.; Pratt, L. J.; Krein, J. L.; Knutson, C. D.; Walls, C. Threats to Validity in Analysis of Language Fragmentation on SourceForge Data. RESER, 2010.

[ABO041] Mäntylä, M. V.; Aalto, F.-, Lassenius, C.; Aalto, F. Rethinking Replication in Software Engineering : Can We See the Forest for the Trees?. RESER, 2010.

[ABO042] Mockus, A.; Sjøberg, D. I. K. Experiences from Replicating a Case Study to Investigate Reproducibility of Software Development, In: First International Workshop on Replication in Empirical Software Engineering Research (RESER '10), Cape Town, South Africa, 4 May, 2010.

[ABO043] Robles, G.; Rey, U.; Carlos, J.; Germán, D. M. Beyond Replication : An example of the potential benefits of replicability in the Mining of Software Repositories Community. RESER, 2010.

Page 110: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

109

APÊNDICE B – SWEBOK

IEEE Computer Society

Guide to the Software Engineering Body of Knowledge - SWEBOK ®

(http://www.computer.org/portal/web/swebok/html/contents)

Capítulos de Engenharia de Software

CHAPTER SESSION

2. SOFTWARE

REQUIREMENTS

1. Software Requirements Fundamentals

1.1 Definition of a Software Requirement

1.2 Product and Process Requirements

1.3 Functional and Non functional Requirements

1.4 Emergent Properties

1.5 Quantifiable Requirements

1.6 System Requirements and Software

Requirements

2. Requirements Process

2.1 Process Models

2.2 Process Actors

2.3 Process Support and Management

2.4 Process Quality and Improvement

3. Requirements Elicitation

3.1 Requirements Sources

3.2 Elicitation Techniques

4. Requirements Analysis

4.1 Requirements Classification

4.2 Conceptual Modeling

4.3 Architectural Design and Requirements Allocation

4.4 Requirements Negotiation

5. Requirements Specification

5.1 The System Definition Document

5.2 System Requirements Specification

5.3 Software Requirements Specification

6. Requirements validation

6.1 Requirements Reviews

6.2 Prototyping

6.3 Model Validation

6.4 Acceptance Tests

7. Practical Considerations

7.1 Iterative Nature of the Requirements Process

7.2 Change Management

7.3 Requirements Attributes

7.4 Requirements Tracing

Page 111: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

110

CHAPTER SESSION 7.5 Measuring Requirements

3. SOFTWARE DESIGN

1. Software Design Fundamentals

1.1. General Design Concepts

1.2. Context of Software Design

1.3. Software Design Process

1.3.1. Architectural design

1.3.2. Detailed design

1.4. Enabling Techniques

1.4.1. Abstraction

1.4.2. Coupling and cohesion

1.4.3. Decomposition and

modularization

1.4.4. Encapsulation/information hiding

1.4.5. Separation of interface and

implementation

1.4.6. Sufficiency, completeness and

primitiveness

2. Key Issues in Software Design

2.1. Concurrency

2.2. Control and Handling of Events

2.3. Distribution of Components

2.4. Error and Exception Handling and Fault

Tolerance

2.5. Interaction and Presentation

2.6. Data Persistence

3. Software Structure and Architecture

3.1. Architectural Structures and Viewpoints

3.2. Design Patterns (microarchitectural

patterns)

3.3. Families of Programs and Frameworks

4. Software Design Quality Analysis and Evaluation

4.1. Quality Attributes

4.2. Quality Analysis and Evaluation

Techniques

4.3. Measures

5. Software Design Notations

5.1. Structural Descriptions (static view)

5.2. Behavioral Descriptions (dynamic view)

6. Software Design Strategies and Methods

6.1. General Strategies

6.2. Function-Oriented (Structured) Design

6.3. Object-Oriented Design

6.4. Data-Structure-Centered Design

6.5. Component-Based Design (CBD)

6.6. Other Methods

4. SOFTWARE 1. Software Construction Fundamentals

Page 112: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

111

CHAPTER SESSION CONSTRUCTION 1.1. Minimizing Complexity

1.2. Anticipating Change

1.3. Constructing for Verification

1.4. Standards in Construction

2. Managing Construction

2.1. Construction Models

2.2. Construction Planning

2.3. Construction Measurement

3. Practical considerations

3.1. Construction Design

3.2 Construction Languages

3.3. Coding

3.4. Construction Testing

3.5. Reuse

3.6. Construction Quality

3.7 Integration

5. SOFTWARE TESTING

1. Software Testing Fundamentals

1.1. Testing-related terminology

1.1.1. Definitions of testing and related

terminology

1.1.2. Faults vs. Failures

1.2. Key issues

1.2.2. Testing effectiveness / Objectives

for testing

1.2.3. Testing for defect identification

1.2.4. The oracle problem

1.2.5. Theoretical and practical

limitations of testing

1.2.6. The problem of infeasible paths

1.2.7. Testability

1.3. Relationships of testing to other activities

2. Test Levels

2.1. The target of the test

2.1.1. Unit testing

2.1.2. Integration testing

2.1.3. System testing

2.2. Objectives of Testing

2.2.1. Acceptance / qualification testing

2.2.2. Installation testing

2.2.3. Alpha and beta testing

2.2.4. Conformance testing / Functional

testing / Correctness testing

2.2.5. Reliability achievement and

evaluation

2.2.6. Regression testing

2.2.7. Performance testing

Page 113: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

112

CHAPTER SESSION 2.2.8. Stress testing

2.2.9. Back-to-back testing

2.2.10. Recovery testing

2.2.11.Configuration testing

2.2.12. Usability testing

2.2.13.Test-driven development

3. Test Techniques

3.1. Based on the software engineer's intuition

and experience

3.1.1. Ad hoc testing

3.1.2. Exploratory testing

3.2. Specification-based techniques

3.2.1. Equivalence partitioning

3.2.2. Boundary-value analysis

3.2.3. Decision table

3.2.4. Finite-state machine-based

3.2.5. Testing from formal specifications

3.2.6. Random testing

3.3. Code-based techniques

3.3.1. Control-flow-based criteria

3.3.2. Data flow-based criteria

3.3.3. Reference models for code-based

testing (flowgraph, call graph)

3.4. Fault-based techniques

3.4.1. Error guessing

3.4.2. Mutation testing

3.5. Usage-based techniques

3.5.1. Operational profile

3.5.2. Software Reliability Engineered

Testing

3.6. Techniques based on the nature of the

application

3.7. Selecting and combining techniques

3.7.1. Functional and structural

3.7.2. Deterministic vs. random

4. Test-related measures

4.1. Evaluation of the program under test

4.1.1. Program measurements to aid in

planning and designing testing

4.1.2. Fault types, classification, and

statistics

4.1.3. Fault density

4.1.4. Life test, reliability evaluation

4.1.5. Reliability growth models

4.2. Evaluation of the tests performed

4.2.1. Coverage / thoroughness

measures

Page 114: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

113

CHAPTER SESSION 4.2.2. Fault seeding

4.2.3. Mutation score

4.2.4. Comparison and relative

effectiveness of different techniques

5. Test Process

5.1. Practical considerations

5.1.1. Attitudes / Egoless programming

5.1.2. Test guides

5.1.3. Test process management

5.1.4. Test documentation and work

products

5.1.5. Internal vs. independent test team

5.1.6. Cost/effort estimation and other

process measures

5.1.7. Termination

5.1.8. Test reuse and test patterns

5.2. Test Activities

5.2.1. Planning

5.2.2. Test-case generation

5.2.3. Test environment development

5.2.4. Execution

5.2.5. Test results evaluation

5.2.6. Problem reporting/Test log

5.2.7. Defect tracking

6. SOFTWARE

MAINTENANCE

1. Software Maintenance Fundamentals

1.1. Definitions and Terminology

1.2. Nature of Maintenance

1.3. Need for Maintenance

1.4. Majority of Maintenance

1.5. Evolution of Software

1.6. Categories of Maintenance

2. Key Issues in Software Main

2.1. Technical Issues tenance

2.1.1. Limited understanding

2.1.2. Testing

2.1.3. Impact analysis

2.1.4. Maintainability

2.2. Management Issues

2.2.1. Alignment with organizational

objectives

2.2.2. Staffing

2.2.3. Process

2.2.4. Organizational aspects of

maintenance

2.2.5. Outsourcing

2.3. Maintenance Cost Estimation

Page 115: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

114

CHAPTER SESSION 2.3.1. Cost estimation

2.3.2. Parametric models

2.3.3. Experience

2.4. Software Maintenance Measurement

2.4.1. Specific Measures

3. Maintenance Process

3.1. Maintenance Processes

3.2. Maintenance Activities

3.2.1. Unique activities

3.2.2. Supporting activities

3.2.3. Maintenance planning activity

3.2.4. Software configuration

management

3.2.5. Software quality

4. Techniques for Maintenance

4.1. Program Comprehension

4.2. Reengineering

4.3. Reverse engineering

7. SOFTWARE

CONFIGURATION

MANAGEMENT

1. Management of the SCM Process

1.1. Organizational Context for SCM

1.2. Constraints and Guidance for the SCM

Process

1.3. Planning for SCM

1.3.1. SCM organization and

responsibilities

1.3.2. SCM resources and schedules

1.3.3. Tool selection and

implementation

1.3.4. Vendor/Subcontractor Control

1.3.5. Interface control

1.4. SCM Plan

1.5. Surveillance of Software Configuration

Management

1.5.1. SCM measures and

measurement

1.5.2. In-process audits of SCM

2. Software Configuration Identification

2.1. Identifying Items to Be Controlled

2.1.1. Software configuration

2.1.2. Software configuration item

2.1.3. Software configuration item

relationships

2.1.4. Software version

2.1.5. Baseline

2.1.6. Acquiring software configuration

items

Page 116: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

115

CHAPTER SESSION 2.2. Software Library

3. Software Configuration Control

3.1. Requesting, Evaluating, and Approving

Software Changes

3.1.1. Software Configuration Control

Board

3.1.2. Software change request process

3.2. Implementing Software Changes

3.3. Deviations and Waivers

4. Software Configuration Status Accounting

4.1. Software Configuration Status Information

4.2. Software Configuration Status Reporting

5. Software Configuration Auditing

5.1. Software Functional Configuration Audit

5.2. Software Physical Configuration Audit

5.3. In-process Audits of a Software Baseline

6. Software Release Management and Delivery

6.1. Software Building

6.2. Software Release Management

8. SOFTWARE

ENGINEERING

MANAGEMENT

1. Initiation and Scope Definition

1.1. Determination and Negotiation of

Requirements

1.2. Feasibility Analysis (Technical, Operational,

Financial, Social/Political)

1.3. Process for the Review and Revision of

Requirements

2. Software Project Planning

2.1. Process Planning

2.2. Determine Deliverables

2.3. Effort, Schedule, and Cost Estimation

2.4. Resource Allocation

2.5. Risk Management

2.6. Quality Management

2.7. Plan Management

3. Software Project Enactment

3.1. Implementation of Plans

3.2. Supplier Contract Management

3.3. Implementation of measurement process

3.4. Monitor Process

3.5. Control Process

3.6. Reporting

4. Review and Evaluation

4.1. Determining Satisfaction of Requirements

4.2. Reviewing and Evaluating Performance

5. Closure

5.1. Determining Closure

Page 117: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

116

CHAPTER SESSION 5.2. Closure Activities

6. Software Engineering Measurement

6.1. Establish and Sustain Measurement

Commitment

6.2. Plan the Measurement Process

6.3. Perform the Measurement Process

6.4. Evaluate Measurement

9. SOFTWARE

ENGINEERING

PROCESS

1. Process Implementation and Change

1.1. Process Infrastructure

1.1.1. Software Engineering Process

Group (SEPG)

1.1.2. Experience Factory (EF)

1.2. Software Process Management Cycle

1.3. Models For Process Implementation And

Change

1.4. Practical Considerations

2. Process Definition

2.1. Software Life Cycle Models

2.2. Software Life Cycle Processes

2.3. Notations for Process Definitions

2.4. Process Adaptation

2.5. Automation

3. Process Assessment

3.1. Process Assessment Models

3.2. Process Assessment Methods

4. Process and Product Measurement

4.1. Process Measurement

4.1.1. Size measurement

4.1.2. Structure measurement

4.1.3. Quality measurement

4.2. Quality Of Measurement Results

4.3. Software Information Models

4.3.1. Model building

4.3.2. Model implementation

4.4. Process Measurement Techniques

4.4.1. Analytical techniques

4.4.2. Benchmarking techniques

10. SOFTWARE

ENGINEERING TOOLS

AND METHODS

1. Software Engineering Tools

1.1. Software Requirements Tools

1.2. Software Design Tools

1.3. Software Construction Tools

1.4. Software Testing Tools

1.5. Software Maintenance Tools

1.6. Software Configuration Management Tools

1.7. Software Engineering Management Tools

1.8. Software Engineering Process Tools

Page 118: Dissertação de Mestrado - repositorio.ufpe.br · A DEUS, por iluminar toda a minha vida para que seja consistente com seus mandamentos, sempre me oferecendo oportunidade para desenvolver

117

CHAPTER SESSION 1.9. Software Quality Tools

1.10. Miscellaneous Tool Issues

2. Software Engineering Methods

2.1. Heuristic methods

2.2. Formal Methods

2.3. Prototyping Methods

11. SOFTWARE

QUALITY

1. Software Quality Fundamentals

1.1. Software Engineering Culture and Ethics

1.2. Value and Costs of Quality

1.3. Models and Quality Characteristics

1.3.1. Software engineering process

quality

1.3.2. Software product quality

1.4. Quality Improvement

2. Software Quality Management Processes

2.1. Software Quality Assurance

2.2. Verification &amp; Validation

2.3. Reviews and Audits

2.3.1. Management reviews

2.3.2. Technical reviews

2.3.3. Inspections

2.3.4. Walk-throughs

2.3.5. Audits

3. Practical Considerations

3.1. Software Quality Requirements

3.1.1. Influence factors

3.1.2. Dependability

3.1.3. Integrity levels of software

3.2. Defect Characterization

3.3. Software Quality Management

Techniques

3.3.1. Static techniques

3.3.2. People-intensive techniques

3.3.3. Analytical techniques

3.3.4. Dynamic techniques

3.3.5. Testing

3.4. Software Quality Measurement