Analisando a qualidade do código com o Sonar

Medir a qualidade de um projeto de software é algo complexo e envolve muitos indicadores, além disso, qualidade é muito relativa e depende do ponto de vista do observador. Um gerente financeiro pode observar a qualidade pela economia proporcionada pelo software. O usuário observa se o software atende aos requisitos funcionais, o número de falhas, erros e se o software é fácil de usar. Já um desenvolvedor vê a qualidade pelo código, se é fácil de manter, se usa design patterns e se está livre de gambiarras e remendos. Há outros indicadores para qualidade e dependem do que é esperado do software, indicadores de desempenho e segurança, por exemplo.

Manutenibilidade

A manutenibilidade se refere à facilidade, precisão, segurança e economia na execução de ações de manutenção no software. Para se atingir um nível de manutenibilidade bom, o software precisa seguir padrões de desenvolvimento, precisa ter um código com qualidade.

A qualidade no código pode ser observada por meio de vários eixos: arquitetura, duplicações de código, complexidade, regras de codificação, comentários, entre outros. Em uma equipe com muitos desenvolvedores, vários commits diários, como garantir essa qualidade de código? Como monitorar todo o código em busca de más práticas de desenvolvimento? Existem ferramentas que analisam e verificam o código e fornecem muitas informações sobre o mesmo. Uma delas é o Sonar. A figura 1 ilustra os 7 eixos de qualidade de código observados pelo Sonar.

7axes_sonar
Figura 1: Os 7 eixos de análise do Sonar

Sonar

O Sonar é uma ferramenta de medição de qualidade de código, ele fornece vários indicadores sobre o código de um projeto, tais como numero de linhas de código, complexidade dos métodos e classes, duplicações de código, informações sobre comentários, informações sobre testes unitários e a conformidade com várias regras de codificação.

Instalação do Sonar

A instalação do Sonar é bastante simples, é uma aplicação web. Basta fazer o deploy do arquivo sonar.war em um container J2EE como o Tomcat, por exemplo. Ao fazer o deploy o Sonar está instalado e pronto para uso.

Análise de fontes

Para enviar seus fontes para o Sonar analisar, utilize o Maven. Configure um profile (MAVEN_HOME/conf/settings.xml) no Maven como o seguinte:

	<profile>
		<id>sonar</id>
		<activation>
			<activeByDefault>true</activeByDefault>
		</activation>
		<properties>
			<sonar.host.url>http://localhost:8080/sonar</sonar.host.url>
		</properties>
	</profile>

Agora é só ir até o diretório do seu projeto pela linha de comando e executar o comando mvn sonar:sonar. O Maven fará o download dos plugins necessários para a execução do Sonar e os fontes do seu projeto serão enviados para o Sonar configurado no profile do Maven. Após o envio e a análise dos fontes, acesse o Sonar (http://localhost:8080/sonar) e veja as métricas do seu projeto que acabou de ser analisado. A figura 2 é um exemplo de uma dashboard de um projeto no Sonar.

sonar_dashboard
Figura 2: Dashboard de um projeto analisado pelo Sonar

É interessante executar a verificação a cada versão do software, assim fica fácil acompanhar a evolução dos fontes e melhorar o código gradualmente.

1 Reply to “Analisando a qualidade do código com o Sonar”

Leave a Reply

Your email address will not be published. Required fields are marked *