Agentes Inteligentes: Uma Abordagem Prática com o Java Agent Development Framework

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

Download "Agentes Inteligentes: Uma Abordagem Prática com o Java Agent Development Framework"

Transcrição

1 Agentes Inteligentes: Uma Abordagem Prática com o Java Agent Development Framework Daniel Abella Cavalcante Mendonça de Souza daniel@abella.com.br Capítulo 1. Introdução Segundo Russel e Norvig [1], um Agente é tudo o que pode ser considerado capaz de perceber seu ambiente por meio de sensores e agir sobre este ambiente por intermédio de atuadores. Este conceito é ilustrado a seguir. Ilustração 1: Arquitetura básica de um Agente Termos Utilizados O termo percepção se refere às entradas perceptivas do agente em um dado momento, enquanto que, temos uma seqüência de percepções, que diz respeito à história completa de tudo o que o agente já percebeu. Esta distinção entre os termos apresentados é necessária, pois, a escolha de uma ação a ser realizada pelos atuadores do Agente, pode depender da seqüência inteira de percepções observadas até o momento. Em termos matemáticos, afirmamos que o comportamento do agente é descrito pela função de agente, que mapeia qualquer seqüência de percepções a uma dada ação. Função de Agente x Programa de Agente O mapeamento descrito anteriormente na função agente é comumente relacionado a uma tabela, que é infinita, a menos que seja definido um limite sobre a quantidade de percepções que devemos considerar. Entretanto, esta tabela é apenas uma

2 caracterização externa do agente. Internamente, a função de agente é implementada por um programa de agente. Em resumo, a função de agente é uma descrição matemática abstrata; o programa de agente é uma implementação concreta, relacionada à arquitetura do agente. Aplicação Na próxima seção, é apresentada como pode ser desenvolvido um Agente conforme o conceito de Russel e Norvig [1]. 1.1 Implementação de um Agente by Russel Para o desenvolvimento de um Agente Inteligente conforme a definição de Russel será utilizada a linguagem Java e o framework Java Agent Development Framework Jade [2]. Caso o leitor não tenha conhecimento sobre a configuração do ambiente para execução de Agentes ou desconheça conceitos básicos sobre este framework, devem ser consultados respectivamente os apêndices A e B. Então, Are you ready? Prática O primeiro passo para a construção de um Agente conforme a definição de Russel e Norvig, é definir o(s) seu(s) atuador(es) e sensor(es). Em termos de implementação, cada atuador ou sensor presente no agente, significará a criação de um novo Behavior. Iniciaremos pela construção do Sensor do agente intitulado Russel. Sensor Para o exemplo apresentado aqui, projetaremos um agente que perceberá o seu ambiente periodicamente. As ações que o agente realizará durante a percepção do agente é algo que deve corresponder à finalidade do agente. Por exemplo, em um agente intitulado SubmarinoProducts, que atua no oferecimento de produtos ao consumidor, pode constantemente monitorar as ações do usuário no e-commerce, e atualizar no banco de dados as ações do usuário, algo como o apresentado no Quadro 1. Em contrapartida, o atuador deste agente

3 consultaria esta tabela no banco de dados e realizaria uma oferta baseada na quantidade de acessos. Usuário Página Quantidade de Acessos daniel.abella eshop.com/notebook 3000 daniel.abella eshop.com/palmtop 1400 daniel.abella eshop.com/books 13 Quadro 1: Relação de acesso ao usuário Daniel Abella Neste momento, temos que definir se criaremos um comportamento próprio para o sensor (isto é, uma subclasse de SimplerBehavior) ou utilizaremos como base algum dos behaviors disponibilizados pelo framework Jade (por exemplo, CyclicBehavior, TickerBehavior, entre muitos outros). Conforme dito anteriormente, o sensor perceberá o ambiente periodicamente, logo pode ser utilizado como base o comportamento TickerBehavior, disponibilizado pelo framework. Este comportamento permite que o behavior seja chamado de acordo com a periodicidade informada pelo agente (em milisegundos). O código fonte referente ao sensor é apresentado na seqüência. Classe Sensor import jade.core.agent; import jade.core.behaviours.tickerbehaviour; public class Sensor extends TickerBehaviour { public Sensor(Agent agente, long tempo){ super(agente,tempo); protected void ontick(){ //Aqui, voce deve fornecer a implementacao do seu sensor System.out.println("Agente percebendo o ambiente"); //Depois de perceber o ambiente, é designado um Atuador para atuar no ambiente myagent.addbehaviour(new Atuador()); No código fonte apresentado anteriormente, não temos nenhuma percepção do ambiente de fato, apenas a impressão da frase Agente percebendo o ambiente. Ao fim da percepção, é incluído um Atuador que poderá atuar sobre o ambiente. Em substituição a impressão da frase Agente percebendo o ambiente poderíamos ter implementado o comportamento descrito no Quadro 1. Um pseudocódigo que ilustra este cenário é apresentado a seguir.

4 Classe Sensor import jade.core.agent; import jade.core.behaviours.tickerbehaviour; public class Sensor extends TickerBehaviour { public Sensor(Agent agente, long tempo){ super(agente,tempo); protected void ontick(){ String usuarioverificado = obterusuarioautenticado(); String acaousuario = obteracaousuario(usuarioverificado); gravarbancodedados(usuarioverificado,acaousuario); myagent.addbehaviour(new Atuador()); private void gravarbancodedados(string usuarioverificado, String acaousuario) { private String obteracaousuario(string usuarioverificado) {return null; private String obterusuarioautenticado() {return null; Atuador Após a definição do Sensor, trataremos nesta subseção a definição do atuador. Conforme apresentado nos códigos fonte anteriormente, o atuador estava sempre sendo chamado após a realização da atividade do sensor (note que, é sempre colocado no final do método ontick). Baseado nisto, tem-se que o Atuador deve ser chamado apenas uma vez. Isto se deve ao fato que, como o Sensor é chamado periodicamente e este último, por sua vez, sempre realizada a chamada do Atuador. Em momento simular durante o desenvolvimento do Sensor, temos que definir se criaremos um comportamento próprio para o atuador (isto é, uma subclasse de SimplerBehavior) ou utilizaremos como base algum dos behaviors disponibilizados pelo framework Jade (por exemplo, CyclicBehavior, TickerBehavior, entre muitos outros). Neste sentido, o OneShortBehavior pode ser utilizado, pois este implementa um comportamento atômico que é executado uma vez. É apresentado a seguir o código fonte referente ao atuador. Neste exemplo, não temos nenhuma atuação de fato, apenas a impressão da frase Agente Russel atuando no ambiente. Após isto, o método removebehavior é chamado. Este método faz com que o behavior informado como argumento seja removido da execução. Logo,

5 quando temos a chamada da forma removebehavior(this) estamos pedindo para que o próprio Atuador acabe com a sua execução. Classe Atuador import jade.core.behaviours.oneshotbehaviour; public class Atuador extends OneShotBehaviour{ public void action() { System.out.println("Agente Russel atuando no ambiente"); myagent.removebehaviour(this); Em contrapartida ao realizado durante a apresentação do Sensor, é apresentado abaixo o pseudocódigo para um Atuador que representaria o comportamento descrito no Quadro 1. Classe Atuador import jade.core.behaviours.oneshotbehaviour; public class Atuador extends OneShotBehaviour{ public void action() { String usuarioverificado = obterusuarioautenticado(); String secaomaisacessadapelousuario = obtersecaomaisacessadapelousuario(usuarioverificado); String paginaofertassessao = obterofertasdasessao(secaomaisacessadapelousuario); enviar usuario(paginaofertassessao); myagent.removebehaviour(this); private void enviar usuario(string paginaofertassessao) { private String obterofertasdasessao(string secaomaisacessadapelousuario) {return null; private String obtersecaomaisacessadapelousuario(string usuarioverificado) {return null; private String obterusuarioautenticado() {return null;

6 Vídeo Aula e Código Fonte Para melhor compreensão do abordado até este momento, é disponibilizado no site da disciplina uma vídeo-aula que demonstra a criação do Agente Russel. Além disto, é disponibilizado o código fonte produzido. Apêndice A. Configuração do Ambiente para Desenvolvimento de Agentes Inteligentes com o Java Agent Development Framework A ser incluído. Apêndice B. Conceitos básicos sobre o Java Agent Development Framework A ser incluído.

Implementando uma Classe e Criando Objetos a partir dela

Implementando uma Classe e Criando Objetos a partir dela Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 04 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Parte: 2 Prof. Cristóvão Cunha Implementando uma Classe

Leia mais

Especificação do 3º Trabalho

Especificação do 3º Trabalho Especificação do 3º Trabalho I. Introdução O objetivo deste trabalho é abordar a prática da programação orientada a objetos usando a linguagem Java envolvendo os conceitos de classe, objeto, associação,

Leia mais

Agentes - Definição. Inteligência Artificial. Agentes Inteligentes

Agentes - Definição. Inteligência Artificial. Agentes Inteligentes Inteligência Artificial s Inteligentes s - Definição : entidade capaz de perceber e agir em um ambiente, comunicar-se com outros agentes, motivada por um conjunto de inclinações, que pode dispor de representação

Leia mais

Programação para Android. Aula 06: Activity, menus e action bar

Programação para Android. Aula 06: Activity, menus e action bar Programação para Android Aula 06: Activity, menus e action bar Activity A classe Activity é quem gerencia a interface com o usuário. Ela quem recebe as requisições, as trata e processa. Na programação

Leia mais

Inteligência Artificial (SI 214) Aula 2 Agentes Inteligentes

Inteligência Artificial (SI 214) Aula 2 Agentes Inteligentes Inteligência Artificial (SI 214) Aula 2 Agentes Inteligentes Prof. Josenildo Silva jcsilva@ifma.edu.br 2012-2015 Josenildo Silva (jcsilva@ifma.edu.br) Este material é derivado dos slides de Hwee Tou Ng,

Leia mais

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE PÓS-GRADUAÇÃO EM SISTEMAS E COMPUTAÇÃO TÓPICOS AVANÇADOS EM SISTEMAS INTEGRADOS E DISTRIBUÍDOS II

UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE PÓS-GRADUAÇÃO EM SISTEMAS E COMPUTAÇÃO TÓPICOS AVANÇADOS EM SISTEMAS INTEGRADOS E DISTRIBUÍDOS II UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE PÓS-GRADUAÇÃO EM SISTEMAS E COMPUTAÇÃO TÓPICOS AVANÇADOS EM SISTEMAS INTEGRADOS E DISTRIBUÍDOS II RELATÓRIO TÉCNICO ADORILSON BEZERRA DE ARAÚJO ANDRÉ GUSTAVO

Leia mais

Programação por Objectos. Java

Programação por Objectos. Java Programação por Objectos Java Parte 2: Classes e objectos LEEC@IST Java 1/24 Classes (1) Sintaxe Qualif* class Ident [ extends IdentC] [ implements IdentI [,IdentI]* ] { [ Atributos Métodos ]* Qualif:

Leia mais

AULA 4 VISÃO BÁSICA DE CLASSES EM PHP

AULA 4 VISÃO BÁSICA DE CLASSES EM PHP AULA 4 VISÃO BÁSICA DE CLASSES EM PHP Antes de mais nada, vamos conhecer alguns conceitos, que serão importantes para o entendimento mais efetivos dos assuntos que trataremos durante a leitura desta apostila.

Leia mais

EXERCÍCIOS SOBRE ORIENTAÇÃO A OBJETOS

EXERCÍCIOS SOBRE ORIENTAÇÃO A OBJETOS Campus Cachoeiro de Itapemirim Curso Técnico em Informática Disciplina: Análise e Projeto de Sistemas Professor: Rafael Vargas Mesquita Este exercício deve ser manuscrito e entregue na próxima aula; Valor

Leia mais

Java 2 Standard Edition Como criar classes e objetos

Java 2 Standard Edition Como criar classes e objetos Java 2 Standard Edition Como criar classes e objetos Helder da Rocha www.argonavis.com.br 1 Assuntos abordados Este módulo explora detalhes da construção de classes e objetos Construtores Implicações da

Leia mais

Módulo 07 Características Avançadas de Classes

Módulo 07 Características Avançadas de Classes Módulo 07 Características Avançadas de Classes Última Atualização: 15/06/2010 1 Objetivos Descrever variáveis, métodos e iniciadores static Descrever a semântica do modificador final em classes, métodos

Leia mais

Mostraremos neste artigo um exemplo de como realizar o cadastro de uma Issue em um projeto existente no portal Java.net.

Mostraremos neste artigo um exemplo de como realizar o cadastro de uma Issue em um projeto existente no portal Java.net. Introdução Página 1 de 7 Mostraremos neste artigo um exemplo de como realizar o cadastro de uma Issue em um projeto existente no portal Java.net. Para iniciar este trabalho, estou considerando que você

Leia mais

Exercício 1 : As classes abaixo serão utilizadas neste exercício: public class Ponto { int x; int y; public Ponto(int x, int y){ this.

Exercício 1 : As classes abaixo serão utilizadas neste exercício: public class Ponto { int x; int y; public Ponto(int x, int y){ this. Exercício 1 : As classes abaixo serão utilizadas neste exercício: public class Ponto { int x; int y; public Ponto(int x, int y){ this.x = x; this.y = y; public String tostring(){ return "(" + x + "," +

Leia mais

DEFINIÇÃO DE MÉTODOS

DEFINIÇÃO DE MÉTODOS Cursos: Análise, Ciência da Computação e Sistemas de Informação Programação I - Prof. Aníbal Notas de aula 2 DEFINIÇÃO DE MÉTODOS Todo o processamento que um programa Java faz está definido dentro dos

Leia mais

4 O Workflow e a Máquina de Regras

4 O Workflow e a Máquina de Regras 4 O Workflow e a Máquina de Regras O objetivo do workflow e da máquina de regras é definir um conjunto de passos e regras configuráveis. Ao longo de sua execução, um usuário consegue simplificar o seu

Leia mais

Governança de TI. ITIL v.2&3. parte 1

Governança de TI. ITIL v.2&3. parte 1 Governança de TI ITIL v.2&3 parte 1 Prof. Luís Fernando Garcia LUIS@GARCIA.PRO.BR ITIL 1 1 ITIL Gerenciamento de Serviços 2 2 Gerenciamento de Serviços Gerenciamento de Serviços 3 3 Gerenciamento de Serviços

Leia mais

KNOW MORE, ACT BETTER

KNOW MORE, ACT BETTER KNOW MORE, ACT BETTER "Hoje não basta se preocupar apenas com sua concorrência ou tecnologia. O foco, o alvo, o seu trabalho, tem que ser desenvolvido para o seu consumidor." Gustavo Sanchez Palencia CEO

Leia mais

Projeto de Software Orientado a Objeto

Projeto de Software Orientado a Objeto Projeto de Software Orientado a Objeto Ciclo de Vida de Produto de Software (PLC) Analisando um problema e modelando uma solução Prof. Gilberto B. Oliveira Estágios do Ciclo de Vida de Produto de Software

Leia mais

Linguagem de Programação III

Linguagem de Programação III Linguagem de Programação III Aula-3 Criando Classes em Java Prof. Esbel Tomás Valero Orellana Da Aula Anterior Classes em Java, sintaxe básica Tipos básicos de dados em Java, como escolher o tipo apropriado

Leia mais

INF1771 - INTELIGÊNCIA ARTIFICIAL TRABALHO 2 LÓGICA

INF1771 - INTELIGÊNCIA ARTIFICIAL TRABALHO 2 LÓGICA INF1771 - INTELIGÊNCIA ARTIFICIAL TRABALHO 2 LÓGICA Descrição: Após reunir a equipe de programadores para participar do 1 Concurso Mundial de Desenvolvimento de Softwares, Barbie e seus amigos iniciaram

Leia mais

Programação para Android. Aula 10: Acesso a câmera, sms e recursos do aparelho

Programação para Android. Aula 10: Acesso a câmera, sms e recursos do aparelho Programação para Android Aula 10: Acesso a câmera, sms e recursos do aparelho Objetivos Nesta aula iremos aprender como invocar os recursos do aparelho: Fazer chamadas telefônicas Enviar SMS Utilizar a

Leia mais

Documentação Usando o Javadoc

Documentação Usando o Javadoc Documentação Usando o Javadoc Prof. MSc. João Carlos Pinheiro jcpinheiro@cefet-ma.br Versão 2.1 Última Atualização: 04/2005 1 Comentários e Documentação Comentários em Java Existem três tipos de comentários

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

Módulo 5 JPATransaction Camadas Turma Turma TurmaBC .business @BusinessController TurmaBC TurmaBC TurmaBC

Módulo 5 JPATransaction Camadas Turma Turma TurmaBC .business @BusinessController TurmaBC TurmaBC TurmaBC Módulo 5 No módulo anterior adaptamos nosso projeto para persistir as informações no banco de dados utilizando as facilidades da extensão demoiselle-jpa. Experimentamos o controle transacional do Framework

Leia mais

Aula 09 Introdução à Java. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes http://www.profbrunogomes.com.br/

Aula 09 Introdução à Java. Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes http://www.profbrunogomes.com.br/ Aula 09 Introdução à Java Disciplina: Fundamentos de Lógica e Algoritmos Prof. Bruno Gomes http://www.profbrunogomes.com.br/ Agenda da Aula Java: Sintaxe; Tipos de Dados; Variáveis; Impressão de Dados.

Leia mais

COMO FAZER A TRANSIÇÃO

COMO FAZER A TRANSIÇÃO ISO 9001:2015 COMO FAZER A TRANSIÇÃO Um guia para empresas certificadas Antes de começar A ISO 9001 mudou! A versão brasileira da norma foi publicada no dia 30/09/2015 e a partir desse dia, as empresas

Leia mais

Introdução à orientação a objetos. João Tito Almeida Vianna 25/05/2013

Introdução à orientação a objetos. João Tito Almeida Vianna 25/05/2013 Introdução à orientação a objetos João Tito Almeida Vianna 25/05/2013 Roteiro Aula 2 Motivação Revisão dos conceitos da aula 1 Preparação para os exercícios Exercícios propostos 2 Motivação A orientação

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

5 Framework para coordenação e mediação de Web Services para ambientes de aprendizado à distância

5 Framework para coordenação e mediação de Web Services para ambientes de aprendizado à distância 5 Framework para coordenação e mediação de Web Services para ambientes de aprendizado à distância O capítulo anterior apresentou uma discussão sobre a inclusão dos chamados learning services no processo

Leia mais

Desenvolvimento de aplicação web com framework JavaServer Faces e Hibernate

Desenvolvimento de aplicação web com framework JavaServer Faces e Hibernate Desenvolvimento de aplicação web com framework JavaServer Faces e Hibernate Tiago Peres Souza 1, Jaime Willian Dias 1,2 ¹Universidade paranaense (Unipar) Paranavaí PR Brasil tiagop_ti@hotmail.com 2 Universidade

Leia mais

INF1771 - INTELIGÊNCIA ARTIFICIAL TRABALHO 2 LÓGICA

INF1771 - INTELIGÊNCIA ARTIFICIAL TRABALHO 2 LÓGICA INF1771 - INTELIGÊNCIA ARTIFICIAL TRABALHO 2 LÓGICA Descrição: Para tornar-se um Mestre Pokémon é necessário aventurar-se por locais desconhecidos e capturar todos os 150 pokémons que habitam o Continente

Leia mais

Itens estruturais/caso de uso. Itens estruturais/classe ativa. Itens estruturais/componente. Itens estruturais/artefatos. Itens comportamentais

Itens estruturais/caso de uso. Itens estruturais/classe ativa. Itens estruturais/componente. Itens estruturais/artefatos. Itens comportamentais Objetivos da UML Introdução a UML cbraga@ic.uff.br Uma linguagem para: Visualizar Especificar Construir Documentar... e analisar. Desenvolvimento dirigido a modelos 2 Construções básicas Organizadas em

Leia mais

Guia de Fatores de Qualidade de OO e Java

Guia de Fatores de Qualidade de OO e Java Qualiti Software Processes Guia de Fatores de Qualidade de OO e Java Versã o 1.0 Este documento só pode ser utilizado para fins educacionais, no Centro de Informática da Universidade Federal de Pernambuco.

Leia mais

Criando uma agenda simples com NetBeans 6.5

Criando uma agenda simples com NetBeans 6.5 Criando uma agenda simples com NetBeans 6.5 (Swing application framework e Beansbinding) Já faz algum tempo que escrevi uma agenda simples usando o Eclipse com o Visual Class Editor. Demorei em torno de

Leia mais

Curso: Desenvolvendo Jogos 2d Com C# E Microsoft XNA. Mostrar como funciona a programação orientada a objetos

Curso: Desenvolvendo Jogos 2d Com C# E Microsoft XNA. Mostrar como funciona a programação orientada a objetos META Curso: Desenvolvendo Jogos 2d Com C# E Microsoft XNA Conteudista: André Luiz Brazil Aula 3: CRIANDO A CLASSE ESPAÇONAVE Mostrar como funciona a programação orientada a objetos OBJETIVOS Ao final da

Leia mais

UML Aspectos de projetos em Diagramas de classes

UML Aspectos de projetos em Diagramas de classes UML Aspectos de projetos em Diagramas de classes Após ser definido o contexto da aplicação a ser gerada. Devemos pensar em detalhar o Diagrama de Classes com informações visando uma implementação Orientada

Leia mais

e-commerce: 13 maneiras de aumentar a conversão

e-commerce: 13 maneiras de aumentar a conversão e-commerce: 13 maneiras de aumentar a conversão Diego Biscaia prefácio: Aumentar a taxa de conversão é crucial para um e-commerce. Uma boa conversão é um bom volume de vendas. Você sabe exatamente o que

Leia mais

Sistema Tutor Inteligente baseado em Agentes. Pedagógicas da Universidade Aberta do Piauí. Prof. Dr. Vinicius Ponte Machado

Sistema Tutor Inteligente baseado em Agentes. Pedagógicas da Universidade Aberta do Piauí. Prof. Dr. Vinicius Ponte Machado Sistema Tutor Inteligente baseado em Agentes na Plataforma MOODLE para Apoio às Atividades Pedagógicas da Universidade Aberta do Piauí Prof. Dr. Vinicius Ponte Machado Parnaíba, 14 de Novembro de 2012

Leia mais

02. O software ainda permite instalar a barra de ferramentas do Google como recurso extra. Faça a escolha desejada e continue a instalação.

02. O software ainda permite instalar a barra de ferramentas do Google como recurso extra. Faça a escolha desejada e continue a instalação. Contra-ataque os spywares com o Spyware Doctor! Antigamente, a única preocupação dos usuários em termos de segurança era os vírus. Hoje existem tantas palavras relacionadas a softwares maliciosos que qualquer

Leia mais

RUP. Evolução. Principais Características do RUP. Principais Características do RUP RUP

RUP. Evolução. Principais Características do RUP. Principais Características do RUP RUP RUP Rational Unified Process ( Unificado de Desenvolvimento da Rational) Conjunto de passos que tem como objetivo atingir uma meta de software na ES, processo que visa a produzir o software - de modo eficiente

Leia mais

INF 1771 Inteligência Artificial

INF 1771 Inteligência Artificial Edirlei Soares de Lima INF 1771 Inteligência Artificial Aula 02 Agentes Inteligentes Agentes Inteligentes Um agente é algo capaz de perceber seu ambiente por meio de sensores e de

Leia mais

Capítulo 8. Introdução UML

Capítulo 8. Introdução UML Capítulo 8. Introdução UML 1/42 Índice Indice 8.1 - Introdução UML 8.2 - Modelação estrutural 8.2.1 - Representação de classes e objectos 8.2.2 - Relações entre objectos 8.2-3 - Relações de associação

Leia mais

THREADS EM JAVA. George Gomes Cabral

THREADS EM JAVA. George Gomes Cabral THREADS EM JAVA George Gomes Cabral THREADS Fluxo seqüencial de controle dentro de um processo. Suporte a múltiplas linhas de execução permite que múltiplos processamentos ocorram em "paralelo" (em computadores

Leia mais

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

Algoritmos e Estruturas de Dados II. Trabalho Prático 2 Algoritmos e Estruturas de Dados II Entrega: 24/09/08 Devolução: 15/10/08 Trabalho individual Prof. Jussara Marques de Almeida Trabalho Prático 2 Você foi contratado pela XOL X Online para desenvolver

Leia mais

Omega Tecnologia Manual Omega Hosting

Omega Tecnologia Manual Omega Hosting Omega Tecnologia Manual Omega Hosting 1 2 Índice Sobre o Omega Hosting... 3 1 Primeiro Acesso... 4 2 Tela Inicial...5 2.1 Área de menu... 5 2.2 Área de navegação... 7 3 Itens do painel de Controle... 8

Leia mais

Manual de Utilização

Manual de Utilização Manual de Utilização Versão 1.0 18/01/2013 Sempre consulte por atualizações deste manual em nossa página. O Cotação Web está em constante desenvolvimento, podendo ter novas funcionalidades adicionadas

Leia mais

Programação Orientada a Objetos (DPADF 0063)

Programação Orientada a Objetos (DPADF 0063) Programação Orientada a Objetos (DPADF 0063) Aula 11 Applets Universidade Federal de Santa Maria Colégio Agrícola de Frederico Westphalen Curso Superior de Tecnologia em Sistemas para Internet Prof. Bruno

Leia mais

Metodologia e Gerenciamento do Projeto na Fábrica de Software v.2

Metodologia e Gerenciamento do Projeto na Fábrica de Software v.2 .:: Universidade Estadual de Maringá Bacharelado em Informática Eng. de Software III :. Sistema de Gerenciamento de Eventos - Equipe 09 EPSI Event Programming System Interface Metodologia e Gerenciamento

Leia mais

www. inf.br Outubro/2008 5www.habisp.inf.br TREINAMENTO HABISP VERBA DE ATENDIMENTO

www. inf.br Outubro/2008 5www.habisp.inf.br TREINAMENTO HABISP VERBA DE ATENDIMENTO 5 www. HABISP. inf.br Outubro/2008 TREINAMENTO HABISP MÓDULO VERBA DE ATENDIMENTO 1 INTRODUÇÃO Este documento, tem por finalidade, permitir aos usuários a utilização das ferramentas do HABISP que possibilitam

Leia mais

sobre rogério gonçalves gerente de projetos > digitale agência digital rogerio@digitale.com.br h7p://www.digitale.com.br h7p://leveme.

sobre rogério gonçalves gerente de projetos > digitale agência digital rogerio@digitale.com.br h7p://www.digitale.com.br h7p://leveme. sobre rogério gonçalves gerente de projetos > digitale agência digital rogerio@digitale.com.br h7p://www.digitale.com.br h7p://leveme.la/rogerio definição - é uma forma de programar e organizar um sistema

Leia mais

Demoiselle Report Guide. Demoiselle Report. Marlon Carvalho. <marlon.carvalho@gmail.com> Rodrigo Hjort. <rodrigo.hjort@gmail.com> Robson Ximenes

Demoiselle Report Guide. Demoiselle Report. Marlon Carvalho. <marlon.carvalho@gmail.com> Rodrigo Hjort. <rodrigo.hjort@gmail.com> Robson Ximenes Demoiselle Report Guide Demoiselle Report Marlon Carvalho Rodrigo Hjort Robson Ximenes Demoiselle Report... v 1. Configuração

Leia mais

TCC04040 Inteligência Artificial. Inteligência Artificial

TCC04040 Inteligência Artificial. Inteligência Artificial Inteligência Artificial Aula 2 Profª Bianca Zadrozny TCC04040 Inteligência Artificial Página web: http://www.ic.uff.br/~bianca/ia Material: Livro texto: Inteligência Artificial, Russell & Norvig, Editora

Leia mais

ARTIGO CIENTÍFICO. O artigo científico pode ser entendido como um trabalho completo em si mesmo, mas possui dimensão reduzida.

ARTIGO CIENTÍFICO. O artigo científico pode ser entendido como um trabalho completo em si mesmo, mas possui dimensão reduzida. ARTIGO CIENTÍFICO O artigo científico pode ser entendido como um trabalho completo em si mesmo, mas possui dimensão reduzida. O artigo é a apresentação sintética, em forma de relatório escrito, dos resultados

Leia mais

Java. Marcio de Carvalho Victorino www.dominandoti.eng.br

Java. Marcio de Carvalho Victorino www.dominandoti.eng.br Java Marcio de Carvalho Victorino www.dominandoti.eng.br 3. Considere as instruções Java abaixo: int cont1 = 3; int cont2 = 2; int cont3 = 1; cont1 += cont3++; cont1 -= --cont2; cont3 = cont2++; Após a

Leia mais

2 Diagrama de Caso de Uso

2 Diagrama de Caso de Uso Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Caso de Uso (Use Case) Autoria:Aristófanes Corrêa

Leia mais

WebWork 2. João Carlos Pinheiro. jcpinheiro@cefet-ma.br

WebWork 2. João Carlos Pinheiro. jcpinheiro@cefet-ma.br WebWork 2 João Carlos Pinheiro jcpinheiro@cefet-ma.br Versão: 0.5 Última Atualização: Agosto/2005 1 Agenda Introdução WebWork 2 & XWork Actions Views Interceptadores Validação Inversão de Controle (IoC)

Leia mais

PASSO A PASSO LOJA VIRTUAL. 1º Passo Acessar o site do Bom Jesus (www.bomjesus.br).

PASSO A PASSO LOJA VIRTUAL. 1º Passo Acessar o site do Bom Jesus (www.bomjesus.br). 1º Passo Acessar o site do Bom Jesus (www.bomjesus.br). Figura 1. Acessando site do Bom Jesus. 2º Passo Selecionar a opção Responsável On-line. Inserir Usuário e Senha e clicar no botão OK. Para realizar

Leia mais

Software. Gerenciamento de Manutenção

Software. Gerenciamento de Manutenção Software Gerenciamento de Manutenção Tutorial Passo a Passo Do Cadastro de Serviço à Consulta de Serviços Realizados Tutorial Recomendações AsinformaçõesutilizadasnestetutorialsãoasmesmasquevocêtemnoseuBancodeDados

Leia mais

Especialização em desenvolvimento para web com interfaces ricas. Tratamento de exceções em Java Prof. Fabrízzio A. A. M. N. Soares

Especialização em desenvolvimento para web com interfaces ricas. Tratamento de exceções em Java Prof. Fabrízzio A. A. M. N. Soares Especialização em desenvolvimento para web com interfaces ricas Tratamento de exceções em Java Prof. Fabrízzio A. A. M. N. Soares Objetivos Conceito de exceções Tratar exceções pelo uso de try, catch e

Leia mais

Programação Concorrente em java - Exercícios Práticos Abril 2004

Programação Concorrente em java - Exercícios Práticos Abril 2004 Programação Concorrente em java - Exercícios Práticos Abril 2004 1. Introdução As threads correspondem a linhas de controlo independentes no âmbito de um mesmo processo. No caso da linguagem JAVA, é precisamente

Leia mais

PLANEJAMENTO DA MANUFATURA

PLANEJAMENTO DA MANUFATURA 58 FUNDIÇÃO e SERVIÇOS NOV. 2012 PLANEJAMENTO DA MANUFATURA Otimizando o planejamento de fundidos em uma linha de montagem de motores (II) O texto dá continuidade à análise do uso da simulação na otimização

Leia mais

Programação Orientada a Objetos (DPADF 0063)

Programação Orientada a Objetos (DPADF 0063) Programação Orientada a Objetos (DPADF 0063) Aula 5 Herança Universidade Federal de Santa Maria Colégio Agrícola de Frederico Westphalen Curso Superior de Tecnologia em Sistemas para Internet Prof. Bruno

Leia mais

5 Equacionando os problemas

5 Equacionando os problemas A UA UL LA Equacionando os problemas Introdução Nossa aula começará com um quebra- cabeça de mesa de bar - para você tentar resolver agora. Observe esta figura feita com palitos de fósforo. Mova de lugar

Leia mais

Introdução à Programação. Interface, Polimorfismo e Dynamic Binding

Introdução à Programação. Interface, Polimorfismo e Dynamic Binding Introdução à Programação Interface, Polimorfismo e Dynamic Binding Interface Programador Java PLENO Possuir sólida experiência em programação Desenvolvimento na linguagem JAVA Webservice, Struts ou JSF(desejável)

Leia mais

Aula 06 Usando controles em ASP.NET

Aula 06 Usando controles em ASP.NET Tecnologia em Análise e Desenvolvimento de Sistemas Disciplina: Linguagem de Programação Plataforma.NET 2 Aula 06 Usando controles em ASP.NET Nas propriedades do FORM temos a opções EnableViewState. Esta

Leia mais

3 Classes e instanciação de objectos (em Java)

3 Classes e instanciação de objectos (em Java) 3 Classes e instanciação de objectos (em Java) Suponhamos que queremos criar uma classe que especifique a estrutura e o comportamento de objectos do tipo Contador. As instâncias da classe Contador devem

Leia mais

Engenharia de Software III

Engenharia de Software III Engenharia de Software III Casos de uso http://dl.dropbox.com/u/3025380/es3/aula6.pdf (flavio.ceci@unisul.br) 09/09/2010 O que são casos de uso? Um caso de uso procura documentar as ações necessárias,

Leia mais

Manual do Módulo de PC Online

Manual do Módulo de PC Online do Módulo de PC Online Agilis Conteúdo Introdução... 4 Acesso à Funcionalidade... 5 1. Internet Explorer 6.x... 7 2. Internet Explorer 7.x... 9 3. Netscape Navigator 7.x... 10 4. Netscape Navigator 7.2x...

Leia mais

Análise e Projeto Orientados por Objetos

Análise e Projeto Orientados por Objetos Análise e Projeto Orientados por Objetos Aula 01 Orientação a Objetos Edirlei Soares de Lima Paradigmas de Programação Um paradigma de programação consiste na filosofia adotada na

Leia mais

Prototype, um Design Patterns de Criação

Prototype, um Design Patterns de Criação Prototype, um Design Patterns de Criação José Anízio Pantoja Maia Este artigo tem como finalidade compreender o funcionamento do padrão de projeto prototype, serão abordados os participantes que compõe

Leia mais

MANUAL DE UTILIZAÇÃO Aplicativo Controle de Estoque Desktop

MANUAL DE UTILIZAÇÃO Aplicativo Controle de Estoque Desktop MANUAL DE UTILIZAÇÃO Aplicativo Controle de Estoque Desktop 1 1 INICIANDO O APLICATIVO PELA PRIMEIRA VEZ... 3 2 PÁGINA PRINCIPAL DO APLICATIVO... 4 2.1 INTERFACE INICIAL... 4 3 INICIANDO PROCESSO DE LEITURA...

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

Problemas em vender? Veja algumas dicas rápidas e práticas para aumentar suas vendas usando e-mail marketing

Problemas em vender? Veja algumas dicas rápidas e práticas para aumentar suas vendas usando e-mail marketing Problemas em vender? Veja algumas dicas rápidas e práticas para aumentar suas vendas usando e-mail marketing Conteúdo A chegada da internet e a mudança no comportamento das pessoas Novo modelo de concorrência

Leia mais

SISTEMA DE GERENCIAMENTO DE PROJETOS - REDMINE MANUAL DE USO

SISTEMA DE GERENCIAMENTO DE PROJETOS - REDMINE MANUAL DE USO SISTEMA DE GERENCIAMENTO DE PROJETOS - REDMINE MANUAL DE USO AGOSTO DE 2013 SUMÁRIO STI/UFF - Sistema de Gerenciamento de Projetos do PDI SUMÁRIO... 2 1 Introdução... 3 1.1 O que é e qual a finalidade

Leia mais

Como foi exposto anteriormente, os processos podem ter mais de um fluxo de execução. Cada fluxo de execução é chamado de thread.

Como foi exposto anteriormente, os processos podem ter mais de um fluxo de execução. Cada fluxo de execução é chamado de thread. 5 THREADS Como foi exposto anteriormente, os processos podem ter mais de um fluxo de execução. Cada fluxo de execução é chamado de thread. 5.1 VISÃO GERAL Uma definição mais abrangente para threads é considerá-lo

Leia mais

Design 3D. Formação em Web WEB DESIGN 3D 1

Design 3D. Formação em Web WEB DESIGN 3D 1 1 Formação em Web Design 3D Atualmente com o desenvolvimento para Web, a criação e montagem de sites, envolve um conhecimento mais aprofundado também na criação de 3D. Com a possibilidade de conexões mais

Leia mais

www.marketingdigitalexpress.com.br - Versão 1.0 Página 1

www.marketingdigitalexpress.com.br - Versão 1.0 Página 1 www.marketingdigitalexpress.com.br - Versão 1.0 Página 1 Remarketing é um recurso utilizado para direcionar anúncios personalizados para as pessoas que visitaram uma determinada página do seu site ou clicaram

Leia mais

ProgramaTchê Programação OO com PHP

ProgramaTchê Programação OO com PHP Roteiro 1 Objetivos: * Apresentar conceitos de orientação a objetos; * Representar classes e objetos usando UML; Este roteiro tem como objetivo abordar os conceitos básicos de orientação a objetos. 1 Introdução

Leia mais

3 Multi-Agent System for Stock Exchange Simulation

3 Multi-Agent System for Stock Exchange Simulation Multi-Agent System for Stock Exchange Simulation 29 3 Multi-Agent System for Stock Exchange Simulation A participação na competição Agent Reputation Trust (ART) Testbed [10] motivou o estudo do domínio

Leia mais

O modelo unificado de processo. O Rational Unified Process, RUP.

O modelo unificado de processo. O Rational Unified Process, RUP. Cursos: Sistemas de Informação Disciplina: Administração ADM Prof. Jarbas Avaliação: Prova B1, 5º/6º semestres Data: 27/09/2010 Nome: Gabarito RA: Assinatura: Turma: 1) Segundo as afirmações a seguir,

Leia mais

HCT Compatibilidade Manual do Usuário

HCT Compatibilidade Manual do Usuário HCT Compatibilidade Manual do Usuário Índice Introdução...3 HCT Compatibilidade...3 Librix...3 Execução do Programa...4 Seleção de Testes...4 Testes Manuais...6 Teste de Teclado...6 Teste de Vídeo...7

Leia mais

Tutorial. Começando a Criar Aplicativos SMS

Tutorial. Começando a Criar Aplicativos SMS Tutorial Começando a Criar Aplicativos SMS Para começar Neste tutorial você vai entender como criar e integrar um aplicativo SMS usando a Brazapp. Para uma melhor compreensão, passaremos por todos os passos:

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

Prof. Esp. Adriano Carvalho

Prof. Esp. Adriano Carvalho Prof. Esp. Adriano Carvalho Um arquivo contendo uma sequência de comandos em uma linguagem de programação especifica Esses comandosrespeitam regras de como serem escritos e quais são as palavras que podem

Leia mais

W Projeto. Gerenciamento. Construindo a WBS e gerando o Cronograma. Autor: Antonio Augusto Camargos, PMP 1/12

W Projeto. Gerenciamento. Construindo a WBS e gerando o Cronograma. Autor: Antonio Augusto Camargos, PMP 1/12 W Projeto BS Construindo a WBS e gerando o Cronograma. Gerenciamento Autor: Antonio Augusto Camargos, PMP 1/12 Índice Remissivo Resumo...3 1. Introdução...3 2. Conceituando a WBS (Work Breakdown Structure/Estrutura

Leia mais

Tutorial para criação de componentes JSF Facelets Por Érico GR 07/08/2007

Tutorial para criação de componentes JSF Facelets Por Érico GR 07/08/2007 Tutorial para criação de componentes JSF Facelets Por Érico GR 07/08/2007 Nível: Intermediário Este tutorial tem como objetivo criar um simples componente que renderiza uma tag label utilizando recursos

Leia mais

Estacionamento de Caminhão com Lógica Fuzzy. Daniel Ricardo dos Santos Diogo de Campos Maurício Oliveira Haensch

Estacionamento de Caminhão com Lógica Fuzzy. Daniel Ricardo dos Santos Diogo de Campos Maurício Oliveira Haensch Relatório de Implementação: Estacionamento de Caminhão com Lógica Fuzzy Daniel Ricardo dos Santos Diogo de Campos Maurício Oliveira Haensch 2 de junho de 2010 Descrição O trabalho consiste em implementar

Leia mais

Procedimentos para configurar o Motion Detection no D-ViewCam 1 Para configurar o Motion Detection no D-ViewCam, é necessário que a câmera IP esteja

Procedimentos para configurar o Motion Detection no D-ViewCam 1 Para configurar o Motion Detection no D-ViewCam, é necessário que a câmera IP esteja Procedimentos para configurar o Motion Detection no D-ViewCam 1 Para configurar o Motion Detection no D-ViewCam, é necessário que a câmera IP esteja conectada ao software (D-ViewCam). 1 2 Abra o D-ViewCam

Leia mais

Unidade Acadêmica: Faculdade de Computação FACOM Disciplina: Programação Orientada a Objetos I Professor: Fabiano Azevedo Dorça Prática 01

Unidade Acadêmica: Faculdade de Computação FACOM Disciplina: Programação Orientada a Objetos I Professor: Fabiano Azevedo Dorça Prática 01 Unidade Acadêmica: Faculdade de Computação FACOM Disciplina: Programação Orientada a Objetos I Professor: Fabiano Azevedo Dorça Prática 01 Objetivos: Modelar um sistema orientado a objetos simples a partir

Leia mais

2. Sistemas Multi-Agentes (Multi-Agent System - MAS)

2. Sistemas Multi-Agentes (Multi-Agent System - MAS) AORML uma linguagem para modelagem de uma aplicação Multiagentes: Uma Aplicação no Sistema Expertcop. Hebert de Aquino Nery, Daniel Gonçalves de Oliveira e Vasco Furtado. Universidade de Fortaleza UNIFOR

Leia mais

Manual de Acesso ao Sistema SAORI Portal do Aluno

Manual de Acesso ao Sistema SAORI Portal do Aluno Manual de Acesso ao Sistema SAORI Portal do Aluno 1) Procedimentos que deverão ser executados antes do primeiro acesso ao sistema. (Caso você já acesse o sistema com regularidade vá para o item 2). Abra

Leia mais

Programas eram lineares e com poucos módulos (Programação estruturada) Aumento da complexidade dos sistemas e difícil reusabilidade dos mesmos

Programas eram lineares e com poucos módulos (Programação estruturada) Aumento da complexidade dos sistemas e difícil reusabilidade dos mesmos OO -Objetos, classes, atributos, métodos, estado, comportamento e identidade (Slide) Prof. Bruno Gomes bruno.gomes@ifrn.edu.br Programação Orientada a Objetos Introdução Programas eram lineares e com poucos

Leia mais

2ª LISTA DE EXERCÍCIOS CLASSES E JAVA Disciplina: PC-II. public double getgeracaoatual() {return geracaoatual;}

2ª LISTA DE EXERCÍCIOS CLASSES E JAVA Disciplina: PC-II. public double getgeracaoatual() {return geracaoatual;} 2ª LISTA DE EXERCÍCIOS CLASSES E JAVA Disciplina: PC-II Exercício : Construtores são métodos especiais sem tipo de retorno (nem mesmo void) e de mesmo nome que a classe que são invocados quando da criação

Leia mais

INSTRUMENTO NORMATIVO 004 IN004

INSTRUMENTO NORMATIVO 004 IN004 1. Objetivo Definir um conjunto de critérios e procedimentos para o uso do Portal Eletrônico de Turismo da Região disponibilizado pela Mauatur na Internet. Aplica-se a todos os associados, empregados,

Leia mais

Herança. Alberto Costa Neto DComp - UFS

Herança. Alberto Costa Neto DComp - UFS Herança Alberto Costa Neto DComp - UFS 1 Motivação Vimos como se faz encapsulamento e a importância de fazê-lo... Contudo, também é possível fazer encapsulamento em algumas linguagens não OO O que mais

Leia mais

Na disciplina de Cálculo Numérico, vamos trabalhar com a linguagem C++ e o compilador que vamos usar é o Dev C++.

Na disciplina de Cálculo Numérico, vamos trabalhar com a linguagem C++ e o compilador que vamos usar é o Dev C++. Data: 14/8 Página 1 de 9 Primeiros passos Introdução Na disciplina de Cálculo Numérico, vamos trabalhar com a linguagem C++ e o compilador que vamos usar é o Dev C++. No tutorial anterior, mostramos como

Leia mais

NetBeans. Conhecendo um pouco da IDE

NetBeans. Conhecendo um pouco da IDE NetBeans Conhecendo um pouco da IDE Professor: Edwar Saliba Júnior Sumário Apresentação:...1 Criando Um Novo Projeto de Software:...1 Depurando Um Código-fonte:...4 Entendendo o Código-fonte:...7 Dica

Leia mais

public void setdata(data d) { data = d;

public void setdata(data d) { data = d; class Data... public class Compromisso private Data data; private int hora; private String descricao; /**java.lang.string*/ public Compromisso() public Compromisso(Data data, int hora, String descricao)

Leia mais