Qualidade de software é um dos termos mais citados — e menos formalizados — da área de TI. Reuniões de projeto, revisões de código, auditorias técnicas: a palavra aparece em todos esses contextos, mas o que ela significa exatamente varia muito de time para time.
Para resolver essa ambiguidade, a ISO criou normas específicas. A mais conhecida no Brasil é a ISO/IEC 9126, formalmente encerrada mas ainda abundante em TCCs, concursos públicos e especificações de sistemas legados. A sucessora oficial é a família ISO/IEC 25000 (SQuaRE), cujo modelo de qualidade de produto está definido na ISO/IEC 25010.
Este artigo explica as três normas, as diferenças entre elas, o que mudou de 2001 a 2023 e como aplicar esses conceitos em projetos reais de TI.
O que é qualidade de software em 2026
Qualidade de software é o grau em que um sistema, componente ou processo atende aos requisitos especificados e às necessidades ou expectativas do usuário. A definição é da própria família ISO/IEC 25000.
Na prática, qualidade tem duas dimensões que não devem ser confundidas:
- Qualidade de produto: características do software em si — funcionalidade, desempenho, segurança, facilidade de manutenção.
- Qualidade em uso: o que o usuário experimenta ao usar o produto em um contexto real — eficácia, eficiência, satisfação, ausência de riscos.
Um sistema pode ter código-fonte bem estruturado (boa qualidade interna) mas ser lento em produção (baixa qualidade de desempenho externa). As normas ISO distinguem esses níveis com precisão.
O que foi a ISO/IEC 9126 e por que ela ainda aparece em buscas
A ISO/IEC 9126 foi a primeira norma internacional a definir formalmente um modelo de qualidade de produto de software. Publicada originalmente em 1991 e revisada entre 2001 e 2003, ela foi estruturada em quatro partes:
- Parte 1: Modelo de qualidade
- Parte 2: Métricas externas
- Parte 3: Métricas internas
- Parte 4: Métricas de qualidade em uso
O modelo de qualidade da Parte 1 definiu seis características principais:
| Característica | O que avalia |
|---|---|
| Funcionalidade | Capacidade do software de prover funções que satisfazem requisitos explícitos e implícitos |
| Confiabilidade | Capacidade de manter o nível de desempenho em condições especificadas durante um período de tempo |
| Usabilidade | Esforço necessário para uso e avaliação individual desse uso |
| Eficiência | Relação entre nível de desempenho e quantidade de recursos usados |
| Manutenibilidade | Esforço necessário para modificar o software |
| Portabilidade | Capacidade de ser transferido de um ambiente para outro |
No Brasil, a norma foi adaptada pela ABNT como NBR ISO/IEC 9126-1:2003. Antes disso, havia a NBR 13596:1996, uma versão anterior da adaptação brasileira — que é a razão de muitos documentos e concursos ainda referenciarem o número 13596.
Para uma análise detalhada da ISO 9126 e da NBR 13596, veja a análise histórica da ISO 9126 no TI Especialistas.
O que mudou com a família ISO/IEC 25000 (SQuaRE)
A família ISO/IEC 25000, conhecida como SQuaRE (System and Software Quality Requirements and Evaluation), foi criada para substituir e expandir a ISO/IEC 9126 e também a ISO/IEC 14598 (avaliação de produto de software).
A série é organizada em divisões temáticas:
| Divisão | Tema | Normas principais |
|---|---|---|
| ISO/IEC 2500n | Gestão da qualidade | ISO/IEC 25000, 25001 |
| ISO/IEC 2501n | Modelo de qualidade | ISO/IEC 25010, 25012 |
| ISO/IEC 2502n | Medição de qualidade | ISO/IEC 25020, 25021, 25022, 25023, 25024 |
| ISO/IEC 2503n | Requisitos de qualidade | ISO/IEC 25030 |
| ISO/IEC 2504n | Avaliação de qualidade | ISO/IEC 25040, 25041, 25045 |
A ISO/IEC 25000:2014 funciona como o “guia mestre” que descreve os termos, definições e a arquitetura do sistema SQuaRE. Para uma visão completa dessa família, leia o artigo sobre ISO 25000 e qualidade de software no TI Especialistas.
ISO/IEC 25010: o modelo de qualidade de produto de software
A ISO/IEC 25010 é a parte da família SQuaRE que define o modelo de qualidade de produto de software e de sistemas. É o sucessor direto da Parte 1 da ISO/IEC 9126.
A primeira edição foi publicada em 2011. A segunda edição (2023) revisou o modelo para refletir as mudanças no desenvolvimento de software na última década, incluindo ambientes em nuvem, sistemas embarcados e software como serviço (SaaS).
O modelo de qualidade de produto da ISO/IEC 25010 (edição 2011, amplamente adotada) define oito características:
| Característica | Descrição | Sub-características principais |
|---|---|---|
| Adequação funcional | O software fornece funções que atendem às necessidades declaradas e implícitas | Completude, correção, pertinência funcional |
| Eficiência de desempenho | Desempenho em relação aos recursos utilizados em condições especificadas | Comportamento temporal, utilização de recursos, capacidade |
| Compatibilidade | Capacidade de trocar informações e/ou coexistir com outros sistemas/componentes | Coexistência, interoperabilidade |
| Usabilidade | Usuários conseguem usar o sistema com eficácia, eficiência e satisfação | Reconhecibilidade, aprendizabilidade, operabilidade, proteção contra erros |
| Confiabilidade | O sistema desempenha funções especificadas quando necessário | Maturidade, disponibilidade, tolerância a falhas, recuperabilidade |
| Segurança | Proteção de informações e dados contra acesso não autorizado | Confidencialidade, integridade, não-repúdio, responsabilização, autenticidade |
| Manutenibilidade | Grau de eficácia e eficiência com que o software pode ser modificado | Modularidade, reutilização, analisabilidade, modificabilidade, testabilidade |
| Portabilidade | Capacidade de ser transferido de um ambiente para outro | Adaptabilidade, instalabilidade, substituibilidade |
Diferença entre ISO 9126, ISO 25000 e ISO 25010
| Aspecto | ISO/IEC 9126 | ISO/IEC 25000 (SQuaRE) | ISO/IEC 25010 |
|---|---|---|---|
| O que é | Norma única (4 partes) sobre qualidade de produto | Família de normas (série completa) | Parte do SQuaRE: modelo de qualidade |
| Publicação | 1991 / revisão 2001–2003 | 2005–2014 (publicações principais) | 2011 / revisão 2023 |
| Status | Retirada / substituída | Vigente (série) | Vigente (modelo de qualidade) |
| Características do modelo | 6 características | N/A (framework) | 8 características (2011) |
| Escopo | Software de produto | Software e sistemas | Software e sistemas |
| Relação | Predecessor | Família sucessora | Substituto direto da ISO 9126 Part 1 |
Para a comparação detalhada entre as duas normas, consulte o artigo comparação entre ISO 9126 e ISO 25000.
Características de qualidade: o que cada uma significa na prática
Adequação funcional
O software faz o que precisa fazer? Essa característica avalia se todas as funções prometidas existem (completude), se produzem resultados corretos (correção) e se são relevantes para o problema do usuário (pertinência). Um sistema com funções corretas mas desnecessárias ainda falha em pertinência funcional.
Eficiência de desempenho
Velocidade de resposta, consumo de memória, CPU e largura de banda estão dentro do aceitável? Sistemas lentos podem ser tecnicamente corretos e ainda assim inutilizáveis. A eficiência de desempenho envolve tempo de resposta (comportamento temporal), uso de memória e processador (utilização de recursos) e limites do sistema sob carga máxima (capacidade).
Compatibilidade
O software convive bem com outros sistemas no mesmo ambiente (coexistência) e troca dados corretamente com eles (interoperabilidade)? Integrações via API, exportações em formatos padrão e ausência de conflitos em ambiente compartilhado são indicadores práticos dessa característica.
Usabilidade
O usuário consegue entender para que serve o software, aprender a usá-lo, operá-lo com eficiência e cometer poucos erros? Usabilidade não é só “interface bonita” — inclui prevenção de erros do usuário e acessibilidade. Um formulário que impede o envio sem explicar por quê falha em usabilidade.
Confiabilidade
O sistema está disponível quando precisa estar? Recupera-se de falhas sem perda de dados? Tolera condições adversas sem travar? A confiabilidade é crítica em sistemas de missão crítica, mas também relevante em e-commerce (queda durante Black Friday) e sistemas de saúde.
Segurança
Dados confidenciais são protegidos? Operações são registradas para auditoria? Identidades são autenticadas corretamente? A segurança na ISO/IEC 25010 cobre confidencialidade, integridade, não-repúdio, responsabilização e autenticidade — não apenas controle de acesso.
Manutenibilidade
Quanto esforço é necessário para corrigir um bug, adicionar uma feature ou entender o código existente? Software com alta manutenibilidade tem módulos coesos, dependências claras, testes automatizados e documentação atualizada. Baixa manutenibilidade é a principal causa de projetos de reescrita.
Portabilidade
O sistema pode ser implantado em diferentes sistemas operacionais, nuvens ou ambientes com esforço mínimo? A portabilidade inclui adaptabilidade (sem grandes modificações para funcionar em novo ambiente), instalabilidade (facilidade de instalação) e substituibilidade (pode substituir outro sistema no mesmo ambiente).
Como aplicar qualidade de software em projetos reais
A norma define o quê medir — mas não o como. Na prática, a aplicação acontece em três momentos:
1. Na especificação de requisitos
Transforme características de qualidade em requisitos não-funcionais mensuráveis. Em vez de “o sistema deve ser rápido”, escreva “o sistema deve responder a 95% das consultas em menos de 1,5 segundos sob carga de 200 usuários simultâneos”. Para boas práticas nessa etapa, leia o artigo sobre análise e levantamento de requisitos.
2. No desenvolvimento e arquitetura
Cada decisão arquitetural afeta múltiplas características. Microsserviços melhoram portabilidade e manutenibilidade, mas podem reduzir desempenho por overhead de rede. Cache melhora eficiência de desempenho mas aumenta complexidade de manutenção. Use o modelo de qualidade para mapear trade-offs conscientemente.
3. Na avaliação e testes
Defina métricas para cada característica relevante e meça. A família ISO/IEC 2502n fornece exemplos de métricas. Ferramentas como SonarQube (manutenibilidade), k6/Gatling (desempenho) e OWASP ZAP (segurança) cobrem partes do modelo.
Relação com testes, requisitos, arquitetura e governança
O modelo de qualidade da ISO/IEC 25010 se conecta diretamente a práticas estabelecidas:
- Testes: Testes funcionais cobrem adequação funcional. Testes de carga cobrem eficiência de desempenho. Testes de penetração cobrem segurança. Testes de usabilidade cobrem usabilidade. O modelo é um mapa para planejar a cobertura de testes.
- Requisitos: Características de qualidade devem virar critérios de aceite mensuráveis na especificação. User stories com critérios de aceite de desempenho e segurança são mais difíceis de esquecer na entrega.
- Arquitetura: Decisões de arquitetura têm impacto direto em confiabilidade (redundância), manutenibilidade (separação de responsabilidades), portabilidade (containerização) e eficiência (caching, balanceamento de carga).
- Governança: Em licitações e contratos públicos, a referência à ISO/IEC 9126 ou ISO/IEC 25010 cria uma linguagem comum para especificar e verificar qualidade de software contratado.
Para contexto histórico da evolução das práticas de desenvolvimento, leia o artigo sobre evolução do software.
Erros comuns ao usar normas de qualidade
- Confundir ISO 25000 com ISO 25010: A primeira é a família completa, a segunda é a norma do modelo de qualidade. Citar “ISO 25000” quando se quer dizer o modelo de qualidade está tecnicamente impreciso.
- Usar ISO 9126 como se fosse vigente: A norma foi encerrada. Para projetos novos, use ISO/IEC 25010. Para documentos legados, mencione explicitamente que é a versão anterior.
- Listar características sem critérios mensuráveis: “O sistema deve ter boa usabilidade” não é um requisito — é uma intenção. Requisitos de qualidade precisam de métricas e limiares.
- Ignorar a qualidade em uso: O modelo de produto não é suficiente. Um sistema pode ser internamente excelente e ainda assim não atender às necessidades do usuário no contexto real de uso.
- Tratar todas as características com o mesmo peso: Para um sistema de pagamentos, segurança e confiabilidade têm prioridade. Para um app de produtividade pessoal, usabilidade pode ser o fator decisivo. A norma não define pesos — isso é decisão do projeto.
Checklist prático para equipes de TI
- Identificar quais características de qualidade são prioritárias para o projeto
- Traduzir cada característica prioritária em requisito não-funcional mensurável
- Incluir critérios de aceite de qualidade nas user stories e especificações
- Mapear testes para cobrir cada característica relevante
- Definir ferramentas de medição antes do desenvolvimento (não depois)
- Registrar decisões arquiteturais e seus impactos nas características de qualidade
- Revisar o modelo de qualidade nas retrospectivas de sprint
- Usar a terminologia correta: ISO 25010 para projetos novos, ISO 9126 apenas para referência histórica
FAQ
ISO 9126 ainda vale para concursos públicos?
Sim. Muitas bancas de concurso público (especialmente para cargos de TI em órgãos federais) ainda cobram ISO 9126 nas provas, por influência de editais antigos e material didático desatualizado. Conhecer as seis características da ISO 9126 e suas sub-características continua sendo necessário para essas provas.
ISO 25010 substitui completamente a ISO 9126?
Sim, formalmente. A ISO/IEC 25010 é o substituto da Parte 1 da ISO/IEC 9126 (modelo de qualidade). A família SQuaRE como um todo substitui tanto a ISO/IEC 9126 completa quanto a ISO/IEC 14598. A ISO 9126 foi retirada (withdrawn) pelo ISO.
Preciso comprar a norma ISO 25010 para usá-la?
Para uso comercial formal, sim — as normas ISO são documentos pagos disponíveis no site ISO.org e, no Brasil, pela ABNT. Para fins educacionais e de referência, o conteúdo do modelo de qualidade é amplamente documentado em publicações acadêmicas, livros e artigos técnicos de livre acesso.
Qual a diferença entre NBR 13596 e ISO 9126?
A NBR 13596:1996 foi a primeira adaptação brasileira (ABNT) da ISO/IEC 9126, baseada na versão original de 1991. Quando a ISO revisou a norma entre 2001 e 2003 (publicando quatro partes), a ABNT fez uma nova adaptação — a ABNT NBR ISO/IEC 9126-1:2003. O número 13596 refere-se especificamente à versão de 1996.
SQuaRE é um acrônimo de quê?
SQuaRE significa System and Software Quality Requirements and Evaluation (Requisitos e Avaliação de Qualidade de Sistema e Software). O nome reflete o escopo expandido em relação à ISO 9126, que cobria apenas produto de software.
Leitura histórica no TI Especialistas
O TI Especialistas possui um acervo com análises detalhadas sobre essas normas, publicadas em diferentes períodos:
- Análise histórica da ISO 9126 no TI Especialistas — cobertura detalhada da ISO/IEC 9126 e NBR 13596, incluindo sub-características e aplicações
- Artigo sobre ISO 25000 e qualidade de software — visão completa da família SQuaRE
- Comparação entre ISO 9126 e ISO 25000 — análise direta das diferenças entre as normas
Fontes consultadas
- ISO/IEC 25010:2011 — Systems and software engineering: Systems and software Quality Requirements and Evaluation (SQuaRE). Disponível em: iso.org/standard/35733.html
- ISO/IEC 25010:2023 — Systems and software engineering: SQuaRE — Product quality model. Disponível em: iso.org/standard/78176.html
- ISO/IEC 25000:2014 — Systems and software engineering: SQuaRE — Guide to SQuaRE. Disponível em: iso.org/standard/64764.html
- Wikipedia: ISO/IEC 9126 e ISO/IEC 25010 (referência de consulta, não fonte normativa)