International Organization for Standardization (ISO)
Na área de testes e qualidade de software, existem várias normas ISO (International Organization for Standardization) que fornecem diretrizes e melhores práticas para garantir a qualidade e a eficiência no desenvolvimento e na manutenção de software.
No artigo de hoje não pretendo entrar em pormenor com quais é que se usam e quando, mas sim dar-te uma visão geral de quais existem e que podem ser usadas no processo de desenvolvimento de software (testes incluídos).
Porque como costumo dizer… Devemos saber de tudo, e não tudo!
ISO/IEC 25000
(SQuaRE - Software Product Quality Requirements and Evaluation)
Descrição
Esta família de normas, conhecida como SQuaRE, oferece um conjunto abrangente de modelos de qualidade, medições de qualidade e requisitos de qualidade para software.
Principais sub-componentes
ISO/IEC 25010: Modelos de qualidade para produtos de software.
ISO/IEC 25012: Modelo de qualidade de dados.
ISO/IEC 25020 a ISO/IEC 25099: Diretrizes e modelos para medir a qualidade do software.
ISO/IEC/IEEE 29119
(Software Testing)
Descrição
Esta série de normas abrange todo o ciclo de vida dos testes de software, fornecendo um conjunto de processos, documentação e técnicas para a prática de testes de software.
Principais sub-componentes
ISO/IEC/IEEE 29119-1: Conceitos e definições de testes de software.
ISO/IEC/IEEE 29119-2: Processos de teste de software.
ISO/IEC/IEEE 29119-3: Documentação de testes de software.
ISO/IEC/IEEE 29119-4: Técnicas de teste de software.
ISO/IEC/IEEE 29119-5: Testes de conformidade para produtos de software.
ISO/IEC 9126
(Software Engineering - Product Quality)
Descrição
Embora esta norma tenha sido substituída pela ISO/IEC 25010, é importante mencionar porque ainda é muitas vezes feita referência aos seus conceitos. Por isso não estranhes!! Esta norma fornecia um modelo de qualidade de software e métricas associadas.
Principais sub-componentes
ISO/IEC 9126-1: Modelo de qualidade.
ISO/IEC 9126-2 a 9126-4: Métricas de qualidade interna, externa e de uso.
ISO/IEC 12207
(Systems and Software Engineering - Software Life Cycle Processes)
Descrição
Esta norma define um conjunto de processos para o ciclo de vida do software, incluindo processos de aquisição, fornecimento, desenvolvimento, operação, manutenção e processos de suporte.
Relação com QA
Inclui processos de garantia da qualidade e verificação e validação.
ISO/IEC 15504
(Process Assessment - também conhecido como SPICE - Software Process Improvement and Capability Determination)
Descrição
Esta norma fornece uma framework para avaliação dos processos de desenvolvimento de software. Ajuda a que as organizações compreendam e melhorem a capacidade de seus processos.
Principais sub-componentes
ISO/IEC 15504-2: Realização de avaliações.
ISO/IEC 15504-5: Um modelo de avaliação de processos.
ISO 9001
(Quality Management Systems - Requirements)
Descrição
Embora não seja específica para software, a ISO 9001 fornece requisitos para um sistema de gestão da qualidade que pode ser aplicado a qualquer organização, incluindo aquelas que desenvolvem software.
Relação com QA
Envolve a criação de processos e procedimentos para assegurar a qualidade consistente do produto, incluindo software.
ISO/IEC 27001
(Information Security Management Systems - Requirements)
Descrição
Esta norma especifica os requisitos necessários para estabelecer, implementar, manter e melhorar de forma contínua um sistema de gestão de segurança da informação.
Relação com QA
A segurança é um aspecto crítico da qualidade do software, principalmente para software que manipula dados sensíveis (como bancos e dados individuais).