190 likes | 317 Views
Cap 8 – Garantia de Qualidade de Software. Ricardo L Schneider FES – 2002/ 1. GQS é uma atividade ‘guarda-chuva’ que é aplicada ao longo de todo o processo de software. Objetivo simples: produzir software de alta qualidade. Conceitos de Qualidade.
E N D
Cap 8 – Garantia de Qualidade de Software Ricardo L Schneider FES – 2002/1
GQS é uma atividade ‘guarda-chuva’ que é aplicada ao longo de todo o processo de software. Objetivo simples: produzir software de alta qualidade
Conceitos de Qualidade • Variação entre amostras (não existem dois flocos de neve iguais!) • Qualidade (“característica ou atributo de alguma coisa”) • Qualidade do design • Qualidade de conformidade • Controle de Qualidade (inspeções, revisões e testes >> feedback)
Custo da Qualidade: • Custos da Prevenção: • planejamento da qualidade • revisões técnicas formais • equipamentos de teste • treinamento • Custos de Avaliação: • inspeções • calibragem e manutenção dos equipamentos • testes
Custos de falhas: • Custos Internos (antes da entrega) • retrabalho • reparo • análise das falhas • Custos Externos (após a entrega) • resolução das reclamações • retorno e substituição do produto • manutenção da linha de ajuda • trabalho de comprovação
Custo da Correção [Boehm 81] 1000 40-1000 30-70 100 15-40 10 10 3-6 1 1 Req Cod Teste Tst Sys Oper. Proj
TQM (Total Quality Management)Edwards Deming - 86 • kaizenmelhoria do processo (visível, repetitivo, mensurável) • atarimae hinshitsufatores intangíveis que afetam o processo • kanseifoco no usuário do produto • miryokuteki hinshitsumercado
Revisões de software • São “filtros” para o processo de engenharia de software • Usa a diversidade de um grupo para: • apontar melhorias no produto de uma pessoa ou grupo • confirmar partes que não precisam ou não se deseja melhorias; e • encontrar produtos de qualidade mais uniforme,previsível e gerenciável
ampliação e remoção de defeitos Passo de desenvolvimento detecção defeitos Erros passantes Erros para o Erros Percentagem de eficiência na detecção dos erros Erros amplificados 1 : x Erros do passo anterior passo seguinte Erros novos gerados
Revisão técnica formal • Walkthroughs • Inspeções • Revisões round-robin (aleatórias) • + 3 a 5 pessoas • preparação prévia de no máx 2 h • tempo da reunião de até 2 h
Regras para as revisões • revisar o produto não o produtor • preparar uma agenda e segui-la • limitar o debate • enunciar as áreas de problemas, não resolver todos • tomar notas da reunião • limitar o número de participantes • preparar um cheklist de cada produto revisado • alocar recursos e tempo para as revisões • treinar os revisores • revisar suas revisões anteriores
Garantia formal da qualidade de um software • “Se um programa de software é um objeto matemático podemos especificar e provar, de maneira rigorosa e formal, a sua correção e a conformidade com sua especificação”
Garantia estatística de qualidade • Informações sobre defeitos são coletadas e categorizadas • Análise das causas dos defeitos • Usar o princípio de Pareto (80/20) para identificar os defeitos vitais • Corrigir as causas principais dos defeitosvitais
Confiabilidade do software • Confiabilidade MTBF = MTTF + MTTR • Disponibilidade = MTTF / MTBF x 100%
I. Propósito do plano II.Referências III.Gerênciamento 1.Organização 2.Tarefas 3.Responsabilidades IV.Documentação 1.Propósito 2.Doctos técnicos 3.Outros doctos V.Padrões, práticas e convenções 1.Propósitos 2.Convenções VI.Revisões e auditorias 1.Propósitos 2.Requisitos das revisões a) revisão dos requisitos de software O plano de GQS
b) revisão do projeto c) revisão de verificação e validação d) auditoria funcional e) auditoria física f) auditoria do processo g) revisões gerenciais VII.Testes VIII.Relatório de problemas e ação de correção IX.Ferramentas, técnicas e metodologias X.Controle de código XI.Controle de mídias XII.Controle de suprimentos XIII.Coleção de registros XIV.Treinamento XV.Gerência de riscos
O padrão ISO 9000 [ansi 87] • O sistema de garantia de qualidade: • estrutura organizacional • responsabilidades • procedimentos • processos • recursos
approach da iso 9000 • “a empresa é vista como uma rede de processos interconectados. Estes processos devem ser identificados, documentados e seguidos na prática, permitindo controle e melhorias. A empresa é auditada e certificada por auditores independentes (semestralmente).”
Aplicabilidade das normas ISO • ISO 9000 >> geral, vale para qualquer produto • ISO 9001 >> aplicada aos serviços de engenharia (20 requisitos básicos) • ISO 9000-3 >> processos de software