CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA

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

Download "CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA"

Transcrição

1 CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE DE TECNOLOGIA DE LINS CURSO SUPERIOR DE TECNOLOGIA EM BANCO DE DADOS MANUEL AFONSO DE LAVA GRANJEIA DESENVOLVIMENTO DE UMA APLICAÇÃO WEB PARA PEQUENOS ESCRITÓRIOS DE ADVOCACIA, COMBINADO COM USO DE DISPOSITIVO MÓVEL LINS/SP 2º SEMESTRE/2011

2 CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE DE TECNOLOGIA DE LINS CURSO SUPERIOR DE TECNOLOGIA EM BANCO DE DADOS MANUEL AFONSO DE LAVA GRANJEIA DESENVOLVIMENTO DE UMA APLICAÇÃO WEB PARA PEQUENOS ESCRITÓRIOS DE ADVOCACIA, COMBINADO COM USO DE DISPOSITIVO MÓVEL Trabalho de Conclusão de Curso apresentado à Faculdade de Tecnologia de Lins para obtenção do Título de Tecnólogo em Banco de Dados. Orientador: Prof. Me. João Luís Cardoso de Moraes LINS/SP 2º SEMESTRE/2011

3 MANUEL AFONSO DE LAVA GRANJEIA DESENVOLVIMENTO DE UMA APLICAÇÃO WEB PARA PEQUENOS ESCRITÓRIOS DE ADVOCACIA, COMBINADO COM USO DE DISPOSITIVO MÓVEL Trabalho de Conclusão de Curso apresentado à Faculdade de Tecnologia de Lins, como parte dos requisitos necessários para a obtenção do título de Tecnólogo em Banco de Dados sob orientação do Prof. Me. João Luís Cardoso de Moraes. Data de aprovação: 14/ 12 /2011 Orientador (Prof. Me. João Luís Cardoso de Moraes ) Profª Me. Gisele Molina Becari Prof. Me. Júlio Fernando Lieira

4 A Deus, à minha família e aos professores Me. João Luís Cardoso de Mores e Ygor Gonzaga de Oliveira.

5 AGRADECIMENTOS Primeiramente, agradeço a Deus, Nossa Senhora Auxiliadora e São João Bosco por ter chegado até aqui. Aproveito o ensejo para manifestar minha gratidão à minha família e a todos os envolvidos na produção deste trabalho. Quanto à equipe da FATEC LINS, reconheço o esforço para que os alunos tivessem um curso de qualidade. Todos foram muito importantes, independentemente de sua função. Por fim, jamais me esquecerei dos amigos que conquistei durante três anos nas tardes quentes de Lins e do apoio recebido de meu orientador, Prof. Me. João Luís Cardoso de Moraes, o qual desempenhou brilhantemente seu mister e daqueles que contribuíram indiretamente: Prof. Me. Mario Henrique S. Pardo, Prof. Me. Fábio Lúcio Meira e Prof. Ygor Gonzaga de Oliveira, Profª Mª Adriana de Bortoli, Prof. Me. Júlio Fernando Lieira, Prof. Me. Adriano de Souza Marques, Prof. Me. Alexandre Ponce de Oliveira, Prof. Me. Anderson Pazin, Prof. Me. Luiz Fernando de Oliveira Silva, Profª Mª Gisele Molina Becari, Prof. Dr. Luciano Soares de Souza e Letícia Raquel, minha irmã.

6 RESUMO A informática chegou aos setores mais conservadores e tradicionais da sociedade, inclusive o Direito, marcado por grandes pilhas de papel. Ela pode contribuir muito para o aperfeiçoamento do sistema jurídico, principalmente com a Internet, porque proporciona mobilidade ao processo e com isso os profissionais do fórum podem investir o tempo que gastariam atendendo advogados para dar andamento aos processos. Pequenos escritórios de advocacia podem utilizar a tecnologia disponível, com enfoque no aperfeiçoamento de suas atividades de advogado, pois ele não precisará mais estar fisicamente em seu escritório para saber o que acontece. Este trabalho objetiva o desenvolvimento de uma solução web para escritórios de advocacia, com enfoque na utilização das tecnologias envolvidas, no sentido de contribuir para a melhora de seus processos rotineiros, principalmente a composição da procuração ad juditia e relatórios, evitando erros de digitação e consumo de tempo para escrita de documentos. A pesquisa de compromissos é realizada por meio de um dispositivo móvel conectado à Internet, em que o advogado informará seu código e a data para receber a listagem de compromissos na tela do aparelho. Foram utilizadas as seguintes tecnologias: Java Server Faces (JSF), Hibernate, Model Views Controller (MVC), Java Enterprise Editition (Java EE) e Java Micro Edition (Java ME), Oracle 10g, JDBC e IReports. Palavras-chave: Escritórios Advocacia. Dispositivo móvel.

7 ABSTRACT Informatics has come to the more conservative and traditional departments of the society, including Law, marked by large stacks of paper. It can contribute greatly to improving the legal system, mainly with the Internet, because it provides mobility to the process and with it the court house professionals might invest their time on attending lawyers and coursing processes. Small law firms can use the available technology, focusing on the improvement of the lawyer s activities, because he will no longer need to be physically in his office to know what happens. This work aims to develop a web solution for law firms, focusing on the use of the technologies, to contribute to the improvement of their routine processes, especially the composition of "ad juditia mandate and reports, avoiding typing mistakes and waste of time for writing documents. The research commitment is accomplished through a mobile device connected to the Internet, in which the lawyer informs his code and date to receive a list of commitments on the screen of the device. The following technologies were used: Java Server Faces (JSF), Hibernate, Model Views Controller (MVC), Editition Java Enterprise (Java EE) and Java Micro Edition (Java ME), Oracle 10g, JDBC and ireports Keywords: Law Offices. Mobile device.

8 LISTA DE ILUSTRAÇÕES Figura Plataforma Java Figura Java Micro Edition Figura API JDBC Figura Caso de uso cadastrar advogado Figura Caso de uso cadastrar secretária Figura Caso de uso cadastrar cliente Figura Caso de uso cadastrar processo Figura Caso de uso relacionar clientes processos e advogados Figura Caso de uso cadastrar procuração Figura Caso de uso cadastrar andamento processual Figura Caso de uso agendar consulta Figura Caso de uso compor procuração ad juditia Figura Caso de uso cadastrar contrato de honorários advocatícios Figura Caso de uso relacionar contratos e advogados Figura Caso de uso gerarrelconsadv Figura Caso de uso buscar cliente Figura Caso de uso buscar secretária Figura Caso de uso buscar procuração ad juditia Figura Caso de uso listar compromissos Figura Caso de uso gerar relatório geral de agendamentos Figura Caso de uso gerar relatório de andamentos do processo Figura Caso de uso gerar relatório de processos por cliente Figura Caso de uso buscar contrato Figura 2.21 Diagrama de classes Figura 2.23 Diagrama de estrutura de dados completo Figura 2.25 Diagrama de estrutura de dados parcial: agendamento Figura 2.26 Diagrama de estrutura de dados parcial: cadastro de contratos Figura 2.27 Diagrama de estrutura de dados parcial: processos Figura 2.28 Diagrama de estrutura de dados parcial: cadastro de procurações Figura Diagrama de atividade cadastrar advogado

9 Figura Diagrama de atividade cadastrar secretária Figura Diagrama de atividade cadastrar cliente Figura Diagrama de atividade clientes advogados e processos Figura Diagrama de atividade cadastrar procuração Figura Diagrama de atividade cadastrar andamento Figura Diagrama de atividade agendar consultas Figura Diagrama de atividade compor procuração ad juditia Figura Diagrama de atividade cadastrar contrato Figura Diagrama de atividade advogados e contratos Figura Diagrama de atividade relatório de consultas por advogado Figura Diagrama de atividade buscar cliente Figura Diagrama de atividade buscar secretária Figura Diagrama de atividade buscar procuração ad juditia, Figura Diagrama de atividade listar compromissos Figura Diagrama de atividade gerar relatório geral de agendamentos Figura Diagrama de atividade relatório de andamentos do processo Figura Diagrama de atividade relatório de processos por cliente Figura Diagrama de atividade buscar contrato Figura 2.49 Diagrama MVC cadastrar advogado Figura Diagrama MVC cadastrar cliente Figura Diagrama MVC cadastrar processo Figura Diagrama MVC relacionar clientes, advogados e processos Figura Diagrama MVC cadastrar procuração ad juditia Figura Diagrama MVC cadastrar andamentos Figura Diagrama MVC agendar consulta Figura Diagrama MVC compor procuração ad juditia Figura Diagrama MVC cadastrar contrato Figura Diagrama MVC relacionar advogados e contratos Figura Diagrama MVC gerar relatório de consultas por advogado Figura Diagrama MVC buscar cliente Figura Diagrama MVC buscar secretária Figura Diagrama MVC buscar procuração ad juditia Figura Diagrama MVC listar agendamentos Figura Diagrama MVC relatório geral de agendamentos

10 Figura Diagrama MVC relatório de andamentos por processo Figura Diagrama MVC relatório de processos por cliente Figura Diagrama MVC buscar contrato Figura Diagrama de sequência cadastrar advogado Figura Diagrama de sequência cadastrar cliente Figura Diagrama de sequência cadastrar processo Figura Diagrama de sequência clientes, processos e advogados Figura Diagrama de sequência cadastrar procuração Figura Diagrama de sequência cadastrar andamento Figura Diagrama de sequência agendar consultas Figura Diagrama de sequência compor procuração ad juditia Figura Diagrama de sequência cadastrar contrato Figura Diagrama de sequência relacionar contratos e advogados Figura Diagrama de sequência relatório de consultas por advogado Figura Diagrama de sequência buscar cliente Figura Diagrama de sequência buscar secretária Figura Diagrama de sequência buscar procuração ad juditia Figura Diagrama de sequência listar agendamentos Figura Diagrama de sequência relatório geral de agendamentos Figura Diagrama de sequência relatório de andamentos por processo Figura Diagrama de sequência relatório de processos por cliente Figura Diagrama de sequência buscar contrato Figura Estrutura da tabela de processos Figura Servlet responsável por receber os parâmetros do aplicativo móvel, realizar a consulta no banco de dados e retornar os resultados Figura Consulta de compromissos e resultados obtidos Figura Página JSF antes da configuração do idioma Figura Visão básica da página principal Figura Página JSF responsável pelo controle de agendamentos Figura Cadastro de compromissos Figura Sintaxe SQL para obtenção dos dados do cliente e do advogado Figura Configuração do empacotamento Figura Montagem da procuração Ad Juditia no NetBeans Figura Formulário da procuração cível (pagina JSP)

11 Figura Servlet responsável por enviar dados para composição da procuração Figura Procuração Ad Juditia Cível composta de acordo com os parâmetros fornecidos pela página JSP

12 LISTA DE QUADROS Quadro 1. Necessidades e prioridades...40 Quadro 2. Casos de uso...40

13 LISTA DE ABREVIATURAS E SIGLAS AC - Ação Cautelar ADC - Ação Direta de Inconstitucionalidade ADI - Ação Direta de Inconstitucionalidade ADO Ação Direta de Inconstitucionalidade por Omissão ADPF - Ação de Descumprimento de Preceito Fundamental AJAX - Asynchronous Javascript And Xml API - Application Programming Interface AR - Ação Rescisória CDC - Connected Device Configuration CLDC - Connected Limited Device Configuration CRUD - Create, Retrieve, Update and Delete CVM - Compact Virtual Machine CVS - Concurrent Version System EJB - Enterprise Java Beans HC - Habeas Corpus HTML - Hypertext Markup Language HTTP Hypertext Transfer Protocol IDE - Integrated Development Environment IrDA - Infrared Data Association JCP - Java Community Process JDBC - Java Database Connectivity Java EE - Java Enterprise Editition Java ME - Java Micro Edition JNI - Java Native Interface JPA - Java Persistence API JRE - Java Runtime Environment JSDK - Java Software Development Kit Java SE - Java Standard Edition JSF- Java Server Faces JSP - Java Server Pages

14 JSR - Java Specification Request JVM - Java Virtual Machine JVMDI - Java Virtual Machine Debugging Interface MI - Mandado de Injunção MIDP - Mobile Information Device Profile MS - Mandado de Segurança MVC - Model View Controler OAB - Ordem dos Advogados do Brasil ORM - Object-relational Mapping PDA - Personal Digital Assistants PDF Portable Data Format PJOs - Plain Old Java Objects PSV - Proposta de Súmula Vinculante RCL - Reclamação RMI - Remote Method Invocation ROM - Read Only Memory SGBD - Sistema Gerenciador de Banco de Dados SL - Suspensão de Liminar SQL - Structured Query Language SS - Suspensão de Segurança STA - Suspensão de Tutela Antecipada STF - Supremo Tribunal Federal UML - Unified Modeling Language VSS -Visual SourceSafe WLAN - Wireless Local Area Network WMAN - Wireless Metropolitan Area Network WPAN - Wireless Personal Area Network WSD - Web Services Developers WWAN - Wireless Wide Area Network XML - Extensible Markup Language

15 LISTA DE SÍMBOLOS % - - Arroba - Parágrafo

16 SUMÁRIO AGRADECIMENTOS TECNOLOGIAS UTILIZADAS Java Java ME Persistência de Dados em Java COMUNICAÇÃO SEM FIO Integrated Development Environment (IDE) JAVA SERVER FACES (JSF) Documentos em pdf oracle 10g DO ADVOGADO E DA SOCIEDADE DE ADVOGADOS Da procuração Ad Juditia ANÁLISE E PROJETO DE SISTEMA ANÁLISE DE NEGÓCIO Instrução do problema Atores Envolvidos no Processo Descrição do Ambiente Atual Visão Geral do Produto Perspectiva do Produto (Análise de Mercado) Características ANÁLISE DE REQUISITOS Análise de Requisitos Funcionais Diagrama de classes Mapeamento para Modelo Relacional e Projeto Físico Diagrama de Atividades... 72

17 2.4.4 MVC Diagrama de Sequência IMPLEMENTAÇÃO E TESTES Oracle 10g Implementação JAVAME Aplicação web Considerações finais

18 17 INTRODUÇÃO O advogado, conhecido pelo formalismo e pelo excelente domínio do vernáculo bem articulado com suas principais ferramentas: a fala e a escrita, no presente século viu-se obrigado a interagir com a moderna Ciência da Informática. O que existia nessa área há alguns anos e era artigo de luxo e sofisticação tornou-se instrumento fundamental para exercício de sua nobre tarefa de contribuir para que haja Justiça, assim como preceitua nossa Carta Magna em seu artigo 133, que ressalta a importância de tal profissional à administração da justiça. Os meios eletrônicos de comunicação ganham cada vez mais destaque no mundo jurídico. O processo digital já é realidade e tem feito com que entidades de classe, como a Ordem dos Advogados do Brasil (OAB), invistam em treinamento tecnológico, considerando seu grandioso mérito, sendo que o analfabeto digital enfrenta grandes dificuldades até para situações corriqueiras, por exemplo, para fazer sua Declaração de Imposto de Renda. Neste contexto, percebe-se a extrema importância do assunto, tanto que o Supremo Tribunal Federal (STF), guardião da Constituição e instância jurisdicional máxima do Brasil possui uma lista do que somente pode ser julgado se for apresentado eletronicamente, conforme trecho a seguir: No Supremo, 14 classes processuais só são aceitas em meio eletrônico. São elas: ação direta de inconstitucionalidade (ADI), arguição de descumprimento de preceito fundamental (ADPF), ação direta de inconstitucionalidade por omissão (ADO), ação direta de constitucionalidade (ADC), reclamação (RCL), proposta de súmula vinculante (PSV), ação cautelar (AC), ação rescisória (AR), mandado de segurança (MS), mandado de injunção (MI), suspensão de liminar (SL), suspensão de segurança (SS), suspensão de tutela antecipada (STA), e habeas corpus (HC). Este último, quando não foi impetrado por advogado, será recebido em papel. (NUNES, 2010, p.16) Com toda essa inovação tecnológica atuando em setores tão tradicionais o escritório do advogado não pode ficar alheio a essas mudanças, funcionando com grandes arquivos de metal, repletos de pastas e agendas, para controlar o andamento dos processos, audiências e o atendimento de seus clientes. Definitivamente, isso não faz muito sentido devido ao acesso às tecnologias para aperfeiçoamento e portabilidade de suas funções. Este trabalho objetiva o desenvolvimento de um sistema web básico e genérico capaz de gerenciar um pequeno escritório de advogados, integrando

19 18 cadastro de funcionários, advogados, clientes, andamento de processos, bem como os compromissos de cada profissional, além da emissão de relatórios pertinentes e composição da procuração ad juditia. Para complementar, o advogado poderá consultar seus afazeres diários através de seu celular, tudo com enfoque na integração de tecnologias. Para isto, utilizar-se-á o banco de dados Oracle 10g, Integrated Development Environment (IDE) NetBeans 6.9.1, Java Server Pages (JSP), Servlets, Java Script, Java Server Faces (JSF), Java Micro Edition (Java ME), Unified Modeling Language (UML), juntamente com o padrão Model View Controler (MVC) e HyperText Markup Language (HTML) através do Microsoft Office SharePoint Designer Destarte, pode-se ressaltar que o profissional do direito não pode ficar alheio a esses aspectos tecnológicos, mas utilizá-los para aprimorar seu labor, de modo que seu escritório também esteja disponível virtualmente, possibilitando, de certa forma, seu acesso em qualquer lugar do mundo, bastando simplesmente a utilização da conexão com a Internet.

20 19 1 TECNOLOGIAS UTILIZADAS 1.1 JAVA O Java possui uma grande vantagem em relação a outras linguagens pelo fato de ser interpretado e compilado. Um programa em C para ser executado precisa que seu compilador gere o seu respectivo arquivo executável e deve existir um arquivo desse diferente para cada sistema operacional, o que muito dificulta a portabilidade. Em um programa feito em Java, ainda que sem utilizar os poderosos recursos da orientação a objetos, em vez de gerar um simples arquivo executável, seu compilador gera um bytecode, que pode ser entendido como uma linguagem intermediária entre a de alto nível e a de máquina. Para fazer funcionar, basta que o dispositivo tenha a versão compatível com o sistema operacional em uso da Java Virtual Machine (JVM), o que é capaz de interpretar o bytecode, sem a necessidade de utilizar um compilador diferente para cada sistema operacional que for necessário utilizar a aplicação. Dessa forma, o programa é eficiente porque é compilado e funciona em múltiplas plataformas porque é interpretado. Insta salientar que é necessário utilizar para compilar a aplicação o pacote Java destinado a cada categoria de equipamento. Após essa breve introdução acerca do funcionamento da linguagem, é mister conhecer, ainda que de forma sucinta, suas siglas e a organização estrutural, dividida em três tipos de pacotes, sendo eles: Java Standard Edition (Java SE): trata-se da versão inicial, voltada ao desenvolvimento de grande parte das aplicações desktop. Java Enterprise Editition (Java EE): atua para desenvolver aplicações de grande porte, que necessitam do uso de Enterprise Java Beans (EJB), além de servidores de aplicação. Este pacote disponibiliza um recurso muito utilizado quando o assunto é programação web, principalmente, se utilizado o padrão MVC, o Servlet. Java Micro Edition (Java ME): a escassez de recursos, geralmente, são dispositivos móveis. Tal pacote será melhor explorado em um tópico específico,

21 devido a sua importância para este trabalho. A imagem logo abaixo mostra a destinação de cada versão Java. 20 Figura Plataforma Java Fonte: SOUZA, 2010, p. 7 Terminados os padrões, é chegada a hora de compreender outros conceitos de extrema importância quando o assunto é Java: Java Virtual Machine (JVM): conhecida simplesmente por Máquina Virtual, é ela a responsável por interpretar o bytecode que outrora fora compilado para uma linguagem intermediária entre o alto e o baixo nível, o já citado bytecode. Para acelerar e execução, a JVM pode compilar pequenos trechos do programa. Esse recurso é chamado de just in time compiler. Application Programming Interface (API): é a interface que faz a interação entre o aplicativo e a programação, ou seja, são instruções e padrões de programação para possibilitar o acesso de um aplicativo. Java Software Development Kit (JSDK): mais conhecido por JDK, é um conjunto composto pela maquina virtual, compilador e appletviewer, com a função de executar applets e as famosas bibliotecas básicas da linguagem Java. Java Runtime Environment (JRE): resume-se, basicamente, à maquina virtual do Java, não sendo capaz, por si só, de compilar um programa. Java Community Process (JCP): trata-se de uma organização internacional, composta por desenvolvedores e fabricantes, cujo objetivo principal é aperfeiçoar a linguagem Java.

22 21 Java Specification Request (JSR): são intenções de alterações e novas implementações. É a parte documental para que sejam propostas modificações. Servlet: é comumente utilizado para criação de páginas web dinâmicas, aumentando as funcionalidades da camada servidora. Para isso, utiliza-se de um modelo de programação request/response, ou seja, solicitação e resposta. Se for considerado o padrão MVC, faz o papel do controlador. Web Services Developers Pack (WSDP): contempla as ferramentas e integra as APIs para o desenvolvimento web e Servlets. Java Server Pages (JSP): é uma proposta baseada em Java importantíssimo quando o assunto é desenvolvimento web. É uma linguagem de scripts muito semelhante ao PHP, porém, é transferida para Java puro no instante de execução Java ME Os dispositivos móveis ganham cada vez mais destaque no mercado mundial. Até mesmo o que era puramente mecânico há alguns anos, por exemplo, uma máquina de lavar roupas, atualmente possui um microdispositivo controlador e, na maioria das vezes, a linguagem utilizada é o Java, porém, na versão Java ME que tem um enfoque em equipamentos que dispõem de poucos recursos de memória, processamento e energia. (PALUDO, 2003) A plataforma Java ME foi criada pela Sun Microsystems, para permitir o uso de Java em dispositivos com recursos limitados. Ela envolveu o uso de um subconjunto da linguagem Java, que continua sendo Java, mas com a eliminação de uma série de funcionalidades (...). (BORGES, 2004) A plataforma acima citada subdivide-se em duas categorias, sendo que uma tem relação com aparelhos que possuem um pouco mais de recurso, como televisores. Já a outra é voltada para dispositivos móveis como celulares e smartphones, sempre levando em conta suas particularidades. Connected Device Configuration (CDC) é a configuração que atente aos dispositivos com uma quantidade levemente maior de recursos, por exemplo, set-top boxes e sistemas de navegação para carros. Devido ao fato desses equipamentos

23 22 possuírem maior poder de processamento, a CDC atua com um conjunto compatível com a plataforma Java SE, inclusive uma versão de sua máquina virtual chamada de Compact Virtual Machine (CVM). Com isso, ela consegue oferecer os seguintes recursos: portabilidade, suporte nativo a processos, rápida sincronização, execução de classes Java fora da memória Read Only Memory (ROM), classe de acesso remoto pequenas, suporte para sistemas operacionais de tempo real, suporte as seguintes características de Java SE: segurança, Java Native Interface (JNI), Remote Method Invocation (RMI), Java Virtual Machine Debugging Interface (JVMDI) e weakreferences (objetos recentemente utilizados). (VIANA, 2011) A outra opção é a Connected Limited Device Configuration (CLDC), muito utilizada em celulares e computadores de mão, tem a responsabilidade de atuar em quesitos essenciais como redes, entrada e saída, internacionalização e as bibliotecas do núcleo Java (java.lang, java.util). Suas raízes estão em um padrão menos limitado, o CDC. O objetivo desse padrão é a programação de aplicações e não do sistema. Devido a isso, o desenvolvedor estará plenamente voltado para sua aplicação, não se preocupando em qual equipamento vai funcionar. Tal categoria do Java ME possui uma grande preocupação com segurança, utilizando-se camadas especializadas: baixo nível, nível de aplicação e fim a fim. A primeira trata da qualidade da semântica e para que nenhum código mal-intencionado cause falhas na máquina virtual. No setor de nível de aplicação, controla tudo que ela pode acessar, desde bibliotecas a recursos do sistema. Por último, a proteção fim a fim protege toda a transação até que seja encerrada. (CARNIEL, 2007) Dentre as implementações do CLDC, há uma biblioteca de comunicação que merece destaque: Connection Framework. Ela é capaz de fazer conexões com um site da Internet, servidores e portas de comunicação. (CARNIEL. 2007) Entretanto, essas duas configurações não são suficientes para suprir todas as necessidades do ambiente de execução. Para complementá-las existem os perfis (profiles) que adicionam classes que possibilitam desenvolver aplicações para um tipo específico de equipamento. Eles permitem a definição da camada de abstração das APIs necessárias para o programador escrever o código. Sua principal função é trabalhar para interoperabilidade entre aparelhos de uma mesma categoria. Os principais perfis para o CLDC são o Mobile Information Device Profile (MIDP) e o PDA Profile (PDA). O primeiro lida com a comunicação por rede pelo HTTP 1.1, interface gráfica com o usuário simples e armazenamento local de dados.

24 23 O segundo, por sua vez, é feito para que as facilidades encontradas em PDAs e smartphones sejam aproveitadas, principalmente na construção de interfaces gráficas mais sofisticadas. Para a CDC, os perfis de destaque são: Fondation, Personal e RMI. O Fundadion Profile é responsável por trazer as principais bibliotecas do Java ME. O Personal Profile está relacionado com as bibliotecas gráficas. O RMI adiciona suas bibliotecas do Java SE, porém apenas o lado cliente dessa API é suportado. Por derradeiro, não faz muito sentido falar em Java ME sem citar o MIDlet (aplicativo para o perfil MIDP). Ele está presente em todas as etapas em todas as fases do aplicativo, principalmente quando há mudança de um estado para outro do mesmo. Insta salientar o método startapp( ), que pode ser implementado pelo desenvolvedor para que possa tomar atitudes em relação a cada mudança de estado. (PAULO, 2008) A figura 1.2 mostra as diferentes aplicações da plataforma Java, com destaque para Java ME. Figura Java Micro Edition Fonte: 3G, 2011.

25 Persistência de Dados em Java O desenvolvimento de uma aplicação, na maioria das vezes, não está relacionado simplesmente a processar uma informação inserida pelo usuário, mas também precisa interagir com uma base de dados. Assim, necessita-se armazenar, recuperar, alterar e excluir os registros do negócio que o programa gerencia. A Persistência de dados, por sua vez, está intimamente ligada ao armazenamento em um banco relacional. No entanto, a linguagem Java está cada vez mais presente nesses aplicativos que se comunicam com bancos de dados. O fato de destaque é que Java utiliza o paradigma de orientação a objetos, com várias diferenças em relação aos tradicionais bancos de dados relacionais. Desse modo, o desafio é aliar os poderosos recursos da orientação a objetos com a segurança e confiabilidade dos bancos relacionais, fazendo com que tudo funcione harmonicamente, sendo que as soluções mais utilizadas são o Java Database Connectivity (JDBC), Hibernate e Java Persistence API (JPA). (KING, 2004) Porém, antes do estudo dessas tecnologias, é preciso conhecer a ideia do Mapeamento Objeto-Relacional (ORM) e do Plain Old Java Objects, ou POJOs. O primeiro, em linhas gerais, tem por objetivo fazer a integração de aplicações orientadas a objetos com os tradicionais bancos relacionais. Nos casos do Hibernate e do JPA, isso é feito automaticamente. O segundo é formado por categorias de objetos Java que apresentam uma forma bem mais modesta, se o referencial for um framework. (GOUVEA, 2010) O JDBC é, geralmente, o primeiro contato que os estudantes têm quando o assunto é persistência de dados em Java. Trata-se de API que possibilita ao desenvolvedor a conexão com o banco de dados, bem como, a utilização de SQL na aplicação Java de modo a permitir e realização de consultas e manipulação de resultados. Em última análise, o JDBC é uma interface implementada pela classe DriverManager que é responsável por gerenciar as conexões, uma vez que é compatível com vários drivers, por isso, é possível a conexão com vários SGBDs sem a necessidade de alterar o código já escrito em Java. Tal interface, embora comumente seja trabalhada em baixo nível, também está servindo de base para o

26 25 projeto de outras que atuarão em alto nível para viabilizar o mapeamento de bancos relacionais direto para classes Java. (LOPES, 2010) A arquitetura do JDBC tem por finalidades principais ser uma interface independente e viabilizar o acesso a qualquer Sistema Gerenciador de Banco de Dados, através de Structured Query Language (SQL). A API JDBC atua nas frentes de alto e baixo nível. A primeira é utilizada pelos programas para acessar em primeira instância as funcionalidades oferecidas pelo JDBC. A segunda, por sua vez, interage com os métodos disponíveis nos drivers JDBC, ou seja, quem efetivamente faz a conexão com o banco de dados, conforme ilustrado na figura abaixo. Figura API JDBC. Fonte: WILSON, A imagem logo acima é uma representação da arquitetura JDBC. É importante destacar a função da classe DriverManager, que é responsável por abrir a conexão do driver JDBC já registrado. Ao iniciar a comunicação, o DriverManeger seleciona um driver de uma lista para realizar a conexão, de acordo com a URL (caminho do BD) especificada. Assim que houve sucesso em sua função, as buscas de resultados (fetch) e consultas (queries) são feitas propriamente no driver JDBC.

27 Conhecer as classes da API JDBC é de extrema utilidade para o desenvolvimento do tema, como bem descreve Márcio Pulcinelli: 26 DriverManager Passa as requisições de conexão para os drivers JDBC. DriverPropertyInfo Uma instância de propriedades de uma conexão de um driver JDBC. Types Uma lista de constantes simbólicas de tipos de dados SQL Data uma extensão da classe java.util.date mais apropriada ao tipo de dados Date do SQL. Time Uma extensão da classe java.util.date mais apropriada ao tipo de dados Time do SQL Timestamp Uma extensão da classe java.util.date mais apropriada ao tipo de dados Timestamp do SQL. Numeric Um tipo de dados numérico com maior precisão que proporciona um conjunto completo de operações aritméticas de grande precisão; esta classe é apropriada ao tipo de dados Numeric do SQL. Driver Classe através da qual o Driver Manager acessa os drivers JDBC Connection, efetuando uma conexão ao banco de dados; através dela, o programador manipula suas consultas e resultados Statement Classe que executa comandos SQL simples PreparedStatement Classe especializada em manipular comandos SQL com parâmetros. CallableStatement Classe especializada em manipular chamadas a procedimentos armazenados. ResultSet Classe para acessar os resultados obtidos pela execução de uma consulta SQL. DatabaseMetaData Classe usada para acessar uma grande variedade de informações sobre uma conexão a um banco de dados. ResultSetMetaData Classe usada para acessar uma grande variedade de informações sobre os atributos de um ResultSet. (PULCINELLI, 2010) Portando, mesmo sendo uma das maneiras mais simples de fazer a comunicação entre os aplicativos Java e o banco de dados, o JDBC mostra todos seus recursos que, bem explorados, são capazes de funcionalidades fantásticas, embora muitos o considerem uma tecnologia em decadência. Segundo KING (2004), o Hibernate, também disponível no pacote.net sob a nomenclatura de NHibernate, facilita o mapeamento entre os atributos dos objetos e as tabelas dos bancos de dados relacionais, uma vez que diminui a complexidade da operação devido ao fato de transformar as classes Java para tabelas SQL automaticamente. Insta salientar que esse mapeamento pode ser implementado por arquivos Extensible Markup Language (XML), JSR-220 Persistence Annotation ou código Java. Sua consagração está diretamente relacionada à sua simplicidade, pois concentra todo envolvimento no Hibernate Session, como mostra a figura a seguir:

28 27 Figura Arquitetura Hibernate. Fonte: DEVMEDIA, O ponto de destaque da figura acima fica por conta do Hibernate Session, uma vez que engloba o conceito do gerenciador de persistência (Persistence Manager), frequentemente utilizado para operações de inserção, atualização, consulta e remoção de cada instância de classe mapeada pelo Hibernate. Já o SessionFactory tem a responsabilidade de compilar e armazenar nas tabelas. Como o Hibernate conecta-se a vários bancos de dados, precisa-se atender às solicitações dos mesmos, relacionando com o mapeamento. Essa é outra finalidade importante do SessionFactory, que é configurado de acordo com o SGBD que está atuando, portanto, especifica-se cada objeto persistido no banco de dados

29 28 através de um arquivo XML. Além disso, há três estados que um objeto pode apresentar no contexto do Hibernate: Transient: objeto não salvo que ainda está na memória. Persistent: objeto na cache do SessionFactory que pode ainda não estar salvo. Detached: objeto gravado com sucesso no banco de dados. Desse modo, pode-se afirmar que o Hibernate é uma solução de fácil acesso e bastante eficaz para integrar objetos a bancos de dados relacionais, uma vez que é capaz de realizar o mapeamento objeto-relacional e ainda possui excelentes estruturas para persistência de dados. O último tópico abordado fica a cargo do moderno JPA. Trata-se de um framework empregado na camada de persistência que tem por objetivo integrar os conceitos de orientação a objetos ao modelo relacional, de modo a melhorar o rendimento do desenvolvedor. Seu funcionamento é simples e rápido, pois todo o trabalho de mapeamento que o programador teria de efetuar é realizado de forma automatizada pela API, isso é possível graças ao Java Persistense Metadada, posto em prática por arquivos XML ou Java annotation, que indica a classe que sofre persistência, bem como e relação entre seus métodos e a coluna da tabela. (GOUVEA, 2010) Em regra, o nome da classe é o mesmo da tabela, assim como cada atributo equivale a nome da coluna. Todavia, isso pode perfeitamente ser alterado de maneira bastante simples. Utiliza-se anntotations também para especificar a questão da cardinalidade, @ManyToOne Isso significa, respectivamente, um para um, um para muitos, muitos para um e muitos para muitos, ou ainda, o famoso n para n. O fato curioso fica por conta do JPA utilizar-se do já citado JDBC para efetivar as operações de persistência, portanto, é necessário escolher um JPA Provider. Contudo, persistir dados deixou de ser uma tarefa complexa e cansativa devido a tais ferramentas que muito aperfeiçoam o desempenho do desenvolvedor. Porém, o conhecimento teórico acerca do mapeamento objeto-relacional em muito contribui para uma utilização mais avançada dessas tecnologias.

30 COMUNICAÇÃO SEM FIO A transferência de dados entre dispositivos eletrônicos, durante muitos anos, era efetuada apenas por cabos, o que possuía vários inconvenientes, principalmente a questão da infra-estrutura necessária para acomodar os fios. Para sanar tal problema, foi desenvolvida a tecnologia wireless que pode ser entendida como a maneira de transmitir dados à distância entre clientes e servidores sem o uso de condutores elétricos a uma distância que varia de alguns metros, como no caso do controle remoto do televisor, até milhões de quilômetros com o emprego de satélites artificiais. Os dispositivos clientes podem ser bastante diversificados, desde os tradicionais computadores até os mais avançados celulares. (VIANA, 2009) Antes de aprofundar o estudo, é importante entender alguns aspectos físicos que muito auxiliam a compreensão de como um dado pode sair de um lugar e ir para o outro sem, ao menos, utilizar um cabo ligando dois pontos. Através do uso de ondas eletromagnéticas e de infravermelho isso é perfeitamente possível. Ondas eletromagnéticas, de maneira simples, nada mais são do que campos elétricos e magnéticos alternados entre si de maneira perpendicular e atingem uma velocidade muito próxima da luz. Uma vez lançadas, elas permanecem trafegando até que sua energia se esgote. Todavia, há algumas características acerca de ondas relevantes para o aprendizado, como comprimento de onda, frequência e amplitude. Tais aspectos são grandezas físicas, ou seja, podem ser medidos quantitativamente e sempre são acompanhadas de uma unidade de medida correspondente. (SILVA, 2010) Frequência é o número de oscilações por unidade de tempo, medida no Sistema Internacional por Hz. Comprimento de onda é a distância entre duas cristas, comumente medida em metros. Amplitude é a altura da onda entre o ponto mais baixo e o mais alto. Também utiliza a mesma unidade de medida do comprimento de onda. Insta salientar que frequência e comprimento de onda são grandezas físicas inversamente proporcionais, isto significa que se a frequência aumenta, diminui-se o

31 30 comprimento. Se este aumenta, diminui-se a frequência. Uma onda eletromagnética propaga-se perfeitamente no vácuo. (SILVA, 2008) O infravermelho é uma radiação localizada no setor invisível do espectro eletromagnético, nas proximidades do final vermelho de luz visível, além disso, não gera ionização e nos vertebrados pode ser percebida na forma de calor, assim como foi constatado em 1800 por William Herschel. Nesse contexto, vale lembrar a Infrared Data Association (IrDA), entidade responsável por estabelecer os padrões para esse tipo de comunicação. Não há como falar de redes sem fio sem classificá-las, pois agrupar por semelhanças muito facilita os estudos. Neste quesito não há muita diferença para as redes convencionais, a não ser o prefixo wireless na frente. Logo abaixo, contam as principais classificações quanto à área de abrangência. Wireless Personal Area Network (WPAN) é projetada para pequenas redes, geralmente utilizada em conjunto com o Bluetooth. Wireless Local Area Network (Wireless LAN ou WLAN) - trata-se da conexão de rede local por ondas eletromagnéticas muito utilizada para compartilhar informações e acesso à Internet em escritórios, aeroportos, hotéis e similares, mostrando claramente suas vantagens em relação à rede ADSL convencional. (SILVA, 2008) Wireless Metropolitan Area Network (WMAN) faz referência a uma rede metropolitana que é capaz de atingir no mínimo alguns quilômetros quadrados. Wireless Wide Area Network (WWAN) é a rede de longo alcance, geograficamente distribuída, capaz de abranger um país inteiro ou até continentes, englobando as redes WPAN, WLAN e WMAN. A Internet é um ótimo exemplo. (WIRELESS, 2010) Por outro lado, isso não faria sentido sem o trabalho dos protocolos que, simplificadamente, são a linguagem que os dispositivos utilizam para estabelecer a comunicação entre si, estão concentrados entre os principais: o Bluetooth e o , também conhecido por Wi-Fi. É importante ressaltar que são protocolos complementares, e não concorrentes como muito erroneamente divulgam. O primeiro, inicialmente, foi projetado para conectar dispositivos em uma distância não superior a dez metros, sendo muito empregado para conexão de celulares com computadores e até mesmo com seus próprios acessórios como, por exemplo, fones de ouvido. Os dispositivos identificam-se e são capazes de

32 31 estabelecer pequenas redes, tendo um deles como host. Embora o Bluetooth seja utilizado em pequenas distâncias, sua grande vantagem é que consome pouca energia, o que significa uma grande vantagem para sua implementação em dispositivos móveis que necessitam de um uso muito eficiente de energia para poupar suas baterias. Já o protocolo , mais popularizado em sua versão b, utiliza o mesmo espectro de frequência que o Bluetooth, porém a transmissão é feita valendo-se do direct-sequence spread-spectrum. No princípio, os dados eram transmitidos a uma taxa de 11 Mbps, mas hoje equipamentos que atuam a 100 Mbps podem facilmente ser encontrados no mercado. No entanto, tal taxa pode cair por fatores como a distância, ficando em torno de até 5 Mbps, dependendo do equipamento. A distância média de operação é de cem metros, mas em locais fechados essa distância cai consideravelmente. Embora possua uma alta taxa de transmissão e uma distância considerável, possui a desvantagem de consumir bastante energia em relação ao Bluetooth, o que dificulta seu uso em dispositivos que precisam garantir uma maior autonomia da bateria. (WIRELESS, 2010) 1.3 INTEGRATED DEVELOPMENT ENVIRONMENT (IDE) O termo IDE, do inglês Integrated Development Environment, que pode ser entendido como Ambiente de Desenvolvimento Integrado, constitui-se de um software com excelentes ferramentas para facilitar os programadores a trabalhar com os recursos da linguagem e facilitar na digitação e implementação do código. Na maioria das vezes, uma IDE é basicamente composta por um editor de códigofonte que reconhece as expressões reservadas, um compilador, um depurador e demais recursos específicos.(oliveira, 2011) Encontram-se disponíveis muitos ambientes de desenvolvimento Java, cada um explorando aquilo que julga ser mais útil. O fato é que a melhor ferramenta é aquela que a pessoa mais tem conhecimento. Portanto, serão apresentadas algumas delas. JCreator: fácil e poderoso. É gratuito em sua versão básica que oferece principalmente suporte para aplicações (J2SE). Para quem deseja mais

33 32 complementos como complemento da linha de código, preenchimento para parâmetros, nomes e sintaxe de membros; além de interface avançada para JDBC e instrumentos para alta produtividade, basta adquirir a versão Pro. (BREGAIDA, 2011) Gel: pequeno e muito rápido é nativo para Windows e foi escrito em Delphi por Gerald Nunn. O IDE trabalha com sintaxe para Java, JSP, HTML, XML, C, C++, Perl, Python e outras. É possível desfazer e refazer ações infinitamente, identação de bloco, pesquisa por expressão regular e em arquivos. Também oferece suporte para Concurrent Version System (CVS), Visual Source Safe (VSS) e outros. Faz a ligação do Java com JSP, possui complemento de código e dicas de métodos das classes do Java, sem contar os plugins personalizáveis. É gratuito, porém, seu desenvolvimento não é continuado desde meados de (BREGAIDA, 2011) JEdit: um editor de tamanho reduzido. Possui as funcionalidades básicas da linguagem Java e é escrito nela própria, portanto, funciona em qualquer sistema operacional que possua a máquina virtual do Java instalado. Chama a atenção o fato de estar disponível em mais de noventa idiomas. É totalmente gratuito, inclusive para uso comercial. (BREGAIDA, 2011) OptimalJ: utiliza uma interface gráfica para o usuário bastante parecida com a do famoso NetBeans. Além disso, traz recursos muito interessantes e pouco explorados por outros ambientes, por exemplo, geração de códigos a partir de diagramas UML, refatoração refinada e ferramentas para análise de desempenho. Contudo, necessita-se adquirir a licença. (BREGAIDA, 2011) Eclipse: um dos mais conhecidos ambientes de desenvolvimento quando o assunto é Java. Trata-se de um projeto de código aberto (opensource) e tem a finalidade de ser uma plataforma robusta para desenvolvimento comercial que integra as mais modernas tecnologias, tanto para aplicações locais, até complexos sistemas web. É capaz de integrar diversas tecnologias, como JSP, MVC, Servlets, XML, interagindo com containers, por exemplo, o Apache TomCat. Embora o Projeto Eclipse seja patrocinado pela IBM, conta com a colaboração de importantes parceiros: Borland, Oracle, OMG, Merant, Novell (SuSE), Red Hat, Sybase, Fujitsu, entre outros. (BREGAIDA, 2011) NetBeans: muito bem conceituado entre os desenvolvedores, também é um projeto de código aberto, repleto de recursos para trabalhar com qualquer tipo de aplicação. Possui suporte, além do Java, para HTML, C, C++, JSP, entre outros.

34 33 Existem várias versões gratuitas e comerciais. Integra as tecnologias JSP, XML, RMI, CORBA, JINI, JDBC e Servlet; suporte a Ant, CVS e outros sistemas de controle de versão, além de disponibilizar suporte para compiladores e depuradores, assistentes e ferramentas para geração automática de alguns códigos. (BREGAIDA, 2011) Intelij IDEA: trate-se de um IDE completo, comercial, com elevado nível de usabilidade e aproveitamento de códigos. Está disponível para Windows, Linux, MacOS e Unix. Possui uma interface para edição de arquivos Java, JSP, XML, HTML. Além disso, trás recurso de autocompletar, identação automática, busca e substituição, reconhecimento de sintaxe, colocação de parênteses e chaves, informações sobre classes e métodos do Java, geração automatizada de código, entre outros. O ponto de destaque fica por conta do refactoring, capaz de renomear e mover classes, pacotes, métodos, atributos, variáveis locais com atualização global das referências e parâmetros. (BREGAIDA, 2011) Sun Java Studio Creator: versão moderna do antigo Projeto Rave. É um IDE da nova geração e tem por enfoque o desenvolvimento Java Web, principalmente voltado para Java Server Faces (JSF), possuindo uma interface bastante simples, bastando, na maioria das vezes, arrastar e soltar para gerar o código. É bastante semelhante ao.net da Microsoft. (BREGAIDA, 2011) 1.4 JAVA SERVER FACES (JSF) O mercado de desenvolvimento cobra cada vez mais qualidade e agilidade de seus profissionais. Digitar linha por linha do código é muito importante para um primeiro contato com a informática na graduação, porém perde-se muito em rendimento. Para sanar essas necessidades, existem os frameworks, também chamados de ferramentas, capazes de automatizar a geração do código, de modo a propiciar muita rapidez, por exemplo, o JFS, desenvolvido pela Sun Microsystems para potencializar o desenvolvimento de aplicações web, principalmente as dinâmicas. Na prática, a utilização de Java Server Faces torna fácil o desenvolvimento através de componentes de interface de usuário, possibilitando a conexão desses

35 componentes a objetos de negócio de forma simplificada. (GONÇALVES, 2008, p.198) DOCUMENTOS EM PDF A tecnologia Portable Data Format (PDF) tornou-se muito utilizada devido a sua facilidade de visualização e impressão. Por esse motivo, utilizar-se-á um complemento para IDE NetBeans, denominado JasperReports, capaz de gerar relatórios com base em consultas a um banco de dados. O JasperReports é uma biblioteca escrita em Java, cujo o código é aberto e tem como principal foco facilitar a tarefa dos desenvolvedores na criação de relatórios para as aplicações tanto desktop como web, fornecendo uma ferramenta que facilita a geração dos mesmos, tendo como resultado de saída relatórios no formato XML, incentivando, assim, a criação de uma ferramenta para gerar relatórios visuais que foi chamada de IReport, sendo que o mesmo foi desenvolvido pelo italiano Giulio Toffoli e logo após com a grande popularização, foi comprada pela JasperSoft para se tornar ferramenta oficial na construção de relatórios para o JasperReports. (CASTRO, 2011, p. 24) 1.6 ORACLE 10G Atualmente, a informação é o bem mais precioso de uma empresa, o que justifica a importância de um Sistema Gerenciador de Banco de Dados (SGDB) confiável. O Oracle 10g é uma opção bastante interessante e dinâmica por ir do básico ao sofisticado, dentre outras vantagens, assim como comenta Lívia Garcia Alves de Souza: Por ser um modelo de banco de dados relacional e ter um grande potencial de performance, suas principais características são melhorias de gerenciamento (recursos de auto-ajuste); desempenho e melhorias de escalabilidade; capacidade de transporte de tabela para vários tipos de máquina (por exemplo, Windows para Linux); criptografia transparente de dados; entre outras. (SOUZA, 2011, p. 32)

36 DO ADVOGADO E DA SOCIEDADE DE ADVOGADOS O advogado é indispensável à administração da justiça, sendo inviolável por seus atos e manifestações no exercício da profissão, nos limites da lei. (CF, 1988, p. 99). O advogado é figura de extrema importância para promoção da Justiça, tanto que a Carta Magna da República Federativa do Brasil fez questão de explicitá-la em seu artigo 133. Nesse contexto, o ordenamento jurídico, especialmente nos termos da lei federal n de 1994 (Estatuto da Advocacia e da Ordem dos Advogados do Brasil), assegura privativamente a tal profissional, ressalvadas algumas exceções, o jus postulandi, ou seja, capacidade postulatória. Evidencia-se, então, a capacidade exclusiva do advogado representar interesses de terceiros perante o Poder Judiciário. Desta forma, por intermédio de sua atividade, o cidadão pode encontrar a tutela jurisdicional, sentido de solucionar os conflitos de interesses qualificados por uma pretensão resistida, ou de modo mais singelo, os litígios. Resumidamente, em regra, as pessoas para terem acesso à jurisdição necessitam que seja feito através de um advogado, devido à já citada capacidade postulatória. Insta salientar que a legislação brasileira admite, em algumas hipóteses, que não é preciso o acompanhamento de um advogado para pleitear algo em juízo. O exemplo clássico é o Habeas Corpus. Aos advogados é facultado organizarem-se em sociedades, porém existem algumas características específicas dessa organização reguladas pelo Estatuto da Advocacia. A sociedade de advogados pode ter natureza de pessoa jurídica ou sociedade civil de pessoas com o objetivo de prestação de serviços advocatícios. Ela não pode ser confundida com as demais sociedades civis, uma vez é defeso a mercantilização da advocacia, bem como a divulgação conjunta com outras atividades, lucrativas ou não, somente pode ser formada por advogados, dentre outras restrições previstas na lei. Em nível organizacional, um advogado pode ser sócio, empregado ou associado, como bem preceitua Haroldo Paranhos Cardella: O Regulamento Geral introduziu no art. 39 um tipo intermediário entre o sócio da sociedade e o advogado. É o advogado associado, que não estabelece qualquer vínculo de subordinação ou de relação de emprego com a sociedade, mas

37 36 atua em parceria, recebendo percentual ajustado, ou seja, utiliza as instalações da sociedade, mas não assume qualquer responsabilidade social. (CARDELLA, 2005, p. 81) Destaca-se que o simples fato de advogados reunirem-se em um mesmo lugar para compartilhar despesas não caracteriza sociedade de advogados, esta exige todo um trâmite na OAB para ser efetivada. É perfeitamente permitido que estes profissionais usem recursos em comum, por exemplo, divisão do valor do aluguel do prédio, do condomínio e, em tempos modernos, um programa de computador. Tais condutas não infringem nenhuma norma. (CARDELA, 2005) Independentemente de como esse profissional trabalhe, a informática pode facilitar muito sua vida, desde o aspecto da segurança até a mobilidade proporcionada pelos sistemas web. 1.8 DA PROCURAÇÃO AD JUDITIA Procuração é o instrumento, ou seja, um documento especialmente constituído para comprovar uma relação jurídica. Tal relação, neste trabalho, de maneira bastante singela, trata-se de um mandato, ou seja, uma outorga de poderes do cliente para o advogado e como destina-se para uma representação judicial, faz-se necessário a cláusula ad juditia. Em última análise, nada mais é que um contrato. O tema contratos, que contempla os mandatos, é muito vasto é não é o objetivo deste estudo. Portanto, nas linhas acima foram explanados, de maneira simples, alguns conceitos elementares e relação ao assunto.

38 37 2 ANÁLISE E PROJETO DE SISTEMA 2.1 ANÁLISE DE NEGÓCIO Instrução do problema Os escritórios de advocacia que não são informatizados ficam vinculados às antigas agendas de papel e os tradicionais formulários manuscritos. Toda vez que o advogado precisa consultar ou marcar um compromisso necessita ir fisicamente ao local onde está sua agenda ou, quanto está impossibilitado por qualquer motivo, pedir que alguém o faça. Além disso, existe a questões da procuração e do contrato de prestação de serviços advocatícios que precisam ser gerados com base em dados cadastrais, tanto do cliente quanto do advogado. Tal problema afeta diretamente o advogado, o cliente e secretária do escritório. Os dois primeiros são prejudicados com possíveis erros no preenchimento de formulários que não fazem nenhum tipo de validação de dados e todos sofrem com a demora para a conferência dos dados todas as vezes que eles forem utilizados para qualquer fim. O fato de digitar novamente os dados cadastrais dos envolvidos nos procedimentos gera vários erros de digitação e imprecisão das informações. De acordo com a gravidade do equívoco, invalida-se um documento, o que é extremamente gravoso tanto para o profissional quanto para seu cliente. Aliado a isso, o advogado não consegue, de certa forma, portabilidade de seu escritório devido a sua agenda ficar atrelada a um local físico. Contudo, a implantação do sistema permite sanar tais dificuldades porque os dados cadastrais dos envolvidos serão digitados e conferidos com cautela apenas uma vez, além de não mais haver rasuras, bem como trazer ao advogado a possibilidade de interagir com o sistema de agendamento de compromissos de qualquer dispositivo com acesso à Internet e consulta simples através de um aplicativo desenvolvido para seu celular. Tal abordagem reduzirá o fluxo de dados

39 na rede, já que trafegarão apenas as informações da consulta, pois a camada de visão ficará na aplicação Atores Envolvidos no Processo O sistema atua basicamente com três atores: cliente, advogado e secretária, cada um com suas responsabilidades. A secretária é responsável por fazer o atendimento inicial do cliente e agendamento de compromissos, principalmente as consultas. É também sua função cadastrar os clientes com os dados pessoais por eles fornecidos e fazer as atualizações necessárias, podendo também excluir e alterar informações referentes às consultas. Ao cliente cabe solicitar agendamento de consultas e conferir se seus dados cadastrais foram inseridos corretamente no formulário eletrônico. Por fim, o advogado atua como gerenciador do sistema, tendo amplos poderes para alterar, incluir e excluir compromissos, dados cadastrais de clientes, secretárias e advogados, acessar os relatórios de consultas por profissional, emitir a procuração ad juditia e relatórios relevantes. Somente ele terá acesso a consultas de compromissos via celular Descrição do Ambiente Atual O funcionamento de um pequeno escritório de advocacia, que não é informatizado, mantém a mesma forma de trabalho há algumas décadas. A obsoleta agenda de papel continua firmemente em seu mister: recebe as anotações de consultas e com rasuras guarda as alterações feitas pelo advogado ou pela secretária. Se o advogado não está no escritório e precisa saber quais serão seus compromissos para o próximo dia, por exemplo, precisa ir pessoalmente ler os escritos, ou pedir que alguém gentilmente o faça.

40 39 Os dados cadastrais dos clientes são anotados em formulários de papel e sempre que uma alteração precisa ser feita é confeccionado um novo formulário inserindo novamente todas as informações por quem realizou a atualização. Quanto os relatórios de quantos atendimentos foram realizados por ano por cada profissional, é incumbência da secretária fazê-los, analisando as anotações efetuadas no decorrer desse período. Outro aspecto de bastante relevância fica por conta da confecção de documentos que exigem os dados cadastrais, tanto de clientes quanto de advogados, uma vez que sempre que são utilizados precisam ser digitados novamente, ou seja, transcritos sempre que o cliente precisar outorgar uma procuração ad juditia ou necessita-se de um contrato de honorários. Após tal procedimento manual, geralmente realizado pelo advogado, surge o a obrigação de conferir se os dados não contêm erros de digitação, o que consome um tempo que poderia ser investido em mais atenção ao cliente. 2.2 VISÃO GERAL DO PRODUTO Perspectiva do Produto (Análise de Mercado) O produto em questão tem funcionamento autônomo. Tal afirmativa diz que ele não faz parte de um sistema, nem recebe informações provenientes de outro software. Destina-se apenas a solucionar a questão em foco de maneira simples e eficaz, informatizando tarefas que gastam muito tempo quando feitas pelo modo tradicional, contendo inconsistências de informações que podem ser resolvidas pela informática Características Quadro 1 Necessidades e prioridades.

41 40 Necessidade Cadastro de clientes Cadastro de advogados Cadastro de processos Cadastro de compromissos Cadastro de secretárias Relatório de consultas por advogado Expedição de relatório de processos por cliente Expedição da procuração ad juditia Expedição de relatório de consultas Expedição de relatório de andamentos do processo. Listagem de compromissos pelo celular. Pesquisas básicas Prioridade Alta Alta Alta Alta Alta Alta Alta Alta Alta Alta Alta Média 2.3 ANÁLISE DE REQUISITOS Análise de Requisitos Funcionais LISTA DE EVENTOS Quadro 2 Casos de uso. Letra Descrição Evento Caso de uso Resposta A Advogado solicita cadastro Dados do advogado Cadastrar advogado Cadastro, msg02 B Advogado solicita cadastro de secretária Dados da secretária Cadastrar secretária Cadastro, Msg11

42 41 C Secretária cadastra Dados do Cadastrar Cadastro, cliente cliente cliente Msg01 D Secretária cadastra Dados do Cadastrar Cadastro, processo processo processo msg05 E Advogado relaciona- Dados do RelacionarCliA Cadastro, se com processo e relaciona- dvprocesso msg23 cliente mento F Advogado solicita o Dados da Cadastrar Cadastro, cadastro de uma procuração procuração msg25 procuração ad juditia G Advogado solicita o Dados do Cadastrar Cadastro, cadastro de um andamento andamento msg22 andamento H Cliente solicita Dados do Agendar Agendamento, agendamento de agendamento consulta msg06 consulta I Advogado solicita Número da Compor Procuração ad procuração ad OAB, CPF do procuração ad juditia juditia cliente e juditia finalidade J Advogado solicita Dados do Cadastrar Cadastro, cadastro de contrato contrato contrato msg08 Advogado solicita Dados do Relacionar Cadastro, K relacionamento com relacionamento contratos e msg52 contrato advogados Advogado solicita Código do Gerar relatório Relatório L relatório individual de advogado de consultas individual de agendamentos por advogado agendamento M Advogado solicita Nome do Buscar cliente Dados do busca de cliente cliente cliente N Advogado solicita Nome da Buscar Dados da busca de secretária secretária secretária secretária

43 42 O Advogado solicita busca de procuração P Advogado solicita listagem individual de agendamentos Q Advogado solicita relatório geral de agendamentos R Advogado solicita relatório de andamentos do processo Advogado solicita S relatório de processos por cliente T Advogado busca contrato Código do cliente Código do advogado, dia, mês e ano Código do processo no tribunal Código do cliente Código do cliente Buscar Procuração Dados da procuração Listar Lista individual Compromissos de compromissos Gerar relatório Agenda geral de completa de agendamentos todos advogados Gerar relatório Relatório de de andamentos andamentos Gerar relatório Relatório de de processos processos por por cliente cliente Buscar contrato Dados do contrato Caso de uso A Cadastrar advogado Este caso de uso é responsável pelo cadastro de um advogado. Curso Normal: A.1. O advogado solicita cadastro. A.1.2. O sistema obtém os dados do advogado. A.1.3. O sistema verifica se o campo Nº OAB está preenchido. A.1.4. O sistema cria uma instância do advogado e emite msg02 Advogado cadastrado!. Cursos Alternativos:

44 43 A.2: O advogado já está cadastrado e deseja-se alterá-lo. A.2.1. O sistema obtém os dados do advogado. A.2.2. O sistema verifica se o campo Nº OAB está preenchido. A.2.3. O sistema atualiza o advogado e emite msg03 Alteração realizada com sucesso!. A.2.4. Abandonar o caso de uso. A.3.1. O advogado já está cadastrado e deseja-se excluí-lo. A.3.2. O sistema exclui o advogado e emite msg04 Exclusão realizada com sucesso!. A.3.3. Abandonar o caso de uso. A.4: O campo Nº OAB não está preenchido. A.4.1. O sistema emite a msg05: Maybe not null. A.4.2: O sistema redireciona-se ao passo A.2.1. A.4.3. Abandonar o caso de uso. Figura Caso de uso cadastrar advogado. Caso de Uso B Cadastrar Secretária

45 44 Este caso de uso é responsável pelo cadastro de uma secretária. Curso Normal: B.1. O advogado solicita o cadastro de uma secretária. B.1.1. O sistema obtém os dados da secretária. B.1.2. O sistema cria uma instância do da secretária e emite msg11 Secretária cadastrada com sucesso!. Cursos Alternativos: B.2: A secretária já está cadastrada e deseja-se alterá-la. B.2.1. O sistema obtém os dados da secretária. B.2.2. O sistema atualiza o cliente e emite msg03 Alteração realizada com sucesso. B.2.3. Abandonar o caso de uso. B.3.1: A secretária já está cadastrada e deseja-se excluí-la. B.3.2. O sistema exclui a secretária e emite msg04 Exclusão realizada com sucesso!. B.3.3. Abandonar o caso de uso. Figura Caso de uso cadastrar secretária.

46 45 Caso de Uso C Cadastrar Cliente Este caso de uso é responsável pelo cadastro de um cliente. Curso Normal: C.1. O cliente solicita cadastro. C.1.1. O sistema obtém os dados do cliente. C.1.2. O sistema cria uma instância do cliente e emite msg01 Cliente cadastrado com sucesso!. Cursos Alternativos: C.2: O cliente já está cadastrado e deseja-se alterá-lo. C.2.1. O sistema obtém os dados do cliente. C.2.2. O sistema atualiza o cliente e emite msg03 Alteração realizada com sucesso. C.2.3. Abandonar o caso de uso. C.3.1: O cliente já está cadastrado e deseja-se excluí-lo. C.3.2. O sistema exclui o cliente e emite msg04 Exclusão realizada com sucesso!. C.3.3. Abandonar o caso de uso.

47 46 Figura Caso de uso cadastrar cliente. Caso de Uso D Cadastrar processo Este caso de uso é responsável pelo cadastro de um processo. Curso Normal: D.1. O advogado solicita o cadastro de um processo. D.1.1. O sistema obtém os dados do processo. D.1.3. O sistema cria uma instância do processo e emite msg05 Processo cadastrado com sucesso. Cursos Alternativos: D.2: O processo já está cadastrado e deseja-se alterá-lo. D.2.1. O sistema obtém os dados do processo. D.2.2. O sistema atualiza o processo e emite msg03 Alteração realizada com sucesso!. D.2.3. Abandonar o caso de uso. D.3: O processo já está cadastrado e deseja-se excluí-lo. D.3.1. O sistema exclui o processo e emite msg04 Exclusão realizada com sucesso!. D.3.2. Abandonar o caso de uso.

48 47 Figura Caso de uso cadastrar processo. Caso de Uso E Relacionar advogado com processo e cliente Este caso de uso é responsável pelo relacionamento do advogado com processo do respectivo cliente. Curso Normal: E.1. O advogado solicita o relacionamento com o processo e cliente. E.1.1. O sistema obtém os dados do relacionamento. E.1.2. O sistema cria uma instância do processo e emite msg23 Relacionamento concluído com sucesso. Cursos Alternativos: E.2: O relacionamento já está cadastrado e deseja-se alterá-lo. E.2.1. O sistema obtém os dados do relacionamento. E.2.2. O sistema atualiza o processo e emite msg03 Alteração realizada com sucesso!. E.2.3. Abandonar o caso de uso. E.3: O relacionamento já está cadastrado e deseja-se excluí-lo. E.3.1. O sistema exclui o relacionamento e emite msg04 Exclusão realizada com sucesso!. E.3.2. Abandonar o caso de uso.

49 48 Figura Caso de uso relacionar clientes processos e advogados. Caso de Uso F Cadastrar Procuração Este caso de uso é responsável pelo cadastro de uma procuração. Curso Normal: F.1. O advogado solicita o cadastro de uma procuração. F.1.1. O sistema obtém os dados da procuração. F.1.2. O sistema cria uma instância da procuração e emite msg25 Procuração cadastrada com sucesso. Cursos Alternativos: F.2: A procuração já está cadastrada e deseja-se alterá-la. F.2.1. O sistema obtém os dados do procuração. F.2.2. O sistema atualiza a procuração e emite msg03 Alteração realizada com sucesso!. F.2.3. Abandonar o caso de uso. F.3: A procuração já está cadastrado e deseja-se excluí-lo. F.3.1. O sistema exclui a procuração e emite msg04 Exclusão realizada com sucesso!. F.3.2. Abandonar o caso de uso.

50 Figura Caso de uso cadastrar procuração. Caso de Uso G Cadastrar andamento Este caso de uso é responsável pelo cadastro de um andamento processual. 49 Curso Normal: G.1. O advogado solicita o cadastro de andamento. G.1.1. O sistema obtém os dados do andamento. G.1.3. O sistema cria uma instância do andamento e emite msg22 Andamento cadastrado com sucesso. Cursos Alternativos: G.2: O andamento já está cadastrado e deseja-se alterá-lo. G.2.1. O sistema obtém os dados do andamento. G.2.2. O sistema atualiza o andamento e emite msg03 Alteração realizada com sucesso!. G.2.3. Abandonar o caso de uso. G.3: O andamento já está cadastrado e deseja-se excluí-lo. G.3.1. O sistema exclui o processo e emite msg04 Exclusão realizada com sucesso!. G.3.2. Abandonar o caso de uso. Figura Caso de uso cadastrar andamento processual.

51 50 Caso de uso H Agendar consulta Este caso de uso é responsável por agendar uma consulta. Curso Normal: H.1. O cliente solicita o agendamento de uma consulta. H.1.1. O sistema exibe uma lista com os códigos dos clientes cadastrados. H.1.2. O sistema exibe uma lista com os códigos dos advogados cadastrados. H.1.3. O sistema exibe uma lista com os códigos das secretárias cadastradas. H.1.4. O sistema solicita os demais dados da consulta. H.1.5. O sistema cria uma instância da consulta e emite msg06 Consulta agendada com sucesso!. Cursos Alternativos: H.2: Necessita-se desmarcar a consulta. H.2.1. O sistema mostra a lista de consultas para os usuário escolher. H.2.2. O sistema emite a msg04 Exclusão realizada com sucesso!. H Abandonar o caso de uso. H.3. Necessita-se alterar a consulta. H.3.1. O sistema obtém os dados do da consulta. H.3.2. O sistema atualiza a consulta e emite msg03 Alteração realizada com sucesso!. H.3.3. Abandonar o caso de uso.

52 51 Figura Caso de uso agendar consulta. Caso de uso I Compor procuração ad jutitia Este caso de uso é responsável por compor uma procuração ad juditia. Curso Normal: I.1: O advogado solicita a composição de uma procuração ad juditia I.1.1. O sistema obtém o CPF do cliente. I.1.2. O sistema obtém o Nº da OAB do advogado. I.1.3. O sistema obtém a finalidade da procuração. I.1.4. O sistema cria uma instância da procuração. Cursos Alternativos: I.2: O cliente não está cadastrado. I.2.2 O sistema emite a msg50 Cliente não cadastrado. I.2.3. Abandonar o caso de uso. I.3: O advogado não está cadastrado. I.3.1. O sistema emite a msg51 Advogado não cadastrado. I.3.3. Abandonar o caso de uso.

53 52 Figura Caso de uso compor procuração ad juditia. advocatícios. Caso de uso J Cadastrar Contrato Este caso de uso é responsável por cadastrar um contrato de honorários Curso Normal: J.1. O advogado solicita ao sistema o cadastro de um contrato de honorários advocatícios. J.1.1. O sistema obtém os dados da do contrato. J.1.2. O sistema cria uma instância do contrato e emite msg08 Contrato de honorários cadastrado com sucesso. Cursos Alternativos: J.2: O contrato já está cadastrado e deseja-se alterá-lo. J.2.1. O sistema obtém os dados do contrato. J.2.2. O sistema atualiza o contrato e emite msg03 Alteração realizada com sucesso!. J.2.3. Abandonar o caso de uso. J.3: O contrato já está cadastrado e deseja-se excluí-lo.

54 53 J.3.1. O sistema exclui o contrato e emite msg04 Exclusão realizada com sucesso!. J.3.2. Abandonar o caso de uso. Figura Caso de uso cadastrar contrato de honorários advocatícios. contrato. Caso de Uso K Relacionar contrato e advogado. Este caso de uso é responsável pelo relacionamento do advogado com um Curso Normal: K.1. O advogado solicita o relacionamento com o contrato. K.1.1. O sistema obtém os dados do relacionamento. K.1.2. O sistema cria uma instância do processo e emite msg52 Relacionamento contratual concluído com sucesso. Cursos Alternativos: K.2: O relacionamento já está cadastrado e deseja-se alterá-lo. K.2.1. O sistema obtém os dados do relacionamento. K.2.2. O sistema atualiza o processo e emite msg03 Alteração realizada com sucesso!.

55 54 K.2.3. Abandonar o caso de uso. K.3: O relacionamento já está cadastrado e deseja-se excluí-lo. K.3.1. O sistema exclui o relacionamento e emite msg04 Exclusão realizada com sucesso!. K.3.2. Abandonar o caso de uso. Figura Caso de uso relacionar contratos e advogados. Caso de Uso L Gerar relatório de consultas realizadas por um advogado Este caso de uso é responsável por gerar um relatório contendo as consultas realizadas por um advogado informado. Curso Normal: L.1. O advogado solicita relatório de consultas. L.1.1. O sistema obtém o número da OAB do advogado. L.1.2. O sistema verifica se o advogado está cadastrado. L.1.3. O sistema cria uma instância do relatório e emite msg10: Relatório gerado com sucesso.

56 55 Cursos Alternativos: L.2: O advogado não está cadastrado L.2.1. O sistema emite a msg99: Não cadastrado. L.2.2. O sistema redireciona para a interface de cadastro de advogados. L.2.3. Abandonar o caso de uso. Figura Caso de uso gerarrelconsadv. Caso de Uso M Buscar Cliente Este caso de uso é responsável por pesquisar um cliente por nome. Curso Normal: M.1. O advogado solicita a busca de um cliente por nome. M.1.1. O sistema obtém o nome do cliente. M.1.2. O sistema exibe todos os dados cadastrais do cliente. Cursos Alternativos: M.2: Não existe cliente com o nome fornecido. M.2.1. O sistema exibe a msg99 Não encontrado.

57 56 M.2.2. Abandonar o caso de uso. Figura Caso de uso buscar cliente. Caso de Uso N Buscar Secretária Este caso de uso é responsável por pesquisar uma secretária por nome. Curso Normal: N.1. O advogado solicita a busca de uma secretária por nome. N.1.1. O sistema obtém o nome da secretária. N.1.2. O sistema exibe todos os dados cadastrais da secretária. Cursos Alternativos: N.2: Não existe secretária com o nome fornecido. N.2.1. O sistema exibe a msg99 Não encontrado. N.2.2. Abandonar o caso de uso.

58 57 Figura Caso de uso buscar secretária.. Caso de Uso O Buscar Procuração Este caso de uso é responsável por pesquisa uma procuração ad juditia pelo código do cliente. Curso Normal: O.1. O advogado ou a secretária solicita a busca de uma procuração pelo código do cliente. O.1.1. O sistema obtém o código do cliente. O.1.2. O sistema exibe todos os dados da procuração. Cursos Alternativos: O.2: Não existe procuração para o código do cliente fornecido. O.2.1. O sistema exibe a msg99 Não encontrado. O.2.2. Abandonar o caso de uso.

59 58 Figura Caso de uso buscar procuração ad juditia. Caso de Uso P Listar compromissos Este caso de uso é responsável por listar os compromissos de um advogado. Curso Normal: P.1. O advogado solicita a listagem de seus compromissos. P.1.1. O sistema obtém o código do advogado, dia, mês e ano. P.1.2. O sistema exibe todos os compromissos do respectivo advogado para a data informada. Cursos Alternativos: P.2: Não há compromisso para a data informada ou há algum dado incorreto. P.2.1. O sistema exibe a msg99 Não encontrado. P.2.2. Abandonar o caso de uso.

60 59 Figura Caso de uso listar compromissos. Caso de Uso Q Relatório de geral de agendamentos Este caso de uso é responsável por gerar um relatório contendo todos os agendamentos realizados. Curso Normal: Q.1. O advogado solicita o relatório de compromissos agendados. Q.1.2. O sistema gera e exibe o relatório no formato PDF. Cursos Alternativos: Q.2: Não há compromissos. Q.2.1. O sistema exibe a msg99 Não encontrado. Q.2.2. Abandonar o caso de uso.

61 60 Figura Caso de uso gerar relatório geral de agendamentos Caso de Uso R Relatório de andamentos por processo Este caso de uso é responsável por gerar um relatório contendo todos os andamentos de um processo. Curso Normal: R.1. O advogado solicita o relatório de andamentos do processo. R.1.1. O sistema obtém o código do processo cadastrado no respectivo tribunal. R.1.2. O sistema gera e exibe o relatório no formato PDF. Cursos Alternativos: R.2: Não há andamentos ou processo não cadastrado. R.2.1. O sistema exibe a msg99 Não encontrado. R.2.2. Abandonar o caso de uso.

62 61 Figura Caso de uso gerar relatório de andamentos do processo. Caso de Uso S Gerar relatório de processos por cliente Este caso de uso é responsável por gerar um relatório contendo todos os processos de um determinado cliente. Curso Normal: S.1. O advogado solicita o relatório de processos por cliente. S.1.1. O sistema obtém o código do cliente. S.1.2. O sistema gera e exibe o relatório no formato PDF. Cursos Alternativos: S.2: Não há cliente ou processo. S.2.1. O sistema exibe a msg99 Não encontrado. S.2.2. Abandonar o caso de uso.

63 62 Figura Caso de uso gerar relatório de processos por cliente. Caso de Uso T Buscar Contrato cliente. Este caso de uso é responsável por buscar um contrato pelo código do Curso Normal: T.1. O advogado solicita a busca de uma um contrato pelo código do cliente. T.1.1. O sistema obtém o código do cliente. T.1.2. O sistema exibe todos os dados do contrato. Cursos Alternativos: T.2: Não existe contrato para o código do cliente fornecido. T.2.1. O sistema exibe a msg99 Não encontrado. T.2.2. Abandonar o caso de uso.

64 Figura Caso de uso buscar contrato. 63

65 Diagrama de classes Figura 2.21 Diagrama de classes

66 ANÁLISE E DESIGN Projeto de Banco de Dados Diagrama de Entidades e Relacionamentos (modelo lógico) Figura Diagrama de entidades e relacionamentos.

67 Mapeamento para Modelo Relacional e Projeto Físico Figura 2.23 Diagrama de estrutura de dados completo.

68 Figura 2.24 Diagrama de estrutura de dados compacto. 67

69 Figura 2.25 Diagrama de estrutura de dados parcial: agendamento. 68

70 Figura 2.26 Diagrama de estrutura de dados parcial: cadastro de contratos. 69

71 Figura 2.27 Diagrama de estrutura de dados parcial: processos. 70

72 Figura 2.28 Diagrama de estrutura de dados parcial: cadastro de procurações. 71

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

Uma Abordagem sobre Mapeamento Objeto Relacional com Hibernate

Uma Abordagem sobre Mapeamento Objeto Relacional com Hibernate Uma Abordagem sobre Mapeamento Objeto Relacional com Hibernate Luis Gustavo Zandarim Soares 1, Késsia Rita da Costa Marchi 1 1 Universidade Paranaense (Unipar) Paraná PR Brasil luisgustavo@live.co.uk,

Leia mais

UFG - Instituto de Informática

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

Leia mais

Banco de Dados de Músicas. Andre Lima Rocha Campos Osório Pereira Carvalho

Banco de Dados de Músicas. Andre Lima Rocha Campos Osório Pereira Carvalho Banco de Dados de Músicas Andre Lima Rocha Campos Osório Pereira Carvalho Definição Aplicação Web que oferece ao usuário um serviço de busca de músicas e informações relacionadas, como compositor, interprete,

Leia mais

Figura 1 - Arquitetura multi-camadas do SIE

Figura 1 - Arquitetura multi-camadas do SIE Um estudo sobre os aspectos de desenvolvimento e distribuição do SIE Fernando Pires Barbosa¹, Equipe Técnica do SIE¹ ¹Centro de Processamento de Dados, Universidade Federal de Santa Maria fernando.barbosa@cpd.ufsm.br

Leia mais

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

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

Leia mais

SISTEMA DE AGENDAMENTO E GERENCIAMENTO DE CONSULTAS CLÍNICAS

SISTEMA DE AGENDAMENTO E GERENCIAMENTO DE CONSULTAS CLÍNICAS SISTEMA DE AGENDAMENTO E GERENCIAMENTO DE CONSULTAS CLÍNICAS Pablo dos Santos Alves Alexander Roberto Valdameri - Orientador Roteiro da apresentação Introdução Objetivos Motivação Revisão bibliográfica

Leia mais

HIBERNATE EM APLICAÇÃO JAVA WEB

HIBERNATE EM APLICAÇÃO JAVA WEB HIBERNATE EM APLICAÇÃO JAVA WEB Raul Victtor Barbosa Claudino¹, Ricardo Ribeiro Rufino¹ ¹Universidade Paranaense (Unipar) Paranavaí PR Brasil victtor.claudino@gmail.com, ricardo@unipar.br Resumo: Este

Leia mais

Daniel Wildt dwildt@gmail.com. FACENSA Grupo de Estudos Java - FUJA Slide: 1

Daniel Wildt dwildt@gmail.com. FACENSA Grupo de Estudos Java - FUJA Slide: 1 Apresentação Tecnologia Java Daniel Wildt dwildt@gmail.com FACENSA Grupo de Estudos Java - FUJA Slide: 1 1. Java 2. JCP 3. Tecnologia Java 4. J2ME/J2SE/J2EE 5. Certificações 6. JUG 7. RSJUG Agenda 8. Ambiente

Leia mais

DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES

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

Leia mais

Desenvolvendo Websites com PHP

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

Leia mais

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

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

Leia mais

SQL APOSTILA INTRODUÇÃO A LINGUAGEM SQL

SQL APOSTILA INTRODUÇÃO A LINGUAGEM SQL SQL APOSTILA INTRODUÇÃO Uma linguagem de consulta é a linguagem por meio da qual os usuários obtêm informações do banco de dados. Essas linguagens são, tipicamente, de nível mais alto que as linguagens

Leia mais

Novo Guia de uso rápido do PROJUDI

Novo Guia de uso rápido do PROJUDI 1. O que é o PROJUDI? Novo Guia de uso rápido do PROJUDI O Processo Judicial Digital PROJUDI, também chamado de processo virtual ou de processo eletrônico, pode ser definido como um software que reproduz

Leia mais

Site para Celular JFPB

Site para Celular JFPB JUSTIÇA FEDERAL NA PARAÍBA Site para Celular JFPB http://m.jfpb.jus.br João Pessoa - PB Julho de 2011 JUSTIÇA FEDERAL NA PARAÍBA Sumário Página 1 Apresentação 3 2 Introdução 4 3 Oportunidade 4 4 Solução

Leia mais

Prevayler. Perola. André Luís Sales de Moraes Juliana Keiko Yamaguchi Tatiana Yuka Takaki

Prevayler. Perola. André Luís Sales de Moraes Juliana Keiko Yamaguchi Tatiana Yuka Takaki Prevayler Perola André Luís Sales de Moraes Juliana Keiko Yamaguchi Tatiana Yuka Takaki Prevayler Prevayler é a implementação em Java do conceito de Prevalência. É um framework que prega uma JVM invulnerável

Leia mais

IW10. Rev.: 02. Especificações Técnicas

IW10. Rev.: 02. Especificações Técnicas IW10 Rev.: 02 Especificações Técnicas Sumário 1. INTRODUÇÃO... 1 2. COMPOSIÇÃO DO IW10... 2 2.1 Placa Principal... 2 2.2 Módulos de Sensores... 5 3. APLICAÇÕES... 6 3.1 Monitoramento Local... 7 3.2 Monitoramento

Leia mais

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

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

Leia mais

Um Driver NDIS Para Interceptação de Datagramas IP

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

Leia mais

ABORDAGEM DE FRAMEWORKS PARA JSF QUE AUXILIAM O DESENVOLVIMENTO DE SOFTWARE

ABORDAGEM DE FRAMEWORKS PARA JSF QUE AUXILIAM O DESENVOLVIMENTO DE SOFTWARE ABORDAGEM DE FRAMEWORKS PARA JSF QUE AUXILIAM O DESENVOLVIMENTO DE SOFTWARE Amarildo Aparecido Ferreira Junior 1, Ricardo Ribeiro Rufino 1 ¹Universidade Paranaense (Unipar) Paranavaí PR Brasil aapfjr@gmail.com

Leia mais

UFG - Instituto de Informática

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

Leia mais

MAPEAMENTO OBJETO RELACIONAL: UM ESTUDO DE CASO

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

Leia mais

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

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

Leia mais

QUESTINAMENTOS AO EDITAL DE CONCORRÊNCIA 01/2013

QUESTINAMENTOS AO EDITAL DE CONCORRÊNCIA 01/2013 QUESTINAMENTOS AO EDITAL DE CONCORRÊNCIA 01/2013 Prezados Senhores da comissão de licitação da UENF, seguem alguns questionamentos acerca do edital de concorrência 01/2013 para esclarecimentos: 1. ANEXO

Leia mais

Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS)

Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS) Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS) Definição Geral: Disciplina de Compiladores Prof. Jorge Bidarra (UNIOESTE) A especificação de requisitos tem como objetivo

Leia mais

SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE. Aluno: Roberto Reinert Orientador: Everaldo A. Grahl

SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE. Aluno: Roberto Reinert Orientador: Everaldo A. Grahl SISTEMA DE WORKFLOW PARA MODELAGEM E EXECUÇÃO DE PROCESSOS DE SOFTWARE Aluno: Roberto Reinert Orientador: Everaldo A. Grahl Roteiro de apresentação Introdução Objetivos Fundamentação Teórica Workflow Processo

Leia mais

SCE-557. Técnicas de Programação para WEB. Rodrigo Fernandes de Mello http://www.icmc.usp.br/~mello mello@icmc.usp.br

SCE-557. Técnicas de Programação para WEB. Rodrigo Fernandes de Mello http://www.icmc.usp.br/~mello mello@icmc.usp.br SCE-557 Técnicas de Programação para WEB Rodrigo Fernandes de Mello http://www.icmc.usp.br/~mello mello@icmc.usp.br 1 Cronograma Fundamentos sobre servidores e clientes Linguagens Server e Client side

Leia mais

UNIVERSIDADE FEDERAL DA BAHIA INSTITUTO DE MATEMÁTICA CIÊNCIA DA COMPUTAÇÃO LINGUAGENS PARA APLICAÇÃO COMERCIAL. Java Peristence API 1.

UNIVERSIDADE FEDERAL DA BAHIA INSTITUTO DE MATEMÁTICA CIÊNCIA DA COMPUTAÇÃO LINGUAGENS PARA APLICAÇÃO COMERCIAL. Java Peristence API 1. UNIVERSIDADE FEDERAL DA BAHIA INSTITUTO DE MATEMÁTICA CIÊNCIA DA COMPUTAÇÃO LINGUAGENS PARA APLICAÇÃO COMERCIAL Java Peristence API 1.0 Salvador-Ba Março/2009 1 RAMON PEREIRA LOPES Java Peristence API

Leia mais

BlackBerry Mobile Voice System

BlackBerry Mobile Voice System BlackBerry Mobile Voice System Comunicações móveis unificadas O BlackBerry Mobile Voice System (BlackBerry MVS) leva os recursos do telefone do escritório aos smartphones BlackBerry. Você pode trabalhar

Leia mais

CURSO DESENVOLVEDOR JAVA WEB E FLEX Setembro de 2010 à Janeiro de 2011

CURSO DESENVOLVEDOR JAVA WEB E FLEX Setembro de 2010 à Janeiro de 2011 CURSO DESENVOLVEDOR JAVA WEB E FLEX Setembro de 2010 à Janeiro de 2011 O curso foi especialmente planejado para os profissionais que desejam trabalhar com desenvolvimento de sistemas seguindo o paradigma

Leia mais

Sistemas Distribuídos

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

Leia mais

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Disciplina: INF 02810 Prof.: (monalessa@inf.ufes.br) Conteúdo 1. Introdução 2. Processo de Software 3. Gerência de

Leia mais

Unidade 8: Padrão MVC e DAO Prof. Daniel Caetano

Unidade 8: Padrão MVC e DAO Prof. Daniel Caetano Programação Servidor para Sistemas Web 1 Unidade 8: Padrão MVC e DAO Prof. Daniel Caetano Objetivo: Apresentar a teoria por trás dos padrões na construção de aplicações Web. INTRODUÇÃO Nas aulas anteriores

Leia mais

Agregador de feeds RSS para dispositivos móveis

Agregador de feeds RSS para dispositivos móveis Agregador de feeds RSS para dispositivos móveis Disciplina: Computação Móvel Professor: Mauro Nacif Rocha Data: 27/02/2007 Hadriel Toledo Lima 50290 Juliana Pinheiro Campos 47683 Luis Felipe Hussin Bento

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

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

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

Leia mais

Cadastramento de Computadores. Manual do Usuário

Cadastramento de Computadores. Manual do Usuário Cadastramento de Computadores Manual do Usuário Setembro 2008 ÍNDICE 1. APRESENTAÇÃO 1.1 Conhecendo a solução...03 Segurança pela identificação da máquina...03 2. ADERINDO À SOLUÇÃO e CADASTRANDO COMPUTADORES

Leia mais

MAGREGISTER 1.0: GERADOR DE INTERFACES DE COLETAS DE DADOS PARA PDA S. Acadêmico: Gilson Chequeto Orientador: Adilson Vahldick

MAGREGISTER 1.0: GERADOR DE INTERFACES DE COLETAS DE DADOS PARA PDA S. Acadêmico: Gilson Chequeto Orientador: Adilson Vahldick MAGREGISTER 1.0: GERADOR DE INTERFACES DE COLETAS DE DADOS PARA PDA S Acadêmico: Gilson Chequeto Orientador: Adilson Vahldick Roteiro Introdução Objetivos do trabalho Fundamentação teórica Desenvolvimento

Leia mais

Plano de Gerenciamento do Projeto

Plano de Gerenciamento do Projeto Projeto para Soluções Contábeis 2015 Plano de Gerenciamento do Projeto Baseado na 5ª edição do Guia PMBOK Brendon Genssinger o e Elcimar Silva Higor Muniz Juliermes Henrique 23/11/2015 1 Histórico de alterações

Leia mais

2 Diagrama de Caso de Uso

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

Leia mais

Documento de Arquitetura

Documento de Arquitetura Documento de Arquitetura A2MEPonto - SISTEMA DE PONTO ELETRÔNICO A2MEPonto - SISTEMA DE PONTO ELETRÔNICO #1 Pág. 1 de 11 HISTÓRICO DE REVISÕES Data Versão Descrição Autor 28/10/2010 1 Elaboração do documento

Leia mais

Orientação a Objetos

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

Leia mais

Manual de Operação Aplicativo ClickIt

Manual de Operação Aplicativo ClickIt Manual de Operação Aplicativo ClickIt Rev. 1.1 Agosto/2010 GSControl Automação Ltda. Rua Washington Luiz, 675 ITC Conjunto 1101 Centro Porto Alegre RS CEP 90010-460 Telefone: (51)3026-0945 / (51)3287-2167

Leia mais

IplanRio DOP - Diretoria de Operações GIT - Gerência de Infraestrutura Tecnológica Gerente da GIT

IplanRio DOP - Diretoria de Operações GIT - Gerência de Infraestrutura Tecnológica Gerente da GIT 1. IDENTIFICAÇÃO Padrão Segmento Código P06.002 Revisão v. 2014 Plataformas Web 2. PUBLICAÇÃO Recursos Tecnológicos Versão Data para adoção Publicação v. 2014 23 de dezembro de 2014 PORTARIA N Nº 225 de

Leia mais

Introdução Funcionalidades por perfil Advogado e Jus Postulandi Adicionar defensoria representante de uma parte Adicionar procuradoria representante

Introdução Funcionalidades por perfil Advogado e Jus Postulandi Adicionar defensoria representante de uma parte Adicionar procuradoria representante 1 Introdução Funcionalidades por perfil Advogado e Jus Postulandi Adicionar defensoria representante de uma parte Adicionar procuradoria representante de uma parte Detalhes do processo Representante processual

Leia mais

Histórico da Revisão. Versão Descrição Autor. 1.0 Versão Inicial

Histórico da Revisão. Versão Descrição Autor. 1.0 Versão Inicial 1 of 14 27/01/2014 17:33 Sistema de Paginação de Esportes Universitários Documento de Arquitetura de Software Versão 1.0 Histórico da Revisão Data 30 de novembro de 1999 Versão Descrição Autor 1.0 Versão

Leia mais

Aplicação Prática de Lua para Web

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

Leia mais

Desenvolvimento de aplicações web com JSP

Desenvolvimento de aplicações web com JSP Desenvolvimento de aplicações web com JSP Leandro Soares de Sousa, Paulo Henrique de Sousa Sistemas de Informação Centro Universitário Luterano de Palmas (CEULP/ULBRA) Cx. Postal 160 77054-970 Palmas TO

Leia mais

Manual do Visualizador NF e KEY BEST

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

Leia mais

Introdução à Linguagem Java

Introdução à Linguagem Java Introdução à Linguagem Java Histórico: Início da década de 90. Pequeno grupo de projetos da Sun Microsystems, denominado Green. Criar uma nova geração de computadores portáveis, capazes de se comunicar

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Sistemas Operacionais Prof. Marcelo Sabaris Carballo Pinto Gerenciamento de Dispositivos Gerenciamento de Dispositivos de E/S Introdução Gerenciador de Dispositivos Todos os dispositivos

Leia mais

Lógica de Programação

Lógica de Programação Lógica de Programação Unidade 4 Ambiente de desenvolvimento Java QI ESCOLAS E FACULDADES Curso Técnico em Informática SUMÁRIO A LINGUAGEM JAVA... 3 JVM, JRE, JDK... 3 BYTECODE... 3 PREPARANDO O AMBIENTE

Leia mais

Engenharia de Requisitos Estudo de Caso

Engenharia de Requisitos Estudo de Caso Engenharia de Requisitos Estudo de Caso Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / Ian Sommerville 2007 Slide 1 Engenharia de Requisitos Exemplo 1 Reserva de Hotel 1. INTRODUÇÃO Este

Leia mais

Introdução a listas - Windows SharePoint Services - Microsoft Office Online

Introdução a listas - Windows SharePoint Services - Microsoft Office Online Page 1 of 5 Windows SharePoint Services Introdução a listas Ocultar tudo Uma lista é um conjunto de informações que você compartilha com membros da equipe. Por exemplo, você pode criar uma folha de inscrição

Leia mais

O CONCEITO DE TDD NO DESENVOLVIMENTO DE SOFTWARE

O CONCEITO DE TDD NO DESENVOLVIMENTO DE SOFTWARE O CONCEITO DE TDD NO DESENVOLVIMENTO DE SOFTWARE Renan Leme Nazário, Ricardo Rufino Universidade Paranaense (Unipar) Paranavaí PR - Brasil renazariorln@gmail.com, ricardo@unipar.br Resumo. Este artigo

Leia mais

Aplicativo web para definição do modelo lógico no projeto de banco de dados relacional

Aplicativo web para definição do modelo lógico no projeto de banco de dados relacional Aplicativo web para definição do modelo lógico no projeto de banco de dados relacional Juarez Bachmann Orientador: Alexander Roberto Valdameri Roteiro Introdução Objetivos Fundamentação teórica Desenvolvimento

Leia mais

Feature-Driven Development

Feature-Driven Development FDD Feature-Driven Development Descrição dos Processos Requisitos Concepção e Planejamento Mais forma que conteúdo Desenvolver um Modelo Abrangente Construir a Lista de Features Planejar por

Leia mais

UFG - Instituto de Informática

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

Leia mais

O PaperPort 12 Special Edition (SE) possui uma grande variedade de novos e valiosos recursos que ajudam a gerenciar seus documentos.

O PaperPort 12 Special Edition (SE) possui uma grande variedade de novos e valiosos recursos que ajudam a gerenciar seus documentos. Bem-vindo! O Nuance PaperPort é um pacote de aplicativos para gerenciamento de documentos da área de trabalho que ajuda o usuário a digitalizar, organizar, acessar, compartilhar e gerenciar documentos

Leia mais

BlackBerry Mobile Voice System

BlackBerry Mobile Voice System BlackBerry Mobile Voice System BlackBerry Mobile Voice System Comunicações móveis unificadas O Mobile Voice System ( MVS) foi projetado para unificar os recursos do telefone fixo aos smartphones e às redes

Leia mais

FERRAMENTA WEB PARA MODELAGEM LÓGICA EM PROJETOS DE BANCOS DE DADOS RELACIONAIS

FERRAMENTA WEB PARA MODELAGEM LÓGICA EM PROJETOS DE BANCOS DE DADOS RELACIONAIS FERRAMENTA WEB PARA MODELAGEM LÓGICA EM PROJETOS DE BANCOS DE DADOS RELACIONAIS PAULO ALBERTO BUGMANN ORIENTADOR: ALEXANDER ROBERTO VALDAMERI Roteiro Introdução Objetivos Fundamentação teórica Desenvolvimento

Leia mais

ANEXO 11. Framework é um conjunto de classes que colaboram para realizar uma responsabilidade para um domínio de um subsistema da aplicação.

ANEXO 11. Framework é um conjunto de classes que colaboram para realizar uma responsabilidade para um domínio de um subsistema da aplicação. ANEXO 11 O MATRIZ Para o desenvolvimento de sites, objeto deste edital, a empresa contratada obrigatoriamente utilizará o framework MATRIZ desenvolvido pela PROCERGS e disponibilizado no início do trabalho.

Leia mais

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

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

Leia mais

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

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

Leia mais

FACULDADE DE ENGENHARIA DE COMPUTAÇÃO. PROJETO FINAL I e II PLANO DE TRABALHO <NOME DO TRABALHO> <Nome do Aluno> <Nome do Orientador>

FACULDADE DE ENGENHARIA DE COMPUTAÇÃO. PROJETO FINAL I e II PLANO DE TRABALHO <NOME DO TRABALHO> <Nome do Aluno> <Nome do Orientador> FACULDADE DE ENGENHARIA DE COMPUTAÇÃO PROJETO FINAL I e II PLANO DE TRABALHO O Trabalho de Conclusão de Curso (TCC) a ser desenvolvido

Leia mais

Tecnologia PCI express. Introdução. Tecnologia PCI Express

Tecnologia PCI express. Introdução. Tecnologia PCI Express Tecnologia PCI express Introdução O desenvolvimento de computadores cada vez mais rápidos e eficientes é uma necessidade constante. No que se refere ao segmento de computadores pessoais, essa necessidade

Leia mais

WebApps em Java com uso de Frameworks

WebApps em Java com uso de Frameworks WebApps em Java com uso de Frameworks Fred Lopes Índice O que são frameworks? Arquitetura em camadas Arquitetura de sistemas WEB (WebApps) Listagem resumida de frameworks Java Hibernate O que são frameworks?

Leia mais

Arquitetura de Rede de Computadores

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

Leia mais

Programação para Web Artefato 01. AT5 Conceitos da Internet

Programação para Web Artefato 01. AT5 Conceitos da Internet Programação para Web Artefato 01 AT5 Conceitos da Internet Histórico de revisões Data Versão Descrição Autor 24/10/2014 1.0 Criação da primeira versão HEngholmJr Instrutor Hélio Engholm Jr Livros publicados

Leia mais

Prof. Marcelo Machado Cunha www.marcelomachado.com mcelobr@yahoo.com.br

Prof. Marcelo Machado Cunha www.marcelomachado.com mcelobr@yahoo.com.br Prof. Marcelo Machado Cunha www.marcelomachado.com mcelobr@yahoo.com.br Ementa Introdução a Banco de Dados (Conceito, propriedades), Arquivos de dados x Bancos de dados, Profissionais de Banco de dados,

Leia mais

5 Mecanismo de seleção de componentes

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

Leia mais

Ferramentas de Administração. PostgreSQL

Ferramentas de Administração. PostgreSQL Ferramentas de Administração ao SGBD PostgreSQL Diego Rivera Tavares de Araújo diegoriverata@gmail.com Introdução Mas o que é PostgreSQL? Introdução as ferramentas O PostgreSQL pode ser acessado a partir

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

FTIN Formação Técnica em Informática Módulo de Administração de Servidores de Rede AULA 02. Prof. Gabriel Silva

FTIN Formação Técnica em Informática Módulo de Administração de Servidores de Rede AULA 02. Prof. Gabriel Silva FTIN Formação Técnica em Informática Módulo de Administração de Servidores de Rede AULA 02 Prof. Gabriel Silva Temas da Aula de Hoje: Revisão da Aula 1. Redes LAN e WAN. Aprofundamento nos Serviços de

Leia mais

Introdução a Banco de Dados

Introdução a Banco de Dados Introdução a Banco de Dados Ricardo Henrique Tassi - Departamento de Replicação Índice 1- Introdução... 03 2- Quais são os bancos de dados mais conhecidos hoje em dia...04 3- Quais são os tipos de banco...05

Leia mais

DESENVOLVIMENTO DE SOFTWARE DE VOTAÇÃO WEB UTILIZANDO TECNOLOGIA TOUCHSCREEN

DESENVOLVIMENTO DE SOFTWARE DE VOTAÇÃO WEB UTILIZANDO TECNOLOGIA TOUCHSCREEN DESENVOLVIMENTO DE SOFTWARE DE VOTAÇÃO WEB UTILIZANDO TECNOLOGIA TOUCHSCREEN José Agostinho Petry Filho 1 ; Rodrigo de Moraes 2 ; Silvio Regis da Silva Junior 3 ; Yuri Jean Fabris 4 ; Fernando Augusto

Leia mais

Anexo I Formulário para Proposta

Anexo I Formulário para Proposta PLATAFORMA CGI.br Solicitação de Propostas SP Anexo I Formulário para Proposta Data: 05/07/2013 Versão: 1.1 Plataforma CGI.br Solicitação de Propostas - SP Anexo I Formulário para Proposta 1. Estrutura

Leia mais

Desenvolvendo para WEB

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

Leia mais

ESTUDO DE CASO WINDOWS VISTA

ESTUDO DE CASO WINDOWS VISTA ESTUDO DE CASO WINDOWS VISTA História Os sistemas operacionais da Microsoft para PCs desktop e portáteis e para servidores podem ser divididos em 3 famílias: MS-DOS Windows baseado em MS-DOS Windows baseado

Leia mais

Aula 1 Acesso a Banco de Dados

Aula 1 Acesso a Banco de Dados Laboratório de Banco de Dados Aula 1 Acesso a Banco de Dados Prof. Josenildo Silva jcsilva@ifma.edu.br Introdução O JDBC (Java Database Connectivity) foi criado com o intuito de fornecer aos programadores

Leia mais

UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS

UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ALEXANDRE PRADO BARBOSA RELATÓRIO DE ESTÁGIO Ponta Grossa 2012 ALEXANDRE PRADO BARBOSA Relatório

Leia mais

TUTORIAL DE UTILIZAÇÃO. Rua Maestro Cardim, 354 - cj. 121 CEP 01323-001 - São Paulo - SP (11) 3266-2096

TUTORIAL DE UTILIZAÇÃO. Rua Maestro Cardim, 354 - cj. 121 CEP 01323-001 - São Paulo - SP (11) 3266-2096 TUTORIAL DE UTILIZAÇÃO Índice Geral Antes de Começar 2 Procedimento de Instalação 3 Exportar dados para o 8 Acesso ao 10 Ordens de Serviço no 11 Solicitações de Serviço no 17 Folhas de Inspeção no 19 Importar

Leia mais

Trecho retirando do Manual do esocial Versão 1.1

Trecho retirando do Manual do esocial Versão 1.1 Trecho retirando do Manual do esocial Versão 1.1 A rotina de acesso direto ao XML do S-1000, o usuário pode encontrar na opção de cadastro de Empresas do SIP. Sempre que o usuário localizar a figura ao

Leia mais

Sistemas Operacionais

Sistemas Operacionais Sistemas Operacionais Aula 6 Estrutura de Sistemas Operacionais Prof.: Edilberto M. Silva http://www.edilms.eti.br Baseado no material disponibilizado por: SO - Prof. Edilberto Silva Prof. José Juan Espantoso

Leia mais

Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi

Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi 5 Conclusão Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi permitir que scripts Lua instanciem e usem

Leia mais

DocuWare Mobile ProductInfo. Gerenciamento móvel de documentos. Benefícios

DocuWare Mobile ProductInfo. Gerenciamento móvel de documentos. Benefícios DocuWare Mobile ProductInfo Gerenciamento móvel de documentos O DocuWare Mobile permite acessar os gabinetes de arquivo do DocuWare diretamente em seu smartphone ou tablet. Você pode carregar, visualizar

Leia mais

INTERNET HOST CONNECTOR

INTERNET HOST CONNECTOR INTERNET HOST CONNECTOR INTERNET HOST CONNECTOR IHC: INTEGRAÇÃO TOTAL COM PRESERVAÇÃO DE INVESTIMENTOS Ao longo das últimas décadas, as organizações investiram milhões de reais em sistemas e aplicativos

Leia mais

CURSO DESENVOLVEDOR JAVA Edição 2010

CURSO DESENVOLVEDOR JAVA Edição 2010 CURSO DESENVOLVEDOR JAVA Edição 2010 O curso foi especialmente planejado para os profissionais que desejam trabalhar com desenvolvimento de sistemas seguindo o paradigma Orientado a Objetos e com o uso

Leia mais

Eduardo Bezerra. Editora Campus/Elsevier

Eduardo Bezerra. Editora Campus/Elsevier Princípios de Análise e Projeto de Sistemas com UML 2ª edição Eduardo Bezerra Editora Campus/Elsevier Capítulo 11 Arquitetura do sistema Nada que é visto, é visto de uma vez e por completo. --EUCLIDES

Leia mais

1. NÍVEL CONVENCIONAL DE MÁQUINA

1. NÍVEL CONVENCIONAL DE MÁQUINA 1. NÍVEL CONVENCIONAL DE MÁQUINA Relembrando a nossa matéria de Arquitetura de Computadores, a arquitetura de Computadores se divide em vários níveis como já estudamos anteriormente. Ou seja: o Nível 0

Leia mais

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

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

Leia mais

World Wide Web e Aplicações

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

Leia mais

Tecnologia para garantir qualidade e eficiência

Tecnologia para garantir qualidade e eficiência Tecnologia para garantir qualidade e eficiência 20 Fenacon em Serviços Julho/Agosto 2010 É cada vez maior o número de empresas que adotam a virtualização de documentos. Além de economia em tempo e papel,

Leia mais

Semântica para Sharepoint. Busca semântica utilizando ontologias

Semântica para Sharepoint. Busca semântica utilizando ontologias Semântica para Sharepoint Busca semântica utilizando ontologias Índice 1 Introdução... 2 2 Arquitetura... 3 3 Componentes do Produto... 4 3.1 OntoBroker... 4 3.2 OntoStudio... 4 3.3 SemanticCore para SharePoint...

Leia mais