Engenharia de Software II



Documentos relacionados
Engenharia de Software II

Engenharia de Software II

Engenharia de Software II

Engenharia de Software II

Testes de Software. Testes de Software. Teste de Validação. Teste de Defeito. Modelo de Entrada e Saída. Modelo de Entrada e Saída

Testes de Software. Testes de Software. Teste de Validação. Teste de Defeito. Modelo de Entrada e Saída. Modelo de Entrada e Saída

Juciara Nepomuceno de Souza Rafael Garcia Miani. Teste de Software

IES-300. Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Me. Álvaro d Arce alvaro@darce.com.br

Conteúdo. Disciplina: INF Engenharia de Software. Monalessa Perini Barcellos

Como melhorar a Qualidade de Software através s de testes e nua. Cláudio Antônio de Araújo 22/11/2008

Especificação do 3º Trabalho

Técnicas de Teste de Software

Teste de Software Estrutural ou Caixa Branca. Disciplina de Engenharia de Software prof. Andrey Ricardo Pimentel

Engenharia de Software II

Teste de Software. Ricardo Argenton Ramos Engenharia de Software I

IES-300. Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Me. Álvaro d Arce alvaro@darce.com.br

Princípios do teste de software

1. Introdução ao teste de software 2. Testes em um ciclo de vida de software 3. Especificado vs. Implementado 4. Preenchendo um modelo de

PONTIFÍCIA UNIVERSIDADE CATÓLICA DE GOIÁS Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas

Técnicas de Teste de Software

Projeto de Sistemas I

Engenharia de Software II

Conteúdo. Disciplina: INF Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo

Técnicas de Caixa Preta de Teste de Software

Fundamentos em Teste de Software. Vinicius V. Pessoni

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 20 PROFª BRUNO CALEGARO

Teste de Software Parte 1. Prof. Jonas Potros

Engenharia de Software II

Casos de teste semânticos. Casos de teste valorados. Determinar resultados esperados. Gerar script de teste automatizado.

Engenharia de Software II

Qualidade de Software. Profa. Cátia dos Reis Machado

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação

c. Técnica de Estrutura de Controle Teste do Caminho Básico

Sumário. Uma visão mais clara da UML

Unidade VI. Validação e Verificação de Software Teste de Software. Conteúdo. Técnicas de Teste. Estratégias de Teste

GEADA. Gerador de Expressões Algébricas em Digrafos Acíclicos. para versão 1.0, de agosto/2008. Autor: Márcio Katsumi Oikawa

AULA 1 INTRODUÇÃO - ENGENHARIA DE SOFTWARE. Prof. Msc. Hélio Esperidião

Prof. Raul Sidnei Wazlawick UFSC-CTC-INE. Fonte: Análise e Projeto de Sistemas de Informação Orientados a Objetos, 2ª Edição, Elsevier, 2010.

Análise de Requisitos Conceitos

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia.

Fundamentos de Teste de Software

ENGENHARIA DE SOFTWARE I

PROJETO DA DISCIPLINA. PES II Processo de Engenharia de Software II

Concepção e Elaboração

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação

ATRIBUTOS PRIVADOS 6. ENCAPSULAMENTO MÉTODOS PRIVADOS MÉTODOS PRIVADOS

Testar os programas para estabelecer a presença de defeitos no sistema. Teste de Software. Teste de defeitos. Objetivos. Tópicos

PROFESSOR: CRISTIANO MARIOTTI

Engenharia de Software II

Análise e Projeto de Software

Implantação. Prof. Eduardo H. S. Oliveira

Gerência de Redes. Introdução.

Engenharia de Software II

4 Segmentação Algoritmo proposto

Análise de Sistemas. Visão Geral: Orientação a Objetos. Prof. José Honorato Ferreira Nunes honorato.nunes@bonfim.ifbaiano.edu.br

PROJETO (OU DESIGN) DO SOFTWARE Diagrama de Estrutura

Felipe Denis M. de Oliveira. Fonte: Alice e Carlos Rodrigo (Internet)

Modelos de Sistema by Pearson Education. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 8 Slide 1.

UML - Unified Modeling Language

AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0

Processos de gerenciamento de projetos em um projeto

a) Teste das funções do sistema com outros sistemas b) Teste de componentes que em conjunto compõem a função do sistema

Campus Capivari Análise e Desenvolvimento de Sistemas (ADS) Prof. André Luís Belini prof.andre.luis.belini@gmail.com /

Práticas de. Engenharia de Software. Givanaldo Rocha de Souza

Engenharia de Software

PRIMAVERA RISK ANALYSIS

Universidade Federal Rural de Pernambuco. Bacharelado em Sistemas de Informação. Disciplina: Análise e Projeto de Sistemas de Informação

Engenharia de Software II

Sumário. Deadlock. Definição. Recursos. M. Sc. Luiz Alberto

QUALIDADE DE SOFTWARE. Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 27 Slide 1

Múltiplos Estágios processo com três estágios Inquérito de Satisfação Fase II

Engenharia de Software III

AULA 1 Iniciando o uso do TerraView

Ciclo de Vida Clássico ou Convencional CICLOS DE VIDA DE DESENVOLVIMENTO DE SISTEMAS. Ciclo de Vida Clássico ou Convencional. Enfoque Incremental

Manual AGENDA DE BACKUP

Engenharia de Software II

No mundo atual, globalizado e competitivo, as organizações têm buscado cada vez mais, meios de se destacar no mercado. Uma estratégia para o

Gerenciamento de Riscos do Projeto Eventos Adversos

Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto

ARQUITETURA DE SOFTWARE

SMS Corporativo Manual do Usuário

Testes de Software AULA 02 PLANEJANDO E ELABORANDO OS TESTES. Anne Caroline O. Rocha TesterCertified BSTQB NTI UFPB

Modelo Cascata. Alunos: Bruno Nocera Zanette Pedro Taques

DIRETRIZES DE USO DA MATRIZ DE SISTEMATIZAÇÃO DE INFORMAÇÕES

DISCIPLINA ENGENHARIA DE SOFTWARE Aula 03 Desenvolvimento Ágil Modelos Ágeis. Profª Esp.: Maysa de Moura Gonzaga

Unisant Anna Gestão Empresarial com ERP 2014 Modelagem de Sistemas - UML e MER

Engenharia Reversa e Reengenharia

2 Diagrama de Caso de Uso

Gerência de Projetos

Prof. Me. Marcos Echevarria

Referências internas são os artefatos usados para ajudar na elaboração do PT tais como:

Sistemas de Informação I

UNIVERSIDADE FEDERAL RURAL DE PERNAMBUCO DEPARTAMENTO DE ESTATÍSTICA E INFORMÁTICA BACHARELADO EM SISTEMAS DE INFORMAÇÃO RAPID APPLICATION DEVELOPMENT

Introdução aos critérios de consulta. Um critério é semelhante a uma fórmula é uma cadeia de caracteres que pode consistir em

UNIVASF - Universidade Federal do Vale do São Francisco Manutenção de Software

Engenharia de Software

Transcrição:

Engenharia de Software II Aula 10 http://www.ic.uff.br/~bianca/engsoft2/ Aula 10-24/05/2006 1

Ementa Processos de desenvolvimento de software Estratégias e técnicas de teste de software (Caps. 13 e 14 do Pressman) Métricas para software Gestão de projetos de software: conceitos, métricas, estimativas, cronogramação, gestão de risco, gestão de qualidade e gestão de modificações Reengenharia e engenharia reversa Aula 10-24/05/2006 2

Testes Caixa-Preta e Caixa-Branca Testes Caixa-Preta São conduzidos na interface do software, sem preocupação com a estrutura lógica interna do software. Testes Caixa-Branca São baseados em um exame rigoroso do detalhe procedimental. Caminhos lógicos e colaborações entre componentes são testadas. Entrada Entrada Software Software Saída Saída Aula 10-24/05/2006 3

Teste Caixa Preta Também chamado de teste comportamental. Focaliza os requisitos funcionais do software. É complementar ao teste caixa branca. Deve ser aplicado durante os últimos estágios de teste. Ignora de propósito a estrutura de controle para focalizar o domínio da informação. Aula 10-24/05/2006 4

Projeto de Teste Caixa Preta Deve responder às seguintes perguntas: Como a validade funcional é testada? Como o comportamento e o desempenho do sistema são testados? Que classes de entrada vão constituir bons casos de teste? O sistema é particularmente sensível a certos valores de entrada? Como são isolados os limites de uma classe de dados? Que taxas e volumes de dados o sistema pode tolerar? Que efeito as combinações específicas de dados vão ter na operação do sistema? Aula 10-24/05/2006 5

Tipos de Teste Caixa Preta 1. Teste baseado em grafos 2. Particionamento de equivalência 3. Análise de valor-limite 4. Teste de matriz ortogonal Aula 10-24/05/2006 6

Métodos de Teste Baseados em Grafos O primeiro passo no teste é entender os objetos que estão modelados no software e as relações entre eles. Para isso, o engenheiro cria um grafo onde cada nó representa um objeto e cada aresta representa uma relação entre os objetos. Depois disso, uma série de testes é criada para cobrir o grafo de modo que cada objeto e cada relação seja exercitada. Aula 10-24/05/2006 7

Exemplo Arquivo Novo Relação Direcional Seleção menu gera (tempo de geração < 1,0 segundos) Janela de Documento Atributos: -Dimensões iniciais -Cor de fundo -Cor de texto É representado como Relação Bi-direcional Possibilita a edição de Texto de Documento Contém Relação Paralela Aula 10-24/05/2006 8

Tipos de modelagem usando grafos Modelagem de fluxo de transação Nós representam passos em alguma transação. Arestas representam as conexões lógicas entre os passos. Modelagem de estado finito Nós representam diferentes estados do software observáveis pelo usuário. Arestas representam transições de um estado para outro. Modelagem de fluxo de dados Nós representam os objetos de dados. Arestas representam as transformações que ocorrem para traduzir um objeto em outro. Eg: FTW = 0,62 x GW Modelagem de tempo Nós representam objetos do programa. Arestas representam ligações seqüenciais entre esses objetos. Pesos são usados para especificar os tempos de execução. Aula 10-24/05/2006 9

Tipos de Teste Caixa Preta 1. Teste baseado em grafos 2. Particionamento de equivalência 3. Análise de valor-limite 4. Teste de matriz ortogonal Aula 10-24/05/2006 10

Particionamento de Equivalência Busca definir casos de teste que descobrem classes de erros, reduzindo o número total de casos de teste. Divide o domínio de entrada de um programa em classes de dados. Uma classe de equivalência representa um conjunto de estados válidos ou inválidos para a entrada. Aula 10-24/05/2006 11

Diretrizes para Classes de Equivalência 1. Se uma condição de entrada especifica inválida 1 válida inválida 2 um intervalo: Uma classe de equivalência válida e duas inválidas são definidas. 2. Se uma condição de entrada exige um valor específico: inválida 1 válida inválida 2 Uma classe de equivalência válida e duas inválidas são definidas. Aula 10-24/05/2006 12

Diretrizes para Classes de Equivalência 3. Se uma condição de entrada especifica o membro de um conjunto: válida inválida Uma classe de equivalência válida e uma inválida são definidas. 4. Se uma condição de entrada é booleana: Uma classe de equivalência válida e uma inválida são definidas. Aula 10-24/05/2006 13

Tipos de Teste Caixa Preta 1. Teste baseado em grafos 2. Particionamento de equivalência 3. Análise de valor-limite 4. Teste de matriz ortogonal Aula 10-24/05/2006 14

Análise de Valor-limite (BVA) Há uma tendência de ocorrência de erros nas fronteiras do domínio de entrada. Por esse motivo, foram desenvolvidas as técnicas BVA (boundary-value analysis). Em vez de selecionar qualquer elemento de uma classe de equivalência, a BVA leva a escolha de casos de testes nas bordas da classe. Aula 10-24/05/2006 15

Diretrizes para BVA 1. Se uma condição de entrada especifica um intervalo: a b Casos de teste com o valores a e b, e imediatamente acima e abaixo são planejados. 2. Se uma condição de entrada especifica vários valores: Casos de teste devem ser desenvolvidos para exercitar o mínimo e o máximo. Valores imediatamente acima e abaixo também devem ser testados. Aula 10-24/05/2006 16

Diretrizes para BVA 3. Aplique as diretrizes 1 e 2 às condições de saída. Exemplo: a saída de um programa é uma tabela de dados. Casos de teste devem ser criados para gerar tabelas com o mínimo e o máximo de linhas e colunas. 4. Se as estruturas de dados internas do programa têm limites definidos, testes devem ser projetados para exercitar os limites internos. Aula 10-24/05/2006 17

Tipos de Teste Caixa Preta 1. Teste baseado em grafos 2. Particionamento de equivalência 3. Análise de valor-limite 4. Teste de matriz ortogonal Aula 10-24/05/2006 18

Teste de Matriz Ortogonal Se o domínio de entrada é limitado, é possível realizar testes exaustivos de todos as combinações de valores de entrada. Exemplo: três parâmetros que assumem três valores discretos cada um (3 3 3 = 27 casos de teste). Para domínios de entrada muito grandes, uma abordagem comum é variar um parâmetro de cada vez. Não detecta interações entre parâmetros O teste de matriz ortogonal é um meio termo, aplicável a problemas com domínio de entrada relativamente pequeno, mas grande demais para testes exaustivos. Aula 10-24/05/2006 19

Exemplo Três itens de entrada: X, Y, Z com três valores cada. Z Z Z Y Y Y X Teste Singular X Matriz Ortogonal X Teste Exaustivo Aula 10-24/05/2006 20

Propriedades da Matriz Ortogonal Casos de teste ficam espalhados uniformemente pelo domínio de teste. Detecta e isola todas as falhas de modo singular. Pela análise da informação sobre quais testes revelam erros, pode-se identificar quais valores de parâmetro causam a falha. Detecta todas as falhas de modo duplo. Falhas multi-modo podem ou não ser detectadas. Aula 10-24/05/2006 21

Métodos de Teste Orientados a Objetos Métodos de teste caixa branca e caixa preta são aplicáveis, mas surgem algumas complicações: O encapsulamento torna difícil o acesso ao estado do objeto. Torna-se necessário criar métodos para relatar os valores dos atributos da classe. A herança múltipla aumenta o número de contextos para os quais o teste é necessário. Se a subclasse é usada um contexto diferente da superclasse, um novo conjunto de testes para a superclasse precisa ser projetado. Mesmo os métodos que não foram redefinidos tem que ser testados. Aula 10-24/05/2006 22