Técnicas de Teste de Software

Tamanho: px
Começar a partir da página:

Download "Técnicas de Teste de Software"

Transcrição

1 Técnicas de Teste de Software Fabrício Sousa

2 Projeto de Caso de Teste Conjunto de técnicas para criação de casos de testes Série de casos de testes que tem grande probabilidade de encontrar erros Técnicas de Teste de software Fornecem diretrizes sistemáticas Exercitam a lógica interna e interfaces Exercitam os domínios de entrada e saída 2

3 Fundamentos do Teste Testabilidade É simplesmente quão fácil um programa pode ser testado Características Operabilidade Observabilidade Contrabilidade Decomponibilidade Simplicidade Estabilidade 3

4 Testabilidade: Características Operabilidade Quanto melhor funciona, mais eficientemente pode ser testado Observalidade O que você ver é o que você testa Contrabilidade Quanto melhor você pode controlar o software, mais o teste pode ser automatizado e otimizado 4

5 Testabilidade: Características Decomponibilidade Controlando o escopo do teste, podemos isolar problemas mais rapidamente e realizar retestagem mais racionalmente Simplicidade Quanto menos houver a testar, mais rapidamente podemos testá-lo Escabilidade Quanto menos modificações, menos interrupções no teste 5

6 Testabilidade: Características Compreensibilidade Quanto menos informações temos, mais racionalmente vamos testar 6

7 Um bom teste......tem alta probabilidade de encontrar um erro....não é redundante...não deve ser muito simples nem muito complexo 7

8 Caso de teste Especificação de uma entrada para o programa e a correspondente saída esperada Entrada: conjunto de dados necessários para uma execução do programa Saída esperada: resultado de uma execução do programa (um oráculo é esperado) Um bom caso de teste tem alta probabilidade de revelar um erro ainda não descoberto 8

9 Projeto de Casos de Teste Projeto de teste pode ser tão difícil quanto o projeto do próprio produto a ser testado Poucos programadores/analistas gostam de teste; menos ainda de projeto de casos de teste 9

10 Técnicas de Projeto de Casos de Teste Maneira sistemática e planejada para conduzir os testes ( Critérios de Teste ) Conjunto de Casos de Teste T características desejáveis: i ) deve ser finito ii) o custo de aplicação deve ser razoável 10

11 Teste Caixa-Preta (Funcional) Testes feitos na interface do software Examina algum aspecto fundamental do software, pouco se preocupando com a estrutura lógica interna 11

12 Teste de Caixa-branca (Estrutural) Exame rigoroso do detalhe procedimental Casos de testes Abrangem todas as características Definir todos os caminhos lógicos Exercitar a lógica do programa de forma exaustiva Testes exaustivos são impossíveis para grandes sistemas 12

13 Teste de Caminho Básico Técnica de teste Caixa Branca Conjunto básico de caminhos de execução Garantia de execução de cada comando pelo menos uma vez 13

14 Teste de Caminho Básico: Grafo de Fluxo Grafo de fluxo ou grafo de programa Controle lógico Nó (círculo) Representa um ou mais comandos procedimentais Arestas (ligações) Fluxo de controle Deve terminar em um nó Região Áreas limitadas por arestas e nós 14

15 Teste de Caminho Básico: Grafo de Fluxo 15

16 Exemplo de Grafo de Controle 16

17 Teste Estrutural 17

18 Exercício 1: Construir fluxo de grafo 18

19 Resposta Exercício 19

20 Caminhos independentes de Programa É qualquer caminho ao longo do programa que introduz pelo menos um novo conjunto de comandos de processamento ou uma nova condição Exemplos:

21 Predicado Cada nó que contém uma condição Caracterizado por duas ou mais arestas saindo dele Exemplo: Quantos predicados tem o grafo abaixo? Um 21

22 Conjunto Base Garantia de que todos os caminhos tenham sido executados pelo menos uma vez Cada condição tenha sido executada no seu lado verdadeiro e no seu lado falso Complexidade ciclomática Métrica de software que fornece medida quantitativa da complexidade lógica de um programa Fornece limite superior para a quantidade de testes que garante que todos os caminhos sejam executados pelo menos uma vez 22

23 Complexidade ciclomática: cálculo 1. Número de regiões correspondente à complexidade ciclomática 2. complexidade ciclomática V(G) 1. V(G)= E N+2 1. E= nº de arestas (edges) 2. N= nº de nós (nodes) 3. V(G)=P+1 1. P= nº de predicados (predicate) 23

24 Região Áreas limitadas por arestas e nós. Sempre consideramos a região externa em relação ao conjunto universo

25 Exercícios 2: Conjunto base do exercício anterior 3: Quantas regiões? 4: Quantos predicados? 5: Complexidade ciclomática 6: Como podemos representar esse grafo no computador? 25

26 Matrizes de Grafos Matriz quadrada Tamanho Nº de nós do grafo Entrada da matriz Arestas (conexões) 26

27 Teste de Estrutura de Controle Amplia a cobertura Melhoram a qualidade do teste de caixa branca Tipos Teste de Condição Teste de Fluxo de dados Teste de ciclo 27

28 Teste de Condição Exercita as condições lógicas contidas em um módulo de programa Focaliza o teste de cada condição do programa para garantir que não contém erros Condição Simples E 1 <operador-relacional> E 2 E 1 e E 2 expressões aritméticas Operador relacional: <, <=, >, >=, =, Condição Composta OU ( ), E (&), Não ( ) 28

29 Teste de Condição Erros mais comuns: Operadores booleanos incorretos/faltanto/extra Variável booleana Parênteses booleanos Operador relacional Expressão aritmética 29

30 Teste de Ciclo (loops) Parte importante dos algoritmos Damos pouca atenção nos testes Técnica que focaliza exclusivamente a validade de construções de ciclo 30

31 Teste de Ciclo (loops) Ciclos simples Ciclos aninhados Ciclos concatenados Ciclos desestruturados 31

32 Ciclos simples Conjunto de teste que pode ser aplicado, sendo N, o nº máximo de execução do loop Pule o ciclo completamente Apenas uma passagem pelo ciclo Duas passagens pelo ciclo M passagens pelo ciclo em que M<N N-1, N, N+1, passagens pelo ciclo 32

33 Teste Caixa-preta (Funcional) Teste Comportamental Focaliza os requisitos funcionais Complementa o teste de caixa-branca Tenta encontrar erros da seguinte forma Funções omitidas ou incorretas Erros de interface Erros de estrutura de dados Erros de comportamento ou desempenho Erros de iniciação ou término 33

34 Teste Caixa-preta: Tipos Métodos baseados em Grafo Particionamento de Equivalência Análise de Valor-limite 34

35 Particionamento de Equivalência Divide o domínio de entrada de um programa em classes de dados Descobre classes de erros, reduzindo o total de casos de testes que precisam ser desenvolvidos 35

36 Particionamento de Equivalência As classes, que podem ser válidas ou inválidas, são definidas de acordo com as seguintes diretrizes: se a condição de entrada especifica um intervalo, são definidas uma classe válida e duas inválidas se a condição de entrada especifica um membro de um conjunto, são definidas uma classe válida e uma inválida se a condição de entrada for booleana, são definidas uma classe válida e uma inválida 36

37 37

38 Algoritmo para exemplificação De acordo com sua especificação existem, basicamente, quatro entradas: um inteiro positivo (entre 1 e 20 3 partições) uma cadeia de caracteres um caractere a ser procurado a opção por procurar por mais caracteres (duas partições: uma para s e outra para n ) 38

39 Algoritmo para exemplificação (cont.) o domínio de saída consiste de duas respostas, que levam a outra divisão do domínio de entrada: a posição na qual o caractere foi encontrado na string (caractere de entrada pertencente à string) uma mensagem declarando que ele não foi encontrado (caractere de entrada não pertencente à string) 39

40 40

41 Particionamento de Equivalência: observações Reduz o tamanho do domínio de entrada Concentra-se em criar dados de teste baseados unicamente na especificação É especialmente adequado para aplicações em que as variáveis de entrada podem ser facilmente identificadas e podem ter valores distintos Problemas: embora a especificação possa sugerir que um grupo de dados seja processado de forma idêntica, isso pode não ocorrer a técnica não fornece um guia para a determinação dos dados de teste 41

42 Análise do Valor Limite Complementa o Particionamento de Equivalência Coloca sua atenção em uma fonte propícia a erros os Limites de uma classe ou partição de equivalência 42

43 Análise do Valor Limite Se a condição de entrada especifica um intervalo limitado pelos valores de a e b Casos de testes Valores de A e B Imediatamente acima e imediatamente abaixo de A e B Se a condição de entrada especifica vários valores Casos de testes Números mínimos e máximos Valores imediatamente acima e imediatamente abaixo do mínimo e do máximo 43

44 Análise de Valor-limite: Exemplo Aplicação: os valores inteiros 0, 1, 20 e 21 encontrar o caractere na primeira e na última posição da cadeia de caracteres 44

45 Teste de Comandos Estabelece como requisito de teste que sejam executados todos os comandos do programa ao menos uma vez 45

46 46

47 Teste de Comandos É necessário concentrar-se nos comandos que são controlados por condições fornecer um valor para x que esteja fora do intervalo para forçar a execução dos comandos no loop (linhas 11-12) quando x está dentro do intervalo, ele será no mínimo 1 e o comando dentro do for (linha 16) será executado 47

48 Teste de Comandos o comando if (linha 25) precisa ser executado, com as alternativas then e else (linhas 26 e 28) procurar por um caractere que esteja na cadeia e que force a procura dentro dela A entrada no while (linha 23) é garantida O comando if (linha 30) precisa ser executado, com as alternativas then e else (linhas 31 e 33) um caractere que pertença e outro que não pertença à cadeia (combinando com o if anterior uma cadeia de caracteres a, de um caractere e valores para a variável c que ocorra e que não ocorra em a) por fim, é preciso terminar o loop para executar o comando end 48

49 Teste de Comandos É o nível mínimo de cobertura esperado no teste estrutural 49

50 Teste de Ramos Estabelece como dados de teste exercitar todas as saídas verdadeiro e falso de todas as decisões 50

51 Teste de Ramos É conveniente observar o grafo do programa Observando o grafo, é necessário gerar dados de teste que causem as duas saídas verdadeiro e falso que ocorrem nos nós 2, 5, 9, 10, 14 e 17 Para o nó 2, um valor da variável x menor que 1 ou maior que 20 causa a saída pelo ramo verdadeiro e um valor de x dentro desse intervalo causa a saída pelo ramo falso O nó 5, comando for (linha 15), terá as saídas verdadeiro e falso, desde que o valor de x seja ao menos 1 (e terá que ser para chegar nesse ponto) 51

52 Teste de Ramos (cont.) para o nó 9, loop while (linha 23), a saída verdadeiro (arco k) é garantida devido aos comandos das linhas 21 e 22; a saída falso (arco q) é garantida ou quando o caractere que está sendo procurado é encontrado ou quando o final da cadeia é encontrado O nó 10, if (linha 25), requer uma comparação que encontre o caractere que está sendo procurado (arcos l, n) e uma outra que cause o incremento de i (arcos m, o) o nó 14 (linha 30) precisa de um caractere que seja encontrado e um outro que não seja encontrado o nó 17 requer pelo menos mais uma iteração do loop repeat (arco r) antes que o final do programa seja encontrado (arco w) 52

53 Teste de Ramos (cont.) O conjunto de dados de testes é o mesmo do Teste de Comandos, mas neste, o caractere a poderia ser fornecido através de outra execução do programa Já no Teste de Ramos, a execução do loop repeat é 53 obrigatória

54 Teste de Condição Estabelece os requisitos de teste tal que todas as condições em uma decisão requeiram as duas saídas, verdadeiro e falso, se for possível, ao menos uma vez 54

55 Teste de Condição: exemplo é necessário considerar todos os nós identificados no Teste de Ramos, mas neste caso, devem ser consideradas todas as condições das decisões no loop while (linha 9), tem-se uma decisão com duas condições: while (x<1) or (x>20) do valores de x: 0 e 21 obtém-se a cobertura das condições se x=0 então a primeira condição é verdadeira e a segunda é falsa; se x=21 então a primeira condição é falsa e a segunda é verdadeira 55

56 Teste de Condição: exemplo (cont.) é necessário gerar um outro valor para x que esteja dentro do intervalo, de forma que seja possível a execução do resto do programa esse valor pode ser determinado pelo requisito imposto pela outra condição do programa, que corresponde ao loop for do comando: for i:=1 to x do para uma saída verdadeira a variável i deve ser menor ou igual a x; para uma saída falsa a variável i deve ser maior que x. Como x é pelo menos 1 para se chegar nessa parte do programa, o for é executado até que i seja maior que x 56

57 Teste de Condição: exemplo (cont.) loop while, linha 23 (nó 9): while (not(achou))and(i<=x) do as duas condições nessa decisão são verdadeiras quando se entra nesse loop Para torná-las com valor falso, é preciso prever as duas alternativas, ou seja, o caso de um caractere que pertença à string e o caso de um caractere que não pertença essas duas alternativas geram também os valores verdadeiro e falso para os comandos if da linha 25 e if da linha 30 57

58 Teste de Condição: exemplo (cont.) a última decisão a ser considerada é o comando until da linha 37 (nó 17): until (resposta = n ) or (resposta = N ) quando é fornecido o valor n, a primeira condição é verdadeira e a segunda é falsa; quando é fornecido o valor N, a primeira é falsa e a segunda é verdadeira (executar o programa duas vezes) 58

59 Teste de Condição: exemplo (cont.) o Teste de Condição pode não satisfazer o Teste de Ramos neste caso, o loop do repeat não é executado 59

60 Teste Baseado em Erros Os requisitos de teste são estabelecidos com base nos erros típicos e comuns cometidos durante o desenvolvimento do software Critério: Análise de Mutantes 60

61 Análise de Mutantes 61

62 Análise de Mutantes Hipótese do Programador Competente Programadores experientes escrevem programas corretos ou muito próximos do correto. Efeito de Acoplamento Casos de teste capazes de revelar erros simples são tão sensíveis que, implicitamente, também são capazes de revelar erros mais complexos. 62

63 Análise de Mutantes Garantir a ausência de determinados tipos de defeitos Considerando todos os programas Q, é possível provar a correção de P 63

64 Análise de Mutantes É impraticável executar e comparar todos os programas Q Estabelece-se então uma vizinhança F(P) que contém apenas um conjunto finito de Programas Esses programas contêm pequenos desvios sintáticos que representam defeitos simples 64

65 Análise de Mutantes Os operadores de mutação determinam o tipo de alteração sintática que deve ser feita para a criação dos mutantes Introduzir pequenas alterações semânticas através de pequenas alterações sintáticas que representam defeitos típicos Operadores dependem da linguagem alvo FORTRAN (22 operadores) C (71 operadores) 65

66 Exemplos de operadores de mutação Retira um comando de cada vez do programa Troca operador relacional por operador relacional Troca o comando while por do-while Interrompe a execução do laço após duas execuções Troca valores das constantes Requer valor negativo, positivo e zero para cada referência escalar 66

67 Análise de Mutantes Dados P e T Passos para a Aplicação da Análise de Mutantes P é executado com os casos de teste de T Mutantes são gerados Mutantes são executados com os casos de teste de T Mutantes são analisados 67

68 Exemplo: Mutação Considere o trecho do programa e o conjunto de teste obtido para o Teste de Ramos 68

69 Exemplo 1: Mutação (cont.) Mutante 1: alteração na linha 21 de: achou := FALSE para: achou := TRUE considere agora que o mutante seja re-executado com os dados de teste obtidos para o Teste de Ramos a saída gerada seria: o caractere a aparece na posição 1 em vez de: o caractere a não ocorre na string fornecida, mutante seria morto por esse conjunto de dados de teste 69

70 Exemplo 2: Mutação (cont.) Mutante 2: alteração na linha 22 de: i := 1 para: x := 1 considere agora que o mutante seja re-executado com os dados de teste obtidos para o Teste de Ramos o erro não é revelado; o mutante continua vivo pois a saída gerada por ele é igual à saída gerada pelo programa original, uma vez que a string é de tamanho 1 e o loop while da linha 23 executa exatamente uma vez (somente se o for sair com i=1) para matar esse mutante deve-se criar um caso de teste que possua uma string de tamanho maior que 1 e assim, qualquer caractere da posição 2 em diante será considerado como não pertencente à string, mesmo que faça parte dela 70

71 Exemplo 2: (cont.) Mutante 2: novos dados de teste para ser morto Dado de teste que mata o mutante 2 Obs: se o programa original fosse executado com esses dados, os caracteres v e C seriam encontrados nas posições 3 e 2 respectivamente. 71

72 Exemplo 3: Mutação (cont.) Mutante 3: alteração na linha 28 de: i := i + 1 para: i := i + 2 considere agora que o mutante seja re-executado com os dados de teste obtidos para o Teste de Ramos o erro não é revelado; o mutante continua vivo pois a saída gerada por ele é igual à saída gerada pelo programa original, uma vez que a string é de tamanho 1 e o loop while da linha 23 executa exatamente uma vez (o incremento de 2 não será executado) para matar esse mutante deve-se criar um caso de teste que possua uma string de tamanho maior que 1 e, além disso, é necessário procurar por um caractere nas posições pares da string 72

73 Exemplo 3: mutantes Mutante 3: novos dados de teste para ser morto Obs: Se o programa original fosse executado com esse dado de teste, o caractere C seria encontrado na posição 2 73

74 Mutantes: Observações Teste de Mutação consegue mostrar a ausência de erros particulares, pois ao matar os mutantes está sendo mostrado que o programa original não possui aquele erro Esse critério força o testador a analisar cuidadosamente o programa, uma vez que ele precisa criar dados de teste que exponham os erros introduzidos Desvantagem: Ele é computacionalmente caro devido ao grande número de mutantes gerados e o tempo e recurso usados para compilar e executar todos eles 74

75 Aspectos genéricos das Estratégias de Teste A atividade de teste inicia-se no nível de módulos e caminha na direção da integração de todo o sistema diferentes técnicas de teste são apropriadas para diferentes situações a atividade de teste, em geral, é realizada pela equipe de desenvolvimento e, no caso de grandes projetos, por um grupo de teste independente as atividades de teste e depuração são atividades diferentes, mas a depuração é necessária em qualquer estratégia de teste 75

76 Relação entre o processo de software e uma estratégia de software 76

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

IES-300. Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Me. Álvaro d Arce alvaro@darce.com.br IES-300 Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Me. Álvaro d Arce alvaro@darce.com.br Teste de Caixa Branca 2 Teste de Componentes: Caixa Branca Teste de Caixa Branca Grafo de Fluxo de

Leia mais

Engenharia de Software II

Engenharia de Software II Engenharia de Software II Aula 9 http://www.ic.uff.br/~bianca/engsoft2/ Aula 9-19/05/2006 1 Ementa Processos de desenvolvimento de software Estratégias e técnicas de teste de software (Caps. 13 e 14 do

Leia mais

Engenharia de Software II

Engenharia de Software II Engenharia de Software II Aula 8 http://www.ic.uff.br/~bianca/engsoft2/ Aula 8-17/05/2006 1 Ementa Processos de desenvolvimento de software Estratégias e técnicas de teste de software (Caps. 13 e 14 do

Leia mais

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

Teste de Software Estrutural ou Caixa Branca. Disciplina de Engenharia de Software prof. Andrey Ricardo Pimentel andreyrp@hotmail. Teste de Software Estrutural ou Caixa Branca Disciplina de Engenharia de Software prof. Andrey Ricardo Pimentel andreyrp@hotmail.com Contexto da Aula Introdução a ES Qualidade Métricas de Software Planejamento

Leia mais

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

Unidade VI. Validação e Verificação de Software Teste de Software. Conteúdo. Técnicas de Teste. Estratégias de Teste Unidade VI Validação e Verificação de Software Teste de Software Profa. Dra. Sandra Fabbri Conteúdo Técnicas de Teste Funcional Estrutural Baseada em Erros Estratégias de Teste Teste de Unidade Teste de

Leia mais

Introdução a Verificação, Validação e Teste de Software

Introdução a Verificação, Validação e Teste de Software Engenharia de Software I 2012.2 Introdução a Verificação, Validação e Teste de Software Ricardo A. Ramos [Baseado na apresentação do LABS ICMC-USP -> http://www.labes.icmc.usp.br] Organização Introdução

Leia mais

Engenharia de Software II

Engenharia de Software II 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

Leia mais

Testes Baseados na Implementação. (fluxo de controle) Baseado em notas de aula da profa. Eliane Martins

Testes Baseados na Implementação. (fluxo de controle) Baseado em notas de aula da profa. Eliane Martins Testes Baseados na Implementação (fluxo de controle) Baseado em notas de aula da profa. Eliane Martins 1 Tópicos O que é Grafo de fluxo de controle Critérios de cobertura 2 Referências B.Beizer R.Binder

Leia mais

Juciara Nepomuceno de Souza Rafael Garcia Miani. Teste de Software

Juciara Nepomuceno de Souza Rafael Garcia Miani. Teste de Software Juciara Nepomuceno de Souza Rafael Garcia Miani Teste de Software Técnicas de Teste de Software Testabilidade Operabilidade; Observabilidade; Controlabilidade; Decomponibilidade; Simplicidade; Estabilidade;

Leia mais

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

PONTIFÍCIA UNIVERSIDADE CATÓLICA DE GOIÁS Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas PONTIFÍCIA UNIVERSIDADE CATÓLICA DE GOIÁS Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas CMP1132 Processo e qualidade de software II Prof. Me. Elias Ferreira Sala: 402 E Quarta-Feira:

Leia mais

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

Como melhorar a Qualidade de Software através s de testes e nua. Cláudio Antônio de Araújo 22/11/2008 Como melhorar a Qualidade de Software através s de testes e integração contínua. nua. Cláudio Antônio de Araújo 22/11/2008 Objetivos Fornecer uma visão geral da área de testes de software, com ênfase em

Leia mais

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 DCC / ICEx / UFMG Testes de Software Testes de Software Teste de software buscam por erros ou anomalias em requisitos funcionais e não funcionais Classificação de testes pelo objetivo Teste de Validação:

Leia mais

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 DCC / ICEx / UFMG Testes de Software Testes de Software Eduardo Figueiredo http://www.dcc.ufmg.br/~figueiredo Teste de software buscam por erros ou anomalias em requisitos funcionais e não funcionais Classificação

Leia mais

Técnicas de Teste de Software

Técnicas de Teste de Software Técnicas de Teste de Software Luis Renato dos Santos FAES - UFPR 2011 Luis Renato dos Santos (FAES - UFPR) Técnicas de Teste de Software 2011 1 / 23 Sumário Introdução Fundamentos de Teste de Software

Leia mais

Fundamentos de Teste de Software

Fundamentos de Teste de Software Núcleo de Excelência em Testes de Sistemas Fundamentos de Teste de Software Módulo 2- Teste Estático e Teste Dinâmico Aula 6 Teste Dinâmico: Técnicas de Especificação SUMÁRIO INTRODUÇÃO... 3 TÉCNICAS BASEADAS

Leia mais

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

a) Teste das funções do sistema com outros sistemas b) Teste de componentes que em conjunto compõem a função do sistema Simulado CTFL- BSTQB Tempo de duração: 60 minutos 1. Considerando as seguintes afirmações: I. 100% de cobertura de sentença (comando) garante 100% de cobertura de desvio II. 100% de cobertura de desvio

Leia mais

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

IES-300. Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Me. Álvaro d Arce alvaro@darce.com.br IES-300 Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Me. Álvaro d Arce alvaro@darce.com.br Teste de Caixa Preta 2 Teste de Caixa Preta Partição de Equivalência Análise de Valor Limite Teste

Leia mais

OPERADORES E ESTRUTURAS DE CONTROLE

OPERADORES E ESTRUTURAS DE CONTROLE OPERADORES E ESTRUTURAS DE CONTROLE 3.1 Operadores Os operadores indicam o tipo de operação matemática que será executada gerando novos valores a partir de um ou mais operadores. São muito utilizados em

Leia mais

Programação WEB I Estruturas de controle e repetição

Programação WEB I Estruturas de controle e repetição Programação WEB I Estruturas de controle e repetição Operadores de Incremento Operadores de incremento servem como expressões de atalho para realizar incrementos em variáveis Operadores de Incremento Vamos

Leia mais

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES 3.1 - IDENTIFICADORES Os objetos que usamos no nosso algoritmo são uma representação simbólica de um valor de dado. Assim, quando executamos a seguinte instrução:

Leia mais

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

Testar os programas para estabelecer a presença de defeitos no sistema. Teste de Software. Teste de defeitos. Objetivos. Tópicos Teste de defeitos Teste de Software Testar os programas para estabelecer a presença de defeitos no sistema Ian Sommerville 2000 Software Engineering, 6th edition. Chapter 20 Slide 1 Ian Sommerville 2000

Leia mais

Algoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br

Algoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br Introdução O computador como ferramenta indispensável: Faz parte das nossas vidas; Por si só não faz nada de útil; Grande capacidade de resolução

Leia mais

Técnicas de Caixa Preta de Teste de Software

Técnicas de Caixa Preta de Teste de Software Técnicas de Caixa Preta de Teste de Software Na maioria de projetos de teste, o tempo para a realização dos mesmos sempre é curto e os números de testes a serem realizados nas aplicações são inúmeros.

Leia mais

ENGENHARIA DE SOFTWARE Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br

ENGENHARIA DE SOFTWARE Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com.br - MÓDULO 4 - TESTE DE SOFTWARE 1. INTRODUÇÃO O teste do software é a investigação do software a fim de fornecer informações sobre sua qualidade em relação ao contexto em que ele deve operar. Isso inclui

Leia mais

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

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Disciplina: INF 02810 Prof.: (monalessa@inf.ufes.br) Conteúdo 1. Introdução 2. Processo de Software 3. Gerência de

Leia mais

Práticas de. Engenharia de Software. Givanaldo Rocha de Souza givanaldo.rocha@ifrn.edu.br http://docente.ifrn.edu.

Práticas de. Engenharia de Software. Givanaldo Rocha de Souza givanaldo.rocha@ifrn.edu.br http://docente.ifrn.edu. "Antes de imprimir pense em sua responsabilidade e compromisso com o MEIO AMBIENTE." Engenharia de Software Práticas de Engenharia de Software Givanaldo Rocha de Souza givanaldo.rocha@ifrn.edu.br http://docente.ifrn.edu.br/givanaldorocha

Leia mais

Introdução a Algoritmos Parte 04

Introdução a Algoritmos Parte 04 Universidade Federal do Vale do São Francisco Curso de Engenharia de Computação Introdução a Algoritmos Parte 04 Prof. Jorge Cavalcanti jorge.cavalcanti@univasf.edu.br www.univasf.edu.br/~jorge.cavalcanti

Leia mais

Curso: Ciência da Computação Disciplina: Construção de Compiladores Período: 2010-1 Prof. Dr. Raimundo Moura

Curso: Ciência da Computação Disciplina: Construção de Compiladores Período: 2010-1 Prof. Dr. Raimundo Moura UFPI CCN DIE Curso: Ciência da Computação Disciplina: Construção de Compiladores Período: 2010-1 Prof. Dr. Raimundo Moura O projeto Desenvolver um compilador de um subconjunto básico da linguagem PORTUGOL.

Leia mais

Engenharia de Software II

Engenharia de Software II Engenharia de Software II Aula 14 Revisão http://www.ic.uff.br/~bianca/engsoft2/ Aula 14-07/05/2006 1 Processo de Software Qual é a diferença entre uma atividade de arcabouço e uma atividade guarda chuva?

Leia mais

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

c. Técnica de Estrutura de Controle Teste do Caminho Básico 1) Defina: a. Fluxo de controle A análise de fluxo de controle é a técnica estática em que o fluxo de controle através de um programa é analisado, quer com um gráfico, quer com uma ferramenta de fluxo

Leia mais

Teste de Software Parte 3. Prof.: Jonas Potros

Teste de Software Parte 3. Prof.: Jonas Potros Teste de Software Parte 3 Prof.: Jonas Potros Conteúdo Teste Funcional Teste Funcional Técnica de projeto de casos de teste na qual o programa ou sistema é considerado uma caixapreta. Para testá-lo, são

Leia mais

Princípios do teste de software

Princípios do teste de software Teste de Software Princípios do teste de software Conforme a Lei de Pareto, 80% dos erros podem ser localizados em 20% do projeto, geralmente nos módulos principais do sistema; A atividade de teste não

Leia mais

Prof. Me. Marcos Echevarria

Prof. Me. Marcos Echevarria Prof. Me. Marcos Echevarria Já vimos que existem vários tipos de testes de software que podemos usar para que nossos sistemas tenham uma qualidade maior. Além disso, esses testes podem ser executados em

Leia mais

Aula 27 Testes Caixa Branca. Alessandro Garcia Willian Oizumi LES/DI/PUC-Rio Novembro 2014

Aula 27 Testes Caixa Branca. Alessandro Garcia Willian Oizumi LES/DI/PUC-Rio Novembro 2014 Aula 27 Testes Caixa Branca Alessandro Garcia Willian Oizumi LES/DI/PUC-Rio Novembro 2014 Especificação Objetivo dessa aula Apresentar os conceitos básicos utilizados ao testar módulos Apresentar 3 critérios

Leia mais

Qualidade de Software. Profa. Cátia dos Reis Machado catia@ifc-camboriu.edu.br

Qualidade de Software. Profa. Cátia dos Reis Machado catia@ifc-camboriu.edu.br Qualidade de Software Profa. Cátia dos Reis Machado catia@ifc-camboriu.edu.br Verificação x validação Verificação prova que o produto vai ao encontro dos requerimentos especificados no desenvolvimento

Leia mais

Problemas insolúveis. Um exemplo simples e concreto

Problemas insolúveis. Um exemplo simples e concreto Surge agora uma outra questão. Viemos buscando algoritmos para resolver problemas. No entanto, será que sempre seria possível achar esses algoritmos? Colocando de outra forma: será que, para todo problema,

Leia mais

4 Segmentação. 4.1. Algoritmo proposto

4 Segmentação. 4.1. Algoritmo proposto 4 Segmentação Este capítulo apresenta primeiramente o algoritmo proposto para a segmentação do áudio em detalhes. Em seguida, são analisadas as inovações apresentadas. É importante mencionar que as mudanças

Leia mais

1.6. Tratamento de Exceções

1.6. Tratamento de Exceções Paradigmas de Linguagens I 1 1.6. Tratamento de Exceções Uma exceção denota um comportamento anormal, indesejado, que ocorre raramente e requer alguma ação imediata em uma parte do programa [GHE 97, DER

Leia mais

Teste de Software. Ricardo Argenton Ramos ricargentonramos@gmail.com. Engenharia de Software I 2012.2

Teste de Software. Ricardo Argenton Ramos ricargentonramos@gmail.com. Engenharia de Software I 2012.2 Teste de Software Ricardo Argenton Ramos ricargentonramos@gmail.com Engenharia de Software I 2012.2 O que diferencia teste de software OO de testes Convencionais? Técnicas e abordagens são normalmente

Leia mais

Algoritmo. Prof. Anderson Almeida Ferreira. Agradeço ao prof. Guilherme Tavares de Assis por fornecer slides que fazem parte desta apresentação

Algoritmo. Prof. Anderson Almeida Ferreira. Agradeço ao prof. Guilherme Tavares de Assis por fornecer slides que fazem parte desta apresentação 1 Algoritmo Prof. Anderson Almeida Ferreira Agradeço ao prof. Guilherme Tavares de Assis por fornecer slides que fazem parte desta apresentação Desenvolvimento de programas 2 Análise do problema Desenvolvimento

Leia mais

ESTRUTURA CONDICIONAL

ESTRUTURA CONDICIONAL AULA 6 ESTRUTURA CONDICIONAL 130 Tem como objetivo executar um conjunto de comandos caso uma condição lógica seja atendida. Quando a resposta lógica for falsa, nada será executado. Sintaxe Se CONDIÇÃO

Leia mais

Tutorial de Matlab Francesco Franco

Tutorial de Matlab Francesco Franco Tutorial de Matlab Francesco Franco Matlab é um pacote de software que facilita a inserção de matrizes e vetores, além de facilitar a manipulação deles. A interface segue uma linguagem que é projetada

Leia mais

Algoritmos com VisuAlg

Algoritmos com VisuAlg Algoritmos com VisuAlg Prof Gerson Volney Lagemann Depto Eng de Produção e Sistemas UDESC - CCT Algoritmos com VisuAlg Introdução A linguagem VisuAlg é simples, seu objetivo é disponibilizar um ambiente

Leia mais

AMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS

AMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS UNIVERSIDADE REGIONAL DE BLUMENAU CENTRO DE CIÊNCIAS EXATAS E NATURAIS CURSO DE CIÊNCIAS DA COMPUTAÇÃO BACHARELADO AMBIENTE PARA AUXILIAR O DESENVOLVIMENTO DE PROGRAMAS MONOLÍTICOS Orientando: Oliver Mário

Leia mais

GARANTIA DA QUALIDADE DE SOFTWARE

GARANTIA DA QUALIDADE DE SOFTWARE GARANTIA DA QUALIDADE DE SOFTWARE Fonte: http://www.testexpert.com.br/?q=node/669 1 GARANTIA DA QUALIDADE DE SOFTWARE Segundo a NBR ISO 9000:2005, qualidade é o grau no qual um conjunto de características

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Aula 13 Gerência de Memória Prof.: Edilberto M. Silva http://www.edilms.eti.br Baseado no material disponibilizado por: SO - Prof. Edilberto Silva Prof. José Juan Espantoso Sumário

Leia mais

Feature-Driven Development

Feature-Driven Development FDD Feature-Driven Development Descrição dos Processos Requisitos Concepção e Planejamento Mais forma que conteúdo Desenvolver um Modelo Abrangente Construir a Lista de Features Planejar por

Leia mais

9 Comandos condicionais

9 Comandos condicionais 9 Comandos condicionais Um comando condicional é uma instrução empregada quando se deseja criar um desvio, isto é, a opção de executar-se ou não um determinado trecho de código, segundo uma condição. Em

Leia mais

A lógica de programação ajuda a facilitar o desenvolvimento dos futuros programas que você desenvolverá.

A lógica de programação ajuda a facilitar o desenvolvimento dos futuros programas que você desenvolverá. INTRODUÇÃO A lógica de programação é extremamente necessária para as pessoas que queiram trabalhar na área de programação, seja em qualquer linguagem de programação, como por exemplo: Pascal, Visual Basic,

Leia mais

Sistemas Operacionais. Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com

Sistemas Operacionais. Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Sistemas Operacionais Prof. André Y. Kusumoto andrekusumoto.unip@gmail.com Estruturas de Sistemas de Computação O sistema operacional precisa garantir a operação correta do sistema de computação. Operação

Leia mais

Princípios de Análise e Projeto de Sistemas com UML

Princípios de Análise e Projeto de Sistemas com UML Princípios de Análise e Projeto de Sistemas com UML 2ª edição Eduardo Bezerra Editora Campus/Elsevier Capítulo 9 Modelagem de estados Todos os adultos um dia foram crianças, mas poucos se lembram disso.

Leia mais

Geração de código intermediário. Novembro 2006

Geração de código intermediário. Novembro 2006 Geração de código intermediário Novembro 2006 Introdução Vamos agora explorar as questões envolvidas na transformação do código fonte em uma possível representação intermediária Como vimos, nas ações semânticas

Leia mais

Orientação a Objetos

Orientação a Objetos 1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou

Leia mais

OBS.: Simulado baseado no conteúdo abordado pelo capítulo 4 (Técnica de Modelagem de Teste) do Syllabus.

OBS.: Simulado baseado no conteúdo abordado pelo capítulo 4 (Técnica de Modelagem de Teste) do Syllabus. Simulado CTFL- BSTQB Tempo de duração: 30 minutos OBS.: Simulado baseado no conteúdo abordado pelo capítulo 4 (Técnica de Modelagem de Teste) do Syllabus. 1. Coloque os casos de teste que utilizam as seguintes

Leia mais

Fundamentos em Teste de Software. Vinicius V. Pessoni viniciuspessoni@gmail.com

Fundamentos em Teste de Software. Vinicius V. Pessoni viniciuspessoni@gmail.com Fundamentos em Teste de Software Vinicius V. Pessoni viniciuspessoni@gmail.com Objetivos do treinamento 1. Expor os fundamentos de Teste de Software; 2. Conceituar os Níveis de Teste; 3. Detalhar sobre

Leia mais

Organização e Arquitetura de Computadores I

Organização e Arquitetura de Computadores I Organização e Arquitetura de Computadores I Aritmética Computacional Slide 1 Sumário Unidade Lógica e Aritmética Representação de Números Inteiros Aritmética de Números Inteiros Representação de Números

Leia mais

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

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia. 1 Introdução aos Sistemas de Informação 2002 Aula 4 - Desenvolvimento de software e seus paradigmas Paradigmas de Desenvolvimento de Software Pode-se considerar 3 tipos de paradigmas que norteiam a atividade

Leia mais

AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: davidmr@ifce.edu.br CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0

AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: davidmr@ifce.edu.br CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0 AUTOR: DAVID DE MIRANDA RODRIGUES CONTATO: davidmr@ifce.edu.br CURSO FIC DE PROGRAMADOR WEB VERSÃO: 1.0 SUMÁRIO 1 Conceitos Básicos... 3 1.1 O que é Software?... 3 1.2 Situações Críticas no desenvolvimento

Leia mais

Algoritmos e Estrutura de Dados III. Árvores

Algoritmos e Estrutura de Dados III. Árvores Algoritmos e Estrutura de Dados III Árvores Uma das mais importantes classes de estruturas de dados em computação são as árvores. Aproveitando-se de sua organização hierárquica, muitas aplicações são realizadas

Leia mais

Projeto de Sistemas I

Projeto de Sistemas I Instituto Federal de Educação, Ciência e Tecnologia de São Paulo Projeto de Sistemas I Professora: Kelly de Paula Cunha E-mail:kellypcsoares@ifsp.edu.br Requisitos: base para todo projeto, definindo o

Leia mais

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008 Tabela de Símbolos Análise Semântica A Tabela de Símbolos Fabiano Baldo Após a árvore de derivação, a tabela de símbolos é o principal atributo herdado em um compilador. É possível, mas não necessário,

Leia mais

Pontifícia Universidade Católica de São Paulo Departamento de Ciência da Computação

Pontifícia Universidade Católica de São Paulo Departamento de Ciência da Computação Pontifícia Universidade Católica de São Paulo Departamento de Ciência da Computação LP: Laboratório de Programação Apontamento 7 Prof. ISVega Março de 2004 Controle de Execução: Seleção Simples CONTEÚDO

Leia mais

Entendendo como funciona o NAT

Entendendo como funciona o NAT Entendendo como funciona o NAT Vamos inicialmente entender exatamente qual a função do NAT e em que situações ele é indicado. O NAT surgiu como uma alternativa real para o problema de falta de endereços

Leia mais

Memória Flash. PdP. Autor: Tiago Lone Nível: Básico Criação: 11/12/2005 Última versão: 18/12/2006. Pesquisa e Desenvolvimento de Produtos

Memória Flash. PdP. Autor: Tiago Lone Nível: Básico Criação: 11/12/2005 Última versão: 18/12/2006. Pesquisa e Desenvolvimento de Produtos TUTORIAL Memória Flash Autor: Tiago Lone Nível: Básico Criação: 11/12/2005 Última versão: 18/12/2006 PdP Pesquisa e Desenvolvimento de Produtos http://www.maxwellbohr.com.br contato@maxwellbohr.com.br

Leia mais

Cálculo Numérico Aula 1: Computação numérica. Tipos de Erros. Aritmética de ponto flutuante

Cálculo Numérico Aula 1: Computação numérica. Tipos de Erros. Aritmética de ponto flutuante Cálculo Numérico Aula : Computação numérica. Tipos de Erros. Aritmética de ponto flutuante Computação Numérica - O que é Cálculo Numérico? Cálculo numérico é uma metodologia para resolver problemas matemáticos

Leia mais

PROGRAMAÇÃO II 4. ÁRVORE

PROGRAMAÇÃO II 4. ÁRVORE 4. ÁRVORE PROGRAMAÇÃO II Prof. Jean Eduardo Glazar Uma árvore impõe uma estrutura hierárquica em uma coleção de itens. Um exemplo familiar é a árvore genealógica. Árvores despontam de forma natural em

Leia mais

2 echo "PHP e outros.";

2 echo PHP e outros.; PHP (Hypertext Preprocessor) Antes de qualquer coisa, precisamos entender o que é o PHP: O PHP(Hypertext Preprocessor) é uma linguagem interpretada gratuita, usada originalmente apenas para o desenvolvimento

Leia mais

LP II Estrutura de Dados. Introdução e Linguagem C. Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br

LP II Estrutura de Dados. Introdução e Linguagem C. Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br LP II Estrutura de Dados Introdução e Linguagem C Prof. José Honorato F. Nunes honorato.nunes@ifbaiano.bonfim.edu.br Resumo da aula Considerações Gerais Introdução a Linguagem C Variáveis e C Tipos de

Leia mais

Algoritmos e Programação Conceitos e Estruturas básicas (Variáveis, constantes, tipos de dados)

Algoritmos e Programação Conceitos e Estruturas básicas (Variáveis, constantes, tipos de dados) Algoritmos e Programação Conceitos e Estruturas básicas (Variáveis, constantes, tipos de dados) Os algoritmos são descritos em uma linguagem chamada pseudocódigo. Este nome é uma alusão à posterior implementação

Leia mais

Arquitetura de Computadores. Tipos de Instruções

Arquitetura de Computadores. Tipos de Instruções Arquitetura de Computadores Tipos de Instruções Tipos de instruções Instruções de movimento de dados Operações diádicas Operações monádicas Instruções de comparação e desvio condicional Instruções de chamada

Leia mais

Teste de Software II Técnicas de Teste

Teste de Software II Técnicas de Teste Tema da Aula Teste de II Técnicas de Teste Prof. Cristiano R R Portella portella@widesoft.com.br Ciclo de Vida do e a Atividade de Teste Ambiente de Desenvolvimento Planejamento Análise Projeto Codificação

Leia mais

Programação Elementar de Computadores Jurandy Soares

Programação Elementar de Computadores Jurandy Soares Programação Elementar de Computadores Jurandy Soares Básico de Computadores Computador: dispositivos físicos + programas Dispositivos físicos: hardware Programas: as instruções que dizem aos dispositivos

Leia mais

Linguagem algorítmica: Portugol

Linguagem algorítmica: Portugol Programação de Computadores I Aula 03 Linguagem algorítmica: Portugol José Romildo Malaquias Departamento de Computação Universidade Federal de Ouro Preto 2011-1 1/34 Introdução I Lógica A lógica é usada

Leia mais

Java Como Programar, 8/E

Java Como Programar, 8/E Capítulo 5 Instruções de controle: Parte 2 Java Como Programar, 8/E (C) 2010 Pearson Education, Inc. Todos os 5.1 Introdução Instrução de repetição for Instrução de repetição do while Instrução de seleção

Leia mais

Teste de Software Parte 1. Prof. Jonas Potros

Teste de Software Parte 1. Prof. Jonas Potros Teste de Software Parte 1 Prof. Jonas Potros Cronograma Verificação e Validação Teste de Software: Definição e Conceitos Técnicas de Teste Fases de Teste Processo de Teste Automatização do Processo de

Leia mais

Teste de Software. Profa. Cátia dos Reis Machado catia@ifc-camboriu.edu.br

Teste de Software. Profa. Cátia dos Reis Machado catia@ifc-camboriu.edu.br Teste de Software Profa. Cátia dos Reis Machado catia@ifc-camboriu.edu.br Qualidade Garantia de Qualidade Qualidade do processo Qualidade do produto Testes Estáticos Testes Dinâmicos Teste de software

Leia mais

Projeto de controle e Automação de Antena

Projeto de controle e Automação de Antena Projeto de controle e Automação de Antena Wallyson Ferreira Resumo expandido de Iniciação Tecnológica PUC-Campinas RA: 13015375 Lattes: K4894092P0 wallysonbueno@gmail.com Omar C. Branquinho Sistemas de

Leia mais

Algoritmo. Linguagem natural: o Ambígua o Imprecisa o Incompleta. Pseudocódigo: o Portugol (livro texto) o Visualg (linguagem) Fluxograma

Algoritmo. Linguagem natural: o Ambígua o Imprecisa o Incompleta. Pseudocódigo: o Portugol (livro texto) o Visualg (linguagem) Fluxograma Roteiro: Conceitos básicos de algoritmo, linguagem, processador de linguagem e ambiente de programação; Aspectos fundamentais da organização e do funcionamento de um computador; Construções básicas de

Leia mais

Resolução de problemas e desenvolvimento de algoritmos

Resolução de problemas e desenvolvimento de algoritmos SSC0101 - ICC1 Teórica Introdução à Ciência da Computação I Resolução de problemas e desenvolvimento de algoritmos Prof. Vanderlei Bonato Prof. Cláudio Fabiano Motta Toledo Sumário Análise e solução de

Leia mais

Introdução à Lógica de Programação

Introdução à Lógica de Programação Sistemas Operacionais e Introdução à Programação Introdução à Lógica de Programação 1 Estruturas de dados Representação computacional das informações do problema ser resolvido Informações podem ser de

Leia mais

Capítulo 3. Avaliação de Desempenho. 3.1 Definição de Desempenho

Capítulo 3. Avaliação de Desempenho. 3.1 Definição de Desempenho 20 Capítulo 3 Avaliação de Desempenho Este capítulo aborda como medir, informar e documentar aspectos relativos ao desempenho de um computador. Além disso, descreve os principais fatores que influenciam

Leia mais

Engenharia de Software II

Engenharia de Software II Engenharia de Software II Aula 16 http://www.ic.uff.br/~bianca/engsoft2/ Aula 16-14/05/2006 1 1. O que é uma atividade guarda-chuva? Dê dois exemplos. São atividades aplicáveis durante todo o processo

Leia mais

PROGRAMAÇÃO ESTRUTURADA. CC 2º Período

PROGRAMAÇÃO ESTRUTURADA. CC 2º Período PROGRAMAÇÃO ESTRUTURADA CC 2º Período PROGRAMAÇÃO ESTRUTURADA Aula 07: Funções O comando return Protótipo de funções O tipo void Arquivos-cabeçalho Escopo de variáveis Passagem de parâmetros por valor

Leia mais

Algoritmos e Estrutura de Dados. Introdução a Linguagem Python (Parte I) Prof. Tiago A. E. Ferreira

Algoritmos e Estrutura de Dados. Introdução a Linguagem Python (Parte I) Prof. Tiago A. E. Ferreira Algoritmos e Estrutura de Dados Aula 1 Introdução a Linguagem Python (Parte I) Prof. Tiago A. E. Ferreira Linguagem a ser Utilizada? Nossa disciplina é de Algoritmos e Estrutura de Dados, e não de linguagem

Leia mais

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

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação SOFT DISCIPLINA: Engenharia de Software AULA NÚMERO: 10 DATA: / / PROFESSOR: Andrey APRESENTAÇÃO O objetivo desta aula é apresentar e discutir os conceitos de coesão e acoplamento. DESENVOLVIMENTO Projetar

Leia mais

ALGORITMOS PARTE 01. Fabricio de Sousa Pinto

ALGORITMOS PARTE 01. Fabricio de Sousa Pinto ALGORITMOS PARTE 01 Fabricio de Sousa Pinto Algoritmos: Definição 2 É uma sequência de instruções finita e ordenada de forma lógica para a resolução de uma determinada tarefa ou problema. Algoritmos 3

Leia mais

Computadores XXI: Busca e execução Final

Computadores XXI: Busca e execução Final Computadores XXI: Busca e execução Final A6 Texto 6 http://www.bpiropo.com.br/fpc20060123.htm Sítio Fórum PCs /Colunas Coluna: B. Piropo Publicada em 23/01/2006 Autor: B.Piropo Na coluna anterior, < http://www.forumpcs.com.br/viewtopic.php?t=146019

Leia mais

MRP II. Planejamento e Controle da Produção 3 professor Muris Lage Junior

MRP II. Planejamento e Controle da Produção 3 professor Muris Lage Junior MRP II Introdução A lógica de cálculo das necessidades é conhecida há muito tempo Porém só pode ser utilizada na prática em situações mais complexas a partir dos anos 60 A partir de meados da década de

Leia mais

Especialização em Engenharia de Software e Banco de Dados

Especialização em Engenharia de Software e Banco de Dados Especialização em Engenharia de Software e Banco de Dados Disciplina: Engenharia de Software Tópico: Modelos de Ciclo de Vida Prof. Rodolfo Miranda de Barros rodolfo@uel.br Ciclo de Vida A Engenharia de

Leia mais

UNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCIÊNCIAS, LETRAS E CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO E ESTATÍSTICA

UNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCIÊNCIAS, LETRAS E CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO E ESTATÍSTICA UNIVERSIDADE ESTADUAL PAULISTA INSTITUTO DE BIOCIÊNCIAS, LETRAS E CIÊNCIAS EXATAS DEPARTAMENTO DE CIÊNCIAS DE COMPUTAÇÃO E ESTATÍSTICA Teste de Software Engenharia de Software 2o. Semestre de 2005 Slide

Leia mais

JSP - ORIENTADO A OBJETOS

JSP - ORIENTADO A OBJETOS JSP Orientação a Objetos... 2 CLASSE:... 2 MÉTODOS:... 2 Método de Retorno... 2 Método de Execução... 2 Tipos de Dados... 3 Boolean... 3 Float... 3 Integer... 4 String... 4 Array... 4 Primeira:... 4 Segunda:...

Leia mais

Teste de software. Definição

Teste de software. Definição Definição O teste é destinado a mostrar que um programa faz o que é proposto a fazer e para descobrir os defeitos do programa antes do uso. Quando se testa o software, o programa é executado usando dados

Leia mais

Processos de gerenciamento de projetos em um projeto

Processos de gerenciamento de projetos em um projeto Processos de gerenciamento de projetos em um projeto O gerenciamento de projetos é a aplicação de conhecimentos, habilidades, ferramentas e técnicas às atividades do projeto a fim de cumprir seus requisitos.

Leia mais

JAVA NETBEANS PGOO Prof. Daniela Pires Conteúdo

JAVA NETBEANS PGOO Prof. Daniela Pires Conteúdo Conteúdo Estruturas de repetição (loops, laços)... 2 WHILE (enquanto)... 2 DO... WHILE (faça... enquanto)... 2 FOR... 3 FOREACH... 4 EXERCICIO LOOP FOR... 4 Novo Projeto... 5 Controles SWING... 10 1 Estruturas

Leia mais

Recursos. Um recurso é ou um dispositivo físico (dedicado) do hardware, ou Solicitar o recurso: esperar pelo recurso, até obtê-lo.

Recursos. Um recurso é ou um dispositivo físico (dedicado) do hardware, ou Solicitar o recurso: esperar pelo recurso, até obtê-lo. Um recurso é ou um dispositivo físico (dedicado) do hardware, ou um conjunto de informações, que deve ser exclusivamente usado. A impressora é um recurso, pois é um dispositivo dedicado, devido ao fato

Leia mais

Programação Básica em Arduino Aula 2

Programação Básica em Arduino Aula 2 Programação Básica em Arduino Aula 2 Execução: Laboratório de Automação e Robótica Móvel Variáveis são lugares (posições) na memória principal que servem para armazenar dados. As variáveis são acessadas

Leia mais

Curso de Programação Computadores

Curso de Programação Computadores 3 O Primeiro Programa em C Unesp Campus de Guaratinguetá Curso de Programação Computadores Prof. Aníbal Tavares Profa. Cassilda Ribeiro 3 O Primeiro Programa em C 3.1 - Introdução Depois dos conceitos

Leia mais

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

Referências internas são os artefatos usados para ajudar na elaboração do PT tais como: Plano de Teste (resumo do documento) I Introdução Identificador do Plano de Teste Esse campo deve especificar um identificador único para reconhecimento do Plano de Teste. Pode ser inclusive um código

Leia mais