Busca de informações pessoais contidas na Internet

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

Download "Busca de informações pessoais contidas na Internet"

Transcrição

1 UNIVERSIDADE FEDERAL DE GOIÁS UFG CAMPUS CATALÃO CAC DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO DCC Bacharelado em Ciência da Computação Projeto Final de Curso Busca de informações pessoais contidas na Internet Autor: Bleno Leite Sampaio Orientador: Ms Márcio Antônio Duarte Catalão

2 Bleno Leite Sampaio Busca de informações pessoais contidas na Internet Monograa apresentada ao Curso de Bacharelado em Ciência da Computação da Universidade Federal de Goiás Campus Catalão como requisito parcial para obtenção do título de Bacharel em Ciência da Computação Área de Concentração: Inteligência Articial Orientador: Ms Márcio Antônio Duarte Catalão

3 L. Sampaio, Bleno Busca de informações pessoais contidas na Internet / Ms Márcio Antônio Duarte - Catalão Número de paginas: 46 Projeto Final de Curso (Bacharelado) Universidade Federal de Goiás, Campus Catalão, Curso de Bacharelado em Ciência da Computação, Palavras-Chave: 1. Recuperação de Informação. 2. Busca de informações pessoais. 3. Reconhecimento de padrões

4 Bleno Leite Sampaio Busca de informações pessoais contidas na Internet Monograa apresentada e aprovada em Pela Banca Examinadora constituída pelos professores. de Ms Márcio Antônio Duarte Presidente da Banca Ms Márcio de Souza Dias Dr Roberto Mendes Finzi Neto

5 Este trabalho é dedicado aos meus pais, que em momento algum desistiram do meu sonho, e aos meus amigos, peças fundamentais nessa etapa da minha vida.

6 AGRADECIMENTOS Acredito que são raros os casos onde um ser humano consegue adquirir sucesso em sua vida sem a ajuda de outros seres humanos. Embasado neste pensamento, quero deixar registrado aqui meus sinceros agradecimentos às pessoas que signicaram muito pra mim nesta etapa da minha graduação. Inicialmente, agradeço à Deus, sem o qual nada seria possível, de acordo com minha fé. Em seguida, agradeço aos pais maravilhosos que esse Deus me deu como presente. Estes sim são os merecedores de todo o prestígio, pois foi por eles, e com eles que minha luta nunca se tornou impossível. Obrigado também meu único irmão, Bruno, que sempre foi símbolo de esforço e dedicação para mim. Agradeço também, de todo coração, aos amigos da unida turma de 2007, do curso de Ciência da Computação. Aos que já formaram, aos que ainda continuam na batalha, e aos que desistiram. Que Deus possa me ajudar a retribuir todos os momentos que vocês me proporcionaram nesses mais de quatro anos. Dentre alguns amigos de faculdade, agradeço de forma especial ao Lucas (parceiro), Wilkliney, Faimison, Adam, Márcia, Janaína e Luana. Aos outros que não estão aqui citados, peço que não se sintam menores em meus pensamentos, pois jamais sairão da minha memória, e muito menos do meu coração. À todo pessoal da Mitsubishi, em especial a Roberta Elias, que acreditou em mim, me proporcionando uma grande oportunidade de crescimento prosisonal e pessoal. Obrigado à todos pela oportunidade de convivência, pelos ensinamentos prossionais e pelas experiências de vida, renovadas a cada dia. Agradeço também, aos amigos que não zeram parte dos meus momentos em sala de aula, mas que são muito especiais. Graças a Deus, são tantos, que se enumerados aqui, cinco páginas não caberiam. À vocês amigos, agradeço com orações e desejo de felicidades em suas vidas. Aos mestres, que em sala de aula nos repassaram todo o conhecimento necessário, meu muito obrigado. Cito também, meu orientador, Márcio Duarte, que muito me ajudou não só na produção deste trabalho, mas também em outras ocasiões durante esse período acadêmico. Agradeço também ao Google, pois sem ele tudo seria mais complexo. Por m, agradeço à todos que acreditaram na minha capacidade, e aos que não acreditaram agradeço também, pois essa foi uma das razões que nunca me deixaram desistir.

7 To understand is to perceive patterns. Isaiah Berlin

8 RESUMO Sampaio, L. Busca de informações pessoais contidas na Internet. Curso de Ciência da Computação, Campus Catalão, UFG, Catalão, Brasil, 2011, 46p. As técnicas utilizadas pelas ferramentas de busca contemporâneas, baseiam-se em indexar e classicar um conteúdo. No momento da busca, utilizando-se desta ferramenta, uma comparação é feita entre os dados previamente indexados e o dado que se está sendo pesquisado pelo usuário, na tentativa de retornar algum resultado que tenha qualquer tipo de relacionamento com o dado que está sendo buscado pelo mesmo. Neste trabalho, é proposta uma técnica que visa obter mais informações no processo de busca, na expectativa de poder retornar ao usuário dados que sigam um propósito especíco estabelecido pelo mesmo. Como exemplo destes dados, este trabalho aborda a busca de informações pessoais sobre um indivíduo, onde estas informações estejam inseridas em uma ou mais páginas da internet. Assim sendo, espera-se que informações simples à respeito de uma pessoa como nome completo, , telefone, número de documentos possam ser localizados de maneira automatizada por uma ferramenta, evitando buscas manuais exaustivas por vários sites na internet à procura desse tipo de informação. Esta técnica possui foco no Reconhecimento de Padrões viabilizado a partir do uso de Expressões Regulares. No conteúdo deste trabalho, são detalhadas informações sobre a técnica proposta de busca de informações pessoais na Internet e, também são detalhados conceitos relativos ao campo de Reconhecimento de Padrões, que é a base desse estudo. Palavras-Chaves: Recuperação de Informação, Busca de informações pessoais, Reconhecimento de padrões i

9 Sumário 1 Introdução 1 2 Estado da Arte 4 3 Fundamentação Teórica Reconhecimento de Padrões Aprendizagem de máquina e o escopo de RP Aprendizagem Supervisionada e Não-supervisionada Projeto de Reconhecimento de Padrões Expressões Regulares Denições sobre Expressões Regulares Implementações e Linguagens com suporte à ER Linguagens de programação com suporte à ER Extração e tratamento de dados da Internet Localizando a informação API de Busca Modelo de dados JSON Extração de conteúdo HTML Implementação Denição do Projeto de RP Processo de medida Extração de Features Construção do Classicador Entrada de Dados Busca e retorno dos dados por meio da API de busca Extraindo conteúdo das páginas Aplicação de ERs para reconhecer os padrões Criação do rankeamento Resultado ii

10 4.3 Fluxo de Operação Análise e Resultados Experimentais Testes e Resultados Tempo de execução de acordo com a entrada Desempenho de rede Qualidade dos dados retornados Análise Limitações Conclusão 31 Referências 33 Apêndices 33 A Exemplo de Dado JSON retornado pela API de Busca 34 B Código Fonte do Protótipo 36 C Conguração do Servidor PHP para uso das Bibliotecas curl e JSON 45 iii

11 Lista de Figuras 2.1 Ilustração do exemplo de busca utilizando a estrutura do sistema de arquivos Etapas de um processo de reconhecimento de padrões Exemplo de objeto em formato JSON Exemplo de objeto JSON retornado pela API de Busca Etapas do protótipo Interface de entrada de dados do protótipo Interface do resultado da execução do protótipo Fluxo de operações da técnica de busca C.1 Exemplo de linha do arquivo de conguração que ativa biblioteca JSON.. 46 C.2 Exemplo de linha do arquivo de conguração que ativa biblioteca curl.. 46 iv

12 Lista de Tabelas 3.1 Exemplos de domínios e suas classes de padrões Requisitos de padrões para construção do classicador Resultado de teste do protótipo à nível de dados de entrada Resultado de teste do protótipo à nível de rede Resultado de teste do protótipo à nível de qualidade dos dados v

13 Lista de Siglas AJAX ER HTML IA JSON kbps RP URL XML Javascript e XML Assíncronos, do inglês Asynchronous Javascript and XML Expressões Regulares Linguagem de Marcação de Hipertexto, do inglês HyperText Markup Language Inteligência Articial Notação de Objeto JavaScript, do inglês JavaScript Object Notation Kilobits por segundo Reconhecimento de Padrões Localizador-Padrão de Recursos, do inglês Uniform Resource Locator Linguagem de Marcação Estendida, do inglês Extensible Markup Language vi

14 Capítulo 1 Introdução O advento da Internet tem proporcionado um aumento signicativo na quantidade de informações disponibilizadas para seus usuários. Vários dados circulam pela rede, e grande parte desses dados poderiam ter mais importância se combinados de maneira eciente e lógica. Dessa forma, fazem-se necessários mecanismos que permitam uma busca eciente que retornem dados cada vez mais relevantes ao contexto estabelecido pelo usuário. As ferramentas de busca existentes na atualidade se baseiam - na maioria das vezes - em uma técnica que propõe indexar as páginas existentes na internet, e criar um ranking sobre o conteúdo dessas páginas. Do outro lado, como resultado, o usuário recebe uma lista de links que apontam para diversos sites da Internet, onde o conteúdo procurado pode estar disposto de maneira desordenada, espalhada, e que em algumas vezes podem até não possuir nenhum relacionamento semântico com o resultado desejado pelo usuário. Algumas destas ferramentas de busca utilizam artifícios para facilitar a vida do usuário, como ltros por imagem, vídeo, locais, dentre outros. Todavia, essas ferramentas não deixam de ser extremamente poderosas e ecazes, tendo enorme importância para a vida das pessoas, no que se diz respeito à navegação na internet. Outras ferramentas de busca comumente vistas são as de busca de arquivos, como exemplo o Google Desktop c e o Windows Search c, que buscam por arquivos dispostos dentro de um sistema de arquivos. Estas ferramentas talvez trabalham de maneira menos complexa que as ferramentas de busca da Internet, pois lidam apenas com a indexação da estrutura de diretórios do sistema de arquivos do computador, visto que o rankeamento dessas informações não seria, de certa maneira, útil para o usuário e muito menos para a ecácia da própria ferramenta [Marian e Wang, 2009]. O proposto neste trabalho é o desenvolvimento de uma técnica de busca de dados na Internet que trabalhe um pouco mais com o lado semântico da busca. Nesse contexto, o trabalho toma como base a busca de informações pessoais de um indivíduo que estejam presentes na internet. Essa técnica visa buscar dados referentes à uma pessoa, mas que traga como resultado dados relevantes à essa pessoa, e não meramente conteúdos que 1

15 combinem com as palavras que compõem o nome de uma pessoa. Esta técnica visa então identicar dados relevantes de um indivíduo através do Reconhecimento de Padrões aplicado à um texto. Este texto em questão, são conteúdos de sites que possuem algum conteúdo relacionado com os dados de um determinado indivíduo, que compõem assim o nosso banco de dados. O estudo de Reconhecimento de Padrão (RP) está diretamente ligado ao conceito de busca de regularidades. O objetivo do RP nada mais é do que a identicação de regularidades, padrões, similaridades entre dados dentro de um container de dados - à princípio isolados - de acordo com a estrutura dessas informações. Tal estudo contribui em várias áreas das ciências exatas, como a de redes neurais, lógica nebulosa, teoria das probabilidades, teoria da decisão e outras. Vale salientar que, esta técnica ainda não está em um estado de maturidade avançada, e com isso pode ser que os resultados obtidos por ela não sejam tão satisfatórios, e que novos estudos podem ser feitos em cima da mesma, visando seu melhoramento. Para uma melhor conclusão à respeito da técnica proposta neste trabalho, um protótipo foi criado com base nesta técnica. Este protótipo é melhor descrevido no decorrer deste trabalho, onde serão apresentadas informações detalhadas sobre o desenvolvimento e funcionamento do mesmo. Objetivos O material produzido neste trabalho, tem seus objetivos apresentados à seguir, enumerados de maneira simples e direta. 1. Estudo aprimorado sobre técnicas de reconhecimento de padrões, com base na identicação de dados em um container distribuído e heterogêneo (Internet) e também de técnicas de recuperação de informação, que está diretamente ligada ao Reconhecimento de Padrões. 2. Estudo sobre o conceito e aplicação de Expressões Regulares (ER) com intuito de detectar padrões, que no caso especíco deste trabalho, são padrões peculiares às informações básicas de uma pessoa, visando uma extração de dados relacionados à este contexto. 3. Elaboração de um modelo de busca que possa ser implementado por alguma ferramenta comercial ou até mesmo acadêmica, que vise a localização de padrões em um container de dados heterogêneo. 4. Viabilizar técnicas e materiais que possam servir como apoio e/ou motivação para novos estudos na área. 2

16 Estrutura do trabalho Esta produção é composta de seis capítulos, onde os dados estão dispostos nestes capítulos da seguinte maneira: O Capítulo 1 traz informações iniciais sobre o trabalho e também dene a proposta e objetivos do mesmo. O Capítulo 2 aborda sobre os trabalhos e pesquisas recentes e relevantes sobre a area de busca de informações. O Capítulo 3 trata sobre conhecimentos que são necessários para elaboração da técnica de busca proposta neste trabalho, ou seja, a fundamentação teórica que é utilizada como base de estudo neste trabalho. O Capítulo 4 visa defender a técnica proposta para busca de informações pessoais na internet, e também os aspectos funcionais sobre o protótipo desenvolvido. O Capítulo 5 deste trabalho discorre sobre os testes executados com o protótipo e a uma análise do autor sobre a técnica criada e fatores que dicultaram a elaboração desta técnica e do protótipo. O Capítulo 6 visa abordar a conclusão do autor sobre o desfecho deste trabalho, e também informa o leitor sobre trabalhos futuros referentes ao tema aqui estudado. 3

17 Capítulo 2 Estado da Arte O que se sabe sobre as ferramentas de buscas atuais é muito mais suposição do que realidade exposta. Na verdade, o funcionamento real dos motores de busca de cada uma é um segredo não revelado, pois é nestes motores que se encontra o diferencial de cada uma dessas poderosas ferramentas de busca, que disputam de maneira acirrada a preferência dos internautas. Algumas técnicas semelhantes à que fora proposta como objeto deste trabalho, trabalham com a parte do reconhecimento dos dados dentro do repositório, mas contam com o apoio da estrutura de como os dados estão organizados para a execução dessa busca. Esse é o caso do trabalho feito por [Wang et al., 2011] onde é proposta uma solução para ser aplicada em uma massa de dados que esteja distribuída sob uma estrutura, que por sua vez servirá como um ltro para a localização dos dados. Uma restrição é que a estrutura deve ser unicada, ou seja, as partições e níveis onde as informações são encontradas devem obedecer um padrão único. A modelagem proposta pelos autores é exemplicada da seguinte maneira: John deseja obter uma foto de uma festa de halloween do ano de Porém, ele não coloca nome nas imagens ao salvá-las, especicando o que cada imagem contém. Com o modelo de [Wang et al., 2011], essas fotos podem ser localizadas caso elas estejam dentro de pastas que contenham nomes como "halloween", ou "2009", e outras sub-pastas que contenham nomes que sirvam como ltro para a ferramenta de busca supor que os arquivos contidos nelas sejam o que John realmente esteja procurando. Essa estrutura é ilustrada na Figura 2.1, que simula a estrutura da partição de um disco fornecida por um sistema operacional. Esta estrutura é composta de pastas, que podem conter arquivos ou outras pastas, que são então denominadas sub-pastas. Outro tipo de estrutura onde pode ser empregado o modelo de busca de [Wang et al., 2011] é a estrutura dos arquivos XML, hoje facilmente encontrados em diversos tipo de sistemas. Para o funcionamento do modelo, os autores fazem uma indexação da estrutura a ser explorada; utilizam de algoritmos de consulta ecientes, criados especicamente para o 4

18 Figura 2.1: Ilustração do exemplo de busca utilizando a estrutura do sistema de arquivos modelo construído; e por m, um framework desenvolvido pelos autores faz um score 1 sobre a relação estrutura-dado, para avaliar o melhor resultado. Os autores do trabalho supracitado, em um trabalho mais antigo [Peery et al., 2008], já possuíam esse escopo de busca de abordar além do conteúdo, também a estrutura de onde esse conteúdo se encontrava porém, tratando os dados de maneira multi-dimensional, onde ao invés de analisar apenas o conteúdo e a estrutura dos dados, também seriam analisados os metadados fornecidos pelo usuário. Tomando como base o caso de John, do exemplo anterior, a data de 2009 seria um metadado fornecido por ele, onde a imagem procurada por John teria sido tirada em meados desse ano. Logo, essa informação do ano não seria apenas procurada na estrutura dos dados, mas também na data de criação dos arquivos, criando assim mais uma dimensão de busca. Na abordagem desse trabalho, o score desse seria calculado então de forma individual para cada dimensão. O resultado dessa pesquisa foi um framework que retorna dados sobre a busca tendo como base os conteúdos da dimensão de maior score, enquanto que no trabalho mais recente dos autores, que foi abordado nos parágrafos anteriores, o score nal de resultado era calculado com base nos scores das duas dimensões abordadas. 1 Pontuação recebida para cada resultado visando a criação de um ranking classicatório 5

19 Capítulo 3 Fundamentação Teórica A busca de informações tendo como repositório de dados os próprios sites da internet, requer o uso de recursos variados, que agrupados, podem se transformar em uma ferramenta poderosa. Extrair o conteúdo HTML de um site é uma técnica um tanto quanto simples atualmente. Quase todas as linguagens de programação voltadas para Web possuem uma ou mais formas de retornar o conteúdo HTML de uma página de acordo com a URL fornecida como parâmetro à esta função. A problemática então não é a obtenção desses dados, mas sim quais serão as URLs que terão os dados necessários para se efetuar essa extração. O escopo deste trabalho, como especicado na introdução, é a obtenção de dados pessoais de um indivíduo qualquer, onde estas informações estejam disponíveis em sites da internet. Dessa forma, o principal objetivo é ocultar do usuário esse trabalho de buscar todos esses links, e extrair as informações necessárias de cada um desses sites. Sendo assim, os links de cada um destes sites serão fornecidos por uma API (Application Programming Interface) de busca, de propriedade da empresa do Google - desenvolvida sob a tecnologia AJAX (Asynchronous Javascript and XML) - que de acordo com uma string passada como argumento, irá retornar os links de resultado, da mesma forma como se um ser humano propriamente dito, estivesse fazendo uma busca manual em uma ferramenta de busca, porém, de forma automatizada. O retorno dessa API de busca é dado em um formato que está sendo bastante usado atualmente, que é chamado e JSON (JavaScript Object Notation), um substituto ao XML Extensible Markup Language. Uma Interface de Programação de Aplicações, ou apenas API, é de certa forma um programa que possui uma interface padronizada para chamadas à procedimentos internos a partir de outros programas. A API de um programa dene de forma adequada como que um desenvolvedor deve solicitar serviços a partir desse programa [Orenstein, 2000]. A API é então um código fonte que fornece um nível de abstração entre a aplicação e o núcleo, para que a portabilidade do código seja garantida. A tecnologia AJAX (Asynchronous JavaScript and XML) é uma técnica de desenvol- 6

20 vimento para aplicações web que reúne tecnologias conhecidas da área de programação web, como JavaScript, XML, PHP, dentre outras, visando tornar as páginas da web mais dinâmicas e interativas. A principal característica do AJAX é que com ele se pode enviar requisições ao servidor web (como exemplo uma consulta ao banco de dados), sem ser necessário recarregar a página acessada naquele momento. Isso faz com que as aplicações web se tornem mais parecidas com as aplicações para desktop [Niederauer, 2007]. Utilizando de técnicas de reconhecimento de padrões, com o auxílio de expressões regulares, alguns padrões relevantes serão buscados nos dados que foram extraídos da internet. No próximo capítulo serão abordadas denições sobre reconhecimento de padrões e expressões regulares, para que o processo de obtenção dos padrões possa ser entendido de forma mais minuciosa. Atualmente, várias áreas dentro da computação estão trabalhando cada vez mais com técnicas de reconhecimento de padrões, justamente na tentativa de fazer com que o computador seja capaz de realizar tarefas ditas como simples para um ser humano, mas ainda muito complexas para uma máquina como o computador, como por exemplo localizar semelhança entre duas imagens, etc. O protótipo desenvolvido foi criado utilizando da linguagem PHP. Sua escolha foi baseada nos seguintes quesitos: Possui uma biblioteca para obtenção de conteúdo HTML de páginas Web, chamada curl que é de fácil uso e muito poderosa; É uma das linguagens de programação voltada para Web de maior uso na atualidade, com enormes recursos, e dotada de uma sintaxe intuitiva e simples; Licença gratuita e de código-fonte aberto; Possui total integração com a tecnologia AJAX e a API de busca que será utilizada no protótipo; Muito estável e consome pouco recurso de hardware do servidor, se comparada à outras linguagens para programação web. Em conjunto com a linguagem PHP, é utilizada também no protótipo a linguagem de marcação HTML, que é a base para a Web. 3.1 Reconhecimento de Padrões Nesta seção é feito um estudo sobre reconhecimento de padrões, visto que o objetivo deste trabalho se trata justamente em reconhecer padrões de dados pessoais de um in- 7

21 divíduo em uma massa de dados, e para alcançar tal objetivo, são utilizadas técnicas de Reconhecimento de Padrões (RP), como será exposto de maneira mais detalhada a seguir Aprendizagem de máquina e o escopo de RP O estudo de Aprendizagem de Máquina é uma área dentro da Inteligência Articial (IA), que visa o desenvolvimento de algoritmos e técnicas que permitam que um computador aprenda ou aperfeiçoe alguma tarefa executada pelo mesmo. Ela também pode fazer com que o computador execute alguma tarefa que até então só seja possível de ser realizada por um ser humano, como o fato de reconhecer semelhanças entre duas imagens, identicar o rosto de uma pessoa, e várias outras capacidades que são comuns ao ser humano, e que podem ser transcritas para o mundo computacional através da IA. A Aprendizagem de Máquina (do inglês, Machine Learning) é denida como qualquer mudança em um sistema computacional que vise melhorar seu desempenho na próxima repetição da mesma tarefa, ou outra tarefa da mesma população [Simon, 1983]. Alguns dos estudos compreendidos dentro da temática de aprendizagem de máquina são: mineração de dados, estatística computacional, reconhecimento de padrões e outros. Reconhecimento de padrões é então, um sub-tópico do estudo de aprendizagem de máquina, cujo objetivo é a classicação de informações que tenham como base um conhecimento a priori ou em informações extraídas desses próprios padrões. RP está ligada diretamente à busca de regularidades. O campo do reconhecimento de padrões está vinculado com o descobrimento automatizado de regularidades em dados através do uso de algoritmos de computadores e também em fazer uso dessas regularidades am de obter ações especícas para cada uma das classicações desses dados em diferentes categorias [Bishop, 2006]. De maneira mais simplicada, RP é uma coleção de problemas variados onde suas soluções envolvem técnicas importadas de outras áreas de estudo, soluções estas que são especicamente projetadas para atender cada problema em sua peculiaridade. Dentro do ramo da computação - que é o de nosso interesse - a RP pode ser encontrada atualmente em várias aplicações, como no reconhecimento de imagens, processamento de sinais de voz, classicação de documentos, identicação de assinaturas, sistemas automáticos de navegação, dentre outros, sendo esses os de maior ocorrência. Abaixo, são denidos alguns termos e conceitos importantes dentro de RP que são fundamentais no estudo desse tema e, que serão abordados no decorrer deste trabalho. Estrutura A estrutura é o modo com que a informação está organizada, de modo que as relações entre as variáveis do processo possam ser identicadas. Um exemplo de estrutura é a 8

22 Figura 2.1 que exemplica a estrutura de um sistema de arquivos. Outro exemplo de estrutura é a distribuição dos dados dentro de um arquivo XML. Classes de padrões Cada vetor de características sob os padrões a serem reconhecidos é atribuído à uma classe. Para melhor entendimento, a Tabela 3.1 ilustra exemplos de classes de padrões de acordo com o domínio de atuação do RP. Domínio Bioinformática Data Mining Classicação de Documentos Reconhecimento de Voz Classe de Padrões Tipos conhecidos de genes Compactação e separação de grupos Categorias semânticas (tipos, negócios, etc.) Palavras faladas Tabela 3.1: Exemplos de domínios e suas classes de padrões Na Tabela 3.1, têm-se a coluna Domínio que contém exemplos de áreas de estudo onde podem ser aplicadas técnicas de reconhecimento de padrões. Na coluna Classe de Padrões são denidas as classes de padrões referente à cada domínio, ou seja, um agrupamento de padrões que possuam semelhança entre si, formando uma classe de padrões Aprendizagem Supervisionada e Não-supervisionada As aplicações em que a classicação dos dados depende do vetor de características de entrada em paralelo a seu correspondente no vetor de padrões esperados é conhecido como aprendizagem supervisionada. Em outros problemas cujo a classicação dos dados consiste num conjunto de vetores de entrada que não contenham um correspondente nos valores esperados são denominados aprendizagem não-supervisionada [Bishop, 2006]. Simplicando, na classicação supervisionada o padrão de entrada é conhecido/denida pelo sistema, enquanto que na não-supervisionada o padrão é determinado por uma classe de padrões não conhecida pelo sistema Projeto de Reconhecimento de Padrões Um projeto de reconhecimento de padrões pode variar muito de acordo com o tipo do padrão a ser classicado. O processo de reconhecimento do padrão da assinatura de uma pessoa pode não ser o mesmo do reconhecimento automatizado do padrão de um DNA humano. Porém, qualquer projeto de RP possui as três etapas básicas, conforme Castro e Prado [Castro e Prado, 2002]. Essas três etapas são: 9

23 Extração das características dos objetos a serem classicados; Seleção das características com maior fator discriminante (features); Construção de uma técnica classicadora dos padrões. A primeira etapa consiste em extrair os requisitos para a construção do classicador, ou seja, denir quais são os tipos dos dados a serem identicados, qual o padrão inicial a ser procurado, que tipo de dado é esperado como resultado, e como serão classicados esses resultados. Tal etapa também é conhecida como processo de medida e é fundamental em um projeto de RP, porque para que o reconhecimento ocorra, o padrão deve ser conhecido e especicado aos órgãos sensoriais, que são os responsáveis pela percepção do padrão. É na segunda etapa onde deve-se selecionar as principais características dos padrões a serem reconhecidos, o que mais o torna distinto de outros padrões. Essas características são aqui denominadas features. Ou seja, caso o padrão a ser reconhecido seja baseado em letras, todos os números podem ser descartados. Toma-se como exemplo, um registro de um CPF. O principal fator discriminante do padrão que compõe o registro de um CPF é a quantidade de algarismos que o compõe, no caso onze algarismos numéricos, descartando então os pontos e o traço. Sendo assim, o algoritmo de busca por este padrão de CPF deve desconsiderar em primeira instância letras e caracteres especiais, e analisar somente a quantidade de números. Caso aja o casamento dessa quantidade de algarismos com o padrão, têm-se então um possível padrão reconhecido. A terceira e última etapa do projeto é de elaboração de uma técnica que irá então classicar todos os padrões reconhecidos, visando então uma tomada de decisão por qual seria o padrão com maior probabilidade de ser o nosso padrão inicialmente buscado. A Figura 3.1 ilustra as três etapas descritas acima, assim como o resultado de cada uma das etapas. Figura 3.1: Etapas de um processo de reconhecimento de padrões Após essas etapas, começam as etapas peculiares de cada projeto, onde após a obtenção da classicação dos padrões, cada projeto usa essa classicação de acordo com o que for necessário ao escopo da aplicação, o que já foge à parte especíca do processo de RP. 10

24 3.2 Expressões Regulares Denições sobre Expressões Regulares "Expressões regulares são uma chave para poderosos, exíveis, e ecientes processamentos de texto" [Friedl, 2006]. É um método ecaz usado para localizar, manipular e validar textos baseado em padrões. Uma expressão regular (regex ou regexp) é um texto ou uma string especial, que funciona como uma chave, que é utilizada para descrever ou localizar uma palavra, um caractere ou um padrão de caracteres, de acordo com a especicação do desenvolvedor ao elaborar sua expressão regular [Goyvaerts, 2006]. Essa string especial é enviada para um processador de ER que, de acordo com a especicação contida dessa string irá varrer o texto base à procura de padrões que casem com o argumento enviado por essa string, o que se congura então como uma expressão regular. Nesse contexto, o casamento (match) nada mais é do que um pedaço de texto, ou sequência de bytes ou caracteres que possuem um padrão em sua formação que corresponde ao padrão que se espera localizar [Goyvaerts, 2006]. As ERs são escritas numa linguagem formal e padronizada, que é interpretada pelo processador de ER, ou de um programa editor de texto, ou por uma linguagem de programação que trabalhe com ER. Essa padronização, desde 1986 é mantida pela norma IEEE POSIX (POSIX.2), que padroniza expressões regulares, divididas em duas classes: BRE (Basic Regular Expressions) que regula as ERs básicas e a ERE (Extend Regular Expressions) que regula as ERs modernas. Com as ERs pode-se localizar um endereço de contido em um texto, apenas utilizando a seguinte ER: [a za Z0 9_] + ([.][a za Z0 9_] + ) za Z0 9_] + ([.][a za Z0 9_] + ) [.][a za Z]{2, 4}. Na verdade, essa ER pode casar qualquer endereço de . Lembrando que, esse é um modelo de ER para casamento de endereço de , podendo haver várias outras, mais e menos ecazes e ecientes Implementações e Linguagens com suporte à ER Existem duas principais implementações de algoritmos que decidem se e como uma expressão regular casa uma cadeia de caracteres. A primeira implementação e mais antiga delas - porém mais rápida - faz uso de um princípio da teoria de linguagens formais e autômatos (LFA), que permite a todas as máquinas de estado nito não determinísticas (NFA), serem transformadas em máquinas de estado nito determinísticas (DFA). Essa implementação é chamada de DFA. Esse algoritmo realiza ou simula essa transformação e então executa a máquina determinística resultante na cadeia de caracteres, cada símbolo por vez [Cox, 2007]. 11

Desenvolvendo para WEB

Desenvolvendo para WEB Nível - Básico Desenvolvendo para WEB Por: Evandro Silva Neste nosso primeiro artigo vamos revisar alguns conceitos que envolvem a programação de aplicativos WEB. A ideia aqui é explicarmos a arquitetura

Leia mais

Programação Web Prof. Wladimir

Programação Web Prof. Wladimir Programação Web Prof. Wladimir Linguagem de Script e PHP @wre2008 1 Sumário Introdução; PHP: Introdução. Enviando dados para o servidor HTTP; PHP: Instalação; Formato básico de um programa PHP; Manipulação

Leia mais

Produto: Webscan Relatório II Programas desenvolvidos, testados e documentados

Produto: Webscan Relatório II Programas desenvolvidos, testados e documentados Produto: Webscan Relatório II Programas desenvolvidos, testados e documentados Sérgio Oliveira Campos Contrato N : 2008/000514 Sumário 1 Introdução 1 2 Bibliotecas Utilizadas 2 2.1 Reconhecimento de Texto

Leia mais

Programação Orientada a Objetos com PHP & MySQL Cookies e Sessões. Prof. MSc. Hugo Souza

Programação Orientada a Objetos com PHP & MySQL Cookies e Sessões. Prof. MSc. Hugo Souza Programação Orientada a Objetos com PHP & MySQL Cookies e Sessões Prof. MSc. Hugo Souza Se você precisar manter informações sobre seus usuários enquanto eles navegam pelo seu site, ou até quando eles saem

Leia mais

CAPÍTULO 2. Este capítulo tratará :

CAPÍTULO 2. Este capítulo tratará : 1ª PARTE CAPÍTULO 2 Este capítulo tratará : 1. O que é necessário para se criar páginas para a Web. 2. A diferença entre páginas Web, Home Page e apresentação Web 3. Navegadores 4. O que é site, Host,

Leia mais

O PROJETO DE PESQUISA. Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza

O PROJETO DE PESQUISA. Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza O PROJETO DE PESQUISA Prof. Angelo Augusto Frozza, M.Sc. http://about.me/tilfrozza ROTEIRO Escolher um tema de pesquisa Por onde começar? Ler para aprender Estrutura do Projeto de Pesquisa A Definição

Leia mais

SIGLA - Sistema Integrado de Gestão Legislativa e Administrativa

SIGLA - Sistema Integrado de Gestão Legislativa e Administrativa Universidade Federal de Ouro Preto - UFOP Instituto de Ciências Exatas e Biológicas - ICEB Departamento de Computação - DECOM SIGLA - Sistema Integrado de Gestão Legislativa e Administrativa Aluno: Paulo

Leia mais

Desenvolvendo Websites com PHP

Desenvolvendo Websites com PHP Desenvolvendo Websites com PHP Aprenda a criar Websites dinâmicos e interativos com PHP e bancos de dados Juliano Niederauer 19 Capítulo 1 O que é o PHP? O PHP é uma das linguagens mais utilizadas na Web.

Leia mais

Notas da Aula 15 - Fundamentos de Sistemas Operacionais

Notas da Aula 15 - Fundamentos de Sistemas Operacionais Notas da Aula 15 - Fundamentos de Sistemas Operacionais 1. Software de Entrada e Saída: Visão Geral Uma das tarefas do Sistema Operacional é simplificar o acesso aos dispositivos de hardware pelos processos

Leia mais

CONCEITOS INICIAIS. Agenda A diferença entre páginas Web, Home Page e apresentação Web;

CONCEITOS INICIAIS. Agenda A diferença entre páginas Web, Home Page e apresentação Web; CONCEITOS INICIAIS Agenda A diferença entre páginas Web, Home Page e apresentação Web; O que é necessário para se criar páginas para a Web; Navegadores; O que é site, Host, Provedor e Servidor Web; Protocolos.

Leia mais

Interface gráfica para compiladores gratuitos baseados em linha de comando disponíveis na internet

Interface gráfica para compiladores gratuitos baseados em linha de comando disponíveis na internet 1. Autores Interface gráfica para compiladores gratuitos baseados em linha de comando disponíveis na internet Luciano Eugênio de Castro Barbosa Flavio Barbieri Gonzaga 2. Resumo O custo de licenciamento

Leia mais

Boas Práticas de Desenvolvimento Seguro

Boas Práticas de Desenvolvimento Seguro Boas Práticas de Desenvolvimento Seguro Julho / 2.012 Histórico de Revisões Data Versão Descrição Autor 29/07/2012 1.0 Versão inicial Ricardo Kiyoshi Página 2 de 11 Conteúdo 1. SEGURANÇA DA INFORMAÇÃO

Leia mais

WebMail --------------------------------------------------------------------------------------------------------------- Manual do cliente

WebMail --------------------------------------------------------------------------------------------------------------- Manual do cliente WebMail --------------------------------------------------------------------------------------------------------------- Manual do cliente www.plugin.com.br 1 ÍNDICE Prefácio...3 Sobre Este Manual... 3

Leia mais

Introdução ao PHP. Prof. Késsia Marchi

Introdução ao PHP. Prof. Késsia Marchi Introdução ao PHP Prof. Késsia Marchi PHP Originalmente PHP era um assíncrono para Personal Home Page. De acordo com convenções para atribuições de nomes recursivas do GNU foi alterado para PHP Hypertext

Leia mais

Introdução. à Linguagem JAVA. Prof. Dr. Jesus, Edison O. Instituto de Matemática e Computação. Laboratório de Visão Computacional

Introdução. à Linguagem JAVA. Prof. Dr. Jesus, Edison O. Instituto de Matemática e Computação. Laboratório de Visão Computacional Introdução à Linguagem JAVA Prof. Dr. Jesus, Edison O. Instituto de Matemática e Computação Laboratório de Visão Computacional Vantagens do Java Independência de plataforma; Sintaxe semelhante às linguagens

Leia mais

Linguagens de. Aula 02. Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br

Linguagens de. Aula 02. Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br Linguagens de Programação III Aula 02 Profa Cristiane Koehler cristiane.koehler@canoas.ifrs.edu.br Linguagens de Programação Técnica de comunicação padronizada para enviar instruções a um computador. Assim

Leia mais

PHP AULA1. Prof. Msc. Hélio Esperidião

PHP AULA1. Prof. Msc. Hélio Esperidião PHP AULA1 Prof. Msc. Hélio Esperidião NAVEGADOR O navegador também conhecido como web browseré um programa que habilita seus usuários a interagirem com documentos hospedados em um servidor Web. SERVIDOR

Leia mais

Microsoft Internet Explorer. Browser/navegador/paginador

Microsoft Internet Explorer. Browser/navegador/paginador Microsoft Internet Explorer Browser/navegador/paginador Browser (Navegador) É um programa que habilita seus usuários a interagir com documentos HTML hospedados em um servidor web. São programas para navegar.

Leia mais

Notas da Aula 17 - Fundamentos de Sistemas Operacionais

Notas da Aula 17 - Fundamentos de Sistemas Operacionais Notas da Aula 17 - Fundamentos de Sistemas Operacionais 1. Gerenciamento de Memória: Introdução O gerenciamento de memória é provavelmente a tarefa mais complexa de um sistema operacional multiprogramado.

Leia mais

5 Mecanismo de seleção de componentes

5 Mecanismo de seleção de componentes Mecanismo de seleção de componentes 50 5 Mecanismo de seleção de componentes O Kaluana Original, apresentado em detalhes no capítulo 3 deste trabalho, é um middleware que facilita a construção de aplicações

Leia mais

Sistemas de Informação James A. O Brien Editora Saraiva Capítulo 5

Sistemas de Informação James A. O Brien Editora Saraiva Capítulo 5 Para entender bancos de dados, é útil ter em mente que os elementos de dados que os compõem são divididos em níveis hierárquicos. Esses elementos de dados lógicos constituem os conceitos de dados básicos

Leia mais

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP) Hardware (Nível 0) Organização O AS/400 isola os usuários das características do hardware através de uma arquitetura de camadas. Vários modelos da família AS/400 de computadores de médio porte estão disponíveis,

Leia mais

1 http://www.google.com

1 http://www.google.com 1 Introdução A computação em grade se caracteriza pelo uso de recursos computacionais distribuídos em várias redes. Os diversos nós contribuem com capacidade de processamento, armazenamento de dados ou

Leia mais

MAPEAMENTO OBJETO RELACIONAL: UM ESTUDO DE CASO

MAPEAMENTO OBJETO RELACIONAL: UM ESTUDO DE CASO MAPEAMENTO OBJETO RELACIONAL: UM ESTUDO DE CASO UTILIZANDO O HIBERNATE Rafael Laurino GUERRA, Dra. Luciana Aparecida Martinez ZAINA Faculdade de Tecnologia de Indaiatuba FATEC-ID 1 RESUMO Este artigo apresenta

Leia mais

Desenvolvimento de Aplicações Web

Desenvolvimento de Aplicações Web Desenvolvimento de Aplicações Web André Tavares da Silva andre.silva@udesc.br Método de Avaliação Serão realizadas duas provas teóricas e dois trabalhos práticos. MF = 0,1*E + 0,2*P 1 + 0,2*T 1 + 0,2*P

Leia mais

Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Felippe Scheidt IFPR Campus Foz do Iguaçu 2014/2

Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Felippe Scheidt IFPR Campus Foz do Iguaçu 2014/2 Curso Superior de Tecnologia em Análise e Desenvolvimento de Sistemas Prof. Felippe Scheidt IFPR Campus Foz do Iguaçu 2014/2 Objetivo. O objetivo da disciplina é conhecer os princípios da programação de

Leia mais

Manual da Turma Virtual: MATERIAIS. Para acessar a turma virtual com o perfil Docente, siga o caminho indicado abaixo:

Manual da Turma Virtual: MATERIAIS. Para acessar a turma virtual com o perfil Docente, siga o caminho indicado abaixo: Manual da Turma Virtual: MATERIAIS Para acessar a turma virtual com o perfil Docente, siga o caminho indicado abaixo: MENU TURMA VIRTUAL MENU MATERIAIS CONTEÚDO/PÁGINA WEB Esta operação possibilita que

Leia mais

11/3/2009. Software. Sistemas de Informação. Software. Software. A Construção de um programa de computador. A Construção de um programa de computador

11/3/2009. Software. Sistemas de Informação. Software. Software. A Construção de um programa de computador. A Construção de um programa de computador Sistemas de Informação Prof. Anderson D. Moura Um programa de computador é composto por uma seqüência de instruções, que é interpretada e executada por um processador ou por uma máquina virtual. Em um

Leia mais

UNIVERSIDADE FEDERAL DE SANTA CATARINA GRADUAÇÃO EM SISTEMAS DE INFORMAÇÃO DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA DATA MINING EM VÍDEOS

UNIVERSIDADE FEDERAL DE SANTA CATARINA GRADUAÇÃO EM SISTEMAS DE INFORMAÇÃO DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA DATA MINING EM VÍDEOS UNIVERSIDADE FEDERAL DE SANTA CATARINA GRADUAÇÃO EM SISTEMAS DE INFORMAÇÃO DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA DATA MINING EM VÍDEOS VINICIUS DA SILVEIRA SEGALIN FLORIANÓPOLIS OUTUBRO/2013 Sumário

Leia mais

PARANÁ GOVERNO DO ESTADO

PARANÁ GOVERNO DO ESTADO PARANÁ GOVERNO DO ESTADO COLÉGIO ESTADUAL DE PARANAVAÍ ENSINO FUNDAMENTAL, MÉDIO, NORMAL E PROFISSIONAL CURSO TÉCNICO EM INFORMÁTICA DISCIPLINA: INTERNET E PROGRAMAÇÃO WEB 1º MÓDULO SUBSEQUENTE MECANISMOS

Leia mais

Sumário 1. SOBRE O NFGoiana DESKTOP... 3 1.1. Apresentação... 3 1.2. Informações do sistema... 3 1.3. Acessando o NFGoiana Desktop... 3 1.4.

Sumário 1. SOBRE O NFGoiana DESKTOP... 3 1.1. Apresentação... 3 1.2. Informações do sistema... 3 1.3. Acessando o NFGoiana Desktop... 3 1.4. 1 Sumário 1. SOBRE O NFGoiana DESKTOP... 3 1.1. Apresentação... 3 1.2. Informações do sistema... 3 1.3. Acessando o NFGoiana Desktop... 3 1.4. Interface do sistema... 4 1.4.1. Janela Principal... 4 1.5.

Leia mais

Informática I. Aula 6. http://www.ic.uff.br/~bianca/informatica1/ Aula 6-12/09/2007 1

Informática I. Aula 6. http://www.ic.uff.br/~bianca/informatica1/ Aula 6-12/09/2007 1 Informática I Aula 6 http://www.ic.uff.br/~bianca/informatica1/ Aula 6-12/09/2007 1 Ementa Noções Básicas de Computação (Hardware, Software e Internet) HTML e Páginas Web Internet e a Web Javascript e

Leia mais

Engenharia de Software Aplicações de Internet

Engenharia de Software Aplicações de Internet Engenharia de Software Aplicações de Internet Eduardo Santos eduardo.edusantos@gmail.com eduardo.santos@planejamento.gov.br www.softwarepublico.gov.br Histórico Por que existe a Internet? Por que existe

Leia mais

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos

Introdução. Conceitos Básicos. Conceitos Básicos. Conceitos Básicos Conceitos Básicos Introdução Banco de Dados I 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 Dados

Leia mais

CAPÍTULO 3 - TIPOS DE DADOS E IDENTIFICADORES

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

Leia mais

Sistemas Operacionais Aula 03: Estruturas dos SOs. Ezequiel R. Zorzal ezorzal@unifesp.br www.ezequielzorzal.com

Sistemas Operacionais Aula 03: Estruturas dos SOs. Ezequiel R. Zorzal ezorzal@unifesp.br www.ezequielzorzal.com Sistemas Operacionais Aula 03: Estruturas dos SOs Ezequiel R. Zorzal ezorzal@unifesp.br www.ezequielzorzal.com OBJETIVOS Descrever os serviços que um sistema operacional oferece aos usuários e outros sistemas

Leia mais

MAPEAMENTO E LOCALIZAÇÃO DE REGIÕES DE INTERESSE UTILIZANDO REALIDADE AUMENTADA EM DISPOSITIVOS MÓVEIS COM PLATAFORMA ANDROID

MAPEAMENTO E LOCALIZAÇÃO DE REGIÕES DE INTERESSE UTILIZANDO REALIDADE AUMENTADA EM DISPOSITIVOS MÓVEIS COM PLATAFORMA ANDROID MAPEAMENTO E LOCALIZAÇÃO DE REGIÕES DE INTERESSE UTILIZANDO REALIDADE AUMENTADA EM DISPOSITIVOS MÓVEIS COM PLATAFORMA ANDROID Alessandro Teixeira de Andrade¹; Geazy Menezes² UFGD/FACET Caixa Postal 533,

Leia mais

UFG - Instituto de Informática

UFG - Instituto de Informática UFG - Instituto de Informática Especialização em Desenvolvimento de Aplicações Web com Interfaces Ricas EJB 3.0 Prof.: Fabrízzio A A M N Soares professor.fabrizzio@gmail.com Aula 13 Web Services Web Services

Leia mais

Web Design Aula 11: Site na Web

Web Design Aula 11: Site na Web Web Design Aula 11: Site na Web Professora: Priscilla Suene priscilla.silverio@ifrn.edu.br Motivação Criar o site em HTML é interessante Do que adianta se até agora só eu posso vê-lo? Hora de publicar

Leia mais

Como funciona o site treinamento técnico ON-LINE?

Como funciona o site treinamento técnico ON-LINE? Manual do Usuário INSTRUÇÕES PARA UTILIZAÇÃO DO TREINAMENTO ON LINE A ATIC Tecnologia do Brasil Ltda. com o objetivo de atender aos seus diversos clientes, oferece treinamentos EAD - Educação a Distância

Leia mais

Para construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd.

Para construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd. Apresentação Este curso tem como objetivo, oferecer uma noção geral sobre a construção de sistemas de banco de dados. Para isto, é necessário estudar modelos para a construção de projetos lógicos de bancos

Leia mais

INTERNET -- NAVEGAÇÃO

INTERNET -- NAVEGAÇÃO Página 1 Acessando endereços simultaneamente Parte 2 Um recurso interessante e extremamente útil é o de abrir várias janelas ao mesmo tempo. Em cada janela você poderá acessar um endereço diferente na

Leia mais

Curso de Aprendizado Industrial Desenvolvedor WEB

Curso de Aprendizado Industrial Desenvolvedor WEB Curso de Aprendizado Industrial Desenvolvedor WEB Disciplina: Programação Orientada a Objetos II Professor: Cheli dos S. Mendes da Costa Modelo Cliente- Servidor Modelo de Aplicação Cliente-servidor Os

Leia mais

Requisitos de Software. Requisitos de Software. Requisitos de Software. Requisitos de Software. Requisitos de Software. Requisitos de Software

Requisitos de Software. Requisitos de Software. Requisitos de Software. Requisitos de Software. Requisitos de Software. Requisitos de Software INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE Curso Técnico em Informática ENGENHARIA DE SOFTWARE Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br Clayton Maciel Costa

Leia mais

Sistemas Operacionais

Sistemas Operacionais UNIVERSIDADE BANDEIRANTE DE SÃO PAULO INSTITUTO POLITÉCNICO CURSO DE SISTEMAS DE INFORMAÇÃO Sistemas Operacionais Notas de Aulas: Tópicos 7 e 8 Estrutura do Sistema Operacional São Paulo 2009 1 Sumário

Leia mais

2 Conceitos relativos a Web services e sua composição

2 Conceitos relativos a Web services e sua composição 15 2 Conceitos relativos a Web services e sua composição A necessidade de flexibilidade na arquitetura das aplicações levou ao modelo orientado a objetos, onde os processos de negócios podem ser representados

Leia mais

Vamos iniciar a nossa exploração do HTTP baixando um arquivo em HTML simples - bastante pequeno, que não contém objetos incluídos.

Vamos iniciar a nossa exploração do HTTP baixando um arquivo em HTML simples - bastante pequeno, que não contém objetos incluídos. Wireshark Lab: HTTP Versão 1.1 2005 KUROSE, J.F & ROSS, K. W. Todos os direitos reservados 2008 BATISTA, O. M. N. Tradução e adaptação para Wireshark. Tendo molhado os nossos pés com o Wireshark no laboratório

Leia mais

1.1. Aplicações de TVD dinâmicas

1.1. Aplicações de TVD dinâmicas 1 Introdução Uma aplicação de TV Digital (TVD) comumente é composta por um vídeo principal associado a outros objetos (aplicações, imagens, vídeos, textos etc.), que são transmitidos em conjunto possibilitando

Leia mais

Anexo III Funcionamento detalhado do Sistema Montador de Autoria

Anexo III Funcionamento detalhado do Sistema Montador de Autoria 1 Sumário Anexo III Funcionamento detalhado do Sistema Montador de Autoria Anexo III Funcionamento detalhado do Sistema Montador de Autoria... 1 1 Sumário... 1 2 Lista de Figuras... 5 3 A Janela principal...

Leia mais

O melhor do PHP. Por que PHP? CAPÍTULO 1. Uma Pequena História do PHP

O melhor do PHP. Por que PHP? CAPÍTULO 1. Uma Pequena História do PHP CAPÍTULO 1 O melhor do PHP Este livro levou bastante tempo para ser feito. Venho usando agora o PHP por muitos anos e o meu amor por ele aumenta cada vez mais por sua abordagem simplista, sua flexibilidade

Leia mais

Manual Ambiente Virtual de Aprendizagem Moodle-ESPMG 2.0

Manual Ambiente Virtual de Aprendizagem Moodle-ESPMG 2.0 Manual Ambiente Virtual de Aprendizagem Moodle-ESPMG 2.0 Adriano Lima Belo Horizonte 2011 SUMÁRIO Apresentação... 3 Acesso ao Ambiente Virtual de Aprendizagem AVA ESP-MG... 3 Programação do curso no AVA-ESPMG

Leia mais

Etc & Tal. Volume 2 - Número 1 - Abril 2009 SBC HORIZONTES 44

Etc & Tal. Volume 2 - Número 1 - Abril 2009 SBC HORIZONTES 44 Armazenando Dados em Aplicações Java Parte 2 de 3: Apresentando as opções Hua Lin Chang Costa, hualin@cos.ufrj.br, COPPE/UFRJ. Leonardo Gresta Paulino Murta, leomurta@ic.uff.br, IC/UFF. Vanessa Braganholo,

Leia mais

Abaixo você conhecerá algumas técnicas de SEO utilizadas para obter grande sucesso com as postagens no WordPress.

Abaixo você conhecerá algumas técnicas de SEO utilizadas para obter grande sucesso com as postagens no WordPress. 1 TUTORIAL PARA DEIXAR POSTAGENS E PÁGINAS BEM POSICIONADAS Abaixo você conhecerá algumas técnicas de SEO utilizadas para obter grande sucesso com as postagens no WordPress. Conhecimento básico de Html

Leia mais

INTERNET CONCEITOS. Internet é a "grande rede mundial de computadores"

INTERNET CONCEITOS. Internet é a grande rede mundial de computadores INTERNET CONCEITOS O que é Internet Estamos acostumados a ouvir que Internet é a "grande rede mundial de computadores" Entretanto, essa definição não é muito simplista. Na realidade, Ela é uma coleção

Leia mais

Manual de Utilização do Zimbra

Manual de Utilização do Zimbra Manual de Utilização do Zimbra Compatível com os principais navegadores web (Firefox, Chrome e Internet Explorer) o Zimbra Webmail é uma suíte completa de ferramentas para gerir e-mails, calendário, tarefas

Leia mais

O bloco administração

O bloco administração O bloco administração Neste capítulo são discutidas as ferramentas do bloco Administração, na página de abertura de um curso. Veja Figura 7.1. Figura 1: O bloco Administração Ativar edição Esta ferramenta

Leia mais

Novell Vibe 4.0. Março de 2015. Inicialização Rápida. Iniciando o Novell Vibe. Conhecendo a interface do Novell Vibe e seus recursos

Novell Vibe 4.0. Março de 2015. Inicialização Rápida. Iniciando o Novell Vibe. Conhecendo a interface do Novell Vibe e seus recursos Novell Vibe 4.0 Março de 2015 Inicialização Rápida Quando você começa a usar o Novell Vibe, a primeira coisa a se fazer é configurar sua área de trabalho pessoal e criar uma área de trabalho de equipe.

Leia mais

INFORMÁTICA FUNDAMENTOS DE INTERNET. Prof. Marcondes Ribeiro Lima

INFORMÁTICA FUNDAMENTOS DE INTERNET. Prof. Marcondes Ribeiro Lima INFORMÁTICA FUNDAMENTOS DE INTERNET Prof. Marcondes Ribeiro Lima Fundamentos de Internet O que é internet? Nome dado a rede mundial de computadores, na verdade a reunião de milhares de redes conectadas

Leia mais

Manual do Usuário 2013

Manual do Usuário 2013 Manual do Usuário 2013 MANUAL DO USUÁRIO 2013 Introdução Um ambiente virtual de aprendizagem é um programa para computador que permite que a sala de aula migre para a Internet. Simula muitos dos recursos

Leia mais

PHP() é uma linguagem de integração de servidor que permite a criação de paginas dinâmicas. Como todas

PHP() é uma linguagem de integração de servidor que permite a criação de paginas dinâmicas. Como todas O que é PHP? Acrônimo de PHP: Hipertext Language PostProcessor Inicialmente escrita para o desenvolvimento de aplicações Web Facilidade para iniciantes e recursos poderosos para programadores profissionais

Leia mais

Esta é a tela inicia, aqui podemos visualizer os relatórios de envio, gráficos de inscrições,cancelamentos, etc.

Esta é a tela inicia, aqui podemos visualizer os relatórios de envio, gráficos de inscrições,cancelamentos, etc. CRIANDO UMA CAMPANHA Esta é a tela inicia, aqui podemos visualizer os relatórios de envio, gráficos de inscrições,cancelamentos, etc. O primeiro passo é adicionar uma lista, as lista basicamente são grupos

Leia mais

Novell Vibe 3.4. Novell. 1º de julho de 2013. Inicialização Rápida. Iniciando o Novell Vibe. Conhecendo a interface do Novell Vibe e seus recursos

Novell Vibe 3.4. Novell. 1º de julho de 2013. Inicialização Rápida. Iniciando o Novell Vibe. Conhecendo a interface do Novell Vibe e seus recursos Novell Vibe 3.4 1º de julho de 2013 Novell Inicialização Rápida Quando você começa a usar o Novell Vibe, a primeira coisa a se fazer é configurar sua área de trabalho pessoal e criar uma área de trabalho

Leia mais

INTRODUÇÃO AO AMBIENTE MOODLE DA UFPA. Guia rápido

INTRODUÇÃO AO AMBIENTE MOODLE DA UFPA. Guia rápido INTRODUÇÃO AO AMBIENTE MOODLE DA UFPA Guia rápido A PLATAFORMA MOODLE Moodle (Modular Object Oriented Distance LEarning) é um Sistema para Gerenciamento de Cursos (SGC). Trata-se de um programa para computador

Leia mais

CAPITULO 4 A ARQUITETURA LÓGICA PARA O AMBIENTE

CAPITULO 4 A ARQUITETURA LÓGICA PARA O AMBIENTE CAPITULO 4 A ARQUITETURA LÓGICA PARA O AMBIENTE A proposta para o ambiente apresentada neste trabalho é baseada no conjunto de requisitos levantados no capítulo anterior. Este levantamento, sugere uma

Leia mais

World Wide Web e Aplicações

World Wide Web e Aplicações World Wide Web e Aplicações Módulo H O que é a WWW Permite a criação, manipulação e recuperação de informações Padrão de fato para navegação, publicação de informações e execução de transações na Internet

Leia mais

UNIVERSIDADE FEDERAL DA FRONTEIRA SUL AMBIENTE VIRTUAL INSTITUCIONAL MOODLE/UFFS

UNIVERSIDADE FEDERAL DA FRONTEIRA SUL AMBIENTE VIRTUAL INSTITUCIONAL MOODLE/UFFS UNIVERSIDADE FEDERAL DA FRONTEIRA SUL AMBIENTE VIRTUAL INSTITUCIONAL MOODLE/UFFS Guia Inicial de Acesso e Utilização Para Docentes Versão 1.0b Outubro/2010 Acesso e utilização do Ambiente Virtual de Ensino

Leia mais

Programando em PHP. Conceitos Básicos

Programando em PHP. Conceitos Básicos Programando em PHP www.guilhermepontes.eti.br lgapontes@gmail.com Conceitos Básicos Todo o escopo deste estudo estará voltado para a criação de sites com o uso dos diversos recursos de programação web

Leia mais

Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Sistema Gerenciador de Banco de Dados

Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Sistema Gerenciador de Banco de Dados Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Um Sistema Gerenciador de Banco de Dados (SGBD) é constituído por um conjunto de dados associados a um conjunto de programas para acesso a esses

Leia mais

1 Como seu Cérebro Funciona?

1 Como seu Cérebro Funciona? 1 Como seu Cérebro Funciona? UNIVERSIDADE FEDERAL DO ABC (UFABC) O cérebro humano é capaz de processar as informações recebidas pelos cinco sentidos, analisá-las com base em uma vida inteira de experiências,

Leia mais

Aula 4 Pseudocódigo Tipos de Dados, Expressões e Variáveis

Aula 4 Pseudocódigo Tipos de Dados, Expressões e Variáveis 1. TIPOS DE DADOS Todo o trabalho realizado por um computador é baseado na manipulação das informações contidas em sua memória. Estas informações podem ser classificadas em dois tipos: As instruções, que

Leia mais

Características do PHP. Começando a programar

Características do PHP. Começando a programar PHP Introdução Olá pessoal. Desculpe o atraso na publicação da aula. Pude perceber pelas respostas (poucas) ao fórum que a realização da atividade do módulo I foi relativamente tranquila. Assistam ao vídeo

Leia mais

3 Dicas MATADORAS Para Escrever Emails Que VENDEM Imóveis

3 Dicas MATADORAS Para Escrever Emails Que VENDEM Imóveis 3 Dicas MATADORAS Para Escrever Emails Que VENDEM Imóveis O que é um e- mail bem sucedido? É aquele e- mail que você recebe o contato, envia o e- mail para o cliente e ele te responde. Nós não estamos

Leia mais

Capítulo 2 Introdução à ferramenta Flash

Capítulo 2 Introdução à ferramenta Flash Capítulo 2 Introdução à ferramenta Flash Índice 1. O uso da ferramenta Flash no projeto RIVED.... 1 2. História do Flash... 4 1. O uso da ferramenta Flash no projeto RIVED. É importante, antes de iniciarmos

Leia mais

Software e Serviços MANUAL DE HOMOLOGAÇÃO WEB SERVICE X SISTEMA DE AUTOMAÇÃO COMERCIAL

Software e Serviços MANUAL DE HOMOLOGAÇÃO WEB SERVICE X SISTEMA DE AUTOMAÇÃO COMERCIAL MANUAL DE HOMOLOGAÇÃO WEB SERVICE X SISTEMA DE AUTOMAÇÃO COMERCIAL CONSIDERAÇÕES INICIAIS Este manual tem como objetivo propiciar a integração do SISTEMA DE AUTOMAÇÃO COMERCIAL junto as ADMINISTRADORAS

Leia mais

Conceitos de Ajax Exemplos de uso do Ajax no braço, muitos exemplos, muito código (HTML, CSS, JavaScript, PHP, XML, JSON)

Conceitos de Ajax Exemplos de uso do Ajax no braço, muitos exemplos, muito código (HTML, CSS, JavaScript, PHP, XML, JSON) Márcio Koch 1 Currículo Formado na FURB em Ciência da Computação Pós graduado em Tecnologias para o desenvolvimento de aplicações web Mestrando em Computação Gráfica na UDESC Arquiteto de software na Senior

Leia mais

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

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

Leia mais

Introdução à Tecnologia Web. Tipos de Sites. Profª MSc. Elizabete Munzlinger www.elizabete.com.br

Introdução à Tecnologia Web. Tipos de Sites. Profª MSc. Elizabete Munzlinger www.elizabete.com.br IntroduçãoàTecnologiaWeb TiposdeSites ProfªMSc.ElizabeteMunzlinger www.elizabete.com.br ProfªMSc.ElizabeteMunzlinger www.elizabete.com.br TiposdeSites Índice 1 Sites... 2 2 Tipos de Sites... 2 a) Site

Leia mais

SEGUNDA EDIÇÃO. Expressões Regulares. Guia de Bolso. Guia de Bolso: Expressões Regulares

SEGUNDA EDIÇÃO. Expressões Regulares. Guia de Bolso. Guia de Bolso: Expressões Regulares SEGUNDA EDIÇÃO Expressões Regulares Guia de Bolso Guia de Bolso: Expressões Regulares I II Guia de Bolso: Expressões Regulares Conteúdo Sobre Este Livro 1 Introdução a Expressões Regulares e Casamento

Leia mais

Aplicação Prática de Lua para Web

Aplicação Prática de Lua para Web Aplicação Prática de Lua para Web Aluno: Diego Malone Orientador: Sérgio Lifschitz Introdução A linguagem Lua vem sendo desenvolvida desde 1993 por pesquisadores do Departamento de Informática da PUC-Rio

Leia mais

dados abertos cartilha para desenvolvedores

dados abertos cartilha para desenvolvedores dados abertos cartilha para desenvolvedores Esta publicação é um encarte integrante do Manual dos dados abertos: desenvolvedores, resultante do acordo de cooperação técnico-científica entre o Laboratório

Leia mais

www.f2b.com.br 18/04/2006 Micropagamento F2b Web Services Web rev 00

www.f2b.com.br 18/04/2006 Micropagamento F2b Web Services Web rev 00 www.f2b.com.br 18/04/2006 Micropagamento F2b Web Services Web rev 00 Controle de Revisões Micropagamento F2b Web Services/Web 18/04/2006 Revisão Data Descrição 00 17/04/2006 Emissão inicial. www.f2b.com.br

Leia mais

Capítulo 7 O Gerenciador de Arquivos

Capítulo 7 O Gerenciador de Arquivos Capítulo 7 O Gerenciador de Arquivos Neste capítulo nós iremos examinar as características da interface do gerenciador de arquivos Konqueror. Através dele realizaremos as principais operações com arquivos

Leia mais

Minicurso introdutório de desenvolvimento para dispositivos Android. Cristiano Costa

Minicurso introdutório de desenvolvimento para dispositivos Android. Cristiano Costa Minicurso introdutório de desenvolvimento para dispositivos Android Cristiano Costa Desenvolvimento da interface estática Sobre mim Graduando em Engenharia Eletrônica - UNIFEI Trabalhou em desenvolvimento

Leia mais

Pesquisa e organização de informação

Pesquisa e organização de informação Pesquisa e organização de informação Capítulo 3 A capacidade e a variedade de dispositivos de armazenamento que qualquer computador atual possui, tornam a pesquisa de informação um desafio cada vez maior

Leia mais

Roteiro 2 Conceitos Gerais

Roteiro 2 Conceitos Gerais Roteiro 2 Conceitos Gerais Objetivos: UC Projeto de Banco de Dados Explorar conceitos gerais de bancos de dados; o Arquitetura de bancos de dados: esquemas, categorias de modelos de dados, linguagens e

Leia mais

FERRAMENTAS DE COLABORAÇÃO CORPORATIVA

FERRAMENTAS DE COLABORAÇÃO CORPORATIVA FERRAMENTAS DE COLABORAÇÃO CORPORATIVA Manual de Utilização Google Grupos Sumário (Clique sobre a opção desejada para ir direto à página correspondente) Utilização do Google Grupos Introdução... 3 Página

Leia mais

Curso Introdução à Educação Digital - Carga Horária: 40 horas (30 presenciais + 10 EaD)

Curso Introdução à Educação Digital - Carga Horária: 40 horas (30 presenciais + 10 EaD) ******* O que é Internet? Apesar de muitas vezes ser definida como a "grande rede mundial de computadores, na verdade compreende o conjunto de diversas redes de computadores que se comunicam e que permitem

Leia mais

Prof. Ravel Silva (https://www.facebook.com/professorravelsilva) SIMULADO 02 ESCRIVÃO PF

Prof. Ravel Silva (https://www.facebook.com/professorravelsilva) SIMULADO 02 ESCRIVÃO PF Orientações aos alunos: 1. Este simulado visa auxiliar os alunos que estão se preparando para o cargo de Policial Rodoviário Federal. 2. O Simulado contém 10 questões estilo CESPE (Certo e Errado) sobre

Leia mais

2 Geração Dinâmica de Conteúdo e Templates de Composição

2 Geração Dinâmica de Conteúdo e Templates de Composição 2 Geração Dinâmica de Conteúdo e Templates de Composição Alguns dos aspectos mais importantes na arquitetura proposta nesta dissertação são: a geração dinâmica de conteúdo e a utilização de templates de

Leia mais

GLOSSÁRIO. ActiveX Controls. É essencialmente uma interface usada para entrada e saída de dados para uma aplicação.

GLOSSÁRIO. ActiveX Controls. É essencialmente uma interface usada para entrada e saída de dados para uma aplicação. GLOSSÁRIO Este glossário contém termos e siglas utilizados para Internet. Este material foi compilado de trabalhos publicados por Plewe (1998), Enzer (2000) e outros manuais e referências localizadas na

Leia mais

2. O AMBIENTE DE PROGRAMAÇÃO EM C

2. O AMBIENTE DE PROGRAMAÇÃO EM C 2. O AMBIENTE DE PROGRAMAÇÃO EM C Este capítulo trata de colocar a linguagem C para funcionar em um ambiente de programação, concentrando-se no compilador GNU Compiler Collection (gcc). Mas qualquer outro

Leia mais

Complemento II Noções Introdutória em Redes Neurais

Complemento II Noções Introdutória em Redes Neurais Complemento II Noções Introdutória em Redes Neurais Esse documento é parte integrante do material fornecido pela WEB para a 2ª edição do livro Data Mining: Conceitos, técnicas, algoritmos, orientações

Leia mais

EMENTAS DO CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS

EMENTAS DO CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS EMENTAS DO CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS INTRODUÇÃO À COMPUTAÇÃO 60 h 1º Evolução histórica dos computadores. Aspectos de hardware: conceitos básicos de CPU, memórias,

Leia mais

BANCO DE DADOS CONTEÚDO INFORMÁTICA. Prof.: MARCIO HOLLWEG mhollweg@terra.com.br BANCO DE DADOS SGBD TABELA CONCEITOS BÁSICOS

BANCO DE DADOS CONTEÚDO INFORMÁTICA. Prof.: MARCIO HOLLWEG mhollweg@terra.com.br BANCO DE DADOS SGBD TABELA CONCEITOS BÁSICOS CONTEÚDO HARDWARE - 2 AULAS SISTEMA OPERACIONAL - 2 AULAS INFORMÁTICA Prof.: MARCIO HOLLWEG mhollweg@terra.com.br APLICATIVOS OFFICE - 3 AULAS INTERNET - 1 AULA REDE - 2 AULA SEGURANÇA - 1 AULA BANCO DE

Leia mais

Temas para a Primeira Avalição

Temas para a Primeira Avalição Temas 1. Envio de E-Mail Anônimo Quando um usuário deseja enviar uma mensagem de correio eletrônico pela Internet, ele utiliza um programa cliente Simple Mail Transfer Protocol (SMTP), tal como o Thunderbird,

Leia mais

Ambiente Virtual de Aprendizagem Moodle

Ambiente Virtual de Aprendizagem Moodle Ambiente Virtual de Aprendizagem Moodle No INSEP, o ambiente virtual de aprendizagem oferecido ao acadêmico é o MOODLE. A utilização dessa ferramenta é fundamental para o sucesso das atividades em EAD,

Leia mais

UM ESTUDO DE CASO SOBRE A INDEXAÇÃO AUTOMÁTICA DE DOCUMENTOS OFICIAIS DA UENP BASEADO EM LAYOUTS

UM ESTUDO DE CASO SOBRE A INDEXAÇÃO AUTOMÁTICA DE DOCUMENTOS OFICIAIS DA UENP BASEADO EM LAYOUTS UM ESTUDO DE CASO SOBRE A INDEXAÇÃO AUTOMÁTICA DE DOCUMENTOS OFICIAIS DA UENP BASEADO EM LAYOUTS Alexia Guilherme Bianque (PIBIC/CNPq), Ederson Marco Sgarbi (Orientador), a.g.bianque10@gmail.com.br Universidade

Leia mais