Análise da Completude dos Relatos de Experimentos em Elasticidade na Computação em Nuvem: Um Mapeamento Sistemático

Embed Size (px)

DESCRIPTION

Dissertação apresentada como requisito parcial para a obtenção do título de Mestre em Ciências da Computação, área de concentração em Engenharia de Software pelo Programa de Pós-Graduação em Ciências da Computação do Centro de Informática da Universidade Federal de Pernambuco.Resumo: Contexto: Para que os leitores possam avaliar a validade de um estudo empírico, replicar seus resultados, ou para que editores possam julgar efetivamente o verdadeiro potencial de impacto da pesquisa, os autores devem relatar e documentar cuidadosamente elementos da pesquisa como: motivação, objetivo, método, análise dos dados, resultados, conclusões e limitações. Infelizmente autores têm indicado que a comunicação dos resultados de estudos empíricos (EE) na computação em nuvem (CN) omitem informações relevantes destes elementos de pesquisa.Tais inconveniências na comunicação dos resultados destes estudos, ampliadas a todo um campo de pesquisa, podem levar a um conjunto potencial de evidências fracas ou ilusórias para futuras pesquisas científicas.Objetivo: Apesar de críticas aos relatos dos estudos empíricos serem evidenciadas, até o presente momento, não foi realizada uma caracterização das informações omitidas pelos autores. Neste sentido, o presente estudo tem como objetivo apresentar um esforço primeiro que analisa nos relatos a apresentação dos elementos de pesquisa acima citados, considerados essenciais para a análise da validade e protencial de uma pesquisa empírica. Analisar a forma de apresentação dos resultados é um primeiro passo relevante para a compreensão do cenário atual da prática dos relatos dos estudos empíricos. Assim, foi analisado nos relatos o grau de completude: o quão presentes estão as informações dos elementos da pesquisa em seus relatos. Afim de realizar uma análise mais profunda, o foco inicial da pesquisa foi direcionado ao método empírico de experimentação, com foco nas avaliações da característica de elasticidade da CN.Método: Através de um mapeamento sistemático da literatura (MSL) foram identificados os experimentos em elasticidade na computação em nuvem e, através de instrumento de avaliação criado com base em orientações existentes para se reportar experimentos na engenharia de software experimental, a completude de seus relatos foi avaliada.Resultado: Após a avaliação inicial de 3.611 estudos, foram selecionados e analisados os relatos de 59 experimentos. Constatamos que em geral os autores omitem informações relacionadas ao planejamento da pesquisa, coleta dos dados, procedimentos de execução, ins- trumentação, análise dos dados, relação dos resultados com pesquisas anteriores, ameaças à validade e generalização dos resultados. Em relação ao índice de completude o maior grau foi 6.67 em uma escala de 0 a 10, sendo considerada baixa em valores quantitativos. Também foi realizada uma breve análise qualitativa que revela que, ainda que reportadas, muitas das informações apresentadas pelos relatos são superficiais e dificultam a interpretação, validação, generalização e replicação dos resultados dos estudos.

Citation preview

  • Helaine Solange Lins Barreiros

    ANLISE DA COMPLETUDE DOS RELATOS DE EXPERIMENTOS

    EM ELASTICIDADE NA COMPUTAAO EM NUVEM: UM

    MAPEAMENTO SISTEMTICO

    Dissertao de Mestrado

    Universidade Federal de [email protected]

    www.cin.ufpe.br/~posgraduacao

    RECIFE2015

  • Universidade Federal de Pernambuco

    Centro de InformticaPs-graduao em Cincia da Computao

    Helaine Solange Lins Barreiros

    ANLISE DA COMPLETUDE DOS RELATOS DE EXPERIMENTOSEM ELASTICIDADE NA COMPUTAAO EM NUVEM: UM

    MAPEAMENTO SISTEMTICO

    Trabalho apresentado ao Programa de Ps-graduao em

    Cincia da Computao do Centro de Informtica da Univer-

    sidade Federal de Pernambuco como requisito parcial para

    obteno do grau de Mestre em Cincia da Computao.

    Orientador: Vinicius Cardoso GarciaCo-Orientador: Sergio Soares

    RECIFE2015

  • Eu dedico esta dissertao a toda a minha famlia, amigos e

    professores que me deram o suporte necessrio para chegar

    at aqui.

  • Agradecimentos

    A Emanoel Barreiros, meu esposo, pelo carinho, dedicao, pacincia, compreenso esuporte em todos os momentos mais decisivos e marcantes de minha vida.

    Ao melhor presente que o meu pequeno Davi Barreiros, por simplesmente existir e fazeros momentos mais difceis se transformarem nos mais inspiradores apenas com o seu lindosorriso.

    A Dulce Lins, Marcos Lins, Heline Lins, Igor Lins e Jssica Barbosa, Rejane Barreiros, ManoelBarreiros, Manoela Barreiros, Maurcio Barreiros e Thuanne Paiva, minha famlia, que uniramtodos os esforos para que este sonho se tornasse realidade.

    Ao meu orientador Vinicius Garcia, obrigada pela oportunidade, confiana, suporte e parceriadurante a caminhada do mestrado.

    Ao meu co-orientador Sergio Soares, obrigada pelo apoio e disponibilidade para conversase orientaes at mesmo nos momentos mais corridos de seus compromissos.

    A Adauto Trigueiro, Alex Nery, Andreza Leite, Diogo Vincius, Emanoel Barreiros, EudisTeixeira, Gert Ucha, Jos Fernando, Juliana Saraiva, Leandro Marques, Liliane Fonseca, MarcoMachado, Michael Frana, Samuel Romeiro, Thiago Jamir, Vilmar Nepomuceno, ViniciusGarcia que uniram esforos para analisar os estudos deste mapeamento.

    A FACEPE, que acreditou no projeto e nos financiou.

    A todos do laboratrio INES, que compartilharam conversas e ideias.

    Aos integrantes dos grupo de pesquisa ASSERT Lab e ESEG pelas participao ativa no desen-volvimento desta pesquisa.

    A todos que no foram mencionados acima, mas contriburam de maneira direta ou indireta paraa realizao e concluso deste trabalho.

  • Eu amo aqueles capazes de sorrir em meio aos problemas.

    LEONARDO DA VINCI

  • Resumo

    Contexto: Para que os leitores possam avaliar a validade de um estudo emprico, replicarseus resultados, ou para que editores possam julgar efetivamente o verdadeiro potencial deimpacto da pesquisa, os autores devem relatar e documentar cuidadosamente elementos dapesquisa como: motivao, objetivo, mtodo, anlise dos dados, resultados, concluses elimitaes. Infelizmente autores tm indicado que a comunicao dos resultados de estudosempricos (EE) na computao em nuvem (CN) omitem informaes relevantes destes elementosde pesquisa.Tais inconvenincias na comunicao dos resultados destes estudos, ampliadas a todoum campo de pesquisa, podem levar a um conjunto potencial de evidncias fracas ou ilusriaspara futuras pesquisas cientficas.

    Objetivo: Apesar de crticas aos relatos dos estudos empricos serem evidenciadas, at opresente momento, no foi realizada uma caracterizao das informaes omitidas pelos autores.Neste sentido, o presente estudo tem como objetivo apresentar um esforo primeiro que analisanos relatos a apresentao dos elementos de pesquisa acima citados, considerados essenciais paraa anlise da validade e protencial de uma pesquisa emprica. Analisar a forma de apresentaodos resultados um primeiro passo relevante para a compreenso do cenrio atual da prticados relatos dos estudos empricos. Assim, foi analisado nos relatos o grau de completude: oquo presentes esto as informaes dos elementos da pesquisa em seus relatos. Afim de realizaruma anlise mais profunda, o foco inicial da pesquisa foi direcionado ao mtodo emprico deexperimentao, com foco nas avaliaes da caracterstica de elasticidade da CN.

    Mtodo: Atravs de um mapeamento sistemtico da literatura (MSL) foram identificadosos experimentos em elasticidade na computao em nuvem e, atravs de instrumento de avaliaocriado com base em orientaes existentes para se reportar experimentos na engenharia desoftware experimental, a completude de seus relatos foi avaliada.

    Resultado: Aps a avaliao inicial de 3.611 estudos, foram selecionados e analisadosos relatos de 59 experimentos. Constatamos que em geral os autores omitem informaesrelacionadas ao planejamento da pesquisa, coleta dos dados, procedimentos de execuo, ins-trumentao, anlise dos dados, relao dos resultados com pesquisas anteriores, ameaas validade e generalizao dos resultados. Em relao ao ndice de completude o maior graufoi 6.67 em uma escala de 0 a 10, sendo considerada baixa em valores quantitativos. Tambmfoi realizada uma breve anlise qualitativa que revela que, ainda que reportadas, muitas dasinformaes apresentadas pelos relatos so superficiais e dificultam a interpretao, validao,generalizao e replicao dos resultados dos estudos.

    Palavras-chave: Engenharia de Software, Computao em Nuvem, Elasticidade, Engenhariade Software Experimental, Experimentos.

  • Abstract

    Context: To enable readers to assess the validity of an empirical study, replicate theirresults, or allow publishers to effectively judge its true potential impact of research, the authorsshould report and carefully document elements of research, such as: motivation, goal, method,data analysis, findings, conclusions and limitations. Unfortunately authors have indicated thatcommunication of the results of empirical studies in cloud computing omit relevant informationfrom these elements. Such inconveniences in reporting the results of these studies, expanded toan entire field of research, can lead to a potential set of weak or misleading evidence for futurescientific research.

    Objective: Despite criticism of the reports of empirical studies are highlighted, to date,has not been performed a characterization of the information omitted by the authors. In thissense, this study aims to present a first effort which analyzes the reports presenting the researchelements mentioned above, considered essential for the analysis of the validity and protencialof empirical research. To examine how to present the results is an important first step towardsunderstanding the current state of the practice of the reports of empirical studies. Thus, it wasanalyzed in the reports of the studies the degree of completeness: which information fromresearch elements in their reports. In order to conduct a deeper analysis of the reports, the initialfocus of the research was directed to the empirical method of experimentation, focusing onevaluations of cloud computing elasticity characteristic.

    Method: Through a systematic mapping of literature were identified experiments onelasticity in the cloud computing and through an assessment instrument, created based on existingguidelines to report experiments in experimental software engineering, the completeness of theirreports was evaluated.

    Results: After the initial evaluation of 3,611 studies, 59 experiments were selected andhad their reports analyzed. It was found that in general the authors omit information relatedto the research design, data collection, execution procedures, instrumentation, data analysis,comparison of the results with previous research, threats to validity and generalizability of theresults. In relation to the completeness index, the highest score reached was 6.67 on a scale of 0to 10, and such completion is considered low in quantitative terms. A brief qualitative analysiswas also conducted which reveals that, although reported, much of the information presented bythe reports are superficial and difficult to interpret, validate, generalize and hinder replication ofstudy results.

    Keywords: Software Engineering, Cloud Computing, Elasticity, Empirical Software Enginee-ring, Experiments.

  • Lista de Figuras

    1.1 Linha do tempo dos guias para relato de experimentos. (do autor) . . . . . . . . 22

    2.1 Infraestrutura de Computao em Nuvem (obtido de EMC Corporation) . . . 26

    2.2 Mecanismos de elasticidade na computao em nuvem (do autor). . . . . . . . 29

    2.3 Movimentao da comunidade para a criao dos guias para reportar experimen-tos na engenharia de software . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

    3.1 Ciclo geral da pesquisa de mestrado apresentado em suas etapas e atividades. . 42

    3.2 Metodologia planejada para a realizao do mapeamento sistemtico . . . . . . 45

    4.1 Esquema de execuo da primeira rodada de seleo dos estudos do mapeamentosistemtico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53

    4.2 Esquema de execuo da segunda rodada de seleo dos estudos do mapeamentosistemtico . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

    4.3 Participao das estratgias de busca no quantitativo de estudos candidatosidentificados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57

    4.4 Distribuio do quantitativo dos estudos candidatos identificados pela buscaautomtica em relao s fontes de dados . . . . . . . . . . . . . . . . . . . . 58

    4.5 Distribuio dos estudos candidatos resultantes da busca manual em relao aosmeios de publicao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

    4.6 Participao das fontes de busca . . . . . . . . . . . . . . . . . . . . . . . . . 59

    4.7 Distribuio temporal dos estudos selecionados . . . . . . . . . . . . . . . . . 59

    4.8 Distribuio do quantitativo de estudos selecionados por fonte de dado e ano. . 61

    4.9 Distribuio dos estudos selecionados por pases . . . . . . . . . . . . . . . . 61

    4.10 Distribuio dos estudos selecionados por pases . . . . . . . . . . . . . . . . 62

    4.11 Distribuio do quantitativo de estudos por tipo de instituio e ano . . . . . . 62

    4.12 Distribuio dos estudos por modelo de servio e ano. . . . . . . . . . . . . . . 63

    4.13 Pontuaes dos estudos nas questes que avaliam o ttulo. . . . . . . . . . . . . 64

    4.14 Pontuao geral obtida pelos estudos na avaliao do resumo. . . . . . . . . . . 65

    4.15 Pontuaes dos estudos nas questes que avaliam o resumo. . . . . . . . . . . 66

    4.16 Pontuao geral obtida pelos estudos na introduo. . . . . . . . . . . . . . . . 67

    4.17 Pontuao geral obtida pelos estudos na fundamentacao. . . . . . . . . . . . . 68

    4.18 Pontuaes dos estudos nas questes que avaliam a fundamentao. . . . . . . 68

    4.19 Pontuao geral obtida pelos estudos no planejamento. . . . . . . . . . . . . . 69

    4.20 Pontuaes dos estudos nas questes que avaliam o planejamento. . . . . . . . 70

    4.21 Pontuao geral obtida pelos estudos na anlise. . . . . . . . . . . . . . . . . . 70

  • 4.22 Pontuaes dos estudos nas questes que avaliam a anlise. . . . . . . . . . . . 714.23 Pontuao geral obtida pelos estudos na discusso. . . . . . . . . . . . . . . . 724.24 Pontuaes dos estudos nas questes que avaliam a discusso. . . . . . . . . . 724.25 Pontuao geral obtida pelos estudos nas concluses. . . . . . . . . . . . . . . 734.26 Pontuaes dos estudos nas questes que avaliam a discusso. . . . . . . . . . 73

    G.1 Ambiente do Revisor: listagem de estudos para reviso . . . . . . . . . . . . . 134G.2 Tela de anlise de estudos no ExtractViewer . . . . . . . . . . . . . . . . . . . 135

  • Lista de Tabelas

    3.1 Classificao Geral da Pesquisa . . . . . . . . . . . . . . . . . . . . . . . . . . 393.2 Taxonomia para classificao dos estudos secundrios segundo Cooper . . . . . 403.3 Resultado da aplicao da Taxonomia de Cooper para a classificao do mapea-

    mento sistemtico desta pesquisa . . . . . . . . . . . . . . . . . . . . . . . . . 413.4 Fontes de Busca Manual e Perodo de Coleta . . . . . . . . . . . . . . . . . . 473.5 String de Busca utilizada na pesquisa dos estudos do MS . . . . . . . . . . . . 473.6 Lista dos Critrios de Excluso em ordem alfabtica. . . . . . . . . . . . . . . 48

    4.1 Quantitativo de estudos candidatos localizados por fonte de dados. . . . . . . . 524.2 Critrios de excluso apliados na primeira etapa de seleo dos estudos candidatos 544.3 Valores de referncia para interpretao do teste Kappa . . . . . . . . . . . . . 554.4 Resultado dos testes Kappa . . . . . . . . . . . . . . . . . . . . . . . . . . . . 564.5 Resumo da busca e seleo de estudos na primeira etapa . . . . . . . . . . . . 594.6 Resumo da busca e seleo de estudos na segunda etapa . . . . . . . . . . . . . 604.7 Lista dos autores com mais de uma publicao . . . . . . . . . . . . . . . . . . 63

    A.1 Listagem dos estudos selecionados em ordem alfabtica . . . . . . . . . . . . . 94

    B.1 Estudos excludos em ordem alfabtica . . . . . . . . . . . . . . . . . . . . . . 107

    C.1 Lista das venues identificadas e ordem de quantidade de publicao . . . . . . 111

    D.1 Lista dos grupos de pesquisa identificados . . . . . . . . . . . . . . . . . . . . 115

    E.1 Listagem dos autores identificados e as respectivas quantidades de publicaes 122

    F.1 String de Busca para identificar estudos secundrios existentes . . . . . . . . . 124F.2 Configurao da equipes e pesquisadores participantes . . . . . . . . . . . . . 125F.3 Lista dos Critrios de Excluso em ordem alfabtica. . . . . . . . . . . . . . . 129

  • Sumrio

    1 Introduo 211.1 Contribuio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

    1.2 Estrutura da Dissertao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

    2 Referencial Terico 252.1 Computao em Nuvem . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

    2.1.1 Caractersticas Essenciais . . . . . . . . . . . . . . . . . . . . . . . . 27

    2.1.2 Modelos de Servio . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

    2.1.3 Formas de Distribuio . . . . . . . . . . . . . . . . . . . . . . . . . . 28

    2.1.4 Acordo de Nvel de Servio . . . . . . . . . . . . . . . . . . . . . . . 28

    2.1.5 Elasticidade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

    2.1.5.1 Elasticidade x Escalabilidade . . . . . . . . . . . . . . . . . 30

    2.1.5.2 Velocidade de Adio x Remoo . . . . . . . . . . . . . . . 30

    2.1.5.3 Mtodo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

    2.1.5.4 Poltica . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31

    2.2 Engenharia de Software Experimental . . . . . . . . . . . . . . . . . . . . . . 31

    2.2.1 Mtodos Empricos na Engenharia de Software Experimental . . . . . 32

    2.2.1.1 Estudo de Caso . . . . . . . . . . . . . . . . . . . . . . . . 33

    2.2.1.2 Survey . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

    2.2.1.3 Etnografia . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

    2.2.1.4 Pesquisa-ao . . . . . . . . . . . . . . . . . . . . . . . . . 34

    2.2.1.5 Experimento Controlado . . . . . . . . . . . . . . . . . . . 34

    2.2.1.6 Teoria Fundamentada . . . . . . . . . . . . . . . . . . . . . 35

    2.2.2 Guias para Relato de Experimentos . . . . . . . . . . . . . . . . . . . 35

    2.3 Engenharia de Software Baseada em Evidncias . . . . . . . . . . . . . . . . . 37

    2.4 Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38

    3 Mtodo 393.1 Classificao Geral da Pesquisa . . . . . . . . . . . . . . . . . . . . . . . . . . 39

    3.2 Classificao do Estudo Sistemtico Segundo Cooper . . . . . . . . . . . . . . 40

    3.3 Ciclo da Pesquisa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

    3.3.1 Etapa de Definio da Pesquisa . . . . . . . . . . . . . . . . . . . . . 42

    3.3.1.1 Reviso Informal da Literatura . . . . . . . . . . . . . . . . 43

    3.3.1.2 Definio do Tema, Objetivo e Escopo . . . . . . . . . . . . 43

    3.3.1.3 Definio da Metodologia . . . . . . . . . . . . . . . . . . . 44

  • 3.3.2 Etapa de Planejamento do Mapeamento Sistemtico . . . . . . . . . . 443.3.2.1 Definio do Protocolo . . . . . . . . . . . . . . . . . . . . 45

    3.3.2.1.1 Questes de Pesquisa . . . . . . . . . . . . . . . . 453.3.2.1.2 Estratgia de Busca dos Estudos . . . . . . . . . . 463.3.2.1.3 Estratgia de Seleo dos Estudos . . . . . . . . . 473.3.2.1.4 Avaliao da Qualidade . . . . . . . . . . . . . . . 483.3.2.1.5 Estratgia de Extrao . . . . . . . . . . . . . . . . 48

    3.3.2.2 Reviso do Protocolo . . . . . . . . . . . . . . . . . . . . . 493.3.3 Etapa de Execuo da Pesquisa . . . . . . . . . . . . . . . . . . . . . 493.3.4 Etapa de Divulgao dos Resultados . . . . . . . . . . . . . . . . . . . 493.3.5 Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 49

    4 Resultados 514.1 Execuo do Mapeamento Sistemtico . . . . . . . . . . . . . . . . . . . . . . 51

    4.1.1 Busca dos Estudos . . . . . . . . . . . . . . . . . . . . . . . . . . . . 514.1.2 Seleo dos Estudos Primrios . . . . . . . . . . . . . . . . . . . . . . 524.1.3 Extrao dos Dados . . . . . . . . . . . . . . . . . . . . . . . . . . . . 564.1.4 Sintetizao dos Dados . . . . . . . . . . . . . . . . . . . . . . . . . . 56

    4.2 Anlise Geral . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 574.3 Anlises das Evidncias . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

    4.3.1 SQ1 - O ttulo permite que o leitor identifique que o estudo um relatode experimento? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

    4.3.2 SQ2 - Informaes importantes do resumo como motivao, objetivos,mtodos, resultados, limitaes e concluses da pesquisa so relatadas? 65

    4.3.3 SQ3 - A introduo do relato apresenta referncias declarao doproblema, objetivos e contexto da pesquisa? . . . . . . . . . . . . . . . 66

    4.3.4 SQ4 - A fundamentao informa sobre a tecnologia em investigao, spossveis opes alternativas ela, pesquisas relacionadas e a relevnciapara a prtica? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

    4.3.5 SQ5 - O relato apresenta informaes sobre o planejamento da pesquisa? 674.3.6 SQ6 - O relato detalha a anlise dos dados da pesquisa? . . . . . . . . 704.3.7 SQ7 - Os resultados, suas implicaes e ameaas validade so relatados? 714.3.8 SQ8 - As concluses do estudo apresentam um resumo conciso da

    pesquisa, seus impactos e trabalhos futuros? . . . . . . . . . . . . . . . 724.4 Discusso dos Resultados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73

    5 Consideraes Finais 775.1 Ameaas validade . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 775.2 Trabalhos Futuros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 785.3 Concluses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

  • 19

    Referncias 81

    Apndice 87

    A Estudos Primrios Includos 89

    B Estudos Primrios Excludos 95

    C Listagem dos Meios de Publicao Identificados 109

    D Grupos de Pesquisa Identificados 113

    E Autores Envolvidos 117

    F Protocolo do Mapeamento Sistemtico 123F.1 Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123

    F.2 Necessidade do Estudo Secundrio . . . . . . . . . . . . . . . . . . . . . . . . 124

    F.3 Pesquisadores Envolvidos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124

    F.4 Escopo do Estudo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 125

    F.5 Questes de Pesquisa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126

    F.6 Processo de Busca . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127

    F.6.1 Critrios de Incluso e Excluso . . . . . . . . . . . . . . . . . . . . . 129

    F.7 Processo de Seleo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129

    F.7.0.0.1 Avaliao da Qualidade . . . . . . . . . . . . . . . 130

    F.8 Processo de Sntese . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131

    G Ferramenta ExtractViewer 133G.1 Contexto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133

    G.2 Propsito da Ferramenta . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133

    G.3 Tecnologias Utilizadas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134

    G.4 Telas do Sistema . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134

    H Instrumento de Coleta 137H.0.1 Ttulo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137

    H.0.2 Autoria . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138

    H.0.3 Resumo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138

    H.0.4 Introduo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139

    H.0.5 Fundamentao . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141

    H.0.6 Planejameto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141

    H.0.7 Anlises . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143

    H.0.8 Discusso . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 144

    H.0.9 Concluso e Trabalhos Futuros . . . . . . . . . . . . . . . . . . . . . . 144

  • 20

    H.0.10 Apndices . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 145

  • 212121

    1Introduo

    MARTENS; TEUTEBERG (2011) enfatizam a necessidade de se aumentar a utilizaode mtodos empricos na computao em nuvem para facilitar a transferncia de tecnologiasentre academia e industria. Ao mesmo tempo, alguns autores relatam enfrentar dificuldadespara interpretar os relatos de estudos empricos pois no conseguem avaliar a validade dapesquisa e seu potencial de impacto por causa da omisso e superficialidade das informaesreportadas (DURAO et al., 2014; LI et al., 2013; HUANG et al., 2013; NASIR; NIAZI, 2011;SILVA; ROSE; CALINESCU, 2013a). Em geral, tais registros apontam desde o descuido emno apresentar as questes de pesquisa, a omisso de procedimentos metodolgicos, a nocaracterizao do contexto da pesquisa, a ocultao da anlise dos dados at a superficialidadena discusso dos resultados.

    O problema com os relatos de estudos empricos tambm recorrente em outras reasda engenharia de software (ES). Por exemplo, na comunidade de software de cdigo aberto,uma recente reviso da literatura identificou que a qualidade dos relatos de estudos empricosprecisa ser substancialmente melhorada STOL; BABAR (2009). Em geral, os autores dos estudosanalisados no descreveram claramente a motivao da pesquisa, no justificam a escolha domtodo, a seleo da amostra dos dados e nem as limitaes da pesquisa. J outro estudosistemtico no campo do desenvolvimento gil de software, constatou que a fora das evidnciasde seus estudos empricos foi considerada muito baixa e prejudicou o processo de extrao dosdados por causa da superficialidade e omisso de informaes DYB; DINGSYR (2008).

    Na engenharia de software experimental (ESE), rea da ES dedicada aos mtodos emp-ricos, alguns autores tambm apontam insuficincias no relato de sues estudos. Tais problemasincluem relatrios incompletos, informaes relacionadas dispersas em diferentes sees dorelato e falta de utilizao de uma terminologia consistente. MACDONELL; SHEPPERD (2007)tambm enfatizam a necessidade de melhorar a forma como os estudos so publicados, atravsde uma forma consistente, utilizando resumos estruturados, ttulos significativos e esquemas depalavras-chave. SMITE et al. (2008) recomendam tambm que os relatos devem ser mais clarose consistentes para permitir que profissionais possam aprender atravs da literatura existente.Em estudo sistemtico realizado, DYB; KAMPENES; SJ BERG (2006) relatam dificuldades

  • 22 CAPTULO 1. INTRODUO

    em avaliar o poder estatstico dos estudos pois em 67% deles no era possvel identificar quaistestes foram realizados para se avaliar as hipteses.

    Outras reas do conhecimento como a medicina e psicologia, reportam problemas norelato de seus experimentos. Tais problemas so similares aos relatados na engenharia desoftware e vrias melhorias tem sido alcanadas atravs da padronizao e criao de diretrizespara reportar os resultados destes experimentos. Muitas revises tm registrado deficincias nosrelatrios dos experimentos realizados na pesquisa mdica, e tais anlises culminaram na criaoe utilizao de guias para como melhor report-las ALTMAN et al. (2001); MOHER; SCHULZ;ALTMAN (2001). A psicologia tambm tem vivenciado problemas similares e tambm aderiu utilizao de guias para publicao dos resultados dos experimentos realizados ASSOCIATIONet al. (2001); WILKINSON (1999); HARRIS (2008); SHIFFMAN et al. (2003).

    Pode ser observado na literatura da ES, a iniciativa de se seguir o mesmo movimentopromissor da medicina e psicologia na criao de guias para auxiliar os esforos de melhoria daprtica de experimentao. Tais esforos datam da dcada de 80, e como pode ser visto na linhado tempo da Figura 1.1, so apresentados em forma de livros, guias, avaliaes e estudos doestado da arte. Neste movimento possvel observar que guias implcitos (cor preta) e explcitos(cor azul) foram construdos para se relatar experimentos na ES. Entretanto, apenas em 2008 foiapresentada por JEDLITSCHKA; CIOLKOWSKI; PFAHL (2008) a verso final do primeiroguia especfico para orientar os pesquisadores a relatar estudos empricos de experimentao.

    Figura 1.1 Linha do tempo dos guias para relato de experimentos. (do autor)

    As inconvenincias na comunicao dos resultados, ampliadas a todo um campo depesquisa, podem levar a um conjunto potencial de evidncias fracas ou ilusrias para futuraspesquisas cientficas. Apesar das crticas de alguns autores, at o presente momento, no

  • 1.1. CONTRIBUIO 23

    foi realizada uma caracterizao das informaes omitidas nos relatos de estudos emprcosrealizados no contexto da computao em nuvem. Neste sentido, o presente estudo tem comoobjetivo apresentar um esforo primeiro que analisa nos relatos a apresentao destes elementosde pesquisa j mencionados, considerados essenciais para a anlise da validade e potencial daspesquisas empricas. Analisar a forma de apresentao dos relatos um primeiro passo relevantepara a compreenso do cenrio atual da prtica de comunicao das pesquisas empricas. Assim,foi analisado nos relatos o grau de completude: a presena das informaes dos elementos dapesquisa em seus relatos.

    Afim de realizar uma anlise inicial mais profunda e obter uma contribuio maisrelevante no estudo destes relatos, o foco inicial deste trabalho foi direcionado s pesquisas queutilizaram realizaram experimentos. Escolheu-se focar em experimentos pois este um mtodoemprico bem representativo mediante as caractersticas da rea de pesquisa em computaoem nuvem. Entretanto, mediante s limitaes de tempo e espao, foi necessrio condensar oescopo da pesquisa e ento foi decidido estudar os relatos dos experimentos que avaliavam acaracterstica mais marcante da computao em nuvem: a elasticidade. Embora o escopo tenhasido reduzido, a quantidade de estudos avaliados matm a representatividade da rea de pesquisacomo um todo, tanto em nmero quanto natureza dos experimentos realizados.

    1.1 Contribuio

    Apesar da necessidade de se realizar mais estudos empricos na computao em nuvem, necessrio que seus relatos sejam escritos de maneira a permitir que a credibilidade no resultadoproduzido permita a utilizao de suas evidncias. Neste sentido, acreditamos que atravs dacaracterizao da situao da atual prtica dos relatos dos experimentos, realizados no contextoda computao em nuvem, permita trazer tona o debate sobre como os resultados dos estudosempricos poderiam ser melhor reportados, e assim possibilitar que as descobertas e evidnciasempricas possam ser utilizadas com confiabilidade tanto pela academia quanto pela indstria.

    1.2 Estrutura da Dissertao

    Alm deste captulo introdutrio a presente dissertao est organizada de acordo com aseguinte estrutura:

    Captulo 2 (Referencial Terico): este captulo trata de toda a fundamentao te-rica para o entendimento do trabalho. Primeiramente o paradigma da computao emnuvem apresentado permeando suas caractersticas essenciais, modelos de servio,formas de distribuio e acordo de nvel de servio. Outro ponto do paradigma discu-tido em detalhe a sua principal caracterstica e objeto deste trabalho: a elasticidade.Em seguida a engenharia de software experimental abordada em relao sua

  • 24 CAPTULO 1. INTRODUO

    definio, influncia sofrida pelo posicionamento filosfico do pesquisador, seusmtodos e uma discusso especial sobre guias para relato de experimentos. Logodepois a engenharia de software baseada em evidncias discutida em sua definio,mtodos e aplicao na pesquisa.

    Captulo 3 (Metodologia): o captulo detalha toda a abordagem metodolgica e m-todos empregados na pesquisa. So discutidos aspectos relacionados classificao,ciclo da pesquisa, a utilizao do mtodo de pesquisa de mapeamento sistemtico daliteratura e as peculiaridades de sua instanciao.

    Captulo 4 (Execuo e Resultados): apresenta e discute os resultados obtidos nestapesquisa por meio de uma anlise geral dos estudos selecionados. As perguntas depesquisas so respondidas e os principais achados so discutidos.

    Captulo 5 (Consideraes Finais): trata das ameaas validade da pesquisa erespectivas mitigaes. Apresenta as perspectivas de trabalhos futuros para que acomunidade possa dar continuidade pesquisa. E por fim as lies aprendidas econcluses so enunciadas.

  • 252525

    2Referencial Terico

    Este captulo tem como objetivo explanar os conceitos e estudos utilizados como basepara a presente pesquisa. Na seo 2.1 so apresentados os conceitos da Computao em Nuvem(CN). A seo 2.2 discute as noes relacionadas Engenharia de Software Experimental (ESE) eseus mtodos. A seo 2.3 expe os conceitos da Engenharia de Software Baseada em Evidncias(ESBE) para apoiar o mtodo de pesquisa adotado.

    2.1 Computao em Nuvem

    J em 1960, pesquisadores como Douglas Parkhill e John McCarthy tem trabalhado nodesenvolvimento de um modelo computacional chamado Computao Utilitria (PARKHILL,1966). Foi em 1961, durante um discurso para celebrar o centenrio do MIT, que John McCarthysugeriu publicamente que recursos computacionais fossem providos sob demanda e bilhetadospor meio de um modelo de negcio utilitrio como energia, gua e telefonia(FEATHER, 2000).

    O modelo foi adotado por vrios paradigmas de computao (BUYYA et al., 2009; LIet al., 2009) e tambm resistiu a cenrios prejudiciais (CAMPBELL-KELLY, 2009) como omovimento de descentralizao promovido pela onda dos computadores pessoais na dcada de1980. Entretanto, por volta do ano 2000, graas ao crescimento acelerado de tecnologias decomunicao como a internet, a ideia ressurgiu.

    A computao em nuvem uma evoluo concretizada do modelo de computaoutilitria proposto por McCarthy e cada vez mais tem estado em evidncia. Tal fato tem atradoos olhares de gigantes como a Amazon, Google, Salesforce, Microsoft, IBM, HP, entre outros.Estas organizaes tm ofertado servios como Amazon EC21, Google App Engine2, Salesforce3,Windows Azure4, Dropbox5, dentre outros, que oferecem solues confiveis com promessas debaixo custo, atravs das quais seus usurios podem ter acesso aos servios de maneira ubqua.

    1http://aws.amazon.com/pt/ec2/2https://appengine.google.com3http://www.salesforce.com/br/4http://www.windowsazure.com/pt-br/5http://www.dropbox.com/

  • 26 CAPTULO 2. REFERENCIAL TERICO

    O termo nuvem uma abstrao que encobre toda a complexidade de infraestrutura que fornecida atravs de servios utilizando hardware compartilhado para computao e armazena-mento (BUYYA et al., 2009). Em geral, como pode ser visto na Figura 2.1, a infraestrutura danuvem composta por uma grande quantidade de mquinas ou ns fsicos conectados em rede.Cada uma das mquinas pode ter diferentes configuraes de hardware e software e variar emtermos de capacidade de CPU, memria e armazenamento em disco (SOROR et al., 2010).

    Figura 2.1 Infraestrutura de Computao em Nuvem (obtido de EMC Corporation)

    Existem diversas propostas de definio para o paradigma da computao em nuvem,entretanto a definio do National Institute of Standards and Technology (NIST) bastanteaceita na comunidade: "Modelo que permite o acesso atravs de rede ubqua, de acordo com ademanda, a um pool compartilhado de recursos computacionais que podem ser rapidamente

    provisionados e liberados com um esforo mnimo de gerenciamento ou interao com o provedor

    de servicos" (MELL; GRANCE, 2009).

    Nas prximas sub-sees sero apresentados, de maneira sucinta e objetiva, aspectose termos importantes relacionados computao em nuvem que so importantes para o enten-dimento desta pesquisa: (i)caractersticas essenciais, (ii) modelos de servio, (iii) formas dedistribuio, (iv) acordo de nvel de servio e (v) elasticidade. Dentre os aspectos a elasticidadeser explanada com um pouco mais de de detalhes, visto que este o aspecto que objeto destapesquisa.

  • 2.1. COMPUTAO EM NUVEM 27

    2.1.1 Caractersticas Essenciais

    As caractersticas essenciais representam as vantagens oferecidas pelas solues dacomputao em nuvem e a destingue de outros paradigmas computacionais, suas as principaiscaractersticas so (MELL; GRANCE, 2009):

    1. Alocao de recursos sob demanda: permite que o usurio possa dimensionar ainfra-estrutura necessria de recursos computacionais sob demanda. Similar a umservio sob demanda, esta caracterstica permite que usurios solicitem recursos emtempo de execuo medida que necessitar.

    2. Amplo acesso rede: os recursos so disponbilizados atravs do ambiente de redee devem estar disponveis para acesso atravs de uma ampla gama de dispositivoscomo tablets, PCs, smartphones, entre outros.

    3. Pooling de Recursos: os recursos computacionais do provedor de servio so estru-turados para servir a mltiplos usurios utilizando um modelo multi-tennant (MT),que disponibiliza diferentes recursos fsicos e virtuais de maneira dinmica conformea necessidade do usurio. H um senso de independncia local, ou seja, o usurio noprecisa ter conhecimento da localizao fsica dos recursos computacionais, bastandoapenas especificar a localizao em um nvel de abstrao mais alto (pas, estado,etc).

    4. Elasticidade rpida: caracterstica que permite que os recursos disponveis aousurio paream ilimitados, pois tais recursos podem ser adicionados e removidos demaneira rpida e automtica, conforme a necessidade da carga de trabalho.

    5. Servio medido: os recursos de um provedor cloud so automaticamente controladose otimizados, atravs da capacidade de medio em um nvel de abstrao adequadopara o tipo de servio. A utilizao dos recursos pode ser controlada, monitorada erelatada com transparncia entre o provedor e consumidor do servio.

    2.1.2 Modelos de Servio

    Os provedores da computao em nuvem oferecem seus servios de acordo com trsmodelos apresentados abaixo:

    1. Infraestrutura Como Servio (IaaS): atravs deste modelo o provedor de serviospode comercializar elementos de infraestrutura (cpu, memria, armazenamento, etc).Neste modelo a responsabilidade de corrigir / atualizar / manter o sistema operacionalou qualquer outro software do cliente. O provedor de servio ir tarifar o usurio porhora e quantidade de recursos alocados e consumidos. Neste modelo o usurio no

  • 28 CAPTULO 2. REFERENCIAL TERICO

    administra a infraestrutura fsica mas sim os sistemas operacionais, armazenamento,aplicativos e componentes de rede.

    2. Plataforma Como Servio (PaaS): neste modelo o provedor de servios fornecesistemas operacionais, linguagens de programao e ambientes de desenvolvimentode software. Neste modelo o usurio tem controle sobre configuraes e aplicaesimplantadas nesta infraestrutura.

    3. Software Como Servio (SaaS): software de propsito especfico o produto forne-cido neste modelo de servio. Os sistemas so disponibilizados ao usurio por meiode interfaces como um navegador de internet. O usurio pode administrar e controlarapenas configuraes especficas do prprio sistema.

    2.1.3 Formas de Distribuio

    Os ambientes de computao em nuvem podem ser distribudos de quatro formas dife-rentes nos quesitos acesso e disponibilidade: (i) Nuvem Privada, (ii) Nuvem Pblica, (iii) NuvemComunidade e (iv) Nuvem Hbrida (MELL; GRANCE, 2009). As restries de acesso dependemdo processo de negcio, tipo de informao e nvel de viso desejado.

    1. Nuvem Pblica: a infraestrutura da nuvem disponibilizada ao pblico geral, aces-svel qualquer usurio que tenha conhecimento da localicao do servio.

    2. Nuvem Privada: a infraestrutura de utilizao exclusiva de uma organizao,sendo disponibilizada local ou remotamente, administrada pela prpria empresa outerceiros.

    3. Nuvem Comunitria: a infraestrutura compartilhada por uma comunidade deorganizaes com interesses em comum.

    4. Nuvem Hbrida: a infraestrutura composta por duas ou mais nuvens de quaisquertipos mencionados acima. A conexo entre elas feita via tecnologia proprietria oupadronizada e permite a portabilidade de dados e aplicaes.

    2.1.4 Acordo de Nvel de Servio

    Embora os consumidores de servios em nuvem no tenham controle sobre os recursoscomputacionais adquiridos, eles precisam ter garantias em relao qualidade do servio, suadisponibilidade, confiabilidade e desempenho. Do ingls Service Level Agreement (SLA), oacordo de nvel de servio representa um contrato que cuida das garantias entre o cliente eo provedor de servio. Nele so especificados os atributos de qualidade e seus respectivosvalores aceitveis. Como exemplo podemos citar que em um SLA pode se especificar que a

  • 2.1. COMPUTAO EM NUVEM 29

    disponibilidade de um determinado servio no deve ser inferior a 98% e a elasticidade de umrecurso seja superior a 80% por exemplo.

    2.1.5 Elasticidade

    Ainda no existe na comunidade da computao em nuvem um consenso sobre a definioda elasticidade, entretanto neste trabalho estamos utilizando a definio de HERBST; KOUNEV;REUSSNER (2013). A descreve que a elasticidade a capacidade que o sistema tem de seadaptar cargas de trabalho atravs do provisionamento e desprovisionamento (preferencialmenteautomtico) de recursos, de tal modo que em cada instante no tempo os recursos disponveis peloprovedor de servico correspondam, o mais prximo possvel, demanda atual do consumidor.Tal capacidade transmite ao usurio a sensao de que os recursos so ilimitados e podem seradquiridos em qualquer quantidade e a qualquer instante.

    Do ponto de vista do provedor de servios a elasticidade permite uma melhor utilizaodos recursos computacionais, propiciando economia em escala e permitindo que mltiplosusuarios possam ser servidos simultneamente. Da perspectiva do usurio, a elasticidadeevita principalmente a disposio inadequada de recursos e por consequncia a degrao dedesempenho do sistema. Aumento da capacidade de recursos locais (CALHEIROS et al., 2012;MARSHALL; KEAHEY; FREEMAN, 2010), reduo de custos (SHARMA et al., 2011) eeconomia de energia (SHEN et al., 2011) tambm so outros benefcios alcanados com autilizao da elasticidade. Os principais mecanismos relacionados implementao podem servistos na Figura 2.2.

    Figura 2.2 Mecanismos de elasticidade na computao em nuvem (do autor).

    A seguir sero apresentados brevemente os conceitos fundamentais relacionados elasti-cidade e seus mecanismos: elasticidade x escalabilidade, velocidade de ao x remoo, mtodoe poltica.

  • 30 CAPTULO 2. REFERENCIAL TERICO

    2.1.5.1 Elasticidade x Escalabilidade

    possvel observar que com frequncia a elasticidade confundida com a escalabilidadede sistemas, os dois so conceitos relacionados porm diferentes. A escalabilidade a capacidadeque um sistema tem de adicionar mais recursos a fim de atender a uma necessidade de cargade trabalho maior ISLAM et al. (2012). J a elasticidade consiste no acrscimo e decrscimode recursos de acordo com a carga de trabalho, enquanto a escalabilidade considera apenas oacrscimo. Outro aspecto importante que a escalabilidade um conceito livre de tempo e noconsidera o tempo que o sistema leva para atingir o nvel de desempenho desejado, enquantoque, para a elasticidade, alguns apontam o tempo como um elemento central que depende davelocidade de resposta a uma determinada alterao de carga de trabalho (COUTINHO et al.,2014).

    2.1.5.2 Velocidade de Adio x Remoo

    Existem dois principais conceitos de velocidade em relao elasticidade: velocidade deadio (scale up) e velocidade de remoo (scale down) (HERBST; KOUNEV; REUSSNER,2013). A velocidade de adio definida como o tempo que o sistema leva para sair de umestado subdimensionado para um estado timo ou superdimensionado de recursos. A velocidadede remoo o tempo que o sistema leva para passar de um estado superdimensionado derecursos para um estado timo ou subdimensionado. Outro conceito relacionado a preciso,que definida como o desvio absoluto da atual quantidade de recursos alocados em relao necessidade de demanda real.

    2.1.5.3 Mtodo

    Atravs do mtodo possvel decidir qual ser o tratamento dado aos novos recursosprovisionados. Segundo vrios autores, quanto diviso, a elasticidade pode se dar horizontal-mente ou verticalmente (ALI-ELDIN; TORDSSON; ELMROTH, 2012; GUERRERO; SACHS;PETROV, 2010; SHARMA et al., 2011; SULEIMAN et al., 2011).

    A elasticidade horizontal consiste na adio/remoo do quantitativo de instncias deum usurio, alm da migrao para novos ns de processamento. Estas instncias podem seraplicaes, containers ou mquinas virtuais (MV). Em geral, a replicao o mtodo maisutilizado para prover elasticidade.

    A elasticidade vertical equivale a adio / remoo de recursos como memria, CPU earmazenamento a partir de uma instncia virtual. Existem duas abordagens para se prover essetipo de elasticidade:

    Redimensionamento: significa alterar os recursos de uma instncia em tempo deexecuo. Exemplo: adicionar mais CPU e memria a uma MV. mais comum emsistemas operacionais baseados em Unix uma vez que o mesmo suporta mudanassem reinicializaes.

  • 2.2. ENGENHARIA DE SOFTWARE EXPERIMENTAL 31

    Substituio: consiste na adio de servidores com um maior poder de processamentopara substituir os de menor desempenho. Em geral esta abordagem mais comumem provedores de nuvem pblica.

    A migrao a estratgia de elasticidade que transfere uma mquina virtual ou aplicativoque est em execuo em um servidor fsico para um outro. As MVs ou aplicativos podem sermigrados de um servidor para outro para o balanceamento de carga por exemplo.

    2.1.5.4 Poltica

    Existem duas polticas de reao da nuvem em relao a execuo de aes de elastici-dade: manual e automtica.

    Poltica Manual: neste tipo de poltica o usurio responsvel por monitorar seuambiente e recursos a fim de operar todas as aes de elasticidade. Para tal, o provedorde servio deve fornecer ao usurio uma interface ou API por meio da qual o mesmoiterage com o sistema.

    Poltica Automtica: o controle e aes so tomadas pela prpria nuvem ou pelaaplicao que est executando nela, em conformidade com as regras e configuraesque foram definidas pelo usurio ou SLA. Atravs da coleta de informaes dossistemas de monitoramento a nuvem decide quando e como os recursos de elasticidadesero utilizados. De acordo com a tcnica a poltica automtica pode ser classificadacomo reativa e preditiva (GALANTE; BONA, 2012).

    Reativa: fundamentada em regras de mecanismos baseadas em gatilhos.Uma regra possui um conjunto de condies que, quando so satisfeitas,disparam um gatilho que ir tomar algumas aes sobre os recursos danuvem. Este mecanismo alimentado por meio dos dados fornecidos pelosistema de monitoramento de infra-estrutura ou da aplicao na nuvem.

    Preditiva: utiliza heursticas e tcnicas matemticas/analticas para tentarprever o comportamento da carga de trabalho no sistema e, com base nisto,decidir quando adicionar ou remover os recursos.

    2.2 Engenharia de Software Experimental

    Embora pertena a cincia da computao, que uma rea de conhecimento relacionados cincias exatas, a engenharia de software experimental (ESE) possui caractersticas peculi-ares fortemente relacionadas com as cincias sociais. Pesquisas empricas permitem adquirirconhecimentos por meio da explorao, descrio, previso e avaliao de fenmenos naturais, a

  • 32 CAPTULO 2. REFERENCIAL TERICO

    partir de evidncias obtidas em observaes sistemticas ou experimentao (SJOBERG; DYBA;JORGENSEN, 2007).

    Um mtodo emprico dotado de um conjunto de princpios que se organizam emtorno dos tipos de dados coletados e analisados, assim permite avaliar tarefas organizadas porpessoas de maneira sistemtica, disciplinada, quantificada e controlada. Estudos empricospodem propiciar a avaliao de tecnologias da engenharia de software e determinar em quetipos de tarefas e ambientes tais tecnologias so teis, apoiando, por exemplo, pesquisadores eprofissionais na tomada de deciso sobre uma tcnica ou ferramenta a adotar (SJBERG et al.,2005).

    Antes de dissertar sobre os tipos de estudos empricos importante saber que, aoselecionar o mtodo, o pesquisador norteado por sua postura filosfica, a qual influencia todasas decises na pesquisa, entretanto tal postura comumente suprimida (CRESWELL, 2013).Logo a seguir so apresentados os quatro os tipos dominantes de posicionamentos filosficos napesquisa cientfica:

    Positivismo: o conhecimento obtido atravs da lgica, lida com a complexidadeutilizando a reduo do problema em partes menores. Nele o pesquisador propensoa utilizar mtodos quantitativos como experimentos controlados (seo 2.2.1.5) esurveys (seo 2.2.1.2).

    Construtivismo: procura adquirir o conhecimento atravs da observao e do olhardas pessoas. Tambm conhecido como interpretativismo, este tipo de viso tende ano separar os fenmenos estudados de seus contextos. Costuma nortear mtodosqualitativos como estudos de caso (seo 2.2.1.1) e etnogrficos (seo 2.2.1.3).

    Teoria crtica: julga o conhecimento pelo seu potencial libertador. Assim, a pesquisa considerada um ato poltico, visto que o conhecimento empodera aquele queo adquire. Tambm conhecida como "participativismo"ou "advocativismo" ummtodo propenso a aderir teoria crtica e pesquisa-ao (seo 2.2.1.4) .

    Pragmatismo: em geral, os pesquisadores pragmticos julgam a pesquisa pela suautilidade em resolver problemas. Para o mesmo, todo o conhecimento aproximadoe incompleto. Em geral, neste perfil, os pesquisadores adotam uma mistura de vriosmtodos.

    Apresentados os posicionamentos filosficos, agora sero apresentados brevemente osmtodos empricos que tratam de estudos primrios na engenharia de software experimental.

    2.2.1 Mtodos Empricos na Engenharia de Software Experimental

    A prtica da engenharia de software experimental (ESE) na engenharia de software (ES)foi evidenciada por BASILI; SELBY; HUTCHENS (1986). Recentemente outras pesquisas

  • 2.2. ENGENHARIA DE SOFTWARE EXPERIMENTAL 33

    evidenciam a importncia e desenvolvem ambientes de apoio utilizao dos mtodos empricos:guias, mtodos, ferramentas, entre outros. Tais mecanismos permitem projetar, planejar, executar,analisar e reportar estudos empricos, alm de organizar e facilitar o processo de execuo deforma distribuda. Outro benefcio a simplificao da replicao destes estudos, uma vez queos mesmos tendem a ser mais bem documentados.

    Em suma, atravs dos mtodos empricos, a engenharia de software experimental sepreocupa em investigar como processos de desenvolvimento de software e ferramentas realmentefuncionam, de forma a compreender seus limites e projetar aperfeioamentos. Outro pontointeressante a ser observado a discusso sobre a utilizao de abordagens mistas dos mtodosempricos nas pesquisas. Tal prtica permite que pesquisadores adotem mais de uma estratgiaemprica. A ideia surgiu do reconhecimento de que os mtodos possuem suas limitaes pormso complementares entre si (EASTERBROOK et al., 2008; CRESWELL, 2013).

    A seguir, sero apresentadas as principais estratgias empricas que tratam de estudosprimrios nas pesquisas da ES segundo EASTERBROOK et al. (2008): estudo de caso, survey,etnografia, pesquisa-ao, experimento controlado e teoria fundamentada.

    2.2.1.1 Estudo de Caso

    Estudo de caso um mtodo emprico originado nas cincias sociais e, ainda hoje,h divergncias na literatura quanto ao seu conceito. Tem por objetivo investigar fenmenosque ocorrem em seu contexto real, principalmente, quando as fronteiras entre o contexto eos fenmenos no so evidentes (YIN, 2013). De forma a compreender como e porque, talfenmeno acontece sem que haja nenhum controle sobre as variveis envolvidas (FUKS, 2011)

    Entretanto h muita confuso em relao aos estudos de caso na ES, pelo fato do mtodoser frequentemente utilizado para denominar demonstraes simples do uso de uma determinadatecnologia (SJOBERG; DYBA; JORGENSEN, 2007), quando na verdade o mtodo sistemticoe rigoroso no apoio a pesquisas exploratrias e qualitativas (RUNESON; HST, 2009).

    2.2.1.2 Survey

    Originado na economia e sociologia o survey o mtodo emprico utilizado para iden-tificar caractersticas de populaes amplas por meio da produo de dados estatsticos (KIT-CHENHAM; PFLEEGER, 2008). Valendo-se de questionrios, os pesquisadores selecionamuma amostra representativa da populao e procuram respostas de um conjunto de populao,relacionadas s aes, experincias, opinies ou comportamentos desta em relao ao objeto deestudo.

    Alm de questionrios, podem ser utilizados entrevistas estruturadas e tcnicas de loggingpara a coleta dos dados. Tambm possvel observar a utilizao da estratgia em conjunto comoutros mtodos quando se deseja descrever, explanar e explorar informaes preliminares ouainda levantar as variveis do estudo a serem avaliadas (TRAVASSOS; GUROV; AMARAL,

  • 34 CAPTULO 2. REFERENCIAL TERICO

    2002). Em funo destas caractersticas os surveys tendem a lidar com pesquisas quantitativas,descritivas e de design fixo (RUNESON; HST, 2009).

    2.2.1.3 Etnografia

    Oriundo da antropologia e com o objetivo de compreender culturas, o mtodo visa oentendimento aprofundado das prticas de uma determinada populao. Segundo ROBINSON;SEGAL; SHARP (2007), o intuito da etnografia estudar uma comunidade de pessoas paraentender a iterao social entre seus membros na busca pela resposta de uma pergunta depesquisa.

    Uma caracterstica marcante do mtodo que o pesquisador passa a ser acolhido pelogrupo, ou seja, passa a ser oficialmente aceito pela comunidade estudada (KARN; COWLING,2006). Na ES a etnografia pode auxiliar a compreenso da cultura das prticas de software emcontextos pequenos e at em grandes comunidades (EASTERBROOK et al., 2008).

    2.2.1.4 Pesquisa-ao

    Em geral, os pesquisadores utilizam este mtodo com o intuito de resolver problemasdo mundo real e, concomitantemente, estudar a experincia da resoluo do problema em si.Distingue-se das demais pelo fato do pesquisador deixar de ser um observador neutro para atuar,modificar e aprender a partir da ao que realiza durante o estudo (FUKS, 2011). Assim, asprincipais caracterstias do mtodo a expanso do conhecimento cientfico, desenvolvimento decompetncias dos envolvidos e criao de um vnculo de trabalho colaborativo em uma situaoimediata que utiliza feedbacks em um processo cclico (LAU, 1999).

    2.2.1.5 Experimento Controlado

    Experimentao, tambm conhecida como experimento controlado o objeto de estudodesta pesquisa, permite que o conhecimento seja gerado de forma sistemtica, disciplinada,quantificvel e controlada (WOHLIN et al., 2012). Com origem nas cincias naturais comobiologia e fsica, o experimento um mtodo de pesquisa utilizado para investigar um conjuntode hipteses testveis apropriado para: observar fenmenos, formular teorias, confirmar umconhecimento convencional, explorar relacionamentos, validar medidas e avaliar a predio demodelos.

    Normalmente conduzido em laboratrio, este mtodo requer uma elevada necessidade decontrole do ambiente (JURISTO; MORENO, 2013). Atravs dos processos experimentais, ospesquisadores observam como as variveis se relacionam, presumindo um relacionamento decausa (tratamento de variveis) e efeito (resultados) (FUKS, 2011).

    Segundo EASTERBROOK et al. (2008) as etapas de um experimento so orientadasatravs da definio de uma hiptese e teoria subjacente, onde o pesquisador controla as variveis:

  • 2.2. ENGENHARIA DE SOFTWARE EXPERIMENTAL 35

    fixa algumas e varia outras. Atravs deste processo, os pesquisadores investigam como asvariveis se relacionam e se existe alguma relao de causalidade entre elas.

    2.2.1.6 Teoria Fundamentada

    Surgido na sociologia e tambm conhecido como grounded theory, o mtodo preocupa-secom os procedimentos de coleta e anlise. O objetivo criar e/ou aperfeioar teorias atravsda extrao sistemtica de dados qualitativos. Criar uma estrutura integrada para se explicarou prever fenmenos por meio de dados primrios algo complexo, entretanto este processose torna cientfico e quantificvel por meio deste mtodo (CORBIN; STRAUSS, 2014; FUKS,2011).

    Diferente de outas abordagens da ESE, dos quais parte-se sempre de teorias existentespara o planejamento da pesquisa e coleta dos dados, neste mtodo o processo inverso (FUKS,2011). Parte-se de uma situao ou tema de pesquisa, coleta-se e analisa-se dados de onde seemerge uma teoria fundamentada. Os dados podem ser coletados por meio de entrevistas eobservaes diretas que, em seguida, so comparadas para identificar categorias (variveis), emseguida o pesquisador inicia a comparao com teorias correntes na literatura cientfica (COR-BIN; STRAUSS, 2014).

    2.2.2 Guias para Relato de Experimentos

    O relatrio de um estudo emprico comunica suas concluses e achados, sendo a principalfonte de informao para se avaliar a qualidade e validade de seus resultados. Ao se reportar umexperimento, objeto de estudo desta pesquisa, importante priorizar quais informaes devemser includas em seu relatrio. No contexto da engenharia de software possvel observar naliteratura que, desde 1980, pesquisadores procuram fornecer recomendaes para se reportarexperimentos, como visto na Seo 1 e na linha do tempo na Figura 1.1.

    Entretanto, a engenharia de software no a primeira rea de pesquisa que encontraproblemas relacionados aos relatrios insuficientes. Outras reas como medicina e psicologiatratam problemas similares e tm conseguido vrias melhorias atravs da padronizao e criaode diretrizes para seus relatrios. Muitas revises tm registrado deficincias nos relatriosna pesquisa mdica, que resultaram em guias para como report-los ALTMAN et al. (2001);MOHER; SCHULZ; ALTMAN (2001). A psicologia tambm tem vivenciado problemas simila-res e guias para publicao foram desenvolvidos (ASSOCIATION et al., 2001; WILKINSON,1999; HARRIS, 2008; SHIFFMAN et al., 2003).

    A importncia de se utilizar guias para criao de relatrios se aplica a todos os tiposde estudos empricos, entretanto a necessidade de se criar guias especficos para padronizar orelato de experimentos vem sendo reportado por diversos autores ao logo do tempo (LOTT;ROMBACH, 1996; PICKARD; KITCHENHAM; JONES, 1998; SHULL et al., 2003; VEGAS;JURISTO; BASILI, 2003; WOHLIN; PETERSSON; AURUM, 2003; SJBERG et al., 2005).

  • 36 CAPTULO 2. REFERENCIAL TERICO

    Figura 2.3 Movimentao da comunidade para a criao dos guias para reportar experimentos naengenharia de software

    Da mesma forma possvel observar um movimento da comunidade na criao de diretrizespara melhorar tais relatos (SINGER, 1999; WOHLIN et al., 2000; JURISTO; MORENO, 2001;KITCHENHAM; PFLEEGER, 2002; JEDLITSCHKA; PFAHL, 2005; KITCHENHAM et al.,2006; JEDLITSCHKA; CIOLKOWSKI; PFAHL, 2008).

    possvel observar na linha do tempo da Figura 2.3 a movimentao da comunidadepara a criao de um guia especfico para relatar experimentos na engenharia de software. Osmarcos no formato circular e com textos de cor preta representam estudos que criticam o relatodos experimentos. J os marcos no formato triangular e na cor azul representam os movimentosde resposta da comunidade no sentido de melhorar e contribuir com a construo do guia.

    A primeira movimentao para criao do guia foi feita por SINGER (1999) que publicousugestes de como utilizar guia existente na psicologia para reportar resultados experimentais naengenharia de software. Em 2002 o primeiro guia para realizar, reportar e verificar resultadosexperimentais na engenharia de software foi publicado por KITCHENHAM; PFLEEGER (2002).Tal guia foi baseado em outros existentes na medicina e em experincias prticas e liesaprendidas pelos prprios autores do estudo. SHULL et al. (2003) criou um conjunto deorientaes sobre como escrever artigos cientficos, incluindo em especial a apresentao deestudos empricos. WOHLIN et al. (2000) publica livro onde sugere um esboo de como reportarestudos empricos. JURISTO; MORENO (2001) fornecem um roteiro de perguntas a seremrespondidas ao se reportar experimentos. JEDLITSCHKA; PFAHL (2005) publicam o primeiroguia especfico para reportar experimentos na Engenharia de Software (JEDLITSCHKA; PFAHL,2005).

    KITCHENHAM et al. (2006) publicaram uma avaliao do guia de Jedlitschka junta-mente com recomendaes de melhorias e correes de alguns problemas. No mesmo ano umanova verso do guia foi publicada, incorporando as sugestes de melhorias e correes. Em 2007

  • 2.3. ENGENHARIA DE SOFTWARE BASEADA EM EVIDNCIAS 37

    foi lanada uma nova verso do guia incorporando sugestes de mais pesquisadores. Em 2008foi lanada a verso final do guia, com todas as sugestes de melhorias e defeitos registradosanteriormente (JEDLITSCHKA; CIOLKOWSKI; PFAHL, 2008).

    O presente trabalho utilizou o guia de JEDLITSCHKA; CIOLKOWSKI; PFAHL (2008)como base para construir o instrumento de coleta, pelo fato do mesmo ser uma evoluo detodos os guias publicados anteriormente que tratavam do relato de experimentos na ES. O fatode o desenvolvimento do guia ter sido iterativo e seu teor validado, incorporado feedbacks dosmembros da comunidade tambm pesou na escolha pelo guia. Outro ponto importante o fatodo guia apresentar um contedo com orientaes detalhadas por sees e subsees seguidas deexemplos.

    2.3 Engenharia de Software Baseada em Evidncias

    A Engenharia de Software Baseada em Evidncias (ESBE) um paradigma da ES quepermite identificar, selecionar e sintetizar evidncias a partir de estudos primrios (KITCHE-NHAM; CHARTERS, 2007). Surgido inicialmente na medicina, o objetivo enunciado da ESBE proporcionar os meios pelos quais as melhores evidncias de pesquisas possam ser integradas sexperincias prticas e valores humanos no processo de tomada de deciso no desenvolvimentoe manuteno de software.

    Segundo KITCHENHAM; CHARTERS (2007) so trs os mtodos sistemticos para seconduzir pesquisas com base nos princpios da ESBE:

    1. Revises Sistemticas da Literatura (RSL) convencionais: destinadas a identi-ficar, analisar e interpretar as evidncias disponveis relacionadas a uma questoespecfica de pesquisa, uma RSL tem uma metodologia bem definida e a questo depesquisa especfica tratada de maneira imparcial. RSLs em geral agregam resultadossobre a eficcia de um tratamento, interveno ou de uma tecnologia. Normalmenteesto relacionadas a questes do tipo: Um tratamento X aplicado a uma populaoP mais eficiente para se obter o resultado R no contexo C quando comparado com

    o tratamento Y?

    2. Mapeamento Sistemtico da Literatura (MSL): tambm categorizado como es-tudo exploratrio, apresenta uma ampla reviso de estudos primrios em uma rea outpico especfico no intuito de identificar quais as provas disponveis sobre um temaem questo. Normalmente relacionados a questes do tipo O que sabemos sobre otema X?, MSLs objetivam identificar todas as pesquisas que procuram responderquestes amplas e exploratrias sobre as tendncias de uma determinada rea depesquisa.

    3. Meta-anlise: o mtodo pelo qual, atravs de anlise estatstica, se sintetiza osresultados de diferentes estudos primrios independentes para integrar, combinar e

  • 38 CAPTULO 2. REFERENCIAL TERICO

    resumir seus resultados de forma a responder a uma determinada questo de pesquisa.O mtodo tambm pode ser utilizado em revises sistemticas que integram osresultados dos estudos includos.

    Alguns autores apontam que, no mbito da computao em nuvem, os relatrios dosestudos empricos so difceis de ser intepretados e analisados pois a forma como os pesquisa-dores os apresentam suprimem informaes relevantes (DURAO et al., 2014; LI et al., 2013;HUANG et al., 2013; NASIR; NIAZI, 2011; SILVA; ROSE; CALINESCU, 2013a). Atravs deum MSL, o presente trabalho espera agregar e consolidar evidncias que permitam analisar einterpretar o estado da prtica dos relatos dos estudos empricos na CN, tomando como baseguias existentes para tal, na engenharia de software experimental. Assim, espera-se identificras lacunas existentes de forma a contribuir com a melhoria da apresentao dos resultados deestudos empricos na CN.

    2.4 Resumo

    Este captulo descreveu todo o referencial terico utilizado durante o desenvolvimentodesta pesquisa. Foram explanados os principais conceitos e definies da computao emnuvem e, em mais detalhes, aspectos relacionados elasticidade. Tambm discorremos sobrea engenharia de software experimental e seus principais mtodos empricos e, em especial,tecemos uma discusso um pouco mais consistente sobre os guias para relatar experimentos. E,por fim, abordamos os principais mtodos da engenharia de software baseada em evidncias.No prximo captulo ser apresentado, mtodo utilizado para o desenvolvimento da pesquisa edetalhes relacionados sua classificao, ciclo de desenvolvimento e detalhes do planejamentodo mapeamento sistemtico.

  • 393939

    3Mtodo

    O objetivo deste captulo detalhar a abordagem metodolgica utilizada na presentepesquisa por meio de trs sees: Classificao Geral da Pesquisa, Classificao do EstudoSistemtico Segundo Cooper e Ciclo da Pesquisa.

    A Seo 3.1 apresenta a classificao da pesquisa perante cinco aspectos; j a Seo 3.2apresenta a classificao do mapeamento sistemtico mediante taxonomia amplamente utilizadaem estudos sistemticos; a por fim Seo 3.3 apresenta uma viso geral do planejamentometodgico da pesquisa atravs de suas etapas e atividades.

    3.1 Classificao Geral da Pesquisa

    A pesquisa realizada nesta dissertao foi classificada perante cinco aspectos: mtodo deabordagem, mtodo de procedimento, objetivo, natureza dos dados e posicionamento filosfico.Atravs da Tabela 3.1 possvel observar o quadro metodolgico que resume estes elementos.

    Quadro MetodolgicoMtodo de Abordagem IndutivoMtodo de Procedimento Mapeamento Sistemtico da LiteraturaQuanto ao Objetivo Pesquisa DescritivaNatureza dos Dados QualitativaPosicionamento Filosfico Pragmtico

    Tabela 3.1: Classificao Geral da Pesquisa

    Quanto ao mtodo de abordagem essa dissertao de carter indutivo, uma vez quebaseia-se em estudos primrios particulares para delinear o cenrio geral do tema em discus-so. As concluses so concebidas por meio de uma cadeia de raciocnio ascendente ondese permite, atravs dos dados obtidos, realizar inferncias de uma verdade geral sobre o temaestudado (MARCONI; LAKATOS, 2004).

    Justificado pela natureza exploratria das perguntas deste trabalho, o mtodo de pro-cedimento adotado foi o mapeamento sistemtico da literatura (MSL), um tipo de reviso

  • 40 CAPTULO 3. MTODO

    sistemtica da literatura (RSL). Este tipo de procedimento utilizado em pesquisas mais am-plas, que permitem uma perspectiva geral e de granulao grossa de uma determinada rea sobinvestigao (KITCHENHAM, 2004; PETERSEN et al., 2008a).

    No que diz respeito ao objetivo, a pesquisa classificada como descritiva, uma vezque os fatos foram sistematicamente coletados, registrados, classificados e interpretados como intuito de analisar e caracterizar a completude dos relatos dos experimentos em elasticidaderealizados no contexto da computao em nuvem (ANDRADE, 2001).

    Em relao natureza dos dados e das anlises adotadas, a pesquisa caracteriza-semajoritariamente como qualitativa , uma vez que foca em aspectos mais profundos atravsda anlise detalhada, classificao e interpretao do contexto do objeto de pesquisa (MAR-CONI; LAKATOS, 2004; CRESWELL, 2013). Tambm possvel perceber pequenos traosquantitativos, uma vez que foram utilizados mtodos estatsticos para representar os dados dapesquisa.

    Do ponto de vista do posicionamento filosfico o estudo pragmtico, uma vez que temcomo objetivo auxiliar na resoluo dos problemas relacionados completude dos relatos dosexperimentos por meio de abordagem majoritariamente qualitativa, no abstendo-se de algunsmtodos quantitativos.

    3.2 Classificao do Estudo Sistemtico Segundo Cooper

    Originalmente proposta para classificar revises sistemticas da literatura nas reas daeducao e psicologia, a Taxonomia de Cooper (TC) bastante aplicada a estudos sistemticosde outras reas de pesquisa em geral (COOPER, 1988). Conforme pode ser observada naTabela 3.2 a taxonomia sugere a classificao perante seis caractersticas, onde em algumas delas(marcadas com *) mais de um valor pode ser assumido.

    Caracterstica CategoriaFoco* Resultados de pesquisa [ou] Mtodos de pesquisa [ou] Teorias [ou] Prticas e

    aplicaesObjetivo* [Integrao (Generalizao; Resoluo de conflito; Construo de ponte-

    lingustica) ] [Crtica] [Identificao de questes centrais]Perspectiva [Representao neutra] [Exposio de posio]Cobertura [Exaustiva] [Exaustiva com seleo seletiva] [Representativa] [Central ou piv]Organizao* [Histrica] [Conceitual] [Metodolgica]Pblico-Alvo* [Estudiosos especializados] [Estudiosos gerais] [Profissionais] [Pblico geral]

    Tabela 3.2: Taxonomia para classificao dos estudos secundrios segundo Cooper

    A utilizao desta taxonomia tem o intuito de auxiliar a comunidade em trs pontosespecficos: (i) avaliao da qualidade dou trabalho, (ii) divulgao comunidade atravs deum conjunto de termos bem definidos e, (iii) facilitar a pedagogia em cursos de graduao

  • 3.2. CLASSIFICAO DO ESTUDO SISTEMTICO SEGUNDO COOPER 41

    (COOPER, 1988). Na Tabela 3.3 possvel observar o resultado da classificao do estudo demapeamento sistemtico desta dissertao mediante a taxonomia de Cooper.

    Caractersticas ClassificaoFoco [Resultados de Pesquisa] [Prticas ou aplicaes]Objetivo [Integrao (Generalizao) ] [Identificao de problemas centrais]Perspectiva [Representao neutra]Cobertura [Exaustiva com citao seletiva]Organizao [Metodolgica]Audincia [Acadmicos Especializados] [Praticantes]

    Tabela 3.3: Resultado da aplicao da Taxonomia de Cooper para a classificao do mapeamentosistemtico desta pesquisa

    Ao focar em resultados de pesquisa espera-se contribuir para o entendimento da prticados relatos de experimentos em elasticidade na computao em nuvem a partir da anlise de umaparcela representativa dos experimentos publicados por esta comunidade. O foco em prticas eaplicaes importante e de grande valor para se entender certas tendncias.

    Quanto ao objetivo, os enfoques escolhidos foram: integrao/generalizao e iden-tificao de problemas centrais. Atravs destes espera-se integrar, organizar e sintetizar oconhecimento por meio da agregao e consolidao das evidncias existentes na literatura eidentificar lacunas que permitam a melhora da rea de pesquisa estudada.

    No que diz respeito perspectiva, a literatura ser discutida sob o ponto de vista neutro.O intuito de se dissertar desta forma tende a evitar a transmisso de posicionamento ou opiniodo pesquisador, bem como inibir qualquer vis pr-existente do pesquisador. Tambm intenoapresentar todas as evidncias sobre o tema investigado revelando seus pontos positivos enegativos.

    No quesito cobertura esta pesquisa classificada como exaustiva com citao seletiva,visto que tentou-se selecionar a maior parte da literatura relacionada ao tema em discussoatravs de buscas manuais e automticas, entretanto as fontes de pesquisas e perodo de coberturaforam limitados.

    Em relao organizao a dissertao est disposta de maneira metodolgica, vistoque os resultados esto agrupados em torno de ideias similares para facilitar a discusso einterpretao dos resultados de acordo com as perguntas de pesquisa e aspectos metodolgicosrelacionados ao relato dos experimentos.

    Por fim, em relao audincia a dissertao est direcionada aos pesquisadores es-pecializados tanto da computao em nuvem, quanto da engenharia de software experimental,que desejem conhecer o atual estado da prtica do relato dos experimentos em elasticidade nacomputao em nuvem.

  • 42 CAPTULO 3. MTODO

    3.3 Ciclo da Pesquisa

    O objetivo desta seo apresentar como foi planejada a metodologia para realizaodeste trabalho de mestrado em suas etapas e atividades. A Figura 3.1 apresenta todas as etapase respectivas atividades planejadas desde a definio da pesquisa at a divulgao de seusresultados.

    A seguir sero detalhadas as etapas de definio e planjeamento da pesquisa e divulgaodos resultados. Escolheu-se apresentar a etapa de Execuo na Seo 4, visto que estas informa-es dizem respeito materializao do mtodo planejado para a pesquisa na forma da execuodo mapeamento sistemtico. A seguir sero apresentados os planejamentos de atividades, deci-ses de pesquisa e suas particularidades. Quanto ordem, a execuo das atividades sequenciale definida pelo fluxo das setas e suas direes.

    Figura 3.1 Ciclo geral da pesquisa de mestrado apresentado em suas etapas e atividades.

    3.3.1 Etapa de Definio da Pesquisa

    Esta etapa foi fundamental para todo o delineamento da pesquisa e teve como principaisobjetivos: (i) identificao das oportunidades de pesquisa, (ii) definio do tema a ser trabalhado,(iii) escopo, (iv) perguntas de pesquisa e (v) definio da metodologia e do mtodo emprico aser utilizado. Nas demais sub-sees a seguir, todas as definies da pesquisa sero detalhadasseguindo a ordem de acontecimentos.

  • 3.3. CICLO DA PESQUISA 43

    3.3.1.1 Reviso Informal da Literatura

    Com o intuito de obter um maior conhecimento sobre as necessidades da CN foi realizadauma reviso informal da literatura para se identificar as oportunidades de pesquisa. Atravs destareviso foi possvel perceber a necessidade em se aumentar a utilizao de mtodos empricosnas pesquisas da computao em nuvem, e assim, melhorar o rigor metodolgico das evidnciasde pesquisas (SILVA; ROSE; CALINESCU, 2013b; JAMSHIDI; AHMAD; PAHL, 2013). Ficouevidente que os relatrios dos estudos empricos na CN so incompletos e apresentam umabaixa qualidade metodolgica, dificultando, por exemplo, a avaliao da qualidade, interpretao,generalizao, replicao e validade de seus resultados (DURAO et al., 2014; LI et al., 2013;HUANG et al., 2013; NASIR; NIAZI, 2011; SILVA; ROSE; CALINESCU, 2013a).

    3.3.1.2 Definio do Tema, Objetivo e Escopo

    Para adquirir um maior embasamento terico sobre o assunto e definir o tema, objetivo eescopo da pesquisa, foi realizada uma reviso bibliogfica tradicional nos principais temas relaci-onados ao assunto: computao em nuvem, estudos empricos e engenharia de software baseadaem evidncias. Assim observamos que, o problema em questo no especfico apenas do con-texto da CN (SMITE et al., 2008; KAMPENES et al., 2009; RUNESON; STEFIK; ANDREWS,2013) e que existe uma mobilizao dos pesquisadores da engenharia de software experimentalpara melhorar os relatrios dos estudos empricos atravs da utilizao de guias para reportarresultados(CARVER, 2010; BUDGEN; ZHANG, 2009; ?; KITCHENHAM; CHARTERS, 2007;SMITE et al., 2008).

    No melhor do nosso conhecimento e atravs de pesquisas feitas na literatura (Seo F.2),at o inicio da presente pesquisa no haviam estudos sistemticos, no contexto da computaoem nuvem, que caracterizassem a completude dos relatos de maneira aprofundada, baseado emguias existentes na literatura da engenharia de software experimental. Assim, conclumos queo problema apresentava relevncia para gerar contribuies importantes, conforme discussoapresentada na Seo 1.

    As prticas de avaliao no contexto da CN so reportadas em vrias fontes como blogs,revistas, relatrios tcnicos, publicaes acadmicas, etc. Publicaes acadmicas, em particular,normalmente so mais formais e seguem um processo rigoroso de reviso. Considerando adocumentao especfica produzida nas publicaes formais, limitamos a este trabalho apenas spublicaes acadmicas. No h desconfiana de que as publicaes informais tambm possamfornecer informaes altamente relevantes, entretanto impraticvel explorar e coletar dadosteis atravs de diferentes fontes de dados de uma s vez.

    A fim de realizar uma anlise inicial mais profunda e obter uma contribuio maisrelevante no estudo destes relatos, o foco inicial deste trabalho foi direcionado s pesquisas queutilizaram realizaram experimentos. Escolheu-se focar em experimentos pois este um mtodoemprico bem representativo mediante as caractersticas da rea de pesquisa em computao

  • 44 CAPTULO 3. MTODO

    em nuvem. Entretanto, mediante s limitaes de tempo e espao, foi necessrio condensar oescopo da pesquisa e ento foi decidido estudar os relatos dos experimentos que avaliavam acaracterstica mais marcante da computao em nuvem: a elasticidade. Embora o escopo tenhasido reduzido, a quantidade de estudos avaliados matm a representatividade da rea de pesquisacomo um todo, tanto em nmero quanto natureza dos experimentos realizados.

    Diante destes fatos, a pesquisa foi direcionada a compreender o estado da prtica decomunicao dos resultados de experimentos em elasticidade na CN, fundamentado em guiasexistentes na ESE, na perspectiva de profissionais e pesquisadores, a fim de identificar as lacunaspara melhoria da qualidade das evidncias empricas das publicaes cientficas.

    3.3.1.3 Definio da Metodologia

    Uma vez definidos o tema, objetivo e escopo da pesquisa, o prximo passo foi definirqual seria o mtodo emprico a ser utilizado. Dentre os mtodos apresentados anterioremente(Seo 2.2.1 e Seo 2.3) o mtodo considerado mais adequado foi o Mapeamento Sistemticoda Literatura, tomando como base o objetivo, natureza exploratria das questes de pesquisa eapresentao dos resultados pretendidos.

    Inicialmente existia a dvida entre se realizar uma reviso sistemtica ou mapeamentosistemtico. Em sua grande maioria, as revises sistemticas tem como objetivo avaliar, compa-rar ou decidir entre tcnicas, entretanto nosso objetivo a realizao de uma anlise temtica oque se adequa mais ao objetivo de um mapeamento sistemtico. Outro aspecto que foi decisivona escolha do mtodo foi a ampla natureza exploratria da pergunta de pesquisa: Quo com-pletos so os relatos de experimentos em elasticidade na computao em nuvem, em relao

    apresentao de elementos da pesquisa que permitam a interpretao, avaliao da validade

    e o potencial da pesquisa?. Visto que parte do objetivo realizar uma anlise de viso maisprofunda das evidncias da prtica dos relatos dos experimentos, o mtodo escolhido foi omais adequado, uma vesz que para tal precisamos integrar de forma exaustiva e sintetizar asevidncias existentes (KEELE, 2007; PETERSEN et al., 2008a; BUDGEN et al., 2008). Outrofator est relacionado forma de apresentao dos resultados, pois em um estudo de mapeamentosistemtico eles so apresentados de forma categorizada e proporcionam uma viso sumriaque permite a melhor visualizao dos dados em forma de grficos e mapas (PETERSEN et al.,2008a). Nas sub-sees a seguir todo o planejamento do mapeamento sistemtico ser detalhadoseguindo atravs da definio do protocolo da pesquisa.

    3.3.2 Etapa de Planejamento do Mapeamento Sistemtico

    Esta etapa foi fundamental para o planejamento do mapeamento sistemtico e tevecomo atividades: (i) definio do protocolo e (ii) reviso do protocolo. Nesta etapa o principalartefato produzido o protocolo do mapeamento que encontra-se em anexo no Apndice F destadissertao.

  • 3.3. CICLO DA PESQUISA 45

    Diferente de um processo no estruturado de reviso da literatura, um estudo sistemticoprocura reduzir o vis do pesquisador atravs de uma sequncia precisa e rigorosa de passosmetodolgicos. Toda a metodologia do mapeamento sistemtico desta pesquisa foi planejada emtrs fases como ilustra a Figura 3.2.

    Figura 3.2 Metodologia planejada para a realizao do mapeamento sistemtico

    A seguir sero apresentados os detalhes de planejamento do mapeamento e todas asdecises e informaes necessrios para a compreenso da pesquisa.

    3.3.2.1 Definio do Protocolo

    O objetivo do protocolo de um estudo sistemtico reduzir o vis do pesquisador efornecer um processo reproduzvel e transparente para a realizao do estudo. O protocolo domapeamento desta pesquisa foi construdo com base em guias existentes na literatura (KITCHE-NHAM, 2004; KEELE, 2007; PETERSEN et al., 2008b; ARKSEY; OMALLEY, 2005).

    A seguir sero apresentados, atravs de pargrafos breves, apenas alguns dos elementosrelacionados ao planejamento do mapeamento, entretanto, possvel ter acesso ao protocolocomo um todo no Apndice F. Como pode ser visto na Figura 3.2 o planejamento compreende adefinio dos seguintes pontos: questes de pesquisa, estratgia de busca dos estudos, estratgiade seleo dos estudos, avaliao da qualidade e estratgia de extrao.

    3.3.2.1.1 Questes de Pesquisa A formulao das questes de pesquisa crucial e direcionatodas as atividades de busca, seleo, extrao dos dados e anlise dos estudos (KITCHENHAM;CHARTERS, 2007). O objetivo desta pesquisa realizar um diagnstico da comunicao dosresultados dos experimentos realizados na computao em nuvem para verificar se os autores

  • 46 CAPTULO 3. MTODO

    apresentam em seus relatos um conjunto de elementos que permitam interpretar, avaliar avalidade e o potencial de tais estudos como: motivao, objetivo, mtodo, anlise dos dados,resultados, concluses e limitaes. Com este objetivo e tomando como base as orientaescriadas por JEDLITSCHKA; CIOLKOWSKI; PFAHL (2008), que orientam os pesquisadores arelatar o resultado de experimentos com base em um conjunto de informaes essenciais paraseu entendimento, foi criado o conjunto de questionamentos abaixo:

    QP1 - Quo completos so os relatos de experimentos em elasticidade na computaoem nuvem, em relao apresentao de elementos da pesquisa que permitam ainterpretao, avaliao da validade e o potencial da pesquisa?

    SQP1 - O ttulo permite que o leitor identifique que o estudo um relatode experimento?

    SQP2 - Informaes importantes do resumo como motivao, objetivos,mtodos, resultados, limitaes e concluses da pesquisa so relatadas?

    SQP3 - A introduo do relato apresenta referncias declarao doproblema, objetivos e contexto da pesquisa?

    SQP4 - A fundamentao informa sobre a tecnologia em investigao, spossveis opes alternativas a ela, pesquisas relacionadas e a relevnciapara a prtica?

    SQP5 - O relato apresenta informaes sobre o planejamento da pesquisa?

    SQP6 - O relato detalha a anlise dos dados da pesquisa?

    SQP7 - Os resultados, suas implicaes e ameaas validade so relata-dos?

    SQP8 - As concluses do estudo apresentam um resumo conciso da pes-quisa, seus impactos e trabalhos futuros?

    3.3.2.1.2 Estratgia de Busca dos Estudos A busca dos estudos inclui as estratgias manu-ais e automticas. Foi planejado que ambas as estratgias deveriam ser executadas pelo autor dapesquisa e os resultados obtidos exportados para o sistema ExtractViewer, ferramenta criada paraauxiliar toda a realizao do estudo sistemtico. Mais informaes sobre a feramenta podemser obtidas no Apndice G As fontes de busca manuais planejadas e os respectivos perodos decoleta so as apresentadas na Tabela 3.4.

    Para a estatgia automtica planejou-se a utilizao dos mecanismos IEEE Xplore DigitalLibrary 1, ACM Digital Library 2, Elsevier Scopus 3, Springer Link 4. A string de busca

    1http://ieeexplore.ieee.org2http://portal.acm.org3http://www.scopus.com4http://link.springer.com

  • 3.3. CICLO DA PESQUISA 47

    Fonte Perodo Tipo reaEASE International Conference on Evaluationand Assessment in Software Engineering

    2006-2014 Conferncia ESE

    ESEM International Symposium on EmpiricalSoftware Engineering and Measurement

    2007-2014 Simpsio ESE

    ESE Empirical Software Engineering Journal 2006-2014 Journal ESECLOUD IEEE International Conference onCloud Computing

    2009-2014 Conferncia CN

    CLOUDCOM IEEE International Conferenceon Cloud Computing Technology and Science

    2010-2014 Conferncia CN

    TPDS IEEE Transactions on Parallel and Dis-tributed Systems

    2006-2014 Journal CN

    Tabela 3.4: Fontes de Busca Manual e Perodo de Coleta

    definida apresentada na Tabela 3.5. Foram utilizados os principais sinnimos para a definioda computao em nuvem e seus modelos de servio. Para encontrar os experimentos maisefetivamente foi utilizado o termo experimento conforme as orientaes de DIESTE; GRIMN;JURISTO (2008). Com o objetivo de encontrar os experimentos que claramente declaravamrealizar experimentos em elasticidade o termo foi includo na string de busca.

    (Cloud Computing Cloud Platform Cloud Service Cloud Provider PaaS Platform as a Service Platform-as-a-Service IaaS

    Infrastructure as a Service Infrastructure-as-a-Service SaaS Software-as-a-Service" Software as a Service)

    [AND](Elasticity)

    [AND](Experiment OR Evaluate OR Evaluation OR Evaluating OR Benchmark)

    Tabela 3.5: String de Busca utilizada na pesquisa dos estudos do MS

    3.3.2.1.3 Estratgia de Seleo dos Estudos A seleo dos estudos foi planejada em duasetapas, onde a primeira consiste na leitura do ttulo e resumo de todos os estudos pelo autorda pesquisa em conjunto com um pesquisador experiente e, apenas os trabalhos claramentefora do escopo da pesquisa e duplicados devem ser excludos. Em caso de dvida em relao permanncia do estudo o mesmo deve ser mantido para a segunda rodada de seleo conformerecomenda KITCHENHAM; CHARTERS (2007).

    A segunda etapa contempla a participao de pesquisadores configurados em duplas etodos os estudos devem ser lidos sinteticamente e analisados conforme os critrios de exclusodefinidos. O grau de concordncia entre os revisores deve ser calculado para garantir que oresultado obtido no foi meramente ao acaso.

  • 48 CAPTULO 3. MTODO

    Quanto aos critrios de excluso, os mesmos foram definidos com objetivo de identificarapenas os experimentos que avaliavam a elasticidade na computao em nuvem, o que deixaimplcito que todos os estudos que no se enquadraram nestes critrios deve ser automaticamenteincludos. A lista dos critrios pode ser observada na Tabela 3.6. Todo o processo deve serassitido pela ferramenta ExtractViewer e cada um dos revisores, de posse de suas credenciais deacesso devem proceder com a anlise dos estudos designados a ele. Mais detalhes sobre as telase informaes disponibilizadas aos revisores pode ser vista no Apndice G. Inicialmente algunsdos critrios podem parecer similares entre si, entretanto o objetivo realizar uma anlise comgranularidade fina a fim de facilitar futuros estudos com os resultados das selees de estudosrealizada nesta reviso.

    Cdigo Critrios de ExclusoC01 O arquivo no corresponde ao Estudo. (Ex: ndice)C02 O arquivo no um Estudo. (Ex: proceedings, editorial)C03 O Estudo duplicado.C04 O Estudo um slideshow ou resumo expandido.C05 O Estudo est fora do intervalo de avaliao.C06 O Estudo est relacionado Elasticidade mas no relata um Experimento.C07 O Estudo est relacionado Elasticidade, reporta um Experimento porm no

    avalia Elasticidade.C08 O Estudo no est disponvel.C09 O Estudo no est em ingls.C10 O Estudo no est relacionado Computao em Nuvem.C11 O Estudo no est relacionado Elasticidade na Computao em Nuvem.

    Tabela 3.6: Lista dos Critrios de Excluso em ordem alfabtica.

    3.3.2.1.4 Avaliao da Qualidade O intuito desta pesquisa ser exaustiva, e identificar amaior quantidade de experimentos em elasticidade para obter uma representatividade ampla dapopulao. Assim sendo, a anlise de qualidade dos estudos selacionados no foi realizada, umavez que nesta caso a incluso do maior nmero de estudos pode contribuir potencialmente para aformao de uma viso ampla da prtica atual dos relatos dos experimentos.

    3.3.2.1.5 Estratgia de Extrao Foi planejado que o processo de extrao dos dados seriafeito em duas partes: extrao dos metadados e extrao atravs do instrumento de anlise decompletude dos relatos. A primeira parte contempla os metadados relacionados ao ttulo doestudo, autores, instituies, pases, fonte e ano de publicao. Uma vez que tais dados devemser coletados durante a etapa de busca e importados para o sistema ExtractViewer, sua extraodeve ser realizada atravs de consultas ao banco de dados do sistema. J a segunda parte deveser extrada atravs da leitura e aplicao do instrumento de coleta nos estudos selecionadosconforme orientaes e detalhes apresentados no Apndice H e Seo 2.2.2.

  • 3.3. CICLO DA PESQUISA 49

    3.3.2.2 Reviso do Protocolo

    Com a concluso do protocolo, conforme orientao dos guias utilizados, o mesmo foiapreciado por especialistas da computao em nuvem, engenharia de software experimentale engenharia de software baseada em evidncias. Aps a realizao dos sucessivos ajustespropostos, a verso final do protocolo foi ento estabelecida para permitir assim o incio da etapade execuo da pesquisa.

    3.3.3 Etapa de Execuo da Pesquisa

    Como explanado no incio deste captulo os resultados das atividades de execuo domapeamento sistemtico sero apresentados na Seo 4.

    3.3.4 Etapa de Divulgao dos Resultados

    Esta etapa possui uma dinmica de execuo diferente das demais em termos de execuo,suas atividades so: (i) Escrita da Dissertao e (ii) Submisso Journal. Todos os resultadosdetalhados e demais detalhes relacionados execuo e planejamento da pesquisa esto sendodivulgados por meio desta dissertao. Ao dissertar tentou-se acrescentar a maior quantidadede informaes possveis em relao ao mtodo da pesquisa, de forma a propiciar uma melhorvisualizao do planejamento e da execuo do mtodo, transparecer a credibilidade da pesquisae facilitar possveis replicaes.

    A execuo da primeira atividade, escrita da dissertao, no foi sequencial e simiterativa e incremental, onde em cada etapa do ciclo da pesquisa as informaes produzidas eramredigidas e registradas nesta dissertao.

    A segunda atividade, submisso journal, extrapola o marco de apresentao deste trabalhode dissertao e visa apresentar comunidade os resultados desta pesquisa de maneira maisampla. Aps a concluso e apresentao do trabalho sero recebidas as sugestes de correo emelhorias e, aps a realizao das mesmas, os resultados desta pesquisa sero submetidos doisperidicos: ESE e TPDS.

    3.3.5 Resumo

    Neste captulo foi descrita a metodologia utilizada nesta pesquisa, sua classificao,estruturao, planejamento, conduo e as razes de uso dos procedimentos ou mtodos. Tambmfoi apresentada a estratgia planejada para a divulgao dos resultados obtidos na pesquisa. Noprximo captulo so apresentados todos os detalhes de execuo do mapeamento sistemtico euma anlise dos resultados obtidos.

  • 515151

    4Resultados

    Este captulo tem como objetivo trazer informaes a cerca da etapa de execuo domapeamento sistemtico e apresentar os resultados encontrados na anlise das evidncias. Naseo Execuo do Mapeamento Sistemtico so apresentados todo os detalhes da execuo domapeamento, compreendendo as atividades de busca, seleo, extrao dos dados e sintetizaodos resultados.

    A anlise e discusso dos resultados obtidos constituem as principais contribuies destetrabalho e sero apresentados em trs Sees distintas: Anlise Geral, Anlises das Evidnciase Discusso dos Resultados. A Seo 4.2 apresenta os dados quantitativos do processo demapeamento sistemtico e caractersticas gerais dos estudos analisados. A Seo 4.3 apresenta aanlise das evidncias identificadas respondendo a cada uma das perguntas de pesquisa. E porfim a Seo 4.4 se dedica a discutir os principais resultados obtidos.

    4.1 Execuo do Mapeamento Sistemtico

    O intuito desta seo apresentar os detalhes da etapa de execuo do mapeamentosistemtico que se inicia com a seleo dos estudos e resulta na sintetizao da informao.Nas prximas sub-sees sero apresentados os detalhes de execuo relativos s atividades einformaes pertinentes ao entendimento do contexto e interpretao da pesquisa.

    4.1.1 Busca dos Estudos

    A atividade de busca foi guiada pelo planejamento realizado na Seo 3.3.2.1.2 e execu-tada em dois momentos: (i) busca automtica e (ii) busca