Aula 11: Análise Dinâmica - 2a. parte

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

Download "Aula 11: Análise Dinâmica - 2a. parte"

Transcrição

1 Aula 11: Análise Dinâmica - 2a. parte Nesta aula, continuaremos nossa discussão a respeito da análise dinâmica, focando na atividade de teste. Iremos dar uma breve olhada em algumas das noções básicas sobre as quais a atividade de teste está baseada, iremos analisar também as técnicas mais utilizadas na prática. No final, iremos reunir algumas diretrizes para lhe ajudar em seu próprio trabalho de testes Testando Os testes são muito mais efetivos, e menos dolorosos, se você utilizar uma abordagem sistemática. Antes de você começar, pense a respeito dos seguintes itens: quais propriedades você quer testar e para quê; quais módulos você quer testar, e em qual ordem você os irá testar; como você vai gerar casos de teste; como você irá checar os resultados; quando você vai saber que o trabalho está terminado. Para se decidir quais propriedades testar, e quais testes executar sobre estas propriedades, será necessário conhecimento a respeito do domínio do problema, visando compreender quais tipos de falhas serão consideradas as mais sérias, e será necessário também, conhecimento do programa, visando entender qual será a dificuldade em se detectar a variedade dos erros. A escolha dos módulos é direta. Você deve testar, especialmente, os módulos que são críticos, que são complexos, ou que foram escritos pelo pior dos seus programadores (ou por aquele que mais adora utilizar truquezinhos dentro do código). Ou, talvez, o módulo que foi escrito tarde da noite, ou em cima da data de lançamento... O diagrama de dependência modular ajuda a determinar a ordem. Se o seu módulo depende de um módulo que ainda não foi implementado, você precisará escrever um stub (o esqueleto de um módulo, que no máximo simula seu funcionamento) que irá fazer o papel do módulo que está faltando durante os testes. O stub fornece comportamento suficiente para os testes a serem realizados. Ele pode, por exemplo, procurar respostas em uma tabela ao invés de realizar a computação verdadeira. A checagem dos resultados pode ser difícil. Alguns programas - como o Foliotracker que você estará construindo nos exercícios 5 e 6 - nem mesmo possuem comportamento repetitivo. Para outros programas, os resultados são apenas a ponta do iceberg, e para se certificar que as coisas estão realmente funcionando, você terá que checar estruturas internas. Mais adiante, iremos discutir 118

2 questões sobre como gerar casos de teste e como saber quando o trabalho está completo Testes de Regressão É muito importante ser capaz de reexecutar seus testes quando você modificar seu código. Por esta razão, não é uma idéia muito boa realizar testes específicos que não podem ser repetidos. Pode parecer um trabalho árduo, mas em longo prazo, é muito menos trabalhoso construir um conjunto prático de testes, isto é, um suíte de testes que podem ser reexecutados a partir de um arquivo. Tais testes são conhecidos como testes de regressão. Uma abordagem de testes conhecida pelo nome de 'test first programming', e que é parte do novo tratado de desenvolvimento conhecido como 'extreme programming', encoraja a construção de testes de regressão antes mesmo de se escrever qualquer código da aplicação. JUnit, oframework de testes que você tem utilizado, foi projetado para a isto. A construção de testes de regressão para um sistema grande é um ótimo negócio. É possível que a execução dos scripts de testes leve até uma semana. Por conta disto, uma área de pesquisas de muito interesse atualmente é a que tenta descobrir quais testes de regressão podem ser omitidos. Se você souber quais casos de teste testam quais partes do código, você pode ser capaz de determinar que uma alteração local em uma parte do código não exige que todos os casos sejam reexecutados Normas Para se compreender como os testes são gerados e avaliados, podemos pensar de maneira abstrata a respeito do propósito e da natureza das atividades de teste. Suponha que temos um programa P que, espera-se, satisfaça a uma especificação S. Vamos assumir, por simplicidade, que P é uma função que transforma entradas de dados em saídas de dados, e S é uma função que recebe uma entrada de dados e uma saída de dados, retornando um tipo boolean. Nosso objetivo na realização dos testes é encontrar um caso de teste t tal que S (t, P(t)) é falso: ou seja, P produz um resultado para a entrada t quenãoépermitidopors. Iremos denominar t como um 'caso de teste falho', apesar de se tratar, na verdade, de um caso de teste de sucesso, pois nosso objetivo é encontrar erros! UmsuítedetestesT é um conjunto de casos de teste. Fazemos, então, a seguinte pergunta: quando um suíte pode ser considerado bom o suficiente? Ao invés de tentamos avaliar cada suíte de testes 119

3 de uma forma dependente da situação, podemos aplicar uma norma geral. Você pode pensar em uma norma como uma função: C: Suite, Program, Spec Boolean que recebe um suíte de testes, um programa, e uma especificação, retornando true ou false de acordo com o fato do suíte de testes ser bom o suficiente para avaliar o programa e a especificação fornecidos, o que deve ser feito de maneira sistemática. A maioria das normas não envolve, ambos, o programa e a especificação. Uma norma que envolve apenas o programa é denominada norma program-based (baseada em programa). Outros termos também são usados como 'whitebox', 'clearbox', 'glassbox', ou 'structural testing' para se descrever testes que utilizam as normas do tipo program-based. Uma norma que envolve apenas a especificação é denominada norma specification-based (baseada em especificação). O termo 'blackbox testing' é utilizado em associação com o termo specificationbased, para sugerir que os testes são julgados sem que se possa analisar a parte interna do programa. Você pode escutar também o termo 'functional testing' Subdomínios Normas práticas tendem a ter uma estrutura particular e propriedades. Por exemplo, elas podem aceitar um suíte de testes T, mas rejeitar um suíte de testes T' queéigualat, possuindo apenas alguns casos de teste extras. As normas práticas também tendem a não ser sensíveis a quais combinações de testes são escolhidas. Estas características não são, necessariamente, boas propriedades; elas apenas surgiram a partir da maneira simples a partir da qual as normas são definidas. O domínio de dados de entrada é dividido em regiões normalmente chamadas de subdomínios, cada um dos quais contendo um conjunto de entradas. Os subdomínios juntos englobam todo o domínio de dados de entrada - ou seja, toda entrada está em pelo menos um subdomínio. Uma divisão do domínio de dados de entrada em subdomínios define uma norma implícita: que define que deva existir pelo menos um caso de teste para cada subdomínio. Subdomínios, normalmente, não são disjuntos, portanto, um único caso de teste pode estar em vários subdomínios. A intuição por trás dos subdomínios pode ser compreendida em duas partes. Primeiro, é uma maneira fácil (pelo menos conceitualmente) de se determinar se um suíte de testes é bom o suficiente. Segundo, esperamos que, ao exigir um caso de teste de cada subdomínio, faremos com 120

4 que os testes sejam orientados às regiões mais propensas a revelar bugs. Intuitivamente, cada subdomínio representa um conjunto de casos de teste similares; desejamos maximizar o benefício de nossa atividade de teste escolhendo casos de teste que não sejam similares - ou seja, casos de teste de diferentes subdomínios. No melhor caso, um subdomínio pode ser considerado revelador. Isto significa que todo caso de teste pertencente a este subdomínio faz com que o programa ou falhe ou tenha sucesso. O subdomínio, portanto, agrupa casos de teste verdadeiramente equivalentes. Se todos os subdomínios são reveladores, um suíte de testes que satisfaz à norma implícita estará completo, pois teremos a certeza de que o suíte irá encontrar qualquer bug. Na prática, no entanto, é muito difícil conseguir subdomínios reveladores, mas através de uma escolha cuidadosa dos subdomínios é possível ter-se, no mínimo, alguns subdomínios cuja taxa de erros - a proporção de entradas de dados que levam a saídas de dados erradas - é bem maior que a média de erros do domínio de dados de entrada como um todo Norma de Subdomínio A norma padrão e mais amplamente utilizada para a atividade de teste do tipo program-based é denominada 'statement coverage', ou 'cobertura das sentenças': que define que toda a sentença de um programa deve ser executada pelo menos uma vez. Você pode perceber, através da definição da norma, por que ela é considerada uma norma de subdomínio: defina para cada sentença do programa um conjunto de entradas que fazem com que esta sentença seja executada, e escolha no mínimo um caso de teste para cada subdomínio. Obviamente, o subdomínio nunca é, explicitamente, construído; trata-se de uma noção conceitual. Ao invés disso, tipicamente, executase uma versão instrumentada do programa que registra cada sentença executada. Deve-se continuar acrescentando casos de teste até que todas as sentenças sejam executadas. Existem outras normas ainda mais trabalhosas do que o statement coverage. A norma denominada 'decision coverage', por exemplo, requer que todas as arestas do gráfico do fluxo de controle do programa sejam executadas - é como exigir que todos os ramos de um programa sejam executados. Não é tão óbvio o porquê desta abordagem ser considerada mais trabalhosa do que o statement coverage. Pois, então, considere aplicar esta norma a um procedimento que retorna o menor de dois números: static int minimum (int a, int b) { if (a b) return a; else return b; 121

5 Para este código, statement coverage, irá exigir entradas com a menor do que b evice-versa.no entanto, para o código static int minimum (int a, int b) { intresult=b; if (b a) result = b; return result; um único caso de teste com b menor do que a irá satisfazer a norma statement coverage, masnão poderíamos identificar o bug que está presente no código. Para satisfazer à norma decision coverage seria exigido um caso (um ramo) no qual o comando if não seja executado, expondo, desta forma, o bug. Existem muitas formas de 'condition coverage' que exigem, de diversas formas, que as expressões boolenas testadas como condição sejam avaliadas tanto para true como para false. Uma forma particular de condition coverage conhecida como MCDC, é exigida por um padrão denominado DoD específico para softwares de segurança crítica, como os da aviação. Este padrão, o DO-178B, classifica as falhas em três níveis, e requer um diferente nível de cobertura para cada nível: Nível C: a falha reduz a margem de segurança Exemplo: link de dados via rádio Requer: statement coverage Nível B: a falha reduz a capacidade da aeronave ou da tripulação Exemplo: GPS Requer: decision coverage Nível A: a falha causa a perda da aeronave Exemplo: sistema de gerenciamento de vôo Requer: MCDC coverage Uma outra forma de norma de subdomínio do tipo program-based é utilizada em testes denominados boundary testing, ou testes limite. Estes tipos de testes exigem que os casos extremos para toda sentença condicional sejam avaliados. Por exemplo, se o seu programa testa x<n, seriam necessários casos de teste que produzissem x=n, x=n-1, ex=n

6 Normas do tipo specification-based são, também, muitas vezes moldadas em termos de subdomínios. Pelo fato de que as especificações são, normalmente, informais - ou seja, não são escritas em nenhuma notação muito precisa - as normas tendem a ser um tanto vagas. A abordagem mais comum é definir subdomínios de acordo com a estrutura da especificação e de acordo com os valores dos tipos de dados subjacentes. Por exemplo, os subdomínios de um método que insere um elemento em um conjunto podem ser: o conjunto é vazio o conjunto é não vazio e o elemento não está no conjunto oconjuntoénãovazioeoelementoestánoconjunto. Você pode, também, utilizar na especificação qualquer estrutura condicional para guiá-lo na divisão do domínio de dados de entrada em subdomínios. Além disso, na prática, as pessoas incumbidas de realizar os testes utilizam seu conhecimento a respeito dos tipos de erros que muitas vezes surgem no código. Por exemplo, se você estiver testando um procedimento que encontra um elemento em um array, você, provavelmente, irá colocar o elemento de teste no início, no meio e no fim, simplesmente porque estes casos são propensos a ser manipulados diferentemente no código Viabilidade Cobertura total é raramente possível. De fato, mesmo que se alcance 100% das sentenças do código, é normalmente impossível alcançar a cobertura total. No mínimo, esta impossibilidade ocorre em razão de código decorrente de programação defensiva, código que, em grande parte, nunca é executado. As operações de um tipo abstrato de dado, que não possuem nenhum cliente, também não serão testadas pelos casos de teste, independente do rigor aplicado; no entanto, estes testes podem ser executados por testes de unidade. Uma norma é considerada viável se for possível satisfazê-la. Na prática, as normas normalmente não são viáveis. Em termos de subdomínio, elas contêm subdomínios vazios. A questão prática é determinar se um subdomínio particular é vazio ou não; se for vazio, não há razão em se procurar um caso de teste que o satisfaça. Falando de forma geral, quanto mais elaborada a norma, mais difícil é a sua determinação. Por exemplo, a norma denominada path coverage exige que todos os caminhos do programa sejam executados. Suponha que o programa se pareça com isto: 123

7 if C1 then S1; if C2 then S2; então, para se determinar se o caminho S1;S2 é viável, precisamos determinar se as condições C1 e C2 podem, ambas, serem verdadeiras. Para um programa complexo, esta não é uma tarefa trivial e, no pior caso, não é mais fácil do que determinar seu programa está correto, ou não, através do raciocínio! A despeito destes problemas, a idéia de se cobrir as possibilidades do programa é muito importante na prática. Se existe um número significante de partes do seu programa que nunca foram executadas, não há como se ter muita certeza que este programa está correto! 11.7 Diretrizes Práticas Deve estar claro porque nem as normas program-based, nem as normas specification-based são, se utilizadas isoladamente, boas o suficiente. Se você apenas olhar o programa, você não identificará erros por ser omisso. Se você olhar apenas a especificação, você não irá identificar os erros que surgem em decorrência de problemas de implementação, como, por exemplo, quando os limites de um determinado recurso computacional são alcançados, ocasião quando um procedimento de compensação é necessário. Na implementação da classe ArrayList do Java, por exemplo, o array da representação é substituído quando fica cheio. Para se testar este comportamento, será necessário inserir uma quantidade suficiente de elementos para que o array fique cheio. A experiência sugere que a melhor forma de se desenvolver um suíte de testes é utilizando-se normas do tipo specification-based para guiar o desenvolvimento do suíte e, para testar o suíte, é melhor que se utilizem normas do tipo program-based. Assim, você será capaz de examinar a especificação, e capaz de definir subdomínios de entrada. Baseando-se nessas premissas, você pode escrever os casos de teste. Então, você executa os casos de teste, e mede a cobertura dos testes em relação ao código. Se a cobertura não for adequada, basta que se adicionem novos casos de teste. Nos padrões industriais, você utilizaria uma ferramenta especial para medir a cobertura dos testes em relação ao código. No curso 6170, não exigiremos que você aprenda a utilizar qualquer ferramenta. Ao invés disso, você deve apenas escolher casos de teste suficientemente elaborados para que possa argumentar que alcançou uma cobertura considerável do código. As certificações em tempo de execução, especialmente as que representam checagens de invariante, irão dramaticamente aumentar o poder dos seus testes. Você irá encontrar mais bugs e poderá solucioná-los mais facilmente. 124

6.170 Revisão para a Prova

6.170 Revisão para a Prova 6.170 Revisão para a Prova Tópicos: 1. Desacoplamento 2. Abstração de dados 3. Funções de Abstração e Invariantes de Representação 4. Abstração de Iteração & Iteradores 5. Modelos de Objeto e Invariantes

Leia mais

Aula 10: Análise Dinâmica - 1a. Parte

Aula 10: Análise Dinâmica - 1a. Parte Aula 10: Análise Dinâmica - 1a. Parte A melhor forma de garantir a qualidade do software que você constrói é projetando-o cuidadosamente desde o início. Desta forma, as partes se encaixarão mais perfeitamente,

Leia mais

Técnicas de Teste de Software

Técnicas de Teste de Software Técnicas de Teste de Software Fabrício Sousa fabricio@uesb.br 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

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

1. Qual das seguintes alternativas não é um tipo de revisão? 2. Qual das alternativas é um atributo da qualidade?

1. Qual das seguintes alternativas não é um tipo de revisão? 2. Qual das alternativas é um atributo da qualidade? Simulado CTFL- BSTQB Tempo de duração: 30 minutos 1. Qual das seguintes alternativas não é um tipo de revisão? a) Acompanhamento b) Revisão técnica c) Revisão informal d) Aprovação da gerência 2. Qual

Leia mais

Subtipos e Subclasses

Subtipos e Subclasses Subtipos e Subclasses Aula 15 do curso 6.170 15 de outubro de 2001 Sumário 1Subtipos 32 2 Exemplo: Bicicletas 33 3 Exemplo: Quadrado e retângulo 37 4 Princípio de substituição 38 5 Subclasses e subtipos

Leia mais

Sumário. Objectivos Técnicas Casos Notáveis Exemplo Conclusões. Testes de Software 2

Sumário. Objectivos Técnicas Casos Notáveis Exemplo Conclusões. Testes de Software 2 Testes de Software Sumário Objectivos Técnicas Casos Notáveis Exemplo Conclusões Testes de Software 2 Objectivos Verificação o programa está de acordo com a especificação (construímos bem o produto?) Validação

Leia mais

Modelagem do Processo de Negócio

Modelagem do Processo de Negócio Análise e Projeto 1 Modelagem do Processo de Negócio Modelos de processos de negócios descrevem as diferentes atividades que, quando combinados, oferecem suporte a um processo de negócio. Processos de

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

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

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

Aula 3: Desacoplamento 2ª. Parte

Aula 3: Desacoplamento 2ª. Parte Aula 3: Desacoplamento 2ª. Parte Na última aula, nós falamos a respeito da importância das dependências entre as partes do programa em um projeto de software. Uma boa linguagem de programação permite a

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 Branca 2 Teste de Componentes: Caixa Branca Teste de Caixa Branca Grafo de Fluxo de

Leia mais

Algoritmos em Javascript

Algoritmos em Javascript Algoritmos em Javascript Sumário Algoritmos 1 O que é um programa? 1 Entrada e Saída de Dados 3 Programando 4 O que é necessário para programar 4 em JavaScript? Variáveis 5 Tipos de Variáveis 6 Arrays

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

Estratégias de Pesquisa

Estratégias de Pesquisa Estratégias de Pesquisa Ricardo de Almeida Falbo Metodologia de Pesquisa Departamento de Informática Universidade Federal do Espírito Santo Agenda Survey Design e Criação Estudo de Caso Pesquisa Ação Experimento

Leia mais

Testes de Caixa Branca e Caixa Preta

Testes de Caixa Branca e Caixa Preta Testes de Caixa Branca e Caixa Preta Prof. Pasteur Ottoni de Miranda Junior PUC Minas Disponível em www.pasteurjr.blogspot.com 1-Introdução É hábito costumeiro do programador terminar um programa e em

Leia mais

COMO CONTRATAR OS MELHORES REPRESENTANTES DE ATENDIMENTO AO CLIENTE

COMO CONTRATAR OS MELHORES REPRESENTANTES DE ATENDIMENTO AO CLIENTE COMO CONTRATAR OS MELHORES REPRESENTANTES DE ATENDIMENTO AO CLIENTE Por que se importar 3 O melhor representante de atendimento 4 SUMÁRIO Escrevendo um anúncio de vaga de emprego Carta de apresentação

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

Figura 13.1: Um exemplo de árvore de diretório.

Figura 13.1: Um exemplo de árvore de diretório. 13. Árvores W. Celes e J. L. Rangel Nos capítulos anteriores examinamos as estruturas de dados que podem ser chamadas de unidimensionais ou lineares, como vetores e listas. A importância dessas estruturas

Leia mais

Common Core Standards

Common Core Standards Common Core Standards O Common Core nos estados EDUCATION WEEK Estados que adotaram o Common Core (43 + DC) Estados que não adotaram o Common Core (4) Estados que adotaram o Common Core em apenas uma matéria

Leia mais

DIM0436. 26. Testes de caixa branca Cobertura estrutural DIM0436 20141104 1 / 37

DIM0436. 26. Testes de caixa branca Cobertura estrutural DIM0436 20141104 1 / 37 DIM0436 26. Testes de caixa branca Cobertura estrutural 20141104 DIM0436 20141104 1 / 37 Sumário 1 Introdução 2 Cobertura do fluxo de controle 3 Cobertura do fluxo de dados DIM0436 20141104 2 / 37 1 Introdução

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

Capítulo 1. Extreme Programming: visão geral

Capítulo 1. Extreme Programming: visão geral Capítulo 1 Extreme Programming: visão geral Extreme Programming, ou XP, é um processo de desenvolvimento de software voltado para: Projetos cujos requisitos são vagos e mudam com freqüência; Desenvolvimento

Leia mais

Tradução livre do PMBOK 2000, V 1.0, disponibilizada através da Internet pelo PMI MG em abril de 2001

Tradução livre do PMBOK 2000, V 1.0, disponibilizada através da Internet pelo PMI MG em abril de 2001 Capítulo 8 Gerenciamento da Qualidade do Projeto O Gerenciamento da Qualidade do Projeto inclui os processos necessários para garantir que o projeto irá satisfazer as necessidades para as quais ele foi

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

Como Eu Começo meu A3?

Como Eu Começo meu A3? Como Eu Começo meu A3? David Verble O pensamento A3 é um pensamento lento. Você está tendo problemas para começar seu A3? Quando ministro treinamentos sobre o pensamento, criação e uso do A3, este assunto

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

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

Aula 06 Introdução à Teste de Módulos II e Exercícios. Alessandro Garcia LES/DI/PUC-Rio Março 2014

Aula 06 Introdução à Teste de Módulos II e Exercícios. Alessandro Garcia LES/DI/PUC-Rio Março 2014 Aula 06 Introdução à Teste de Módulos II e Exercícios Alessandro Garcia LES/DI/PUC-Rio Março 2014 Princípios Discutidos até aqui Cada módulo deveria implementar uma única abstração similarmente: cada função

Leia mais

O que é Domain-Driven Design

O que é Domain-Driven Design O que é Domain-Driven Design Desenvolvimento Software é mais freqüentemente aplicado a automatizar processos que existem no mundo real, ou fornecimento de soluções para problemas reais de negócios; Os

Leia mais

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software PROCESSO DE DESENVOLVIMENTO DE SOFTWARE Introdução Modelos de Processo de Desenvolvimento de Software Os modelos de processos de desenvolvimento de software surgiram pela necessidade de dar resposta às

Leia mais

Sintaxe e Semântica. Fases da Compilação. programa fonte

Sintaxe e Semântica. Fases da Compilação. programa fonte Sintaxe e Semântica mleal@inf.puc-rio.br Fases da Compilação programa fonte tokens parse tree árvore anotada ou outra forma intermediária código intermediário código objeto código objeto otimizado scanner

Leia mais

ARRAYS. Um array é um OBJETO que referencia (aponta) mais de um objeto ou armazena mais de um dado primitivo.

ARRAYS. Um array é um OBJETO que referencia (aponta) mais de um objeto ou armazena mais de um dado primitivo. Cursos: Análise, Ciência da Computação e Sistemas de Informação Programação I - Prof. Aníbal Notas de aula 8 ARRAYS Introdução Até agora, utilizamos variáveis individuais. Significa que uma variável objeto

Leia mais

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

AULA 1 INTRODUÇÃO - ENGENHARIA DE SOFTWARE. Prof. Msc. Hélio Esperidião AULA 1 INTRODUÇÃO - ENGENHARIA DE SOFTWARE Prof. Msc. Hélio Esperidião O QUE É UM ALGORITMO? É qualquer procedimento computacional bem definido que informa algum valor ou conjunto de valores como entrada

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

Problemas Produção. Requisitos. Prof. Ana Paula A. de Castro. Prazos e custos

Problemas Produção. Requisitos. Prof. Ana Paula A. de Castro. Prazos e custos PRODUTOS ENGENHARIA DE SOFTWARE - I Prof. Ana Paula A. de Castro anapaula.rna@gmail.com Problemas Produção Ciclos de vida Projetos Requisitos Características Especificação dos requisitos Engenharia dos

Leia mais

Identificação rápida de gargalos Uma forma mais eficiente de realizar testes de carga. Um artigo técnico da Oracle Junho de 2009

Identificação rápida de gargalos Uma forma mais eficiente de realizar testes de carga. Um artigo técnico da Oracle Junho de 2009 Identificação rápida de gargalos Uma forma mais eficiente de realizar testes de carga Um artigo técnico da Oracle Junho de 2009 Identificação rápida de gargalos Uma forma mais eficiente de realizar testes

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

LEVANTAMENTO DE REQUISITOS SEGUNDO O MÉTODO VOLERE

LEVANTAMENTO DE REQUISITOS SEGUNDO O MÉTODO VOLERE LEVANTAMENTO DE REQUISITOS SEGUNDO O MÉTODO VOLERE RESUMO Fazer um bom levantamento e especificação de requisitos é algo primordial para quem trabalha com desenvolvimento de sistemas. Esse levantamento

Leia mais

Tutorial Novo Sistema de Negociação da Ligamagic

Tutorial Novo Sistema de Negociação da Ligamagic Tutorial Novo Sistema de Negociação da Ligamagic Índice (ctrl+f + código do item para localizar) Introdução [RF201] Painel de Negociações [RF202] Painel de Referências [RF203] Começando uma Negociação

Leia mais

05/05/2010. Década de 60: a chamada Crise do Software

05/05/2010. Década de 60: a chamada Crise do Software Pressman, Roger S. Software Engineering: A Practiotioner s Approach. Editora: McGraw- Hill. Ano: 2001. Edição: 5 Introdução Sommerville, Ian. SW Engineering. Editora: Addison Wesley. Ano: 2003. Edição:

Leia mais

Microsoft Excel 2003

Microsoft Excel 2003 Associação Educacional Dom Bosco Faculdades de Engenharia de Resende Microsoft Excel 2003 Professores: Eduardo Arbex Mônica Mara Tathiana da Silva Resende 2010 INICIANDO O EXCEL Para abrir o programa Excel,

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

Rede de Laboratórios de Produtividade de Software

Rede de Laboratórios de Produtividade de Software Rede de Laboratórios de Produtividade de Software Projeto de Testes Programa de Capacitação em Testes de Software Casos de Teste O que são casos de teste? Como projetar testes? 3 Caso de Teste 4 Tipos

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

EXEMPLO IF E ELSE IF TERNÁRIO

EXEMPLO IF E ELSE IF TERNÁRIO PHP Aula 2 Estruturas de Controle, Continue e Break Leonardo Pereira facebook.com/leongamerti ESTRUTURA DE DECISÃO Simples Composta Encadeada Ternário IF Estrutura de controle que introduz um desvio condicional

Leia mais

Notas da Aula 4 - Fundamentos de Sistemas Operacionais

Notas da Aula 4 - Fundamentos de Sistemas Operacionais Notas da Aula 4 - Fundamentos de Sistemas Operacionais 1. Threads Threads são linhas de execução dentro de um processo. Quando um processo é criado, ele tem uma única linha de execução, ou thread. Esta

Leia mais

EFICIÊNCIA DE ALGORITMOS E

EFICIÊNCIA DE ALGORITMOS E AULA 2 EFICIÊNCIA DE ALGORITMOS E PROGRAMAS Medir a eficiência de um algoritmo ou programa significa tentar predizer os recursos necessários para seu funcionamento. O recurso que temos mais interesse neste

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

Lista 01: Introdução à Probabilidade

Lista 01: Introdução à Probabilidade INSTITUTO TECNOLÓGICO DE AERONÁUTICA DIVISÃO DE ENGENHARIA MECÂNICA-AERONÁUTICA MB-210: Probabilidade e Estatística Lista 01: Introdução à Probabilidade Prof. Denise Beatriz Ferrari denise@ita.br 2 o Sem/2013

Leia mais

ADMINISTRAÇÃO GERAL GESTÃO DE PROJETOS

ADMINISTRAÇÃO GERAL GESTÃO DE PROJETOS ADMINISTRAÇÃO GERAL GESTÃO DE PROJETOS Atualizado em 31/12/2015 GESTÃO DE PROJETOS PROJETO Para o PMBOK, projeto é um esforço temporário empreendido para criar um produto, serviço ou resultado exclusivo.

Leia mais

Sistemas Embarcados Programação Embarcada

Sistemas Embarcados Programação Embarcada Sistemas Embarcados Programação Embarcada Instituto Federal de Pernambuco Coordenação de Informática/IFPE Anderson L. S. Moreira anderson.moreira@recife.ifpe.edu.br http://alsm.cc Sistemas Embarcados Direitos

Leia mais

Testes de Software. Anne Caroline O. Rocha TesterCertified BSTQB NTI UFPB

Testes de Software. Anne Caroline O. Rocha TesterCertified BSTQB NTI UFPB Testes de Software 1 AULA 01 INTRODUÇÃO A TESTES DE SOFTWARE Anne Caroline O. Rocha TesterCertified BSTQB NTI UFPB Conteúdo Programático do Curso Introdução a Testes de Software Técnicas de Testes de Software

Leia mais

Como Gerar Tráfego Massivo Para o Seu Blog

Como Gerar Tráfego Massivo Para o Seu Blog Como Gerar Tráfego Massivo Para o Seu Blog Trazido Até Si Por http://rendasextraonline.com Como Gerar Tráfego Massivo Para o Seu Blog Termos e Condições Aviso Legal O escritor esforçou-se para ser o tão

Leia mais

Ninguém gosta do custo de frete. Os clientes

Ninguém gosta do custo de frete. Os clientes I E-BOOK Ninguém gosta do custo de frete. Os clientes não gostam. As lojas virtuais não gostam. O mercado não gosta. Mas apesar do crescimento dos custos de manuseio, envio e transporte de produtos, a

Leia mais

O uso de exceções permite separar a detecção da ocorrência de uma situação excepcional do seu tratamento, ao se programar um método em Java.

O uso de exceções permite separar a detecção da ocorrência de uma situação excepcional do seu tratamento, ao se programar um método em Java. Exceções em Java Miguel Jonathan DCC/IM/UFRJ (rev. abril de 2011) Resumo dos conceitos e regras gerais do uso de exceções em Java O uso de exceções permite separar a detecção da ocorrência de uma situação

Leia mais

Laboratório de Programação - Exercícios 12, 13 e 14

Laboratório de Programação - Exercícios 12, 13 e 14 Laboratório de Programação - Exercícios 12, 13 e 14 If, switch e funções João Araujo Ribeiro jaraujo@uerj.br Universidade do Estado do Rio de Janeiro Departamento de Engenharia de Sistemas e Computação

Leia mais

Capítulo 1. Introdução. 1.1 Linguagens. OBJETIVOS DO CAPÍTULO Ao final deste capítulo você deverá ser capaz de:

Capítulo 1. Introdução. 1.1 Linguagens. OBJETIVOS DO CAPÍTULO Ao final deste capítulo você deverá ser capaz de: i Sumário 1 Introdução 1 1.1 Linguagens....................................... 1 1.2 O que é um Compilador?................................ 2 1.3 Processadores de Programas: Compiladores, Interpretadores

Leia mais

Estrutura de Dados Básica

Estrutura de Dados Básica Estrutura de Dados Básica Professor: Osvaldo Kotaro Takai. Aula 6: Tipos Abstratos de Dados O objetivo desta aula é introduzir os conceitos envolvidos em Tipos Abstratos de Dados e explorar esses conceitos

Leia mais

O Paradigma da nova liderança

O Paradigma da nova liderança O Paradigma da nova liderança Robert B. Dilts Um dos mais importantes conjuntos de habilidades Um dos mais importantes conjuntos de habilidades necessárias num mundo em transformação são as habilidades

Leia mais

4ª Parte Processo de Teste

4ª Parte Processo de Teste 4ª Parte Processo de Teste Atividades de preparação Ø Planejamento: define itens a testar, aspectos gerenciais e recursos necessários; para a execução da bateria de testes. Ø Desenho: completa as especificações

Leia mais

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO)

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Parte: 1 Prof. Cristóvão Cunha Objetivos de aprendizagem

Leia mais

AS ALTERAÇÕES NAS NORMAS DE AUDITORIA INDEPENDENTE VIGENTES NO BRASIL (2) O RELATÓRIO DO AUDITOR INDEPENDENTE

AS ALTERAÇÕES NAS NORMAS DE AUDITORIA INDEPENDENTE VIGENTES NO BRASIL (2) O RELATÓRIO DO AUDITOR INDEPENDENTE AS ALTERAÇÕES NAS NORMAS DE AUDITORIA INDEPENDENTE VIGENTES NO BRASIL (2) O RELATÓRIO DO AUDITOR INDEPENDENTE Um dos pontos mais polêmicos e de maior impacto nestas alterações das normas de auditoria independente

Leia mais

MVC e Camadas - Fragmental Bliki

MVC e Camadas - Fragmental Bliki 1 de 5 20-03-2012 18:32 MVC e Camadas From Fragmental Bliki Conteúdo 1 Introdução 2 Camadas: Separação Entre Componentes 3 MVC: Interação Entre Componentes 4 Conclusão 5 Referências Introdução A Arquitetura

Leia mais

Análise estruturada de sistemas

Análise estruturada de sistemas Análise estruturada de sistemas Prof. Marcel O que é Engenharia de software Engenharia de software é uma área do conhecimento da computação voltada para a especificação, desenvolvimento e manutenção de

Leia mais

Os objetivos indicados aplicam-se a duas linguagens de programação: C e PHP

Os objetivos indicados aplicam-se a duas linguagens de programação: C e PHP AGRUPAMENTO DE ESCOLAS DE SANTA COMBA DÃO CURSO PROFISSIONAL DE TÉCNICO DE GESTÃO E PROGRAMAÇÃO DE SISTEMAS INFORMÁTICOS 2012-2015 PROGRAMAÇÃO E SISTEMAS DE INFORMAÇÃO MÓDULO 2 Mecanismos de Controlo de

Leia mais

Programação Orientada a Objetos. Encapsulamento

Programação Orientada a Objetos. Encapsulamento Programação Orientada a Objetos Encapsulamento de Dados Ocultação de dados Garante a transparência de utilização dos componentes do software, facilitando: Entendimento Reuso Manutenção Minimiza as interdependências

Leia mais

Estruturas de entrada e saída

Estruturas de entrada e saída capa Estruturas de entrada e saída - A linguagem C utiliza de algumas funções para tratamento de entrada e saída de dados. - A maioria dessas funções estão presentes na biblioteca . - As funções

Leia mais

Alunos dorminhocos. 5 de Janeiro de 2015

Alunos dorminhocos. 5 de Janeiro de 2015 Alunos dorminhocos 5 de Janeiro de 2015 Resumo Objetivos principais da aula de hoje: entender a necessidade de se explorar um problema para chegar a uma solução; criar o hábito (ou pelo menos entender

Leia mais

Como perder amigos e enganar pessoas

Como perder amigos e enganar pessoas Como perder amigos e enganar pessoas Nicolau C. Saldanha 9 de janeiro de 998 Neste artigo apresentaremos quatro situações simples em que probabilidades enganam. Em alguns casos a probabilidade de certos

Leia mais

Instituto de Tecnologia de Massachusetts Departamento de Engenharia Elétrica e Ciência da Computação. Tarefa 6 Modelamento da Línguagem

Instituto de Tecnologia de Massachusetts Departamento de Engenharia Elétrica e Ciência da Computação. Tarefa 6 Modelamento da Línguagem Instituto de Tecnologia de Massachusetts Departamento de Engenharia Elétrica e Ciência da Computação 6.345 Reconhecimento Automático da Voz Primavera, 2003 Publicado: 14/03/03 Devolução: 02/04/03 Tarefa

Leia mais

Programação de Computadores - I. Profª Beatriz Profº Israel

Programação de Computadores - I. Profª Beatriz Profº Israel Programação de Computadores - I Profª Beatriz Profº Israel As 52 Palavras Reservadas O que são palavras reservadas São palavras que já existem na linguagem Java, e tem sua função já definida. NÃO podem

Leia mais

Construção e Implantação de Software II - Unidade 3- Estratégias Para Testes de Software. Prof. Pasteur Ottoni de Miranda Junior

Construção e Implantação de Software II - Unidade 3- Estratégias Para Testes de Software. Prof. Pasteur Ottoni de Miranda Junior Construção e Implantação de Software II - Unidade 3- Estratégias Para Testes de Software Prof. Pasteur Ottoni de Miranda Junior 1 1-Estratégia Global 1.1-Visão Global de Estratégias Para Teste A estratégia

Leia mais

Introdução à Programação de Computadores

Introdução à Programação de Computadores 1. Objetivos Introdução à Programação de Computadores Nesta seção, vamos discutir os componentes básicos de um computador, tanto em relação a hardware como a software. Também veremos uma pequena introdução

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

Guia de bolso de técnicas de análise estatística

Guia de bolso de técnicas de análise estatística Guia de bolso de técnicas de análise estatística Guia de bolso de técnicas de análise estatística para uso em ferramentas de aperto Capítulo...Página 1. Introdução...4 2. Estatística básica...5 2.1 Variação...5

Leia mais

Algoritmos: Lógica para desenvolvimento de programação de computadores. Autor: José Augusto Manzano. Capítulo 1 Abordagem Contextual

Algoritmos: Lógica para desenvolvimento de programação de computadores. Autor: José Augusto Manzano. Capítulo 1 Abordagem Contextual Algoritmos: Lógica para desenvolvimento de programação de computadores Autor: José Augusto Manzano Capítulo 1 Abordagem Contextual 1.1. Definições Básicas Raciocínio lógico depende de vários fatores para

Leia mais

Árvore B UNITINS ANÁLISE E DESENVOLVIMENTO DE SISTEMAS 3º PERÍODO 43

Árvore B UNITINS ANÁLISE E DESENVOLVIMENTO DE SISTEMAS 3º PERÍODO 43 AULA A 3 ESTRUTURA RA DE DADOS Árvore B Esperamos que, ao final desta aula, você seja capaz de: identificar as vantagens da árvore B em relação às árvores binária de busca e AVL; conhecer as funções de

Leia mais

e à Linguagem de Programação Python

e à Linguagem de Programação Python Introdução a Algoritmos, Computação Algébrica e à Linguagem de Programação Python Curso de Números Inteiros e Criptografia Prof. Luis Menasché Schechter Departamento de Ciência da Computação UFRJ Agosto

Leia mais

MATERIAL DIDÁTICO A REALIDADE DOS SISTEMAS DE EQUAÇÕES

MATERIAL DIDÁTICO A REALIDADE DOS SISTEMAS DE EQUAÇÕES MATERIAL DIDÁTICO A REALIDADE DOS SISTEMAS DE EQUAÇÕES Prof. ANTONIO ROBERTO GONÇALVES Aprendizagem de Conceitos Se você precisa encontrar o volume de um silo de milho, a distância percorrida por um carro

Leia mais

Programação de Computadores

Programação de Computadores Programação de Computadores INTRODUÇÃO AOS ALGORITMOS E À PROGRAMAÇÃO DE COMPUTADORES PARTE 1 Renato Dourado Maia Instituto de Ciências Agrárias Universidade Federal de Minas Gerais Programas e Programação

Leia mais

2 Medição e Acompanhamento

2 Medição e Acompanhamento 2 Medição e Acompanhamento Para verificar a eficácia da aplicação da técnica de desenvolvimento dirigido por testes, foram usadas algumas métricas para determinar se houve melhoria ou degradação no processo

Leia mais

Introdução à Qualidade de Software. Profº Aldo Rocha

Introdução à Qualidade de Software. Profº Aldo Rocha Introdução à Qualidade de Software Profº Aldo Rocha Agenda O que é Qualidade? O que é Qualidade de Software? Qualidade do Produto e do Processo Normas e Organismos Normativos Qualidade de Software e Processos

Leia mais

COMO ESCREVER UM ENSAIO FILOSÓFICO 1. Artur Polónio CENTRO PARA O ENSINO DA FILOSOFIA SOCIEDADE PORTUGUESA DE FILOSOFIA

COMO ESCREVER UM ENSAIO FILOSÓFICO 1. Artur Polónio CENTRO PARA O ENSINO DA FILOSOFIA SOCIEDADE PORTUGUESA DE FILOSOFIA 1 Artur Polónio Índice 1. O que é um ensaio filosófico? 2. O que se espera que um estudante mostre ao escrever um ensaio? 3. Como escolher o título do ensaio? 4. Como se prepara um ensaio? 5. Como se deve

Leia mais

CAPITULO 5 COMANDO DE FLUXO IF

CAPITULO 5 COMANDO DE FLUXO IF CAPITULO 5 COMANDO DE FLUXO IF Sempre que for necessária a tomada de decisão dentro de um programa, você terá que utilizar um comando condicional, pois é por meio dele que o PHP decidirá que lógica deverá

Leia mais

Programação Orientada a Objetos Prof. Rone Ilídio UFSJ/CAP

Programação Orientada a Objetos Prof. Rone Ilídio UFSJ/CAP Programação Orientada a Objetos Prof. Rone Ilídio UFSJ/CAP 1) Introdução Programação Orientada a Objetos é um paradigma de programação bastante antigo. Entretanto somente nos últimos anos foi aceito realmente

Leia mais

MINERAÇÃO DE DADOS APLICADA. Pedro Henrique Bragioni Las Casas pedro.lascasas@dcc.ufmg.br

MINERAÇÃO DE DADOS APLICADA. Pedro Henrique Bragioni Las Casas pedro.lascasas@dcc.ufmg.br MINERAÇÃO DE DADOS APLICADA Pedro Henrique Bragioni Las Casas pedro.lascasas@dcc.ufmg.br Processo Weka uma Ferramenta Livre para Data Mining O que é Weka? Weka é um Software livre do tipo open source para

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

Palestra 1 Mudança Organizacional. Texto base: 10 +1 Mandamentos para ter sucesso em um mundo em constantes mudanças

Palestra 1 Mudança Organizacional. Texto base: 10 +1 Mandamentos para ter sucesso em um mundo em constantes mudanças Palestra 1 Mudança Organizacional Texto base: 10 +1 Mandamentos para ter sucesso em um mundo em constantes mudanças 02 de Dezembro de 2009 10 +1 Mandamentos para ter sucesso em um mundo em constantes mudanças

Leia mais

LINGUAGEM C UMA INTRODUÇÃO

LINGUAGEM C UMA INTRODUÇÃO LINGUAGEM C UMA INTRODUÇÃO AULA 1 Conceitos muito básicos 1 Introdução O C nasceu na década de 70. Seu inventor, Dennis Ritchie, implementou-o pela primeira vez usando um DEC PDP-11 rodando o sistema operacional

Leia mais

Gerenciamento de Projetos Modulo I Conceitos Iniciais

Gerenciamento de Projetos Modulo I Conceitos Iniciais Gerenciamento de Projetos Modulo I Conceitos Iniciais Prof. Walter Cunha falecomigo@waltercunha.com http://waltercunha.com Bibliografia* Project Management Institute. Conjunto de Conhecimentos em Gerenciamento

Leia mais

Desenvolvendo Capacidades de PDSA

Desenvolvendo Capacidades de PDSA Desenvolvendo Capacidades de PDSA Karen Martin Como com qualquer habilidade, desenvolver as capacidades do PDSA (planejar fazer estudar agir) tem tudo a ver com a prática. Para conquistar a disciplina

Leia mais

3 Qualidade de Software

3 Qualidade de Software 3 Qualidade de Software Este capítulo tem como objetivo esclarecer conceitos relacionados à qualidade de software; conceitos estes muito importantes para o entendimento do presente trabalho, cujo objetivo

Leia mais

5Passos fundamentais. Conseguir realizar todos os seus SONHOS. para. Autora: Ana Rosa. www.novavitacoaching.com

5Passos fundamentais. Conseguir realizar todos os seus SONHOS. para. Autora: Ana Rosa. www.novavitacoaching.com 5Passos fundamentais para Conseguir realizar todos os seus SONHOS Autora: Ana Rosa www.novavitacoaching.com O futuro pertence àqueles que acreditam na beleza dos seus sonhos! Eleanor Roosevelt CONSIDERA

Leia mais

3 Configuração Colaborativa de Linha de Produtos de Software

3 Configuração Colaborativa de Linha de Produtos de Software 3 Configuração Colaborativa de Linha de Produtos de Software Tendo em vista os problemas e limitações apresentados na Seção 1.1 e Seção 2.2, propomos uma nova forma de abordar a configuração colaborativa

Leia mais

Tipos de Dados, Tipos Abstratos de Dados Estruturas de Dados

Tipos de Dados, Tipos Abstratos de Dados Estruturas de Dados Tipos de Dados, Tipos Abstratos de Dados Estruturas de Dados Tipo de dados, tipo abstrato de dados, estruturas de dados Termos parecidos, mas com significados diferentes Tipo de dado Em linguagens de programação

Leia mais

INCENTIVE A SUA CRIATIVIDADE E EVITE ADIAMENTOS. Baseado em texto de Shelly Dorsey

INCENTIVE A SUA CRIATIVIDADE E EVITE ADIAMENTOS. Baseado em texto de Shelly Dorsey INCENTIVE A SUA CRIATIVIDADE E EVITE ADIAMENTOS Baseado em texto de Shelly Dorsey INCENTIVE A SUA CRIATIVIDADE E EVITE ADIAMENTOS Você batalhou muito para chegar à pósgraduação e agora que você está aqui,

Leia mais