DESENVOLVIMENTO DE UM FRAMEWORK PARA COMPONENTES DE

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

Download "DESENVOLVIMENTO DE UM FRAMEWORK PARA COMPONENTES DE"

Transcrição

1 UNIVERSIDADE CATÓLICA DE GOIÁS DEPARTAMENTO DE COMPUTAÇÃO GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO DESENVOLVIMENTO DE UM FRAMEWORK PARA COMPONENTES DE INTERFACE WEB COM TÉCNICAS DE ESCALABILIDADE. SANDERSON OLIVEIRA DE MACEDO PAULO ROBERTO BATISTA JÚNIOR

2 JUNHO 2009.

3 i UNIVERSIDADE CATÓLICA DE GOIÁS DEPARTAMENTO DE COMPUTAÇÃO GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO DESENVOLVIMENTO DE UM FRAMEWORK PARA COMPONENTES DE INTERFACE WEB COM TÉCNICAS DE ESCALABILIDADE. Trabalho de Projeto Final de Curso apresentado por Sanderson Oliveira de Macedo e Paulo Roberto Batista Júnior à Universidade Católica de Goiás, como requisito parcial para obtenção do título de Bacharel em Ciência da Computação aprovado em 08/06/2009 pela Banca Examinadora: Prof. Iwens Gervasio Sene Júnior Msc.,UCG Orientador Prof. Leandro Luís G. de Oliveira, Dr.,UFG Prof. Msc., Marcio Goiânia, de Sousa Balian, UniAnhanguera.

4 ii DESENVOLVIMENTO DE UM FRAMEWORK PARA COMPONENTES DE INTERFACE WEB COM TÉCNICAS DE ESCALABILIDADE. SANDERSON OLIVEIRA DE MACEDO PAULO ROBERTO BATISTA JÚNIOR Trabalho de Projeto Final de Curso apresentado por Sanderson Oliveira de Macedo e Paulo Roberto Batista Júnior à Universidade Católica de Goiás, como parte dos requisitos para obtenção do título de Bacharel em Ciência da Computação. Professor Iwens Gervasio Sene Júnior Orientador Professor Jeová Martins Ribeiro Coord. de Projeto Final de Curso

5 iii ERRATA Folha Linha Onde se lê Leia se

6 iv Dedico este trabalho ao Criador do conhecimento absoluto. Pai, cada vez que nos aproximamos da verdade científica, nos aproximamos da Tua verdade eterna. A minha amada e inteligente esposa Etiene, por ser meu modelo em acreditar e prosseguir; e a meu filho Rafael, fonte de alegria. Sanderson Oliveira de Macedo. Dedico este trabalho aos meus pais por sempre me apoiarem e acreditarem no meu potencial. Paulo Roberto Batista Júnior.

7 v AGRADECIMENTOS Aos familiares, amigos de trabalho e de faculdade e aos mestres, que nos fizeram crescer em conhecimento. Conhecimento que para nós, é uma riqueza que não tem fim. Muito obrigado a todos. O conhecimento é como o ouro refinado e a sabedoria como a prata preciosa. Rei Salomão, filho de Davi.

8 vi RESUMO O presente trabalho teve o objetivo de desenvolver um framework para componentes de interface web por meio das técnicas de escalabilidade de comunicação assíncrona entre o cliente e o servidor, cache de dados no cliente e migração de algoritmos do servidor para o cliente. Para atualização da cache no cliente, foram desenvolvidos agentes inteligentes que, de forma autônoma e automática, sincronizam a replicação dos dados globais com os dados locais. A divisão de responsabilidade do processamento do sistema entre o servidor e o cliente web necessitou da aplicação da técnica de segurança de chaves autenticadoras a fim de garantir a privacidade da comunicação entre essas duas entidades. Foram desenvolvidos testes comparativos entre dois softwares com os mesmos requisitos funcionais, porém um utilizando o framework com técnicas de escalabilidade e o outro a partir da forma tradicional de desenvolvimento web. Os dados comparativos obtidos nesses testes mostraram que o software utilizando técnicas de escalabilidade reduziu a latência de rede em até 75% e a quantidade de informações transferidas do servidor para o cliente reduziu em até 480 vezes em cada requisição. Palavras chave: escalabilidade, comunicação assíncrona, cache, latência de rede, componentes web.

9 vii ABSTRACT This work had the objective of develop a framework to web interface components through techniques for scalability of asynchronous communication between customer and server, data cache of customer and migration of algorithms from server to customer. To update the cache of customer, we developed intelligent agents which, in a autonomic and automatic way, synchronize the replication of global data with the local data. The division of responsability for processing of the system between server and web customer needed the application of technique for security of authenticated keys to ensure the privacy of communication between these two entities. We developed comparative tests between two softwares with the same functional requirements, however one of them using the framework with techniques for scalability and the another one using the traditional web development. Comparative data obtained in these tests showed that the software using techniques for scalability decreased the network latency up to 75% and the quantity of information passed from server to customer was reduced up to 480 times on each request. Keywords: scalability, asynchronous communication, cache, network latency, web components.

10 viii LISTA DE FIGURAS Figura I 1 Criação de um componente web estendendo a classe Component...9 Figura II 2 Comunicação Síncrona...10 Figura II 3 Comunicação Assíncrona...11 Figura II 4 Comunicação assíncrona utilizando o objeto XMLHttpRequest...12 Figura II 5 A classe ServerComunicator...14 Figura II 6 Comunicação entre a classe ServerComunicator e o código servidor...15 Figura III 7 Único servidor concentrador dos serviços...25 Figura III 8 Duplicação de servidores...26 Figura III 9 Memória cache...28 Figura III 10 Cache no navegador web...28 Figura III 11 Servidor Proxy...29 Figura III 12 Diagrama de classes...30 Figura III 13 A classe Cache...33 Figura III 14 Estrutura do Records ArrayTree de informações...36 Figura IV 15 Agentes interagindo com o ambiente...38 Figura IV 16 Projeto de software dos agentes...41 Figura IV 17 Modelo de ação do AgentUpdater...47 Figura V 18 Migração de algoritmo do servidor para o cliente...50 Figura V 19 Projeto de Software da classe Operations...55 Figura VII 20 Exemplo de datagrid com formulário de atualização em desktop...64 Figura VII 21 Software desenvolvido em web tradicional...65 Figura VII 22 Software desenvolvido em web baseado em componentes Figura VII 23 Complemento do Firefox, FireBug...69 Figura VII 24 Gerenciador de Tarefas do Windows...70

11 ix LISTA DE TABELAS Tabela II 1 Protocolo de comandos para o cliente...16 Tabela II 2 Tags do XML padrão de comunicação...21 Tabela II 3 Protocolo de comandos do fluxo de comunicação Servidor Cliente...21 Tabela III 4 Comparações entre replicação entre cache...27

12 x Tabela III 5 Métodos de acesso ao XML do servidor...31 Tabela III 6 Campos de armazenamento da cache...33 Tabela III 7 Métodos da classe Cache...34 Tabela IV 8 Comandos para o agente vindo do servidor...40 Tabela IV 9 Membros da classe Agent...42 Tabela IV 10 Membros da classe AgentCommand...42 Tabela IV 11 Membros da classe AgentUpdater...43 Tabela IV 12 Exemplo de tabela de dados do servidor...43 Tabela IV 13 Alteração de dados do servidor...47 Tabela V 14 Características do JavaScript...51 Tabela V 15 Projeto de Software da classe Operations...55 Tabela V 16 Tabela de dados pessoa...56 Tabela V 17 Filtro de dados na cache do cliente...56 Tabela VII 18 Execução web tradicional em rede local...71 Tabela VII 19 Execução do web componente em rede local...71 Tabela VII 20 Tempos em rede local...72 Tabela VII 21 Quantidade de dados transferidos em rede local...74 Tabela VII 22 Uso de memória RAM em rede local...75 Tabela VII 23 Consumo de memória virtual em rede local...76 Tabela VII 24 Execução do web tradicional em internet 100kb...78 Tabela VII 25 Execução em web componente e internet 100kb...79 Tabela VII 26 Tabela dos tempos de execução em internet 100kb...79 Tabela VII 27 Quantidade de dados transferidos na execução em internet 100kb...81 Tabela VII 28 Memória RAM em uso na execução em internet 100kb...82 Tabela VII 29 Memória virtual em uso internet 100kb...83

13 xi LISTA DE GRÁFICOS Gráfico VII 1 Gráfico de tempos em rede local...73 Gráfico VII 2 Quantidade de dados transferidos em rede local...75 Gráfico VII 3 Consumo de memória RAM em rede local...76 Gráfico VII 4 Consumo de memória virtual em rede local...77 Gráfico VII 5 Gráfico dos tempos de execução em internet 100kb...80 Gráfico VII 6 Quantidade de dados transferidos em internet 100kb...82 Gráfico VII 7 Uso de memória RAM na execução em internet 100kb...83 Gráfico VII 8 Uso de memória virtual na execução em internet 100kb...84

14 xii LISTA DE CÓDIGOS Código I.1 Criação de um componente estendendo Component...8 Código II.2 Serialização dos campos do cliente para o servidor...16 Código II.3 Exemplo de um XML...19 Código II.4 Formato padrão do XML de comunicação...21 Código II.5 Preenchimento de padrão na comunicação Servidor Cliente Código III.6 XML de dados do servidor...36 Código IV.7 Entidade superior na requisição da faixa de dados global. 39 Código V.8 Exemplo simples de HTML...53 Código V.9 Alteração do valor de um elemento HTML...54 Código VI.10 Envio do token de segurança ao cliente...61

15 xiii LISTA DE ABREVIATURAS E SIGLAS AJAX: Asynchronous JavaScript And XML DOM: Document Object Model HTML: HyperText Markup Language POO: Programação Orientada a Objetos W3C: World Wide Web Consortium XML: extensible Markup Language WWW: World Wide Web HTTP: Hypertext Transfer Protocol

16 xiv SUMÁRIO Introdução...1 CAPÍTULO I. ESCALABILIDADE...5 I.1. Medidas de escalabilidade...5 I.2. Problemas de escalabilidade...6 I.2.1.Problemas de localização geográfica [2]...6 I.2.2.Problemas de tamanho do software...6 I.2.3.Problemas de administração do sistema...8 I.3. Componente web escalável...8 CAPÍTULO II. COMUNICAÇÃO ASSÍNCRONA Utilizando Ajax para a comunicação assíncrona...11 II.1.1.O objeto XMLHttpRequest...12 II.1.2.Esquema de comunicação assíncrona com XMLHttpRequest...12 II.2. A classe ServerComunicator...13 II.3. O envio de dados do cliente para o servidor...16 II.3.1.Comandos do fluxo Cliente Servidor...16 II.3.2.Executando a requisição ao servidor...17 II.4. O envio de dados do servidor para o cliente...17 II.4.1.Usando o XML...17 II.5. Formato padrão da comunicação no fluxo Servidor Cliente...19 II.5.1.Comandos do fluxo de comunicação Servidor Cliente...21 CAPÍTULO III. CACHE DE DADOS NO CLIENTE...25 III.1. Replicação...26 III.2. Cache...26 III.2.1.Memória cache...27 III.2.2.Cache em navegadores web...28 III.2.3.Servidor de cache web proxy...28

17 xv III.3. Armazenando dados no cliente...29 III.3.1.Idéia geral da cache no cliente...29 III.4. Ampliação da Modelagem de classes...30 III.4.1.Transição dos dados...30 III.5. O gerenciamento das solicitações...31 III.6. Desenvolvimento da classe Cache...31 III.7. O ArrayTree Records...34 CAPÍTULO IV. AGENTES INTELIGENTES PARA ATUALIZAÇÃO DA CACHE...37 IV.1. Agentes Inteligentes...38 IV.1.1.Agentes reativos simples...39 IV.1.2.Agente reativo simples...39 IV.1.3.O Ambiente de atuação...39 IV.2. Sensores...40 IV.3. As Ações...40 IV.4. Projeto de software do agente...41 IV.4.1.AgentCommand...42 IV.4.2.AgentUpdater...43 IV.5. Exemplo prático com AgentUpdater...43 CAPÍTULO V. MIGRAÇÃO DE ALGORITMOS PARA O CLIENTE WEB...49 V.1. Migração de algoritmo...49 V.2. Desenvolvendo códigos cliente web na Linguagem JavaScript...50 V.3. Manipulando a estrutura HTML com DOM...52 V.4. Migrando processamento do servidor para o cliente...54 V.5. Operações básicas do framework...54 V.5.1.A classe Operations...54 V.5.2.Ordenação de dados...55 V.5.3.Filtragem de dados...56 CAPÍTULO VI.

18 xvi COMPONENTES COM SEGURANÇA DE COMUNICAÇÃO...58 VI.1. Segurança...58 VI.1.1.Formas básicas de segurança...58 VI.2. Ataques e ameaças...59 VI.3. Chave autenticadora (Token)...59 VI.3.1.O inicio da comunicação...60 VI.3.2.Componente com segurança de comunicação...60 CAPÍTULO VII. DADOS COMPARATIVOS...62 VII.1. Dados manipulados...62 VII.2. Requisitos funcionais do software...63 VII.3. Desenvolvimento...64 VII.3.1.Desenvolvimento web tradicional...64 VII.3.2.Desenvolvimento web baseado em componentes...65 VII.4. Ações e Métricas...66 VII.5. Especificações dos hardwares utilizados nos testes...67 VII.5.1.Servidor...67 VII.5.2.Clientes...68 VII.6. Softwares de apoio...68 VII.6.1.Navegador web...68 VII.6.2.Software para coleta de tempo e quantidade de informações...69 VII.6.3.Software para coleta de memória em uso...69 VII.7. Coleta e análise de dados...71 VII.7.1.Execução no Cliente Rede Local...71 VII.7.2.Análise de tempo em Rede Local...72 VII.7.3.Quantidade de informação transferida em Rede Local...73 VII.7.4.Análise da memória em uso RAM e virtual em Rede Local...75 VII.7.5.Execução no Cliente 100kb (internet)...78 VII.7.6.Análise de tempo em 100kb...79 VII.7.7.Quantidade de informação transferida em 100kb...80 VII.7.8.Análise da memória em uso RAM e virtual em 100kb...82 Considerações finais...85 Referências...87

19 xvii Anexos...92

20 1 INTRODUÇÃO A EVOLUÇÃO DOS SISTEMAS DE INFORMAÇÃO O advento de sistemas operacionais baseados em janelas possibilitou aos engenheiros de software ampliar a usabilidade dos sistemas de informação VII.7VII.7. Ações antes executadas por linhas de comando complexas e ininteligíveis foram facilmente substituídas por formas mais interativas e amigáveis de execução, como por exemplo, a necessidade de inserir uma informação, excluir um arquivo ou emitir um relatório, que pode ser abstraída ao simples clique de um botão. Dos atuais sistemas de informação, busca se um alto poder de usabilidade, interatividade e escalabilidade VII.7VII.7. Mas, para que isto aconteça, aos mesmos é requerido um rico ambiente de componentes que, se bem projetados, podem ampliar a experiência do usuário no uso de um software. Um ambiente já consolidado é o ambiente desktop. O AMBIENTE DESKTOP O ambiente desktop VII.7 é composto por componentes de fácil uso, expresso por meio de janelas, painéis, tabelas de dados, árvores de diretório e menus de itens, dentre muitos outros. Este ambiente tem por principal característica a interatividade e a alta responsividade (tempo de resposta) entre o usuário e a interface. Cada componente desktop VII.7 VII.7 tem a capacitação de rápidas operações e manipulações dos dados que neles estão expostos. Em uma tabela de dados VII.7 (datagrid), por exemplo, podemos facilmente ordenar, inserir, alterar, excluir e filtrar dados obtidos de um banco de dados VII.7, somente com alguns cliques do mouse. Em algumas operações, como na ordenação e filtragem, não é necessário uma re comunicação com o banco, pois os dados já estão no componente. VII.7 VII.7. Apesar da facilidade de uso da interface e da execução de comandos do ambiente desktop, os softwares instalados em computadores locais e isolados têm dificuldade de compartilhamento de dados entre vários usuários. Um arquivo de texto, uma planilha eletrônica ou informações de um sistema, como um cadastro de clientes, não são

21 2 facilmente migrados de um local para outro. Para isso é necessário que estes arquivos ou dados sejam transpostos por meio de mídias de dados tais como: disquetes, CDs dentre outros. Um modelo proposto para solucionar esta dificuldade de migração e compartilhamento de dados é o modelo cliente servidor. MODELO CLIENTE SERVIDOR Segundo Tanenbaum VII.7, cliente servidor é um modelo computacional que separa máquinas em clientes e servidores, sendo interligados entre si, utilizando se de uma rede de computadores. O servidor concentra os dados necessários aos clientes gerando compartilhamento de informações. Cada instância de um cliente pode enviar requisições de dados para o servidor, ao qual está conectada, e esperar pela resposta. Por sua vez, o servidor recebe tais requisições, processa as mesmas, e retorna um resultado para o cliente (os dados). Assim, os sistemas de informação foram potencializados com a distribuição dos dados pelo servidor e ainda tendo a vantagem de uma rica, rápida e interativa interface gerenciada pelo aplicativo cliente em ambiente desktop. Por outro lado a facilidade de compartilhamento de dados entre clientes utilizando o modelo cliente servidor, sendo esses dados manipulados por sistemas de informação em ambiente desktop, é comprometida com a manutenção e atualização VII.7 em massa destes aplicativos, posto que, qualquer alteração de versão dos mesmos requer um esquema de distribuição e atualização. No pior caso, distribuir ou atualizar um software para ambiente desktop requer uma instalação manual na máquina em que o software irá executar. Se o software deve ser instalado ou atualizado em 200 máquinas, por exemplo, esta instalação deverá ser muito demorada e muito trabalhosa. Uma tentativa de atenuação deste problema é a atualização por rede em que a nova versão do software fica no servidor, e quando um cliente se comunica com um servidor que tem uma nova atualização, o mesmo requisita esta nova atualização na máquina local, porém tal esquema gera um alto tráfego na rede. O AMBIENTE WEB No modelo cliente servidor e sistemas em ambiente desktop, somente os dados

22 3 ficavam disponíveis no servidor para a manipulação compartilhada dos clientes e cada cliente executava a aplicação localmente e isoladamente. Criando se um problema de escalabilidade administrativa, no que se refere à manutenção das aplicações. Com a popularização do World Wide Web (WWW), criou se a possibilidade de sistemas de informação serem migrados por completo ao servidor; não somente os dados, mas também a aplicação por inteiro. Nos sistemas de informação baseados em ambiente web, o cliente se conecta ao servidor por meio de um navegador web VII.7 VII.7 usando um endereço do protocolo HTTP VII.7. Pelos links ou submissões de formulários de dados, o cliente envia requisições ao servidor; somente o resultado da requisição é descarregado no navegador do mesmo, conjuntamente com os dados processados e requisitados. Essa nova forma de desenvolvimento em "clientes leves" possibilita uma fácil manutenção e atualização integral e homogênea do sistema de informação, posto que o mesmo esteja residente no servidor. O sistema não necessita de um esquema de atualização e de distribuição. Nada é processado no cliente, agora tudo está no servidor. Porém o desenvolvimento de aplicativos web requer maior investimento para se atingir um grau mínimo de usabilidade VII.7VII.7, interatividade e responsividade que antes era percebido nos sistemas para ambiente desktop. Como agora tudo está no servidor, qualquer que seja o processamento de dados necessário, ele deverá ser feito no servidor. Numa simples ordenação de uma tabela de dados que já está exposta, essa tabela de dados deverá ser reprocessada no servidor por meio de uma nova requisição, então ordenada, e assim novamente exposta ao usuário. A transição de dados de uma tabela para um formulário de atualização requer o re carregamento completo da página, e a cada requisição o servidor é sobrecarregado. Portanto, apesar dos sistemas web não necessitarem de um esquema de atualização de versão, o problema de ampliação de tráfego na rede torna se recorrente. RÁPIDAS COMPARAÇÕES ENTRE DESKTOP E WEB Nos sistemas de desenvolvimento em desktop, existia uma cooperação e divisão de processamentos entre o cliente e o servidor; nem toda a ação que o cliente fazia sobre os dados necessitava do servidor, pois os dados, como citado anteriormente, estavam

23 4 residentes na memória vinculados ao componente na interface desktop. No ambiente web, no que se refere ao processamento de dados e armazenamento em memória, o cliente é tratado absolutamente como coadjuvante, ocorrendo uma subutilização dos componentes computacionais do mesmo. Em desktop, ações que necessitavam de processamento no servidor, tais como inserção, alteração e exclusão de dados, aconteciam mais pontualmente. No exemplo de uma exclusão o componente de dados por meio da interface comunica ao servidor a necessidade da exclusão daquele dado selecionado. O servidor executa a ação e notifica a interface do sucesso da ação e por fim a interface atualiza o componente, excluindo da visualização somente o dado excluído. Dependendo da conexão de rede isso é um processo bem rápido. No ambiente web o processo é semelhante, porém existe a necessidade de uma atualização completa da página, pois não existe um componente gerenciando o processo o que o torna menos responsivo e escalável, tendo por fim todos os dados vizinhos ao que foi excluído, retornados mais uma vez ao cliente web. OBJETIVO DO TRABALHO O presente trabalho teve como objetivo produzir um framework que facilitasse a criação de componentes para web utilizando técnicas de escalabilidade, e que esses componentes sejam mais eficazes, aproximando se da interatividade e da alta responsividade entre o usuário e a interface do sistema, que antes era percebido nos sistemas em ambiente desktop.

24 5 CAPÍTULO I. ESCALABILIDADE A mente que se abre a uma nova idéia jamais voltará ao seu tamanho original. Albert Einstein A escalabilidade é uma característica desejável em todo sistema de informação. Em um software, escalabilidade indica a habilidade de crescimento uniforme, ou estar preparado para crescer VII.7 VII.7. Refere se, por exemplo, à capacidade de um sistema em suportar um salto no número de usuários, ou da ampliação de recursos ao sistema quando são requeridos. Outra possibilidade de escalabilidade é o que acontece com softwares de empresas multinacionais. Essas empresas têm sua matriz localizada em um país e as filiais em outros e todos os usuários acessam o mesmo sistema integrado. A possibilidade de escalabilidade é um assunto de alta relevância em sistemas eletrônicos, banco de dados VII.7, redes de computadores VII.7 e etc. e implica diretamente em melhoria de desempenho. Um sistema cujo desempenho aumenta com o acréscimo de hardware, proporcionalmente à capacidade acrescida, é chamado "sistema escalável" VII.7. I.1. Medidas de escalabilidade As medidas normais de escalabilidade são definidas em três dimensões distintas VII.7: Escalabilidade Geográfica: um sistema é geograficamente escalável quando os usuários e recursos podem estar longe uns dos outros. Escalabilidade de tamanho: ocorre quando um sistema tem a facilidade de ampliação de usuários ou recursos.

25 6 Escalabilidade Administrativa: quando um sistema é fácil de se gerenciar e manter, mesmo que existam várias organizações administrativas, diz se que o mesmo tem este tipo de escalabilidade. Para se desenvolver um framework baseado no desenvolvimento de componentes em ambiente web, é necessário discutir algumas soluções para os problemas de escalabilidade no que se refere a desenvolvimento de software. I.2. Problemas de escalabilidade I.2.1. Problemas de localização geográfica [2] Principal problema enfrentado em sistemas de informação acessados por usuários em diversos lugares geograficamente dispostos é a latência de rede, que pode ser definida como o tempo de espera entre a requisição e a resposta do servidor. Como os usuários estão conectados por redes de computadores, cada comunicação é feita normalmente de forma síncrona, ou seja, o cliente faz uma requisição, espera, e recebe a resposta da requisição. Isso é bem típico em sistemas web. No desenvolvimento tradicional web cada requisição feita pelo navegador ao servidor trava por completo a interface com o usuário, ou seja, o usuário espera a página carregar por completo a cada requisição, o que torna a latência bem mais visível VII.7. A possibilidade de executar comunicações assíncronas VII.7 VII.7 entre o navegador e o servidor, atenuaria bastante a latência de rede, pois enquanto a comunicação é feita a interface com o usuário não é bloqueada, o que deixa o usuário mais livre para realizar outras operações enquanto aguarda a finalização da comunicação. I.2.2. Problemas de tamanho do software Se um sistema necessita ampliar o suporte a usuários, é necessário se atentar às limitações de centralizações tais como centralização de serviços, de dados e de algoritmos, como ocorre no desenvolvimento de aplicações para web.

26 7 O problema de serviços centralizados decorre de um único servidor implementar os serviços disponíveis VII.7 (HTTP). Ocorrendo um salto no número de usuários, o servidor torna se um gargalo para o sistema. Em muitos casos, copiar o servidor para vários lugares ou ampliar sua capacidade, melhora o desempenho, mas essa solução geralmente tem alto custo, como por exemplo, o acréscimo de maquinário. O problema de acesso a dados centralizados vem com a dificuldade de replicação dos dados e de distribuição dos mesmos. No ambiente web os dados estão sempre no servidor e a tradicional forma de desenvolvimento web ignora o fato de poder ter localmente uma replicação dos dados vindos do servidor, mesmo que tal replicação seja somente dos dados visualizados na página atual, possibilitando um processamento local sobre os mesmos. No presente trabalho utilizou se um esquema de replicação de dados VII.7, onde o servidor deveria entregar ao cliente uma amostra dos dados para que o mesmo operasse localmente sobre os mesmos. Essa porção ou amostra de dados no cliente chama se cache. Agora no caso dos problemas de algoritmos centralizados VII.7VII.7VII.7, somente uma máquina, os servidores web, detém o poder de processamento de todos os dados. Uma solução necessária para atenuar este problema é a distribuição e descentralização de algoritmos. Alguns códigos do servidor serão migrados para o cliente de forma controlada. Características de algoritmos descentralizados: a) Nenhuma máquina cliente tem informações completas sobre o estado geral do sistema. b) Os clientes podem tomar decisões tendo por base as informações locais. c) O servidor entrega porções de código para ser executada no cliente, utilizando sua estrutura de processamento local. d) A falha de um cliente não arruína o algoritmo.

27 8 I.2.3. Problemas de administração do sistema Se um sistema se expandir ou migrar para outra máquina, como ocorre em algoritmos descentralizados, é preciso garantir a segurança da comunicação entre o código que foi migrado para o cliente com o servidor. Um ataque malicioso, de falsidade de entidade, ou de uma requisição não autorizada pode por abaixo toda a escalabilidade pretendida VII.7. I.3. Componente web escalável No projeto de software do presente trabalho definiu se uma classe chamada Component. Ela será a classe mãe (superclasse) para qualquer componente web que venha a ser desenvolvido, usando o framework proposto. Para usá la, o desenvolvedor web, deve estender a classe Component como mostra o Código I.1. e Figura I 1. usando a linguagem JavaScript. MeuComponente = Class.create(); MeuComponente.prototype = Object.extend(new Component(),{ initialize: function(){ } }); Código I.1 Criação de um componente estendendo Component.

28 9 Figura I 1 Criação de um componente web estendendo a classe Component. Quando o desenvolvedor para web estender a classe Component, o framework disponibilizará as seguintes características que implementam técnicas de escalabilidade para a criação de componentes web: Comunicação assíncrona; Cache de dados do lado do cliente; Agentes inteligentes para atualização da cache; Operações (algoritmo) para uso no cliente; Segurança de comunicação usando tokens.

29 10 CAPÍTULO II. COMUNICAÇÃO ASSÍNCRONA O desenvolvimento tradicional de sistemas para web usa comumente a comunicação síncrona entre o navegador web e o servidor VII.7. Comunicação síncrona é a forma de comunicação mais simples que ocorre de serialmente, aonde cada evento do processo acontece um após o outro seguindo uma ordem. Para que os eventos sejam garantidos em ordem, o navegador bloqueia a interface até que a resposta do evento atual chegue ao cliente VII.7 VII.7. Esse bloqueio deixa exposta a latência de rede na comunicação síncrona como mostramos na Figura II 2. Figura II 2 Comunicação Síncrona Basicamente o tratamento de ocultação de latências em comunicações é importante para que se possa conseguir escalabilidade geográfica VII.7. A alternativa de ocultar o tempo de espera de cada comunicação é permite que o usuário execute outras ações enquanto espera a resposta de uma requisição, isso significa construir aplicações que

30 11 utilizem comunicações assíncronas para executar tais requisições como exemplificado na Figura II 3. Figura II 3 Comunicação Assíncrona Utilizando Ajax para a comunicação assíncrona AJAX (acrônimo em língua inglesa de Asynchronous JavaScript And XML) é o uso metodológico de tecnologias como JavaScript e XML VII.7, providas por navegadores web, para tornar páginas mais interativas com o usuário VII.7, utilizando se de solicitações assíncronas de informações. AJAX não é somente um novo modelo, mas também, uma iniciativa na construção de aplicações web, mais dinâmicas e criativas. AJAX não é uma única tecnologia, e sim várias tecnologias conhecidas trabalhando em conjunto, cada uma fazendo sua parte, oferecendo novas funcionalidades. AJAX incorpora em seu modelo: Recuperação assíncrona de dados usando o objeto XMLHttpRequest; Intercâmbio e manipulação de dados usando XML;

31 12 Algoritmos em JavaScript. II.1.1. O objeto XMLHttpRequest O XMLHttpRequest VII.7 é um objeto que implementa uma interface que pertence ao próprio navegador e que permite a um código, migrado do servidor para o cliente (JavaScript), realizar uma comunicação entre o cliente e o servidor sem a necessidade de recarregar todo o conteúdo atual da página web. Da função deste objeto é que vem o termo Asynchronous (assíncrono) da definição de AJAX VII.7. Por meio desse objeto, dados do cliente são transportados para o servidor e vice versa, nos bastidores, sem que a interface com o usuário seja bloqueada. Em outras palavras, não precisa haver sincronia no processo de transporte de dados com o carregamento da página web. Com o objeto XMLHttpRequest é possível transicionar de forma oculta, os dados do servidor para o cliente, escondendo a latência de rede do usuário, assim atingindo se a pretendida a escalabilidade geográfica. II.1.2. Esquema de comunicação assíncrona com XMLHttpRequest A Figura II 4 mostra o esquema de comunicação assíncrona entre o navegador cliente web e o servidor: Figura II 4 Comunicação assíncrona utilizando o objeto XMLHttpRequest.

32 13 1. O código do cliente (JavaScript) realiza uma chamada ao servidor utilizando o objeto XMLHttpRequest e enviando dados se necessário. 2. O objeto XMLHttpRequest monta uma requisição HTTP e registra uma função de callback, um tipo de agente verificador da comunicação para esperar a resposta do servidor, deixando a interface com o usuário, desbloqueada para outras ações. 3. A requisição é enviada para o servidor 4. O servidor web recebe a requisição do cliente. 5. O servidor realiza operações sobre a base de dados. 6. O servidor retorna um arquivo XML de dados requisitados e a função callback(), que verifica a conclusão da comunicação, é chamada. 7. A função entrega os dados advindos do servidor ao código que fez a solicitação inicial. 8. Os dados são processados e a interface com o usuário, atualizada. II.2. A classe ServerComunicator A classe ServerComunicator foi desenvolvida para ser o centro de comunicações entre os componentes que estão executando no cliente e o servidor. Toda comunicação utiliza o objeto XMLHttpRequest VII.7 e a biblioteca prototype.js VII.7 VII.7. Todo código solicitante do componente deve ter um objeto de referência da classe ServerComunicator e utilizar os padrões especificados para as comunicações e transições de dados. No fluxo de dados do cliente para o servidor o componente deve passar para a classe ServerComunicator uma serialização dos dados a ser transferidos para o servidor e registrar uma função que será chamada após o término da comunicação como explicamos na subseção Agora, no que diz respeito ao fluxo de comunicação do servidor para o cliente, o código do servidor deve responder com

Manual SAGe Versão 1.2 (a partir da versão 12.08.01)

Manual SAGe Versão 1.2 (a partir da versão 12.08.01) Manual SAGe Versão 1.2 (a partir da versão 12.08.01) Submissão de Relatórios Científicos Sumário Introdução... 2 Elaboração do Relatório Científico... 3 Submissão do Relatório Científico... 14 Operação

Leia mais

MANUAL DE UTILIZAÇÃO SISTEMA DE CADASTRO INTRANET

MANUAL DE UTILIZAÇÃO SISTEMA DE CADASTRO INTRANET MANUAL DE UTILIZAÇÃO SISTEMA DE CADASTRO INTRANET I Sumário 1. Objetivo do Documento... 1 2. Início... 1 3. Cadastro de Pessoa Física... 3 3.1. Preenchimentos Obrigatórios.... 4 3.2. Acesso aos Campos

Leia mais

Manual do Visualizador NF e KEY BEST

Manual do Visualizador NF e KEY BEST Manual do Visualizador NF e KEY BEST Versão 1.0 Maio/2011 INDICE SOBRE O VISUALIZADOR...................................................... 02 RISCOS POSSÍVEIS PARA O EMITENTE DA NOTA FISCAL ELETRÔNICA.................

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

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

Manual do Painel Administrativo

Manual do Painel Administrativo Manual do Painel Administrativo versão 1.0 Autores César A Miggiolaro Marcos J Lazarin Índice Índice... 2 Figuras... 3 Inicio... 5 Funcionalidades... 7 Analytics... 9 Cidades... 9 Conteúdo... 10 Referência...

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

INDICE 1. INTRODUÇÃO... 3 2. CONFIGURAÇÃO MÍNIMA... 4 3. INSTALAÇÃO... 4 4. INTERLIGAÇÃO DO SISTEMA... 5 5. ALGUNS RECURSOS... 6 6. SERVIDOR BAM...

INDICE 1. INTRODUÇÃO... 3 2. CONFIGURAÇÃO MÍNIMA... 4 3. INSTALAÇÃO... 4 4. INTERLIGAÇÃO DO SISTEMA... 5 5. ALGUNS RECURSOS... 6 6. SERVIDOR BAM... 1 de 30 INDICE 1. INTRODUÇÃO... 3 2. CONFIGURAÇÃO MÍNIMA... 4 3. INSTALAÇÃO... 4 3.1. ONDE SE DEVE INSTALAR O SERVIDOR BAM?... 4 3.2. ONDE SE DEVE INSTALAR O PROGRAMADOR REMOTO BAM?... 4 3.3. COMO FAZER

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

Introdução ao Modelos de Duas Camadas Cliente Servidor

Introdução ao Modelos de Duas Camadas Cliente Servidor Introdução ao Modelos de Duas Camadas Cliente Servidor Desenvolvimento de Sistemas Cliente Servidor Prof. Esp. MBA Heuber G. F. Lima Aula 1 Ciclo de Vida Clássico Aonde estamos? Page 2 Análise O que fizemos

Leia mais

MANUAL EXPORTAÇÃO IMPORTAÇÃO

MANUAL EXPORTAÇÃO IMPORTAÇÃO MANUAL EXPORTAÇÃO IMPORTAÇÃO Diretoria de Vigilância Epidemiológica/SES/SC 2006 1 Módulo 04 - Exportação e Importação de Dados Manual do SINASC Módulo Exportador Importador Introdução O Sistema SINASC

Leia mais

Professor: Macêdo Firmino Disciplina: Sistemas Operacionais de Rede

Professor: Macêdo Firmino Disciplina: Sistemas Operacionais de Rede Professor: Macêdo Firmino Disciplina: Sistemas Operacionais de Rede O sistema de nome de domínio (DNS) é um sistema que nomeia computadores e serviços de rede e é organizado em uma hierarquia de domínios.

Leia mais

PARANÁ GOVERNO DO ESTADO

PARANÁ GOVERNO DO ESTADO A COMUNICAÇÃO NA INTERNET PROTOCOLO TCP/IP Para tentar facilitar o entendimento de como se dá a comunicação na Internet, vamos começar contando uma história para fazer uma analogia. Era uma vez, um estrangeiro

Leia mais

Manual Replicação Manual VPN

Manual Replicação Manual VPN Manual Replicação Introdução O que é cloudcomputing ou computação na nuvem? Refere-se à utilização de um servidor com alta capacidade de armazenamento de dados e que com configurações que aguentam um alto

Leia mais

Manual do Publicador. Wordpress FATEA Sistema de Gerenciamento de Conteúdo Web

Manual do Publicador. Wordpress FATEA Sistema de Gerenciamento de Conteúdo Web Manual do Publicador Wordpress FATEA Sistema de Gerenciamento de Conteúdo Web Sumário Painel de Administração... 3 1 - Inserção de post... 5 2 Publicação de post com notícia na área headline (galeria de

Leia mais

Entendendo como funciona o NAT

Entendendo como funciona o NAT Entendendo como funciona o NAT Vamos inicialmente entender exatamente qual a função do NAT e em que situações ele é indicado. O NAT surgiu como uma alternativa real para o problema de falta de endereços

Leia mais

SUMÁRIO Acesso ao sistema... 2 Atendente... 3

SUMÁRIO Acesso ao sistema... 2 Atendente... 3 SUMÁRIO Acesso ao sistema... 2 1. Login no sistema... 2 Atendente... 3 1. Abrindo uma nova Solicitação... 3 1. Consultando Solicitações... 5 2. Fazendo uma Consulta Avançada... 6 3. Alterando dados da

Leia mais

Manual Integra S_Line

Manual Integra S_Line 1 Introdução O é uma ferramenta que permite a transmissão Eletrônica de Resultado de Exames, possibilitando aos Prestadores de Serviços (Rede Credenciada), integrarem seus sistemas com os das Operadoras

Leia mais

http://aurelio.net/vim/vim-basico.txt Entrar neste site/arquivo e estudar esse aplicativo Prof. Ricardo César de Carvalho

http://aurelio.net/vim/vim-basico.txt Entrar neste site/arquivo e estudar esse aplicativo Prof. Ricardo César de Carvalho vi http://aurelio.net/vim/vim-basico.txt Entrar neste site/arquivo e estudar esse aplicativo Administração de Redes de Computadores Resumo de Serviços em Rede Linux Controlador de Domínio Servidor DNS

Leia mais

3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio

3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio 32 3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio Este capítulo apresenta o framework orientado a aspectos para monitoramento e análise de processos de negócio

Leia mais

AULA 5 Sistemas Operacionais

AULA 5 Sistemas Operacionais AULA 5 Sistemas Operacionais Disciplina: Introdução à Informática Professora: Gustavo Leitão Email: gustavo.leitao@ifrn.edu.br Sistemas Operacionais Conteúdo: Partições Formatação Fragmentação Gerenciamento

Leia mais

1 REQUISITOS BÁSICOS PARA INSTALAR O SMS PC REMOTO

1 REQUISITOS BÁSICOS PARA INSTALAR O SMS PC REMOTO 1 ÍNDICE 1 REQUISITOS BÁSICOS PARA INSTALAR O SMS PC REMOTO... 3 1.1 REQUISITOS BASICOS DE SOFTWARE... 3 1.2 REQUISITOS BASICOS DE HARDWARE... 3 2 EXECUTANDO O INSTALADOR... 3 2.1 PASSO 01... 3 2.2 PASSO

Leia mais

Procedimentos para Reinstalação do Sisloc

Procedimentos para Reinstalação do Sisloc Procedimentos para Reinstalação do Sisloc Sumário: 1. Informações Gerais... 3 2. Criação de backups importantes... 3 3. Reinstalação do Sisloc... 4 Passo a passo... 4 4. Instalação da base de dados Sisloc...

Leia mais

INSTALAÇÃO DO SISTEMA CONTROLGÁS

INSTALAÇÃO DO SISTEMA CONTROLGÁS INSTALAÇÃO DO SISTEMA CONTROLGÁS 1) Clique duas vezes no arquivo ControlGasSetup.exe. Será exibida a tela de boas vindas do instalador: 2) Clique em avançar e aparecerá a tela a seguir: Manual de Instalação

Leia mais

SISTEMAS OPERACIONAIS ABERTOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com

SISTEMAS OPERACIONAIS ABERTOS Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com - Aula 2-1. PRINCÍPIOS DE SOFTWARE DE ENTRADA E SAÍDA (E/S) As metas gerais do software de entrada e saída é organizar o software como uma série de camadas, com as mais baixas preocupadas em esconder as

Leia mais

Metas de um Sistema Distribuído

Metas de um Sistema Distribuído Metas de um Sistema Distribuído Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia do

Leia mais

CONTRA CONTROLE DE ACESSOS E MODULARIZADOR DE SISTEMAS

CONTRA CONTROLE DE ACESSOS E MODULARIZADOR DE SISTEMAS MINISTÉRIO DO DESENVOLVIMENTO AGRÁRIO SUBSECRETARIA DE PLANEJAMENTO, ORÇAMENTO E ADMINISTRAÇÃO COORDENAÇÃO-GERAL DE MODERNIZAÇÃO E INFORMÁTICA CONTRA CONTROLE DE ACESSOS E MODULARIZADOR DE SISTEMAS MANUAL

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

Manual AGENDA DE BACKUP

Manual AGENDA DE BACKUP Gemelo Backup Online DESKTOP Manual AGENDA DE BACKUP Realiza seus backups de maneira automática. Você só programa os dias e horas em que serão efetuados. A única coisa que você deve fazer é manter seu

Leia mais

ArpPrintServer. Sistema de Gerenciamento de Impressão By Netsource www.netsource.com.br Rev: 02

ArpPrintServer. Sistema de Gerenciamento de Impressão By Netsource www.netsource.com.br Rev: 02 ArpPrintServer Sistema de Gerenciamento de Impressão By Netsource www.netsource.com.br Rev: 02 1 Sumário INTRODUÇÃO... 3 CARACTERÍSTICAS PRINCIPAIS DO SISTEMA... 3 REQUISITOS DE SISTEMA... 4 INSTALAÇÃO

Leia mais

Guia Sphinx: instalação, reposição e renovação

Guia Sphinx: instalação, reposição e renovação Sphinx : software para coleta e análise de dados acadêmicos e gerenciais. Tecnologia e informação para a decisão! Copyright Sphinx Todos direitos reservados Guia Sphinx: instalação, reposição e renovação

Leia mais

Aplicativo da Manifestação do Destinatário. Manual

Aplicativo da Manifestação do Destinatário. Manual Aplicativo da Manifestação do Destinatário Manual Novembro de 2012 1 Sumário 1 Aplicativo de Manifestação do Destinatário...4 2 Iniciando o aplicativo...4 3 Menus...5 3.1 Manifestação Destinatário...5

Leia mais

Orientação a Objetos

Orientação a Objetos 1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou

Leia mais

DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES

DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES Alexandre Egleilton Araújo, Jaime Willian Dias Universidade Paranaense (Unipar) Paranavaí PR Brasil araujo.ale01@gmail.com, jaime@unipar.br Resumo.

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Modelo Cliente-Servidor: Introdução aos tipos de servidores e clientes Prof. MSc. Hugo Souza Iniciando o módulo 03 da primeira unidade, iremos abordar sobre o Modelo Cliente-Servidor

Leia mais

CPG: sincronização entre diferentes dispositivos

CPG: sincronização entre diferentes dispositivos CPG: sincronização entre diferentes dispositivos Vitor Hugo Galhardo Moia Marco Aurélio Amaral Henriques {vhgmoia, marco}@dca.fee.unicamp.br Universidade Estadual de Campinas - UNICAMP Faculdade de Engenharia

Leia mais

Faculdades Santa Cruz - Inove. Plano de Aula Base: Livro - Distributed Systems Professor: Jean Louis de Oliveira.

Faculdades Santa Cruz - Inove. Plano de Aula Base: Livro - Distributed Systems Professor: Jean Louis de Oliveira. Período letivo: 4 Semestre. Quinzena: 5ª. Faculdades Santa Cruz - Inove Plano de Aula Base: Livro - Distributed Systems Professor: Jean Louis de Oliveira. Unidade Curricular Sistemas Distribuídos Processos

Leia mais

Iniciação à Informática

Iniciação à Informática Meu computador e Windows Explorer Justificativa Toda informação ou dado trabalhado no computador, quando armazenado em uma unidade de disco, transforma-se em um arquivo. Saber manipular os arquivos através

Leia mais

Um Driver NDIS Para Interceptação de Datagramas IP

Um Driver NDIS Para Interceptação de Datagramas IP Um Driver NDIS Para Interceptação de Datagramas IP Paulo Fernando da Silva psilva@senior.com.br Sérgio Stringari stringari@furb.br Resumo. Este artigo apresenta o desenvolvimento de um driver NDIS 1 para

Leia mais

Sistema de Controle de Solicitação de Desenvolvimento

Sistema de Controle de Solicitação de Desenvolvimento Sistema de Controle de Solicitação de Desenvolvimento Introdução O presente documento descreverá de forma objetiva as principais operações para abertura e consulta de uma solicitação ao Setor de Desenvolvimento

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

SISTEMAS OPERACIONAIS LIVRES. Professor Carlos Muniz

SISTEMAS OPERACIONAIS LIVRES. Professor Carlos Muniz SISTEMAS OPERACIONAIS LIVRES Agendar uma tarefa Você deve estar com logon de administrador para executar essas etapas. Se não tiver efetuado logon como administrador, você só poderá alterar as configurações

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

Construtor de sites SoftPixel GUIA RÁPIDO - 1 -

Construtor de sites SoftPixel GUIA RÁPIDO - 1 - GUIA RÁPIDO - 1 - Sumário Introdução...3 Por que utilizar o Construtor de Sites?...3 Vantagens do Construtor de Sites...3 Conceitos básicos...3 Configuração básica do site...5 Definindo o layout/template

Leia mais

Manual do sistema SMARsa Web

Manual do sistema SMARsa Web Manual do sistema SMARsa Web Módulo Gestão de atividades RS/OS Requisição de serviço/ordem de serviço 1 Sumário INTRODUÇÃO...3 OBJETIVO...3 Bem-vindo ao sistema SMARsa WEB: Módulo gestão de atividades...4

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

Disciplina de Banco de Dados Introdução

Disciplina de Banco de Dados Introdução Disciplina de Banco de Dados Introdução Prof. Elisa Maria Pivetta CAFW - UFSM Banco de Dados: Conceitos A empresa JJ. Gomes tem uma lista com mais ou menos 4.000 nomes de clientes bem como seus dados pessoais.

Leia mais

FileMaker Pro 14. Utilização de uma Conexão de Área de Trabalho Remota com o FileMaker Pro 14

FileMaker Pro 14. Utilização de uma Conexão de Área de Trabalho Remota com o FileMaker Pro 14 FileMaker Pro 14 Utilização de uma Conexão de Área de Trabalho Remota com o FileMaker Pro 14 2007-2015 FileMaker, Inc. Todos os direitos reservados. FileMaker Inc. 5201 Patrick Henry Drive Santa Clara,

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

TECNOLOGIA WEB Aula 1 Evolução da Internet Profa. Rosemary Melo

TECNOLOGIA WEB Aula 1 Evolução da Internet Profa. Rosemary Melo TECNOLOGIA WEB Aula 1 Evolução da Internet Profa. Rosemary Melo Tópicos abordados Surgimento da internet Expansão x Popularização da internet A World Wide Web e a Internet Funcionamento e personagens da

Leia mais

MANUAL DO USUÁRIO SORE Sistema Online de Reservas de Equipamento. Toledo PR. Versão 2.0 - Atualização 26/01/2009 Depto de TI - FASUL Página 1

MANUAL DO USUÁRIO SORE Sistema Online de Reservas de Equipamento. Toledo PR. Versão 2.0 - Atualização 26/01/2009 Depto de TI - FASUL Página 1 MANUAL DO USUÁRIO SORE Sistema Online de Reservas de Equipamento Toledo PR Página 1 INDICE 1. O QUE É O SORE...3 2. COMO ACESSAR O SORE... 4 2.1. Obtendo um Usuário e Senha... 4 2.2. Acessando o SORE pelo

Leia mais

Google Drive. Passos. Configurando o Google Drive

Google Drive. Passos. Configurando o Google Drive Google Drive um sistema de armazenagem de arquivos ligado à sua conta Google e acessível via Internet, desta forma você pode acessar seus arquivos a partir de qualquer dispositivo que tenha acesso à Internet.

Leia mais

Follow-Up Acompanhamento Eletrônico de Processos (versão 3.0) Manual do Sistema. 1. Como acessar o sistema Requisitos mínimos e compatibilidade

Follow-Up Acompanhamento Eletrônico de Processos (versão 3.0) Manual do Sistema. 1. Como acessar o sistema Requisitos mínimos e compatibilidade do Sistema Índice Página 1. Como acessar o sistema 1.1 Requisitos mínimos e compatibilidade 03 2. Como configurar o Sistema 2.1 Painel de Controle 2.2 Informando o nome da Comissária 2.3 Escolhendo a Cor

Leia mais

www.nddigital.com.br Manual de Administração DPS Printer 2.1 NDDigital S/A - Software

www.nddigital.com.br Manual de Administração DPS Printer 2.1 NDDigital S/A - Software www.nddigital.com.br Manual de Administração DPS Printer 2.1 NDDigital S/A - Software 2 Introdução Este manual foi elaborado para administradores, para entendimento do funcionamento do produto e administração

Leia mais

Manual do Ambiente Moodle para Professores

Manual do Ambiente Moodle para Professores UNIVERSIDADE FEDERAL DA FRONTEIRA SUL Manual do Ambiente Moodle para Professores Tarefas Versão 1.0b Setembro/2011 Direitos Autorais: Essa apostila está licenciada sob uma Licença Creative Commons 3.0

Leia mais

02 - Usando o SiteMaster - Informações importantes

02 - Usando o SiteMaster - Informações importantes 01 - Apresentação do SiteMaster - News Edition O SiteMaster foi desenvolvido para ser um sistema simples de gerenciamento de notícias, instalado em seu próprio computador e com configuração simplificada,

Leia mais

1) MANUAL DO INTEGRADOR Este documento, destinado aos instaladores do sistema, com informações de configuração.

1) MANUAL DO INTEGRADOR Este documento, destinado aos instaladores do sistema, com informações de configuração. O software de tarifação é uma solução destinada a rateio de custos de insumos em sistemas prediais, tais como shopping centers. O manual do sistema é dividido em dois volumes: 1) MANUAL DO INTEGRADOR Este

Leia mais

MANUAL C R M ÍNDICE. Sobre o módulo de CRM... 2. 1 Definindo a Campanha... 3

MANUAL C R M ÍNDICE. Sobre o módulo de CRM... 2. 1 Definindo a Campanha... 3 ÍNDICE Sobre o módulo de CRM... 2 1 Definindo a Campanha... 3 1.1 Incluir uma campanha... 3 1.2 Alterar uma campanha... 4 1.3 Excluir... 4 1.4 Procurar... 4 2 Definindo os clientes para a campanha... 4

Leia mais

Capacidade = 512 x 300 x 20000 x 2 x 5 = 30.720.000.000 30,72 GB

Capacidade = 512 x 300 x 20000 x 2 x 5 = 30.720.000.000 30,72 GB Calculando a capacidade de disco: Capacidade = (# bytes/setor) x (méd. # setores/trilha) x (# trilhas/superfície) x (# superfícies/prato) x (# pratos/disco) Exemplo 01: 512 bytes/setor 300 setores/trilha

Leia mais

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064

Sistemas Distribuídos. Professora: Ana Paula Couto DCC 064 Sistemas Distribuídos Professora: Ana Paula Couto DCC 064 Processos- Clientes, Servidores, Migração Capítulo 3 Agenda Clientes Interfaces de usuário em rede Sistema X Window Software do lado cliente para

Leia mais

ÍNDICE. www.leitejunior.com.br 16/06/2008 17:48 Leite Júnior

ÍNDICE. www.leitejunior.com.br 16/06/2008 17:48 Leite Júnior ÍNDICE MICROSOFT INTERNET EXPLORER 6 SP2 (IE6 SP2)...2 JANELA PRINCIPAL...2 PARTES DA JANELA...2 OS MENUS DO IE6...3 MENU ARQUIVO...3 MENU EDITAR...3 MENU EXIBIR...3 MENU FAVORITOS...4 MENU FERRAMENTAS...4

Leia mais

Despachante Express - Software para o despachante documentalista veicular DESPACHANTE EXPRESS MANUAL DO USUÁRIO VERSÃO 1.1

Despachante Express - Software para o despachante documentalista veicular DESPACHANTE EXPRESS MANUAL DO USUÁRIO VERSÃO 1.1 DESPACHANTE EXPRESS MANUAL DO USUÁRIO VERSÃO 1.1 1 Sumário 1 - Instalação Normal do Despachante Express... 3 2 - Instalação do Despachante Express em Rede... 5 3 - Registrando o Despachante Express...

Leia mais

Intranets. FERNANDO ALBUQUERQUE Departamento de Ciência da Computação Universidade de Brasília 1.INTRODUÇÃO

Intranets. FERNANDO ALBUQUERQUE Departamento de Ciência da Computação Universidade de Brasília 1.INTRODUÇÃO Intranets FERNANDO ALBUQUERQUE Departamento de Ciência da Computação Universidade de Brasília 1.INTRODUÇÃO As intranets são redes internas às organizações que usam as tecnologias utilizadas na rede mundial

Leia mais

QualiQuantiSoft Versão 1.3c

QualiQuantiSoft Versão 1.3c QualiQuantiSoft Versão 1.3c Qualiquantisoft v1.3c Pág.: 1/15 Índice Apresentação do programa... 3 Funções operacionais do programa... 3 Itens de menu... 6 Teclas de atalho... 6 Instrumento de Análise de

Leia mais

2. INSTALAÇÃO E CONFIGURAÇÃO

2. INSTALAÇÃO E CONFIGURAÇÃO INDICE 1. INTRODUÇÃO 2. INSTALAÇÃO E CONFIGURAÇÃO 2.1. COMPARTILHANDO O DIRETÓRIO DO APLICATIVO 3. INTERFACE DO APLICATIVO 3.1. ÁREA DO MENU 3.1.2. APLICANDO A CHAVE DE LICENÇA AO APLICATIVO 3.1.3 EFETUANDO

Leia mais

Manual do Usuário. E-DOC Peticionamento Eletrônico TST

Manual do Usuário. E-DOC Peticionamento Eletrônico TST E-DOC Peticionamento APRESENTAÇÃO O sistema E-DOC substituirá o atual sistema existente. Este sistema permitirá o controle de petições que utiliza certificado digital para autenticação de carga de documentos.

Leia mais

LINEAR EQUIPAMENTOS RUA SÃO JORGE, 269 - TELEFONE: 6823-8800 SÃO CAETANO DO SUL - SP - CEP 09530-250

LINEAR EQUIPAMENTOS RUA SÃO JORGE, 269 - TELEFONE: 6823-8800 SÃO CAETANO DO SUL - SP - CEP 09530-250 LINEAR EQUIPAMENTOS RUA SÃO JORGE, 269 - TELEFONE: 6823-8800 SÃO CAETANO DO SUL - SP - CEP 09530-250 Recomendações Iniciais SOFTWARE HCS 2005 - VERSÃO 4.2 (Compatível com Guarita Vr4.03 e Vr4.04) Para

Leia mais

Web Services. Autor: Rômulo Rosa Furtado

Web Services. Autor: Rômulo Rosa Furtado Web Services Autor: Rômulo Rosa Furtado Sumário O que é um Web Service. Qual a finalidade de um Web Service. Como funciona o serviço. Motivação para o uso. Como construir um. Referências. Seção: O que

Leia mais

Área de Trabalho. Encontramos: Ìcones Botão Iniciar Barra de Tarefas

Área de Trabalho. Encontramos: Ìcones Botão Iniciar Barra de Tarefas Inicialização Tela de Logon Área de Trabalho Encontramos: Ìcones Botão Iniciar Barra de Tarefas Área de Trabalho Atalhos de Teclados Win + D = Mostrar Área de trabalho Win + M = Minimizar Tudo Win + R

Leia mais

INTRODUÇÃO 2 ACESSO AO SIGTECWEB 3 TEMPO DE CONEXÃO 5 NAVEGAÇÃO 7 BARRA DE AÇÕES 7 COMPORTAMENTO DOS BOTÕES 7 FILTROS PARA PESQUISA 8

INTRODUÇÃO 2 ACESSO AO SIGTECWEB 3 TEMPO DE CONEXÃO 5 NAVEGAÇÃO 7 BARRA DE AÇÕES 7 COMPORTAMENTO DOS BOTÕES 7 FILTROS PARA PESQUISA 8 ÍNDICE INTRODUÇÃO 2 ACESSO AO SIGTECWEB 3 TEMPO DE CONEXÃO 5 NAVEGAÇÃO 7 BARRA DE AÇÕES 7 COMPORTAMENTO DOS BOTÕES 7 FILTROS PARA PESQUISA 8 ACESSO ÀS FERRAMENTAS 9 FUNÇÕES 12 MENSAGENS 14 CAMPOS OBRIGATÓRIOS

Leia mais

Status. Barra de Título. Barra de Menu. Barra de. Ferramentas Padrão. Caixa de nomes. Barra de. Ferramentas de Formatação. Indicadores de Coluna

Status. Barra de Título. Barra de Menu. Barra de. Ferramentas Padrão. Caixa de nomes. Barra de. Ferramentas de Formatação. Indicadores de Coluna O que é uma planilha eletrônica? É um aplicativo que oferece recursos para manipular dados organizados em tabelas. A partir deles pode-se gerar gráficos facilitando a análise e interpretação dos dados

Leia mais

É o UniNorte facilitando a vida de nossos docentes e discentes.

É o UniNorte facilitando a vida de nossos docentes e discentes. ACESSO REMOTO Através do Acesso Remoto o aluno ou professor poderá utilizar em qualquer computador que tenha acesso a internet todos os programas, recursos de rede e arquivos acadêmicos utilizados nos

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

IFPE. Disciplina: Sistemas Operacionais. Prof. Anderson Luiz Moreira

IFPE. Disciplina: Sistemas Operacionais. Prof. Anderson Luiz Moreira IFPE Disciplina: Sistemas Operacionais Prof. Anderson Luiz Moreira SERVIÇOS OFERECIDOS PELOS SOS 1 Introdução O SO é formado por um conjunto de rotinas (procedimentos) que oferecem serviços aos usuários

Leia mais

Manual do usuário. Softcall Java. versão 1.0.5

Manual do usuário. Softcall Java. versão 1.0.5 Manual do usuário Softcall Java versão 1.0.5 Sumário Iniciando SoftCall...3 Tela Principal...3 Configurando o SoftCall...4 Agenda...5 Incluindo um contato...5 Procurando um contato...6 Apagando um contato...6

Leia mais

Arquitetura de Rede de Computadores

Arquitetura de Rede de Computadores TCP/IP Roteamento Arquitetura de Rede de Prof. Pedro Neto Aracaju Sergipe - 2011 Ementa da Disciplina 4. Roteamento i. Máscara de Rede ii. Sub-Redes iii. Números Binários e Máscara de Sub-Rede iv. O Roteador

Leia mais

Manual das funcionalidades Webmail AASP

Manual das funcionalidades Webmail AASP Manual das funcionalidades Webmail AASP 1. Configurações iniciais 2. Regras 3. Histórico da conta 4. Autorresposta 5. Dados de acesso (alterando senha de acesso) 6. Identidade (assinatura) 7. Redirecionamento

Leia mais

FileMaker Pro 13. Utilização de uma Conexão de Área de Trabalho Remota com o FileMaker Pro 13

FileMaker Pro 13. Utilização de uma Conexão de Área de Trabalho Remota com o FileMaker Pro 13 FileMaker Pro 13 Utilização de uma Conexão de Área de Trabalho Remota com o FileMaker Pro 13 2007-2013 FileMaker Inc. Todos os direitos reservados. FileMaker Inc. 5201 Patrick Henry Drive Santa Clara,

Leia mais

Noções de. Microsoft SQL Server. Microsoft SQL Server

Noções de. Microsoft SQL Server. Microsoft SQL Server Noções de 1 Considerações Iniciais Basicamente existem dois tipos de usuários do SQL Server: Implementadores Administradores 2 1 Implementadores Utilizam o SQL Server para criar e alterar base de dados

Leia mais

Ajuda On-line - Sistema de Portaria. Versão 4.8.J

Ajuda On-line - Sistema de Portaria. Versão 4.8.J Versão 4.8.J Sumário PORT - Módulo de Apoio Portaria 3 1 Manual... de Processos - Portaria 4 Fluxo - Portaria... 5 2 Configurações... 6 Unidades... de Internação 6 Setores Administrativos... 9 Configuração...

Leia mais

Planejando o aplicativo

Planejando o aplicativo Um aplicativo do Visual FoxPro geralmente inclui um ou mais bancos de dados, um programa principal que configura o ambiente de sistema do aplicativo, além de uma interface com os usuários composta por

Leia mais

BACHARELADO EM SISTEMAS DE INFORMAÇÃO EaD UAB/UFSCar Sistemas de Informação - prof. Dr. Hélio Crestana Guardia

BACHARELADO EM SISTEMAS DE INFORMAÇÃO EaD UAB/UFSCar Sistemas de Informação - prof. Dr. Hélio Crestana Guardia O Sistema Operacional que você usa é multitasking? Por multitasking, entende-se a capacidade do SO de ter mais de um processos em execução ao mesmo tempo. É claro que, num dado instante, o número de processos

Leia mais

Servidor Proxy armazenamento em cache.

Servidor Proxy armazenamento em cache. Servidor Proxy Servidor Proxy Um modo bastante simples de melhorar o desempenho de uma rede é gravar páginas que foram anteriormente acessadas, caso venham a ser solicitadas novamente. O procedimento de

Leia mais

Atualizaça o do Maker

Atualizaça o do Maker Atualizaça o do Maker Prezados Clientes, Nós da Playlist Software Solutions empresa líder de mercado no desenvolvimento de software para automação de rádios - primamos pela qualidade de nossos produtos,

Leia mais

Guia rápido de uso da interface beta do NFS-e Easy para operação com Sistemas WebISS

Guia rápido de uso da interface beta do NFS-e Easy para operação com Sistemas WebISS Guia rápido de uso da interface beta do NFS-e Easy para operação com Sistemas WebISS NFS-e Easy v.1.0.2 RC1 Produto: Guia rápido de utilização do NFS-e Easy v1.0.2 RC1 Release date: Set, 23 2010 1 Sumário

Leia mais

Está apto a utilizar o sistema, o usuário que tenha conhecimentos básicos de informática e navegação na internet.

Está apto a utilizar o sistema, o usuário que tenha conhecimentos básicos de informática e navegação na internet. 1. Descrição Geral Este manual descreve as operações disponíveis no módulo VTWEB Client, cuja finalidade é gerenciar cadastros de funcionários, realização de pedidos e controle financeiro dos pedidos.

Leia mais

Versão Liberada. www.gerpos.com.br. Gerpos Sistemas Ltda. info@gerpos.com.br. Av. Jones dos Santos Neves, nº 160/174

Versão Liberada. www.gerpos.com.br. Gerpos Sistemas Ltda. info@gerpos.com.br. Av. Jones dos Santos Neves, nº 160/174 Versão Liberada A Gerpos comunica a seus clientes que nova versão do aplicativo Gerpos Retaguarda, contendo as rotinas para emissão da Nota Fiscal Eletrônica, já está disponível. A atualização da versão

Leia mais

1 Sumário... 2. 2 O Easy Chat... 3. 3 Conceitos... 3. 3.1 Perfil... 3. 3.2 Categoria... 3. 4 Instalação... 5. 5 O Aplicativo... 7 5.1 HTML...

1 Sumário... 2. 2 O Easy Chat... 3. 3 Conceitos... 3. 3.1 Perfil... 3. 3.2 Categoria... 3. 4 Instalação... 5. 5 O Aplicativo... 7 5.1 HTML... 1 Sumário 1 Sumário... 2 2 O Easy Chat... 3 3 Conceitos... 3 3.1 Perfil... 3 3.2 Categoria... 3 3.3 Ícone Específico... 4 3.4 Janela Específica... 4 3.5 Ícone Geral... 4 3.6 Janela Geral... 4 4 Instalação...

Leia mais

Sistemas Operacionais II. Prof. Gleison Batista de Sousa

Sistemas Operacionais II. Prof. Gleison Batista de Sousa Sistemas Operacionais II Prof. Gleison Batista de Sousa Objetivos de aprendizagem Conhecer o funcionamento dos sistemas operacionais para redes de computadores. Aprender como é feito o gerenciamento do

Leia mais

Manual Captura S_Line

Manual Captura S_Line Sumário 1. Introdução... 2 2. Configuração Inicial... 2 2.1. Requisitos... 2 2.2. Downloads... 2 2.3. Instalação/Abrir... 3 3. Sistema... 4 3.1. Abrir Usuário... 4 3.2. Nova Senha... 4 3.3. Propriedades

Leia mais

TUTORIAL PRÁTICO SOBRE Git. Versão 1.1

TUTORIAL PRÁTICO SOBRE Git. Versão 1.1 TUTORIAL PRÁTICO SOBRE Git por Djalma Oliveira Versão 1.1 "Git é um sistema de controle de revisão distribuida, rápido e escalável" (tradução rápida do manual). Basicamente é

Leia mais

04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS. Aula 2. Prof. Rafael Dias Ribeiro. M.Sc.

04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS. Aula 2. Prof. Rafael Dias Ribeiro. M.Sc. MODELAGEM DE DADOS PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS Aula 2 Prof. Rafael Dias Ribeiro. M.Sc. @ribeirord 1 Objetivos: Revisão sobre Banco de Dados e SGBDs Aprender as principais

Leia mais

1.2) Na tela seguinte, o primeiro item a ser selecionado é o Unidade Acumuladora1.

1.2) Na tela seguinte, o primeiro item a ser selecionado é o Unidade Acumuladora1. MANUAL DA NOVA VERSÃO DE ARQUIVAMENTO DO CPROD Na nova versão de Arquivamento que está sendo implementada no CPROD, antes de realizarmos o Arquivamento do Processo ou Documento em si, temos que criar no

Leia mais

Outlook 2003. Apresentação

Outlook 2003. Apresentação Outlook 2003 Apresentação O Microsoft Office Outlook 2003 é um programa de comunicação e gerenciador de informações pessoais que fornece um local unificado para o gerenciamento de e-mails, calendários,

Leia mais

Manual do usuário - Service Desk SDM - COPASA. Service Desk

Manual do usuário - Service Desk SDM - COPASA. Service Desk Manual do usuário - Service Desk SDM - COPASA Service Desk Sumário Apresentação O que é o Service Desk? Terminologia Status do seu chamado Utilização do Portal Web Fazendo Login no Sistema Tela inicial

Leia mais

Tutorial: Webmail. Dicas de Uso e Funcionalidades 02/2015. Versão 01

Tutorial: Webmail. Dicas de Uso e Funcionalidades 02/2015. Versão 01 Tutorial: Webmail Dicas de Uso e Funcionalidades 02/2015 Versão 01 Conteúdo Tutorial: Webmail 2015 Descrição... 2 Possíveis problemas... 5 Criando Regras de Mensagens (Filtros Automáticos)... 11 A partir

Leia mais

SSE 3.0 Guia Rápido Parametrizando o SISTEMA DE SECRETARIA Nesta Edição Configurando a Conexão com o Banco de Dados

SSE 3.0 Guia Rápido Parametrizando o SISTEMA DE SECRETARIA Nesta Edição Configurando a Conexão com o Banco de Dados SSE 3.0 Guia Rápido Parametrizando o SISTEMA DE SECRETARIA Nesta Edição 1 Configurando a Conexão com o Banco de Dados 2 Primeiro Acesso ao Sistema Manutenção de Usuários 3 Parametrizando o Sistema Configura

Leia mais

Sumário: Fluxo Operacional... 3 Contatos... 4. Agenda Online... 10. Reservas de Salas... 26. Tarefas... 42

Sumário: Fluxo Operacional... 3 Contatos... 4. Agenda Online... 10. Reservas de Salas... 26. Tarefas... 42 Sumário: Fluxo Operacional... 3 Contatos... 4 Passo a passo para visualização de contatos... 5 Passo a passo para filtragem da lista de contatos... 6 Como ordenar a lista de contatos... 7 Como gerar uma

Leia mais