Guia Completo de Gerenciamento da Qualidade de Software

Classificado em Computação

Escrito em em português com um tamanho de 5,16 KB

Gerenciamento da Qualidade de Software

Preocupa-se em garantir que o nível exigido de qualidade do produto de software seja atingido. Envolve definir procedimentos e padrões de qualidade que devem ser seguidos.

O que é qualidade

Classicamente, a noção de qualidade é a de que o produto desenvolvido deve cumprir com suas especificações.

O compromisso com a qualidade

  • Não se pode esperar por uma especificação perfeita antes de implantar procedimentos de gerenciamento de qualidade.
  • Deve-se implantar procedimentos para melhorar a qualidade dentro das restrições impostas por uma especificação imperfeita.
  • O gerenciamento de qualidade não se preocupa somente em reduzir defeitos, mas também com outras características de qualidade do produto.

Atividades do gerenciamento de qualidade

  • Garantia de qualidade: Estabelecer uma estrutura de procedimentos e de padrões organizacionais para qualidade.
  • Planejamento de qualidade: Seleção e ajustes de procedimentos e de padrões de qualidade para um projeto específico.
  • Controle de qualidade: Garantir que os procedimentos e padrões estão sendo seguidos pela equipe de desenvolvimento de software.

ISO 9000 e ISO 9001

  • ISO 9000: Padrão internacional para o gerenciamento de qualidade, aplicável a uma gama de organizações, desde a indústria de manufatura até as indústrias de serviços.
  • ISO 9001: Aplicável a organizações que projetam, desenvolvem e dão manutenção a produtos. É um modelo genérico de um processo de qualidade que deve ser instanciado por cada organização.
  • Certificação ISO 9000: Os procedimentos de garantia de qualidade devem ser documentados em um manual de qualidade organizacional.

Garantia e padrões de qualidade

  • Padrões: São a chave para o gerenciamento de qualidade efetivo. Podem ser internacionais, nacionais, organizacionais ou padrões de projeto.
  • Padrões de produto: Aplicam-se ao produto de software em desenvolvimento (ex: estilo de programação, formulário de revisão de projeto, estrutura do documento de requisitos).
  • Padrões de processo: Definem os processos a serem seguidos durante o desenvolvimento (ex: definições de especificação, processos de projeto e validação, processo de liberação de versão).

Importância dos padrões

  • Encapsulam as melhores práticas, evitando a repetição de erros passados.
  • Fornecem infraestrutura para o processo de garantia de qualidade, envolvendo a verificação de conformidade.
  • Ajudam em termos de continuidade, reduzindo o esforço de aprendizado ao padronizar práticas entre engenheiros.

Qualidade baseada em processo

Existe uma ligação direta entre processo e produto. Em software, é mais complexo devido a fatores externos, como a novidade da aplicação ou pressão comercial para liberação rápida.

Planejamento e controle de qualidade

O plano de qualidade deve estabelecer as qualidades desejadas e como avaliá-las. A estrutura inclui: introdução sobre o produto, planos para o produto, descrições de processo, metas de qualidade e gerenciamento de riscos.

Atributos de qualidade do software

  • Segurança: Confiabilidade, capacidade de recuperação, robustez.
  • Facilidade de compreensão: Testabilidade, facilidade de adaptação, modularidade.
  • Portabilidade: Facilidade de uso, facilidade de reuso, eficiência.

Revisões de qualidade

O principal método de validar a qualidade. Os revisores examinam partes ou todo o sistema para encontrar problemas. Tipos incluem:

  • Inspeções: Remoção de defeitos (requisitos, projetos ou código).
  • Revisões de progresso: Avaliar o progresso geral do projeto para a gerência.
  • Revisões de qualidade: Análise técnica para encontrar inconsistências entre especificação, projeto e código.

Medição e métricas de software

A medição permite comparações objetivas. Métricas quantificam o sistema, processo ou documentação (ex: linhas de código, defeitos relatados).

Métricas de produto

  • Métricas dinâmicas: Coletadas durante a execução (eficiência e confiabilidade).
  • Métricas estáticas: Coletadas das representações do sistema (complexidade, legibilidade, manutenção).

Níveis do modelo de maturidade (CMM)

  1. Inicial: Essencialmente não controlado.
  2. Repetível: Procedimentos de gerenciamento de produto definidos.
  3. Definido: Estratégias de gerenciamento de projeto definidas.
  4. Gerenciado: Estratégias de gerenciamento de qualidade definidas.
  5. Otimização: Estratégias de melhoria contínua do processo.

Entradas relacionadas: