Quatro critérios para medir a qualidade do software
Qualquer sistema que possa ajudá-lo a automatizar essa tarefa deverá incluir todos

A falta de visibilidade sobre a qualidade está na raiz de muitos
problemas de gestão de software. Os executivos de negócios não conseguem
entender por quais motivos um software custa tanto, demora tanto tempo
para ser desenvolvido e gera muitos custos associados para mudá-lo. CFOs e
CEOs, por sua vez, não conseguem entender por que o investimento em TI é
tão alto.
Não surpreendentemente, essas dificuldades resultam de um foco
incorreto sobre o processo pelo qual o software é construído. Um software bem concebido, bem arquitetado e bem executado possui
alta qualidade. É fácil trabalhar com ele, mantê-lo e melhorá-lo para
suprir as demandas dos negócios.
Você deve estar pensando: “Será que não cuidamos da qualidade durante os
testes do software?” Acontece que o teste é, na melhor das hipóteses, uma solução
parcial.
O teste não é realmente concebido para medir a qualidade
estrutural do software – a qualidade do design de um aplicativo e da
fidelidade de sua implementação para o projeto. Achamos
que podemos definir essas atividades e medi-las com precisão para que as
pessoas possam ver e focar nas atividades necessárias para criar,
melhorar e gerenciar o software.
Mas podemos, de fato, medir a qualidade do software? Sim, graças a produtos
que realizam essa tarefa.
Em uma aplicação, a qualidade de qualquer componente depende de
outros componentes a ele integrados. A qualidade de um aplicativo
como um todo é, portanto, mais do que simplesmente a soma da qualidade
de seus componentes. O erro mais frequente em engenharia de software é
esquecer desse fato.
É importante medir a qualidade do software, mas é igualmente
importante executar a atividade de forma correta. Essa ação é muito útil
no desenvolvimento de software, mas, muitas vezes, é melhor não ter
medição alguma do que contar com uma errada.
Qualquer sistema que possa ajudá-lo na tarefa de medir a qualidade do software deverá ter quatro pontos:
1. Alcance: deve ser capaz de lidar com várias
tecnologias. A maioria dos aplicativos modernos contém vários idiomas e
sistemas que são ligados entre si de forma complexa.
2. Profundidade: deve ser capaz de gerar mapas
completos e detalhados da arquitetura do aplicativo, do Graphical User
Interface (GUI), da ferramenta de captura, do processamento e da análise de
imagem, do banco de dados. Sem essa detalhada arquitetura, seria
impossível obter contextualização da aplicação.
3. Tornar o conhecimento de engenharia de software explícito:
deve ser capaz de verificar a aplicação inteira contra centenas de
padrões de implementação que codificam as melhores práticas de
engenharia.
4. Métricas acionáveis: as métricas de qualidade não
devem apenas informar, mas também orientar sobre como realizar a
melhoria da qualidade do software, mostrando o que fazer primeiro, como
fazê-lo, próximos passos etc.
Nenhum
profissional ou equipe poderá lidar com essas questões em um
curto espaço de tempo se não contar com um bom sistema capaz de auxiliá-lo na tarefa de medir a qualidade do software.
