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

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 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

Desenvolvimento Web. Saymon Yury C. Silva Analista de Sistemas. http://www.saymonyury.com.br

Desenvolvimento Web. Saymon Yury C. Silva Analista de Sistemas. http://www.saymonyury.com.br Desenvolvimento Web Saymon Yury C. Silva Analista de Sistemas http://www.saymonyury.com.br Vantagens Informação em qualquer hora e lugar; Rápidos resultados; Portabilidade absoluta; Manutenção facilitada

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

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

Guia de Consulta Rápida. PHP com XML. Juliano Niederauer. Terceira Edição. Novatec

Guia de Consulta Rápida. PHP com XML. Juliano Niederauer. Terceira Edição. Novatec Guia de Consulta Rápida PHP com XML Juliano Niederauer Terceira Edição Novatec Copyright 2002 da Novatec Editora Ltda. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida

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

Potenciais de Aplicação da Metodologia AJAX

Potenciais de Aplicação da Metodologia AJAX SEGeT Simpósio de Excelência em Gestão e Tecnologia 1 Potenciais de Aplicação da Metodologia AJAX Bruno Simões Kleverson Pereira Marcos Santos Eduardo Barrere Associação Educacional Dom Bosco - AEDB RESUMO

Leia mais

PROJETO DE COOPERAÇÃO TÉCNICA INTERNACIONAL. Diretrizes e Estratégias para Ciência, Tecnologia e Inovação no Brasil

PROJETO DE COOPERAÇÃO TÉCNICA INTERNACIONAL. Diretrizes e Estratégias para Ciência, Tecnologia e Inovação no Brasil PROJETO DE COOPERAÇÃO TÉCNICA INTERNACIONAL Diretrizes e Estratégias para Ciência, Tecnologia e Inovação no Brasil Projeto 914 BRA5065 - PRODOC-MTC/UNESCO DOCUMENTO TÉCNICO Nº 02 IMPLANTAÇÃO DE 1 (UM)

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

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

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

Aula 9: Fundamentos do JQuery Fonte: Plano de Aula Oficial da Disciplina

Aula 9: Fundamentos do JQuery Fonte: Plano de Aula Oficial da Disciplina Programação para Internet Rica 1 Aula 9: Fundamentos do JQuery Fonte: Plano de Aula Oficial da Disciplina Objetivo: Capacitar o aluno para o trabalho com o framework JQuery. INTRODUÇÃO JQuery é uma biblioteca

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

Programação WEB Introdução

Programação WEB Introdução Programação WEB Introdução Rafael Vieira Coelho IFRS Instituto Federal de Educação, Ciência e Tecnologia do Rio Grande do Sul Campus Farroupilha rafael.coelho@farroupilha.ifrs.edu.br Roteiro 1) Conceitos

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

XML e Banco de Dados. Prof. Daniela Barreiro Claro DCC/IM/UFBA

XML e Banco de Dados. Prof. Daniela Barreiro Claro DCC/IM/UFBA XML e Banco de Dados DCC/IM/UFBA Banco de Dados na Web Armazenamento de dados na Web HTML muito utilizada para formatar e estruturar documentos na Web Não é adequada para especificar dados estruturados

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

WWW - World Wide Web

WWW - World Wide Web WWW World Wide Web WWW Cap. 9.1 WWW - World Wide Web Idéia básica do WWW: Estratégia de acesso a uma teia (WEB) de documentos referenciados (linked) em computadores na Internet (ou Rede TCP/IP privada)

Leia mais

Introdução à Tecnologia Web. Ferramentas e Tecnologias de Desenvolvimento Web. Profª MSc. Elizabete Munzlinger www.elizabete.com.

Introdução à Tecnologia Web. Ferramentas e Tecnologias de Desenvolvimento Web. Profª MSc. Elizabete Munzlinger www.elizabete.com. IntroduçãoàTecnologiaWeb FerramentaseTecnologiasde DesenvolvimentoWeb ProfªMSc.ElizabeteMunzlinger www.elizabete.com.br ProfªMSc.ElizabeteMunzlinger www.elizabete.com.br FerramentaseTecnologiasde DesenvolvimentoWeb

Leia mais

INTERNET -- NAVEGAÇÃO

INTERNET -- NAVEGAÇÃO Página 1 INTRODUÇÃO Parte 1 O que é a Internet? A Internet é uma rede mundial de computadores, englobando redes menores distribuídas por vários países, estados e cidades. Ao contrário do que muitos pensam,

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

Introdução à Informática

Introdução à Informática Introdução à Informática Aula 23 http://www.ic.uff.br/~bianca/introinfo/ Aula 23-07/12/2007 1 Histórico da Internet Início dos anos 60 Um professor do MIT (J.C.R. Licklider) propõe a idéia de uma Rede

Leia mais

Considerando-se a especificação de requisitos de um software, é INCORRETO afirmar que esse documento

Considerando-se a especificação de requisitos de um software, é INCORRETO afirmar que esse documento QUESTÕES DE TI QUESTÃO 16 Considerando-se o número de pontos de função para a estimativa do tamanho de um software, é INCORRETO afirmar que, na contagem de pontos, leva-se em consideração A) as compilações

Leia mais

INDICE 3.APLICAÇÕES QUE PODEM SER DESENVOLVIDAS COM O USO DO SAXES

INDICE 3.APLICAÇÕES QUE PODEM SER DESENVOLVIDAS COM O USO DO SAXES w w w. i d e a l o g i c. c o m. b r INDICE 1.APRESENTAÇÃO 2.ESPECIFICAÇÃO DOS RECURSOS DO SOFTWARE SAXES 2.1. Funcionalidades comuns a outras ferramentas similares 2.2. Funcionalidades próprias do software

Leia mais

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

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

Leia mais

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

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

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

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

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

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

3 Ferramentas de busca

3 Ferramentas de busca 3 Ferramentas de busca A Internet se transformou em um vasto repositório de informações. Podemos encontrar sites sobre qualquer assunto, de futebol a religião. O difícil, porém é conseguir encontrar a

Leia mais

SEO PARA INICIANTES Como otimizar um blog Guia passo a passo para fazer o seu blog otimizado e indexado corretamente!

SEO PARA INICIANTES Como otimizar um blog Guia passo a passo para fazer o seu blog otimizado e indexado corretamente! 1 SEO PARA INICIANTES Como otimizar um blog Guia passo a passo para fazer o seu blog otimizado e indexado corretamente! Fórmula Hotmart - www.formulahotmart.com 2 Este ebook pertence: Claudio J. Bueno

Leia mais

Excel 2010 Modulo II

Excel 2010 Modulo II Excel 2010 Modulo II Sumário Nomeando intervalos de células... 1 Classificação e filtro de dados... 3 Subtotais... 6 Validação e auditoria de dados... 8 Validação e auditoria de dados... 9 Cenários...

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

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

Justificativa do uso da Linguagem XML no Projeto RIVED

Justificativa do uso da Linguagem XML no Projeto RIVED Justificativa do uso da Linguagem XML no Projeto RIVED Índice Introdução... 1 Sobre a linguagem XML... 2 O que é XML (extensible Markup Language)?... 2 Características da Linguagem...3 Sobre o seu uso...

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

ESTUDO COMPARATIVO DE BIBLIOTECAS GRÁFICAS I TEGRADAS COM OPE GL

ESTUDO COMPARATIVO DE BIBLIOTECAS GRÁFICAS I TEGRADAS COM OPE GL ESTUDO COMPARATIVO DE BIBLIOTECAS GRÁFICAS I TEGRADAS COM OPE GL Francisco Tiago Avelar, Vitor Conrado F. Gomes, Cesar Tadeu Pozzer Universidade Federal de Santa Maria UFSM Curso de Ciência da Computação

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

UM NOVO CONCEITO EM AUTOMAÇÃO. Série Ponto

UM NOVO CONCEITO EM AUTOMAÇÃO. Série Ponto UM NOVO CONCEITO EM AUTOMAÇÃO Série Ponto POR QUE NOVO CONCEITO? O que é um WEBPLC? Um CP na WEB Por que usar INTERNET? Controle do processo de qualquer lugar WEBGATE = conexão INTERNET/ALNETII WEBPLC

Leia mais

Treinamento PostgreSQL - Aula 01

Treinamento PostgreSQL - Aula 01 Treinamento PostgreSQL - Aula 01 Eduardo Ferreira dos Santos SparkGroup Treinamento e Capacitação em Tecnologia eduardo.edusantos@gmail.com eduardosan.com 27 de Maio de 2013 Eduardo Ferreira dos Santos

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

IMPLEMENTAÇÃO DE UM ALGORITMO DE PADRÕES DE SEQUÊNCIA PARA DESCOBERTA DE ASSOCIAÇÕES ENTRE PRODUTOS DE UMA BASE DE DADOS REAL

IMPLEMENTAÇÃO DE UM ALGORITMO DE PADRÕES DE SEQUÊNCIA PARA DESCOBERTA DE ASSOCIAÇÕES ENTRE PRODUTOS DE UMA BASE DE DADOS REAL Universidade Federal de Ouro Preto - UFOP Instituto de Ciências Exatas e Biológicas - ICEB Departamento de Computação - DECOM IMPLEMENTAÇÃO DE UM ALGORITMO DE PADRÕES DE SEQUÊNCIA PARA DESCOBERTA DE ASSOCIAÇÕES

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

UNIVERSIDADE PRESBITERIANA MACKENZIE FACULDADE DE COMPUTAÇÃO E INFORMÁTICA

UNIVERSIDADE PRESBITERIANA MACKENZIE FACULDADE DE COMPUTAÇÃO E INFORMÁTICA EDITAL DO PROGRAMA DE CERTIFICAÇÕES EM COMPUTAÇÃO MACK COMPUTING CERTIFICATION MCC 2º SEMESTRE DE 2014 O Diretor da Faculdade de Computação e Informática (FCI), no uso de suas atribuições estatutárias

Leia mais

Sistemas para internet e software livre

Sistemas para internet e software livre Sistemas para internet e software livre Metodologia de modelagem de aplicações WEB Image: FreeDigitalPhotos.net Domínio: Elementos de aplicação WEB Páginas Web Scripts Formulários Applets e ActiveX Motivação

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

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

Módulo e-rede OpenCart v1.0. Manual de. Instalação do Módulo. estamos todos ligados

Módulo e-rede OpenCart v1.0. Manual de. Instalação do Módulo. estamos todos ligados Módulo e-rede OpenCart v1.0 Manual de Instalação do Módulo estamos todos ligados ÍNDICE 01 02 03 04 Introdução 3 Versão 3 Requerimentos 3 Manual de instalação 4 05 06 4.1 vqmod 4 4.2 Instalação e ativação

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

Publicação web. Será ativado um assistente de publicação que lhe guiará em todas as etapas a seguir apresentadas.

Publicação web. Será ativado um assistente de publicação que lhe guiará em todas as etapas a seguir apresentadas. Publicação web Pré requisitos: Lista de questões Formulário multimídia Este tutorial tem como objetivo, demonstrar de maneira ilustrativa, todos os passos e opções que devem ser seguidos para publicar

Leia mais

Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços. Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena

Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços. Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena Tópicos Motivação e Objetivos LP e SOA Processo ADESE

Leia mais

4 Conversor EDTV Raw. 4.1 Arquitetura

4 Conversor EDTV Raw. 4.1 Arquitetura 4 Conversor EDTV Raw O conversor EDTV Raw é o programa que lê um documento escrito no perfil NCL EDTV e gera um documento Raw equivalente, i.e. que define a mesma apresentação. Este capítulo, apresenta

Leia mais

PROJETO DE REDES www.projetoderedes.com.br

PROJETO DE REDES www.projetoderedes.com.br PROJETO DE REDES www.projetoderedes.com.br Centro Universitário de Volta Redonda - UniFOA Curso Tecnológico de Redes de Computadores 5º período Disciplina: Tecnologia WEB Professor: José Maurício S. Pinheiro

Leia mais

2 Auto-sintonia de Bancos de Dados e Agentes de Software

2 Auto-sintonia de Bancos de Dados e Agentes de Software 2 Auto-sintonia de Bancos de Dados e Agentes de Software A uso da abordagem de agentes de software 1 pode trazer benefícios a áreas de aplicação em que é necessário construir sistemas autônomos, ou seja,

Leia mais

Conhecendo o Visual FoxPro 8.0 Parte 3

Conhecendo o Visual FoxPro 8.0 Parte 3 AULA Conhecendo o Visual FoxPro 8.0 Parte 3 Continuando nossa saga pelas ferramentas do Visual FoxPro 8.0, hoje vamos conhecer mais algumas. A Ferramenta Class Designer A Class Designer é a ferramenta

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

Com relação às áreas de conhecimento de projetos conforme o. PMBoK, julgue os itens subseqüentes.

Com relação às áreas de conhecimento de projetos conforme o. PMBoK, julgue os itens subseqüentes. De acordo com o comando a que cada um dos itens de 1 a 70 se refira, marque, na folha de respostas, para cada item: o campo designado com o código C, caso julgue o item CERTO; ou o campo designado com

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

Apache + PHP + MySQL

Apache + PHP + MySQL Apache + PHP + MySQL Fernando Lozano Consultor Independente Prof. Faculdade Metodista Bennett Webmaster da Free Software Foundation fernando@lozano.eti.br SEPAI 2001 O Que São Estes Softwares Apache: Servidor

Leia mais

COLETA E MINERAÇÃO DE DADOS DE REDES SOCIAIS

COLETA E MINERAÇÃO DE DADOS DE REDES SOCIAIS Universidade Federal de Ouro Preto - UFOP Instituto de Ciências Exatas e Biológicas - ICEB Departamento de Computação - DECOM COLETA E MINERAÇÃO DE DADOS DE REDES SOCIAIS Aluno: Milton Stiilpen Júnior

Leia mais

Moodle FTEC Versão 2.0 Manual do Usuário Acesse a área de LOGIN do site da FTEC www.ftec.com.br

Moodle FTEC Versão 2.0 Manual do Usuário Acesse a área de LOGIN do site da FTEC www.ftec.com.br Moodle FTEC Versão 2.0 Manual do Usuário Acesse a área de LOGIN do site da FTEC www.ftec.com.br Índice Como acessar o Moodle Editando seu PERFIL Editando o curso / disciplina no Moodle Incluindo Recursos

Leia mais

Banco de Dados Multimídia

Banco de Dados Multimídia Banco de Dados Multimídia Nomes: Ariane Bazilio Cristiano de Deus Marcos Henrique Sidinei Souza Professor Mauricio Anderson Perecim Conteúdo Banco de Dados Multimídia... 3 Conceitos... 3 Descrição... 3

Leia mais

JavaScript. Guia do Programador. Maurício Samy Silva. Novatec

JavaScript. Guia do Programador. Maurício Samy Silva. Novatec JavaScript Guia do Programador Maurício Samy Silva Novatec Copyright Novatec Editora Ltda. 2010. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida a reprodução desta obra,

Leia mais

Manual do Cantor. Alexander Rieder Tradução: Marcus Gama

Manual do Cantor. Alexander Rieder Tradução: Marcus Gama Alexander Rieder Tradução: Marcus Gama 2 Conteúdo 1 Introdução 5 2 Usando o Cantor 6 2.1 Recursos do Cantor..................................... 6 2.2 As infraestruturas do Cantor...............................

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

Helder da Rocha. Criação de. Web Sites II. Servidor Web Aplicações Web Programas CGI e SSI. Rev.: CWS2-04-2000/01 A4

Helder da Rocha. Criação de. Web Sites II. Servidor Web Aplicações Web Programas CGI e SSI. Rev.: CWS2-04-2000/01 A4 Helder da Rocha Criação de Web Sites II Servidor Web Aplicações Web Programas CGI e SSI Rev.: CWS2-04-2000/01 A4 Copyright 2000 por Helder Lima Santos da Rocha. Todos os direitos reservados. Os direitos

Leia mais

CONCEITOS BÁSICOS DE INTERNET. Disciplina: INFORMÁTICA 1º Semestre Prof. AFONSO MADEIRA

CONCEITOS BÁSICOS DE INTERNET. Disciplina: INFORMÁTICA 1º Semestre Prof. AFONSO MADEIRA CONCEITOS BÁSICOS DE INTERNET Disciplina: INFORMÁTICA 1º Semestre Prof. AFONSO MADEIRA conceito inicial Amplo sistema de comunicação Conecta muitas redes de computadores Apresenta-se de várias formas Provê

Leia mais

Integração de Dados na Web. Ana Carolina Salgado Bernadette Lóscio

Integração de Dados na Web. Ana Carolina Salgado Bernadette Lóscio Integração de Dados na Web Ana Carolina Salgado Bernadette Lóscio Conteúdo Introdução Integração de Informações Consultando a Web Introdução Motivação Web e BD Arquitetura na Web Introdução Evolução da

Leia mais

Manual de utilização do STA Web

Manual de utilização do STA Web Sistema de Transferência de Arquivos Manual de utilização do STA Web Versão 1.1.7 Sumário 1 Introdução... 3 2 Segurança... 3 2.1 Autorização de uso... 3 2.2 Acesso em homologação... 3 2.3 Tráfego seguro...

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

Desenvolvendo Aplicações Web com NetBeans

Desenvolvendo Aplicações Web com NetBeans Desenvolvendo Aplicações Web com NetBeans Aula 3 Cap. 4 Trabalhando com Banco de Dados Prof.: Marcelo Ferreira Ortega Introdução O trabalho com banco de dados utilizando o NetBeans se desenvolveu ao longo

Leia mais

Autoria Web Apresentação e Visão Geral sobre a Web

Autoria Web Apresentação e Visão Geral sobre a Web Apresentação e Visão Geral sobre a Web Apresentação Thiago Miranda Email: mirandathiago@gmail.com Site: www.thiagomiranda.net Objetivos da Disciplina Conhecer os limites de atuação profissional em Web

Leia mais

Nível 3 Sistema Operacional

Nível 3 Sistema Operacional Nível 3 Sistema Operacional Universidade Tuiuti do Paraná UTP Faculdade de Ciências Exatas - FACET Tecnologia de Análise e Desenvolvimento de Sistemas Organização de Computadores Prof. André Luiz 1 Nível

Leia mais

1 - Processamento de dados

1 - Processamento de dados Conceitos básicos sobre organização de computadores 2 1 - Processamento de dados O que é processamento? O que é dado? Dado é informação? Processamento é a manipulação das informações coletadas (dados).

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

PRODUÇÃO CARTOGRÁFICA SERVIÇOS WEB

PRODUÇÃO CARTOGRÁFICA SERVIÇOS WEB SERVIÇOS WEB World Wide Web Evolução de simples páginas com conteúdo estático para páginas com conteúdos dinâmicos (extraídos, principalmente, de Sistemas Gerenciadores de Bancos de Dados SGBD) Tecnologias

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

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

Implementar servidores de Web/FTP e DFS. Disciplina: Serviços de Redes Microsoft Professor: Fernando Santorsula fernando.santorsula@esamc.

Implementar servidores de Web/FTP e DFS. Disciplina: Serviços de Redes Microsoft Professor: Fernando Santorsula fernando.santorsula@esamc. Implementar servidores de Web/FTP e DFS Disciplina: Serviços de Redes Microsoft Professor: Fernando Santorsula fernando.santorsula@esamc.br Conteúdo programático Introdução ao protocolo HTTP Serviço web

Leia mais

Ambientes Visuais. Ambientes Visuais

Ambientes Visuais. Ambientes Visuais Ambientes Visuais Inicialmente, apenas especialistas utilizavam os computadores, sendo que os primeiros desenvolvidos ocupavam grandes áreas e tinham um poder de processamento reduzido. Porém, a contínua

Leia mais

Módulo e-rede Prestashop v1.0. Manual de. Instalação do Módulo. estamos todos ligados

Módulo e-rede Prestashop v1.0. Manual de. Instalação do Módulo. estamos todos ligados Módulo e-rede Prestashop v1.0 Manual de Instalação do Módulo estamos todos ligados ÍNDICE 01 02 03 04 Introdução 3 Versão 3 Requerimentos 3 Manual de instalação 4 05 06 4.1 Instruções iniciais 4 4.2 Instalação

Leia mais

Conceitos Web. Prof. Msc. Juliano Gomes Weber (jgw@unijui.edu.br) Notas de Aula Aula 13 1º Semestre - 2011. UNIJUÍ DETEC Ciência da Computação

Conceitos Web. Prof. Msc. Juliano Gomes Weber (jgw@unijui.edu.br) Notas de Aula Aula 13 1º Semestre - 2011. UNIJUÍ DETEC Ciência da Computação UNIJUÍ DETEC Ciência da Computação Prof. Msc. Juliano Gomes Weber (jgw@unijui.edu.br) Conceitos Web Notas de Aula Aula 13 1º Semestre - 2011 Tecnologias Web jgw@unijui.edu.br Conceitos Básicos Sistema

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

WEB DISC SISTEMA WEB PARA GERENCIAMENTO DE DISCIPLINAS

WEB DISC SISTEMA WEB PARA GERENCIAMENTO DE DISCIPLINAS Universidade Federal de Ouro Preto - UFOP Instituto de Ciências Exatas e Biológicas - ICEB Departamento de Computação - DECOM WEB DISC SISTEMA WEB PARA GERENCIAMENTO DE DISCIPLINAS Aluno: Antonio Carlos

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

Versão 1.0 Janeiro de 2011. Xerox Phaser 3635MFP Plataforma de interface extensível

Versão 1.0 Janeiro de 2011. Xerox Phaser 3635MFP Plataforma de interface extensível Versão 1.0 Janeiro de 2011 Xerox Phaser 3635MFP 2011 Xerox Corporation. XEROX e XEROX e Design são marcas da Xerox Corporation nos Estados Unidos e/ou em outros países. São feitas alterações periodicamente

Leia mais

Um sistema é constituído de um conjunto de processos que executam seus respectivos códigos do sistema operacional e processos e códigos de usuários.

Um sistema é constituído de um conjunto de processos que executam seus respectivos códigos do sistema operacional e processos e códigos de usuários. Os sistemas computacionais atuais permitem que diversos programas sejam carregados na memória e executados simultaneamente. Essa evolução tornou necessário um controle maior na divisão de tarefas entre

Leia mais

Desenvolvimento de aplicações web utilizando separação de preocupações

Desenvolvimento de aplicações web utilizando separação de preocupações Daniel Delatorre Vanzin Desenvolvimento de aplicações web utilizando separação de preocupações Monograa apresentada ao programa de Bacharelado em Ciências da Computação da Universidade Federal de Santa

Leia mais

Processos (Threads,Virtualização e Migração de Código)

Processos (Threads,Virtualização e Migração de Código) Processos (Threads,Virtualização e Migração de Código) Roteiro Processos Threads Virtualização Migração de Código O que é um processo?! Processos são programas em execução. Processo Processo Processo tem

Leia mais

Conheça o Projeto. Apresentação. Finalidade. Objetivo

Conheça o Projeto. Apresentação. Finalidade. Objetivo Manual do Usuário Índice Conheça o Projeto...3 Apresentação...3 Finalidade...3 Objetivo...3 Histórico...4 Usando o Portal...5 Efetuando o cadastro na biblioteca digital...5 Logando na Biblioteca Digital...6

Leia mais

M a n u a l d o R e c u r s o Q m o n i t o r

M a n u a l d o R e c u r s o Q m o n i t o r M a n u a l d o R e c u r s o Q m o n i t o r i t i l advanced Todos os direitos reservados à Constat. Uso autorizado mediante licenciamento Qualitor Porto Alegre RS Av. Ceará, 1652 São João 90240-512

Leia mais

HTML5 E WEB SEMÂNTICA, A WEB COM SIGNIFICADO

HTML5 E WEB SEMÂNTICA, A WEB COM SIGNIFICADO HTML5 E WEB SEMÂNTICA, A WEB COM SIGNIFICADO Djalma Gonçalves Costa Junior¹, Willian Barbosa Magalhães¹ ¹Universidade Paranaense (Unipar) Paranavaí - PR - Brasil djalma.g.costajr@gmail.com wmagalhaes@unipar.br

Leia mais

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

Introdução à Lógica de Programação Introdução à Lógica de Programação Sistemas Numéricos As informações inseridas em um computador são traduzidos em dados, ou seja, em sinais que podem ser manipulados pelo computador. O computador trabalha

Leia mais

EProcessos: Um Sistema para Edição de Processos de Software

EProcessos: Um Sistema para Edição de Processos de Software Universidade Federal de Ouro Preto - UFOP Instituto de Ciencias Exatas e Biologicas - ICEB Departamento de Computação - DECOM EProcessos: Um Sistema para Edição de Processos de Software Aluno: Sávio Geraldo

Leia mais

Criando documentação com javadoc

Criando documentação com javadoc H Criando documentação com javadoc H.1 Introdução Neste apêndice, fornecemos uma introdução a javadoc ferramenta utilizada para criar arquivos HTML que documentam o código Java. Essa ferramenta é usada

Leia mais

Dominando Action Script 3

Dominando Action Script 3 Dominando Action Script 3 Segunda Edição (2014) Daniel Schmitz Esse livro está à venda em http://leanpub.com/dominandoactionscript3 Essa versão foi publicada em 2014-05-02 This is a Leanpub book. Leanpub

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