Análise de Desempenho dos
sistemas de controle de
versão SVN e Git
Felipe 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.
Experimento

Software código aberto Jajuk
Métricas
Medir usabilidade definida na ISO 9241-11
 Observar a interação do usuário com a
ferramenta de controle de versão

 TCA- Tempo de Configuração de Ambiente
 TCB- Tempo de criação de Branch
 TIB- Tempo de Integração de Branch
 TIL- Tempo de Integrar as mudanças Locais ao
Tronco
Especificação da Amostra
32 pessoas
 2 Grupos
 Divisão Aleatória
 Mais de 1 ano de experiência
 Treinamento de GIT ou SVN

Análise exploratória
Metodologia (Formulação das
hipóteses)
Análise dos Resultados
Download

Slide 1