SlideShare ist ein Scribd-Unternehmen logo
1 von 30
Downloaden Sie, um offline zu lesen
OSTRA: UM ESTUDO DO HISTÓRICO DA
QUALIDADE DO SOFTWARE ATRAVÉS DE
REGRAS DE ASSOCIAÇÃO DE MÉTRICAS
Daniel D. Castellani Ribeiro
Orientador: Leonardo Murta
Co-orientador: Alexandre Plastino
Concurso de Teses e Dissertações em Qualidade de Software – CTDQS 2013
Ciclo de vida do software
Definição Desenvolvimento Manutenção
60% do tempo
90% do custo
2
Daniel Castellani -
danielcastellani@id.uff.br - CTDQS 2013
Atributos de qualidade
Desenvolvimento
Manutenibilidade
EntendimentoFlexibilidade
3
Daniel Castellani -
danielcastellani@id.uff.br - CTDQS 2013
Motivação
• Monitorar a qualidade do produto para
garanti-la
• Entender sobre quais fatores influenciam a
qualidade
4
Daniel Castellani -
danielcastellani@id.uff.br - CTDQS 2013
Disciplinas
Gerência de
Configuração
Mineração
de dados
Métricas
de
Software
5
Daniel Castellani -
danielcastellani@id.uff.br - CTDQS 2013
Gerência de Configuração
6
Commit
Revisão
Versionamento
Construção
Daniel Castellani -
danielcastellani@id.uff.br - CTDQS 2013
Métricas de Software
7
Métricas de
Software
Processo Projeto Produto
Daniel Castellani -
danielcastellani@id.uff.br - CTDQS 2013
QMOOD Modelo de qualidade para
Arquiteturas Orientadas a Objetos
6
11
11
Atributos de Qualidade
Propriedades
Métricas
Componentes
8
Efetividade
Entendimento
Extensibilidade
Flexibilidade
Funcionalidade
Reusabilidade
Daniel Castellani -
danielcastellani@id.uff.br - CTDQS 2013
Grande Quantidade de Dados
• Software
– 1500 commits
• Métricas
– 30
• Informação
– 45.000 medições
9
5.673
commits
30
métricas
170.190
medições
Daniel Castellani -
danielcastellani@id.uff.br - CTDQS 2013
Mineração de Dados:
Regras de Associação
• Medidas de Interesse
– Suporte
– Confiança
– Lift João ↓ Complexity
Segunda Não Compila
10
Daniel Castellani -
danielcastellani@id.uff.br - CTDQS 2013
Objetivos
1. Fornecer informações relevantes à tomada de
decisões gerenciais
2. Auxiliar o monitoramento da qualidade
3. Identificar padrões evolutivos
11
Daniel Castellani -
danielcastellani@id.uff.br - CTDQS 2013
Abordagem: Visão Geral
12
Daniel Castellani -
danielcastellani@id.uff.br - CTDQS 2013
Fase de Medição
13
Daniel Castellani -
danielcastellani@id.uff.br - CTDQS 2013
Cerca de 30 Métricas
• Métricas Simples (Diretas)
– 11 de QMOOD
– Outras
• Complexidade Ciclomática de McCabe (TCC)
• LOC
• Número de Métodos (NOM)
• Métricas Compostas (Indiretas)
– 6 Atributos de Qualidade
– Densidade de Complexidade (= TCC / NOM)
14
Daniel Castellani -
danielcastellani@id.uff.br - CTDQS 2013
Delta
Versão 11 Versão 12
commit
260,000
+1.000
Modification
15
Daniel Castellani -
danielcastellani@id.uff.br - CTDQS 2013
261,000
Fase de Mineração
– Quem:
• Desenvolvedor
– Quando
• Hora
• Turno de trabalho
• Dia da semana
– Como
• Quantidade de arquivos
• Métricas
16
Daniel Castellani -
danielcastellani@id.uff.br - CTDQS 2013
Fase de Apresentação
17
Fase de
Apresentação
Gráficos do
Histórico
Regras de
Associação
Tabela de
Comportamento
Daniel Castellani -
danielcastellani@id.uff.br - CTDQS 2013
Experimento 1: Regras Sobre a
Evolução
• Questão de Pesquisa: A mineração de dados é
capaz de obter informações relevantes sobre a
evolução do projeto?
• Métricas: TCC, Reu, Ent, LOC e DSC.
• Metadados do commit: hora, desenv. e compila.
Projeto
Quantidade de
Desenvolvedores
Quant. de
Artefatos
Revisões
que
compilam
Revisões
que não
compilam
Total de
revisões
Ultima
revisão
medida
Maven
Javadoc
Plugin
21 795 248 81 329 1232525
Maven GWT
Plugin
6 463 252 60 312 14772
IdUFF 31 1068 1355 154 1509 22695
Publico-core 21 117 127 7 134 21633
19
Daniel Castellani -
danielcastellani@id.uff.br - CTDQS 2013
Regras Positivas do IdUFF
# Regra Sup. Conf. Lift Base
1
Se a quantidade de classes aumenta,
Então nove ou mais artefatos alterados.
0,14 0,72 3,11 B
2
Se a quantidade de linhas de código diminui,
Então o entendimento aumenta.
0,03 0,20 2,86 B
3
Se a reusabilidade diminui,
Então o entendimento aumenta.
0,02 0,17 2,43 B
4 *
Se a quantidade de classes aumenta,
Então a reusabilidade aumenta.
0,15 0,77 2,23 B
5
Se Tywin faz alterações,
Então três ou quatro artefatos alterados.
0,01 0,28 2,00 B
6
Se Stannis faz alterações,
Então nove ou mais artefatos alterados.
0,01 0,39 1,76 A
7
Se Robb faz alterações,
Então complexidade diminui.
0,01 0,43 1,43 A
8 *
Se Stannis faz alterações,
Então a complexidade diminui.
0,01 0,36 1,20 A
9 *
Se Tywin faz alterações,
Então compila.
0,03 1,0 1,11 A
10
Se Renly faz alterações,
Então compila.
0,02 1,0 1,11 A
20
8. Stannis é um desenvolvedor experiente que faz refatorações.
4. Foco em reusabilidade pela equipe bem sucedido.
9. Tywin sempre se preocupou em publicar código que funciona.
Daniel Castellani -
danielcastellani@id.uff.br - CTDQS 2013
Regras Negativas do IdUFF
# Regra Sup. Conf. Lift Base
1
Se a quantidade de classes diminui,
Então a reusabilidade diminui.
0,01 0,75 4,61 B
2 *
Se Jofrey faz alterações,
Então não compila.
0,01 0,32 3,22 A
3
Se Stannis faz alterações,
Então a quantidade de linhas de código diminui.
0,01 0,41 2,65 B
4
Se Tyrion faz alterações,
Então a complexidade aumenta.
0,00 1,0 2,30 B
5
Se o commit é na sexta-feira,
então a reusabilidade diminui.
0,02 0,3 2,05 B
6 *
Se a quantidade de classes aumenta,
Então o entendimento diminui.
0,18 0,94 2,04 B
7 *
Se o commit é na sexta-feira ,
Então não compila.
0,15 0,11 1,50 A
8
Se Renly faz alterações,
Então a complexidade aumenta.
0,01 0,5 1,33 A
9
Se Tommem faz alterações,
Então a complexidade aumenta.
0,03 0,45 1,21 A
10
Se o commit é no turno da noite,
Então não compila.
0,02 0,12 1,20 A
21
0,00%
8,33%
11,17% 10,65%
9,15%
11,79%
0,00%
7,30%
0,00%
5,00%
10,00%
15,00%
Domingo Segunda-feira Terça-feira Quarta-feira Quinta-feira Sexta-feira Sábado Geral
Taxa de Não Compilação
Daniel Castellani -
danielcastellani@id.uff.br - CTDQS 2013
Experimento 2: Monitoramento
da Qualidade
• Projeto: IdUFF
1
2
3
22
Daniel Castellani -
danielcastellani@id.uff.br - CTDQS 2013
Experimento 2: Monitoramento
da Qualidade - Delta
1
3
2
23
Daniel Castellani -
danielcastellani@id.uff.br - CTDQS 2013
1
3
2
Experimento 2: Monitoramento da
Qualidade
1
3
2
24
Daniel Castellani -
danielcastellani@id.uff.br - CTDQS 2013
Experimento 2: Monitoramento
da Qualidade
1
3
2
25
1
3
2
Daniel Castellani -
danielcastellani@id.uff.br - CTDQS 2013
Experimento 3: Padrões Gerais
• Comparação com a
literatura
• 16 projetos
• Questão de Pesquisa:
A mineração de dados
é capaz de obter
informações relevantes
sobre o relacionamento
entre métricas de
software?
Projeto
Quantidade de
Desenvolvedores
Quant. De
Artefatos
LOC
(Java)
Revisões
que
compilam
Total de
revisões
Ultima
revisão
medida
Acadêmico Pós
Graduação Core
9 221 10.413 102 142 4.196
IdUFF 31 1.068 151.621 1.355 1.509 22.695
Maven Changes
Plugin*
10 686 8.188 230 259 1.140.265
Maven GWT
Plugin*
6 463 10.816 252 312 14.772
Maven Javacc
Plugin*
6 759 6.575 129 136 10.774
Maven Javadoc
Plugin*
21 795 17.775 248 329 1.232.525
Maven Native
Plugin*
4 1.305 9.403 148 163 13.690
Maven Nbm
Plugin*
5 1.433 6.916 210 230 14.751
Maven PMD
Plugin*
14 806 2.610 104 110 1.159.144
Maven Project
Info Reports
Plugin*
13 32 8.770 160 240 1.152.589
Maven Shade
Plugin
12 84 6.650 102 104 1.300.217
Maven Versions
Plugin*
6 143 17.537 182 198 13.376
Monitoria Core 6 143 10.246 133 445 23.628
Oceano Core 6 418 29.181 214 228 1.075
Oceano Web 6 117 10.984 117 179 1.077
Publico Core 21 117 9.183 127 134 21.633
26
Daniel Castellani -
danielcastellani@id.uff.br - CTDQS 2013
Análise Geral
Comportamento Confirmações Negações
A manutenibilidade afeta positivamente a flexibilidade 15 0
A flexibilidade afeta positivamente a manutenibilidade 15 0
Comportamento Confirmações Negações
A flexibilidade afeta negativamente a integridade 0 15
29
Indicado por Wiegers (2003)
Encontrado
Daniel Castellani -
danielcastellani@id.uff.br - CTDQS 2013
Principais Ameaças à validade
• Quantidade de amostras
– Apenas indícios de padrões gerais
• Mapeamento de Wiegers
• Fórmulas dos Atributos de Qualidade
30
Daniel Castellani -
danielcastellani@id.uff.br - CTDQS 2013
Contribuições Principais
• Abordagem
– Mineração
– Métricas
– Commits
• Tabela de
Comportamento
• Protótipo
31
Versão 11 Versão 12
commit
Daniel Castellani -
danielcastellani@id.uff.br - CTDQS 2013
Trabalhos Futuros
• Monitoramento da qualidade durante o
desenvolvimento
• Padrões gerais da engenharia de software
• Predição de valores futuros
32
Daniel Castellani -
danielcastellani@id.uff.br - CTDQS 2013
OSTRA: UM ESTUDO DO HISTÓRICO DA
QUALIDADE DO SOFTWARE ATRAVÉS DE
REGRAS DE ASSOCIAÇÃO DE MÉTRICAS
Daniel D. Castellani Ribeiro
Orientador: Leonardo Murta
Co-orientador: Alexandre Plastino
Concurso de Teses e Dissertações em Qualidade de Software – CTDQS 2013

Weitere ähnliche Inhalte

Ähnlich wie SBQS 2013 - Apresentação CTDQS - Ostra - Daniel Castellani

Docker, jenkins e gradle para tomar o controle de sua entrega
Docker, jenkins e gradle para tomar o controle de sua entregaDocker, jenkins e gradle para tomar o controle de sua entrega
Docker, jenkins e gradle para tomar o controle de sua entregaHumberto Streb
 
Apostila PipeNetwork - Civil 3D
Apostila PipeNetwork - Civil 3DApostila PipeNetwork - Civil 3D
Apostila PipeNetwork - Civil 3DOsvaldo Júnior
 
O Livro Completo da Engenharia de Dados.pdf
O Livro Completo da Engenharia de Dados.pdfO Livro Completo da Engenharia de Dados.pdf
O Livro Completo da Engenharia de Dados.pdfSergio Tavares Coutinho
 
QConSP16 - Apache Cassandra Evoluindo Sistemas Distribuídos
QConSP16 - Apache Cassandra Evoluindo Sistemas DistribuídosQConSP16 - Apache Cassandra Evoluindo Sistemas Distribuídos
QConSP16 - Apache Cassandra Evoluindo Sistemas DistribuídosEiti Kimura
 
TDC2018SP | Trilha Cloud - Como eu reduzi cerca de 50% do custo de Cloud da e...
TDC2018SP | Trilha Cloud - Como eu reduzi cerca de 50% do custo de Cloud da e...TDC2018SP | Trilha Cloud - Como eu reduzi cerca de 50% do custo de Cloud da e...
TDC2018SP | Trilha Cloud - Como eu reduzi cerca de 50% do custo de Cloud da e...tdc-globalcode
 
TDCSP2018 - Trilha Cloud - Redução de custo - Flávio Pimenta
TDCSP2018 - Trilha Cloud - Redução de custo - Flávio PimentaTDCSP2018 - Trilha Cloud - Redução de custo - Flávio Pimenta
TDCSP2018 - Trilha Cloud - Redução de custo - Flávio PimentaFlávio Pimenta
 
UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castel...
 UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castel... UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castel...
UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castel...Sti Uff
 
Plano de projeto de software - SISCONI
Plano de projeto de software - SISCONIPlano de projeto de software - SISCONI
Plano de projeto de software - SISCONIocfelipe
 
Artigo - PROJETO DE UM HARDWARE ACELERADOR DO ALGORITMO DE DISTÂNCIA EUCLIDIA...
Artigo - PROJETO DE UM HARDWARE ACELERADOR DO ALGORITMO DE DISTÂNCIA EUCLIDIA...Artigo - PROJETO DE UM HARDWARE ACELERADOR DO ALGORITMO DE DISTÂNCIA EUCLIDIA...
Artigo - PROJETO DE UM HARDWARE ACELERADOR DO ALGORITMO DE DISTÂNCIA EUCLIDIA...GiovanniGuimares2
 
O comparativo de arquiteturas de software monolíticas em relação a arquitetur...
O comparativo de arquiteturas de software monolíticas em relação a arquitetur...O comparativo de arquiteturas de software monolíticas em relação a arquitetur...
O comparativo de arquiteturas de software monolíticas em relação a arquitetur...Emmanuel Neri
 
Ruby on rails
Ruby on railsRuby on rails
Ruby on railsTiago
 
Plano de projeto de software - SISCONI
Plano de projeto de software - SISCONIPlano de projeto de software - SISCONI
Plano de projeto de software - SISCONIocfelipe
 
Indo alem do_mvc_node_js
Indo alem do_mvc_node_jsIndo alem do_mvc_node_js
Indo alem do_mvc_node_jsgustavobeavis
 
plano_de_projeto_controlart_rascunho
plano_de_projeto_controlart_rascunhoplano_de_projeto_controlart_rascunho
plano_de_projeto_controlart_rascunhouserrx
 
Projetos Estruturados de Redes - Parte 1
Projetos Estruturados de Redes - Parte 1Projetos Estruturados de Redes - Parte 1
Projetos Estruturados de Redes - Parte 1José Wagner Bungart
 
ASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis PaulinoASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis PaulinoComunidade NetPonto
 

Ähnlich wie SBQS 2013 - Apresentação CTDQS - Ostra - Daniel Castellani (20)

Docker, jenkins e gradle para tomar o controle de sua entrega
Docker, jenkins e gradle para tomar o controle de sua entregaDocker, jenkins e gradle para tomar o controle de sua entrega
Docker, jenkins e gradle para tomar o controle de sua entrega
 
Apostila PipeNetwork - Civil 3D
Apostila PipeNetwork - Civil 3DApostila PipeNetwork - Civil 3D
Apostila PipeNetwork - Civil 3D
 
O Livro Completo da Engenharia de Dados.pdf
O Livro Completo da Engenharia de Dados.pdfO Livro Completo da Engenharia de Dados.pdf
O Livro Completo da Engenharia de Dados.pdf
 
QConSP16 - Apache Cassandra Evoluindo Sistemas Distribuídos
QConSP16 - Apache Cassandra Evoluindo Sistemas DistribuídosQConSP16 - Apache Cassandra Evoluindo Sistemas Distribuídos
QConSP16 - Apache Cassandra Evoluindo Sistemas Distribuídos
 
TDC2018SP | Trilha Cloud - Como eu reduzi cerca de 50% do custo de Cloud da e...
TDC2018SP | Trilha Cloud - Como eu reduzi cerca de 50% do custo de Cloud da e...TDC2018SP | Trilha Cloud - Como eu reduzi cerca de 50% do custo de Cloud da e...
TDC2018SP | Trilha Cloud - Como eu reduzi cerca de 50% do custo de Cloud da e...
 
TDCSP2018 - Trilha Cloud - Redução de custo - Flávio Pimenta
TDCSP2018 - Trilha Cloud - Redução de custo - Flávio PimentaTDCSP2018 - Trilha Cloud - Redução de custo - Flávio Pimenta
TDCSP2018 - Trilha Cloud - Redução de custo - Flávio Pimenta
 
UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castel...
 UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castel... UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castel...
UFF Tech 2013 - Benefícios e Desafios do Continuous Delivery - Daniel Castel...
 
Revista programar 17
Revista programar 17Revista programar 17
Revista programar 17
 
URA
URAURA
URA
 
Plano de projeto de software - SISCONI
Plano de projeto de software - SISCONIPlano de projeto de software - SISCONI
Plano de projeto de software - SISCONI
 
Artigo - PROJETO DE UM HARDWARE ACELERADOR DO ALGORITMO DE DISTÂNCIA EUCLIDIA...
Artigo - PROJETO DE UM HARDWARE ACELERADOR DO ALGORITMO DE DISTÂNCIA EUCLIDIA...Artigo - PROJETO DE UM HARDWARE ACELERADOR DO ALGORITMO DE DISTÂNCIA EUCLIDIA...
Artigo - PROJETO DE UM HARDWARE ACELERADOR DO ALGORITMO DE DISTÂNCIA EUCLIDIA...
 
O comparativo de arquiteturas de software monolíticas em relação a arquitetur...
O comparativo de arquiteturas de software monolíticas em relação a arquitetur...O comparativo de arquiteturas de software monolíticas em relação a arquitetur...
O comparativo de arquiteturas de software monolíticas em relação a arquitetur...
 
Ruby on rails
Ruby on railsRuby on rails
Ruby on rails
 
Plano de projeto de software - SISCONI
Plano de projeto de software - SISCONIPlano de projeto de software - SISCONI
Plano de projeto de software - SISCONI
 
Aula2
Aula2Aula2
Aula2
 
Indo alem do_mvc_node_js
Indo alem do_mvc_node_jsIndo alem do_mvc_node_js
Indo alem do_mvc_node_js
 
plano_de_projeto_controlart_rascunho
plano_de_projeto_controlart_rascunhoplano_de_projeto_controlart_rascunho
plano_de_projeto_controlart_rascunho
 
Projetos Estruturados de Redes - Parte 1
Projetos Estruturados de Redes - Parte 1Projetos Estruturados de Redes - Parte 1
Projetos Estruturados de Redes - Parte 1
 
Crystal method
Crystal methodCrystal method
Crystal method
 
ASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis PaulinoASP.Net Performance – A pragmatic approach - Luis Paulino
ASP.Net Performance – A pragmatic approach - Luis Paulino
 

Kürzlich hochgeladen

DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...IsabelPereira2010
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...azulassessoria9
 
Jogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para criançasJogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para criançasSocorro Machado
 
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdf
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdfGEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdf
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdfRavenaSales1
 
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdfApresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdfcomercial400681
 
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...azulassessoria9
 
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdfLeloIurk1
 
Revolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividadesRevolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividadesFabianeMartins35
 
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdfPROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdfHELENO FAVACHO
 
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMPRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMHELENO FAVACHO
 
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfCurrículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfTutor de matemática Ícaro
 
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfPRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfprofesfrancleite
 
Construção (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãConstrução (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãIlda Bicacro
 
Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Ilda Bicacro
 
apostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médioapostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médiorosenilrucks
 
PROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdf
PROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdfPROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdf
PROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdfHELENO FAVACHO
 
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de..."É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...Rosalina Simão Nunes
 
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdfProjeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdfHELENO FAVACHO
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...azulassessoria9
 

Kürzlich hochgeladen (20)

DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: COMUNICAÇÃO ASSERTIVA E INTERPESS...
 
Jogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para criançasJogo de Rimas - Para impressão em pdf a ser usado para crianças
Jogo de Rimas - Para impressão em pdf a ser usado para crianças
 
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdf
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdfGEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdf
GEOGRAFIA - COMÉRCIO INTERNACIONAL E BLOCOS ECONÔMICOS - PROF. LUCAS QUEIROZ.pdf
 
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdfApresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
Apresentação ISBET Jovem Aprendiz e Estágio 2023.pdf
 
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
 
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
 
Revolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividadesRevolução russa e mexicana. Slides explicativos e atividades
Revolução russa e mexicana. Slides explicativos e atividades
 
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdfPROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
PROJETO DE EXTENSÃO I - TERAPIAS INTEGRATIVAS E COMPLEMENTARES.pdf
 
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEMPRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
PRÁTICAS PEDAGÓGICAS GESTÃO DA APRENDIZAGEM
 
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdfCurrículo - Ícaro Kleisson - Tutor acadêmico.pdf
Currículo - Ícaro Kleisson - Tutor acadêmico.pdf
 
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfPRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
 
Construção (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãConstrução (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! Sertã
 
Aula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIXAula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIX
 
Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"Nós Propomos! " Pinhais limpos, mundo saudável"
Nós Propomos! " Pinhais limpos, mundo saudável"
 
apostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médioapostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médio
 
PROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdf
PROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdfPROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdf
PROJETO DE EXTENÇÃO - GESTÃO DE RECURSOS HUMANOS.pdf
 
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de..."É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
 
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdfProjeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
Projeto_de_Extensão_Agronomia_adquira_ja_(91)_98764-0830.pdf
 
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
PROVA - ESTUDO CONTEMPORÂNEO E TRANSVERSAL: LEITURA DE IMAGENS, GRÁFICOS E MA...
 

SBQS 2013 - Apresentação CTDQS - Ostra - Daniel Castellani

  • 1. OSTRA: UM ESTUDO DO HISTÓRICO DA QUALIDADE DO SOFTWARE ATRAVÉS DE REGRAS DE ASSOCIAÇÃO DE MÉTRICAS Daniel D. Castellani Ribeiro Orientador: Leonardo Murta Co-orientador: Alexandre Plastino Concurso de Teses e Dissertações em Qualidade de Software – CTDQS 2013
  • 2. Ciclo de vida do software Definição Desenvolvimento Manutenção 60% do tempo 90% do custo 2 Daniel Castellani - danielcastellani@id.uff.br - CTDQS 2013
  • 4. Motivação • Monitorar a qualidade do produto para garanti-la • Entender sobre quais fatores influenciam a qualidade 4 Daniel Castellani - danielcastellani@id.uff.br - CTDQS 2013
  • 6. Gerência de Configuração 6 Commit Revisão Versionamento Construção Daniel Castellani - danielcastellani@id.uff.br - CTDQS 2013
  • 7. Métricas de Software 7 Métricas de Software Processo Projeto Produto Daniel Castellani - danielcastellani@id.uff.br - CTDQS 2013
  • 8. QMOOD Modelo de qualidade para Arquiteturas Orientadas a Objetos 6 11 11 Atributos de Qualidade Propriedades Métricas Componentes 8 Efetividade Entendimento Extensibilidade Flexibilidade Funcionalidade Reusabilidade Daniel Castellani - danielcastellani@id.uff.br - CTDQS 2013
  • 9. Grande Quantidade de Dados • Software – 1500 commits • Métricas – 30 • Informação – 45.000 medições 9 5.673 commits 30 métricas 170.190 medições Daniel Castellani - danielcastellani@id.uff.br - CTDQS 2013
  • 10. Mineração de Dados: Regras de Associação • Medidas de Interesse – Suporte – Confiança – Lift João ↓ Complexity Segunda Não Compila 10 Daniel Castellani - danielcastellani@id.uff.br - CTDQS 2013
  • 11. Objetivos 1. Fornecer informações relevantes à tomada de decisões gerenciais 2. Auxiliar o monitoramento da qualidade 3. Identificar padrões evolutivos 11 Daniel Castellani - danielcastellani@id.uff.br - CTDQS 2013
  • 12. Abordagem: Visão Geral 12 Daniel Castellani - danielcastellani@id.uff.br - CTDQS 2013
  • 13. Fase de Medição 13 Daniel Castellani - danielcastellani@id.uff.br - CTDQS 2013
  • 14. Cerca de 30 Métricas • Métricas Simples (Diretas) – 11 de QMOOD – Outras • Complexidade Ciclomática de McCabe (TCC) • LOC • Número de Métodos (NOM) • Métricas Compostas (Indiretas) – 6 Atributos de Qualidade – Densidade de Complexidade (= TCC / NOM) 14 Daniel Castellani - danielcastellani@id.uff.br - CTDQS 2013
  • 15. Delta Versão 11 Versão 12 commit 260,000 +1.000 Modification 15 Daniel Castellani - danielcastellani@id.uff.br - CTDQS 2013 261,000
  • 16. Fase de Mineração – Quem: • Desenvolvedor – Quando • Hora • Turno de trabalho • Dia da semana – Como • Quantidade de arquivos • Métricas 16 Daniel Castellani - danielcastellani@id.uff.br - CTDQS 2013
  • 17. Fase de Apresentação 17 Fase de Apresentação Gráficos do Histórico Regras de Associação Tabela de Comportamento Daniel Castellani - danielcastellani@id.uff.br - CTDQS 2013
  • 18. Experimento 1: Regras Sobre a Evolução • Questão de Pesquisa: A mineração de dados é capaz de obter informações relevantes sobre a evolução do projeto? • Métricas: TCC, Reu, Ent, LOC e DSC. • Metadados do commit: hora, desenv. e compila. Projeto Quantidade de Desenvolvedores Quant. de Artefatos Revisões que compilam Revisões que não compilam Total de revisões Ultima revisão medida Maven Javadoc Plugin 21 795 248 81 329 1232525 Maven GWT Plugin 6 463 252 60 312 14772 IdUFF 31 1068 1355 154 1509 22695 Publico-core 21 117 127 7 134 21633 19 Daniel Castellani - danielcastellani@id.uff.br - CTDQS 2013
  • 19. Regras Positivas do IdUFF # Regra Sup. Conf. Lift Base 1 Se a quantidade de classes aumenta, Então nove ou mais artefatos alterados. 0,14 0,72 3,11 B 2 Se a quantidade de linhas de código diminui, Então o entendimento aumenta. 0,03 0,20 2,86 B 3 Se a reusabilidade diminui, Então o entendimento aumenta. 0,02 0,17 2,43 B 4 * Se a quantidade de classes aumenta, Então a reusabilidade aumenta. 0,15 0,77 2,23 B 5 Se Tywin faz alterações, Então três ou quatro artefatos alterados. 0,01 0,28 2,00 B 6 Se Stannis faz alterações, Então nove ou mais artefatos alterados. 0,01 0,39 1,76 A 7 Se Robb faz alterações, Então complexidade diminui. 0,01 0,43 1,43 A 8 * Se Stannis faz alterações, Então a complexidade diminui. 0,01 0,36 1,20 A 9 * Se Tywin faz alterações, Então compila. 0,03 1,0 1,11 A 10 Se Renly faz alterações, Então compila. 0,02 1,0 1,11 A 20 8. Stannis é um desenvolvedor experiente que faz refatorações. 4. Foco em reusabilidade pela equipe bem sucedido. 9. Tywin sempre se preocupou em publicar código que funciona. Daniel Castellani - danielcastellani@id.uff.br - CTDQS 2013
  • 20. Regras Negativas do IdUFF # Regra Sup. Conf. Lift Base 1 Se a quantidade de classes diminui, Então a reusabilidade diminui. 0,01 0,75 4,61 B 2 * Se Jofrey faz alterações, Então não compila. 0,01 0,32 3,22 A 3 Se Stannis faz alterações, Então a quantidade de linhas de código diminui. 0,01 0,41 2,65 B 4 Se Tyrion faz alterações, Então a complexidade aumenta. 0,00 1,0 2,30 B 5 Se o commit é na sexta-feira, então a reusabilidade diminui. 0,02 0,3 2,05 B 6 * Se a quantidade de classes aumenta, Então o entendimento diminui. 0,18 0,94 2,04 B 7 * Se o commit é na sexta-feira , Então não compila. 0,15 0,11 1,50 A 8 Se Renly faz alterações, Então a complexidade aumenta. 0,01 0,5 1,33 A 9 Se Tommem faz alterações, Então a complexidade aumenta. 0,03 0,45 1,21 A 10 Se o commit é no turno da noite, Então não compila. 0,02 0,12 1,20 A 21 0,00% 8,33% 11,17% 10,65% 9,15% 11,79% 0,00% 7,30% 0,00% 5,00% 10,00% 15,00% Domingo Segunda-feira Terça-feira Quarta-feira Quinta-feira Sexta-feira Sábado Geral Taxa de Não Compilação Daniel Castellani - danielcastellani@id.uff.br - CTDQS 2013
  • 21. Experimento 2: Monitoramento da Qualidade • Projeto: IdUFF 1 2 3 22 Daniel Castellani - danielcastellani@id.uff.br - CTDQS 2013
  • 22. Experimento 2: Monitoramento da Qualidade - Delta 1 3 2 23 Daniel Castellani - danielcastellani@id.uff.br - CTDQS 2013
  • 23. 1 3 2 Experimento 2: Monitoramento da Qualidade 1 3 2 24 Daniel Castellani - danielcastellani@id.uff.br - CTDQS 2013
  • 24. Experimento 2: Monitoramento da Qualidade 1 3 2 25 1 3 2 Daniel Castellani - danielcastellani@id.uff.br - CTDQS 2013
  • 25. Experimento 3: Padrões Gerais • Comparação com a literatura • 16 projetos • Questão de Pesquisa: A mineração de dados é capaz de obter informações relevantes sobre o relacionamento entre métricas de software? Projeto Quantidade de Desenvolvedores Quant. De Artefatos LOC (Java) Revisões que compilam Total de revisões Ultima revisão medida Acadêmico Pós Graduação Core 9 221 10.413 102 142 4.196 IdUFF 31 1.068 151.621 1.355 1.509 22.695 Maven Changes Plugin* 10 686 8.188 230 259 1.140.265 Maven GWT Plugin* 6 463 10.816 252 312 14.772 Maven Javacc Plugin* 6 759 6.575 129 136 10.774 Maven Javadoc Plugin* 21 795 17.775 248 329 1.232.525 Maven Native Plugin* 4 1.305 9.403 148 163 13.690 Maven Nbm Plugin* 5 1.433 6.916 210 230 14.751 Maven PMD Plugin* 14 806 2.610 104 110 1.159.144 Maven Project Info Reports Plugin* 13 32 8.770 160 240 1.152.589 Maven Shade Plugin 12 84 6.650 102 104 1.300.217 Maven Versions Plugin* 6 143 17.537 182 198 13.376 Monitoria Core 6 143 10.246 133 445 23.628 Oceano Core 6 418 29.181 214 228 1.075 Oceano Web 6 117 10.984 117 179 1.077 Publico Core 21 117 9.183 127 134 21.633 26 Daniel Castellani - danielcastellani@id.uff.br - CTDQS 2013
  • 26. Análise Geral Comportamento Confirmações Negações A manutenibilidade afeta positivamente a flexibilidade 15 0 A flexibilidade afeta positivamente a manutenibilidade 15 0 Comportamento Confirmações Negações A flexibilidade afeta negativamente a integridade 0 15 29 Indicado por Wiegers (2003) Encontrado Daniel Castellani - danielcastellani@id.uff.br - CTDQS 2013
  • 27. Principais Ameaças à validade • Quantidade de amostras – Apenas indícios de padrões gerais • Mapeamento de Wiegers • Fórmulas dos Atributos de Qualidade 30 Daniel Castellani - danielcastellani@id.uff.br - CTDQS 2013
  • 28. Contribuições Principais • Abordagem – Mineração – Métricas – Commits • Tabela de Comportamento • Protótipo 31 Versão 11 Versão 12 commit Daniel Castellani - danielcastellani@id.uff.br - CTDQS 2013
  • 29. Trabalhos Futuros • Monitoramento da qualidade durante o desenvolvimento • Padrões gerais da engenharia de software • Predição de valores futuros 32 Daniel Castellani - danielcastellani@id.uff.br - CTDQS 2013
  • 30. OSTRA: UM ESTUDO DO HISTÓRICO DA QUALIDADE DO SOFTWARE ATRAVÉS DE REGRAS DE ASSOCIAÇÃO DE MÉTRICAS Daniel D. Castellani Ribeiro Orientador: Leonardo Murta Co-orientador: Alexandre Plastino Concurso de Teses e Dissertações em Qualidade de Software – CTDQS 2013