Felipe Buarque, Felype Santiago, Liliane Sheyla. Justificativa Alguém já sobrescreveu o código...

Post on 07-Apr-2016

215 views 2 download

Transcript of Felipe Buarque, Felype Santiago, Liliane Sheyla. Justificativa Alguém já sobrescreveu o código...

Análise de Desempenho dos sistemas de

controle de versão SVN e GitFelipe Buarque, Felype Santiago, Liliane Sheyla

Justificativa Alguém já sobrescreveu o código de outra

pessoa por acidente e acabou perdendo as alterações?

Você sabe quem e em que momento e em que parte um artefato foi alterado?

Tem dificuldade em recuperar o código de uma versão anterior que está em produção?

Uso de Sistema de controle de versão Gerenciar artefatos produzidos por uma

equipe de desenvolvimento de software

Abordagem Centralizada ou distribuída?

Sistema de Controle de Versão Centralizado

Armazenamento centralizado Histórico Universal de Revisões Trabalho cooperativo Ramificações Análise de diferenças entre

versões SVN(Subversion)

Sistema de Controle de Versão Distribuído

Rapidez Autonomia Redução de custos com o

servidor Confiabilidade Git; Mercurial

Problema Visando maior produtividade e eficiência

na usabilidade dos controles de versão no decorrer do projeto, é mais vantajoso que uma equipe que utiliza um controle de versão centralizado (SVN) migrar para um distribuído(Git) ou permanecer com um centralizado?

Objetivo da Pesquisa Analisar a utilização das ferramentas

SVN e Git, com o propósito de definir qual o sistema de controle de versão é mais eficiente em relação a sua usabilidade.

Especificação da Amostra 32 amostras: Alunos da Disciplina de

Engenharia de Software Experimental e convidados.

2 Grupos Divisão em 2 grupos aleatoriamente Mais de 1 ano de experiência Treinamento para ambos os times

Métricas Medir usabilidade definida na ISO 9241-11 Observar a interação do usuário com a

ferramenta de controle de versãoTCA - Tempo de Configuração de AmbienteTCB - Tempo de criação de branchTIB - Tempo de Integração de branchTIL - Tempo de Integrar as mudanças Locais ao

Tronco

Análise exploratória Verificar normalidade dos dados

Teste de AderênciaAnálise do HistogramasAnálise dos BoxplotsAnálise dos gráficos do Quartis

Teste de AderênciaH0: Os dados não seguem uma distribuição normalH1: Os dados seguem uma distribuicao normal

Análise dos Histogramas

Análise dos Boxplots

Análise dos Gráficos dos Quartis

Metodologia Formulação das Hipóteses Projeto do Experimento Análise Estatística

Formulação da hipóteses Hipótese Alternativa (H01...4): Os tempos

definidos pelas métricas são iguais utilizando-se SVN ou Git como sistema de controle de versão.

Em complemento, hipóteses alternativas são definidas para serem aceitas quando a hipótese nula correspondente for negada.

Formulação da hipóteses Hipótese Alternativa (H11...4): Os tempos

definidos pelas métricas utilizando-se SVN como controle de versão são menores do que os tempos coletados utilizando-se Git.

Formulação da hipóteses Hipótese Alternativa (H11...4): Os tempos

definidos pelas métricas utilizando-se SVN como controle de versão são maiores do que os tempos coletados utilizando-se Git.

Projeto do Experimento Experimento com um fator e dois tratamentos Dois grupos de 16 pessoas cada um Tags do software Jajuk As atividades a serem executadas descritas Tempos armazenados em planilha eletrônica Eclipse Plugin Subclipse/Repositório Google Code Plugin eGit/Repositório Gitorius

Estatística t-teste

Análise dos Resultados

Análise dos Resultados

Conclusões Usabilidade da ferramenta Git se faz mais

eficiente do que a ferramenta SVN, pois a mesma apresenta melhor desempenho no que se diz respeito à realização das atividades de criação de branch, integração de branch e integração de mudanças locais ao tronco, enquanto que o SVN só foi mais eficiente na realização da atividade de configuração do ambiente