Framework utilizando reflexão e aspectos para persistência de objetos em java
|
|
- Rafael Oliveira Caires
- 8 Há anos
- Visualizações:
Transcrição
1 Framework utilizando reflexão e aspectos para persistência de objetos em java Antonio Carlos Rolloff (UNIPAR) acrolloff@gmail.com Arthur Cattaneo Zavadski (UNIPAR) arthur@datacoper.com.br Maria Aparecida Denardi (UNIPAR) maria@unipar.br Resumo: A maioria das aplicações trabalha com dados e necessita armazenar os mesmos de forma persistente, ou seja, que em uma nova execução possam recuperar e utilizar esses dados, isto causa esforço e preocupação para os desenvolvedores, sendo uma complexidade a mais no desenvolvimento. Com o objetivo de reduzir esta preocupação, este artigo propõe a criação de uma camada que faça essa persistência. A proposta é o desenvolvimento de um framework de persistência para Java, que através das técnicas de Aspectos e Reflexão, consiga fazer o mapeamento objeto relacional, persistir e recuperar objetos em tabelas de um banco de dados relacional. Palavras-chave: Aspectos; Framework; Java; Persistência; Reflexão. 1. Introdução A programação Orientada a Objetos vem sendo muito utilizada e junto com ela a persistência de dados em bancos relacionais. Essa arquitetura é muito utilizada devido a grande difusão e confiabilidade existente nos bancos de dados relacionais. Mas para utilizarmos esta arquitetura é necessária a realização de um mapeamento Objeto-Relacional, o qual vai associar objetos com tabelas. No desenvolvimento de software, realizar essa persistência aumenta ainda mais a complexidade e se torna uma tarefa muito trabalhosa, repetitiva e passível de erros para o desenvolvedor. Com isso surge a necessidade da criação de um mecanismo que auxilie neste processo. Este mecanismo é apresentado na forma de um Framework, ou seja, um conjunto de classes que possuem como objetivo principal realizar a persistência de objetos sem que o desenvolvedor necessite se preocupar com a forma como a persistência será realizada. Para realizar esta persistência, o Framework utiliza recursos de reflexão Computacional para conhecer e manipular o objeto e Aspectos para interceptar mudanças no Objeto. 2. Complexidade de Software O desenvolvimento de software é uma tarefa complexa. Porém é possível dominar essa complexidade, ou seja, aprender como vencer a mesma e encontrar soluções eficientes e viáveis. A complexidade não esta apenas nos requisitos funcionais, mas também nos requisitos não funcionais que geralmente são muito importantes e agregam complexidade ao software (BOOCH 1998). A Orientação a Objetos veio para tentar reduzir essa complexidade, porem existem alguns requisitos/preocupações que estão espalhadas em várias partes do sistema, isso é conhecido como entrelaçamento de código. Para reduzir o entrelaçamento de código e tentar reduzir a complexidade do desenvolvimento de software, surgiu a Programação Orientada a Aspectos. 3. Persistência Persistência é uma palavra utilizada para expressar o armazenamento de dados ou informações de um sistema para uma futura recuperação e utilização. É o ato de persistir, ou 1
2 seja, preservar ou conservar a informação. Um exemplo amplamente utilizado é o armazenamento de informações em bancos de dados relacionais. A persistência é uma das complexidades de softwares citadas por (Booch 1998). No desenvolvimento de software, a persistência pode ficar em uma camada separada, com isso reduzindo a complexidade de desenvolvimento do software em si. Em uma programação orientada a objetos, essa camada de persistência fica responsável pelo recebimento de objetos e o seu armazenamento, de forma que possam ser futuramente recuperados. A forma de armazenamento não importa para a aplicação, quem vai se preocupar com isso é a camada de persistência. Essa camada de persistência pode ser desenvolvida na forma de um framework, ou seja, um conjunto de classes que realizam determinadas tarefas, permitindo a sua fácil reutilização. 4. Programação Orientada a Aspectos A Programação Orientada a Aspectos surgiu com o objetivo de reduzir o entrelaçamento de código, com isso reduzindo a complexidade do desenvolvimento de software. Tem como principal premissa a separação de preocupações, ou seja, cada preocupação do sistema é tratada separadamente (RESENDE 2005). Como o próprio nome já sugere, a programação é separada em aspectos. Em determinado momento é analisado e resolvido determinado aspecto, após esta resolução passa-se ao aspecto seguinte, depois outro aspecto. Por exemplo, primeiro será cuidado cuidamos do aspecto de persistência, depois cuida-se do aspecto de registro de log da aplicação e assim por diante, até resolver todos os aspectos necessários no software em questão (SOARES E BORBA 2004). A Orientação a Aspectos não substitui a Orientação a Objetos, mas complementa seus pontos fracos, resolvendo de forma mais simples alguns problemas que seriam muito complexos de se resolver utilizando apenas a Orientação a Objetos. A principal finalidade é reduzir o espalhamento de código, facilitando, por exemplo, mudanças de banco de dados ou de mecanismos de distribuição, entre outros (RESENDE 2005). Na Programação Orientada a Aspectos, é possível interceptar chamadas e introduzir funcionalidades ou alterar a classe, além disso, na interceptação de chamadas é possível acrescentar códigos, ou seja, acrescentar ou modificar funcionalidades da classe. Com isso também é possível identificar chamadas e saber quando determinado método foi executado (HILSDALE E KERSTEN 2004). 5. Reflexão Computacional Java é uma linguagem reflexiva e oferece uma representação de sua própria estrutura, com isso é possível coletar e utilizar informações sobre qualquer classe (ZAVADSKI 2003). Existe uma Classe que representa as Classes, outra Classe que representa os Métodos, outra que representa os Atributos, com isso é possível conhecer a estrutura de uma Classe e também realizar chamadas a seus métodos e recuperar informações sem um prévio conhecimento do método, com isso também é possível implementar uma solução que funcione mesmo com novas classes que sejam criadas depois dela e que possuam diferentes funcionalidades. (RESENDE 2005) Cita que também é possível utilizar reflexão em Aspectos. 2
3 6. Padrões de Projeto Padrões de Projeto (Design Patterns) são modelos/soluções para diversas situações (GAMMA 2000). Descreve soluções simples para problemas específicos no projeto de software orientado a objetos, essas soluções já foram desenvolvidas e aperfeiçoadas ao longo do tempo e são apresentadas na forma dos padrões, em uma forma sucinta e facilmente aplicável para que novos desenvolvimentos possam aproveitar essas soluções, deixando o código mais otimizado e reduzindo os esforços do desenvolvedor. Com isso pode-se utilizar soluções já existentes sem ter que re-inventar a roda. 7. Framework para Persistência 7.1 Ferramentas Utilizadas Para o desenvolvimento do framework, foi definido a utilização da linguagem de programação Java JDK versão 1.5.0_04, a ferramenta de desenvolvimento Eclipse na versão 3.1.0, a ferramenta de modelagem UML Jude Comunity versão e os bancos de dados relacionais PostgreSql versão e Firebird versão A ferramenta Eclipse vai ser equipada com os seguintes plugins: Visual Editor versão 1.1.0, EMF versão 1.1.0, GEF versão 3.1 e AspectJ versão O Visual Editor, EMF e GEF são responsáveis pelo editor gráfico de tela, embora o framework não seja composto por nenhuma tela, esse plugin foi utilizado para criar a aplicação de teste do framework, pois essa possui tela gráfica. Já o plugin AspectJ é um plugin do Eclipse para programar Orientado a Aspectos. A ferramenta de UML Jude foi utilizada para a criação do diagrama de Classes do framework. Para testes foram utilizados os bancos de dados PostgreSql e Firebird por serem bastante difundidos e também de utilização livre, mas o objetivo do framework é poder trabalhar com outros bancos, talvez sem nenhuma mudança por utilizar apenas comandos simples da linguagem SQL, mas se existirem mudanças elas serão mínimas, desde que o banco de dados tenha suporte a comunicação JDBC. 7.2 Funcionalidades Disponibilizadas O framework de persistência irá disponibilizar as seguintes funcionalidades para o usuário: Receber um Objeto e Incluir as informações no banco de dados relacional. Receber um Objeto e Alterar as informações no banco de dados relacional. Receber um Objeto com pelo menos o atributo "ID" preenchido e Excluir a informação no banco de dados relacional. Recuperar informações do banco de dados relacional, converter em uma Coleção (Collection) de Objetos e retornar essa Collection, com base na classe do Objeto, num parâmetro e no nome da coluna a ser utilizada para ordenação. Para atender essas funcionalidades e ainda incluir alguns recursos de otimização, o framework de persistência será composto pelas seguintes Classes conforme Abaixo: Entity EntityManager 3
4 PersistenceManager PersistenceException SqlHelper SingleConnection Aspecto 7.3 Diagrama de Classes FIGURA 1 Diagrama de Classes do Framework Fonte: Primária (2006). 7.4 Classe Entity Todos os Objetos Persistentes devem estender essa classe, ou seja, ela é a super classe dos Objetos Persistentes, nela é definida uma estrutura de controle para saber quais os Atributos foram modificados, essa estrutura de controle é um atributo do tipo TreeMap chamado "changefields" que armazena os atributos que foram modificados, além deste, é 4
5 definido também um atributo "id" do tipo long que é comum para todas as classes persistentes. Com isso as classes que herdam as funcionalidades desta não precisam declarar o atributo "id". As outras classes do framework utilizam referências desta classe, para receber instâncias dos objetos persistentes. 7.5 Classe EntityManager A Classe EntityManager possui um método público e estático responsável pela manipulação da estrutura de controle que a classe Entity possui dos atributos que foram alterados. Essa classe é quem adiciona no atributo "changefields", do tipo TreeMap, o atributo que foi alterado. Esse método é chamado pela classe Aspecto quando o médoto de alteração de um atributo é disparado. O método recebe como parâmetro, uma instância do objeto, qual o atributo que foi alterado e qual o valor que esta sendo atribuído. Com essas informações o método analisa e verifica se o valor que esta sendo atribuído é diferente do valor existente, e se for diferente ele registra que o atributo em questão foi alterado. Isso faz com que apenas os atributos que realmente foram modificados sejam adicionados na estrutura de controle. 7.6 Classe SingleConnection Classe SingleConnection implementa a interface Connection do pacote java.sql, e possui um atributo desse tipo que executa todas as funcionalidades existentes na interface Connection. Essa classe utiliza o padrão Singleton, que define a forma de se retornar uma única instância, neste caso, a instância única é a instância da Connection (GAMMA 2000). A conexão é realizada utilizando parâmetros cadastrados em um arquivo Properties. Neste arquivo é definido o Driver de conexão ao banco, a Url de conexão, o usuário e a senha. A instanciação da conexão é realizada quando ocorre a primeira chamada "getinstancia()" que é um método estático, as informações do arquivo são carregadas no mesmo método e imediatamente antes da instanciação ser realizada. 7.7 Classe Aspecto Classe Aspecto é responsável pela interceptação das chamadas "set*" das classes que herdam da classe Entity. Ao capturar uma chamada ela verifica se é para atributos persistentes e aciona o método estático da classe EntityManager para registrar a alteração no atributo. Ela passa então como parâmetro a instância do objeto, qual o atributo que foi modificado e qual o valor que esta sendo atribuído. Todos os atributos que herdam de Object e que pertençam à classes que herdam de Entity, são persistentes, ou seja, atributos que são dos tipos de dados primitivos ( int, float, double entre outros) não são persistentes, mas os atributos dos tipos de dados que estendem de Objetos (Integer, Double, Float entre outros). são persistentes, exceto os atributos que possuem o seu nome começando com "_trans_". Isso serve para que o usuário possa ter atributos transientes em suas classes persistentes, desde que comece o nome do atributo com "_trans_". 7.8 Classe SqlHelper A Classe SqlHelper é responsável pela geração dos códigos SQL de manipulação. Ela recebe um objeto que é extensão de Entity, e com esse objeto ela é capaz de retornar uma String contendo o código SQL para Alterar, Incluir ou Excluir a informação no banco de 5
6 dados relacional. Essa classe utiliza o atributo "changefields" da classe Entity para saber quais os atributos foram alterados, e gera o código SQL respectivo apenas para os atributos alterados no caso de Incluir e de Alterar, porém no caso do Excluir a classe utiliza apenas o "id". O nome da tabela também é adquirido com base no objeto recebido. Para que isso funcione o nome da Classe de objeto persistente deve ter o mesmo nome da tabela, pois é através do método "getsimplename()" da classe do objeto que é extraído o nome da tabela. 7.9 Classe PersistenceException A Classe PersistenceException é proveniente da extenção da classe Exception, e é utilizada pela classe PersistenceManager para disparar exceções. Esta exceção é disparada sempre que a classe PersistenceManager encontrar algum problema. Com isso as classes, do usuário, que utilizarem métodos da classe PersistenceManager que disparam exceções, terão que tratar a exceção da forma que acharem mais conveniente Classe PersistenceManager Classe PersistenceManager é a classe responsável pela persistência dos dados. É ela quem fornece as funcionalidades do framework de persistência para o usuário, disponibilizando métodos para inserir um objeto através do método insert(), alterar um objeto através do método update(), excluir um objeto através do método delete(), localizar uma coleção de objetos através do método find(), confirmar uma transação através do método commit() e cancelar a transação através do método rollback(). Essa classe é capaz de utilizar as informações de uma tabela do banco de dados e através de chamadas reflexivas enviar as informações para dentro do objeto correspondente. Ela utiliza o padrão Singleton para retornar uma única instância, também segue o padrão Factory, pois é ela quem gera as instâncias dos objetos persistentes que são extendidos de Entity Arquivo Properties Foi criado um arquivo Properties para o armazenamento das informações de conexão com o banco de dados. Basta o usuário alterar os parâmetros para que a persistência seja feita da forma que o usuário deseja. Os parâmetros são: driver Para definir qual o driver de conexão com o banco de dados. url Para definir a url de conexão com o banco de dados(servidor, banco, etc.). user Para definir o nome do usuário de conexão. password Para definir a senha de conexão Restrições para Utilização do Framework Para usufruir dessas funcionalidades, o usuário deve programar as suas classes de Objetos Persistentes seguindo algumas restrições e padrões. As restrições são relacionadas abaixo: A classe persistente deve herdar da classe Entity, ou seja, deve conter em sua declaração extends Entity ; O nome da classe persistente deve ser o mesmo nome utilizado na tabela no banco 6
7 de dados; Os nomes dos atributos da classe persistente também devem ser exatamente iguais aos nomes utilizados nos atributos na tabela do banco de dados; Os atributos persistentes devem ser dos tipos de dados que estendem de Object, por exemplo Double, Float, Integer, Boolean, String, entre outros. Mas não podem ser de tipos primitivos como double, float, int, boolean ; Na classe persistente, para utilizar atributos globais que não sejam persistentes, o nome do atributo deve começar com _trans_ ou ser de um tipo de dado que não estenda de Object, ou seja, tipos de dados primitivos, que é o critério utilizado pelo framework para ignorar o atributo; Ao recuperar um objeto persistente, o usuário deve fazer um cast para o tipo de objeto desejado pois o framework vai retornar o objeto através de uma referência de Entity, claro que essa referencia do tipo Entity vai conter um objeto do tipo que foi solicitado ao método com o primeiro parâmetro Classe ; O framework desabilita a função de commit automático, com isso o usuário deve executar a chamada ao método commit para confirmar a operação realizada; As classes do framework devem ser copiadas e adicionadas ao projeto que pretende utilizar o mesmo. As classes devem permanecer no pacote de origem, pois o Aspecto utiliza o nome do pacote para não interceptar as chamadas do próprio framework, o que geraria um loop infinito Dificuldades Encontradas A idéia inicial seria a criação de um arquivo ".jar" que seria composto pelas classes do framework, bastando o desenvolvedor da aplicação adicionar o JAR do framework no ClassPath da sua aplicação e utilizar os seus recursos. Porém após testes foi constatado que apenas adicionando o JAR no ClassPath não funcionava, as classes do framework podiam ser utilizadas normalmente, mas o aspecto responsável pela interceptação das chamadas aos objetos persistentes não era disparado, com isso a gravação não funcionava, apenas a leitura. A forma encontrada para resolver o problema foi deixar as classes do framework abertas, fora do JAR. Para a utilização do framework é necessário a copia das classes para dentro do projeto que vai utilizar o mesmo, mesmo com essa copia, as classes do framework não vão se misturar as classes do usuário, pois elas ficam em um pacote separado. Essa é uma das restrições, ou melhor, procedimento necessário para possibilitar a utilização do framework. Uma dificuldade encontrada foi capturar as chamadas set nos atributos das classes persistentes, inicialmente pareceu fácil, porem estavam sendo capturadas todas as chamadas, inclusive as chamadas do próprio framework, com isso gerava um loop infinito, pois ao capturar uma chamada o framework executava uma chamada no objeto para registrar o atributo que foi modificado. Após vários testes de diferentes formas, chegou-se ao modelo de captura conforme a figura 2 abaixo. Com esse modelo, são capturadas todas as chamadas aos métodos das classes que Herdam da classe Entity e que são iniciados com a palavra set que recebem como parâmetro um Object ou uma classe que herde de Object e que não pertencem ao pacote org.acr.fraper que é o pacote do framework. FIGURA 2 Pointcut de Interceptação de Alterações nos Atributos Fonte: Primária (2006). 7
8 Outra dificuldade encontrada foi verificar se o valor que esta sendo atribuído era realmente novo, para que fosse possível controlar as alterações verdadeiras, ou seja, as alterações que realmente modificavam o valor do atributo. Para suprir essa necessidade foi definido que todos os atributos fossem de tipos de dados que herdem de Object, pois com isso é possível capturar o valor alterado utilizando uma referencia de Object e fazer a comparação com o valor atual e verificar se ocorreu alguma mudança. 8. Conclusão As dificuldades do desenvolvimento de aplicações em Java que fazem armazenamento de dados, de forma persistente, podem ser amenizadas com a utilização de uma camada que faça essa persistência. Com a definição do seguinte pointcut: pointcut ponto():!(within(entity)) && call(* Entity+.set*(Object+) &&!(within(org.acr.fraper.*));, é possível capturar as chamadas desejadas para saber quando esta sendo atribuído um valor a um atributo de um objeto persistente. Ao capturar a chamada também é capturado o valor que esta sendo atribuído, antes da atribuição, com isso é possível fazer uma comparação entre o valor antigo e o novo valor para saber se o valor esta realmente sendo modificado ou é o mesmo valor que esta sendo atribuído. Com esta informação de quais atributos foram realmente modificados, é possível para o framework fazer a persistência dos dados. Esta persistência é otimizada, o que faz melhorar a performance de gravação dos dados ou de trafego na rede, pois apenas os atributos realmente alterados serão gravados, com isso mesmo que uma tabela possua n campos, apenas as informações que realmente foram alteradas vão ser enviadas ao banco de dados para a gravação. 9. Referências Bibliográficas BOOCH, Grady Object-oriented analysis and design with applications. 2nd ed. California: The Benjamin/Cummings Publishing Company, ZAVADSKI, Arthur C. Utilizando Reflexão Computacional no Desenvolvimento de Aplicações Distribuídas. UFSC, Disponível em < Acesso em: 10 de nov. de GAMMA, Erich Padrões de Projeto: soluções reutilizáveis de software orientado a objetos. Porto Alegre: Bookman, RESENDE, Antonio M. P. de Programação orientada a aspectos em Java. Rio de Janeiro: Brasport, HILSDALE, Erik; KERSTEN, Mik Aspect-Oriented Programming with AspectJ Disponível em: < Acesso em: 10 de nov. de SOARES, Sergio; BORBA, Paulo Desenvolvimento de Software Orientados a Aspectos Utilizando RUP e AspectJ Disponível em: < Talks/TutorialSBES2004_soares_borba.pdf>. Acesso em: 10 de nov. de
Orientação a Objetos
1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou
Leia maisSISTEMA TYR DIAGRAMAS DE CLASSE E SEQUÊNCIA Empresa: Academia Universitária
SISTEMA TYR DIAGRAMAS DE CLASSE E SEQUÊNCIA Empresa: Academia Universitária Cascavel Novembro de 2009 Pedro Patitucci Finamore Daniel Bordignon Cassanelli Marco Antonio da Rosa DIAGRAMAS DE CLASSE E SEQUÊNCIA
Leia maisUniversidade Federal Rural de Pernambuco. Bacharelado em Sistemas de Informação. Disciplina: Análise e Projeto de Sistemas de Informação
Universidade Federal Rural de Pernambuco Bacharelado em Sistemas de Informação Disciplina: Análise e Projeto de Sistemas de Informação Docente: Rodrigo Aluna: Thays Melo de Moraes Diagramas do Projeto
Leia maisManual Captura S_Line
Sumário 1. Introdução... 2 2. Configuração Inicial... 2 2.1. Requisitos... 2 2.2. Downloads... 2 2.3. Instalação/Abrir... 3 3. Sistema... 4 3.1. Abrir Usuário... 4 3.2. Nova Senha... 4 3.3. Propriedades
Leia maisHIBERNATE 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 maisPrevayler. Perola. André Luís Sales de Moraes Juliana Keiko Yamaguchi Tatiana Yuka Takaki
Prevayler Perola André Luís Sales de Moraes Juliana Keiko Yamaguchi Tatiana Yuka Takaki Prevayler Prevayler é a implementação em Java do conceito de Prevalência. É um framework que prega uma JVM invulnerável
Leia maisATRIBUTOS PRIVADOS 6. ENCAPSULAMENTO MÉTODOS PRIVADOS MÉTODOS PRIVADOS
ATRIBUTOS PRIVADOS Podemos usar o modificador private, para tornar um atributo privado, obtendo um controle centralizado Definimos métodos para implementar todas as lógicas que utilizam ou modificam o
Leia maisPrototype, um Design Patterns de Criação
Prototype, um Design Patterns de Criação José Anízio Pantoja Maia Este artigo tem como finalidade compreender o funcionamento do padrão de projeto prototype, serão abordados os participantes que compõe
Leia maisProgramação com Acesso a Banco de Dados
Campus Ipanguaçu Curso: Técnico em Informática Programação com Acesso a Banco de Dados AULA 17 ACESSO A BANCO DE DADOS COM JDBC PROF.: CLAYTON M. COSTA 2 011.2 Introdução Aplicação + Banco de Dados: Funcionalidade
Leia maisUFG - Instituto de Informática
UFG - Instituto de Informática Curso: Engenharia de Software Arquitetura de Software Prof.: Fabrízzio A A M N Soares professor.fabrizzio@gmail.com Aula 9 Mapeamento em JPA Introdução O mapeamento objeto-relacional
Leia mais3 SCS: Sistema de Componentes de Software
3 SCS: Sistema de Componentes de Software O mecanismo para acompanhamento das chamadas remotas se baseia em informações coletadas durante a execução da aplicação. Para a coleta dessas informações é necessário
Leia maisUFG - Instituto de Informática
UFG - Instituto de Informática Curso: Sistemas de Informações Arquitetura de Software Prof.: Fabrízzio A A M N Soares professor.fabrizzio@gmail.com Aula 7 JPA A Persistência com JPA Para configurar o JPA
Leia maisManipulação de Banco de Dados com Java. Ms. Bruno Crestani Calegaro (bruno.calegaro@ifsc.edu.br) Maio/ 2015
Manipulação de Banco de Dados com Java Ms. Bruno Crestani Calegaro (bruno.calegaro@ifsc.edu.br) Maio/ 2015 Acesso a um SGBD Em sistemas mais simples o uso de arquivos pode ser usado mas para aplicações
Leia maisUFG - 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 maisEntendendo como funciona o NAT
Entendendo como funciona o NAT Vamos inicialmente entender exatamente qual a função do NAT e em que situações ele é indicado. O NAT surgiu como uma alternativa real para o problema de falta de endereços
Leia maisNoções de. Microsoft SQL Server. Microsoft SQL Server
Noções de 1 Considerações Iniciais Basicamente existem dois tipos de usuários do SQL Server: Implementadores Administradores 2 1 Implementadores Utilizam o SQL Server para criar e alterar base de dados
Leia mais2 Diagrama de Caso de Uso
Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Caso de Uso (Use Case) Autoria:Aristófanes Corrêa
Leia maisUNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE ESCOLA AGRÍCOLA DE JUNDIAÍ EAJ - PRONATEC / REDE etec MÓDULO III DESENVOLVIMENTO PROFESSOR ADDSON COSTA
UNIVERSIDADE FEDERAL DO RIO GRANDE DO NORTE ESCOLA AGRÍCOLA DE JUNDIAÍ EAJ - PRONATEC / REDE etec MÓDULO III DESENVOLVIMENTO PROFESSOR ADDSON COSTA RESUMO DE AULA CRIAÇÃO E MANIPULAÇÃO DO BANCO DE DADOS
Leia maisPara funcionamento do Netz, alguns programas devem ser instalados e alguns procedimentos devem ser seguidos. São eles:
Instalação do Netz Para funcionamento do Netz, alguns programas devem ser instalados e alguns procedimentos devem ser seguidos. São eles: Instalação do Java SE 6, que pode ser instalado através da JDK.
Leia maisDESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES
DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES Alexandre Egleilton Araújo, Jaime Willian Dias Universidade Paranaense (Unipar) Paranavaí PR Brasil araujo.ale01@gmail.com, jaime@unipar.br Resumo.
Leia maisIntrodução a Java. Hélder Nunes
Introdução a Java Hélder Nunes 2 Exercício de Fixação Os 4 elementos básicos da OO são os objetos, as classes, os atributos e os métodos. A orientação a objetos consiste em considerar os sistemas computacionais
Leia maisAcessando um Banco de Dados
Acessando um Banco de Dados Introdução Agora que você já está craque em JSP e já instalou seu servidor, vamos direto para a parte prática! Neste tutorial vamos aprender a acessar um banco de dados. Para
Leia maisManual Módulo Livro Caixa Livro Caixa Atualizada com a versão 1.3.0
Manual Módulo Livro Caixa Livro Caixa Atualizada com a versão 1.3.0 Noções Gerais: Pg. 02 Instruções para instalação Pg. 02 Ferramentas úteis Pg. 04 Menu Arquivos Empresas Usuárias Pg. 05 Ativar Empresa
Leia maisManual SAGe Versão 1.2 (a partir da versão 12.08.01)
Manual SAGe Versão 1.2 (a partir da versão 12.08.01) Submissão de Relatórios Científicos Sumário Introdução... 2 Elaboração do Relatório Científico... 3 Submissão do Relatório Científico... 14 Operação
Leia maisAutoria:Aristófanes Corrêa Silva Adaptação: Alexandre César M de Oliveira
Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Introdução Autoria:Aristófanes Corrêa Silva Adaptação: Alexandre
Leia maisDOCUMENTAÇÃO DO FRAMEWORK - versão 2.0
DOCUMENTAÇÃO DO FRAMEWORK - versão 2.0 Índice 1 - Objetivo 2 - Descrição do ambiente 2.1. Tecnologias utilizadas 2.2. Estrutura de pastas 2.3. Bibliotecas já incluídas 3 - Características gerais 4 - Criando
Leia maisWilson Moraes Góes. Novatec
Wilson Moraes Góes Novatec Copyright 2014 Novatec Editora Ltda. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida a reprodução desta obra, mesmo parcial, por qualquer processo,
Leia maisMÓDULO 5 Movimentações
MÓDULO 5 Movimentações Bem-vindo(a) ao quinto módulo do curso. Agora que você já conhece as entradas no HÓRUS, aprenderá como são feitas as movimentações. As movimentações do HÓRUS são: Requisição ao Almoxarifado:
Leia maisSUMÁRIO Acesso ao sistema... 2 Atendente... 3
SUMÁRIO Acesso ao sistema... 2 1. Login no sistema... 2 Atendente... 3 1. Abrindo uma nova Solicitação... 3 1. Consultando Solicitações... 5 2. Fazendo uma Consulta Avançada... 6 3. Alterando dados da
Leia maisAula 1 Acesso a Banco de Dados
Laboratório de Banco de Dados Aula 1 Acesso a Banco de Dados Prof. Josenildo Silva jcsilva@ifma.edu.br Introdução O JDBC (Java Database Connectivity) foi criado com o intuito de fornecer aos programadores
Leia maisAnálise e Projeto Orientado a Objetos. Modelagem de Domínio
+ Análise e Projeto Orientado a Objetos Modelagem de Domínio Introdução 2 n A modelagem do domínio está relacionada à descoberta das informações que são gerenciadas pelo sistema. O resultado dessa investigação
Leia maisLINGUAGEM DE BANCO DE DADOS
LINGUAGEM DE BANCO DE DADOS Gabriela Trevisan Bacharel em Sistemas de Informação Universidade Federal do Rio Grande Pós-Graduanda Formação Pedagógica de Professores (FAQI) Conceito de BD Um banco de dados
Leia maisConteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo
Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Disciplina: INF 02810 Prof.: (monalessa@inf.ufes.br) Conteúdo 1. Introdução 2. Processo de Software 3. Gerência de
Leia maisMódulo 5 JPATransaction Camadas Turma Turma TurmaBC .business @BusinessController TurmaBC TurmaBC TurmaBC
Módulo 5 No módulo anterior adaptamos nosso projeto para persistir as informações no banco de dados utilizando as facilidades da extensão demoiselle-jpa. Experimentamos o controle transacional do Framework
Leia maisApesar de existirem diversas implementações de MVC, em linhas gerais, o fluxo funciona geralmente da seguinte forma:
1 Introdução A utilização de frameworks como base para a construção de aplicativos tem sido adotada pelos desenvolvedores com três objetivos básicos. Primeiramente para adotar um padrão de projeto que
Leia maisManual de Administração
Manual de Administração Produto: n-mf Lexmark Versão: 4.0.3 Versão do Doc.: 1.0 Autor: Bruno Nercolini Ceron Data: 22/11/2010 Aplica-se à: Clientes e Revendas Alterado por: Release Note: Detalhamento de
Leia maisDesenvolvimento de aplicação web com framework JavaServer Faces e Hibernate
Desenvolvimento de aplicação web com framework JavaServer Faces e Hibernate Tiago Peres Souza 1, Jaime Willian Dias 1,2 ¹Universidade paranaense (Unipar) Paranavaí PR Brasil tiagop_ti@hotmail.com 2 Universidade
Leia maisruirossi@ruirossi.pro.br
Persistência Com JPA & Hibernate Rui Rossi dos Santos ruirossi@ruirossi.pro.br Mediador: Rui Rossi dos Santos Slide 1 Mapeamento Objeto-Relacional Contexto: Linguagem de programação orientada a objetos
Leia maisPersistência de Classes em Tabelas de Banco de Dados
UTFPR DAELN - Disciplina de Fundamentos de Programação II ( IF62C ). 1 Persistência de Classes em Tabelas de Banco de Dados 1) Introdução! Em algumas situações, pode ser necessário preservar os objetos
Leia maisOrientação a Objetos
Orientação a Objetos 1. Sobrecarga (Overloading) Os clientes dos bancos costumam consultar periodicamente informações relativas às suas contas. Geralmente, essas informações são obtidas através de extratos.
Leia maisEspecificação do 3º Trabalho
Especificação do 3º Trabalho I. Introdução O objetivo deste trabalho é abordar a prática da programação orientada a objetos usando a linguagem Java envolvendo os conceitos de classe, objeto, associação,
Leia maisINSTRUMENTO NORMATIVO 004 IN004
1. Objetivo Definir um conjunto de critérios e procedimentos para o uso do Portal Eletrônico de Turismo da Região disponibilizado pela Mauatur na Internet. Aplica-se a todos os associados, empregados,
Leia maisTOTVS BA Guia de Customização Linha Logix
TOTVS BA Guia de Customização Linha Logix Guia de Customização Sumário Título do documento 1. Objetivo... 3 2. Introdução... 3 3. Customização... 3 2 TOTVS BA Linha Logix Guia de Customização Projeto/Versão:
Leia mais5 Mecanismo de seleção de componentes
Mecanismo de seleção de componentes 50 5 Mecanismo de seleção de componentes O Kaluana Original, apresentado em detalhes no capítulo 3 deste trabalho, é um middleware que facilita a construção de aplicações
Leia maisProgramação de Computadores - I. Profª Beatriz Profº Israel
Programação de Computadores - I Profª Beatriz Profº Israel Ambiente de Desenvolvimento Orientação a Objetos É uma técnica de desenvolvimento de softwares que consiste em representar os elementos do mundo
Leia maisModelagemde Software Orientadaa Objetos com UML
Modelagemde Software Orientadaa Objetos com UML André Maués Brabo Pereira Departamento de Engenharia Civil Universidade Federal Fluminense Colaborando para a disciplina CIV 2802 Sistemas Gráficos para
Leia maisENGENHARIA DE SOFTWARE DESENVOLVIMENTO EM CAMADAS
ENGENHARIA DE SOFTWARE DESENVOLVIMENTO EM CAMADAS Uma estrutura para um projeto arquitetural de software pode ser elaborada usando camadas e partições. Uma camada é um subsistema que adiciona valor a subsistemas
Leia maisManual de Utilização
Manual de Utilização Versão 1.0 18/01/2013 Sempre consulte por atualizações deste manual em nossa página. O Cotação Web está em constante desenvolvimento, podendo ter novas funcionalidades adicionadas
Leia maisJDBC Java Database Connectivity
5 JDBC Java Database Connectivity Prof. Autor: Daniel Morais dos Reis e-tec Brasil Programação Avançada Para Web Página1 Meta Trabalhar com bancos de dados em aplicações web em JSP através das classes
Leia maisEngenharia de Software III
Engenharia de Software III Casos de uso http://dl.dropbox.com/u/3025380/es3/aula6.pdf (flavio.ceci@unisul.br) 09/09/2010 O que são casos de uso? Um caso de uso procura documentar as ações necessárias,
Leia maisLaboratório de Banco de Dados Aula 1 Acesso a Banco de Dados. Prof. Josenildo Silva jcsilva@ifma.edu.br
Laboratório de Banco de Dados Aula 1 Acesso a Banco de Dados Prof. Josenildo Silva jcsilva@ifma.edu.br Introdução O JDBC (Java Database Connectivity) foi criado com o intuito de fornecer aos programadores
Leia maisWorkFlow WEB Caberj v20150127.docx. Manual Atendimento Caberj
Manual Atendimento Caberj ÍNDICE CARO CREDENCIADO, LEIA COM ATENÇÃO.... 3 ATENDIMENTO... 3 FATURAMENTO... 3 ACESSANDO O MEDLINK WEB... 4 ADMINISTRAÇÃO DE USUÁRIOS... 5 CRIANDO UM NOVO USUÁRIO... 5 EDITANDO
Leia maisUma 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 maisGuia de Atualização TOTVS Segurança e Acesso 12.1
06/2015 Sumário 1 Prefácio... 3 1.2 Finalidade... 3 1.3 Público Alvo... 3 1.4 Organização deste Guia... 3 1.5 Documentações Importantes... 3 2 Atualização... 4 2.1 Executando o Updater de Atualização...
Leia maisIntegrando Java com Banco de Dados
Especialização em Engenharia de Software Programação Orientada a Objetos JDBC Java Database Connectivity Sérgio Soares scbs@cin.ufpe.br Objetivos Apresentar os conceitos básicos da especificação de Java
Leia maisBANCO DE DADOS II Prof. Ricardo Rodrigues Barcelar http://www.ricardobarcelar.com
- Aula 11-1. INTRODUÇÃO TRIGGERS (GATILHOS OU AUTOMATISMOS) Desenvolver uma aplicação para gerenciar os dados significa criar uma aplicação que faça o controle sobre todo ambiente desde a interface, passando
Leia maisConceitos de Banco de Dados
Conceitos de Banco de Dados Autor: Luiz Antonio Junior 1 INTRODUÇÃO Objetivos Introduzir conceitos básicos de Modelo de dados Introduzir conceitos básicos de Banco de dados Capacitar o aluno a construir
Leia maisManual BitFarmácia Popular Versão 2 Software Autorizador Farmácia Popular
Manual BitFarmácia Popular Versão 2 Software Autorizador Farmácia Popular Bitshop Informática Ltda Todos os Direitos Reservados www.bitshop.com.br Conteúdo 1. A Quem se Destina o BitFarmácia Popular 2.
Leia maisArpPrintServer. Sistema de Gerenciamento de Impressão By Netsource www.netsource.com.br Rev: 02
ArpPrintServer Sistema de Gerenciamento de Impressão By Netsource www.netsource.com.br Rev: 02 1 Sumário INTRODUÇÃO... 3 CARACTERÍSTICAS PRINCIPAIS DO SISTEMA... 3 REQUISITOS DE SISTEMA... 4 INSTALAÇÃO
Leia maisPersistência e Banco de Dados em Jogos Digitais
Persistência e Banco de Dados em Jogos Digitais Prof. Marcos Francisco Pereira da Silva Especialista em Engenharia de Software Jogos Digitais - Computação Gráfica 1 Agenda Vantagens de usar a abordagem
Leia maisManual do Visualizador NF e KEY BEST
Manual do Visualizador NF e KEY BEST Versão 1.0 Maio/2011 INDICE SOBRE O VISUALIZADOR...................................................... 02 RISCOS POSSÍVEIS PARA O EMITENTE DA NOTA FISCAL ELETRÔNICA.................
Leia maisSISTEMAS OPERACIONAIS CAPÍTULO 3 CONCORRÊNCIA
SISTEMAS OPERACIONAIS CAPÍTULO 3 CONCORRÊNCIA 1. INTRODUÇÃO O conceito de concorrência é o princípio básico para o projeto e a implementação dos sistemas operacionais multiprogramáveis. O sistemas multiprogramáveis
Leia maisDocumento de Análise e Projeto VideoSystem
Documento de Análise e Projeto VideoSystem Versão Data Versão Descrição Autor 20/10/2009 1.0 21/10/2009 1.0 05/11/2009 1.1 Definição inicial do documento de análise e projeto Revisão do documento
Leia maisDadas a base e a altura de um triangulo, determinar sua área.
Disciplina Lógica de Programação Visual Ana Rita Dutra dos Santos Especialista em Novas Tecnologias aplicadas a Educação Mestranda em Informática aplicada a Educação ana.santos@qi.edu.br Conceitos Preliminares
Leia maisAndroid e Bancos de Dados
(Usando o SQLite) Programação de Dispositivos Móveis Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia do
Leia maisAlgoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br
(Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br Introdução O computador como ferramenta indispensável: Faz parte das nossas vidas; Por si só não faz nada de útil; Grande capacidade de resolução
Leia maisDespachante Express - Software para o despachante documentalista veicular DESPACHANTE EXPRESS MANUAL DO USUÁRIO VERSÃO 1.1
DESPACHANTE EXPRESS MANUAL DO USUÁRIO VERSÃO 1.1 1 Sumário 1 - Instalação Normal do Despachante Express... 3 2 - Instalação do Despachante Express em Rede... 5 3 - Registrando o Despachante Express...
Leia maisCenários do CEL. Acessar ao sistema
Cenários do CEL Acessar ao sistema Permitir que o usuário acesse ao Sistema de Léxicos e Cenários nas seguintes condições: logando-se, quando já estiver cadastrado; ou incluindo usuário independente, quando
Leia maisPersistência de dados com JPA. Hélder Antero Amaral Nunes haanunes@gmail.com
Persistência de dados com JPA Hélder Antero Amaral Nunes haanunes@gmail.com O que é persistência? A persistência de dados é o fato de pegar um dado e torná-lo persistente, ou seja, salvar em algum banco
Leia maisManual de Operação do Sistema de Tickets Support Suite
Manual de Operação do Sistema de Tickets Support Suite Sumário Acessando a página do HelpDesk helpdesk.virtuem.com.br... 3 Criando um Ticket... 6 Visualizando Tickets Existentes... 9 Respondendo um Ticket...
Leia maisGuia de Especificação de Caso de Uso Metodologia CELEPAR
Guia de Especificação de Caso de Uso Metodologia CELEPAR Agosto 2009 Sumário de Informações do Documento Documento: guiaespecificacaocasouso.odt Número de páginas: 10 Versão Data Mudanças Autor 1.0 09/10/2007
Leia mais1. Introdução pág.3 2. Apresentação do sistema Joomla! pág.4 3. Acessando a administração do site pág.4 4. Artigos 4.1. Criando um Artigo 4.2.
1. Introdução pág.3 2. Apresentação do sistema Joomla! pág.4 3. Acessando a administração do site pág.4 4. Artigos 4.1. Criando um Artigo 4.2. Editando um Artigo 4.3. Excluindo um Artigo 4.4. Publicar
Leia maisDocumento de Projeto de Sistema
Documento de Projeto de Sistema 1 IFES / Serra Projeto: Gerenciador de Pelada - Oasis Registro de Alterações: Versão Responsável Data Alterações 0.1 Eduardo Rigamonte, Geann Valfré, João Paulo Miranda,
Leia maisRock In Rio - Lisboa
Curso de Engenharia Informática Industrial Rock In Rio - Lisboa Elaborado por: Ano Lectivo: 2004/05 Tiago Costa N.º 4917 Turma: C Gustavo Graça Patrício N.º 4757 Turma: C Docente: Professora Maria Estalagem
Leia maisDocas do Pará - Guia de Instalação
Docas do Pará - Guia de Instalação Procedimento para instalar em um novo porto Primeiro faça a instalação no computador servidor do porto (v. abaixo), depois instale em cada máquina de cadastro/acompanhamento
Leia maisPROGRAMAÇÃO AVANÇADA -CONCEITOS DE ORIENTAÇÃO A OBJETOS. Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br
PROGRAMAÇÃO AVANÇADA -CONCEITOS DE ORIENTAÇÃO A OBJETOS Prof. Angelo Augusto Frozza, M.Sc. frozza@ifc-camboriu.edu.br ROTEIRO 1. Conceitos de Orientação a Objetos Introdução O paradigma da POO Classes
Leia mais4 O Workflow e a Máquina de Regras
4 O Workflow e a Máquina de Regras O objetivo do workflow e da máquina de regras é definir um conjunto de passos e regras configuráveis. Ao longo de sua execução, um usuário consegue simplificar o seu
Leia maisNotas de Aula 05: Aplicação de um caso de uso
Notas de Aula 05: Aplicação de um caso de uso Objetivos da aula: Aprender a aplicar a técnica de casos de uso em um pequeno problema real Identificar as variáveis relevantes a serem consideradas Modelar
Leia maisResolução da lista de exercícios de casos de uso
Resolução da lista de exercícios de casos de uso 1. Explique quando são criados e utilizados os diagramas de casos de uso no processo de desenvolvimento incremental e iterativo. Na fase de concepção se
Leia maisSISTEMA 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 maisIMPLEMENTAÇÃO DE SOCKETS E THREADS NO DESENVOLVIMENTO DE SISTEMAS CLIENTE / SERVIDOR: UM ESTUDO EM VB.NET
1 IMPLEMENTAÇÃO DE SOCKETS E THREADS NO DESENVOLVIMENTO DE SISTEMAS CLIENTE / SERVIDOR: UM ESTUDO EM VB.NET Daniel da Silva Carla E. de Castro Franco Diogo Florenzano Avelino daniel.silva1@ext.mpsa.com
Leia maisProgramação para Android. Aula 07: Persistência de dados Shared Preferences, Internal e External Storage
Programação para Android Aula 07: Persistência de dados Shared Preferences, Internal e External Storage Persistência de dados Na maioria das aplicações precisamos ter algum tipo de persistência de dados.
Leia maisFigura 1. A Classe Java
Conexã o com MySQL Connection Factory Para criar as conexões com o banco de dados será utilizado um padrão chamado Factory, onde através dele se terá uma única classe que proverá uma fábrica de conexão
Leia maisManual do usuário. Softcall Java. versão 1.0.5
Manual do usuário Softcall Java versão 1.0.5 Sumário Iniciando SoftCall...3 Tela Principal...3 Configurando o SoftCall...4 Agenda...5 Incluindo um contato...5 Procurando um contato...6 Apagando um contato...6
Leia maisSlide 1 Deitel/Deitel, 8e. Java Como programar Copyright 2010 Pearson Education
Java Como Programar, 8/E Slide 1 Slide 2 Slide 3 Métodos genéricos e classes genéricas (e interfaces) permitem especificar, com uma única declaração de método, um conjunto de métodos relacionados ou, com
Leia maisProcesso de Controle das Reposições da loja
Processo de Controle das Reposições da loja Getway 2015 Processo de Reposição de Mercadorias Manual Processo de Reposição de Mercadorias. O processo de reposição de mercadorias para o Profit foi definido
Leia maisAplicativo 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 maisEspecificação de Requisitos
Projeto/Versão: Versão 11.80 Melhoria Requisito/Módulo: 000552 / Conector Sub-Requisito/Função: Multas Tarefa/Chamado: 01.08.01 País: Brasil Data Especificação: 13/05/13 Rotinas Envolvidas Rotina Tipo
Leia maisGuia do Demoiselle Audit Demoiselle Audit Paulo Gladson Ximenes Pinheiro Clóvis Lemes Ferreira Júnior
Guia do Demoiselle Audit Demoiselle Audit Paulo Gladson Ximenes Pinheiro Clóvis Lemes Ferreira Júnior Demoiselle Audit... v 1. Auditor... 1 1.1. Auditor de Persistência... 1 1.2. Auditor de Visão... 1
Leia maisOCOMON PRIMEIROS PASSOS
OCOMON PRIMEIROS PASSOS O OCOMON ainda não possui um arquivo de Help para atender a todas questões relacionadas ao sistema. Esse arquivo serve apenas para dar as principais instruções para que você tenha
Leia maisManual de configuração do sistema
Manual de configuração do sistema (v.1.5.x Beta) Rua México, 119 Sala 2004 Centro Rio de Janeiro, RJ www.doctors-solution.com.br www.simdoctor.com.br contato@simdoctor.com.br Sumário 1. Fazendo seu primeiro
Leia maisOficina. Praça das Três Caixas d Água Porto Velho - RO
Oficina Praça das Três Caixas d Água Porto Velho - RO Oficina Ministrante: Marcel Leite Rios Apresentação Pessoal Marcel Leite Rios Prof. de Informática IFRO Graduado: Sistemas de Informação - ULBRA MBA
Leia mais3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio
32 3 Um Framework Orientado a Aspectos para Monitoramento e Análise de Processos de Negócio Este capítulo apresenta o framework orientado a aspectos para monitoramento e análise de processos de negócio
Leia maisConstrutor de sites SoftPixel GUIA RÁPIDO - 1 -
GUIA RÁPIDO - 1 - Sumário Introdução...3 Por que utilizar o Construtor de Sites?...3 Vantagens do Construtor de Sites...3 Conceitos básicos...3 Configuração básica do site...5 Definindo o layout/template
Leia maisTutorial WEB CONTENT MANAGEMENT [WCM] Obtenha benefícios a partir das aplicações customizadas da ADMT.
Tutorial WEB CONTENT MANAGEMENT [WCM] Obtenha benefícios a partir das aplicações customizadas da ADMT. PÁGINA: 2 de 21 Nenhuma parte deste documento pode ser utilizado ou reproduzido, em qualquer meio
Leia maisEngenharia de Requisitos Estudo de Caso
Engenharia de Requisitos Estudo de Caso Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / Ian Sommerville 2007 Slide 1 Engenharia de Requisitos Exemplo 1 Reserva de Hotel 1. INTRODUÇÃO Este
Leia mais