Testes de Caixa Branca e Métricas de Código

477 visualizações

Publicada em

Apresentação do Seminário da disciplina de Qualidade de Software.

Publicada em: Tecnologia
0 comentários
2 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
477
No SlideShare
0
A partir de incorporações
0
Número de incorporações
9
Ações
Compartilhamentos
0
Downloads
9
Comentários
0
Gostaram
2
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide
  • Custo maior devido aos testes serem baseados na implementação, porque se a implementação mudar todo o teste deverá ser refeito.
    Custo por exigir o conhecimento interno do sistema, porque requer um conhecimento maior por parte do testador.
  • Testes de Caixa Branca e Métricas de Código

    1. 1. Teste de Caixa Branca e Métricas de Código Dupla: Aricelio e Késia Instituto Federal do Norte de Minas Gerais - Campus Januária Curso: Tecnologia em Análise e Desenvolvimento de Sistemas Disciplina: Qualidade de Software Prof.: Petrônio C. L. S.
    2. 2. Sumário ● Teste de Caixa Branca. ● Métricas de Código. ● DoctorJ - Java Analyzer. ● Ferramenta JDepend. ● Referências. ● Demonstração prática.
    3. 3. Testes de Software ● O teste do software é a investigação do software a fim de fornecer informações sobre sua qualidade em relação ao contexto em que ele deve operar. ● Isso inclui o processo de utilizar o produto para encontrar seus defeitos.
    4. 4. Teste de Caixa Branca
    5. 5. Teste de Caixa Branca ● Teste de caixa-branca é uma técnica de teste que usa a perspectiva interna do sistema para modelar os casos de teste, [6]. ● O analista tem acesso ao código fonte, conhece a estrutura interna do produto sendo analisado e possibilita que sejam escolhidas partes específicas de um componente para serem avaliadas, [7].
    6. 6. Teste de Caixa Branca ● O Teste de caixa-branca é aplicável nas fases de unidade, integração, regressão e sistema do processo de teste, e geralmente usado na fase de unidade. ● Estratégias usadas no teste de caixa-branca incluem o teste de fluxo de controle, fluxo de dados e ramificação da execução, além da análise estática.
    7. 7. Teste de Caixa Branca ● Vantagem: Como a estrutura interna é usada como referência, é fácil encontrar os valores de entrada mais úteis para o teste, o que ajuda na otimização geral do sistema. ● Custo maior devido aos testes serem baseados na implementação e também exigir o conhecimento interno do sistema.
    8. 8. Métricas de Código
    9. 9. Métricas de Código ● São ferramentas com as quais se é possível obter uma visão de mais alto nível de todo o sistema, com abstrações mais adequadas. ● E através dessas abstrações, gerar gráficos, relatórios, matrizes, entre outros.
    10. 10. Métricas de Código ● As Métricas de Código não estão relacionadas apenas com o software em si, mas também com os processos de desenvolvimento e manutenção do mesmo. ● Consegue-se, a partir das métricas, dados quantitativos que oferecem uma boa informação sobre o andamento da construção.
    11. 11. Métricas de Código A partir desses dados é possível: ● Estimar custos. ● Avaliar tendências. ● Melhorar o design. ● Até mesmo ter noção sobre a qualidade do sistema produzido.
    12. 12. Métricas de Código Através das métricas de código pode-se conhecer: ● A complexidade. ● Tamanho. ● Quantidade de métodos. ● Nível de coesão. ● Grau de acoplamento entre classes. ● E inúmeras outras possibilidades.
    13. 13. Métricas de Código Em resumo as métricas são usadas para: ● Analisar qualidade e produtividade do processo de desenvolvimento e manutenção bem como do produto de software construído; ● Qualificar a performance técnica dos produtos do ponto de vista do desenvolvedor. ● Embasar solicitações de novas ferramentas e treinamentos
    14. 14. Métricas de Código ● Medidas funcionais são necessárias para qualificar a performance dos produtos pela perspectiva do usuário. ● Utilizadas para comparar a produtividade de diferentes técnicas e tecnologias. ● Entender e aperfeiçoar o processo de desenvolvimento. ● Reduzir frustrações e pressões de cronograma.
    15. 15. DoctorJ - Java Analyzer
    16. 16. DoctorJ - Java Analyzer ● DoctorJ é uma ferramenta que analisa o código Java e sua documentação, a fim de encontrar descuidos e erros comuns que a ferramenta javadoc não encontra. ● É um software de código aberto. ● É gratuito tanto para uso pessoal e comercial.
    17. 17. DoctorJ - Java Analyzer ● A última versão foi lançada em 2006 e é compatível com todos os sistemas operacionais POSIX (Linux / BSD / UNIX-like).
    18. 18. Ferramenta JDepend
    19. 19. JDepend ● O JDepend é uma ferramenta que analisa classes Java e gera métricas sobre a qualidade do "Design" para cada package Java, [8]. ● O JDepend permite a equipe de Qualidade automaticamente mensurar a qualidade do "Design" em termos de suas extensibilidades, reusabilidade e manutenibilidade para controle efetivo das dependências dos packages Java.
    20. 20. JDepend ● Exemplo de Relatório:
    21. 21. JDepend Esse relatório corresponde a um relatório resumido com as métricas obtidas pelo JDepend. Os campos da tabela podem ser interpretados da seguinte forma: ● TC: Número total de classes. ● CC: Número total de classes concretas. ● AC: Número total de classes abstratas. ● Ca: Acoplamento Aferente - número total de classes de fora de um pacote que dependem de classes de dentro do pacote.
    22. 22. JDepend ● Ce: Acoplamento Eferente - O número total de classes de dentro de um pacote que dependem de classes de fora do pacote. ● A: Nível de Abstração – Mede o quanto abstrato é um pacote.
    23. 23. JDepend ● I: instabilidade - Mede a instabilidade de pacotes, onde a estabilidade é medida calculando o esforço para mudar um pacote sem gerar impacto em outros pacotes dentro da aplicação. ● D: Distância da Seqüência Principal – Este valor relaciona a Abstração e a Instabilidade.
    24. 24. Dúvidas?
    25. 25. Referências [1] DANIEL, L. Code metrics (parte 1) – Métricas de código são aliadas do arquiteto. Fev 2012. Disponível em: <http://leandrodaniel.com/index.php/code-metrics-parte-1-metricas-de-codigo-sao- aliadas-do-arquiteto/>. Acesso em: 17 Set. 2014. [2] DANTAS, Aldimar. Engenharia de Software - Tipos de Testes (Caixa Preta, Caixa Branca). Jul 2013. Disponível em: <http://pt.slideshare.net/adilmar/engenharia-de-software-ii-testes>. Acesso em: 17 Set. 2014. [3] ANICHE, M. Métricas de código, pra que te quero?. Jun 2013. Disponível em: <http://pt.slideshare.net/mauricioaniche/mtricas-de-cdigo-pra-que-te-quero>. Acesso em: 17 Set. 2014. [4] Why Use JDepend?. Disponivel em: <http://clarkware.com/software/JDepend.html>. Acesso em 17 Set. 2014. [5] LINS, Julio César. Métricas de Qualidade com JavaNCSS e JDepend. Disponível em: <http://www.devmedia.com.br/metricas-de-qualidade-com-javancss-e-jdepend/8825>. Acesso em: 17 Set. 2014.
    26. 26. Referências [6] JUNIOR, Pasteur Ottoni de Miranda. Testes de Caixa Branca e Testes de Caixa Preta. Disponível em: <http://www.google.com.br/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&ved=0CCQQFjAB&u rl=http%3A%2F%2Fwww.tesestec.com.br%2Fpasteurjr%2FTCPB.pdf&ei=A0gpVOL9KJO-ggSIoYL4CQ& usg=AFQjCNEkoQfLnw7nkgq6D7f6tLIjbWIOXQ&bvm=bv.76247554,d.eXY>. Acesso em: 29 Set. 2014. [7] Conceitos: Testes de Caixa Branca e Testes de Caixa Preta. Jul 2014. Disponível em: <http://crowdtest.me/teste-caixa-branca-caixa-preta/>. Acesso em: 29 Set. 2014. [8] HENRIQUES, Carine Gomes, COSTA, Maurício. JDepend. Disponível em: <http://webserver2.tecgraf.puc-rio. br/~ismael/Cursos/Senac_MTSW/aulas/Modulo2_TecnicasDesnvolvimentoAgeis/4- Metricas/maven2/jdepend/JDepend.doc.>. Acesso em: 29 Set. 2014.
    27. 27. Demonstração Prática

    ×