sábado, 11 de fevereiro de 2012

O Custo da Não qualidade.



Teste de Software e o Custo da Não Qualidade.

Ilustração 1: Custo
Fonte: gerenciapratica.blogspot.com

Até a década de 1990 os testes eram efetuados pelos próprios desenvolvedores do software com um nível de cobertura bastante reduzido e não permitiam que todos os defeitos pudessem ser detectados. Muitas vezes, os próprios usuários eram quem descobriam os erros quando o software já estava em produção e onde sua correção era muito mais cara.
A regra 10 de Myers indica que o custo da correção de um defeito tende a ser cada vez maior quanto mais tarde ele for descoberto (Myers, 2004). Defeitos encontrados nas fases iniciais da etapa de desenvolvimento do software são mais baratos de serem corrigidos do que aqueles encontrados na produção. Veja a ilustração 2.

Ilustração 2: Regra 10 de Myers
Fonte: Myers (2004).

     Isso ainda acontece hoje em dia e nestes casos, os testes, servem apenas para garantir que as especificações e requisitos do negócio foram realmente implementados.
Em um modelo de garantia de qualidade de software isso é insuficiente, pois as visões de qualidade mudam dependendo da área em que atuam e o próprio processo pode sofrer danos ao decorrer do mesmo. Veja a ilustração 3.
 
Ilustração 3: Diferentes Interpretações ao longo do ciclo de desenvolvimento de um software
Fonte: Revista Engenharia de Software Ed 1 - Devmedia


O custo da não qualidade de acordo com as estatísticas de mercado aponta que para cada R$1,00 investido no desenvolvimento e manutenção de software, entre R$2,00 e R$3,00 são gastos com re-trabalho. Vale lembrar que existem falhas que causam prejuízos diretos aos seus usuários ou a imagem da empresa, a qual onde o sistema está operante.
Como exemplo de custo das falhas, a empresa Symantec no dia 18 de maio de 2007 liberou uma atualização defeituosa para 50 mil usuários da China. E para recuperar a sua imagem perante seus usuários a empresa liberou uma licença do Norton por 12 meses e uma ferramenta Norton Save & Restore 2.0. Para usuários coorporativos, liberaram licença do Symatec Ghost Solution Suíte, dependendo o número de computadores infectados IDGNOW, 2007.
Outro exemplo de acordo com  jornal Estado de São Paulo Internacional Online no ano de 1988, no dia 3 de julho: Um Airbus A-300 da Iran Air é derrubado no Golfo Pérsico pelo navio de guerra americano US Vincennes, que identificou erroneamente o aparelho como um avião de ataque. Todos a bordo morrem. Estado de São Paulo Internacional Online, 2010.
Rigorosos testes em sistemas e documentações podem reduzir os riscos de ocorrência de problemas no ambiente operacional, e contribui para a qualidade dos sistemas de software se os defeitos encontrados forem corrigidos antes de implantados em produção, (Müller, Thomas, 2007 p.10). O Teste de Software pode também ser necessário para atender requisitos contratuais ou legais ou determinados padrões de mercado. Com a ajuda do teste é possível medir a qualidade do software em termos de defeitos encontrados, por características e requisitos funcionais ou não-funcionais do software como confiabilidade, usabilidade, eficiência e manutenibilidade.  
Um teste projetado adequadamente e cuja execução não encontra defeitos reduz o nível de riscos em um sistema. Por outro lado, quando os testes encontram defeitos, a qualidade do sistema aumenta quando estes são corrigidos. (Müller, Thomas – 2007 p.11)
Os tipos de testes e técnicas de teste poder ser classificados inicialmente em: Teste Caixa Branca, onde esta técnica de teste avalia o comportamento interno do componente de software e trabalha diretamente no código-fonte. Teste de Caixa Preta, onde são conduzidos na interface do software, sem preocupação com a estrutura lógica interna do software.
Dessa forma se faz necessários ter uma visão geral sobre o processo em geral, afim de podermos analisar ambos os aspectos das técnicas de caixa branca e caixa preta.
Um processo de acordo com dicionário Aurélio no item dois define processo sendo: conjunto de atos por que se realiza uma operação qualquer.  Estes conjuntos de atos se torna mais evidente na ilustração 4. O processo é formado por atividades inter-relacionadas com um objetivo especifico. Possui entradas de dados, Funções e Regras que são integradas e executadas em tarefas promovendo uma informação de saída previamente esperada.  
             
Ilustração 4: Visão geral de processos
Fonte: Bartie, 2007


--- Considerações - Thiago Galitezi 

Notem que os testes não cabem somente a área de tecnologia quantas empresas deixam de avaliar adequadamente seu produto antes de libera-lo ao seu cliente, a fim de manter o prazo de entrega ou por não existir um setor responsável pela verificação e validação do produto, existe empresas que atuam como analise por amostragem onde não são avaliados todos os produtos mas uma porcentagem do lote que acabou de ser produzindo neste cenário já é uma evolução do processo.'

Mas o quanto esta avaliação pode custar para a organização ? 

É melhor investirmos somente no setor de qualidade e deixa-lo somente no final da linha de produção para validar que o produto foi testado e pode ser liberado ao cliente ou implementarmos um processo de qualidade em toda a linha de produção? 

Com base nos estudo apresentados alinhado de acordo com a regra de 10 Myers, quanto antes identificarmos uma não conformidade entre a solicitação do cliente e o nosso processo de desenvolvimento, elaboração e criação do produto ou prestação de serviço ao cliente o valor gasto para a correção sera cada vez menos quando identificado nas primeiras etapas do processo elaboração do produto ou prestação do serviço.

O risco para a organização esta diretamente relacionado com a aplicação deste produto ou a prestação de serviço, se uma aplicação desenvolvida para identificar um avião de guerra erroneamente identificar um avião de passageiro como sendo de guerra temos a catástrofe ao qual ocasiona a morte de todos os tripulantes, fato. Mas na nossa organização poderíamos ter um problema grave caso o sistema que identifica a espessura de uma chapa estiver impreciso 2 mm (dois milímetros) sendo suficiente para ocasionar um prejuízo e desperdício da matéria prima, gerando perda financeira e depende aonde esta peça for utilizada pode ocasionar risco de vida se esta peça faz parte de um guindaste por exemplo.

Verificando o custo da não qualidade em relação a atividade fim da organização esta diretamente relacionado ao seu cliente, é mais vantajoso eu liberar um equipamento sem os devidos testes no controle de qualidade e depois enviar um técnico para a empresa para prover as devidas correções ? ou investir no controle de qualidade no meu processo de trabalho em toda a organização ? 

Muitas empresas optam pela primeira opção, mas ao meu ver deveríamos investir na segunda opção elaborando um processo de trabalho que contemplasse a qualidade em todas as suas etapas pois este ao final da linha de produção estaria apto a ser entregue com todos os testes devidamente verificados e validados, e documentados sobre seus respectivos checklist focando no que mais prezamos a SATISFAÇÃO DO NOSSO CLIENTE. 

Eu deixo uma pergunta, para as pessoas que prezam a primeira opção. 
- Até quando este cliente será seu cliente, umas vez que o produto adquirido sempre ocasiona problema e demanda mão de obra especializada do fornecedor para ter o seu correto funcionamento. 

(lembre-se que o mercado esta cada vez mais exigente e mundo globalizado, quebra as barreiras de mercado facilitando a importação de produtos e serviços)

Bom por hoje é só pessoal, pense e reflita -  (Qual o custo da minha não qualidade na minha organização)


Referências: _____________________________________________________

MYERS, Glenford J. The Art of Software Testing. Editora: John Wiley & Sons Inc, 2004.

Araujo, M.A.P.;  Souza, V.R.S.; Vale, R.C.V.; Teste de Desempenho de Aplicações Web com Apache Jmeter. Revista  Engenharia de Software Magazine. Rio de Janeiro, n.7, p.36-43, Março, 2009.

Autora: Summer Lemon.  Symantec compensa 50 mil vítimas de atualização com falha na ChinaDCA IDGNOW , 2007. disponível em < http://webcache.googleusercontent.com/search?q=cache:Sb8_1ai9IdcJ:idgnow.uol.com.br/seguranca/2007/06/25/idgnoticia.2007-06-25.7174306115/+falha+no+update+symantec+2007&hl=pt-BR&gl=br&strip=1> acesso em 20 de março de 2010.

MÜLLER, Thomas ;  et al.   Syllabus Versão 2007Br, Editora: ISTQB  - Comissão Internacional para Qualificação de Teste de Software, 2007

BARTIE, Alexandre, Garantia da Qualidade de Software.  Editora: Altabooks, 2007





Nenhum comentário:

Postar um comentário