Como avaliar a qualidade de um software: da ISO 9126 à ISO 25010
Dizer que um software é “bom” ou “ruim” expressa uma percepção, mas não explica o que está sendo avaliado.
Ele cumpre as funções esperadas? É fácil de usar? Responde no tempo adequado? Protege os dados? Continua disponível diante de falhas? Pode ser modificado com segurança?
Os modelos de qualidade ajudam a decompor uma ideia abstrata em características que podem ser discutidas, especificadas e avaliadas.
O papel de um modelo de qualidade
Um modelo de qualidade funciona como uma lente. Ele organiza diferentes propriedades do produto para evitar que a avaliação fique limitada ao comportamento funcional.
Isso é importante porque duas pessoas podem usar a palavra “qualidade” pensando em coisas diferentes. Para o usuário, facilidade de uso pode ser prioridade. Para a operação, disponibilidade e recuperação podem ser decisivas. Para a equipe de desenvolvimento, manutenibilidade reduz risco e custo de evolução.
O modelo cria uma linguagem comum, mas não define sozinho quais características terão maior peso. Essa decisão depende do contexto.
ISO/IEC 9126: seis características clássicas
A ISO/IEC 9126 consolidou um modelo muito conhecido na engenharia de software, com seis características principais.
Funcionalidade
Pergunta se o software oferece funções adequadas às necessidades especificadas.
Não basta existir um botão ou uma tela. A função precisa produzir o resultado correto e interagir adequadamente com o restante da solução.
Confiabilidade
Observa a capacidade de manter o funcionamento nas condições estabelecidas, lidar com falhas e recuperar-se quando necessário.
Usabilidade
Analisa o esforço necessário para compreender, aprender e utilizar o produto.
Uma funcionalidade correta pode ter baixa qualidade se o usuário não consegue encontrá-la ou interpretar seu resultado.
Eficiência
Relaciona o desempenho entregue aos recursos utilizados. Tempo de resposta, capacidade e consumo de recursos são exemplos de preocupações.
Manutenibilidade
Avalia a facilidade de analisar, modificar e testar o software.
Código acoplado, ausência de testes e documentação desatualizada aumentam o risco de cada mudança.
Portabilidade
Trata da capacidade de transferir ou adaptar o produto para outros ambientes.
A evolução para a família SQuaRE
A ISO/IEC 25010 passou a integrar a família SQuaRE, sigla para Systems and software Quality Requirements and Evaluation.
A edição de 2011, muito utilizada em materiais acadêmicos, apresentou oito características de qualidade do produto:
Duas mudanças chamam atenção em relação ao modelo anterior: segurança e compatibilidade ganharam posição própria. Isso reflete um cenário no qual sistemas precisam proteger informações e conviver com outros produtos, serviços e ambientes.
A edição de 2023
A ISO/IEC 25010:2023 é a edição vigente do modelo de qualidade do produto. Ela possui nove características e ampliou o escopo para produtos de tecnologia da informação e comunicação, que podem envolver software, firmware, hardware, dados e infraestrutura de comunicação.
A atualização também reorganizou conceitos. Em traduções livres, as nove características são:
A edição de 2023 não deve ser tratada apenas como a versão de 2011 com uma característica adicional. Houve mudanças de nomes, escopo e subcaracterísticas. Ao estudar ou citar a norma, é importante sempre informar a edição.
Um exemplo aplicado
Considere uma extensão de navegador criada para apoiar o registro de atendimentos.
Adequação funcional: salva os dados e insere as informações corretas no sistema?
Eficiência de desempenho: abre e responde rapidamente sem consumir recursos em excesso?
Compatibilidade: consegue coexistir e se integrar ao navegador e à aplicação utilizada?
Capacidade de interação: o formulário é compreensível, acessível e protege o usuário de erros?
Confiabilidade: preserva os dados após fechar uma aba ou diante de uma interrupção inesperada?
Segurança: dados do atendimento ficam protegidos contra acesso ou exposição indevida?
Manutenibilidade: é possível modificar a integração sem quebrar funcionalidades não relacionadas?
Flexibilidade: o produto consegue se adaptar a diferentes condições, configurações e necessidades?
Proteção contra riscos: uma falha pode provocar danos relevantes às pessoas, ao negócio ou ao ambiente no qual o produto opera?
Nem toda característica terá o mesmo peso. Em um sistema de saúde, proteção contra riscos, segurança e confiabilidade podem ser críticas. Em uma ferramenta interna simples, usabilidade e manutenibilidade talvez recebam mais atenção — sem que segurança possa ser ignorada.
De característica para critério mensurável
O modelo organiza o que observar, mas ainda é necessário transformar características em critérios concretos.
“Ter bom desempenho” é vago. Um critério melhor seria: “95% das requisições devem responder em até 500 milissegundos sob uma carga de 200 usuários simultâneos”.
“Ser fácil de usar” também é amplo. Podemos definir uma tarefa, observar usuários representativos e medir taxa de sucesso, tempo, erros e necessidade de ajuda.
A lógica é:
Sem critérios, a avaliação tende a virar opinião. Sem contexto, a métrica pode não representar valor.
Qualidade externa e interna
Algumas propriedades podem ser observadas durante a execução: tempo de resposta, disponibilidade e comportamento diante de erros.
Outras aparecem na estrutura interna: complexidade, acoplamento, duplicação e testabilidade.
A experiência real do usuário ainda acrescenta outra perspectiva: o produto permite atingir objetivos com eficácia, eficiência e confiança no contexto de uso?
Essas dimensões se influenciam. Uma arquitetura difícil de manter pode não incomodar o usuário hoje, mas aumenta a chance de defeitos e lentidão na evolução amanhã.
Conclusão
A grande contribuição dos modelos ISO é mostrar que qualidade possui várias dimensões. Funcionar é necessário, mas não suficiente.
A ISO 9126 estabeleceu uma base histórica importante; a ISO/IEC 25010 modernizou e ampliou o modelo. Mais importante do que decorar uma lista é aprender a formular perguntas de qualidade e transformá-las em requisitos e critérios observáveis.
No próximo artigo, vou tratar do passo seguinte: como planejar e executar uma avaliação, conectando os modelos de qualidade ao processo de avaliação da ISO 14598 e da atual ISO/IEC 25040.
Este artigo organiza reflexões dos meus estudos na pós-graduação em Engenharia da Qualidade e Teste de Software. As normas são apresentadas de forma didática; para uso formal, consulte o texto oficial da edição aplicável.