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

Tecnologia Java. Daniel Destro do Carmo Softech Network Informática daniel@danieldestro.com.br

Tecnologia Java. Daniel Destro do Carmo Softech Network Informática daniel@danieldestro.com.br Tecnologia Java Daniel Destro do Carmo Softech Network Informática daniel@danieldestro.com.br Origem da Tecnologia Java Projeto inicial: Oak (liderado por James Gosling) Lançada em 1995 (Java) Tecnologia

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

CURSO DESENVOLVEDOR JAVA Edição 2009

CURSO DESENVOLVEDOR JAVA Edição 2009 CURSO DESENVOLVEDOR JAVA Edição 2009 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

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

CURSO DESENVOLVEDOR JAVA Edição Intensiva de Férias

CURSO DESENVOLVEDOR JAVA Edição Intensiva de Férias CURSO DESENVOLVEDOR JAVA Edição Intensiva de Férias O curso foi especialmente planejado para os profissionais que desejam trabalhar com desenvolvimento de sistemas seguindo o paradigma Orientado a Objetos

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

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

J2ME PLATAFORMA DE DESENVOLVIMENTO JAVA PARA DISPOSITIVOS MÓVEIS

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

Leia mais

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

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

Leia mais

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

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

Leia mais

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

Desenvolvendo Aplicações Web com NetBeans

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

Leia mais

SISTEMA PARA COMPOSIÇÃO E CORREÇÃO DE LISTAS DE QUESTÕES DE MÚLTIPLA ESCOLHA

SISTEMA PARA COMPOSIÇÃO E CORREÇÃO DE LISTAS DE QUESTÕES DE MÚLTIPLA ESCOLHA UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ CURSO SUPERIOR DE TECNOLOGIA EM ANÁLISE E DESENVOLVIMENTO DE SISTEMAS ROBERTO ROSIN SISTEMA PARA COMPOSIÇÃO E CORREÇÃO DE LISTAS DE QUESTÕES DE MÚLTIPLA ESCOLHA

Leia mais

ORDEM DE SERVIÇO OS 003/DINFO/2013 16/09/2013

ORDEM DE SERVIÇO OS 003/DINFO/2013 16/09/2013 A DIRETORIA DE INFORMÁTICA DINFO DA UNIVERSIDADE DO ESTADO DO RIO DE JANEIRO -UERJ, no uso de suas atribuições legais, estabelece: Art. 1º: Para fins de normatização do Desenvolvimento Tecnológico na UERJ

Leia mais

Estudo comparativo entre tecnologias Java: Applet e JWS.

Estudo comparativo entre tecnologias Java: Applet e JWS. Estudo comparativo entre tecnologias Java: Applet e JWS. Clara Aben-Athar B. Fernandes¹, Carlos Alberto P. Araújo¹ 1 Centro Universitário Luterano de Santarém Comunidade Evangélica Luterana (CEULS/ULBRA)

Leia mais

UNIVERSIDADE ESTADUAL DE PONTA GROSSA

UNIVERSIDADE ESTADUAL DE PONTA GROSSA UNIVERSIDADE ESTADUAL DE PONTA GROSSA SECRETARIA MUNICIPAL DE GESTÃO DE RECURSOS HUMANOS CONCURSO PÚBLICO PARA ANALISTA DE SUPORTE 08 DE NOVEMBRO DE 2009... (NOME COMPLETO EM LETRA DE FORMA) INSTRUÇÕES

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

Este livro é dedicado a minha esposa Edna e a todos os desenvolvedores que fizeram do software livre um meio profissional levado a sério.

Este livro é dedicado a minha esposa Edna e a todos os desenvolvedores que fizeram do software livre um meio profissional levado a sério. EDSON GONÇALVES Este livro é dedicado a minha esposa Edna e a todos os desenvolvedores que fizeram do software livre um meio profissional levado a sério. AGRADECIMENTOS Primeiramente gostaria de agradecer

Leia mais

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

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

Leia mais

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

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

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

Prof. M.Sc. Fábio Procópio Prof. M.Sc. João Maria Criação: Fev/2010

Prof. M.Sc. Fábio Procópio Prof. M.Sc. João Maria Criação: Fev/2010 Prof. M.Sc. Fábio Procópio Prof. M.Sc. João Maria Criação: Fev/2010 Primeira Dica Afirmação O que é Java? Características do Java Como Java Funciona Plataforma Java Edições Java Java SE Java EE Java ME

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

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

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

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

Leia mais

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

Curso Expresso de Peticionamento Eletrônico com Certificação Digital nos Tribunais. Versão 1.0

Curso Expresso de Peticionamento Eletrônico com Certificação Digital nos Tribunais. Versão 1.0 Curso Expresso de Peticionamento Eletrônico com Certificação Digital nos Tribunais Versão 1.0 Este material é referente ao curso ministrado no mini-auditório da OAB/Santos, no dia 28 de julho de 2010.

Leia mais

INTEGRANDO A TECNOLOGIA J2ME NO ÂMBITO ACADÊMICO

INTEGRANDO A TECNOLOGIA J2ME NO ÂMBITO ACADÊMICO INTEGRANDO A TECNOLOGIA J2ME NO ÂMBITO ACADÊMICO Ramon R. Rabello, Pedro J. Treccani, Thienne M Johnson Universidade da Amazônia, Av Alcindo Cacela, 287, Belém, PA CEP 66092-010 ramon.rabello@gmail.com,

Leia mais

Struts 2 : Projeto e Programação Editora: Ciência Moderna Autor: Antunes Budi Kurniawan Número de páginas: 600

Struts 2 : Projeto e Programação Editora: Ciência Moderna Autor: Antunes Budi Kurniawan Número de páginas: 600 Objetivo Com enfoque totalmente prático permite que programadores Java possam ampliar seus conhecimentos no mundo Web na criação de sistemas profissionais. Utilizar os modelos de programação com Servlets,

Leia mais

Como dito anteriormente, a JCP especificou dois grupos para a J2ME conforme as necessidades dos dispositvos, chamadas Configurações:

Como dito anteriormente, a JCP especificou dois grupos para a J2ME conforme as necessidades dos dispositvos, chamadas Configurações: 1 TECNOLOGIA J2ME A J2ME, Java Micro Edition, é uma tecnologia que permite o desenvolvimento de aplicações Java para dispositivos com poder de processamento, vídeo e memória limitados. Possui uma coleção

Leia mais

UMA ABORDAGEM SOBRE J2ME

UMA ABORDAGEM SOBRE J2ME UMA ABORDAGEM SOBRE J2ME Júlio César Jardim Júnior 1, Elio Lovisi Filho (Orientador) 1 1 Ciência da Computação Universidade Presidente Antônio Carlos (UNIPAC) Rua Palma Bageto Viol, s/n Barbacena - MG.

Leia mais

JPA: Persistência padronizada em Java

JPA: Persistência padronizada em Java JPA: Persistência padronizada em Java FLÁVIO HENRIQUE CURTE Bacharel em Engenharia de Computação flaviocurte.java@gmail.com Programação Orientada a Objetos X Banco de Dados Relacionais = Paradigmas diferentes

Leia mais

SISTEMA GERENCIAL TRATORPLAN

SISTEMA GERENCIAL TRATORPLAN SISTEMA GERENCIAL TRATORPLAN SIGET Fabrício Pereira Santana¹, Jaime William Dias¹, ², Ricardo de Melo Germano¹ ¹Universidade Paranaense (Unipar) Paranavaí PR Brasil fabricioblack@gmail.com germano@unipar.br

Leia mais

ENTERPRISE JAVABEANS 3. Msc. Daniele Carvalho Oliveira

ENTERPRISE JAVABEANS 3. Msc. Daniele Carvalho Oliveira ENTERPRISE JAVABEANS 3 Msc. Daniele Carvalho Oliveira Apostila Servlets e JSP www.argonavis.com.br/cursos/java/j550/index.html INTRODUÇÃO Introdução Enterprise JavaBeans é um padrão de modelo de componentes

Leia mais

Dados em Java. Introdução

Dados em Java. Introdução Interface Gráfica e Banco de Dados em Java Introdução Java and all Java-based marks are trademarks or registered trademarks of Sun Microsystems, Inc. in the U.S. and other countries. Licença para uso e

Leia mais

Linguagem de Programação JAVA

Linguagem de Programação JAVA Linguagem de Programação JAVA Curso Técnico em Informática Modalida Integrado Instituto Federal do Sul de Minas, Câmpus Pouso Alegre Professora: Michelle Nery Agenda JAVA Histórico Aplicações Pós e Contras

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

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

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

DESENVOLVENDO APLICAÇÕES UTILIZANDO JAVASERVER FACES E MVC

DESENVOLVENDO APLICAÇÕES UTILIZANDO JAVASERVER FACES E MVC DESENVOLVENDO APLICAÇÕES UTILIZANDO JAVASERVER FACES E MVC Felipe Moreira Decol Claro 1, Késsia Rita da Costa Marchi 1 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil felipe4258@hotmail.com, kessia@unipar.br

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

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

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

Leia mais

Linguagem de Programação Visual

Linguagem de Programação Visual Linguagem de Programação Visual Unidade 1 Ambiente de desenvolvimento Curso Técnico em Informática SUMÁRIO INTRODUÇÃO... 3 SOBRE O JAVA... 3 AMBIENTE DE DESENVOLVIMENTO... 5 RECURSOS DA FERRAMENTA NETBEANS...

Leia mais

Thiago Hernandes de Souza

Thiago Hernandes de Souza Thiago Hernandes de Souza Dedicatória Confia ao SENHOR as tuas obras, e teus pensamentos serão estabelecidos. (Provérbios 16:3) Primeiramente ao Senhor Jesus Cristo, por fazer o intermédio junto a Deus

Leia mais

Programação de Computadores - I. Profª Beatriz Profº Israel

Programação de Computadores - I. Profª Beatriz Profº Israel Programação de Computadores - I Profª Beatriz Profº Israel A linguagem JAVA A linguagem Java O inicio: A Sun Microsystems, em 1991, deu inicio ao Green Project chefiado por James Gosling. Projeto que apostava

Leia mais

DESENVOLVIMENTO COM JAVA EE E SUAS ESPECIFICAÇÕES

DESENVOLVIMENTO COM JAVA EE E SUAS ESPECIFICAÇÕES DESENVOLVIMENTO COM JAVA EE E SUAS ESPECIFICAÇÕES Hugo Henrique Rodrigues Correa¹, Jaime Willian Dias 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil hugohrcorrea@gmail.com, jaime@unipar.br Resumo.

Leia mais

Sistema para gestão de restaurante

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

Leia mais

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

História e Evolução da Web. Aécio Costa

História e Evolução da Web. Aécio Costa Aécio Costa A História da Web O que estamos estudando? Período em anos que a tecnologia demorou para atingir 50 milhões de usuários 3 As dez tecnologias mais promissoras 4 A evolução da Web Web 1.0- Passado

Leia mais

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

SCC-0263. Técnicas de Programação para WEB. Rodrigo Fernandes de Mello http://www.icmc.usp.br/~mello mello@icmc.usp.br SCC-0263 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

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

Ambiente Web PHP Problemas Frameworks CakePHP Symfony Zend Framework Prado CodeIgniter Demonstração O livro

Ambiente Web PHP Problemas Frameworks CakePHP Symfony Zend Framework Prado CodeIgniter Demonstração O livro Desenvolvimento em PHP usando Frameworks Elton Luís Minetto Agenda Ambiente Web PHP Problemas Frameworks CakePHP Symfony Zend Framework Prado CodeIgniter Demonstração O livro Ambiente Web É o ambiente

Leia mais

Java & OpenJDK. Thiago S. Gonzaga. Sun Campus Ambassador thiago.gonzaga@sun.com

Java & OpenJDK. Thiago S. Gonzaga. Sun Campus Ambassador thiago.gonzaga@sun.com Java & OpenJDK Thiago S. Gonzaga Sun Campus Ambassador thiago.gonzaga@sun.com Tópicos Sobre a Sun Microsystems Algumas tecnologias da Sun Linguagem de Programação Ciclo de Desenvolvimento O que é Java?

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

LEI DE ACESSO A INFORMAÇÃO DIREITO DO CIDADÃO

LEI DE ACESSO A INFORMAÇÃO DIREITO DO CIDADÃO DESCRIÇÃO DO SIGAI O SIGAI (Sistema Integrado de Gestão do Acesso à Informação) é uma solução de software que foi desenvolvida para automatizar os processos administrativos e operacionais visando a atender

Leia mais

Softwares de Sistemas e de Aplicação

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

Leia mais

Ambientes Visuais. Ambientes Visuais

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

Leia mais

GERADOR DE CÓDIGO JSP BASEADO EM PROJETO DE SGBD. Acadêmico: Maicon Klug Orientadora: Joyce Martins

GERADOR DE CÓDIGO JSP BASEADO EM PROJETO DE SGBD. Acadêmico: Maicon Klug Orientadora: Joyce Martins GERADOR DE CÓDIGO JSP BASEADO EM PROJETO DE SGBD Acadêmico: Maicon Klug Orientadora: Joyce Martins Roteiro Introdução Objetivos do trabalho Fundamentação teórica Desenvolvimento do trabalho Conclusão Extensões

Leia mais

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

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

Leia mais

Relatório do GPES. Descrição dos Programas e Plugins Utilizados. Programas Utilizados:

Relatório do GPES. Descrição dos Programas e Plugins Utilizados. Programas Utilizados: Relatório do GPES Relatório referente à instalação dos programas e plugins que estarão sendo utilizados durante o desenvolvimento dos exemplos e exercícios, sendo esses demonstrados nos próximos relatórios.

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

Definições. Parte 02. Java Conceitos e. Desenvolvimento de Programação Orientada a Objetos. Prof. Pedro Neto

Definições. Parte 02. Java Conceitos e. Desenvolvimento de Programação Orientada a Objetos. Prof. Pedro Neto Java Conceitos e Definições Parte 02 Prof. Pedro Neto Aracaju Sergipe - 2011 Conteúdo 2 O que é Java i. Java ii. Máquina Virtual iii. Java lento? Hotspot e JIT iv. Versões do Java e a confusão do Java2

Leia mais

Java Linguagem de programação

Java Linguagem de programação 1 Linguagem Java O que é o Java? Java é uma linguagem de programação, apresentada ao mercado em 1995, pela Sun Microsystems, que provocou e ainda provoca excitação e entusiasmo em programadores, analistas

Leia mais

Introdução a Servlets

Introdução a Servlets Linguagem de Programação para Web Introdução a Servlets Prof. Mauro Lopes 1-31 21 Objetivos Iniciaremos aqui o estudo sobre o desenvolvimento de sistemas web usando o Java. Apresentaremos nesta aula os

Leia mais

UNIVERSIDADE FEDERAL DE SANTA CATARINA. Informatização de farmácias publicas utilizando software livre.

UNIVERSIDADE FEDERAL DE SANTA CATARINA. Informatização de farmácias publicas utilizando software livre. UNIVERSIDADE FEDERAL DE SANTA CATARINA Informatização de farmácias publicas utilizando software livre. MURILO NUNES ELIAS FLORIANÓPOLIS SC 2007/2 UNIVERSIDADE FEDERAL DE SANTA CATARINA DEPARTAMENTO DE

Leia mais

SUMÁRIO CAPÍTULO 1 - INTRODUÇÃO 19 CAPÍTULO 2 - CONCEITOS 25

SUMÁRIO CAPÍTULO 1 - INTRODUÇÃO 19 CAPÍTULO 2 - CONCEITOS 25 SUMÁRIO LISTA DE FIGURAS LISTA DE TABELAS LISTA DE SIGLAS E ABREVIATURAS Pág. CAPÍTULO 1 - INTRODUÇÃO 19 CAPÍTULO 2 - CONCEITOS 25 2.1 A tecnologia de orientação a objetos 25 2.1.1 Projeto de software

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 ao Delphi. Introdução. Edições do Software. Capítulo 1. InforBRás - Informática Brasileira Ltda. O Que é o Delphi.

Introdução ao Delphi. Introdução. Edições do Software. Capítulo 1. InforBRás - Informática Brasileira Ltda. O Que é o Delphi. Capítulo 1 O Que é o Delphi Diferenças entre Delphi Client/Server do Delphi for Windows Características que compõem o Integrated Development Invironment (IDE) Como o Delphi se encaixa na família Borland

Leia mais

Especificações Técnicas

Especificações Técnicas Visual COBOL é a solução líder da indústria para o desenvolvimento de aplicações COBOL e implantação em sistemas Windows, Unix e Linux. Ele combina as melhores ferramentas de desenvolvimento de sua classe

Leia mais

Ambiente Web PHP Problemas Frameworks CakePHP Symfony Zend Framework Prado CodeIgniter Demonstração

Ambiente Web PHP Problemas Frameworks CakePHP Symfony Zend Framework Prado CodeIgniter Demonstração Desenvolvimento em PHP usando Frameworks Elton Luís Minetto Agenda Ambiente Web PHP Problemas Frameworks CakePHP Symfony Zend Framework Prado CodeIgniter Demonstração Ambiente Web É o ambiente formado

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

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

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

Leia mais

PROGRAMAÇÃO JAVA. Parte 1

PROGRAMAÇÃO JAVA. Parte 1 PROGRAMAÇÃO JAVA Parte 1 O que é um programa? Um algoritmo (sequência de operações elementares - instruções) convertido para uma linguagem que possa ser executada por um computador Programa = Algoritmos

Leia mais

Java para WEB com Hibernate e Struts 2. Duração 52 horas/aula. Objetvo

Java para WEB com Hibernate e Struts 2. Duração 52 horas/aula. Objetvo Objetvo O curso visa explorar a geração de conteúdo dinâmico para páginas WEB através de recursos da linguagem Java que são a base da plataforma Java Entreprise Editon (Java EE), e mostrar os frameworks

Leia mais

Programação WEB Introdução

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

Leia mais

Comparando Java e C#

Comparando Java e C# Por: Lincon Alexandre Marques Jonathan T. Dos Santos Ricardo Fumio Tanimoto Abril, 2009 Comparando Java e C# Introdução Escolhemos como tema deste artigo um comparativo entre as linguagens Java e C#, duas

Leia mais

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

CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE DE TECNOLOGIA DE LINS CURSO SUPERIOR DE TECNOLOGIA EM BANCO DE DADOS CLÓVIS GRETE USO DE DISPOSITIVO MÓVEL PARA ACOMPANHAMENTO DE PACIENTES

Leia mais

Programação para Internet Orientada a Objetos com PHP & MySQL Visão Geral de Programação Orientada a Objetos com PHP & MySQL II

Programação para Internet Orientada a Objetos com PHP & MySQL Visão Geral de Programação Orientada a Objetos com PHP & MySQL II Programação para Internet Orientada a Objetos com PHP & MySQL Visão Geral de Programação Orientada a Objetos com PHP & MySQL II Prof. MSc. Hugo Souza Na última aula falamos um pouco da necessidade do surgimento

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

Desenvolvimento de Aplicações. Desenvolvimento de Aplicações. Desenvolvimento de Aplicações. Dificuldades no uso de Bancos de Dados

Desenvolvimento de Aplicações. Desenvolvimento de Aplicações. Desenvolvimento de Aplicações. Dificuldades no uso de Bancos de Dados Desenvolvimento de Aplicações Desenvolvimento de Aplicações Dificuldades no uso de Bancos de Dados Um leigo não sabe o que é e como funciona um BD Mesmo um profissional da área de informática pode ter

Leia mais

UNIVERSIDADE FEDERAL DE SANTA CATARINA JNC MOBILE 2.0. Anderson Buon Berto Gilberto Torrezan Filho. Florianópolis - SC 2005/1

UNIVERSIDADE FEDERAL DE SANTA CATARINA JNC MOBILE 2.0. Anderson Buon Berto Gilberto Torrezan Filho. Florianópolis - SC 2005/1 UNIVERSIDADE FEDERAL DE SANTA CATARINA JNC MOBILE 2.0 Anderson Buon Berto Gilberto Torrezan Filho Florianópolis - SC 2005/1 1 Sumário 1 Introdução 3 2 Denição do Problema 3 3 Trabalhos Correlatos 4 4 Solução

Leia mais

Introdução à Linguagem Java. Departamento de Informática Prof. Anselmo C. de Paiva

Introdução à Linguagem Java. Departamento de Informática Prof. Anselmo C. de Paiva Introdução à Linguagem Java Departamento de Informática Prof. Anselmo C. de Paiva Breve Histórico Sun Microsystems, 90/91: projeto de uma linguagem de programação pequena que pudesse ser usada em dispositivos

Leia mais

TECNOLOCIA JAVA WEB PARA DESENVOLVIMENTO DE SISTEMAS DE LEILÃO

TECNOLOCIA JAVA WEB PARA DESENVOLVIMENTO DE SISTEMAS DE LEILÃO TECNOLOCIA JAVA WEB PARA DESENVOLVIMENTO DE SISTEMAS DE LEILÃO Danilo Alves Verone de Oliveira ¹, Jaime William Dias ¹ ² ¹ Universidade Paranaense (UNIPAR) Paranavaí - PR - Brasil dan.verone@hotmail.com

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

MÓDULO Programação para Web 2

MÓDULO Programação para Web 2 MÓDULO Programação para Web 2 Sistemas Web na JEE OBJETIVO DO MÓDULO Arquitetura Web em aplicações JEE Conceitos iniciais Desenvolvimento Web Aplicações web tornam-se mais e mais importantes Mais e mais

Leia mais

Java e Banco de Dados: JDBC, Hibernate e JPA

Java e Banco de Dados: JDBC, Hibernate e JPA Java e Banco de Dados: JDBC, Hibernate e JPA 1 Objetivos Apresentar de forma progressiva as diversas alternativas de persistência de dados que foram evoluindo na tecnologia Java, desde o JDBC, passando

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

Roteiro. Linguagens, plataformas e ambientes de Desenvolvimento. Desenvolvimento de Aplicações para DM. Java. Linguagem C

Roteiro. Linguagens, plataformas e ambientes de Desenvolvimento. Desenvolvimento de Aplicações para DM. Java. Linguagem C Desenvolvimento de Aplicações para Dispositivos Móveis José de Ribamar Martins Bringel Filho Mestre em Ciência da Computação (UFC) bringel@cenapadne.br Roteiro Overview das Plataformas e Linguagens J2ME

Leia mais

Arquiteturas de Aplicações Distribuídas

Arquiteturas de Aplicações Distribuídas Arquiteturas de Aplicações Distribuídas Fernando Albuquerque 061-2733589 fernando@cic.unb.br www.cic.unb.br/docentes/fernando Tópicos Introdução. HTTP / CGI. API sockets. JDBC. Remote Method Invocation.

Leia mais

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

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

Leia mais

ARQUITETURA DO SISTEMA ERP PEGASUS

ARQUITETURA DO SISTEMA ERP PEGASUS ARQUITETURA DO SISTEMA ERP PEGASUS Elaborado por: Bruno Duarte Nogueira Arquiteto de Software Data: 05/03/2012 1 Sumário 1. Introdução... 3 2. Tecnologias... 3 2.1. Web Tier... 3 2.1.1. Facelets 1.1.14...

Leia mais

COMPARAÇÃO ENTRE OS FRAMEWORKS DE DESENVOLVIMENTO DE SOFTWARE ENTITY FRAMEWORK E NHIBERNATE : ESTUDO DE CASO EM UM SISTEMA

COMPARAÇÃO ENTRE OS FRAMEWORKS DE DESENVOLVIMENTO DE SOFTWARE ENTITY FRAMEWORK E NHIBERNATE : ESTUDO DE CASO EM UM SISTEMA 73 COMPARAÇÃO ENTRE OS FRAMEWORKS DE DESENVOLVIMENTO DE SOFTWARE ENTITY FRAMEWORK E NHIBERNATE : ESTUDO DE CASO EM UM SISTEMA Daniel José Angotti Analista de Negócio, Repom S/A djangotti@gmail.com Carlos

Leia mais

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

CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA CENTRO ESTADUAL DE EDUCAÇÃO TECNOLÓGICA PAULA SOUZA FACULDADE DE TECNOLOGIA DE LINS PROF. ANTÔNIO SEABRA CURSO SUPERIOR EM TECNOLOGIA EM BANCO DE DADOS MICHAEL WILLIANS DE PAIVA RIBEIRO MURILO RALSEN BENEVIDES

Leia mais

J2EE TM Java 2 Plataform, Enterprise Edition

J2EE TM Java 2 Plataform, Enterprise Edition CURSO DE GRADUAÇÃO J2EE TM Java 2 Plataform, Enterprise Edition Antonio Benedito Coimbra Sampaio Junior abc@unama.br OBJETIVOS DO CURSO Capacitar os alunos no desenvolvimento de aplicações para a WEB com

Leia mais

Mini-curso Gratuito. Globalcode - The Developers Company Slide 1

Mini-curso Gratuito. Globalcode - The Developers Company Slide 1 Mini-curso Gratuito Globalcode - The Developers Company Slide 1 Globalcode - The Developers Company Slide 2 Agenda Parte teórica 1. Introdução 2. Vantagens da tecnologia Java 3. Máquinas Virtuais 4. Áreas

Leia mais

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

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

Leia mais

Prova Específica Cargo Desenvolvimento

Prova Específica Cargo Desenvolvimento UNIVERSIDADE FEDERAL DO PIAUÍ Centro de Educação Aberta e a Distância CEAD/UFPI Rua Olavo Bilac 1148 - Centro CEP 64.280-001 Teresina PI Brasil Fones (86) 3215-4101/ 3221-6227 ; Internet: www.uapi.edu.br

Leia mais