Seção: Tutoriais Banda Larga

Defeitos de Software I: Avaliação da Qualidade

 

Entendido o que é crescimento de confiabilidade, voltemos à análise do OpenBSD R 3.0.

 

Vamos aumentar a granularidade de observação e ver o que acontece no dia-a-dia, conforme mostrado na figura 2.

 

Figura 2: Número de defeitos por dia.

 

A figura 2 é um gráfico de controle onde é apresentado o limite superior de controle UCL (Upper Control Limit), o número de defeitos diários e a média móvel calculada sobre 10 dias.

 

Usaremos esse exemplo para apresentar a metodologia de avaliação da qualidade:

  • Durante o período de teste, os pontos fora-de-controle (acima do UCL), devem ser analisados. A análise deve abordar pontos como: necessidade de ações de mudança no processo, necessidade de ações de complementação dos testes, chance do problema voltar a ocorrer mesmo com as ações tomadas, risco de comprometer outras funcionalidades devido às correções de software, etc;
  • Análise de tendência da taxa de defeitos: um período continuado de crescimento da taxa de defeitos deve ser analisado da mesma forma como no item 1, mesmo que não ocorra pontos fora-de-controle.

Analisando o OpenBSD R 3.0 no período pré liberação notamos:

  • Um crescimento consistente da taxa de defeitos em outubro de 2001 que leva a um ponto fora-de-controle em meados desse mês;
  • No período anterior a liberação (15 dias antes) há uma tendência consistente de crescimento da taxa de defeitos;
  • Após a liberação a taxa de defeitos cresce. O crescimento consistente de confiabilidade só é observado em março de 2002.

De acordo com a metodologia, esses pontos deveriam ser analisados e as ações tomadas deveriam ser registradas.

 

De maneira geral, no momento de liberação podemos identificar quatro cenários possíveis:

  • Cenário 1, ideal: o software apresenta um crescimento consistente de confiabilidade;
  • Cenário 2, quase ideal: o software apresenta uma taxa de defeito crescente mas a avaliação é que trata-se um efeito temporário e que a tendência após a liberação será de crescimento de confiabilidade;
  • Cenário 3, crítico: o software apresenta uma taxa de defeito decrescente e a avaliação é que trata-se um efeito temporário e que a tendência, após a liberação, será de decrescimento de confiabilidade durante um certo período;
  • Cenário 4, crítico: o software apresenta uma taxa de defeito crescente e a avaliação é que trata-se um efeito consistente e que a tendência após a liberação será de decrescimento de confiabilidade durante um certo período.

O cenário ideal geralmente não ocorre devido às exigências contratuais, cronograma de entrega, time to market, etc. A análise durante o período de testes fornece elementos adicionais aos engenheiros de desenvolvimento e de teste para prever os possíveis cenários após a liberação.

 

Essa previsão é útil para dimensionar o esforço de manutenção, as cláusulas quantitativas do contrato de manutenção, o risco de situações críticas, o tempo para o software apresentar crescimento de confiabilidade, etc.

 

É aqui que o modelo de crescimento de confiabilidade tem sua utilidade: ajudar a prever e quantificar o que vem depois.