A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

CAMPUS NATAL-CENTRAL DIRETORIA DE EDUCAÇÃO E TECNOLOGIA DA INFORMAÇÃO

Apresentações semelhantes


Apresentação em tema: "CAMPUS NATAL-CENTRAL DIRETORIA DE EDUCAÇÃO E TECNOLOGIA DA INFORMAÇÃO"— Transcrição da apresentação:

1 INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE
CAMPUS NATAL-CENTRAL DIRETORIA DE EDUCAÇÃO E TECNOLOGIA DA INFORMAÇÃO Implementação do Siga-Pattern no SIGAEPCT-EDU através de Análise Estática de Código utilizando a Ferramenta FindBugs Plugin José Roberto de Melo Filho Orientadora: Prof.ª Ms. Marília Aranha Freire Co-orientador: Ms. Wanderson Câmara dos Santos 18 de julho de 2011

2 Sumário Introdução Análise Estática Arquitetura Eclipse Plugin
FindBugs

3 Sumário Padrões Criando um Detector do FindBugs Plugin para utilização no SIGA-EDU Conclusão

4 Introdução: Objetivos do Estudo e Implementação
O principal objetivo deste trabalho consiste na criação de um detector utilizando a Análise Estática em conjunto com a ferramenta FindBugs Plugin e como esse detector pode ajudar no processo de desenvolvimento do sistema SIGA- EDU.

5 Introdução: Motivação para a criação do detector
Necessidade para a equipe de desenvolvimento do SIGA-EDU a agilidade no processo de verificação e validação. Ferramenta Open-Source. O QUE É O SIGA-EDU QUEM MANTÉM

6 Introdução: Motivação para a criação do detector
Ótimo desempenho da ferramenta na detecção de falhas no sistema. Fácil integração do FindBugs com as ferramentas utilizadas no desenvolvimento do sistema.

7 Análise Estática Processo realizado por uma ferramenta em um programa sem necessidade de execução do mesmo. Análise em Código Fonte versus Código Compilado. FALAR SOBRE AS COMPARAÇÕES COM equals() CODIGO-FONTE  ANÁLISE DOS BUGS ESTÁ EM CONFORMIDADE CÓDIGO CODIGO-COMPILADO  MAIS RÁPIDO

8 Análise Estática Falsos Positivos & Falsos Negativos Penalidades
Ferramentas de análise estática FindBugs X outras ferramentas

9 Eclipse IDE Histórico da plataforma
Plataforma para a integração de ferramentas de desenvolvimento. Independência de Sistema Operacional.

10 FindBugs Ferramenta de Análise Estática
Utiliza a biblioteca BCEL para verificar o bytecode. Formado por duas partes: Engine e Front-ends Engine: Núcleo da ferramenta Front-ends: Subdividem em Task para ANT, Plugin para Eclipse e aplicação stand-alone.

11 Padrões Evita a utilização de técnicas não-orientadas a objetos.
Bug Patterns são padrões de comportamentos errôneos Detectores de Bug Patterns Bug-patterns agrupam-se em categorias. São identificados por pequenos códigos no arquivo findbugs.xml.

12 Criando um Detector do FindBugs Plugin para utilização no SIGA-EDU
Situação Classes “EJB” Classes “DAO”

13 Criando um Detector do FindBugs Plugin para utilização no SIGA-EDU
Ambiente de desenvolvimento Java JDK com variáveis de ambiente configuradas JDK 1.5 ou mais nova Eclipse Galileo 3.5.0 FindBugs source qualifier

14 Criando um Detector do FindBugs Plugin para utilização no SIGA-EDU
Configurando o FindBugs Plugin findbugs.xml messages.xml SIGADetector.java

15 Criando um Detector do FindBugs Plugin para utilização no SIGA-EDU
Configurando o FindBugs Plugin findbugs.xml Configuração da classe do detector Tag <Detector> Instancia todos os detectores definidos por essa tag Tag <BugPattern> Especifica o tipo de bug que será retornado

16 Criando um Detector do FindBugs Plugin para utilização no SIGA-EDU
Configurando o FindBugs Plugin messages.xml Definição da nossa categoria: SIGAEDU

17 Criando um Detector do FindBugs Plugin para utilização no SIGA-EDU
Configurando o FindBugs Plugin messages.xml Definição do nosso detector no arquivo messages.xml

18 Criando um Detector do FindBugs Plugin para utilização no SIGA-EDU
Configurando o FindBugs Plugin messages.xml Definição das mensagens visíveis para os bug patterns identificados pelos conteúdos do atributo type.

19 Criando um Detector do FindBugs Plugin para utilização no SIGA-EDU
Implementando o SIGADetector.java Deve implementar a interface Detector e estender a superclasse PreorderVisitor Faz-se uma chamada à classe BugReporter no construtor Declara o método visitClassContext(ClassContext)

20 Criando um Detector do FindBugs Plugin para utilização no SIGA-EDU
Implementando o SIGADetector.java Criamos dois métodos auxiliares, getLastName() e o isMesmoNome(), para ajudar a limpar mais o método visit(). Sobrescrever o método visit()

21 Resultados dos testes

22 Conclusão Implementação dos padrões restantes
Esse detector pode ser utilizado em qualquer Sistema Operacional que suporte o Eclipse SDK.

23 Perguntas


Carregar ppt "CAMPUS NATAL-CENTRAL DIRETORIA DE EDUCAÇÃO E TECNOLOGIA DA INFORMAÇÃO"

Apresentações semelhantes


Anúncios Google