UM SISTEMA DE MONITORAMENTO DE LOGÍSTICA EM TEMPO REAL UTILIZANDO DISPOSITIVOS MÓVEIS

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

Download "UM SISTEMA DE MONITORAMENTO DE LOGÍSTICA EM TEMPO REAL UTILIZANDO DISPOSITIVOS MÓVEIS"

Transcrição

1 1 UNIVERSIDADE REGIONAL DO NOROESTE DO ESTADO DO RIO GRANDE DO SUL - UNIJUÍ DEPARTAMENTO DE CIÊNCIAS EXATAS E ENGENHARIAS ADRIELI HEINECK UM SISTEMA DE MONITORAMENTO DE LOGÍSTICA EM TEMPO REAL UTILIZANDO DISPOSITIVOS MÓVEIS Santa Rosa 2012

2 2 ADRIELI HEINECK UM SISTEMA DE MONITORAMENTO DE LOGÍSTICA EM TEMPO REAL UTILIZANDO DISPOSITIVOS MÓVEIS Trabalho de Conclusão de Curso apresentado ao curso de Ciência da Computação, do Departamento de Ciências Exatas e Engenharias, da Universidade Regional do Noroeste do Estado do Rio Grande do Sul, como requisito parcial para obtenção do grau de Bacharel em Ciência da Computação. Orientador: Professor Me. Vinicius Maran Santa Rosa 2012

3 3 UM SISTEMA DE MONITORAMENTO DE LOGÍSTICA EM TEMPO REAL UTILIZANDO DISPOSITIVOS MÓVEIS ADRIELI HEINECK Trabalho de Conclusão de Curso apresentado ao Curso de Ciência da Computação do Departamento de Ciências Exatas e Engenharias (DCEEng), da Universidade Regional do Noroeste do Estado do Rio Grande do Sul (UNIJUÍ), como requisito para a obtenção do título Bacharel em Ciência da Computação. Orientador: Prof. Me. Vinicius Maran BANCA EXAMINADORA Prof. Me. Romário Lopes de Alcântara Santa Rosa 2012

4 As opiniões expressas neste trabalho são de exclusiva responsabilidade da autora. 4

5 5 Dedico este trabalho a minha família que me apoiou e incentivou e a meu marido Marcos, pelos momentos de ajuda, atenção e apoio.

6 6 AGRADECIMENTOS Agradeço a meus pais, Antônio e Marlise, pelo incentivo, suporte material, emocional e ajuda na escrita deste trabalho, a Marcos, meu marido, pelo companheirismo, apoio, compreensão e palavras de carinho e motivação. Ao meu orientador Vinícius Maran, pela paciência, pontuações pertinentes e total disposição para me auxiliar nas dúvidas em qualquer momento. Por fim, agradeço a todos os professores e amigos, que de alguma forma participaram e contribuíram para meu crescimento como ser humano e profissional.

7 7 RESUMO A utilização da computação móvel para a integração de informações entre sistemas corporativos e aparelhos pessoais tem sido uma estratégia cada vez mais utilizada por empresas, inclusive no setor de logística. Porém, alguns problemas afetam esta prática. Este trabalho visa apontar os principais problemas que ocorrem nesta área e fornece uma solução para que dispositivos móveis possam fornecer informações relacionadas aos processos de logística em tempo real. Para alcançar tal objetivo, foi realizado um estudo aprofundado nas áreas de computação móvel e pervasiva sobre todo o contexto dos processos relacionados à logística. Após a realização deste estudo, foi desenvolvido um protótipo, que possui como principal objetivo atender áreas pouco trabalhadas no que tange o gerenciamento dos processos de logística. Em seguida foram realizados testes e definido um caso de uso, a fim de verificar a real funcionalidade do protótipo criado, e apresentar o diferencial e as potencialidades que um gerenciamento de logística em tempo real pode trazer.

8 8 SÍMBOLOS, ABREVIATURAS, SIGLAS E CONVENÇÕES ADT API CLDC EDI ERP GIS GNU GPS GSM HTC IDE IEEE ios JAR JDE MIDP MRP OHA OS PC PDA RIM SDK TI Android Development Tools Application Programing Interface Connected Limited Device Configuration Intercâmbio Eletrônico de Dados Sistemas Integrados de Gestão Empresarial Geographic Information System General Public License Global Positioning System Global System for Mobile Communications High Tech Computer Corporation Integrated Development Environment Institute of Electrical and Electronics Engineers iphone OS Java Archive Java Development Environment Mobile Information Device Profile Planejamento das necessidades de materiais Open Handset Alliance Operational System Personal Computer Personal Digital Assistant Reseach In Motion Software Development Kit Tecnologia da Informação

9 9 TMS WAR WMS XML XMPP Sistema de Gerenciamento de Transportes Web application Archive Sistema de Gerenciamento de Armazém extensible Markup Language Protocolo Extensível de Mensagens e Presença

10 10 LISTA DE FIGURAS Figura 1 - Arquitetura Android. Fonte (Android Developers, 2010) Figura 2 - Ciclo de uma Activity. Fonte (Pereira, 2009) Figura 3 - Ambiente de programação. Fonte (Android Developers, 2010) Figura 4 Ambiente Pervasivo (Cunha et al, 2011) Figura 5 - Estruturas e fases da operação logística. Fonte (Fernandes, 2008) Figura 6 - Modelo competitivo. Fonte (Fernandes, 2008) Figura 7 - Rede Globalizada de logística hoje (Machline, 2011) Figura 8 - Exemplo de tecnologia ubíqua no sistema de logística. Fonte (Hwang, 2006) Figura 9 - Infraestrutura logística baseada em ambiente ubíquo. Fonte (Kim et al, 2010) Figura 10 - Modelagem dos dados da aplicação proposta Figura 11 - Diagrama de Classes da aplicação Móvel Figura 12 Fluxo de informações entre as interfaces Figura 13 - Diagrama de Sequência da Aplicação Figura 14 Interface do exist Figura 15 - Xml de relatório do protótipo Figura 16 - Xml com dados da nova viagem Figura 17 - Tempos de execução Figura 18 - Tela com os dados da Viagem Figura 19 - Mapa da Viagem Figura 20 - Dados da Viagem Figura 21 - Aviso: A viagem Começou Figura 22 - Tela de inserção de relatório... 59

11 11 SUMÁRIO 1. INTRODUÇÃO PROBLEMA E OBJETIVOS ORGANIZAÇÃO DO TEXTO COMPUTAÇÃO MÓVEL E PERVASIVA COMPUTAÇÃO MÓVEL Plataforma Android APIs COMPUTAÇÃO PERVASIVA LOGÍSTICA E COMPUTAÇÃO APLICADA NA ÁREA DE LOGÍSTICA LOGÍSTICA COMPUTAÇÃO APLICADA À LOGÍSTICA TRABALHOS RELACIONADOS UMA FERRAMENTA DE CONTROLE DE LOGÍSTICA EM TEMPO REAL LEVANTAMENTO DE REQUISITOS MODELAGEM DE DADOS IMPLEMENTAÇÃO Aplicação Móvel Exportação de XML para o Banco de Dados exist CENÁRIO DE USO E TESTES REALIZADOS TESTES CENÁRIO DE USO CONCLUSÃO REFERÊNCIAS BIBLIOGRÁFICAS... 61

12 12 1. INTRODUÇÃO O uso de forma disseminada de computadores pessoais, o advento da Internet, a criação da comunicação sem fio, e da computação distribuída de alto desempenho, permeiam atualmente todas as atividades humanas gerando grandes e profundas modificações nas formas de uso da computação (Feijó, Ziviani, 2010). Estes avanços tendem a configurar redes informativas integradas, com uma matriz de comunicação baseada na informação digital, com grande capacidade de veicular dados difundidos em vários meios impressos e audiovisuais (Filho, 2007). A exemplo dos computadores de uso pessoal, o segmento empresarial, inclusive por questões de produtividade, incorpora rapidamente o uso de equipamentos portáteis na automação de seus processos, colocando-os ao alcance de funcionários e colaboradores (Meirelles et al, 2004). Estes avanços, combinados com o constante avanço das tecnologias móveis, estão levando a computação para uma visão próxima da descrita no artigo The Computer for the 21st Century, também conhecida como Computação Pervasiva (Weiser, 1991). Neste trabalho, Mark Weiser (1991) descreveu um conjunto de cenários onde o usuário comum realiza as suas tarefas e os sistemas computacionais (de forma transparente), auxiliam a execução destas tarefas. Ainda segundo o autor, as tecnologias mais profundas são aquelas que desaparecem. Elas se entrelaçam com o cotidiano até que se tornem indistinguíveis dele (Weiser, 1991). A Computação Pervasiva possui os meios de computação distribuídos no ambiente de trabalho dos usuários de forma imperceptível e onipresente (Bolsoni et al, 2009). De acordo com esta definição, computadores, dispositivos e sistemas seriam capazes de detectar e extrair dados e variações do ambiente, gerando modelos computacionais de forma automática, controlando, configurando e ajustando aplicações conforme as necessidades de usuários, dispositivos e sistemas (Bolsoni et al, 2009). A computação móvel e pervasiva são a chave para a compreensão das mídias locativas, as quais podem ser definidas como um conjunto de tecnologias e processos info-comunicacionais (Lemos, 2012). Estes processos consistem na relação entre

13 13 essas mídias e espaços públicos, identificando o local onde o usuário se encontra, permitindo que interaja com o espaço urbano, aumentando as possibilidades de uso do espaço público. Logo, o conteúdo da informação que o usuário busca e necessita está diretamente associado a uma localidade; quase sempre, a localidade em que está no momento. No processo, o uso de Sistemas de Informação Geográfica (Geographic Information Systems - GIS) espalhou-se, saindo das corporações e escritórios e indo para as ruas e os campos, da administração pública e ambiental para um largo espectro de usos sociais (Ballou, 2004). Deste modo, um dos mais profundos desafios das mídias locativas está em transmitir informações geográficas, não mais nas tradicionais e pesadas janelas dos desktops, mas nas tecnologias finas e leves dos sistemas móveis e embarcados (Mccullough, 2006). A constante evolução das mudanças tecnológicas na informática tem favorecido o desenvolvimento da logística em termos conceituais e tecnológicos. Através disso, pode-se gerar um considerável aprimoramento dos processos existentes e da aplicação da computação na área de logística Problema e Objetivos Mesmo ainda havendo notícias relacionadas aos prejuízos com o mau gerenciamento da logística, vem surgindo investimentos em recursos, que apontam uma reversão do atual quadro na logística brasileira (Fernandes, 2008). No entanto, pouco se investiga sobre como a gestão dos recursos logísticos deve evoluir para assegurar os avanços propostos (Cabrial, 2005). Por mais que se admita que essa área seja de suma importância atualmente, pouco ainda é feito para melhorar e evoluir no gerenciamento de processos de logística usando a tecnologia da computação, principalmente a computação pervasiva. Com todos estes argumentos, percebe-se que há uma grande deficiência no processo do gerenciamento de logística e que a computação pervasiva, por ser o grande alvo de estudos na área da informação em tempo real para dispositivos móveis, pode ser o caminho para auxiliar e trazer benefícios ao setor de logística. Desta forma propomos, através de um protótipo, o gerenciamento em tempo real dos processos de logística baseando-se em informações de domínio aliadas a informações geográficas para o controle destes processos.

14 Organização do Texto O texto é organizado como descrito a seguir. No Capítulo 2, é apresentado um estudo relacionado às tecnologias da computação móvel e pervasiva, aplicações destas tecnologias em diversas áreas do conhecimento e contribuições específicas para a área de logística. No Capítulo 3, é apresentado um estudo sobre a área de logística e integração de tecnologias provenientes da computação e processos. O Capítulo 4 apresenta todas as informações sobre a definição de um controle de logística, em tempo real, proposta neste trabalho. No Capítulo 5, é apresentada uma comparação entre o trabalho proposto e um conjunto de trabalhos relacionados. No Capítulo 6, são definidos os cenários de uso e um conjunto de testes para realizar a validação da proposta e dos protótipos gerados. O Capítulo 7 apresenta as conclusões deste trabalho e propostas de trabalhos futuros.

15 15 2. COMPUTAÇÃO MÓVEL E PERVASIVA Cada vez mais, a computação móvel tem sido integrada a soluções existentes para a criação de novas soluções. Uma das áreas onde a computação móvel tem sido utilizada para o auxílio na execução de processos é a área de logística (Ballou, 2004). Para definir as peculiaridades das áreas de computação móvel e pervasiva, e as formas de introdução destas tecnologias na área de logística, realizamos um estudos sobre estas áreas. As próximas subseções deste trabalho têm por objetivo mostrar estas informações. 2.1 Computação Móvel A computação móvel é considerada parte de um novo paradigma da computação (A Computação Ubíqua). Com a constante evolução da computação móvel, houve grandes mudanças nas formas de usar, trabalhar e desenvolver aplicativos e soluções para o auxílio na execução de tarefas pelos usuários. A condição de mobilidade, presente na vida de qualquer pessoa, permite que usuários tenham acesso a serviços, independentemente do lugar onde estejam e, que tais serviços e informações se atualizem de acordo com a mobilidade (Matheus, 2012). O uso da computação móvel pelas pessoas se faz através de dispositivos móveis, principalmente em celulares. Atualmente, os smartphones (telefones inteligentes) combinam características avançadas de hardware e software e promovem um uso mais intenso da computação em ambientes móveis. No ano de 2010, este tipo de dispositivo alcançou 17,3% do total de vendas de telefones móveis (Lopes, 2010). Uma pesquisa realizada por Augustin (2004) elencou os tipos de aplicações móveis e pervasivas, e suas principais características. Os principais tipos de aplicações são: Nômade: Aplicações nômades são executadas em equipamentos móveis, onde seu domínio é a administração pessoal e o acesso a informações de forma geral. Não apresentam um comportamento adaptativo, embora sejam projetadas com

16 16 economia no uso dos recursos dos dispositivos portáteis (armazenamento, memória e energia); logo, não pertencem à taxonomia para aplicações adaptativas apresentadas (Augustin, 2004). Consciente de rede (network-aware): Aplicações que se adaptam às trocas na disponibilidade dos recursos da rede, em especial à largura de banda. Elas se adaptam para fornecer uma aparência de serviço contínuo, e para gerenciar o balanceamento entre transparência, flexibilidade e uso eficiente da rede. Nestes sistemas, a localização dos componentes é fixa, a adaptação advém de trocas no uso da rede. Em geral, essas aplicações usam mecanismos automáticos de adaptação, tais como caching e replicação, que podem usar técnicas de adaptação baseadas somente em parâmetros ou em troca do conteúdo. Fornecem adaptação baseada em recursos, onde o recurso considerado é a rede. O foco destas aplicações é a portabilidade e a conectividade. (Augustin, 2004) Consciente de recursos (resource-aware): Aplicações que tentam identificar e usar os recursos locais disponíveis. A maior parte do processo de adaptação pode ser executada automaticamente pelo sistema usando ajuste de parâmetros ou alteração no formato dos componentes. Aplicações baseadas na tecnologia de agentes móveis têm este comportamento. Assim, migração e descoberta de recursos são caraterísticas importantes para estas aplicações. O foco destas aplicações é a mobilidade e a conectividade (Augustin, 2004). Consciente de localização (location-aware): Estas aplicações têm seu comportamento determinado pela localização física do usuário. Usam o conhecimento da localização como fundo para a resposta a consultas mais especializadas, ou para executar ações dependentes da localização, ou ainda para fornecer informações sobre a área ou objetos ao redor. As características importantes para esta categoria são determinar a posição do usuário e associar dados à localização (contente-based adaptation). Como a localização é a chave para determinar o contexto ao redor da aplicação, esta categoria é um subconjunto das conscientes do contexto (Augustin, 2004). Consciente de contexto (context-aware): Estas aplicações podem deduzir o estado interno e externo, usando sensores ou monitores, e se ajustar ao novo estado. Também introduzem a dimensão pessoal às aplicações móveis, que por sua vez, em geral, são personalizadas pelo usuário, e seu comportamento é baseado em onde elas estão sendo executadas (localização). Podem também tirar vantagem das

17 17 computações próximas e dos recursos da vizinhança. O contexto descreve informações sobre localização, dispositivos, perfis de equipamentos e da rede, atividades, objetos computacionais (disponibilidade, confiabilidade, segurança) contexto, modelagem da informação do contexto e notificação das alterações são características importantes para estas aplicações estabelecerem um comportamento adaptativo. Para estas, também é necessário fornecer (re)configurações alternativas de acordo com o novo contexto. O foco destas aplicações está centrado na combinação de mobilidade, portabilidade e conectividade (Augustin, 2004). Consciente da situação (situation-aware): Até esse ponto, a perspectiva da adaptação é focada no desejo da aplicação de ajustar-se ao ambiente corrente seu contexto de execução. Além disso, a decisão da adaptação é interna à aplicação, e executada pela própria aplicação ou pelo sistema de suporte (ou ambos). Outra perspectiva é introduzida quando o ambiente altera a funcionalidade da aplicação em execução, baseado na consciência das outras aplicações em execução no mesmo ambiente (situação). A decisão de adaptação é externa à aplicação, e pode ser realizada pelo sistema em colaboração com as aplicações vizinhas. Este comportamento categoriza as aplicações conscientes da situação. A situação adiciona uma nova dimensão ao contexto: a social, que reflete as capacidades dos usuários, suas aplicações e preferências. A adaptação ocorre na funcionalidade dependendo do uso do contexto e da preferência dos usuários. A característica base é a pró-atividade do sistema de gerenciamento (Augustin, 2004). A necessidade da existência de diversas características na computação móvel e a combinação da mesma com a comunicação sem fio resultou em uma nova situação: a capacidade de adaptação de código e conteúdo, ou seja, ter serviços computacionais disponibilizados em contextos específicos (Barbosa, 2007). Além disso, os sistemas de localização proporcionam a utilização de dados de localização de dispositivos e usuários e integração destas informações com aplicações (Hightower, 2001). Neste trabalho usa-se a aplicação consciente de localização, de acordo com as características já descritas. Nela, pode-se deduzir estado interno ou externo, usando sensores ou monitores e ajustando-se a novos estados. Seu comportamento é baseado em onde a aplicação está sendo executada (localização). Além disso, a decisão de adaptação ocorre dentro da própria aplicação, sendo executada pela mesma ou pelo sistema de suporte. Todas as informações de contexto

18 18 são usadas; entre elas, pode-se citar: localização, dispositivos, perfis de equipamentos e de rede, atividades e objetos computacionais. Existem diversas plataformas capazes de gerenciar o desenvolvimento de aplicações para dispositivos móveis. Entre elas, pode-se destacar Blackberry OS, Apple ios, Symbian, Windows Phone e Google Android (Costa, 2011). O Blackberry OS é uma plataforma desenvolvida e utilizada pela empresa Reseach In Motion (RIM). (Richter, 2009). A linguagem de programação usada é JavaME (RIZK, 2009), com base nos padrões Java CLDC, que define interfaces de baixo nível necessárias para funcionamento da máquina virtual Java em dispositivos móveis, e MIDP, que especifica APIs para desenvolvimento de aplicativos para celulares que usem como base o CLDC (Oracle, 2010). O ios é um sistema operacional desenvolvido pela Apple para seus dispositivos móveis, que consistem nos smartphones da linha iphone, nos tocadores de mídia da linha ipod e nos tablets da linha ipad. O primeiro aparelho com este sistema operacional foi o iphone, que foi anunciado no início de 2007 (Honan, 2007). O núcleo do ios tem como base o mesmo núcleo utilizado no sistema operacional da Apple para notebooks e desktops, contendo quatro camadas: Core OS, Core Services, Media e Cocoa Touch. As duas primeiras utilizam a linguagem de programação C e controlam o funcionamento básico do sistema como acesso a arquivos e sockets de rede. A terceira camada une as linguagens C e Objetive-C e manipula de áudio, vídeo, figuras 2D e objetos 3D. Já a última camada é a de mais alto nível, utiliza apenas Objective-C e serve de base para o desenvolvimento de qualquer aplicativo (Apple, 2011). O Symbian teve como origem um sistema operacional orientado a objetos chamado EPOC, que foi desenvolvido pela empresa Psion. Em 1998, a Psion se uniu a grandes produtoras de aparelhos celulares com o objetivo de aperfeiçoar e licenciar seu sistema operacional, que passou a se chamar Symbian (Babin, 2006). Desde então mais de 100 modelos de aparelhos utilizando Symbian também foram colocados no mercado, a maioria deles produzidos pela Nokia. A Microsoft anunciou no final de 2010 o Windows Phone 7. Para desenvolver aplicações para este sistema pode-se utilizar as linguagens C# ou Visual Basic (Microsoft, 2011). As ferramentas de desenvolvimento são gratuitas, porém para

19 19 distribuir aplicativos na Windows Marketplace (loja de aplicativos deste sistema operacional) é necessário pagar uma anuidade (Microsoft, 2011). A história do sistema operacional Android começou em 2005, quando a Google comprou uma pequena empresa chamada Android Inc., que já trabalhava no desenvolvimento de um sistema operacional para dispositivos móveis (Elgin, 2005). Dois anos mais tarde a Google, juntamente com várias outras empresas de tecnologia, anunciaram a criação do Open Handset Alliance (OHA), cujo objetivo é desenvolver padrões abertos para dispositivos móveis, e o primeiro produto nascido dessa parceria foi o sistema operacional Android (OHA, 2011). A principal diferença entre o Android e seus concorrentes é sua filosofia aberta: qualquer pessoa que se interesse pode visualizar o código fonte desse sistema operacional, e qualquer pessoa pode desenvolver novos aplicativos para substituir os já existentes Plataforma Android A plataforma Android tem seu código aberto, sendo que qualquer pessoa que tenha interesse pode ver e alterar o código fonte. Isso expande a possibilidade de vínculos e deixa o Sistema Operacional cada vez mais disponível de acordo com as necessidades do cotidiano das pessoas (Ferreira, 2010). Android é uma plataforma que integra hardware e software, ou seja, uma pilha de software para dispositivos móveis que tem seu próprio Sistema Operacional, middleware e as aplicações básicas necessárias para que o seu funcionamento seja operacional e satisfatório (Android Developers, 2010). A plataforma Android incorpora um sistema operacional que, baseado no Kernel Linux 2.6, provê um conjunto de aplicações e APIs (Application Programing Interface), sendo desenvolvida na grande maioria em linguagem Java para o desenvolvimento de aplicações de terceiros. As aplicações são desenvolvidas e compiladas para a máquina virtual Dalvik, projetada especialmente para a plataforma Android e baseada nas características de sistemas móveis, tais como limitação de processamento e necessidade de economia de energia. (Ferreira, 2010). As principais funcionalidades da plataforma são (Lecheta, 2009):

20 20 * Framework para desenvolvimento de aplicações: A plataforma oferece frameworks para o desenvolvimento de aplicações, permitindo a reutilização de código e facilitando a acesso a recursos dos dispositivos móveis; * Máquina virtual Dalvik: Criada e otimizada para dispositivos móveis e suas limitações; * Navegador web integrado: Baseado no projeto open source webkit o mesmo utilizado nos aparelhos Apple iphone e Nokia série 60; * Biblioteca de gráficos otimizada para dispositivos móveis: Biblioteca para gráficos 2D e 3D baseada na especificação OpenGL ES 1.1, com aceleração de hardware como opcional; * SQLite: Permite o armazenamento de dados estruturados; * Suporte multimídia: Oferece compatibilidade com os principais formatos existentes, entre eles mpeg4, h.264, mp3, aac, amr, jpg, png e gif; * Telefonia com tecnologia GSM: As aplicações podem manipular operações telefônicas, caso o fabricante permita esse acesso; * Bluetooth, EDGE, 3G e WiFi: Permite o uso das principais tecnologias de transmissão de dados sem fio, também depende da permissão do fabricante para acesso; * Câmera e GPS: Permite o acesso a imagens e vídeos gerados por câmeras dos dispositivos e o acesso a informações de localização do dispositivo; A arquitetura da plataforma Android é dividida em cinco camadas principais, denominadas como (Schemberger, 2009): * Kernel GNU Linux: Camada mais baixa da arquitetura, que é responsável por gerenciar processos e threads, memória, arquivos e pastas, redes, drivers dos dispositivos e recursos de energia; * Bibliotecas: A camada de Bibliotecas é formada por um conjunto de bibliotecas escritas em C/C++. Nelas, tudo é disponibilizado aos desenvolvedores através do Framework de aplicações; * Frameworks para aplicações: Os frameworks são a base para a construção de aplicações. Pensando na reutilização dos componentes, uma aplicação pode capturar funcionalidades de outra criada anteriormente para o seu desenvolvimento. * Runtime: A base de desenvolvimento do Android é a linguagem Java, porém, não existe um Java Virtual Machine e sim Máquina Virtual Dalvik,

21 21 otimizada para interpretar códigos em dispositivos móveis. O controle da execução desta máquina virtual é controlado pela camada de Runtime; * Aplicações necessárias para a execução dos aplicativos nos dispositivos: Conjunto de aplicações do Android, como navegador Web, cliente de , calendário. Todas as aplicações presentes nesta camada foram desenvolvidas na linguagem Java. As camadas apresentadas anteriormente podem ser observadas com maiores detalhes na Figura 1. Figura 1 - Arquitetura Android. Fonte (Android Developers, 2010) Esta plataforma possui um grupo de componentes essenciais que o sistema pode instanciar e executar sempre que for necessário. Este grupo é formado pelos seguintes elementos (Pereira, 2009): Activities: São os componentes mais usados. Geralmente são representados por uma tela na aplicação. Sua interface é composta por Views, consistindo de várias telas que correspondem a eventos programados de forma prévia. Cada Activity é uma especialização da classe Activity e possui um ciclo de vida específico, como pode ser visto na Figura 2.

22 22 Figura 2 - Ciclo de uma Activity. Fonte (Pereira, 2009) O ciclo de vida de uma Activity é baseado na execução dos seguintes métodos de controle: * oncreate() Chamado quando uma Activity é criada pela primeira vez. É nela que você pode fazer a configuração estática, por exemplo, vincular dados com um Bundle, criar view etc. Após sua execução sucedida, sempre será chamado o onstart(). * onrestart() Chamado sempre quando uma Activity é interrompida antes de ser iniciada novamente. Após sua execução sucedida, sempre será chamado o onstart(). * onstart() - Chamado quando uma Activity está se tornando visível para o usuário. Vai para o método onresume(). * onresume() - Chamado quando a Activity começa a interagir com o usuário. Sua Activity está no topo da pilha de Activities, com a entrada do usuário apontando para ele.

23 23 * onpause() - Chamado quando o sistema está prestes a retomar uma Activity anterior. É normalmente utilizado para confirmar alterações não salvas, por exemplo, persistência de dados, animações etc. Uma observação: a implementação deste método deve ser rápida, porque a próxima atividade não será retomada até que esse método retorne, ou finalize. Vai para onresume() se a Activity vai para frente back to the front ou onstop se for tornada invisível para o usuário. * onstop() Chamado quando a Activity já não é visível para o usuário, porque outra Activity foi retomada e está cobrindo esta. Isto pode acontecer se, uma nova Activity esta sendo criada, se a Activity já criada está trazendo outra Activity à frente desta ou se a Activity principal está sendo destruída. Vai para onrestart() se a Activity está voltando para interagir com o usuário, vai para oncreate() caso seja criado uma nova Activity ou vai para ondestroy() se essa Activity está sendo fechada. * ondestroy() Destrói a Activity para liberar espaço em memória. A movimentação de uma atividade para outra ocorre através da Intent, que são requisições disparadas pelas atividades descrevendo o que pode ser feito em caso de acionamento. Services: São códigos sem interfaces de usuários, que rodam em segundo plano, sem ser interrompidos com a troca de atividades. O Service mantem-se ativo até que seja recebida outra ordem, não tendo ciclos curtos de vida como as Activities. Quando conectado como o serviço, pode-se comunicar com este através de uma interface que é apresentada ao usuário. Broadcast Receivers: Trata como será a reação quando uma aplicação recebe um evento externo. Pode ser ocasionado com o tocar do telefone, quando houver rede disponível, em um horário específico. Não possui interface de usuário. Content Providers: É uma forma de compartilhar dados entre aplicativos. Permite que outras aplicações possam armazenar e recuperar dados no mesmo repositório usado por aquela aplicação. A linguagem de programação utilizada na plataforma Android é Java, mas, em trechos de programa onde é necessário maior desempenho, pode-se usar as linguagens C ou C++ (Google, 2011). Como é compilado e executado na máquina virtual Dalvik, o ambiente Android possui algumas características um tanto diferenciadas no que tange a versão do Java.

24 24 O código fonte das duas versões do Java (Android e convencional) é semelhante, porém, o código intermediário da plataforma Android difere do Java convencional no que tange à arquitetura de execução do código, ou seja, a forma como o Java no Android executa é diferente do mesmo processo em Java Convencional (Lehmann, 2010). Enquanto a plataforma Android executa em máquina virtual Dalvik, o Java em ambientes com Sistemas Operacionais (computadores e notebooks) executa em uma máquina de pilha, a máquina virtual Java convencional. A Figura 3 mostra um exemplo de ambiente de programação Java para Android. Figura 3 - Ambiente de programação. Fonte (Android Developers, 2010) Depois das aplicações Android terem sido escritas em Java, o código das mesmas é compilado e empacotado juntamente com outros recursos utilizados pela aplicação em um arquivo com extensão.apk, por onde ocorre a distribuição para os usuários instalarem a aplicação em questão em seus próprios dispositivos móveis (Martins, 2009).

25 APIs Em Android, as APIs permitem uma modificação completa através da programação de seu conteúdo. Um ponto positivo é sua otimização, com foco nos pacotes e com bom aproveitamento, deixando de lado pacotes lentos e pesados. Com as APIs pode-se criar a interface com o usuário, permitindo toda a funcionalidade que o utilizador precisa (Lecheta, 2009). As principais APIs utilizadas neste trabalho foram: * Android.util: contém classes utilitárias. * Android.app: APIs de alto nível relacionadas ao modelo da aplicação. *Android.os: contém serviços relacionados ao Sistema Operacional, passagem de parâmetros e comunicação entre processos. 2.2 Computação Pervasiva A Computação Pervasiva é um novo paradigma que contempla cenário computacional onde aplicações, com novas funcionalidades formam ambientes inteligentes (Augustin, 2009). Estas aplicações são distribuídas e utilizam recursos de uma grande variedade de dispositivos interligados em uma rede altamente heterogênea a fim de tornar as aplicações cada vez mais sensíveis ao usuário (Ries, 2007). O conceito de Computação Pervasiva também se define por possuir meios de computação distribuídos no ambiente de trabalho dos usuários de forma perceptível ou não (Bolsoni, 2009). A Computação Pervasiva está diretamente relacionada à integração de dispositivos, informações e sistemas. Aplicações pervasivas caracterizam-se pela adaptação diante das constantes mudanças em seu estado de execução, geradas pelos ambientes altamente dinâmicos em que são executadas (Lopes, 2008). A fim de trabalhar este dinamismo e tendo a necessidade de cada vez mais responder às mudanças em seu estado de execução, as aplicações precisam ter capacidade de contexto e adaptação. Contexto pode ser definido como um conjunto de informações, que combinadas caracterizam entidades consideradas importantes na relação entre usuários e aplicações (Dey and Abwod, 2000). Este contexto é de fundamental importância na definição e uso da computação pervasiva.

26 26 Ambiente pervasivo é o local onde aplicações pervasivas interagem com os usuários, de forma invisível e onipresente, como pode ser observado na Figura 4. Figura 4 Ambiente Pervasivo (Cunha et al, 2011) Um ambiente é representado por um conjunto de entidades, como dispositivos, usuários, redes e locais que sejam relacionados ao contexto computacional da aplicação (Ramón, 2002). Ambientes pervasivos podem ser utilizados em diversas áreas do conhecimento, como por exemplo, (Ries, 2007): ambientes acadêmicos, ambientes corporativos, ambientes turísticos, ambientes residenciais, ambientes para negócios, e ambientes hospitalares. O paradigma da Computação Pervasiva impõe novos requisitos de operação aos sistemas. O trabalho realizado por Augustin (2004) elencou um conjunto de requisitos de sistemas pervasivos. Estes requisitos são apresentados a seguir: * Inferir intenção do usuário: O sistema deve deduzir a intenção do usuário; * Gerenciar pró-ativamente as atividades do usuário: O sistema deve estar preparado para responder às necessidades do usuário; * Mover estado de execução entre diversas plataformas e estados de contexto; * Tornar dados e códigos disponíveis em qualquer lugar, em qualquer formato. As redes pervasivas caracterizam-se por níveis muito elevados de heterogeneidade para que sejam capazes de executar aplicações com desempenho satisfatório e ainda se conectar a vários tipos de dispositivos. Isso implica em uma

27 27 rede com diversas subredes, onde cada uma possui um protocolo de comunicação diferente da outra (Ries, 2007). Com base nestas informações sobre Computação Pervasiva, percebe-se o quão útil ela pode ser nas diversas áreas do conhecimento, inclusive na área da logística, que pode ter na Computação Pervasiva, um grande aliado no seu processo de gerenciamento. Na parte da logística, ainda há inúmeros problemas, falhas e até mesmo prejuízos justamente por não haver um método que atualize dados em tempo real, para que o seu gerenciamento seja mais preciso e correto, ou pela exigência de hardwares específicos para o controle de logística (Ballou, 2004).

28 28 3. LOGÍSTICA E COMPUTAÇÃO APLICADA NA ÁREA DE LOGÍSTICA A área de logística passou de parte acessória e complementar ao processo produtivo para peça fundamental no posicionamento estratégico de empresas, tendo em vista o processo de criação de valor e entendimento das necessidades dos clientes, cada vez mais exigentes em termos de prazos, preços e serviços (Robles, 2001) Logística A logística se faz presente em todas as situações, sejam elas profissionais ou pessoais. Todas as áreas de qualquer empresa ou instituição têm metas e fases a serem desenvolvidas e a logística permite que essas metas se desenvolvam. Mesmo que não seja percebida (Fernandes, 2008). A logística avança dentro das empresas com a necessidade de não ser mais qualificada como um departamento secundário, sem importância; mas sim, sendo um setor que caminha para uma estratégia integrada, que tem por objetivo apoiar as necessidades operacionais. A administração deve ser um esforço integrado para atingir a satisfação do cliente pelo menor custo total. A logística realizada dessa maneira gera valor (Fernandes, 2008). Esse valor, que comprovadamente é perdido em casos de gerenciamentos de logística mal realizados (Fleury, 2012). Como pode ser observado na Figura 5, controles de logística envolvem a interligação (utilizando estratégia operacional) de três atividades principais: armazenar, transportar e distribuir. A soma dessas três atividades básicas e distintas necessita de uma grande gestão integrada a fim de formar o conjunto denominado logística (Fernandes, 2008).

29 29 Figura 5 - Estruturas e fases da operação logística. Fonte (Fernandes, 2008) A integração das fases deve ocorrer em momentos sincronizados, sendo que desencontros e/ou restrições de informações podem causar sérios problemas no controle de informações de logística. Desta forma, constata-se que quando os processos de logística são mal estruturados, há perdas consideráveis, desde perdas de produtos no transporte e danos de mercadorias até atraso nos prazos de entrega, entre outras situações. Serviços de logística executados de forma incorreta causam impactos em todas as outras áreas, desde vendas e relacionamento com clientes até segurança da própria empresa. Atrasos, danos, perdas, segurança, danos ao meio ambiente, roubos, são algumas situações ocasionadas por uma logística sem estrutura (Vieira et al, 2010). Há três razões principais que justificam a necessidade de informações precisas e a tempo para tornar eficaz um sistema logístico (Simchi-Levi, Kaminsky, 2010): * A percepção dos clientes, que informações sobre situação do pedido, disponibilidade de produtos, programação de entrega e faturamento, são elementos do serviço total ao cliente;

30 30 * A possibilidade das metas de redução de estoque na cadeia de suprimentos a serem alcançadas com a utilização de informações que possibilitem gerenciar de forma eficaz as necessidades de estoque e recursos humanos; * O aumento da flexibilidade, permitindo identificar por meio das informações (qual, quanto, como, quando e onde), os recursos que podem ser utilizados para que se obtenha vantagem estratégica. O trabalho apresentado por Paiva (2004) apresenta a existência de cinco critérios competitivos na área de operações que se relacionam à estratégia de negócios, e consequentemente, o gerenciamento de logística: custo, qualidade, desempenho de entrega, flexibilidade e inovação. Esses critérios são separados em dois grupos: * Critérios ganhadores de pedidos: distinguem empresas e instituições de acordo com a concorrência; * Critérios qualificadores: são os critérios mínimos exigidos a fim de satisfazer um padrão de desempenho e sendo definidos por um mínimo nível necessário para participar de uma concorrência. A logística possui papel muito importante dentro destes critérios e sua integração com todas as outras áreas colabora em promover a necessidade de atender sempre as pessoas de forma satisfatória e com capacidade competitiva. A competitividade é de extrema importância para que haja ganhos em qualquer empresa ou instituição (Fernandes, 2008). A Figura 6 ilustra um modelo para a logística integrar os cinco critérios competitivos. Figura 6 - Modelo competitivo. Fonte (Fernandes, 2008)

31 Computação Aplicada à Logística A área de logística exige cada vez mais uma maior eficiência na execução de seus processos. Está surgindo uma grande necessidade de encontrar formas de tornala mais eficaz e lucrativa, um dos meios encontrados é o intercâmbio eletrônico de dados (Vieira et al 2010). O intercâmbio eletrônico de dados está sendo usado como uma ferramenta estratégica pelas empresas, principalmente na relação cliente-fornecedor, podendo ser definido como o movimento eletrônico de informações entre comprador e vendedor, facilitando transações entre ambos (Silveira, 1997). Esse tipo de intercâmbio é realizado através de uma rede de acesso direto aos clientes do provedor, permitindo conexão entre os sistemas eletrônicos de informação entre empresas, independente dos sistemas e procedimentos utilizados no interior de cada uma dessas empresas (Pizysieznig Filho, 1997). As transações que mais frequentemente usam o intercâmbio eletrônico de dados são as de compras, transporte e de pedidos entre sistemas e vendedores (Lummus, 1997). O intercâmbio eletrônico de dados ajuda a conduzir negócios de ordenação, armazenamento e outras funções que eliminam gastos e papéis de trabalho (Mooney, Pittman, 1996 apud Porto, 2000b, p.7). Junto ao conceito de troca de informações de forma eletrônica, existem os sistemas de gerenciamento de informações de logística, que têm por objetivo ligar as atividades logísticas em um processo integrado, combinando hardware e software para medir, controlar e gerenciar operações logísticas (Nazário, 1999). São muitos os sistemas informatizados que dão sustentação a essa área, tais como: * ERP (Enterprise Resource Planning/Sistemas Integrados de Gestão Empresarial): Ferramenta tecnológica de gestão empresarial, utilizada por empresas de vários países. Os destaques ficavam na área administrativa, entre os quais Contabilidade, Controle Patrimonial, Estoque, Contas a Pagar/Receber e Folha de Pagamento (Jesus, Oliveira, 2007). * MRP (Material Requirement Planning/Planejamento das necessidades de materiais): sistema de controle de inventário e produção que assiste a optimização da

32 32 gestão de forma a minimizar os custos, mas mantendo os níveis de material adequados e necessários para os processos produtivos da empresa (Jesus, Oliveira, 2007). * MRP II (Manufacturing Resource Planning II/Planejamento de Recursos de Fabricação II): Sistema MRP com alguns incrementos: o Gerenciamento dos Recursos Humanos, Vendas e Distribuição, Finanças e Controladoria (Padilha, Marins, 2005). * EDI (Electronic Data Interchange/Intercâmbio Eletrônico de Dados): Tem por principal objetivo a troca de documentos comerciais, através de computadores, entre empresas, tendo a possibilidade de envolver os setores financeiro, comercial e industrial (Cavalcanti, 1995). * TMS (Transportation Management System/Sistema de Gerenciamento de Transportes): importante ferramenta que auxilia nos processos de planejamento, execução e controle das atividades relativas à: Consolidação de carga, expedição de cargas, emissão de documentos, entregas e coletas de produtos, rastreabilidade da frota e de produtos, auditoria de fretes, apoio à negociação, planejamento de rota, monitoramento de custos e nível de serviço, planejamento e execução de manutenção da frota (Cavalcanti, 2011). * WMS (Warehouse Management System/Sistema de Gerenciamento de Armazém): responsável pelo gerenciamento da operação do dia-a-dia de um armazém. Sua utilização está restrita a decisões totalmente operacionais, tais como: definição de rotas de coleta, definição de endereçamento dos produtos, entre outras (Guarnieri et al, 2006). Isso acontece porque o fator mais crítico da logística é a informação, e para a obtenção de informações precisas e no tempo necessário é preciso um sistema eficiente, o que só é possível com a TI presente (Pereira et al 2010). A Figura 7 apresenta um exemplo de interligação entre redes de fornecedores e subfornecedores.

33 33 Figura 7 - Rede Globalizada de logística hoje (Machline, 2011) A aplicação de tecnologias provenientes da computação melhora os processos de gerenciamento, interfaces e o inter-relacionamento entre processos da área de logística; por exemplo, quando a solicitação da produção está associada a dados de vendas. A logística dos fornecedores em tempo real causa um entrosamento, que pode não só criar eficiência de produção, mas também melhorar o relacionamento com os clientes, por meio de uma resposta mais rápida a essas solicitações (Graeml, 2000). O fluxo de informações é um elemento de grande importância nas operações logísticas. Mas, mesmo com a utilização da computação no setor, ainda há problemas que precisam ser solucionados. Um dos principais pontos é o fato de que a grande maioria dos sistemas de gerenciamento não são integrados por completo, dificultando a troca segura de informações (Nazário, 1999). Para solucionar este problema de integração, entre outros, surge como objeto de estudo a integração de tecnologias provenientes da Computação Pervasiva. Utilizando o gerenciamento de processos de logística integrados e unindo-os à Computação Pervasiva, pode-se obter informações oportunas, que, de acordo com Rezende (2002), são aquelas informações geradas e forma antecipada, completa, útil

34 34 e com qualidade, para uma tomada de decisão. Assim processos de logística poderão ser muito mais eficientes. Através destes estudos acredita-se que a melhor forma de gerenciar de forma eficaz todos os processos que envolvem a logística seja através do uso da Computação Pervasiva. A próxima subseção apresenta um estudo sobre os trabalhos relacionados com a integração de Computação Pervasiva e a área de logística Trabalhos relacionados Atualmente estão sendo realizados vários trabalhos na área da computação pervasiva. Entre eles destaca-se o trabalho de Saccol et al (2007), que apresentam uma pesquisa sobre estado-da-arte e oportunidades de pesquisa nas áreas de computação móvel e ubíqua. Os autores apontam como principais tecnologias discutidas, as tecnologias móveis / sem fio e telefones celulares com acesso à internet. A amostra realizada neste estudo indica que a área das tecnologias móveis, sem fio e ubíquas ainda tem poucos estudos, indicando a oportunidade e possibilidade de pesquisas futuras que sejam capazes de oferecer contribuições consistentes sobre o uso desta tecnologia. Já entre os principais temas abordados ainda pelos mesmos autores destacamse os desafios tecnológicos em relação à computação ubíqua e os efeitos do uso de tecnologias móveis/sem fio sobre trabalhadores. Na área da computação pervasiva aplicada à logística, destaca-se o trabalho apresentado por Hwang (2006), que analisa um novo paradigma de e-logistic, um sistema de logística baseado em tecnologia ubíqua.

35 35 Figura 8 - Exemplo de tecnologia ubíqua no sistema de logística. Fonte (Hwang, 2006) A Figura 8 apresenta um exemplo de tecnologia ubíqua no sistema de logística aplicado em sistema de logística industrial. Nela, as etiquetas RFID são usadas em processo da fabricação, armazém e entrega. Mesmo utilizando sistema ubíquo, as características SCM dos clientes e da parte logística não se alteram. Os principais dados transmitidos por dispositivos móveis e rede sem fio. O trabalho realizado por Hwang (2006) apresentou três pontos fundamentais na união da Computação Ubíqua e o SCM: auto crescimento, autonomia e sensibilidade ao contexto. Tais pontos permitem uma tomada de decisão proativa, agilizando o processo de gerenciamento de logística mais confiável e eficaz. Foi feita uma análise do mapa de tendência técnica de onipresença e sua aplicação em SCM/Sistemas Logísticos (Supply Chain Management Gestão de Cadeia de Logística. Métodos e instrumentos que visa automatizar e melhorar o abastecimento.) ser capaz de apoiar o projeto do sistema. Ao final, o trabalho sugeriu um planejamento de pesquisa cooperativa para o Sistema de Gerenciamento de Logística. Essa pesquisa seria feita unindo o centro de Computação Ubíqua do governo do seu país, universidades e indústrias.

36 36 Outro estudo realizado na área de computação pervasiva aliada à logística (Kim et al, 2010), apresenta parte de um sistema de logística para um novo mercado de Ocean Blue, uma estratégia de negócio na qual se visa atrair um mercado previamente não explorado e explorá-lo, eliminando a concorrência e maximizando os lucros. A Figura 9 mostra uma infraestrutura logística baseada em sistema ubíquo. Figura 9 - Infraestrutura logística baseada em ambiente ubíquo. Fonte (Kim et al, 2010) A estratégia do Ocean Blue oferece formas de escapar da intensa competição no mesmo espaço de mercado, mas de forma a haver menor concorrência. A ideia proposta consiste em partir para novos mercados, em que a concorrência é pouca ou nenhuma, ou seja, gerar um ciclo de inovação permanente. O serviço de logística que seja feito de forma sistemática e eficiente tornou-se um dos principais serviços de suporte de empresas, utilizando estratégias inovadoras a nível mundial. Essas estratégias incluem expansão da tecnologia e internet das empresas, propondo novos modelos de negócio baseados em sistemas de informação para logística, incluindo implementação de rádio frequência baseados em sistemas de logística ubíquos. Este estudo mostra o modelo CJ-GLS (CJ-Global Logistics Service), um negócio com estratégia Ocean Blue para mostrar como uma empresa pode reforçar sua vantagem competitiva para se mover em direção a um menor espaço no mercado competitivo novo pela utilização de tecnologias de informação.

37 37 Com base nos projetos apresentados, suas propostas, e principalmente a carência de propostas concretas usando computação móvel, em tempo real, nos processos logísticos, é apresentada no próximo capítulo uma nova ferramenta. Essa ferramenta é usada em dispositivos móveis, e abrange a troca, em tempo real, de dados e informações.

38 38 4. UMA FERRAMENTA DE CONTROLE DE LOGÍSTICA EM TEMPO REAL Com base nos estudos realizados, percebe-se claramente a necessidade de um sistema que seja capaz de gerenciar, em tempo real, os processos de logística. Para tal, foi criado um protótipo de uma ferramenta capaz de realizar tal gerenciamento. Nas próximas seções deste trabalho são apresentados todos os detalhes da ferramenta em questão Levantamento de Requisitos Cada vez mais, a logística envolve tantos setores que sem um gerenciamento correto usando a TI, não haveria mais organização e nem evolução (Vieira, et al, 2010). Esta necessidade de gerenciamento dos processos logísticos pode ser unida ao crescente desenvolvimento de estudos e aplicações na área da computação móvel e pervasiva. Com este estudo, pretende-se gerar um protótipo de um sistema que possa tratar todo o gerenciamento do processo de logística, usando o diferencial que a computação móvel proporciona. Esta aplicação deve conter a captação de dados do motorista, da viagem e do veículo através de um dispositivo móvel que contenha Sistema Operacional Android. Tais dados envolvem posição (via GPS), data e hora, entre outros; que devem ser salvos em um documento e enviados ao servidor Exist, que irá processá-los. Além da captação dos dados, a aplicação deve receber e ler documentos constantemente enviados por um servidor. Estes documentos são responsáveis por passar informações como nova viagem e seus dados: destino com trajeto em mapa, datas e horários de partida e chegada, paradas previstas, placa de veículo, tipo de carga, quantidade, tempo total de viagem, tempo de viagem já realizados. Estes mesmos dados são apresentados nas próximas três viagens previstas e nas últimas três realizadas.

39 39 Outro diferencial que esta aplicação apresenta é a possibilidade de gerar e enviar um relatório ao servidor informando que houve alguma alteração necessária no percurso previsto. Como, por exemplo, pode-se citar uma parada para troca de pneus e, consequentemente, uma mudança em hora e, até mesmo, data de chegada, desvios no trajeto, entre outros. Com o constante envio de dados, mesmo que ocorram alterações não previstas e o motorista não envie o relatório, no servidor estes dados são processados e pode-se tomar medidas cabíveis com relação a estas alterações. Para tal, utilizou-se o sistema operacional Android, com a versão 2.3.4, oferecendo compatibilidade com a versão Modelagem de dados A modelagem de dados deste estudo foi feita visando a melhor forma de atender às necessidades de troca de informações em tempo real. Foi pensado na realidade vivenciada por quem trabalha no dia-a-dia com transportes. Para atender a essas necessidades, foi pensada uma estrutura com transportadores, todos portando dispositivos móveis. Assim torna-se concreta a possibilidade de recebimento e envio de informações. Além disso, buscou-se apresentar a rede sem fio como forma de troca de dados, possibilitando envio e recebimento de dados em qualquer ponto que o portador do dispositivo móvel esteja, desde que tenha sinal de internet. A Figura 10 representa a estrutura com a modelagem dos dados realizada para este trabalho.

40 40 Figura 10 - Modelagem dos dados da aplicação proposta Implementação Após a modelagem dos dados necessários, iniciou-se a etapa de desenvolvimento de um protótipo para a utilização de informações geográficas em tempo real para a área de logística. Para apresentar os resultados pretendidos nesta aplicação, foi necessária uma divisão ao longo do desenvolvimento, sendo que houve uma aplicação móvel e a exportação dos dados coletados para arquivos XML. Estes arquivos por sua vez são armazenados no banco de dados exist. Na aplicação móvel, foram criadas interfaces via XML, depois feita a parte lógica, com as classes e o controle do funcionamento das classes, e por fim, o envio dos documentos gerados para o exist Aplicação Móvel O desenvolvimento da aplicação móvel foi o principal foco deste trabalho. Para que o mesmo executasse da forma desejada e atingisse todos os objetivos propostos, foram criadas diversas interfaces, buscando sempre ser o mais amigável

41 41 possível, com as classes contendo os processos e os controles, responsáveis pela correta execução das classes. Ao todo foram criadas 21 (vinte e uma) interfaces, responsáveis por exibir na tela informações, botões, avisos e até mesmo o mapa ao usuário do dispositivo móvel. Pode-se destacar algumas delas, como por exemplo: * Menu: mostra no celular as opções ao usuário de visualizar dados da viagem atual, das próximas viagens ou das anteriores, além de mostrar ao usuário a opção de gerar um relatório sobre alguma alteração realizada ao longo do percurso. * Mapa: exibe um mapa na tela do celular contendo o trajeto planejado para a viagem em questão. *Av_viagem_iniciada: apresenta um aviso, indicando que há uma nova viagem a ser iniciada pelo motorista responsável por aquele dispositivo móvel. Na parte lógica estão todas as classes que tem funções de realizar algum processamento de informações. Ao total foram criadas 15 (quinze) classes, que são: *Aviso_a_viagem_comecou: é uma classe responsável por exibir na tela um aviso depois que o motorista iniciar nova viagem. Esta mensagem é o informe de que a viagem começa a partir deste momento. Segue abaixo um trecho do código desta classe. AlertDialog.Builder dialog = new AlertDialog.Builder(this); dialog.setmessage("a Viagem Começou!"); dialog.setpositivebutton("ok", new DialogInterface.OnClickListener() *Aviso_viagem_iniciada: classe que mostra um aviso na tela avisando que há uma nova viagem. O motorista, ao vê-la, tem a opção de visualizar os detalhes da viagem ou sair e visualizar mais tarde. Um trecho de código pode ser visualizado no seguinte trecho, sendo um aviso consideravelmente importante, pois assim o usuário do dispositivo móvel saberá quando chegou uma nova viagem. AlertDialog.Builder dialog = new AlertDialog.Builder(this); dialog.setmessage("você tem uma nova viagem"); dialog.setpositivebutton("ver", new DialogInterface.OnClickListener() { *Dados_Motorista: Exibe na tela os dados do motorista para a viagem, como por exemplo, paradas previstas, tempo de viagem atual e tempo de viagem previsto. Em seguida pode-se visualizar um trecho do código desta classe.

42 42 findviewbyid(r.id.autocompletetextview1); paradas.settext(paradasp); TextView tempviatual = (TextView) findviewbyid(r.id.autocompletetextview2); tempviatual.settext(tempatual); TextView tempviprev = (TextView) findviewbyid(r.id.autocompletetextview3); tempviprev.settext(tempprev); *Dados_Veiculo: Mostra os dados do veículo que deve ser usado na viagem, como por exemplo, placa, carga, quantidade da carga, posição inicial e final, entre outros. Os códigos das classes Dados_Veículo e Dados_Viagem são muito semelhantes e seguem o mesmo padrão que a classe Dados_Mostorista. *Dados_Viagem: Essa classe é responsável por exibir dados da viagem, como data e hora de partida e chegada. *H_PV: Esta classe mostra ao usuário a lista com as três (3) últimas viagens realizadas ou as próximas três, dependendo de um valor enviado em outra classe. Abaixo pode-se visualizar um trecho deste código, onde o usuário seleciona a viagem desejada. ItemListView item = adapterlistview.getitem(arg2); Toast.makeText(this, "Você Clicou em: " + item.gettexto(), Toast.LENGTH_LONG).show(); Intent intent = getintent(); clique = intent.getstringextra("clique"); *Mapa: Exibe na tela um mapa com o trajeto previsto para a nova viagem que está sendo iniciada. Segue abaixo um trecho do código, responsável por gerar e exibir o mapa na tela. uri Uri.parse("http://maps.google.com/maps?&saddr= , &daddr= ,-51.58"); *Mostra_H_PV: Mostra na tela os dados da viagem anterior ou próxima que for selecionada pelo usuário. Abaixo segue um trecho do código desta classe mostrando como exibe os dados. Intent intent = getintent(); nome = intent.getstringextra("nome"); data_sai = intent.getstringextra("data_sai");... TextView view = (TextView) findviewbyid(r.id.historicoview1); view.settext("nome: "+nome); TextView view1 = (TextView) findviewbyid(r.id.historicoview2);

43 43 view1.settext("saída: "+data_sai); *Pega_Data_Hora: Pega a data e a hora atual do dispositivo móvel. A data e hora do dispositivo móvel pode ser pega usando o código citado logo abaixo. O retorno dado quando esta classe for chamada é uma String contendo data e hora, nos padrões americanos. Date d = new Date(); *Pega_GPS: Classe que pega a posição do GPS do dispositivo móvel. Abaixo pode ser visualizado um trecho do código que realiza esta função. this.c = c; lm = (LocationManager)c.getSystemService(Context.LOCATION_SERVICE); location = lm.getlastknownlocation(locationmanager.gps_provider); *Recebe_H_PV: Classe que recebe o conteúdo do documento das viagens já realizadas ou ainda por realizar, de acordo com o que o usuário selecionar. Esse conteúdo é salvo em vetores de acordo com os dados. Abaixo pode-se visualizar a forma de armazenamento em vetores: arq = new File(Environment.getExternalStorageDirectory(), lstrnomearq); BufferedReader br = new BufferedReader(new FileReader(arq)); while ((lstrlinha = br.readline())!= null) { if (!txtler.equals("")) { txtler = txtler.concat("\n"); } linha = xstream.fromxml(lstrlinha).tostring(); Nome[0] = vet1[1]; Nome[1] = vet2[1]; Nome[2] = vet3[1]; if (a<19){ vet1[a] = linha; } if (a>18 && a<38){ vet2[xx] = linha; xx++; } if (a>37){ vet3[xxx] = linha; xxx++; }... Em seguida, verifica-se qual foi a viagem selecionada e exibe seus dados na tela, como pode ser observado nos trechos de código abaixo. if(numero.equals(viagem1)){ num = 0;

44 44... public void getnome(){ nome= Nome[num]; } *Recebe_Xstream: Recebe dados da nova viagem, armazena em um vetor e retorna quando for instanciada. A forma de leitura e armazenamento segue o mesmo padrão que o usado na classe Recebe_H_P_V, porém com apenas um vetor que armazene tudo, pois são dados de apenas uma viagem. *Relatorio: Classe responsável por salvar em um documento xml os dados do relatório gerado pelo usuário. Abaixo pode ser visto um trecho do código, mostrando como é feita a inserção dos dados pelo usuário para geração de relatório. texto = (EditText) findviewbyid(r.id.edittext1); Button relatorio = (Button) findviewbyid(r.id.button1); relatorio.setonclicklistener(new OnClickListener() { public void onclick(view v) { documenta = texto.gettext().tostring(); Além disso, esse documento é salvo em um arquivo xml, como pode ser observado no trecho de código abaixo. arq = new File(Environment.getExternalStorageDirectory(), lstrnomearq); System.out.println(arq.toString()); FileOutputStream fos; dados = relatorio.getbytes(); fos = new FileOutputStream(arq); fos.write(dados); fos.flush(); fos.close(); *Viagem_iniciada: Esta classe contém os botões viagem, motorista, veículo, iniciar e sair, e direciona em caso de clique. Todas as classes criadas na implementação da aplicação móvel podem ser visualizadas mais detalhadamente na Figura 11, que representa o diagrama de classes da aplicação.

45 Figura 11 - Diagrama de Classes da aplicação Móvel 45

46 46 O controle contém as classes que são responsáveis por ter sob seu domínio as classes da parte lógica, gerenciando para que as mesmas realizem as tarefas de forma correta e ordenada. Foram criadas 7 (sete) classes de controle, que são: *AdapterListView: Atualiza a lista de visualização das viagens já realizadas ou ainda por realizar. Segue abaixo um trecho do código. ItemListView item = itens.get(position); view = minflater.inflate(r.layout.item_listview, null); ((TextView)view.findViewById(R.id.text)).setText(item.getTexto()); ((ImageView)view.findViewById(R.id.imagemview)).setImageResource(item.getI conerid()); return view; *ItemListView: Classe que é responsável por gerenciar o que estará escrito nos ícones exibidos quando o motorista quiser visualizar as viagens já realizadas ou que as que ainda estão por vir. *Manda_Relatorio: Esta classe instancia a classe Relatorio, salva o conteúdo da variável documento em um arquivo xml via Xstream. Abaixo pode ser visualizado uma parte do código, onde é instanciada a classe Relatório. Relatorio rel = new Relatorio(); relatorio = rel.gettexto(); documento = xstream.toxml(relatorio); salvararquivo(documento, relatorio); *Manda_Xstream: Classe que instancia as classes Pega_Data_Hora, Pega_GPS, Aviso_a_viagem_comecou. Além disso, salva o retorno das classes em um documento e salva o documento em xml. Abaixo foram tirados trechos do código para mostrar como a classe são pegos os dados do GPS e salvos em um documento. XStream xstream = new XStream(new DomDriver()); Pega_Data_Hora datahora = new Pega_Data_Hora(); pdatahora = datahora.getdatahora().tostring(); documento = xstream.toxml(pdatahora); salvararquivo(documento, pdatahora); private void salvararquivo(string documento, String timestamp_arquivo) { File arq = null; String lstrnomearq= "envio.xml"; byte[] dados; try {

47 47 arq = new File(Environment.getExternalStorageDirectory(), lstrnomearq); System.out.println(arq.toString()); FileOutputStream fos; dados = documento.getbytes(); fos = new FileOutputStream(arq); fos.write(dados); fos.flush(); fos.close(); *Menu: Mostra na tela os botões de viagem atua, próximas viagens, histórico, relatório e sair, e direciona segundo o clique o usuário. O código do menu é simples, com geração de botões e direcionamentos. *Principal: Gerencia se há uma nova viagem ou não. Além disso, essa classe instancia as classes recebe_xml, Manda_Xstream e Recebe_Xstream. Se houver uma nova viagem, chama a classe Aviso_Viagem_Iniciada, caso contrário, chama a classe Menu. Segue abaixo trechos sobre como são instanciadas essas classes. public void mandaxtream() { Manda_Xstream manda = new Manda_Xstream(this); } public void receber_xml(){ Recebe_Xstream recebex = new Recebe_Xstream(); } public void recebe() { Recebe_xml recebe = new Recebe_xml(); nov_viagem = recebe.getavisonovaviagem(); if (nov_viagem.equals("sim")) { a = 1; } else { a = 2; } } if (this.getintent().getbooleanextra("fechar", false)) { finish(); } else { mandaxtream(); receber_xml(); recebe(); if (a == 1) {

48 48 Intent myintent = new Intent(Principal.this, Aviso_viagem_iniciada.class); Principal.this.startActivity(myIntent); } if (a == 2) { Intent myintent = new Intent(Principal.this, Menu.class); Principal.this.startActivity(myIntent); } } } public void onresume() { super.onresume(); if (this.getintent().getbooleanextra("fechar", false)) { finish(); *Recebe_xml: Classe que gerencia se há uma nova viagem ou não.

49 Figura 12 Fluxo de informações entre as interfaces 49

50 50 A Figura 12 representa o diagrama de sequencia das interfaces desenvolvidas neste protótipo. Como pode ser visualizado, quando o usuário iniciar a aplicação irá aparecer uma tela inicial contendo as opções de viagem atual, próxima viagem, histórico, relatório, e sair. Se clicar em sair a aplicação irá fechar-se. Caso clique em relatório irá aparecer uma tela onde o usuário poderá inserir qualquer informação sobre alguma eventualidade e enviar, voltando a tela inicial. Ainda na tela inicial, se clicar em viagem atual, o usuário verá uma tela com as opções de viagem, motorista, veículo, iniciar e sair. Caso clique em sair, a aplicação irá fechar-se. Se clicar em iniciar, estará dando início à viagem e o tempo começará a contar. Porém se clicar em viagem, aparecerá uma tela com os dados da atual viagem e um botão que abre uma tela com mapa. Clicando em motorista, verá os dados do motorista; e se o usuário clicar em viagem, verá os dados da viagem. Se o usuário clicar em próxima viagem ou histórico, no menu inicial, visualizará uma tela com as três próximas viagens ou as três últimas, dependendo do botão que clicou, e depois de selecionar uma delas, o usuário verá uma tela com as informações da viagem que selecionou. A Figura 13 representa o diagrama de sequência das classes usadas no protótipo, mostrando quando e como são instanciadas as classes. A grande maioria das classes é instanciada pela classe principal, que é a classe inicial da aplicação.

51 Figura 13 - Diagrama de Sequência da Aplicação 51

52 52 A Figura acima é o diagrama de sequência da aplicação criada. Nela são mostradas as possíveis decisões e suas implicações na aplicação. Não é necessariamente um caso de uso, pois aponta toda e qualquer opção dada ao usuário e o funcionamento da aplicação com base nisso. O diagrama se inicia com o usuário iniciando-a, através da classe Principal, que inicia por si mesma. A partir disso, podese visualizar os resultados de acordo com as decisões Exportação de XML para o Banco de Dados exist exist é um banco de dados de código aberto, ele pode ser integrado em aplicações que utilizam XML. A ferramenta é completamente desenvolvida em Java podendo, assim, ser oferecida de varias maneiras (Pasquali, Duarte, 2009). A ferramenta exist permite a realização de persistência e recuperação de informações em formato XML de forma simples e eficaz. É distribuída de 2 (duas) formas: um JAR executável ou um WAR, sendo que o JAR executável e utiliza o componente Jetty como container, não sendo necessárias instalações adicionais (Lecheta, 2009). A Figura 14 ilustra a interface do exist. Figura 14 Interface do exist

53 53 Esta ferramenta, orientada a XML é responsável por receber e armazenar os documentos XML recebidos do celular e enviar para o mesmo os documentos XML com os novos dados. A Figura 15 mostra em exemplo de arquivo xml que o protótipo criado gera. Esse exemplo seria os dados de um relatório sobre uma eventualidade ocorrida ao longo do percurso. Figura 15 - Xml de relatório do protótipo Ainda como exemplo, pode visualizado abaixo a xml gerada com dados de GPS, data e hora atuais do usuário do dispositivo móvel. <datahora>tue Sep 18 16:54:53 BRT 2012</ datahora > <latitude> </latitude><longitude> </longitude> Além de receber documentos xml, o exist também envia. Para enviar dados em uma aplicação Java para o exist, cria-se uma classe Java, como pode ser visto nos trechos de código abaixo: // inicializando driver String driver = "org.exist.xmldb.databaseimpl"; Class cl = Class.forName(driver); Database database = (Database)cl.newInstance(); DatabaseManager.registerDatabase(database); // tenta pegar a colecao Collection col = DatabaseManager.getCollection(URI + colecao); // cria o novo XMLResource XMLResource document = (XMLResource) col.createresource(f.getname(), "XMLResource");

54 54 document.setcontent(f); System.out.print("> Armazenando documento '" + document.getid() + "'..."); col.storeresource(document); Depois de visualizar como os dados são enviados para o exist, segue abaixo, na Figura 16, um arquivo xml que o dispositivo móvel do transportador recebe, contendo os dados da nova viagem a ser feita. Figura 16 - Xml com dados da nova viagem 5. CENÁRIO DE USO E TESTES REALIZADOS

55 55 Depois da etapa de desenvolvimento do protótipo do sistema de gerenciamento de logística em tempo real, realizamos um conjunto de testes para medir tempos de resposta de classes essenciais e definimos um cenário de uso, com as possíveis situações de uso Testes Para indicar o tempo de resposta de cada classe, foram inseridas algumas linhas de programação no início e no final das mesmas, como pode ser observado no trecho de código apresentado a seguir, referente à classe Pega_GPS. public class Pega_GPS { public Pega_GPS(Context c) { long tempoinicial = System.currentTimeMillis(); this.c = c; lm = (LocationManager)c.getSystemService(Context.LOCATION_SERVICE); location = lm.getlastknownlocation(locationmanager.gps_provider); System.out.println(lat+" "+lon); lat = location.getlatitude(); lon = location.getlongitude(); long tempofinal = System.currentTimeMillis(); System.out.println("tempo do GPS: "); System.out.println( tempofinal - tempoinicial ); } Os tempos de respostas referentes a execução de determinadas classes, são apresentados na Figura 17. Figura 17 - Tempos de execução A classe Pega_GPS, que tem função de retornar latitude e longitude atuais, teve um ótimo tempo de execução. Tal tempo não interefere no funcionamento do dispositivo e se torna imperceptível ao usuário. O mesmo ocorre com a classe Pega_Data_Hora, que retorna data e hora atuais. Seu tempo de execução foi de, em média, 2 (dois) milissegundos, sendo ainda mais ágil que o tempo da classe Pega_GPS.

56 56 Já os tempos de classes com maiores funcionalidades, o tempo foi um pouco maior. Na classe Recebe_Xstream, que recebe e lê o arquivo XML vindo do banco de dados exist, armazena os dados em um vetor e retorna quando for instanciado, o tempo de execução foi de 90 milissegundos. Um valor consideravelmente maior que os tempos das classes anteriores, mas não gerou nenhuma espécie de travamento ou lentidão no uso do dispositivo. Sua execução ocorreu normalmente. Acredita-se que o tempo está bom, não sendo necessário melhorá-lo. Na classe Manda_Xstream, cuja função é instanciar as classes que pegam posição do GPS, data e hora atuais, armazenar estes dados em um documento XML, o tempo de execução foi em torno de 50 milissegundos. Um tempo bom, sem interferência no uso do dispositivo. Já na classe Mapa, que gera o trajeto e exibe-o na tela, para que o usuário do sistema saiba qual o caminho correto a seguir, teve-se o maior tempo médio de execução: 170 milissegundos. O tempo não suficiente para travar o dispositivo, porém poderia ser menor. Esse tempo é maior em função do mapa ser gerado pela Google. Talvez fosse interessante a criação de um mecanismo que faça essa geração do mapa no site da Google ser um pouco mais ágil. 5.2 Cenário de Uso Para validar a utilização do protótipo proposto para a integração de dados geográficos na área de logística, definiu-se um cenário de utilização do sistema. Esse cenário foi testado usando um dispositivo móvel com Android da marca Samsung, modelo Galaxy Ace. Seus resultados são apresentados a seguir. Inicialmente, o motorista recebe um aviso, informando que há uma nova viagem a ser realizada pelo mesmo. Este aviso pode até mesmo ser ignorado, entretanto o motorista saberá que a viagem está aguardando o início. Após clicar no aviso, o motorista verá em sua tela várias opções: Viagem, Veículo, Motorista, Iniciar e sair. Essa tela pode ser visualizada na Figura 18.

57 57 Figura 18 - Tela com os dados da Viagem Se o motorista quiser verificar os dados da Viagem que está iniciando, irá clicar em Viagem. Na tela que aparecer, ele poderá ver todas as informações, como data e hora de saída e chegada, destino. Além disso, poderá verificar um mapa, gerado com base nestes dados, com o melhor caminho a ser seguido, de acordo com as necessidades da transportadora e da empresa. A Figura 20 ilustra a exibição dos dados da viagem e a Figura 19 ilustra o mapa com o trajeto da viagem em questão. Figura 20 - Dados da Viagem Figura 19 - Mapa da Viagem

58 58 Se na tela de Viagem Atual o usuário clicar em veículo, poderá visualizar os dados do veículo, como placa, carga, quantidade, posição final e inicial, quilometragem atual, entre outros. Se clicar em motorista, o usuário poderá ver os dados do motorista para realização desta viagem em específico, como paradas e tempo previsto, tempo de viagem atual. As telas são muito semelhantes à que mostra os dados da viagem. Ainda na tela de viagem, há ainda a opção de dar o início à viagem, clicando em iniciar. O usuário receberá um aviso, como pode ser observado na Figura 21. Figura 21 - Aviso: A viagem Começou Após estes fatos o motorista inicia seu trajeto, tendo ainda outras opções que poderiam ser verificadas quando quisesse, como dados de viagens já realizadas ou ainda por realizar. Ao longo do percurso, acontece uma eventualidade ao motorista: o pneu furou. Tal situação ocasiona várias alterações em seu trajeto, como mudança de horários e até mesmo dia; mudança na rota para localizar uma borracharia, entre outras coisas que podem acontecer. Nesse caso, o motorista seleciona a opção Relatório no menu do aplicativo e informa o imprevisto acontecido e que tipo de alteração poderá ocasionar. A Figura 22 mostra a geração de relatório sobre o pneu furado.

59 59 Figura 22 - Tela de inserção de relatório Clicando no botão enviar, será enviado este relatório ao servidor que processará a informação e irá aparecer novamente a tela inicial. Caso clique em Sair, a aplicação será fechada. Acredita-se que a aplicação tenha correspondido aos ideais propostos. O usuário do dispositivo móvel envia dados constantemente atualizados sobre onde está, e recebe dados sobre para onde deve ir, como e quando; além de saber viagens futuras e conferir as já realizadas. Com essas funcionalidades pode-se gerenciar de forma segura e em tempo real todo o processo da viagem, prever situações e risco e prevenilas. Como pontos a serem melhorados, pode-se citar a parte gráfica e uma maior interação com o usuário do dispositivo móvel. Já como sugestão de implementação futura, poderia ser pensada a criação de avisos quando o usuário não realizar alguma função corretamente, como mudar a rota de viagem, além de implementar com maior precisão o banco de dados exist e uma aplicação servidora específica para gerenciar as informações recebidas pelo dispositivo.

Introdução a Computação Móvel

Introdução a Computação Móvel Introdução a Computação Móvel Computação Móvel Prof. Me. Adauto Mendes adauto.inatel@gmail.com Histórico Em 1947 alguns engenheiros resolveram mudar o rumo da história da telefonia. Pensando em uma maneira

Leia mais

API's e Aplicações para Android

API's e Aplicações para Android API's e Aplicações para Android Computação Móvel Prof. Me. Eng. Adauto Mendes adauto.inatel@gmail.com Introdução As API s estabelecidas para Android permitem total modificação por meio de programação do

Leia mais

Aula 1 - Introdução e configuração de ambiente de desenvolvimento

Aula 1 - Introdução e configuração de ambiente de desenvolvimento Aula 1 - Introdução e configuração de ambiente de desenvolvimento Olá, seja bem-vindo à primeira aula do curso para desenvolvedor de Android, neste curso você irá aprender a criar aplicativos para dispositivos

Leia mais

Pré-Projeto do Trabalho de Conclusão de Curso Tiago Garcia Pereira 1. INTRODUÇÃO

Pré-Projeto do Trabalho de Conclusão de Curso Tiago Garcia Pereira 1. INTRODUÇÃO UM PADRÃO ABERTO DE SOFTWARE PARA COMPUTAÇÃO MÓVEL: UM ESTUDO SOBRE GOOGLE ANDROID 1. INTRODUÇÃO O aumento do número usuários de dispositivos móveis atrai cada vez os desenvolvedores a produzir aplicações

Leia mais

A plataforma Android: Uma Introdução

A plataforma Android: Uma Introdução A plataforma Android: Uma Introdução Android Iniciativa da Google de prover uma plataforma aberta para Web móvel Open Handset Alliance Associação de um grupo bastante heterogêneo de empresas (operadoras,

Leia mais

Android. Marcelo Quinta @mrquinta

Android. Marcelo Quinta @mrquinta Android Marcelo Quinta @mrquinta Oi, eu sou o Marcelo Quinta Pública Público-privada Privada Próprio negócio Voluntariado Parabéns à organização do GO-GTUG Tablets 160% de aumento em 2011 Smartphones

Leia mais

Programação para Dispositivos Móveis

Programação para Dispositivos Móveis Programação para Dispositivos Móveis Fatec Ipiranga Análise e Desenvolvimento de Sistemas Aula 02 História do desenvolvimento de software para dispositivos móveis Dalton Martins dmartins@gmail.com São

Leia mais

Módulo I - Introdução. Faculdade Christus Sistemas de Informação 17/09/2010. Carlos Eugênio Torres Engenheiro de Informática http://cetorres.

Módulo I - Introdução. Faculdade Christus Sistemas de Informação 17/09/2010. Carlos Eugênio Torres Engenheiro de Informática http://cetorres. Módulo I - Introdução Aula 2 Carlos Eugênio Torres Engenheiro de Informática http://cetorres.com Faculdade Christus Sistemas de Informação 17/09/2010 Graduado em Ciência da Computação pela UFC, Brasil

Leia mais

PLATAFORMA ANDROID. Ariel Soares Teles arielsoaresteles@gmail.com

PLATAFORMA ANDROID. Ariel Soares Teles arielsoaresteles@gmail.com Universidade Federal do Maranhão UFMA Programa de Pós-graduação em Engenharia de Eletricidade PPGEE Área de Concentração: Ciência da Computação Disciplina: Introdução a Computação Móvel Professor: Dr.

Leia mais

Introdução Dalvik Linux 2.6. Android. Diogo de Campos, João Paulo Pizani Flor, Maurício Oliveira Haensch, Pedro Covolan Bachiega

Introdução Dalvik Linux 2.6. Android. Diogo de Campos, João Paulo Pizani Flor, Maurício Oliveira Haensch, Pedro Covolan Bachiega Android Diogo de Campos, João Paulo Pizani Flor, Maurício Oliveira Haensch, Pedro Covolan Bachiega Universidade Federal de Santa Catarina November 18, 2008 Agenda 1 Introdução 2 Dalvik 3 Linux 2.6 Introdução

Leia mais

Novas opções do Gerenciamento de Dispositivos do Windows *

Novas opções do Gerenciamento de Dispositivos do Windows * Informe Processadores Intel Core de 4ª geração e processadores Intel Atom Mobilidade com a Intel e o Windows 8.1* Novas opções do Gerenciamento de Dispositivos do Windows * O que levar em conta ao decidir

Leia mais

Fundamentos da Computação Móvel

Fundamentos da Computação Móvel Fundamentos da Computação Móvel (Plataformas Sistemas Operacionais e Desenvolvimento) Programação de Dispositivos Móveis Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus

Leia mais

Novas opções de Gerenciamento de Dispositivos do Windows *

Novas opções de Gerenciamento de Dispositivos do Windows * Informe Processadores Intel Core de 4ª geração e processadores Intel Atom Mobilidade com a Intel e o Windows 8.1* Novas opções de Gerenciamento de Dispositivos do Windows * O que levar em conta ao decidir

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

Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação. Android. Universidade Federal de Santa Catarina. 17 de dezembro de 2008

Visão geral Estrutura do sistema Ferramentas de desenvolvimento Uma aplicação. Android. Universidade Federal de Santa Catarina. 17 de dezembro de 2008 Android José João Junior Universidade Federal de Santa Catarina 17 de dezembro de 2008 Agenda 1 Visão geral 2 Estrutura do sistema 3 Ferramentas de desenvolvimento 4 Uma aplicação Visão geral Histórico

Leia mais

Como configurar e-mails nos celulares. Ebook. Como configurar e-mails no seu celular. W3alpha - Desenvolvimento e hospedagem na internet

Como configurar e-mails nos celulares. Ebook. Como configurar e-mails no seu celular. W3alpha - Desenvolvimento e hospedagem na internet Ebook Como configurar e-mails no seu celular Este e-book irá mostrar como configurar e-mails, no seu celular. Sistemas operacionais: Android, Apple, BlackBerry, Nokia e Windows Phone Há muitos modelos

Leia mais

COMPUTAÇÃO MÓVEL. Prof. M.Sc Sílvio Bacalá Jr www.facom.ufu.br/~bacala/android

COMPUTAÇÃO MÓVEL. Prof. M.Sc Sílvio Bacalá Jr www.facom.ufu.br/~bacala/android COMPUTAÇÃO MÓVEL Prof. M.Sc Sílvio Bacalá Jr www.facom.ufu.br/~bacala/android O que é computação Móvel Acesso à informação a qualquer lugar, a qualquer momento. O que é computação Móvel Tecnicamente: Processamento

Leia mais

IBM Endpoint Manager for Mobile Devices

IBM Endpoint Manager for Mobile Devices IBM Endpoint Manager for Mobile Devices Plataforma unificada para gerenciar dispositivos móveis junto com endpoints tradicionais Destaques Trata as questões de negócios e de tecnologia da segurança, da

Leia mais

O que é o Android? O que é o Android

O que é o Android? O que é o Android O que é o Android? O Android é um sistema operacional para dispositivos móveis, baseado em uma plataforma de código aberta sob a licença apache, permitindo que os fabricantes possam modificar seu código

Leia mais

J2ME PLATAFORMA DE DESENVOLVIMENTO JAVA PARA DISPOSITIVOS MÓVEIS

J2ME PLATAFORMA DE DESENVOLVIMENTO JAVA PARA DISPOSITIVOS MÓVEIS J2ME PLATAFORMA DE DESENVOLVIMENTO JAVA PARA DISPOSITIVOS MÓVEIS Ana Paula Carrion 1, Késsia Rita da Costa Marchi 1, Jaime Willian Dias 1 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil anapaulacarrion@hotmail.com,

Leia mais

Programação para Dispositivos Móveis. Prof. Wallace Borges Cristo

Programação para Dispositivos Móveis. Prof. Wallace Borges Cristo Programação para Dispositivos Móveis Prof. Wallace Borges Cristo Acesso a informação Notícias, Ringtones, Vídeos Messenger/Chat Jogos Acesso a instituições financeiras M-commerce (Mobile Commerce) Aplicações

Leia mais

DESENVOLVIMENTO DE UM APLICATIVO DO TIPO SECRETÁRIO VIRTUAL PARA A PLATAFORMA ANDROID

DESENVOLVIMENTO DE UM APLICATIVO DO TIPO SECRETÁRIO VIRTUAL PARA A PLATAFORMA ANDROID DESENVOLVIMENTO DE UM APLICATIVO DO TIPO SECRETÁRIO VIRTUAL PARA A PLATAFORMA ANDROID Maik Olher CHAVES 1 ; Daniela Costa Terra 2. 1 Graduado no curso de Tecnologia em Análise e Desenvolvimento de Sistemas

Leia mais

Introdução a programação de dispositivos móveis. Prof. Me. Hélio Esperidião

Introdução a programação de dispositivos móveis. Prof. Me. Hélio Esperidião Introdução a programação de dispositivos móveis. Prof. Me. Hélio Esperidião Windows Mobile O Windows Mobile é um sistema operacional compacto, desenvolvido para rodar em dispositivos móveis como Pocket

Leia mais

MONOGRAFIA: PLATAFORMAS DE DESENVOLVIMENTO PARA DISPOSITIVOS MÓVEIS

MONOGRAFIA: PLATAFORMAS DE DESENVOLVIMENTO PARA DISPOSITIVOS MÓVEIS PONTIFÍCIA UNIVERSIDADE CATÓLICA DO RIO DE JANEIRO PUC-RIO DEPARTAMENTO DE INFORMÁTICA - DI PROGRAMA DE PÓS GRADUAÇÃO EM INFORMÁTICA INF2541 INTRODUÇÃO À COMPUTAÇÃO MÓVEL PROF. MARKUS ENDLER MONOGRAFIA:

Leia mais

Java. para Dispositivos Móveis. Thienne M. Johnson. Novatec. Desenvolvendo Aplicações com J2ME

Java. para Dispositivos Móveis. Thienne M. Johnson. Novatec. Desenvolvendo Aplicações com J2ME Java para Dispositivos Móveis Desenvolvendo Aplicações com J2ME Thienne M. Johnson Novatec Capítulo 1 Introdução à computação móvel 1.1 Computação móvel definições Computação móvel está na moda. Operadoras

Leia mais

SISTEMAS OPERACIONAIS MÓVEIS - ANDROID X IOS

SISTEMAS OPERACIONAIS MÓVEIS - ANDROID X IOS SISTEMAS OPERACIONAIS MÓVEIS - ANDROID X IOS Danielle Dias Simões¹, Júlio César Pereira². Universidade Paranaense - Unipar Paranavaí PR - Brasil dannesimoes@hotmail.com juliocesarp@unipar.br Resumo. O

Leia mais

IBM WebSphere Business Monitor

IBM WebSphere Business Monitor Obtenha visibilidade em tempo real do desempenho dos processos de negócios IBM WebSphere Business Monitor Fornece aos usuários de negócios uma visão abrangente e em tempo real do desempenho dos processos

Leia mais

Desenvolvimento de aplicações na plataforma Google Android

Desenvolvimento de aplicações na plataforma Google Android Desenvolvimento de aplicações na plataforma Google Android Rafael M. Lins Manoel Taenan Prof. Dr. Fábio Gomes Design by Rafael M. Lins Autores Rafael Madureira Lins de Araújo Bla bla bla Manoel Taenan

Leia mais

Programação para Android

Programação para Android Programação para Android Aula 01: Visão geral do android, instalação e configuração do ambiente de desenvolvimento, estrutura básica de uma aplicação para Android Objetivos Configurar o ambiente de trabalho

Leia mais

Sistemas Distribuídos

Sistemas Distribuídos Sistemas Distribuídos Computação Aula 01-02: Introdução 2o. Semestre / 2014 Prof. Jesus Agenda da Apresentação Definição e surgimento de Sistemas Distribuídos Principais aspectos de Sistemas Distribuídos

Leia mais

Crescendo e Inovando com um Parceiro Confiável de Suporte

Crescendo e Inovando com um Parceiro Confiável de Suporte IBM Global Technology Services Manutenção e suporte técnico Crescendo e Inovando com um Parceiro Confiável de Suporte Uma abordagem inovadora em suporte técnico 2 Crescendo e Inovando com um Parceiro Confiável

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Tipos de Sistemas Operacionais Com o avanço dos computadores foram surgindo alguns tipos de sistemas operacionais que contribuíram para o desenvolvimento do software. Os tipos de

Leia mais

Dispositivos móveis e o mercado Android Open Handset Alliance Informações sobre Android Arquitetura

Dispositivos móveis e o mercado Android Open Handset Alliance Informações sobre Android Arquitetura Dispositivos móveis e o mercado Android Open Handset Alliance Informações sobre Android Arquitetura Dispositivos móveis e o mercado Mercado cresce a cada ano Muitos recursos Múltiplas plataforma Symbian

Leia mais

Desenvolvimento de um aplicativo básico usando o Google Android

Desenvolvimento de um aplicativo básico usando o Google Android Desenvolvimento de um aplicativo básico usando o Google Android (Organização do Ambiente) Programação de Dispositivos Móveis Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus

Leia mais

UNIVERSIDADE FEDERAL DE VIÇOSA CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS DEPARTAMENTO DE INFORMÁTICA. Pizzaria Manão

UNIVERSIDADE FEDERAL DE VIÇOSA CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS DEPARTAMENTO DE INFORMÁTICA. Pizzaria Manão UNIVERSIDADE FEDERAL DE VIÇOSA CENTRO DE CIÊNCIAS EXATAS E TECNOLÓGICAS DEPARTAMENTO DE INFORMÁTICA Pizzaria Manão Emilio Gonçalves 41281 Fabrício Luís Santos da Silva 50293 Filipe Ribeiro Nalon 50295

Leia mais

ESCOLHA UM TESTE PARA EXECUTAR

ESCOLHA UM TESTE PARA EXECUTAR ESCOLHA UM TESTE PARA EXECUTAR Acompanhe o ritmo de aceleração dos ciclos de lançamento. Descubra a automatização com um toque humano EXECUTE UM TESTE 26032015 Com a Borland, tanto analistas de negócios

Leia mais

Departamento de Engenharia e Ciências do Mar Licenciatura em Engenharia Informática e de Computadores Projeto Fim de Curso TÍTULO

Departamento de Engenharia e Ciências do Mar Licenciatura em Engenharia Informática e de Computadores Projeto Fim de Curso TÍTULO Departamento de Engenharia e Ciências do Mar Licenciatura em Engenharia Informática e de Computadores Projeto Fim de Curso TÍTULO CLASS-REMINDER PARA ESTUDANTES DO DECM AUTOR: Arilson Jorge Santos Rocha

Leia mais

Guia do usuário do PrintMe Mobile 3.0

Guia do usuário do PrintMe Mobile 3.0 Guia do usuário do PrintMe Mobile 3.0 Visão geral do conteúdo Sobre o PrintMe Mobile Requisitos do sistema Impressão Solução de problemas Sobre o PrintMe Mobile O PrintMe Mobile é uma solução empresarial

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

Resumo de TCC Desenvolvimento de um sistema ERP com foco nas tecnologias de software livre / código aberto

Resumo de TCC Desenvolvimento de um sistema ERP com foco nas tecnologias de software livre / código aberto UFSC - Universidade Federal de Santa Catarina CTC Centro Tecnológico INE Departamento de Informática e Estatística INE5631 Projetos I Prof. Renato Cislaghi Resumo de TCC Desenvolvimento de um sistema ERP

Leia mais

Softwares de Sistemas e de Aplicação

Softwares de Sistemas e de Aplicação Fundamentos dos Sistemas de Informação Softwares de Sistemas e de Aplicação Profª. Esp. Milena Resende - milenaresende@fimes.edu.br Visão Geral de Software O que é um software? Qual a função do software?

Leia mais

Informe técnico: Archiving Symantec Enterprise Vault Armazena, gerencia e descobre informações essenciais da empresa

Informe técnico: Archiving Symantec Enterprise Vault Armazena, gerencia e descobre informações essenciais da empresa Armazena, gerencia e descobre informações essenciais da empresa Gerenciando milhões de caixas de correio de milhares de clientes em todo o mundo, o Enterprise Vault, líder do mercado em archiving de e-mail

Leia mais

Guia de vendas Windows Server 2012 R2

Guia de vendas Windows Server 2012 R2 Guia de vendas Windows Server 2012 R2 Por que Windows Server 2012 R2? O que é um servidor? Mais do que um computador que gerencia programas ou sistemas de uma empresa, o papel de um servidor é fazer com

Leia mais

T2Ti Tecnologia da Informação Ltda T2Ti.COM http://www.t2ti.com Projeto T2Ti ERP 2.0. Bloco Suprimentos. WMS Gerenciamento de Armazém

T2Ti Tecnologia da Informação Ltda T2Ti.COM http://www.t2ti.com Projeto T2Ti ERP 2.0. Bloco Suprimentos. WMS Gerenciamento de Armazém Bloco Suprimentos WMS Gerenciamento de Armazém Objetivo O objetivo deste artigo é dar uma visão geral sobre o Módulo WMS, que se encontra no Bloco Suprimentos. Todas informações aqui disponibilizadas foram

Leia mais

O SISTEMA ANDROID NO UNIVERSO DOS DISPOSITIVOS MÓVEIS

O SISTEMA ANDROID NO UNIVERSO DOS DISPOSITIVOS MÓVEIS O SISTEMA ANDROID NO UNIVERSO DOS DISPOSITIVOS MÓVEIS Gilberto Sadao OTSUKA 1 Ana Paula Ambrósio ZANELATO 2 RESUMO: Com o advento da popularização e maior uso da internet por meio da utilização de dispositivos

Leia mais

UM FRAMEWORK PARA DESENVOLVIMENTO DE

UM FRAMEWORK PARA DESENVOLVIMENTO DE UNIVERSIDADE FEDERAL DE PERNAMBUCO GRADUAÇÃO EM CIÊNCIA DA COMPUTAÇÃO CENTRO DE INFORMÁTICA UM FRAMEWORK PARA DESENVOLVIMENTO DE APLICATIVOS EM WINDOWS MOBILE. PROPOSTA DE TRABALHO DE GRADUAÇÃO Aluno:

Leia mais

PÓS GRADUAÇÃO LATO SENSU. Desenvolvimento de Aplicações Em Dispositivos Móveis Com Android, Java, IOs (Iphone).

PÓS GRADUAÇÃO LATO SENSU. Desenvolvimento de Aplicações Em Dispositivos Móveis Com Android, Java, IOs (Iphone). 1 Desenvolvimento de Aplicações Em Dispositivos Móveis Com Android, Java, IOs (Iphone). Requisitos e Especificação de Software Tópicos sobre análise requisitos; Requisitos Funcionais e não funcionais;

Leia mais

IBM Software Seu escritório universal

IBM Software Seu escritório universal IBM Software Seu escritório universal Software colaborativo IBM para dispositivos móveis 2 Seu escritório universal: Software colaborativo IBM para dispositivos móveis O mercado está chamando O suporte

Leia mais

Linguagem de Programação JAVA. Professora Michelle Nery Nomeclaturas

Linguagem de Programação JAVA. Professora Michelle Nery Nomeclaturas Linguagem de Programação JAVA Professora Michelle Nery Nomeclaturas Conteúdo Programático Nomeclaturas JDK JRE JEE JSE JME JVM Toolkits Swing AWT/SWT JDBC EJB JNI JSP Conteúdo Programático Nomenclatures

Leia mais

Visão geral do XProtect

Visão geral do XProtect Milestone Systems Visão geral do Software de gerenciamento de vídeo Uma solução de vigilância que se ajusta a todas suas necessidades O da Milestone é um poderoso software de gerenciamento de vídeo (VMS)

Leia mais

Ferramentas Web para controle e supervisão: o que está por vir

Ferramentas Web para controle e supervisão: o que está por vir Artigos Técnicos Ferramentas Web para controle e supervisão: o que está por vir Marcelo Salvador, Diretor de Negócios da Elipse Software Ltda. Já faz algum tempo que ouvimos falar do controle e supervisão

Leia mais

CURSOS ANDROID. Prof: Igor Portela

CURSOS ANDROID. Prof: Igor Portela CURSOS ANDROID Prof: Igor Portela O que é Android? Sistema operacional para dispositivos móveis baseado em Linux. Desenvolvido pela Android Inc, comprado pelo Google em 2005 É open source sob licença Apache.

Leia mais

Programação em Java para a Plataforma Android AULA 1. Primeiros Passos

Programação em Java para a Plataforma Android AULA 1. Primeiros Passos Programação em Java para a Plataforma Android AULA 1 Primeiros Passos O que é Android Como é o desenvolvimento de aplicações para esse ambiente O que é preciso para começar a programar ABvidades, o início

Leia mais

Bem-vindo à apresentação do SAP Business One.

Bem-vindo à apresentação do SAP Business One. Bem-vindo à apresentação do SAP Business One. Neste tópico, responderemos à pergunta: O que é o Business One? Definiremos o SAP Business One e discutiremos as opções e as plataformas disponíveis para executar

Leia mais

PLATAFORMA. MPact PARA MARKETING. MóVEL NOVAS REGRAS PARA CAPTAR A ATENÇÃO DOS CLIENTES DE MANEIRA MAIS EFICAZ

PLATAFORMA. MPact PARA MARKETING. MóVEL NOVAS REGRAS PARA CAPTAR A ATENÇÃO DOS CLIENTES DE MANEIRA MAIS EFICAZ PLATAFORMA MPact PARA MARKETING MóVEL NOVAS REGRAS PARA CAPTAR A ATENÇÃO DOS CLIENTES DE MANEIRA MAIS EFICAZ LOCALIZAÇÃO E ANÁLISE QUANDO UM CLIENTE OU HÓSPEDE ENTRA EM SUA LOJA OU HOTEL, CHEGOU SUA OPORTUNIDADE

Leia mais

Acelere o valor da computação em nuvem com a IBM

Acelere o valor da computação em nuvem com a IBM Acelere o valor da computação em nuvem com a IBM Obtenha soluções em nuvem comprovadas para as suas prioridades mais urgentes Destaques da solução Saiba sobre os benefícios mais comuns de implementações

Leia mais

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS

PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS PROGRAMAÇÃO PARA DISPOSITIVOS MÓVEIS Ciclo de Vida de uma Aplicação Android Professor: Danilo Giacobo OBJETIVOS DA AULA Entender o ciclo de vida de uma aplicação Android. Conhecer algumas dicas para tirar

Leia mais

Integração ERP/WMS e vantagens com a adoção de software livre

Integração ERP/WMS e vantagens com a adoção de software livre Integração ERP/WMS e vantagens com a adoção de software livre Filipi Damasceno Vianna (PUCRS) filipi@em.pucrs.br Resumo Este trabalho visa mostrar a importância da integração entre sistemas de ERP 1 e

Leia mais

A Gisgeo. Web SIG Sistemas de Informação Geográfica via web. Geo Marketing e Geo Turismo. Localização de pessoas. Gestão de frota automóvel

A Gisgeo. Web SIG Sistemas de Informação Geográfica via web. Geo Marketing e Geo Turismo. Localização de pessoas. Gestão de frota automóvel A Gisgeo Web SIG Sistemas de Informação Geográfica via web Geo Marketing e Geo Turismo Localização de pessoas Gestão de frota automóvel App de localização para smartphones Sistemas de navegação GPS A Gisgeo

Leia mais

Marcus Vinicius Cruz Xavier. Rascunho do trabalho de conclusão de curso

Marcus Vinicius Cruz Xavier. Rascunho do trabalho de conclusão de curso Universidade Federal de Santa Catarina Departamento de Informática e Estatística Curso de Bacharelado em Ciências da Computação Marcus Vinicius Cruz Xavier Rascunho do trabalho de conclusão de curso Título

Leia mais

Aplicações Móveis e sua aplicação na saúde: micd, exemplo prático

Aplicações Móveis e sua aplicação na saúde: micd, exemplo prático Aplicações Móveis e sua aplicação na saúde: micd, exemplo prático Leonel Machava Email: leonelmachava@gmail.com MOZAMBICAN OPEN ARCHITECTURES STANDARDS AND INFORMATION SYSTEMS Conteúdo Definição de aplicação

Leia mais

RESULTADOS PRELIMINARES NO DESENVOLVIMENTO DE SISTEMA PARA MAPEAMENTO REMOTO DE RADIAÇÃO

RESULTADOS PRELIMINARES NO DESENVOLVIMENTO DE SISTEMA PARA MAPEAMENTO REMOTO DE RADIAÇÃO 2013 International Nuclear Atlantic Conference - INAC 2013 Recife, PE, Brazil, November 24-29, 2013 ASSOCIAÇÃO BRASILEIRA DE ENERGIA NUCLEAR - ABEN ISBN: 978-85-99141-05-2 RESULTADOS PRELIMINARES NO DESENVOLVIMENTO

Leia mais

Conceitos Básicos e Práticos do Android

Conceitos Básicos e Práticos do Android Pílula de Conhecimento Android Página: 1 Pílula 1 Conceitos Básicos e Práticos do Android I OBJETIVOS! Conhecer o Sistema Operacional Móvel Android.! Entender a composição do Android diferenciando suas

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

Automatizando o Data Center

Automatizando o Data Center Este artigo examina uma arquitetura alternativa que suporte a automação do data center e o provisionamento dinâmico sem a virtualização do sistema operacional. por Lori MacVittie Gerente Técnico de Marketing,

Leia mais

SISTEMA DE GESTÃO DE PRODUÇÃO DE EVENTOS

SISTEMA DE GESTÃO DE PRODUÇÃO DE EVENTOS SISTEMA DE GESTÃO DE PRODUÇÃO DE EVENTOS Rodrigo das Neves Wagner Luiz Gustavo Galves Mählmann Resumo: O presente artigo trata de um projeto de desenvolvimento de uma aplicação para uma produtora de eventos,

Leia mais

Uma Introdução ao. Computação Móvel (MAC5743/MAC330) Prof. Alfredo Goldman Monitores: Rodrigo Barbosa Daniel Cordeiro

Uma Introdução ao. Computação Móvel (MAC5743/MAC330) Prof. Alfredo Goldman Monitores: Rodrigo Barbosa Daniel Cordeiro Uma Introdução ao J2ME Computação Móvel (MAC5743/MAC330) DCC-IME-USP Prof. Alfredo Goldman Monitores: Rodrigo Barbosa Daniel Cordeiro Visão Geral do Java 2 (1) A plataforma Java 2 engloba três elementos:

Leia mais

Estudo de caso. Varejo/Atacado Força de vendas Estudo de caso comercial

Estudo de caso. Varejo/Atacado Força de vendas Estudo de caso comercial Estudo de caso Representantes de vendas da Diarco otimizam o sistema de pedidos em mais de 50.000 lojas em todo o país com a Mobile Empresa: Diarco é a principal empresa de comércio atacadista de auto-atendimento

Leia mais

CAMobile: Um Framework para Sistemas Sensíveis ao Contexto na plataforma ios

CAMobile: Um Framework para Sistemas Sensíveis ao Contexto na plataforma ios CAMobile: Um Framework para Sistemas Sensíveis ao Contexto na plataforma ios 1. Introdução Matheus Matos de Farias Universidade do Estado da Bahia, Bahia, Brasil Resumo: A computação ubíqua é um paradigma

Leia mais

WMS. Agenda. Warehouse Management Systems (WMS) Warehouse Management Systems Sistema de Gerenciamento de Armazéns

WMS. Agenda. Warehouse Management Systems (WMS) Warehouse Management Systems Sistema de Gerenciamento de Armazéns WMS Warehouse Management Systems Sistema de Gerenciamento de Armazéns Breno Amorim brenoamorim@hotmail.com Informática Aplicada a Logística Profº Breno Amorimsexta-feira, 11 de setembro de 2009 Agenda

Leia mais

Android Básico Hello World!

Android Básico Hello World! Android Básico Hello World! Instrutor Programador desde 2000 Aluno de doutorado Mestre em informática pelo ICOMP/UFAM Especialista em aplicações WEB FUCAPI marcio.palheta@gmail.com sites.google.com/site/marcio

Leia mais

O gerenciamento dos dispositivos com Windows* dá boas-vindas à mobilidade

O gerenciamento dos dispositivos com Windows* dá boas-vindas à mobilidade White Paper 4ª geração dos processadores Intel Core e Intel Atom e mobilidade com o Windows 8.1* O gerenciamento dos dispositivos com Windows* dá boas-vindas à mobilidade Detalhes dos recursos de gerenciamento

Leia mais

Estratégias em Tecnologia da Informação

Estratégias em Tecnologia da Informação Estratégias em Tecnologia da Informação Capítulo 6 Sistemas de Informações Estratégicas Sistemas integrados e sistemas legados Sistemas de Gerenciamento de Banco de Dados Material de apoio 2 Esclarecimentos

Leia mais

Fundamentos da Computação Móvel

Fundamentos da Computação Móvel Fundamentos da Computação Móvel (O Mercado Mobile no Brasil) Programação de Dispositivos Móveis Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto

Leia mais

Tipos de Sistemas Distribuídos (Cluster e Grid)

Tipos de Sistemas Distribuídos (Cluster e Grid) Tipos de Sistemas Distribuídos (Cluster e Grid) Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência

Leia mais

NAVITA SGM SERVIÇOS GERENCIADOS DE MOBILIDADE

NAVITA SGM SERVIÇOS GERENCIADOS DE MOBILIDADE White Paper NAVITA SGM SERVIÇOS GERENCIADOS DE MOBILIDADE A cada dia, o mundo da mobilidade se torna mais crítico e complexo. Por esta natureza, usuários de mobilidade necessitam cada vez mais de agilidade

Leia mais

Arquiteturas para implantação de aplicações móveis wireless

Arquiteturas para implantação de aplicações móveis wireless Arquiteturas para implantação de aplicações móveis wireless Este tutorial apresenta uma visão geral da arquitetura para implantação de aplicações móveis wireless. Eduardo Tude Engenheiro de Teleco (IME

Leia mais

Mude para digital. Sistema de rádio bidirecional digital profissional MOTOTRBO

Mude para digital. Sistema de rádio bidirecional digital profissional MOTOTRBO Sistema de rádio bidirecional digital profissional A solução de comunicação em rádios bidirecionais de próxima geração está aqui, com melhor desempenho, produtividade e preço e mais oportunidades para

Leia mais

GERENCIAMENTO CENTRALIZADO DELL POWERVAULT DL 2000 BASEADO EM TECNOLOGIA SYMANTEC

GERENCIAMENTO CENTRALIZADO DELL POWERVAULT DL 2000 BASEADO EM TECNOLOGIA SYMANTEC GERENCIAMENTO CENTRALIZADO DELL POWERVAULT DL 2000 BASEADO EM TECNOLOGIA SYMANTEC RESUMO EXECUTIVO O PowerVault DL2000, baseado na tecnologia Symantec Backup Exec, oferece a única solução de backup em

Leia mais

PROJETO PEDAGÓGICO DE CURSOS

PROJETO PEDAGÓGICO DE CURSOS 1 de 5 PROJETO PEDAGÓGICO DE CURSOS BURITREINAMENTOS MANAUS-AM DEZEMBRO / 2014 2 de 5 PACOTES DE TREINAMENTOS BURITECH A Buritech desenvolveu um grupo de pacotes de treinamentos, aqui chamados de BuriPacks,

Leia mais

Automação do Processo de Instalação de Softwares

Automação do Processo de Instalação de Softwares Automação do Processo de Instalação de Softwares Aislan Nogueira Diogo Avelino João Rafael Azevedo Milene Moreira Companhia Siderúrgica Nacional - CSN RESUMO Este artigo tem como finalidade apresentar

Leia mais

WMS - Warehouse Management System

WMS - Warehouse Management System Sistema de Gestão Empresarial LUSANA SOUZA NATÁLIA BATUTA MARIA DAS GRAÇAS TATIANE ROCHA GTI V Matutino Prof.: Itair Pereira Sumário 1. INTRODUÇÃO... 2 2. WMS... 2 3. SEGURANÇA DA INFORMAÇÃO... 2 4. POLÍTICA

Leia mais

Marcelo.augusto@Microsoft.com

Marcelo.augusto@Microsoft.com Marcelo.augusto@Microsoft.com Aplicativos Relatórios Painéis Consultas em linguagem natural Dispositivo móvel A plataforma de Dados da Microsoft Orquestração Gerenciamento de informações Processamento

Leia mais

Universidade São Judas Tadeu

Universidade São Judas Tadeu Universidade São Judas Tadeu Anna Karoline Diniz Fortaleza Camila Moura Favaro Fernando dos Anjos Reinaldo Francisco Carvalho Tiago Souza Tecnologia da Informação no Transporte São Paulo 2013 1 Tecnologia

Leia mais

MONITOR E PREDITOR DE CONECTIVIDADE WIRELESS BASEADA EM LOCALIZAÇÃO GPS

MONITOR E PREDITOR DE CONECTIVIDADE WIRELESS BASEADA EM LOCALIZAÇÃO GPS MONITOR E PREDITOR DE CONECTIVIDADE WIRELESS BASEADA EM LOCALIZAÇÃO GPS Aluna: Eleonora Cominato Weiner Orientador: Markus Endler Introdução A palavra mobilidade ganha mais importância a cada instante,

Leia mais

UNIVERSIDADE FEDERAL DE VIÇOSA DEPARTAMENTO DE INFORMÁTICA COMPUTAÇÃO MÓVEL CONTROLE DE GASTOS PARA ORÇAMENTO DOMÉSTICO

UNIVERSIDADE FEDERAL DE VIÇOSA DEPARTAMENTO DE INFORMÁTICA COMPUTAÇÃO MÓVEL CONTROLE DE GASTOS PARA ORÇAMENTO DOMÉSTICO UNIVERSIDADE FEDERAL DE VIÇOSA DEPARTAMENTO DE INFORMÁTICA COMPUTAÇÃO MÓVEL CONTROLE DE GASTOS PARA ORÇAMENTO DOMÉSTICO Fred Paulino Ferreira, Leonardo Couto, Renato Maia, Luiz G. Montanha Departamento

Leia mais

FUNDAMENTOS DE SISTEMAS DE INFORMAÇÃO

FUNDAMENTOS DE SISTEMAS DE INFORMAÇÃO @ribeirord FUNDAMENTOS DE SISTEMAS DE INFORMAÇÃO Rafael D. Ribeiro, M.Sc,PMP. rafaeldiasribeiro@gmail.com http://www.rafaeldiasribeiro.com.br Sistemas de Informação Sistemas de Apoio às Operações Sistemas

Leia mais

CONHECENDO E CONCEITUANDO SISTEMAS DE INFORMAÇÃO

CONHECENDO E CONCEITUANDO SISTEMAS DE INFORMAÇÃO CONHECENDO E CONCEITUANDO SISTEMAS DE INFORMAÇÃO Franco Vieira Sampaio 1 Atualmente a informática está cada vez mais inserida no dia a dia das empresas, porém, no início armazenavam-se os dados em folhas,

Leia mais

RHOELEMENTS MOTOROLA DESENVOLVA MENOS. FAÇA MAIS.

RHOELEMENTS MOTOROLA DESENVOLVA MENOS. FAÇA MAIS. RHOELEMENTS MOTOROLA DESENVOLVA MENOS. FAÇA MAIS. RHOELEMENTS MOTOROLA FOLHETO COM TANTOS EQUIPAMENTOS MÓVEIS... VOCÊ, DEFINITIVAMENTE, QUER CRIAR UM APLICATIVO COMPATÍVEL COM TODOS ELES. COM RHOELEMENTS,

Leia mais

Principais diferenciais do Office 365

Principais diferenciais do Office 365 Guia de compras O que é? é um pacote de soluções composto por software e serviços, conectados à nuvem, que fornece total mobilidade e flexibilidade para o negócio. Acessível de qualquer dispositivo e qualquer

Leia mais

Sistema para gestão de restaurante

Sistema para gestão de restaurante Sistema para gestão de restaurante Luciana Tavares Rosa luciana.rosa@inf.aedb.br AEDB Fábio Rezende Dutra fabio.dutra@inf.aedb.br AEDB Resumo:O sistema para gestão de restaurante é um software desenvolvido

Leia mais

O papel dominante da mobilidade no mercado de trabalho

O papel dominante da mobilidade no mercado de trabalho Um perfil personalizado de adoção da tecnologia comissionado pela Cisco Systems Fevereiro de 2012 Dinâmica de ganhos com as iniciativas de mobilidade corporativa Os trabalhadores estão cada vez mais remotos,

Leia mais

7 Utilização do Mobile Social Gateway

7 Utilização do Mobile Social Gateway 7 Utilização do Mobile Social Gateway Existem três atores envolvidos na arquitetura do Mobile Social Gateway: desenvolvedor do framework MoSoGw: é o responsável pelo desenvolvimento de novas features,

Leia mais

Unidade I SISTEMAS PARA INTERNET E. Prof. Emanuel Matos

Unidade I SISTEMAS PARA INTERNET E. Prof. Emanuel Matos Unidade I SISTEMAS PARA INTERNET E SOFTWARE LIVRE Prof. Emanuel Matos Sumário Unidade I Principais tecnologias da rede digital Computação cliente/servidor Comutação de pacotes TCP/IP Sistemas de informação

Leia mais

Aranda INVENTORY. Benefícios Estratégicos para sua Organização. (Standard & Plus Edition) Beneficios. Características V.2.0907

Aranda INVENTORY. Benefícios Estratégicos para sua Organização. (Standard & Plus Edition) Beneficios. Características V.2.0907 Uma ferramenta de inventario que automatiza o cadastro de ativos informáticos em detalhe e reporta qualquer troca de hardware ou software mediante a geração de alarmes. Beneficios Informação atualizada

Leia mais

CyberLink. PowerDVD Mobile. Guia do Usuário

CyberLink. PowerDVD Mobile. Guia do Usuário CyberLink PowerDVD Mobile Guia do Usuário Copyright e aviso de isenção Todos os direitos reservados. Nenhuma parte desta publicação pode ser reproduzida, armazenada em um sistema de recuperação ou transmitida

Leia mais

Android. 10 vantagens do sistema Android em relação ao iphone

Android. 10 vantagens do sistema Android em relação ao iphone Android Android é um sistema operacional do Google para smartphones, TVs e tablets. Baseado em Linux e de código aberto, o sistema móvel é utilizado em aparelhos da Samsung, LG, Sony, HTC, Motorola, Positivo,

Leia mais

Informe técnico: Virtualização de endpoints Symantec Endpoint Virtualization Suite Otimização dinâmica do espaço de trabalho

Informe técnico: Virtualização de endpoints Symantec Endpoint Virtualization Suite Otimização dinâmica do espaço de trabalho Informe técnico: Virtualização de endpoints Otimização dinâmica do espaço de trabalho Visão geral O é uma solução poderosa e flexível com foco na produtividade do usuário, independentemente dos equipamentos,

Leia mais

ISHIFT: Informação em Movimento

ISHIFT: Informação em Movimento ISHIFT: Informação em Movimento Contato: www.ishift.com.br +55 51 32798159 contato@ishift.com.br Somos uma empresa completa de produtos e serviços ligados à tecnologia, que procura apresentar soluções

Leia mais

Plano de Trabalho Docente 2014. Ensino Técnico

Plano de Trabalho Docente 2014. Ensino Técnico Plano de Trabalho Docente 2014 Ensino Técnico ETEC MONSENHOR ANTONIO MAGLIANO Código: 088 Município: Garça Eixo Tecnológico: Informação e Comunicação Habilitação Profissional: Técnica de Nível Médio de

Leia mais