1 / 25

Qualidade de P rodutos de Software

Qualidade de P rodutos de Software. Marília Oliveira. Roteiro. Introdução Modelos de Qualidade Testes de Software Inspeções Modelos de Maturidade para Testes. Introdução.

winfred
Download Presentation

Qualidade de P rodutos de Software

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Qualidade de Produtos de Software Marília Oliveira

  2. Roteiro • Introdução • Modelos de Qualidade • Testes de Software • Inspeções • Modelos de Maturidade para Testes

  3. Introdução • A indústria busca a cada dia oferecer produtos de maior qualidade, a fim de fidelizar clientes, vencer a concorrência, ganhar mercado e por conseqüência, conseguir melhores resultados financeiros. • Qualidade é objetivo de negócio.

  4. Introdução • O que é um software de qualidade? • Qualidade verificável – requisitos verificáveis • Requisitos funcionais e não funcionais idealmente devem descrever características qualitativas e quantitativas que devem ser respeitadas • Medir a qualidade de um software é avaliá-lo em relação a essas características.

  5. Modelos de Qualidade • ISO 9126 • ISO/IEC 9126-1 • ISO 12119 • ISO 14598 • Projeto SQuaRE

  6. ISO/IEC 9126-1 • Modelo de referência para atributos de qualidade • Características e subcaracterísticas de qualidade • Funcionalidade • Adequação • Acurácia • Conformidade • Segurança de acesso • Confiabilidade • Maturidade • Tolerância a falhas • Recuperabilidade • Usabilidade • Intelegibilidade • Apreensibilidade

  7. ISO/IEC 9126-1 • Características e subcaracterísticas de qualidade • Eficiência • Tempo • Recursos • Manutenibilidade • Analisabilidade • Modificabilidade • Estabilidade • Testabilidade • Portabilidade • Adaptabilidade • Facilidade para ser instalado

  8. IS0 12119 • Avaliação de pacotes de software • Requisitos de qualidade • Descrição do Produto • Documentação do usuário • Programas e dados • Instruções para testes • Pré-requisitos de teste • Atividades de teste • Registro de teste • Relatório de teste

  9. ISO 14598 • Guia para avaliação de produtos de software baseado na ISO 9126 • Define um processo geral de avaliação e um conjunto de guias relacionados ao objetivo da avaliação • Guia para Desenvolvedores • Guia para Aquisição • Guia para Avaliação

  10. Projeto SQuaRE • Organização em conjunto das normas 9126 e 14598 - norma ISO/IEC 25000 Requisitos de Qualidade 2503n Modelo de Qualidade 2501n Avaliação 2504n Gerenciamento de Qualidade 2501n Medições2501n

  11. Testes de Software • O que é um produto de qualidade? • Normas / atributos de qualidade • Como avaliar se os atributos de qualidade estão presentes no software? • Teste de software • Inspeção

  12. Testes de Software • Atividade de executar um objeto de testes com o intuito de encontrar falhas, onde falha é qualquer tipo de comportamentonão desejado no sistema • Atividade de executar um sistema para demonstrar que ele faz o que era suposto fazer • Avaliar um objeto de software em relação a sua especificação

  13. Abordagens de testes • Caixa Preta – motivação de testar uma combinação de entradas e verificar as respectivas saídas. • Caixa Branca – motivação de testar “caminhos”, estruturas de controle no código- fonte e verificar as saídas.

  14. Estágios de Teste - I • Testes de unidade – objeto de testes é um componente – classe, normalmente caixa-branca • Testes de integração – objeto de testes é a interface entre dois componentes já previamente testados – caixa-branca ou caixa-preta

  15. Estágios de Testes - II • Testes de sistema – objeto de testes é o sistema, já instalado em um ambiente similar ao de produção – caixa-preta. • Testes de aceitação – objeto de testes é o sistema, mas o objetivo é obter o “aceite” do usuário final. Teste alfa ou beta.

  16. Tipos de Testes • Relacionados a quais requisitos ou características específicas do sistema que serão verificadas. • Teste funcional • Teste de recuperação a falhas • Teste de interoperabilidade • Teste de segurança • Teste de carga • Teste de performance • Teste de stresse • Teste de configuração • Teste de usabilidade

  17. Testes de Regressão • Atividade de re-executar um conjunto de testes em um objeto de teste (componente, interface, sistema) de modo a observar se novos defeitos foram introduzidos após um incremento de funcionalidade ou uma manutenção corretiva.

  18. Processo de Testes Planejamento e Controle Análise e Projeto Implementação e Execução Avaliação dos critérios de saída Encerramento

  19. Inspeção de Software - I • Testes Estáticos – ao contrário dos testes dinâmicos, que avaliam o comportamento do sistema em execução, os testes estáticos avaliam a estrutura dos artefatos produzidos (especificações, modelos e código-fonte) e verifica aspectos como adequação a padrões, completude, corretude e consistência • Detectam de 60% (Fagan, 1986) a 90% (Mills,1987) dos defeitos de um sistema, detecção e correção mais barata • Suporte de ferramentas

  20. Testes e o ciclo de vida do software Requisitos do usuário Testes de Aceitação Requisitos do sistema Testes de sistema Projeto do sistema Teste de Integração Projeto dos componentes Testes de unidade Implementação

  21. Modelos de Maturidade para Testes • Modelos de referência para o processo de desenvolvimento são pouco superficiais em relação às atividades de testes • Modelos de maturidade para testes – modelos de referência para a definição de processos de testes mais eficientes. • Investir em processo falho é desperdiçar mais recursos para obter os mesmos resultados.

  22. Matriz de Maturidade De Teste Áreas Chave Níveis Pontos de Verificação Sugestões de Melhoria Test Process Improvement - TPI • 20 áreas chaves dividas em: • ciclo de vida do desenvolvimento do software; • técnicas de planejamento e testes; • infra-estrutura do ambiente de testes; • fatores organizacionais.

  23. Test Maturity Model - TMM • Baseado no CMM e aderente ao CMMI • 5 níveis de maturidade, áreas de processo definidas para cada nível Otimização Gerenciamento e Medição Integração Definição Inicial

  24. Test Improvement Model - TIM • Desenvolvido pela Ericson, Subotic, Ursing • 5 níveis de maturidade: • Nível 0 • Nível 1 – Baseline • Nível 2 – Cost-efectiveness • Nível 3 – Risk-lowering • Nível 4 – Optimizing • Aspectos: • Organização • Planejamento e rastreabilidade • Casos de testes • Testware • Revisões

  25. Considerações finais • Se o assunto é qualidade de software não há como desvinculá-la a realização de testes • Mas não basta ter profissionais de testes na equipe ou atividades de testes no processo • Teste é uma atividade bastante custosa, sendo assim é preciso otimizar a utilização dos recursos disponíveis e executar “os melhores testes possíveis” • É preciso definir o que fazer, como fazer e quando fazer, de preferência em conformidade com normas e padrões internacionais e modelos de referencia para processos de testes

More Related