Top Banner
1 Paulo R. M. Meirelles IME-USP 27 de Junho de 2009 FISL 10 Porto Alegre, Brasil JaBUTi/Crab: JaBUTi/Crab: Ferramentas para Testes Ferramentas para Testes e Métricas de Software e Métricas de Software
87

JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

Dec 13, 2018

Download

Documents

tranmien
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

1

Paulo R. M. MeirellesIME-USP

27 de Junho de 2009 FISL 10

Porto Alegre, Brasil

JaBUTi/Crab:JaBUTi/Crab:Ferramentas para Testes Ferramentas para Testes e Métricas de Softwaree Métricas de Software

Page 2: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

2

O que veremos...O que veremos...•Agenda•Software Livre é mais livre com Testes

Automatizados• JaBUTi- Formando um comunidade ...

•Andamento do Projeto Mangue- Crab

Page 3: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

3

DefiniçõesDefinições•Medida•Avaliação em relação a um padrão

•Métrica•Método para se certificar de um atributo•Composta de uma ou mais medida

•Indicador•Variável que interpreta uma métrica- Ex: Alta cobertura pode indicar que o software é

de qualidade

•Teste ...

Page 4: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

4

PesquisaPesquisa•AgilCoop - CNPQ

Page 5: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

5

MétricasMétricas•Entender o andamento do desenvolviment•Feedback•Comunicação•Problemas- Identificar, Acompanhar e Resolver

•Qualidades- Identificar, Acompanhar e Exibir

•Gerenciar

Page 6: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

6

Definir MétricaDefinir Métrica•GQM•Goal ­> Question ­> Metric•Exemplo:- G: Desenvolver software com qualidade.- Q: O software está bem testado?- M:- Cobertura dos testes +- Número de asserções + - Número de testes falhando

Page 7: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

7

CoberturaCobertura

Page 8: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

8

TestabilidadeTestabilidade

Page 9: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

9

FerramentasFerramentas•Eclipse Metrics:•http://metrics.sourceforge.net/update

•Eclipse Eclemma:•http://update.eclemma.org

•Testability Explorer:•http://code.google.com/p/testability­

explorer

•Selenium•http://seleniumhq.org/

Page 10: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

10

JaBUTiJaBUTi•Versões•Código Java• J2ME• JaBUTi Service- Integrada ao QualipsoFactory

Page 11: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

11

JaBUTiJaBUTi

Page 12: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

12

MANGUEMANGUE•Projeto de Doutorado•Ciência da Computação no IME-USP- Projeto do CCSL-USP- Contexto do Projeto Qualipso

•Orientador: Prof. Dr. Fabio Kon• Início: 03/2008•Qualificação: 2009.2•Previsão de Conclusão: 2011.2•Bolsa: CNPQ desde 08/2008

Page 13: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

13

MANGUEMANGUE•Motivação• Crescente aumento do uso e desenvolvimento do

FLOSS (Freely-Licensed Open Source Software)

Page 14: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

14

MANGUEMANGUE•Motivação•Comunidades FLOSS- ... de todos os tipos e níveis

Page 15: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

15

MANGUEMANGUE•Motivação• Ecossistema do FLOSS- Quantidade de FLOSS disponíveis- SourceForge em 2007/2008: » 167.643 projetos» 1.776.733 usuários e desenvolvedores cadastrados

- 1% de Sucesso?» Se aumentarmos para 10%...

- UE: 80% do $ em serviços- Estratégico para UE (e Brasil?)

Page 16: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

16

MANGUEMANGUE•Motivação•Como “convencer a usar”/escolher um

determinadado software?

Page 17: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

17

MANGUEMANGUE•Motivação•Como “convencer a usar”/escolher um

determinadado software?

Page 18: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

18

MANGUEMANGUE•Problema•Avaliar rapidamente programas e códigos

de terceiros- Semelhante quando surgiu o Outsourcing

•Falta de critérios objetivos para avaliar a confiabilidade do FLOSS

Page 19: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

19

MANGUEMANGUE•Questões a serem respondidas•Como é possível medir a qualidade de

produtos de software para ajudar na escolha de um deles?

•Que características são relevantes para avaliação de um FLOSS?

•Quais são as métricas de qualidade de um FLOSS?

Page 20: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

20

MANGUEMANGUE•Questões a serem respondidas•Quais métricas são apropriadas para

avaliação de código-fonte de um FLOSS?•Como comparar FLOSS similares?•Como automatizar a avaliação da

qualidade e o que pode ser automático?•Como verificar a eficiência das métricas e

da automação da avaliação?

Page 21: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

21

AgendaAgenda•Objetivo•Mais problemas•Metodologia•Pesquisa de campo•Projetos relacionados•1ª Ferramenta do Mangue: Crab

Page 22: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

22

MANGUEMANGUE•Objetivo•Composição de métricas- Combinação de métricas podem representar uma

característica significativa do software

•Definir novas métricas

Page 23: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

23

MANGUEMANGUE•Objetivo•Desenvolver uma ferramenta de avaliação

automática da qualidade de código-fonte - métricas combinadas e configuradas por

especialistas- análise automática de características como

flexibilidade, clareza, modularidade e manutenibilidade do software

•Adaptar à ferramentas existentes

Page 24: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

24

MANGUEMANGUE•Objetivo•Aumento da qualidade do FLOSS•Facilitar a comparação entre FLOSS•Aumento da adoção de FLOSS pela indústria

de software

Page 25: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

25

MANGUEMANGUE•Mais problemas•Código-Fonte é o principal artefato do

FLOSS- Metodologias e métricas baseada na

documentação do processo do software não se aplicada

Page 26: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

26

MANGUEMANGUE•Mais problemas•Métricas existem há decadas...- “In the past, most metrics have been defined by

an individual and then tested and used only in a very limited environment (...). Currently, useful metrics and models cannot be pulled off the shelf and used indiscriminately, careful application of available metrics and models can yield to useful results if they are tuned to a particular environment (...)” [SEI, 1988].

Page 27: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

27

MANGUEMANGUE•Mais problemas•Ferramentas de Métricas ...

Page 28: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

28

MANGUEMANGUE•Metodologia•Análise estatística- Correlação significativa de métricas X

características com a qualidade do FLOSS

•Experimentos controlados- Ferramentas existentes- Novas ferramentas

Page 29: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

29

MANGUEMANGUE•Metodologia•Levantamento do estado-da-arte em

métricas de software•Estudo das métricas e metodologias usadas

em outros projetos e ferramentas•Coleta de opinião especialistas em FLOSS e

métodos ágeis•Pesquisa de campo com especialista em

desenvolvimento de software- GQM: Qualipso Europa

Page 30: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

30

MANGUEMANGUE•Pesquisa com Especialistas•Questionário com 123 perguntas- 9 pessoais- 28 profissionais- 106 métricas e características listadas- Dividido em 16 grupos» Código-fonte(24), Testes(11), Comunidade(12),

Manutenibilidade(11), Interoperabilidade(3), Portabilidade(2), Usabilidade(5), Ferramentas(4), Independência(2), Confiança(6), Funcionalidades(5), Satisfação(4), Documentação(6), Suporte(4), Treinamento(4), Canais de distribuição e licenças(2)

- Notas: 1-Irrelevante ... 10-Essencial

Page 31: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

31

MANGUEMANGUE•Pesquisa com Especialistas•38 entrevistados - ...de 80 convidados por e-mail- 8 gerentes- 13 lideres de projetos FLOSS- 22 com mais de 10 anos de experiência- 16 com menos de 10 anos de experiência- 11 Mestrado e Doutorado

Page 32: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

32

PesquisaPesquisa

Download do código-fonte e binários

Page 33: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

33

PesquisaPesquisa

Uso de padrões da indústria e protocolos

bem disseminados

Page 34: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

34

PesquisaPesquisa

Módulo para configurações

Page 35: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

35

PesquisaPesquisa

Scripts para configuração do

processo de build

Page 36: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

36

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Código-Fonte

Módulo para configurações

(não espalhados pelo código)

Page 37: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

37

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Código-Fonte

Separação em Módulos

Page 38: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

38

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Código-Fonte

Existência de comentários no código

(cobertura e distribuição no código)

Page 39: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

39

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Código-Fonte

Uso de bons nomes para classes,

métodos, variáveis

Page 40: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

40

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Código-Fonte

Padrões de nomenclatura

usados uniformemente

Page 41: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

41

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Código-Fonte

Cobertura dos testes

Page 42: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

42

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Código-Fonte

Sem duplicação de Código

Page 43: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

43

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Código-Fonte

Nível de coesão entre módulos/

classes do sistema

Page 44: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

44

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Código-Fonte

Nível de acoplamento

Page 45: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

45

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Código-Fonte

Estruturas de dados

utilizadas

Page 46: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

46

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Código-Fonte

Estilo uniforme de indentação

Page 47: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

47

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Código-Fonte

Número de testes por método ou

função

Page 48: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

48

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Código-Fonte

Número de testes por linha

de código

Page 49: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

49

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Código-Fonte

Número de linhas em cada

método

Page 50: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

50

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Código-Fonte

Número de métodos em cada classe

Page 51: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

51

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Código-Fonte

Número de linhas de testes

Page 52: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

52

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Código-Fonte

Número de linhas em cada

classe

Page 53: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

53

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Código-Fonte

Número de atributos em cada classe

Page 54: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

54

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Código-Fonte

Número de colunas por linha não muito grande

Page 55: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

55

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Código-Fonte

Complexidade Ciclomática

Page 56: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

56

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Código-Fonte

Número de variáveis locais em

cada método

Page 57: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

57

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Código-Fonte

Número de métodos ou

funções

Page 58: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

58

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Código-Fonte

Número de classes (ou arquivos ou

módulos)

Page 59: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

59

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Código-Fonte

Número total de linhas de código

Page 60: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

60

MANGUEMANGUE•Aquele problema•Ferramentas de Métricas ...

Page 61: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

61

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Testes

Existência de testes automatizados

Page 62: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

62

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Testes

Existência de testes de

desempenho (benchmarks)

Page 63: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

63

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Testes

Estudo sobre o consumo de recursos (disco, memória...)

Page 64: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

64

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Testes

Relatos dos experimentos de

desempenho

Page 65: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

65

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Testes

Testabilidade do código (facilidade de

escrever testes)

Page 66: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

66

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Testes

Uso de um arcabouço de testes

Page 67: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

67

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Testes

Tipos de teste disponíveis

Page 68: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

68

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Testes

Estudo sistemático sobre o tempo de

resposta

Page 69: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

69

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Testes

Publicação dos resultados dos testes

Page 70: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

70

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Testes

Existência de um subgrupo (comunidade

ou pessoa) especializado em testes

Page 71: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

71

MANGUEMANGUE•Pesquisa com Especialistas•Análise estatística: Testes

Testes de mutação

Page 72: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

72

MANGUEMANGUE•Outros projetos

- FlossMetrics- Ohloh- Qualoss- QSOS- SQO-OSS- Fossology- ETICS

•Mais focados em metodologias- Avaliações subjetivas

Page 73: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

73

MANGUEMANGUE•Ferramenta: Crab (caranguejo)•Módulo de Configuração e Interpretação de

Métricas de Software- Independente para ferramentas de métricas Java- JaBUTi, Metrics, CheckStyle...

- Carrega métricas de uma ferramenta- Define intervalos e categoria de cada métrica- Definição de nota e classificação de cada intervalo

- Resultado geral do programa analisado- Nota final da avaliação- Detalhamento por classe

Page 74: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

74

CRABCRAB

Page 75: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

75

CRABCRAB

Page 76: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

76

CRABCRAB

Page 77: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

77

CRABCRAB

Page 78: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

78

CRABCRAB

Page 79: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

79

CRABCRAB

Page 80: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

80

CRABCRAB

Page 81: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

81

CRABCRAB

Page 82: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

82

CRABCRAB

Page 83: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

83

MANGUEMANGUE•Resultados Parciais•Monografia •Pesquisa com especialistas- Análise estatística- Delimitação do escopo do projeto

•Versão 0.1 da Ferramenta Crab- Acoplada à JaBUTi

•Artigos- Workshop de Teses do SBQS- Submissão para Sessão Ferramentas SBES

Page 84: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

84

MANGUEMANGUE•Links•http://ccsl.ime.usp.br/mangue•http://ccsl.ime.usp.br/mangue/crab•svn://ccsl.ime.usp.br/jabutimetrics- /trunk/JabutiMetrics- JaBUTi em LGPL- Crab em BSD

•Material sobre Testes•http://ccsl.ime.usp.br/agilcoop/- Parte do conteúdo apresentado- Paulo Cheque e Fabio Kon

Page 85: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

85

AgradecimentosAgradecimentos

IME-USPhttp://www.ime.usp.brCCSL-USPhttp://ccsl.ime.usp.brQualipsohttp://www.qualipso.orghttp://qualipso.icmc.usp.brCNPQhttp://www.cnpq.br

Page 86: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

86

ContatoContato

Paulo [email protected]

Centro de Competência em Software Livre da USP

[email protected]

Page 87: JaBUTi/Crab: Ferramentas para Testes e Métricas de Softwareccsl.ime.usp.br/files/fisl10.pdf · Tipos de teste disponíveis . 68 ... Métricas de Software - Independente para ferramentas

87

DiscussãoDiscussão

!?