SMART. Atualmente, o componente Reasoner oferece as seguintes facetas:

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

Download "SMART. Atualmente, o componente Reasoner oferece as seguintes facetas:"

Transcrição

1 SMART O SMART é um serviço usado para caracterizar o comportamento do desempenho de aplicações baseadas em componentes. O serviço é implementado por um componente SCS denominado Reasoner, o qual deve ser instanciado em cada nó onde um componente de aplicação executa. Cada nó é analisado separadamente dos outros nós. A máquina de inferência do SMART analisa uma coleção de dados coletados pela infraestrutura de monitoramento do SCS e periodicamente: i) constrói um modelo de comportamento do desempenho da aplicação; ii) estima, com certa robustez, o estado de uma aplicação; e iii) se necessário, faz o diagnóstico da causa de um problema de desempenho. Atualmente, o componente Reasoner oferece as seguintes facetas: CPUPredictor: faceta que caracteriza o desempenho de uma aplicação usando como métrica o consumo de CPU exclusivamente. Reasoner: faceta que caracteriza o desempenho de uma aplicação pelo uso de um classificador probabilístico. Esse classificador é capaz de correlacionar valores de múltiplas variáveis observáveis em um estado do sistema. O estado do sistema é uma variável binária que pode assumir os seguintes valores: conformidade com um objetivo de desempenho ou violação do objetivo desejado. O objetivo do sistema é definido através de um limiar (SLO) estabelecido sobre uma das variáveis observáveis. Trainer: faceta usada para gravar logs da aplicação em execução. Os logs contêm os valores observados para o conjunto de variáveis monitoradas durante a execução da aplicação. ReasoningManager: faceta usada para configurar o componente Reasoner. Além das facetas descritas acima, o componente Reasoner possui também um receptáculo, o qual é usado para conectar o componente a um serviço de monitoramento. As interfaces implementadas pelas facetas do componente são ilustradas abaixo. enum SystemStatus{DEGRADATION,COMPLIANCE exception DiagnosisIsNotAvailable{ exception TrainingFailure{ exception ReasoningFailure{ exception CPUPredictionFailure{ struct ClassifierDescription { string name; sequence<string> options; string ranker; struct Scheme_str { string metricname; long numberofbins; boolean classvariable; boolean slobased; boolean rankable; long metricindex;

2 struct Instance_str { long metricindex; double metricvalue; typedef sequence<scheme_str> SchemeSeq; typedef sequence<instance_str>instanceseq; struct ClassificationResult { SystemStatus status; double degradationprobability; SchemeSeq culprit; interface Filter { InstanceSeq filtermetrics(in scs::instrumentation::machinestats stats); SchemeSeq getmetricdescriptions(); interface CPUPredictor { void startcpuprediction() raises (CPUPredictionFailure); void stopcpuprediction(); double getcpuprediction(); interface Reasoner{ void startreasoning() raises (ReasoningFailure); void stopreasoning(); ClassificationResult classifysystemstate(); interface Trainer{ void starttraining() raises (TrainingFailure); void stoptraining(); interface ReasoningManager { scs::instrumentation::statscollection getmediator(); ClassifierDescription getclassifierdescription(); long long getpollinginterval(); string getmachinename(); Filter getfilter(); string gettrainingfilename(); long getslovariable(); double getslovalue();

3 1-Representação de Métricas A máquina de inferência do SMART necessita de metadados sobre as métricas monitoradas. Esses metadados são usados para manter informações sobre as variáveis observáveis e são essenciais para o processamento e análise dos dados coletados. Para descrever uma métrica no SMART, usamos a estrutura Scheme_str. Os seguintes campos compõem essa estrutura: metricname: campo que define o nome de uma variável observável ou métrica. numberofbins: número de intervalos de discretização para a métrica em questão. classvariable: booleano que indica se a métrica em questão é a variável de classe, ou seja, a variável a ser estimada. slobased: booleano que indica se a métrica em questão é a métrica na qual o SLO é definido. rankable: booleano que indica se a métrica em questão deve ser considerada num processo de diagnóstico de um problema de desempenho metricindex: índice da métrica num vetor de métricas coletadas em um tempo t. Uma sequência Scheme_str descreve o dataset ou conjunto de dados a ser analisado. Uma sequência Instance_str descreve uma instância desse dataset, ou seja, um vetor de valores coletados em um instante t, sendo cada valor uma observação de uma métrica observável naquele instante. A estrutura Instance_str é composta pelos seguintes campos: metricvalue: valor observado para a métrica em um instante t. metricindex: o índice correspondente ã métrica no esquema. 2- Interfaces 2.1 Interface CPUPredictor Define as operações implementadas para controlar o processo de predição de comportamento por CPU. startcpuprediction: inicia o processo de predição de desempenho por CPU. stopcpuprediction: finaliza o processo de predição de desempenho por CPU; getcpuprediction: retorna o valor previsto ou estimado de consumo de CPU. 2.2 Interface Trainer Define as operações implementadas pela faceta Trainer. starttraining: inicia o Componente Reasoner no modo de operação Treinamento. Nesse modo, o componente Reasoner grava as métricas coletadas em um log de execução. stoptraining: finaliza o modo de operação Treinamento. 2.3 Interface Reasoner Define as operações da faceta Reasoner. startreasoning: inicia o processo de predição de desempenho pela máquina de inferência do SMART ( classificador probabilístico). stopreasoning: finaliza o processo de predição de desempenho pela máquina de inferência do SMART. classifysystemstate: classifica o estado do sistema em relação ao SLO definido, segundo a máquina de inferência do SMART. O resultado da classificação é retornado na estrutura ClassificationResult, a qual é constituída pelos seguintes campos:

4 status: o estado do sistema segundo a máquina de inferência do SMART. degradationprobability: a probabilidade de violação calculada pela máquina de inferência. culprit: as métricas reponsáveis pela degradação de desempenho, ordenadas de forma ascendente pela responsabilidade. 2.4 Interface Filter Interface que faz a mediação entre o serviço de monitoramento e o serviço de análise do SMART. Dentre as operações de integração entre os dois serviços destacam-se: getmetricdescriptions: método que retorna o esquema que descreve o dataset analisado. Esse esquema deve ser definido pelo usuário do SMART. filtermetrics: operação que transforma um conjunto (bruto) de métricas coletadas pelo serviço de monitoramento em uma instância do dataset defindo pelo usuário. 2.5 Interface ReasoningManager Define operações que podem ser invocadas para obter informações sobre a configuração do componente Reasoner. getmediator: retorna o componente mediador que está conectado ao componente Reasoner getclassifierdescription: retorna dados sobre o classificador o nome da classe que o implementa, os argumentos ou opções passados para o construtor da classe e o nome da classe que implementa o algoritmo de ranking. GetPollingInterval: retorna o intervalo de polling no qual o componente consulta o mediador para uma instância das métricas monitoradas getmachinename: retorna o IP da máquina onde o componente executa getfilter: retorna o objeto Filter definido pelo usuário gettrainingfilename: retorna o nome do arquivo de treinamento getslovariable: retorna a variável na qual se define o SLO getslovalue: retorna o percentil associado ao SLO 3-Instanciação Como todo componente SCS, o componente Reasoner é instanciado por uma fábrica (classe scs.reasonig.servant.reasonerfactory) que define as facetas e receptáculos do componente. Essa fábrica implementa o método create, que, por sua vez, é invocado pelo conmponente Container para criar uma instância do componente. Um dos argumentos do método create são os argumentos que são usados para configurar o componente que será instanciado. Para o componente Reasoner, os argumentos são: args[0] = o nome da classe que implementa o classificador (pode ser "") args[1] = intervalo de polling ao mediador (pode ser 0, assume-se o 15s) args[2] = o nome da classe que implementa a interface Filter args[3] = o nome do arquivo de treinamento args[4] = a lista de opções para o classificador (separadas por ;) args[5] = o nome do algoritmo de ranking args[6] = o percentil para o SLO 4-Análise dos dados O SMART pode analisar dados de forma online ou offline. Neste tutorial descrevemos as classes que implementam a análise offline.

5 Antes de proceder à análise dos dados gravados no arquivo de log, uma fase de preprocessamento prepara os dados. Esta fase é implementada pela classe scs.reasoning.servant.preprocessor que implementa os seguintes métodos createsourcefortraining: lê e agrupa em um único arquivo de dados arquivos de treinamento que estão sob um diretório raiz readfiletoarray: retorna o conteúdo do arquivo de log como um Array de números reais removeoutilier: elima possíveis outlier a partir de um certo percentil estimateclassvariable: calcula o valor da variável de classe para cada instância do arquivo de log normalize: normaliza os dados do dataset discretize: discretiza os dados do dataset writearraytofile: escreve o dataset (Array de números reais) para um arquivo. Finalizada a fase de preprocessamento, a análise dos dados é feita pela classe scs.reasoning.servant.processor. Esta é especializada nas classes scs.reasoning.servant.commandlineprocessor e scs.reasoning.servant.runtimeprocessor. A primeira implementa o treinamento offline do modelo, enquanto a segunda implementa usa o modelo construído para classificar uma instância em tempo de execução. Os métodos de cada uma dessas classes são descritos a seguir Processor: createscheme: cria o esquema do dataset a partir do esquema definido pelo usuário. ClassifyInstance: classifica um conjunto de dados CommandLineProcessor createinstances:cria as instâncias do dataset a partir do arquivo gerado pela classe Preprocessor. buildmodel: constrói o modelo de predição evaluatemodel: avalia o modelo construído savemodel: salva o modelo construído em um arquivo, de forma que ele possa ser lido em tempo de execução, pelo SMART. RuntimeProcessor loadmodel: carrega o modelo construído pela classe CommandLineProcessor. createinstances: cria uma instância a partir de um vetor de valores de métricas coletadas classifyinstances: classifica uma instância em tempo de execução evaluatemodel: avalia o modelo em tempo de execução getlabel: retorna o rótulo estimado ou previsto getdistributionprobability: retorna o vetor contendo as probabilidade estimas para cada rótulo da variável de classe. As interfaces CPUPredictor, Trainer, Reasoner e ReasoningManager são implementadas pelas classes scs.reasoning.servant.cpupredictorservant, scs.reasoning.servant.trainerservant,scs.reasoning.servant.reasonerse rvantoffline e scs.reasoning.servant.reasoningmanagerservant. 5- Estruturas de diretórios O SMART é implementado pelo pacotes scs.reasoning. Esse pacote possui os seguintes diretórios:

6 app: diretório onde se encontram aplicações de testes das classes do SMART. Uma aplicação importante é a classe CmdLineModelEvaluation que implementa um exemplo de como usar a classe CommandLineProcessor para treinar, construir e avaliar um modelo de predição. dataset: diretório onde são gravados os datasets usados pelo SMART. O diretório model guarda os modelos que serão lidos pela faceta Reasoner do Componente Reasoner. O diretório ranking guarda arquivos que são lidos pelo algoritmo de ranking. O diretório training guarda os arquivos de logs gerados pela faceta Trainer do Componente Reasoner. Exemplos de arquivos de log se encontram nesse diretório. servant: diretório que contem as classes que implementam o SMART.

3 Cenário de Referência

3 Cenário de Referência 3 Cenário de Referência Como mencionado no capítulo anterior, o foco desta tese é a caracterização de problemas de desempenho de aplicações construídas sobre tecnologias de middleware. No contexto deste

Leia mais

Aprendizado de Máquina

Aprendizado de Máquina Aprendizado de Máquina Introdução ao WEKA Luiz Eduardo S. Oliveira Universidade Federal do Paraná Departamento de Informática http://web.inf.ufpr.br/luizoliveira Luiz S. Oliveira (UFPR) Aprendizado de

Leia mais

Aula 1 Conceitos Básicos

Aula 1 Conceitos Básicos Aula 1 Conceitos Básicos Elerson R. S. Santos elerson@dcc.ufmg.br Livro Projeto de Algoritmos Capítulo 1 @ DCC/UFMG O que é um algoritmo? O que é um programa? O que é um TAD? Algoritmos e Estrutura de

Leia mais

INF 1620 P4-13/12/01 Questão 1 Nome:

INF 1620 P4-13/12/01 Questão 1 Nome: INF 1620 P4-13/12/01 Questão 1 (a) Escreva uma função em C, chamada somaprod, para calcular a soma e o produto de dois valores inteiros. Esta função deve ter o seguinte efeito: se tivermos duas variáveis

Leia mais

4 Framework Proposto para Construção de Mediadores

4 Framework Proposto para Construção de Mediadores 41 4 Framework Proposto para Construção de Mediadores Neste capitulo apresentamos um framework que implementa a estratégia para enriquecimento de dados a partir de informações da Deep Web, descrita no

Leia mais

3 Ferramenta Proposta 3.1. Objetivos

3 Ferramenta Proposta 3.1. Objetivos 3 Ferramenta Proposta 3.1. Objetivos O objetivo deste trabalho é a criação de um framework de testes que incorpore algumas das novas idéias encontradas na literatura. Sua principal característica deve

Leia mais

Introdução ao SCS. Tecgraf PUC-Rio. outubro de 2010

Introdução ao SCS. Tecgraf PUC-Rio. outubro de 2010 Introdução ao SCS Tecgraf PUC-Rio outubro de 2010 Noções básicas O que são componentes de software? Unidades de composição com interfaces bem definidas e dependências explícitas Devem poder ser conectados,

Leia mais

Laboratório Classificação com o WEKA Explorer

Laboratório Classificação com o WEKA Explorer Laboratório Classificação com o WEKA Explorer Para esse laboratório considere os seguintes classificadores: C4.5 (J4.8) KNN Naïve Bayes Considere as bases de treinamento e teste de dígitos manuscrítos

Leia mais

Protocolos de Roteamento link-state

Protocolos de Roteamento link-state CCNA Exploration (Protocolos e Conceitos de Roteamento) Protocolos de Roteamento link-state Cronograma Introdução Introdução ao algoritmo SPF Processo de roteamento link-state Criação de um B.D. link-state

Leia mais

5 Robustez e Diagnóstico de Problemas de Desempenho

5 Robustez e Diagnóstico de Problemas de Desempenho 5 Robustez e Diagnóstico de Problemas de Desempenho Neste capítulo, são abordadas as outras duas perspectivas que completam a caracterização de problemas de desempenho. Primeiramente, a robustez do mecanismo

Leia mais

INF 1007 Simulado P2 Nome: Instruções

INF 1007 Simulado P2 Nome: Instruções INF 1007 Simulado P2 Nome: Matrícula: Turma: Instruções 1. Tempo de prova: 1 hora e 30 minutos. 2. Entregue a solução de sua prova em um ÚNICO arquivo texto, com o nome Turma_Matricula_P2.txt (por exemplo

Leia mais

Árvores. Thiago Martins, Fabio Gagliardi Cozman. PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo

Árvores. Thiago Martins, Fabio Gagliardi Cozman. PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo Árvore: estrutura composta por nós e arestas entre nós. As arestas são direcionadas ( setas ) e: um nó (e apenas um) é a raiz; todo nó

Leia mais

Processamento Cosequencial: Ordenação Interna e Externa. Thiago A. S. Pardo Leandro C. Cintra M.C.F. de Oliveira Cristina D. A.

Processamento Cosequencial: Ordenação Interna e Externa. Thiago A. S. Pardo Leandro C. Cintra M.C.F. de Oliveira Cristina D. A. Processamento Cosequencial: Ordenação Interna e Externa Thiago A. S. Pardo Leandro C. Cintra M.C.F. de Oliveira Cristina D. A. Ciferri Ordenação em RAM Situação: arquivo cabe em RAM Etapas leitura de todos

Leia mais

Metadados. Repositório de Interfaces em CORBA

Metadados. Repositório de Interfaces em CORBA Metadados Repositório de Interfaces em CORBA Metadados Consiste do ingrediente que permite-nos criar sistemas cliente/servidor ágeis. Um sistema ágil é auto-descritível. dinâmico e reconfigurável. Metadados

Leia mais

Exercícios de Repetição

Exercícios de Repetição Exercícios de Repetição 1. Implemente um trecho de código no método main que faz a leitura de 10 idades de nadadores, uma idade por vez, e a cada idade lida escreva na tela a categoria em que o nadador

Leia mais

Orientação a objetos. Programação. Orientada a Objetos. Orientação a objetos. Orientação a objetos. Abstração e encapsulamento

Orientação a objetos. Programação. Orientada a Objetos. Orientação a objetos. Orientação a objetos. Abstração e encapsulamento Orientação a objetos Programação Orientada a Objetos Alexandre César Muniz de Oliveira Linguagens orientadas a procedimentos e linguagens orientadas a objetos Unidade de programação: funções e classes

Leia mais

Classes e Objetos. Sintaxe de classe em Java

Classes e Objetos. Sintaxe de classe em Java Classes e Objetos Classes e Objetos A Programação Orientada a Objetos (POO) é uma técnica de programação que se baseia na construção de classes e utilização de objetos. Os objetos são formados por dados

Leia mais

Estrutura de Dados Funções e Procedimentos

Estrutura de Dados Funções e Procedimentos Estrutura de Dados Funções e Procedimentos Prof. Salustiano Rodrigues de Oliveira saluorodrigues@gmail.com www.profsalu.wordpress.com Java A linguagem Java utiliza o paradigma de programação orientada

Leia mais

2 A Infra-Estrutura SCS

2 A Infra-Estrutura SCS 2 A Infra-Estrutura SCS O SCS [7] é uma infra-estrutura para dar apoio à instalação, carga e execução de componentes de software em um ambiente distribuído. Atualmente, é fornecida uma implementação do

Leia mais

Algoritmos e Estruturas de Dados II. Trabalho Prático 3

Algoritmos e Estruturas de Dados II. Trabalho Prático 3 Algoritmos e Estruturas de Dados II Trabalho Prático 3 Entrega: 03/11/09 Devolução: 24/11/09 O trabalho pode ser feito em grupo de dois alunos. Este trabalho consiste em analisar o desempenho de diferentes

Leia mais

CONCEITOS BÁSICOS DE ORIENTAÇÃO A OBJETOS PROF. ME. HÉLIO ESPERIDIÃO

CONCEITOS BÁSICOS DE ORIENTAÇÃO A OBJETOS PROF. ME. HÉLIO ESPERIDIÃO CONCEITOS BÁSICOS DE ORIENTAÇÃO A OBJETOS PROF. ME. HÉLIO ESPERIDIÃO CLASSES E OBJETOS PARA PROGRAMAÇÃO ORIENTADA A OBJETOS Classes são estruturas das linguagens de POO criadas para conter os dados que

Leia mais

Construtores e Especificadores de Acesso

Construtores e Especificadores de Acesso Construtores e Especificadores de Acesso Professora: Fátima L. S. Nunes 1 1 1 Orientação a Objetos Conceitos do Paradigma de Orientação a Objetos já vistos: Classes atributos e métodos Objetos instanciação

Leia mais

INF 1620 P4-27/06/02 Questão 1 Nome:

INF 1620 P4-27/06/02 Questão 1 Nome: INF 1620 P4-27/06/02 Questão 1 Considere o tipo que representa uma grandeza vetorial (com três componentes) dado por: struct vetor { float x; float y; float z; }; typedef vetor Vetor; Pede-se: (a) Escreva

Leia mais

CORBA IDL. Interface Definition Language. Mário Meireles Teixeira.

CORBA IDL. Interface Definition Language. Mário Meireles Teixeira. CORBA IDL Interface Definition Language Mário Meireles Teixeira mario@deinf.ufma.br Desenvolvimento de aplicações Para desenvolver uma aplicação CORBA, segue-se o seguinte roteiro: Descrever a interface

Leia mais

SCS-Java - Tutorial - Básico

SCS-Java - Tutorial - Básico SCS-Java - Tutorial - Básico C. Augusto, R. Cerqueira Tecgraf Pontifícia Universidade Católica do Rio de Janeiro (PUC-Rio) rcerq@inf.puc-rio.br 1 Introdução Este documento é um tutorial básico sobre a

Leia mais

UNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL SISTEMAS DE INFORMAÇÃO - CÂMPUS DE COXIM FUNDAMENTOS EM ORIENTAÇÃO A OBJETOS

UNIVERSIDADE FEDERAL DE MATO GROSSO DO SUL SISTEMAS DE INFORMAÇÃO - CÂMPUS DE COXIM FUNDAMENTOS EM ORIENTAÇÃO A OBJETOS Data final de entrega 16/09/2014, até às 23h59min Enviar o arquivo de respostas em formato PDF e o arquivozip com códigos fontes para o e-mail motafernandomaia@gmailcom, insira no assunto do e-mail [Lista

Leia mais

Processamento da Consulta. Processamento da Consulta

Processamento da Consulta. Processamento da Consulta Processamento da Consulta Equipe 05 Adriano Vasconcelos Denise Glaucia Jose Maria Marcigleicy Processamento da Consulta Refere-se ao conjunto de atividades envolvidas na extra de dados de um banco de dados.

Leia mais

Iteradores. Iteradores. Isabel Harb Manssour. Roteiro. Coleções

Iteradores. Iteradores. Isabel Harb Manssour. Roteiro. Coleções Implementação de Genéricos, Iteradores Isabel Harb Manssour Porto Alegre, maio de 2006 Roteiro Implementação de Genéricos Coleções Conceito de Genérico Implementação Iteradores Conceito Utilização ForEach

Leia mais

Esta categoria mais geral, à qual cada objeto pertence, denominamos de classe; IFSC/POO + JAVA - prof. Herval Daminelli

Esta categoria mais geral, à qual cada objeto pertence, denominamos de classe; IFSC/POO + JAVA - prof. Herval Daminelli Esta categoria mais geral, à qual cada objeto pertence, denominamos de classe; Tudo no mundo real pode ser representado por meio do conceito de "objeto": uma planta, uma mesa, uma pessoa, um sentimento,

Leia mais

Lógica de Programação e Algoritmos com exemplos na linguagem JAVA

Lógica de Programação e Algoritmos com exemplos na linguagem JAVA Lógica de Programação e Algoritmos com exemplos na linguagem JAVA Cap. 5 Programação Estruturada: Funções Conteúdo: 5.1 Programação estruturada ou modular... 66 5.2 Funções... 67 5.3 Passagem de parâmetros...

Leia mais

Sistema de Inferência Fuzzy baseado em Redes Adaptativas (ANFIS) Sistema de Inferência Fuzzy

Sistema de Inferência Fuzzy baseado em Redes Adaptativas (ANFIS) Sistema de Inferência Fuzzy Redes Neurais Sistema de Inferência Fuzzy baseado em Redes Adaptativas (ANFIS) Sistema de Inferência Fuzzy Um Sistema de Inferência Fuzzy (SIF) é um tipo especial de Sistema Baseado em Conhecimento (SBC).

Leia mais

Algoritmos e Estruturas de Dados II. Trabalho Prático 4

Algoritmos e Estruturas de Dados II. Trabalho Prático 4 Algoritmos e Estruturas de Dados II Trabalho Prático 4 Entrega: 23/11/09 Devolução: 10/12/09 (sem possibilidade de entrega com atraso) Trabalho em dupla Prof. Jussara Marques de Almeida Problema 1: Construção

Leia mais

A classe ArrayList. IFSC/Florianópolis - Programação Orientada a Objetos com Java - prof. Herval Daminelli

A classe ArrayList. IFSC/Florianópolis - Programação Orientada a Objetos com Java - prof. Herval Daminelli A classe ArrayList Java oferece uma classe chamada ArrayList, que permite a criação e manipulação de objetos; Um objeto ArrayList é semelhante a um vetor de objetos, mas oferece inúmeras vantagens em relação

Leia mais

Programação Orientada a Objetos para Redes de Computadores

Programação Orientada a Objetos para Redes de Computadores Programação Orientada a Objetos para Redes de Computadores Prof. Miguel Elias Mitre Campista http://www.gta.ufrj.br/~miguel PARTE 2 Programação em C++ - Template Templates Funções templates Especificam

Leia mais

Introdução a Programação. Arquivos

Introdução a Programação. Arquivos Introdução a Programação Arquivos Tópicos da Aula Hoje aprenderemos a persistir dados Conceito de arquivos Importância de persistência Modos de acesso de arquivos em C Operações em arquivos Funções de

Leia mais

INF 1620 P2-14/10/05 Questão 1 Nome:

INF 1620 P2-14/10/05 Questão 1 Nome: INF 1620 P2-14/10/05 Questão 1 Considere um cadastro de produtos de um estoque, com as seguintes informações para cada produto: Código de identificação do produto: representado por um valor inteiro Nome

Leia mais

02. [Sebesta, 2000] Quais são as vantagens e as desvantagens dos tipos de dados decimais?

02. [Sebesta, 2000] Quais são as vantagens e as desvantagens dos tipos de dados decimais? 01. [Sebesta, 2000] O que é um descritor? 02. [Sebesta, 2000] Quais são as vantagens e as desvantagens dos tipos de dados decimais? 03. [Sebesta, 2000] Quais são as questões de projeto relativas aos tipos

Leia mais

Vetores Unimensionais

Vetores Unimensionais Vetores Unimensionais Objetivos Entender a importância e a necessidade do uso de Vetores Definição de Manipulação de Vetores Inserir elementos em um vetor (usando laços ou não) Acessar elementos de um

Leia mais

Laboratório Preprocessamento com WEKA Explorer

Laboratório Preprocessamento com WEKA Explorer Laboratório Preprocessamento com WEKA Explorer Faça o download do dataset test_credit.csv*, e execute as seguintes tarefas: 1. Use o Weka Viewer para ter uma visão geral do dataset original. 2. Substitua

Leia mais

índice 2. Vetores e Tipos Primitivos PARTE 1- O Sistema R 1. Introdução ao Sistema R

índice 2. Vetores e Tipos Primitivos PARTE 1- O Sistema R 1. Introdução ao Sistema R índice Os Autores Prólogo XI XIII PARTE 1- O Sistema R 1. Introdução ao Sistema R 1.1. O que é o R? 1.2. Instalar o R 1.3. Edição de Comandos e Ambientes de Desenvolvimento 1.. Objetos, Funções e Packages

Leia mais

4. Algoritmos de Busca em Vetores

4. Algoritmos de Busca em Vetores Introdução à Computação II 5952011 4. Algoritmos de Busca em Vetores Prof. Renato Tinós Local: Depto. de Computação e Matemática (FFCLRP/USP) 1 Principais Tópicos 4.1. Introdução 4.2. Busca Linear 4.2.1.

Leia mais

Tipos Abstratos de Dados

Tipos Abstratos de Dados Tipos Abstratos de Dados Prof. Rui Jorge Tramontin Jr. UDESC - Rui J. Tramontin Jr. 1 Índice Introdução Definição de Tipos Abstratos de Dados Exemplos de TADs Implementação de TADs Implementação em C Exemplo

Leia mais

ORDENAÇÃO EXTERNA DE ARQUIVOS: GERAÇÃO DE PARTIÇÕES CLASSIFICADAS. Vanessa Braganholo Estruturas de Dados e Seus Algoritmos

ORDENAÇÃO EXTERNA DE ARQUIVOS: GERAÇÃO DE PARTIÇÕES CLASSIFICADAS. Vanessa Braganholo Estruturas de Dados e Seus Algoritmos ORDENAÇÃO EXTERNA DE ARQUIVOS: GERAÇÃO DE PARTIÇÕES CLASSIFICADAS Vanessa Braganholo Estruturas de Dados e Seus Algoritmos ORDENAÇÃO DE ARQUIVOS GRANDES Para arquivos binários, é possível implementar o

Leia mais

Introdução a classes e objetos. Copyright 2006 by Pearson Education

Introdução a classes e objetos. Copyright 2006 by Pearson Education 3 Introdução a classes e objetos 3.1 Introdução Programas do Capítulo 2 Todas as instruções estavam localizadas na função main. Em geral Os programas consistirão Na função main e Em uma ou mais classes

Leia mais

MAC 0425/ Inteligência Artificial

MAC 0425/ Inteligência Artificial MAC 0425/5739 - Inteligência Artificial Exercício-Programa 4 - Clasificação Prazo limite de entrega: 23:59 07/12/2016 1 Introdução Neste exercício-programa estudaremos o problema de aprendizagem supervisionado

Leia mais

Interfaces e Classes Abstratas

Interfaces e Classes Abstratas Interfaces e Classes Abstratas José Gustavo de Souza Paiva Problema Método obterarea()? Classes Abstratas Classes que funcionam como um molde Declarada com comando abstract Contém um ou mais métodos abstratos

Leia mais

Lista 1 - PMR2300. Fabio G. Cozman 3 de abril de 2013

Lista 1 - PMR2300. Fabio G. Cozman 3 de abril de 2013 Lista 1 - PMR2300 Fabio G. Cozman 3 de abril de 2013 1. Qual String é impressa pelo programa: p u b l i c c l a s s What { p u b l i c s t a t i c void f ( i n t x ) { x = 2 ; p u b l i c s t a t i c void

Leia mais

Introdução. Universidade Federal de Uberlândia. Programação Orientada a Objetos. Prof. Fabiano Dorça

Introdução. Universidade Federal de Uberlândia. Programação Orientada a Objetos. Prof. Fabiano Dorça Introdução Universidade Federal de Uberlândia Programação Orientada a Objetos Prof. Fabiano Dorça Introdução Definições iniciais: classe, objeto, métodos, atributos. Introdução Ao escrever um programa

Leia mais

FUNÇÕES EM C Material adaptado da profa Silvana Maria Affonso de Lara

FUNÇÕES EM C Material adaptado da profa Silvana Maria Affonso de Lara Universidade do Estado de Minas Gerais - UEMG Curso de Engenharia da Computação FUNÇÕES EM C 1 Material adaptado da profa Silvana Maria Affonso de Lara ROTEIRO DA AULA Definição de Função Argumentos, retornos

Leia mais

5 Trabalhos Relacionados

5 Trabalhos Relacionados 5 Trabalhos Relacionados Durante o trabalho desenvolvido nesta dissertação foram estudadas diversas tecnologias que têm objetivos semelhantes ao nosso. Os trabalhos estudados apresentam modelos de programação

Leia mais

Inteligência Artificial. Raimundo Osvaldo Vieira [DComp IFMA Campus Monte Castelo]

Inteligência Artificial. Raimundo Osvaldo Vieira [DComp IFMA Campus Monte Castelo] Inteligência Artificial Raimundo Osvaldo Vieira [DComp IFMA Campus Monte Castelo] Aprendizagem de Máquina Área da Inteligência Artificial cujo objetivo é o desenvolvimento de técnicas computacionais sobre

Leia mais

Classificação Externa: Intercalação de Partições Classificadas

Classificação Externa: Intercalação de Partições Classificadas Classificação Externa: Intercalação de Partições Classificadas Vanessa Braganholo Baseado no Material de: Inhaúma Neves Ferraz (IC/UFF) Relembrando: Modelo da Classificação Externa 2 Aula Passada: Etapa

Leia mais

Estrutura de Dados Básica

Estrutura de Dados Básica Estrutura de Dados Básica Professor: Osvaldo Kotaro Takai. Aula 5: Registros O objetivo desta aula é apresentar os tipos de dados definidos pelo programador, bem como exibir usos comuns desses tipos de

Leia mais

CURSO DE POO COM JAVA

CURSO DE POO COM JAVA 07 CURSO DE POO COM JAVA Arrays PROF. MARCOS VINICIUS marcos.engsoft@gmail.com Introdução Imaginemos que queiramos trabalhar com as notas dos alunos. Supondo que cada aluno deva ter cinco notas, podemos

Leia mais

Programação Orientada a Objetos (utilizando C#) Professor Emiliano S. Monteiro Versão 20 Jan/2017.

Programação Orientada a Objetos (utilizando C#) Professor Emiliano S. Monteiro Versão 20 Jan/2017. Programação Orientada a Objetos (utilizando C#) Professor Emiliano S. Monteiro Versão 20 Jan/2017 4.9. Delegates Exercício 217 4.9. Delegates Repare nas diferenças destes dois casos com e sem Delegates:

Leia mais

P2 Programação II Departamento de Informática/PUC-Rio

P2 Programação II Departamento de Informática/PUC-Rio P2 Programação II 2013.1 Departamento de Informática/PUC-Rio Aluno: Matrícula: Turma: 1. A prova é sem consulta e sem perguntas. A interpretação do enunciado faz parte da prova. 2. A prova deve ser completamente

Leia mais

Programação Orientada a Objectos - P. Prata, P. Fazendeiro

Programação Orientada a Objectos - P. Prata, P. Fazendeiro Variáveis e Métodos de Classe Em Java, quer as classes quer as instâncias das classes são objectos. Onde está o estado da classe? Com que operações é manipulado? UBI, Departamento de Informática T04-1

Leia mais

Principais conceitos de CORBA

Principais conceitos de CORBA Principais conceitos de CORBA Tecgraf PUC-Rio fevereiro de 2011 Common Object Request Broker Architecture Uma arquitetura aberta para o desenvolvimento de aplicações distribuídas em um ambiente multilinguagem

Leia mais

Classes, Herança e Interfaces

Classes, Herança e Interfaces Escola de Artes, Ciências e Humanidades EACH-USP ACH2002 Introdução à Ciência da Computação II Professor: Delano Medeiros Beder revisada pelo professor: Luciano Digiampietri EACH Segundo Semestre de 2011

Leia mais

TAD: Tipo Abstrato de Dados (parte 2)

TAD: Tipo Abstrato de Dados (parte 2) TAD: Tipo Abstrato de Dados (parte 2) SCC0202 Algoritmos e Estruturas de Dados I Prof. Thiago A. S. Pardo Modularização em C Programa em C pode ser dividido em vários arquivos Arquivos fonte com extensão.c

Leia mais

TAD: Tipo Abstrato de Dados (parte 2)

TAD: Tipo Abstrato de Dados (parte 2) TAD: Tipo Abstrato de Dados (parte 2) SCC0502 Algoritmos e Estruturas de Dados I Programa em C pode ser dividido em vários arquivos Arquivos fonte com extensão.c Denominados de módulos Cada módulo deve

Leia mais

3 Uma Abordagem Orientada a Aspectos para o Desenvolvimento de Frameworks

3 Uma Abordagem Orientada a Aspectos para o Desenvolvimento de Frameworks 48 3 Uma Abordagem Orientada a Aspectos para o Desenvolvimento de Frameworks Este capítulo apresenta uma visão geral da contribuição principal deste trabalho: uma abordagem orientada a aspectos para o

Leia mais

Modelo de Componentes CORBA

Modelo de Componentes CORBA Modelo de Componentes CORBA Cláudia Brito L. N. da Silva cblns@cin.ufpe.br Roteiro 1. Visão geral 2.! Definindo componentes! Implementando componentes! Empacotando componentes! Instalando componentes!

Leia mais

Java API. Giuliana Silva Bezerra

Java API. Giuliana Silva Bezerra Java API Giuliana Silva Bezerra Leitura e escrita de arquivos Java.io.file Escrita de arquivos Java.io.PrintWriter 1. Criar instância de Java.io.PrintWriter PrintWriter saida = new PrintWriter( Diretorio

Leia mais

Árvores. Fabio Gagliardi Cozman. PMR2300 Escola Politécnica da Universidade de São Paulo

Árvores. Fabio Gagliardi Cozman. PMR2300 Escola Politécnica da Universidade de São Paulo PMR2300 Escola Politécnica da Universidade de São Paulo Árvore: estrutura composta por nós e arestas entre nós. As arestas são direcionadas ( setas ) e: um nó (e apenas um) é a raiz; todo nó (exceto a

Leia mais

INF 1620 P4 30/06/07 Questão 1 Nome:

INF 1620 P4 30/06/07 Questão 1 Nome: INF 1620 P4 30/06/07 Questão 1 O maior divisor comum (MDC) de dois números inteiros é o maior número inteiro que faz uma divisão exata (com resto zero) desses dois números. Por exemplo, o MDC de 32 e 40

Leia mais

Índice. Introdução. Pré-requisitos. Requisitos. Componentes Utilizados

Índice. Introdução. Pré-requisitos. Requisitos. Componentes Utilizados Alta utilização da CPU do gerente 6.0 das comunicações unificadas de Cisco da monitoração e do Troubleshooting, usando a ferramenta do monitoramento em tempo real (RTMT) Índice Introdução Pré-requisitos

Leia mais

Prof. A. G. Silva. 13 de novembro de Prof. A. G. Silva INE5603 Introdução à POO 13 de novembro de / 1

Prof. A. G. Silva. 13 de novembro de Prof. A. G. Silva INE5603 Introdução à POO 13 de novembro de / 1 INE5603 Introdução à POO Prof. A. G. Silva 13 de novembro de 2017 Prof. A. G. Silva INE5603 Introdução à POO 13 de novembro de 2017 1 / 1 Introdução à manipulação de arquivos Prof. A. G. Silva INE5603

Leia mais

--Depois que o backup for concluído, restaurá-lo no servidor Mirror usando a opção WITH NORECOVERY.

--Depois que o backup for concluído, restaurá-lo no servidor Mirror usando a opção WITH NORECOVERY. --Depois que o backup for concluído, restaurá-lo no servidor Mirror usando a opção WITH NORECOVERY. --Executar no SERVER-02/Mirror server RESTORE DATABASE CanalUseSQL FROM DISK = N'D:\DBBackup\CanalUseSQL.bak'

Leia mais

DESENVOLVIMENTO DE UM SISTEMA DE ARQUIVOS INSTALÁVEL PARA LINUX. Thiago Klein Flach Orientador: Mauro Marcelo Mattos

DESENVOLVIMENTO DE UM SISTEMA DE ARQUIVOS INSTALÁVEL PARA LINUX. Thiago Klein Flach Orientador: Mauro Marcelo Mattos DESENVOLVIMENTO DE UM SISTEMA DE ARQUIVOS INSTALÁVEL PARA LINUX Thiago Klein Flach Orientador: Mauro Marcelo Mattos ROTEIRO 1 Introdução: 1.1 Objetivos. 2 Fundamentação Teórica: 2.1 Conceitos Básicos;

Leia mais

Variáveis Compostas. Vanessa Braganholo

Variáveis Compostas. Vanessa Braganholo Variáveis Compostas Vanessa Braganholo vanessa@ic.uff.br Aula de hoje } Veremos os diferentes tipos de variáveis compostas (arrays) } Com uma dimensão (vetores) } Com duas ou mais dimensões (matrizes)

Leia mais

TUTORIAL ANDROID ACTIVITY - CONSTRUÇÃO DE TELAS

TUTORIAL ANDROID ACTIVITY - CONSTRUÇÃO DE TELAS TUTORIAL ANDROID ACTIVITY - CONSTRUÇÃO DE TELAS Uma activity é um componente do aplicativo que fornece uma tela com o qual os usuários podem interagir. Uma aplicação geralmente consiste de múltiplas activities,

Leia mais

Linguagens de Programação

Linguagens de Programação Linguagens de Programação Prof. Miguel Elias Mitre Campista http://www.gta.ufrj.br/~miguel Parte IV Introdução à Programação em C++ (Continuação) Relembrando da Última Aula... Polimorfismo Mais exemplos

Leia mais

Compressão de Textos. Introdução. Introdução. Introdução. O volume de informação textual disponível on-line é imenso:

Compressão de Textos. Introdução. Introdução. Introdução. O volume de informação textual disponível on-line é imenso: Compressão de Textos Estrutura de Dados II Prof. Guilherme Tavares de Assis Universidade Federal de Ouro Preto UFOP Instituto de Ciências Exatas e Biológicas ICEB Departamento de Computação DECOM O volume

Leia mais

Programação com Sockets

Programação com Sockets Sistemas Distribuidos e Paralelos Programação com Sockets Datagramas Objetivo Desenvolver programas que permitam o envio de informação pela rede mediante sockets usando o protocolo UDP. Bibliografía Deitel,

Leia mais

User Datagram Protocol

User Datagram Protocol User Datagram Protocol UDP: Protocolo utiliza para distinguir para qual usuário ou aplicativo deve ser encaminhado um datagrama destinado a uma máquina que esteja executando mais de um processo. Problemas:

Leia mais

Orientação a Objetos AULA 09

Orientação a Objetos AULA 09 Orientação a Objetos AULA 09 Prof. Fabrício Martins Mendonça Conteúdo da Aula ü Coleções ü Coleções lista de objetos ü Coleções conjuntos 2 Coleções Podemos armazenar vários objetos em um array e este

Leia mais

Árvores. Thiago Martins, Fabio Gagliardi Cozman. PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo

Árvores. Thiago Martins, Fabio Gagliardi Cozman. PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo PMR2300 / PMR3201 Escola Politécnica da Universidade de São Paulo Árvore: estrutura composta por nós e arestas entre nós. As arestas são direcionadas ( setas ) e: um nó (e apenas um) é a raiz; todo nó

Leia mais

Aprendizagem de Máquina

Aprendizagem de Máquina Aprendizagem de Máquina Alessandro L. Koerich Redes Bayesianas Mestrado/Doutorado em Informática Pontifícia Universidade Católica do Paraná (PUCPR) Mestrado/Doutorado em Informática Aprendizagem de Máquina

Leia mais

Processo. Prof. Paulo Cesar F. de Oliveira, BSc, PhD

Processo. Prof. Paulo Cesar F. de Oliveira, BSc, PhD Prof. Paulo Cesar F. de Oliveira, BSc, PhD 1 Seção 1.1 Introdução 2 Receita do Bolo Programa (Algoritmo) Ingredientes: dados de entrada Quem prepara (confeiteiro): CPU atividade de: Ler a receita Buscar

Leia mais

Aprendizado de Máquina (Machine Learning)

Aprendizado de Máquina (Machine Learning) Ciência da Computação Aprendizado de Máquina (Machine Learning) Aula 09 Árvores de Decisão Max Pereira Classificação É a tarefa de organizar objetos em uma entre diversas categorias pré-definidas. Exemplos

Leia mais

DRIVER DO ADS2000 PARA LABVIEW FOR WINDOWS 95

DRIVER DO ADS2000 PARA LABVIEW FOR WINDOWS 95 Código do Documento: S135U02 Revisão: 0 DRIVER DO ADS2000 PARA LABVIEW FOR WINDOWS 95 1. INTRODUÇÃO 1.1. Escopo O objetivo deste documento é apresentar as funções da biblioteca DLL de acesso ao ADS2000

Leia mais

Sistemas de Entrada e Saída

Sistemas de Entrada e Saída Sistemas de Entrada e Saída Eduardo Ferreira dos Santos Ciência da Computação Centro Universitário de Brasília UniCEUB Maio, 2016 1 / 31 Sumário 1 Interrupções 2 Camadas de Software de E/S 2 / 31 Interrupções

Leia mais

Serviço de Nomes CORBA. Serviço de Nomes CORBA e Interoperabilidade de ORBs. Serviço de Nomes CORBA. Serviço de Nomes CORBA. Serviço de Nomes CORBA

Serviço de Nomes CORBA. Serviço de Nomes CORBA e Interoperabilidade de ORBs. Serviço de Nomes CORBA. Serviço de Nomes CORBA. Serviço de Nomes CORBA www/~cagf/sdgrad Páginas Brancas e Interoperabilidade de s Permite encontrar objetos através de nomes Nomes Referência de Objeto Essa associação é denominada name binding Um name context é o espaço onde

Leia mais

Algoritmos e Programação

Algoritmos e Programação Algoritmos e Programação Aula 3 Introdução a Linguagem C Profa. Marina Gomes marinagomes@unipampa.edu.br 1 Aula de Hoje - Criar programas simples em C utilizando a estrutura básica; - Declarar variáveis;

Leia mais

Panorama da Gestão de Dados no Brasil

Panorama da Gestão de Dados no Brasil Panorama da Gestão de Dados no Brasil Fernanda Farinelli fernandafarinelli@eci.ufmg.br Roteiro DAMA DMBOK Funções de Gestão de Dados Considerações finais Resultados da pesquisa Caracterização das empresas

Leia mais

Computação II Orientação a Objetos

Computação II Orientação a Objetos Computação II Orientação a Objetos Fabio Mascarenhas - 2016.2 http://www.dcc.ufrj.br/~fabiom/java Revisão Classes e Objetos Classes são uma das unidades básicas de um programa Java Usamos as classes para

Leia mais

1) Responda de acordo com os conceitos de orientação a objetos (0,5).

1) Responda de acordo com os conceitos de orientação a objetos (0,5). Avalição II (Teórica) 22/06/2017 Disciplina Linguagem de Programação II Prof. Wagner, dos Santos C. de Jesus Curso Engenharia da Computação Questões Solução da Avaliação 1) Responda de acordo com os conceitos

Leia mais

4 Uma Linguagem Baseada em Máquinas de Estado 4.1. A Linguagem

4 Uma Linguagem Baseada em Máquinas de Estado 4.1. A Linguagem 4 Uma Linguagem Baseada em Máquinas de Estado 4.1. A Linguagem Acredita-se nesse trabalho que características reativas e fortemente baseadas em modelos tornam necessária a criação de uma linguagem específica

Leia mais

Prof. Vicente Paulo de Camargo UML - INTRODUÇÃO UML = Unified Modeling Language = linguagem de modelagem de sistemas Permite especificar, visualizar e documentar modelos de software orientados a objetos

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

Pesquisa Linear. Adriano J. Holanda 15/3/2016

Pesquisa Linear. Adriano J. Holanda 15/3/2016 Pesquisa Linear Adriano J. Holanda 15/3/2016 Busca Linear em memória principal Introdução O dados estarão sempre armazenados na memória principal (DRAM 1 ): não há necessidade de acesso à memória secundária

Leia mais

Aprendizagem de Máquina

Aprendizagem de Máquina Aprendizagem de Máquina Árvores de Decisão Poda e extensões Prof. Paulo Martins Engel UFRGS 2 Questões sobre Árvores de Decisão Questões práticas do aprendizado de AD incluem: Determinar até quando se

Leia mais

LÓGICA DE PROGRAMAÇÃO (JAVA) CLASSES E OBJETOS. Professor Carlos Muniz

LÓGICA DE PROGRAMAÇÃO (JAVA) CLASSES E OBJETOS. Professor Carlos Muniz LÓGICA DE PROGRAMAÇÃO (JAVA) Classes Uma classe é um tipo definido pelo usuário que contém o molde, a especificação para os objetos, algo mais ou menos como o tipo inteiro contém o molde para as variáveis

Leia mais

Segundo trabalho prático de implementação Sistema de reserva de assentos

Segundo trabalho prático de implementação Sistema de reserva de assentos Segundo trabalho prático de implementação Sistema de reserva de assentos 1. Descrição do problema Computação Concorrente (MAB-117) 2016/2 Prof. Silvana Rossetto 1 DCC/IM/UFRJ 17 de novembro de 2016 Um

Leia mais

Fundamentos de programação

Fundamentos de programação Fundamentos de programação Métodos Modularização de código Edson Moreno edson.moreno@pucrs.br http://www.inf.pucrs.br/~emoreno O que é um método? Um método é um trecho de código identificado Possuem um

Leia mais

Exercícios sobre repetição. 1. Escreva um método que lê via teclado 8 números e retorna a quantidade de negativos.

Exercícios sobre repetição. 1. Escreva um método que lê via teclado 8 números e retorna a quantidade de negativos. Cursos: Análise, Ciência da Computação e Sistemas de Informação Programação I - Prof. Aníbal Lista de exercícios 6 Exercícios sobre repetição 1. Escreva um método que lê via teclado 8 números e retorna

Leia mais