Baixe o app para aproveitar ainda mais
Prévia do material em texto
Qualidade de Software Edmilson Frank Qualidade de Software ● Restropectiva ○ Calendário Acadêmico Qualidade de Software ● Restropectiva ○ Calendário Acadêmico ○ Plano de Curso Qualidade de Software ● Restropectiva ○ Calendário Acadêmico ○ Plano de Curso ○ Regrinhas importantes Qualidade de Software ● Restropectiva ○ Calendário Acadêmico ○ Plano de Curso ○ Regrinhas importantes ○ Introdução ao conteúdo Definindo qualidade Definindo qualidade ● Do que é composta? ○ Planejamento da qualidade ○ Garantia da qualidade ○ Controle da qualidade Definindo qualidade ● Do que é composta? ○ Planejamento da qualidade ■ Processo para identificar quais padrões são relevantes para o projeto. ■ Planejamento de atividades para prevenção de defeitos Definindo qualidade ● Do que é composta? ○ Garantia da qualidade ■ Estruturação, sistematiazação e execução das atividades que garantem o adequado desempenho de cada etapa planejada anteriormente Definindo qualidade ● Do que é composta? ○ Controle da qualidade ■ Monitoramento e desempenho dos resultados do projeto. ■ Processo contínuo e sistemático para avaliação da qualidade do processo e do produto. ● Compondo a qualidade de software ○ Qualidade do processo ○ Qualidade do produto Definindo qualidade ● Compondo a qualidade de software ○ Qualidade do processo ○ Qualidade do produto ● Cultura de não-tolerância a erros Definindo qualidade ● Qualidade do processo ○ Inibir e impedir falhas ○ Identificação prematura de falhas ○ Evitar propagação de erros ○ Adiar o controle de qualidade custa caro Definindo qualidade ● Qualidade do produto ○ Garantir a qualidade do produto gerado no ciclo ○ Identificar falhas ○ Testes Definindo qualidade Definindo qualidade ● Qualidade através dos testes ○ Encontrar falhas Definindo qualidade ● Qualidade através dos testes ○ Encontrar falhas ○ Mas... o que são testes? Definindo qualidade O que são testes? Testes ● “Demonstrar que os defeitos não estão presentes”. ● “Processo de demonstrar que algo funciona corretamente”. ● “Processo de provar que determinadas coisas fazem o que deveriam fazer”. Testes - visão inicial ● Pensar positivamente sobre o processo ou produto Testes ● Atividade ○ Pensar num teste para um processo de rotina Testes Servem para provar que algo não funciona Testes - repensando ● Pensar negativamente sobre o processo ou produto ● O teste deve ser feito para fazer o produto “quebrar” Testes - visão geral Exemplos? Nova atividade: recriar os testes anteriores Testes - visão geral ● Testes para programa de calculadora ○ Soma ○ Raiz quadrada ○ Parênteses Testes - visão geral ● Limitações ○ Não garante que o software está livre de erros ○ O software tem, virtualmente, infinitos erros Testes - visão geral Testes - visão geral ... SistemaPossível Falha Testes - visão geral ... Testes ● Compromisso com a identificação de erros ● Limitações ○ Não garante que o software está livre de erros Testes - visão geral Detalhes Testes ● Deve ser planejado e projetado ● Formato do teste ○ Verificação ○ Validação Testes ● Formato do teste ○ Verificação ■ Antes da codificação ■ Auditoria de atividades ■ Avaliação dos documentos Testes ● Formato do teste ○ Validação ■ Avaliação dos produtos tecnológicos ■ Componentes isolados ■ Módulos inteiros ■ Sistemas completos Testes Testes PERGUNTA FALA DE... Segui o processo? Garantia de qualidade Fiz a coisa corretamente? Verificação Fiz a coisa certa? Validação ● Criando testes Testes ● Criando testes ○ Volume ○ Transparência ○ Resistência ao frio ○ Resistência ao choque mecânico ○ Massa ○ Material ○ Integridade ○ Sabor (?) Testes ● Caso de teste ○ Conjunto de entradas para programa ○ Conjunto de saídas esperadas para programa Testes ● Caso de teste ○ Conjunto de entradas para programa ○ Conjunto de saídas esperadas para programa ● Exemplos? Testes ● Caso de teste ○ Conjunto de entradas para programa ○ Conjunto de saídas esperadas para programa ● Exemplos? ○ Soma de três números Testes ● Caso de teste ○ Conjunto de entradas para programa ○ Conjunto de saídas esperadas para programa ● Exemplos? ○ Soma de três números ■ Entrada: a, b, c ■ Saída: resultado Testes ● Caso de teste ○ Conjunto de entradas para programa ○ Conjunto de saídas esperadas para programa ● Exemplos? ○ Raiz quadrada de um número Testes ● Caso de teste ○ Conjunto de entradas para programa ○ Conjunto de saídas esperadas para programa ● Exemplos? ○ Raiz quadrada de um número ■ Entrada: a ■ Saída: resultado Testes ● Próxima aula… ○ Classificação dos testes Testes
Compartilhar