• Nenhum resultado encontrado

ES1 14 VVeT 01

N/A
N/A
Protected

Academic year: 2021

Share "ES1 14 VVeT 01"

Copied!
25
0
0

Texto

(1)

Engenharia de Software 1

14 - Verifica¸c˜ao e Valida¸c˜ao: Introdu¸c˜ao

Alexandre de Andrade Barbosa

alexandre.barbosa@arapiraca.ufal.br

(2)

Objetivos

Objetivos

Apresentar conceitos de verifica¸c˜ao e valida¸c˜ao de software Descrever o que ´e inspe¸c˜ao de software

Descrever o que ´e teste de software

(3)

Verifica¸c˜ao, valida¸c˜ao e teste de software

Exerc´ıcios, Resumo e Referˆencias

Verifica¸c˜ao est´atica e verifica¸c˜ao dinˆamica Inspe¸c˜oes de software

Teste de Software

Verifica¸c˜

ao e Valida¸c˜

ao: Introdu¸c˜

ao

Introdu¸c˜ao

Por que verificar e validar?

Identificar os limites do sistema

Possibilitar que modifica¸c˜oes realizadas n˜ao tenham impacto negativo

...

Nenhum processo de V&V garante que um sistema ´

e livre de

defeitos

(4)

Verifica¸c˜ao, valida¸c˜ao e teste de software

Exerc´ıcios, Resumo e Referˆencias

Verifica¸c˜ao est´atica e verifica¸c˜ao dinˆamica Inspe¸c˜oes de software

Teste de Software

Verifica¸c˜

ao e Valida¸c˜

ao: Introdu¸c˜

ao

Introdu¸c˜ao

Por que verificar e validar?

Descobrir defeitos em um sistema

Possibilitar que modifica¸c˜oes realizadas n˜ao tenham impacto negativo

...

Nenhum processo de V&V garante que um sistema ´

e livre de

defeitos

(5)

Verifica¸c˜

ao e Valida¸c˜

ao: Introdu¸c˜

ao

Introdu¸c˜ao

Por que verificar e validar?

Descobrir defeitos em um sistema

Avaliar se sob uma situa¸c˜ao normal o sistema se comporta como esperado

Identificar os limites do sistema

Possibilitar que modifica¸c˜oes realizadas n˜ao tenham impacto negativo

...

Nenhum processo de V&V garante que um sistema ´

e livre de

defeitos

(6)

Verifica¸c˜

ao e Valida¸c˜

ao: Introdu¸c˜

ao

Introdu¸c˜ao

Falhas em software s˜

ao comuns

Falhas em software

(7)

Verifica¸c˜

ao e Valida¸c˜

ao: Introdu¸c˜

ao

Introdu¸c˜ao

Verifica¸c˜

ao e Valida¸

ao (V&V) possuem objetivos distintos

Verifica¸c˜

ao

“Estamos construindo o produto corretamente?” O software est´a de acordo com suas especifica¸c˜oes

Valida¸c˜

ao

“Estamos construindo o produto correto?”

(8)

Verifica¸c˜

ao e Valida¸c˜

ao: Introdu¸c˜

ao

Verifica¸c˜ao est´atica e verifica¸c˜ao dinˆamica

Verifica¸c˜

ao est´

atica e verifica¸

ao dinˆ

amica

Verifica¸c˜ao est´atica

Observa¸c˜ao de representa¸c˜oes est´aticas do sistema Objetivo ´e descobrir problemas nestas representa¸c˜oes Verifica¸c˜ao dinˆamica

Execu¸c˜ao do produto para observa¸c˜ao de seu comportamento Objetivo ´e mostrar o funcionamento correto da execu¸c˜ao, ou identificar defeitos na execu¸c˜ao

(9)

Verifica¸c˜

ao e Valida¸c˜

ao: Introdu¸c˜

ao

Verifica¸c˜ao est´atica e verifica¸c˜ao dinˆamica

Inspe¸

ao e Teste de software

Inspe¸c˜ao de software (ou revis˜oes por pares) Verifica¸c˜ao de representa¸c˜oes do software

a maioria das vezes ´e uma t´ecnica de V&V est´atica Teste de software

Requer a execu¸c˜ao de uma implementa¸c˜ao do software ´

e sempre uma atividade dinˆamica

Inspe¸

ao frenquentemente ´

e chamada de verifica¸

ao est´

atica

Teste frenquentemente ´

e chamado de verifica¸

ao dinˆ

amica

(10)

Verifica¸c˜

ao e Valida¸c˜

ao: Introdu¸c˜

ao

Verifica¸c˜ao est´atica e verifica¸c˜ao dinˆamica

Verifica¸c˜ao est´atica e verifica¸c˜ao dinˆamica

(11)

Verifica¸c˜

ao e Valida¸c˜

ao: Introdu¸c˜

ao

Inspe¸c˜ao

Inspe¸

ao

pode ser realizada sobre qualquer especifica¸c˜ao relacionada ao software

n˜ao necessita de uma vers˜ao execut´avel (por isso ´e est´atica) pode verificar, por exemplo:

se requisitos s˜ao consistentes (especifica¸c˜ao textual, diagramas de caso de uso, ...)

se o c´odigo segue um conjunto de normas (identa¸c˜ao, padr˜ao de declara¸c˜ao de vari´aveis, ...)

(12)

Verifica¸c˜

ao e Valida¸c˜

ao: Introdu¸c˜

ao

Teste de Software

Teste

s´o pode ser realizada sobre uma vers˜ao execut´avel do software (por isso ´e dinˆamica)

o planejamento pode ocorrer muito antes de uma vers˜ao execut´avel estar pronta (ex. estrat´egia de teste em V) o teste pode ser implementado muito antes do c´odigo da aplica¸c˜ao (ex. TDD)

pode verificar: a existˆencia de bugs, a ausˆencia de bugs em um dom´ınio restrito, a quantidade de carga suportada pelo software n˜ao pode garante: a ausˆencia completa de bugs

(13)

Verifica¸c˜

ao e Valida¸c˜

ao: Introdu¸c˜

ao

Inspe¸c˜oes de software

Inspe¸

oes de software

´

E uma abordagem padronizada para revis˜ao de documentos (ex. c´odigo, requisitos, plano de testes, ...)

Especialistas examinam uma representa¸c˜ao do software em busca de defeitos

N˜AO ´e necess´ario executar o software

(14)

Verifica¸c˜

ao e Valida¸c˜

ao: Introdu¸c˜

ao

Inspe¸c˜oes de software

Exemplos de problemas que podem ser detectados em inspe¸

oes

Diagramas com inconsistˆencias;

Vari´avel n˜ao iniciada no c´odigo;

C´odigo em n˜ao conformidade com padr˜oes; ...

(15)

Verifica¸c˜

ao e Valida¸c˜

ao: Introdu¸c˜

ao

Inspe¸c˜oes de software

(16)

Verifica¸c˜

ao e Valida¸c˜

ao: Introdu¸c˜

ao

Inspe¸c˜oes de software

Processo de inspe¸c˜ao

(17)

Verifica¸c˜

ao e Valida¸c˜

ao: Introdu¸c˜

ao

Inspe¸c˜oes de software

An´

alise est´

atica automatizada

Ferramentas de software que auxiliam na inspe¸c˜ao de software Marcam condi¸c˜oes errˆoneas no documento analisado

(18)

Verifica¸c˜

ao e Valida¸c˜

ao: Introdu¸c˜

ao

Inspe¸c˜oes de software

Inspe¸

oes e Testes

S˜ao t´ecnicas complementares Ambas devem ser utilizadas na V&V

Uma inspe¸c˜ao pode revelar muitos defeitos simultaneamente Um teste pode identificar um defeito, mas muitos outros podem estar “ocultos”

Inspe¸c˜oes n˜ao podem verificar requisitos n˜ao funcionais (ex. desempenho, seguran¸ca, ...)

Teste podem verificar requisitos n˜ao funcionais ...

(19)

Verifica¸c˜

ao e Valida¸c˜

ao: Introdu¸c˜

ao

Teste de software

“Os testes podem apenas mostrar a presen¸

ca de erros, n˜

ao

sua ausˆ

encia

completa”

(20)

Verifica¸c˜

ao e Valida¸c˜

ao: Introdu¸c˜

ao

Teste de software

Testes devem mostrar que o software ´

e bom o suficiente para uso

(confi´

avel)

Apenas um subconjunto de casos poss´ıveis de teste ´

e verificado

Testes exaustivos n˜ao s˜ao poss´ıveis, podem existir muitos caminhos

(21)

Verifica¸c˜

ao e Valida¸c˜

ao: Introdu¸c˜

ao

Teste de software

Testes podem ser categorizados segundo uma s´

erie de crit´

erios:

Tipos de teste segundo objetivo: Teste de valida¸c˜ao ou Teste de defeitos;

Tipos de testes segundo a fase de aplica¸c˜ao: Teste de unidade, Teste de Integra¸c˜ao, Teste de Sistema ou Teste de regress˜ao Tipos de teste segundo o crit´erio de aplica¸c˜ao: Teste funcional, Teste estrutural e Teste baseado em defeito

(22)

Exerc´ıcio

Exerc´ıcio

1 O que ´e verifica¸c˜ao? O que ´e valida¸c˜ao?

2 O que ´e inspe¸c˜ao?

3 O que ´e teste de software?

(23)

Resumo

Resumo

Verifica¸c˜ao e valida¸c˜ao buscam responder as perguntas “Estamos construindo o produto corretamente?” “Estamos construindo o produto correto?” Existem duas abordagens de verifica¸c˜ao:

Inspe¸c˜oes de Software (verifica¸c˜ao est´atica) Teste de Software (verifica¸c˜ao dinˆamica)

Testes de software podem ser classificados de diversas maneiras:

Teste de sistema, Teste de integra¸c˜ao ou Teste de unidade Teste de valida¸c˜ao ou Teste de defeitos

(24)

Leitura recomendada

Ian Sommerville.

Engenharia de Software, 8a ed., 2007.

Cap´ıtulo 22 - Verifica¸c˜ao e valida¸c˜ao

Ian Sommerville.

Engenharia de Software, 8a ed., 2007.

Cap´ıtulo 22 - Verifica¸c˜ao e valida¸c˜ao Cap´ıtulo 23 - Teste de software

M. E. Delamaro, J. C. Maldonado & M. Jino

Introdu¸c˜ao ao Teste de Software, 1a ed. (2007), Editora Campus. Cap´ıtulo 1 - Conceitos b´asicos

(25)

Perguntas?

Alexandre de Andrade Barbosa

alexandre.barbosa@arapiraca.ufal.br

Referências

Documentos relacionados

A finalidade do “Documento de Arquitetura de Software - DAS” é definir um modelo arquitetural para ser aplicado ao desenvolvimento dos jogos do Desafio SEBRAE, bem como

Traçar um perfil do conteúdo veiculado nas manhãs brasileiras identificando categorias e gêneros utilizados por estes cinco importantes canais e suas afiliadas locais, é

principais experiências profissionais durante os últimos 5 anos, indicando: nome e setor de atividade da empresa, cargo e se a empresa integra (i) o grupo econômico do

No dia 29 de maio (quinta-feira), às 21 horas, a ACBJ realiza o Concerto Comemorativo do Centenário da Imigração Japonesa no Brasil, com a Orquestra Aliança Cultural

• A Revolução Industrial corresponde ao processo de industrialização que teve início na segunda metade do.. século XVIII no

UM ESTUDO DA HISTÓRIA AFRICANA ANTIGA REVELA UMA ANTERIOR DEFINIÇÃO AFRICANA DO SISTEMA DE MELANINA HUMANA COMO UM [INTEIRO] SANTO CORPO PRETO [HOLY BLACK BODY

115 você usou o verbo no plural e na negativa, pois você sabe que eles estão localizados na Cinelândia e não em

10° Aplicação de fórmulas: P9 e B13 para tosse ; B13 e B38 para asma ; BP6 e E30 para as regras dolorosas ; ID3 e C6 para transpiração noturna ; B54 e R1 para hipertensão,