efeitos da prática de revisão de código na caelum: um estudo preliminar em duas equipes
DESCRIPTION
Artigo no WBMA2014, em Florianópolis: Efeitos da Prática de Revisão de Código na Caelum: Um Estudo Preliminar em Duas EquipesTRANSCRIPT
![Page 1: Efeitos da Prática de Revisão de Código na Caelum: Um Estudo Preliminar em Duas Equipes](https://reader034.vdocuments.pub/reader034/viewer/2022052621/5588ce4fd8b42a351f8b45a7/html5/thumbnails/1.jpg)
Maurício AnicheFrancisco Sokol
Universidade de São PauloCaelum Ensino e Inovação
Efeitos da Prática de Revisão de Código na Caelum:
Um Estudo Preliminar em Duas Equipes
![Page 2: Efeitos da Prática de Revisão de Código na Caelum: Um Estudo Preliminar em Duas Equipes](https://reader034.vdocuments.pub/reader034/viewer/2022052621/5588ce4fd8b42a351f8b45a7/html5/thumbnails/2.jpg)
O que é revisão de código?
não aparece nem noquestionário da VersionOne
verificação e validaçãodo código escrito por outros desenvolvedores
feitas de maneiras diferentes, o objetivo é aumentar a qualidade
![Page 3: Efeitos da Prática de Revisão de Código na Caelum: Um Estudo Preliminar em Duas Equipes](https://reader034.vdocuments.pub/reader034/viewer/2022052621/5588ce4fd8b42a351f8b45a7/html5/thumbnails/3.jpg)
E na Caelum,como vocês fazem?
ambas usam o github como ferramenta
equipes tem revisão de código no seu processo
![Page 4: Efeitos da Prática de Revisão de Código na Caelum: Um Estudo Preliminar em Duas Equipes](https://reader034.vdocuments.pub/reader034/viewer/2022052621/5588ce4fd8b42a351f8b45a7/html5/thumbnails/4.jpg)
RQ: Entender como a prática de revisão
de código ajuda essas equipes
![Page 5: Efeitos da Prática de Revisão de Código na Caelum: Um Estudo Preliminar em Duas Equipes](https://reader034.vdocuments.pub/reader034/viewer/2022052621/5588ce4fd8b42a351f8b45a7/html5/thumbnails/5.jpg)
Trabalhos relacionados ?
Mantyla confirma os achados de Siy
Kemerer mostra que a prática é eficaz para localização de defeitos
Siy mostra que defeitos encontrados são pequenos, mas que sua refatoração ajuda na manutenabilidade
![Page 6: Efeitos da Prática de Revisão de Código na Caelum: Um Estudo Preliminar em Duas Equipes](https://reader034.vdocuments.pub/reader034/viewer/2022052621/5588ce4fd8b42a351f8b45a7/html5/thumbnails/6.jpg)
Planejamento doestudo ?
duas equipes
extraímos comentários do github
extraímos métricas de código
comparamos o antes e o depois
questionário
![Page 7: Efeitos da Prática de Revisão de Código na Caelum: Um Estudo Preliminar em Duas Equipes](https://reader034.vdocuments.pub/reader034/viewer/2022052621/5588ce4fd8b42a351f8b45a7/html5/thumbnails/7.jpg)
Os projetos ?Projeto # de classes # de commits # de devs
Gnarus 924 10451 33
Caelumweb 1321 12077 59
![Page 8: Efeitos da Prática de Revisão de Código na Caelum: Um Estudo Preliminar em Duas Equipes](https://reader034.vdocuments.pub/reader034/viewer/2022052621/5588ce4fd8b42a351f8b45a7/html5/thumbnails/8.jpg)
Métricas decódigo ?
Acoplamento Eferente
LCOM-HS
Linhas de código
McCabe
![Page 9: Efeitos da Prática de Revisão de Código na Caelum: Um Estudo Preliminar em Duas Equipes](https://reader034.vdocuments.pub/reader034/viewer/2022052621/5588ce4fd8b42a351f8b45a7/html5/thumbnails/9.jpg)
O questionário ?antes e depois de verem os gráficos
basicamente perguntava quais as vantagens que ele via na revisão de código no seu projeto
![Page 10: Efeitos da Prática de Revisão de Código na Caelum: Um Estudo Preliminar em Duas Equipes](https://reader034.vdocuments.pub/reader034/viewer/2022052621/5588ce4fd8b42a351f8b45a7/html5/thumbnails/10.jpg)
E os resultados ?
![Page 11: Efeitos da Prática de Revisão de Código na Caelum: Um Estudo Preliminar em Duas Equipes](https://reader034.vdocuments.pub/reader034/viewer/2022052621/5588ce4fd8b42a351f8b45a7/html5/thumbnails/11.jpg)
![Page 12: Efeitos da Prática de Revisão de Código na Caelum: Um Estudo Preliminar em Duas Equipes](https://reader034.vdocuments.pub/reader034/viewer/2022052621/5588ce4fd8b42a351f8b45a7/html5/thumbnails/12.jpg)
E o questionário ?disseminação de conhecimento inerente ao processo
melhoria da qualidade interna do código diminuição na quantidade
de defeitos
![Page 13: Efeitos da Prática de Revisão de Código na Caelum: Um Estudo Preliminar em Duas Equipes](https://reader034.vdocuments.pub/reader034/viewer/2022052621/5588ce4fd8b42a351f8b45a7/html5/thumbnails/13.jpg)
Disseminação deconhecimento !
"Alguns desenvolvedores aprendem técnicas e tecnologias com os outros."
"Ensino de boas práticas para pessoas menos experientes, mais clareza e ciência dos padrões de código do projeto, bugs são pegos mais cedo..."
![Page 14: Efeitos da Prática de Revisão de Código na Caelum: Um Estudo Preliminar em Duas Equipes](https://reader034.vdocuments.pub/reader034/viewer/2022052621/5588ce4fd8b42a351f8b45a7/html5/thumbnails/14.jpg)
Localização de defeitos !
(...) menos bugs entram em produção, já que todo código é revisado... para passar algo, duas pessoas precisam ``errar'' é não uma.
(...) a maioria das coisas que pegamos no code review são possíveis bugs ligados à regra de negócio.
![Page 15: Efeitos da Prática de Revisão de Código na Caelum: Um Estudo Preliminar em Duas Equipes](https://reader034.vdocuments.pub/reader034/viewer/2022052621/5588ce4fd8b42a351f8b45a7/html5/thumbnails/15.jpg)
O que elese acharam dos resultados ?
"Ainda acredito que a prática de revisão é importante, ajudando-nos a encontrar possíveis erros já vivenciados por outros desenvolvedores. O code review pode ajudar muito também no processo de aprendizado de um novo membro da equipe."
"Não acho justo. Eu pelo menos tenho muito a ganhar nas revisões, seja quando eu estou revisando ou quando alguém está revisando meu código. Acredito que este tipo de coisa não pode ser mensurada."
"Uma revisão, não necessariamente deve melhorar a qualidade do código. É mais pra garantir que o código vai funcionar como deve (inclusive sendo ``mantível'' no futuro)."
![Page 16: Efeitos da Prática de Revisão de Código na Caelum: Um Estudo Preliminar em Duas Equipes](https://reader034.vdocuments.pub/reader034/viewer/2022052621/5588ce4fd8b42a351f8b45a7/html5/thumbnails/16.jpg)
Comparação comos outros trabalhos?
Diminuição de defeitos
Melhora na qualidade interna
Disseminação de conhecimento
Kemerer et al X
Siy et al X
Mantyla et al X X X
Este estudo X X* X
![Page 17: Efeitos da Prática de Revisão de Código na Caelum: Um Estudo Preliminar em Duas Equipes](https://reader034.vdocuments.pub/reader034/viewer/2022052621/5588ce4fd8b42a351f8b45a7/html5/thumbnails/17.jpg)
Ameaçasa Validade ?
A heurística. Olhar o valor antes e depois pode se problemático.
Apesar deles falarem sobre o aprendizado intenso e a redução de bugs, não triangulamos essas informações.
A maneira informal e falta de treinamento específico em revisão de código podem diferir de outras empresas.
![Page 18: Efeitos da Prática de Revisão de Código na Caelum: Um Estudo Preliminar em Duas Equipes](https://reader034.vdocuments.pub/reader034/viewer/2022052621/5588ce4fd8b42a351f8b45a7/html5/thumbnails/18.jpg)
Conclusões ?acreditam na melhoria da qualidade interna do código
disseminação de conhecimento diminuição na quantidade
de defeitos
![Page 19: Efeitos da Prática de Revisão de Código na Caelum: Um Estudo Preliminar em Duas Equipes](https://reader034.vdocuments.pub/reader034/viewer/2022052621/5588ce4fd8b42a351f8b45a7/html5/thumbnails/19.jpg)
Trabalhos futuros ?Sugerir a outras empresas que também descubram os reais efeitos da prática em seus times.
Dar treinamentos sobre o assunto para a equipe e repetir o estudo.