JDepend - PUC-Rio

Propaganda
Autores:
Carine Gomes Henriques
Maurício Costa
Índice
JDepend ............................................................................................................................ 3
Relatórios gerados ............................................................................................................ 3
Instalar e Utilizar o JDepend ............................................................................................ 6
Bibliografia ....................................................................................................................... 9
JDepend
O JDepend é uma ferramenta que analisa classes Java e gera métricas sobre a
qualidade do "Design" para cada package Java. 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.
Relatórios gerados
Resultados obtidos pela análise do JDepend por pacotes
Este relatório corresponde as métricas categorizadas por pacote. O JDepend
percorre todos os diretórios que contêm classes Java e gera métricas de
qualidade do design para cada pacote Java.
Resumo das métricas
Este 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. Quando
calculada no nível da classe, essa medida também é conhecida como
Fan-in da classe.

Ce: acoplamento eferente - o número total de classes de dentro de um
pacote que dependem de classes de fora do pacote. Quando calculada
no nível da classe, essa medida também é conhecida como Fan-out da
classe.

A: nível de abstração – Mede o quanto abstrato é um pacote. Este valor
é calculado a partir da razão do número de classes abstratas e
interfaces em um pacote pelo número total de classes concretas nesse
mesmo pacote. Assim, uma abstração de valor zero (A = 0) indica um
pacote completamente formado por classes concretas enquanto que
uma abstração com valor um (A = 1) indica um pacote totalmente
abstrato.

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. Este valor é calculado pela
divisão do acoplamento eferente de um pacote pelo total de
acoplamentos (aferentes e eferentes) deste: I = Ce / (Ca + Ce)

D: distância da seqüência principal – Este valor relaciona a Abstração e
a Instabilidade. A distância varia entre 0 e 1 e é melhor para valores
menores, ou seja, um pacote com baixa distância é instável e tem baixa
abstração se um pacote depende de muitos outros pacotes, ele é pouco
reusável, então não é necessário utilizar abstração neste pacote, um
pacote também tem baixa distância se for estável e tiver alta abstração,
o pacote possuirá poucas dependências e é usado por outros pacotes,
assim torna-se possível o uso de muita abstração no pacote.
Para ilustrar a explicação sobre a distância da seqüência principal, segue o
gráfico gerado:
Instalar e Utilizar o JDepend
Para utilizar o plugin do JDepend com o maven no eclipse basta seguir os
passos abaixo:
Baixar o plugin “maven-jdepend-plugin”:
http://www.clarkware.com/software/JDepend.html
Para instalar o JDepend no Windows:
1. Descompacte o jdepend-<version>.zip no diertório definido na
variável %JDEPEND_HOME%.
2. Adicione o JDepend ao classpath:
set
CLASSPATH=%CLASSPATH%;%JDEPEND_HOME%\lib\jdepend<version>.jar
Para instalar o JDepend no Unix:
1. Descompacte o jdepend-<version>.zip no diertório definido na variável
$JDEPEND_HOME.
2. Carregue as permissões: chmod -R a+x $JDEPEND_HOME
3. Adicione o JDepend ao classpath:
export CLASSPATH=$CLASSPATH:$JDEPEND_HOME/lib/jdepend<version>.jar
Após, dar o update do plugin do JDepend no eclipse:
1. Acesse o menu Help >> Software Updates >> Find and Install...
2. Marque a opção "Search for new features to install" e clique no botão
Next
3. Clique no botão New Remote Site...
4. Digite JDEPEND no campo nome e no campo URL insira:
http://andrei.gmxhome.de/eclipse
5. Na tela de Search Results, marque as opções conforme a imagem
abaixo e clique no botão Next.
6. Aceite os termos de utilização e clique no botão Next.
7. Clique no botão Finish.
8. Aguarde o dowload dos arquivos .jar requeridos pelo eclipse e clique no
botão Install.
9. Reinicie o eclipse.
10. Após vá no menu Window >> Show View >> Other...
11. Selecione JDEPEND
12. O detalhe do relatório gerado pelo JDEPEND
Bibliografia
http://www.clarkware.com/software/JDepend.html
http://hotwork.sourceforge.net/hotwork/manual/maven/maven-user-guide.html
PUC-Rio - Certificação Digital Nº 0511002/CA
http://andrei.gmxhome.de/jdepend4eclipse/index.html
Download