GERADOR DE ARTEFATOS PARA APLICAÇÕES WEB - ALPHAWEB

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

Download "GERADOR DE ARTEFATOS PARA APLICAÇÕES WEB - ALPHAWEB"

Transcrição

1 UNISALESIANO Centro Universitário Católico Salesiano Auxilium Curso de Tecnologia em Sistemas para Internet Juliane Rosário Murillo da Silva Casa Grande GERADOR DE ARTEFATOS PARA APLICAÇÕES WEB - ALPHAWEB LINS SP 2010

2 JULIANE ROSÁRIO MURILLO DA SILVA CASA GRANDE GERADOR DE ARTEFATOS PARA APLICAÇÕES WEB Trabalho de Conclusão de Curso apresentado à Banca Examinadora do Centro Universitário Católico Salesiano Auxilium, curso de Tecnologia em Sistemas para Internet, sob a orientação do Prof. M.Sc Anderson Pazin. LINS SP 2010

3 R713g Rosário, Juliane; Grande, Murillo da Silva Casa. Gerador de Artefatos para Aplicações Web - AlphaWEB / Juliane Rosário ; Murillo da Silva Casa Grande. Lins, p. il. 31cm. Monografia apresentada ao Centro Universitário Católico Salesiano Auxilium UNISALESIANO, Lins-SP, para graduação em Tecnologia em Sistemas para Internet, Orientador: Anderson Pazin 1. AlphaWEB. 2. Gerador de Artefatos. 3. Aplicações. 4. Software. I. Título. CDU 004

4 JULIANE ROSÁRIO MURILLO DA SILVA CASA GRANDE GERADOR DE ARTEFATOS PARA APLICAÇÕES WEB Monografia apresentada ao Centro Universitário Católico Salesiano Auxilium, para obtenção do título de Tecnólogo em Sistemas para Internet. Aprovada em: 29 / 06 / 2010 Banca Examinadora: Prof Orientador: Prof. M. Sc. Anderson Pazin Titulação: Mestre em Ciência da Computação pela Universidade Federal de São Carlos (UFSCar). Assinatura: 1º Prof(a): Prof. M.Sc. Luiz Eduardo Cortes Bergamo Titulação: Mestre em Ciência da Computação pela Universidade Federal de São Carlos (UFSCar). Assinatura: 2º Prof(a): Prof. M.Sc. André Ricardo Ponce do Santos Titulação: Mestre em Administração pela Universidade Metodista de Piracicaba (UNIMEP). Assinatura:

5 DEDICATÓRIA Dedico este trabalho primeiramente à minha família, em especial aos meus pais e minha irmã, pelo incentivo, apoio e esforços para me ajudar sempre. Ao meu namorado Paulo, pelo apoio, paciência e compreensão durante a realização deste trabalho. As minhas grandes amigas Mariana e Débora pela ajuda constante, incentivo, carinho e amizade. Dedico ao meu grande amigo e companheiro de grupo Murillo por conseguirmos realizar este trabalho. Juliane Dedico este trabalho á minha família, ao meu pai Sebastião, minha mãe Inês e minha irmã Carolláine, que sempre me incentivaram e apoiaram. Aos amigos sempre prestativos em diversos momentos de colaboração. Dedico a minha companheira de grupo Juliane, grande amiga. Murillo

6 AGRADECIMENTOS Agradeço primeiramente a Deus pela fé e sabedoria. A toda minha família, especialmente aos meus pais Valdecir e Rosangela e minha irmã Viviane, pelo carinho, amor, incentivo, dedicação e principalmente pelo grande esforço e me ajudar em mais esta etapa de minha vida. Ao meu namorado e grande amigo Paulo, pela sua ajuda, incentivo, compreensão, paciência e principalmente pelo seu grande apoio e incentivo em todos os momentos na minha vida e durante a realização deste trabalho. A minha amiga Mariana, pela sua grande amizade e apoio, por me incentivar constantemente no dia-dia, obrigada pela sua grande ajuda sempre que preciso e por estar ao meu lado nos momentos em que precisei. A minha amiga de turma Débora, pelo grande incentivo a sempre buscar resultados positivos, pelo seu grande carinho e amizade, e por sempre estar ao meu lado constantemente no dia-dia, muito obrigada. Ao orientador e professor Anderson Pazin, por sempre nos ajudar da melhor forma possível e nos conduzir a conseguir os melhores resultados e objetivos durante todo o curso, pelo seu apoio e incentivo a sempre fazermos o nosso melhor com dedicação para a realização deste trabalho. Ao companheiro e amigo de monografia Murillo pela amizade, ajuda, apoio, incentivo, prestatividade e confiança durante todas as dificuldades do dia a dia que tivemos para realizar este trabalho. A todos os amigos e colegas de Faculdade que nos ajudaram de alguma forma durante este trabalho e a todos que estiveram presentes e me ajudaram a alcançar mais essa conquista. A todos minha gratidão e muito obrigada! Juliane

7 AGRADECIMENTOS Agradeço a Deus. A toda minha família, meus pais, pelo incentivo, colaboração e principalmente pela presença positiva em minha vida. Aos amigos que fiz no decorrer desta etapa da minha vida e que durante o desenvolvimento do trabalho se mostraram prestativos, e sempre entre uma risada e outra colaboraram com o que fosse necessário, especialmente Bruno, Débora, Maria Eliza, Leandro e Pedro. Ao orientador e professor Anderson Pazin, por sempre nos conduzir e incentivar a buscar as melhores maneiras alcançar os objetivos no projeto. Por ser paciente e nos transmitir tranquilidade e confiança. A Juliane, pela amizade, prestatividade e imenso incentivo no decorrer deste trabalho. Pela confiança depositada em mim e na capacidade de nossa dupla. A todos, muito obrigado! Murillo

8 RESUMO Este trabalho refere-se a um gerador de artefatos para aplicações, que é um software que produz automaticamente sub produtos de software para aplicações a partir de suas especificações, oferecendo aos desenvolvedores benefícios em termos de produtividade, pois reduz o tempo de desenvolvimento da aplicação. A utilização de geradores de artefatos ajuda as organizações a desenvolverem múltiplos produtos de uma família de software com mais facilidades do que pelo modo de implementação tradicional. Além de códigos, os geradores podem produzir a documentação do usuário e do software, diagramas, casos de testes e figuras. Nota-se que eles têm como principal objetivo acelerar e automatizar o processo de desenvolvimento de software através do reuso de códigos pré-escritos, conhecidos como templates, que definem parte de processos rotineiros de um determinado domínio, reduzindo assim o tempo no desenvolvimento e os custos para sua disponibilização e utilização. Este trabalho apresenta um Gerador de Artefatos para Aplicações (AlphaWEB) que utiliza a plataforma Web e que não precisa ser instalado na máquina do usuário. Foi desenvolvido para criar artefatos de softwares a partir das tabelas existentes no banco de dados do desenvolvedor, gerando automaticamente as classes javabeans com as regras de negócio da aplicação, javadao com as conexões com o banco de dados, os Servlets que são os controladores da aplicação, scripts SQL do banco de dados e interfaces HTML/JSP para a interação do usuário com o sistema. Esses artefatos são criados em arquivos distintos do sistema operacional e são gerados de acordo com as especificações fornecidas ao gerador. Esse gerador de artefatos tem como objetivo diminuir as atividades repetitivas de copiar, colar e alterar. Palavras-chave: AlphaWEB. Gerador de Artefatos. Aplicações. Software.

9 ABSTRACT This work refers to a generator for artifacts about to applications, that that is a software that automatically produces sub of software products for applications from your specifications, giving developers the benefits in terms of productivity, because reduces the development time of the application. The use of generators of artifacts helps organizations develop several products from a family of software with more ease than the traditional mode of implementation. Beyond of code, the generators can produce user documentation and of the software, diagrams, tests cases and figures. It is noted that they have as main objective to accelerate and automate the process of software development through the reuse of pre-written code, known as templates, which define part of routine processes of a given domain, thus reducing development time and costs for its availability and use. This paper presents a Artifacts Generator for Applications (AlphaWEB) that uses the Web interface and which need not be installed on the user's machine, was developed to create software artifacts from existing tables in the database developer, automatically generating the JavaBeans classes with the rules of application business, javadao with connections to the database, the Servlets that are the controllers of the application, SQL Scripts Database interfaces and HTML / JSP to the user's interaction with the system. These artifacts are created in distinct files of the operating system and are generated according to the specifications provided to generator. This generator artifacts aims to reduce the repetitive activities of copy, paste and change. Keywords: AlphaWEB. Generator of Artifacts. Applications. Software.

10 LISTA DE FIGURAS Figura 1. Diagramas definidos pela UML Figura 2. Diagrama de Classes...18 Figura 3. Diagrama de Objetos Figura 4. Diagrama de Pacotes...19 Figura 5. Diagrama de Estrutura Composta...20 Figura 6. Diagrama de Caso de Uso...21 Figura 7. Diagrama de Componentes...21 Figura 8. Diagrama de Implantação Figura 9. Diagrama de Sequência...23 Figura 10. Diagrama de Transição de Estado...23 Figura 11. Diagrama de Atividades Figura 12. Diagrama de Colaboração ou Comunicação...25 Figura 13. Diagrama de Temporização Figura 14. Diagrama de Interatividade Figura 15. Arquitetura de uma aplicação web utilizando Servlet Figura 16. Ciclo de vida do Servlet...30 Figura 17. Estrutura do padrão DAO...35 Figura 18. Modelo Tradicional de requisição Web versus o modelo AJAX Figura 19. Interface de Definição de uma Aplicação GawCRe...51 Figura 20. Cadastro de Guias de Convênios de Pacientes GawCRe...51 Figura 21. Interface de Controle de Estoque de Produtos - GAS Figura 22. Funcionamento de um Domínio do Sistema - DRACO-PUC...53 Figura 23. Interface de Geração de Arquivo de Configuração - Captor Figura 24. Interface de Armazenamento do Modelo da Aplicação - Captor...54 Figura 25. Diagrama de Classes e Objetos...57 Figura 26. Diagrama de Use Case Gerar Artefatos...59 Figura 27. Diagrama de Classes a ser implementado...60 Figura 28. Diagrama de Classes para a Oficina Eletrônica Figura 29. Diagrama de Sequência Gerar Artefato Figura 30. Utilização de templates durante a geração dos artefatos...67 Figura 31. Conjunto de scripts de criação de tabelas utilizando SQL....68

11 Figura 32. Template definido para scripts de criação das tabelas SQL Figura 33. Template para construção de scripts de tabelas SQL...69 Figura 34. Funcionamento do gerador e os artefatos por ele gerados...70 Figura 35. Tela Inicial do Gerador...71 Figura 36. Tela de Gerar Artefatos...72 Figura 37. Artefato de scripts SQL da Tabela Comissão...73 Figura 38. Artefato Bean da Tabela Comissão...73 Figura 39. Artefato HTML da Tabela Comissão Figura 40. Conjunto de scripts de criação das classes Beans Figura 41. Template definido para criação das classes Beans Figura 42. Template para construção das Beans...88 Figura 43. Template para construção das páginas HTML...89 Figura 44. Conjunto de scripts de criação das páginas HTML Figura 45. Template definido para criação das páginas HTML LISTA DE QUADROS Quadro 1. Regras de trabalho com JavaBeans...33 Quadro 2. Lista de Use Case Quadro 3. Caso de Uso Gerar Artefatos Quadro 4. Estrutura da Tabela Conserto de Aparelho Quadro 5. Estrutura da Tabela Execução de Conserto...63 Quadro 6. Estrutura da Tabela Cliente...63 Quadro 7. Estrutura da Tabela Aparelho...63 Quadro 8. Estrutura da Tabela Tipo de Aparelho...64 Quadro 9. Estrutura da Tabela Técnico...64 Quadro 10. Regras de Validação da Tabela de Técnico...64 Quadro 11. Estrutura da Tabela Comissão Quadro 12. Regras de Validação da Tabela Comissão...65 Quadro 13. Termos utilizados no trabalho...83

12 LISTA DE SIGLAS E ABREVIATURAS AJAX: Asynchrous JavaScript and XML API: Interface de Programação de Aplicativos ANSI: Instituto Nacional Americano de Padronização ASP: Active Server Pages CSS: Cascading Style Sheets CAPTOR: Configurable Application Generator DAO: Data Access Object DBMS: Database Management System DCL: Linguagem de Controle de Dados DDL: Linguagem de Definição de Dados DML: Linguagem de Manipulação de Dados DOM: Document Object Model DQL: Linguagem de Consulta de Dados DTL: Linguagem de Transação de Dados EE: Enterprise Edition GB: Giga Bytes GAwCRe: Gerador de Aplicações Web para Clínicas de Reabilitação HTML: Linguagem de Marcação de Hipertexto HTTP: Protocolo de Transferência de Hipertexto ISO: Organização Internacional para Padronização JEE: Java Enterprise Edition JME: Java Micro Edition JSE: Java Standard Edition JDBC: Java DataBase Connectivity JS: Java Script JSP: Java Server Pages LMA: Linguagem de Modelagem da Aplicação MB: Mega Bytes OMG: Object Management Group OO: Orientada a Objetos PDA: Assistente Pessoal Digital

13 PHP: Personal Home Page RAC: Real Application Clusters SE: Standard Edition SGBD: Sistema Gerenciador de Banco de Dados SGBDR: Sistema Gerenciador de Banco de Dados Relacional SiGCli: Sistemas de Gestão de Clínicas SO: Sistema Operacional SQL: Linguagem de Consulta Estrutural UML: Unified Modeling Language URL: Localizador Padrão de Recursos WML: Wireless Markup Language XE: Express Edition XHTML: extensible Hypertext Markup Language XML: extensible Markup Language

14 SUMÁRIO INTRODUÇÃO FUNDAMENTOS CONCEITUAIS UML UNIFIED MODELING LANGUAGE PLATAFORMAS TECNOLÓGICAS A LINGUAGEM JAVA SISTEMA GERENCIADOR DE BANCO DE DADOS AJAX GERADORES DE ARTEFATOS DE SOFTWARE ENGENHARIA DE SOFTWARE DEFINIÇÃO DE GERADORES DE ARTEFATOS DEFINIÇÃO DE TEMPLATES LEVANTAMENTO DE REQUISITOS ANÁLISE DE MERCADO DOCUMENTOS DE REQUISITOS ANÁLISE ORIENTADA A OBJETOS DIAGRAMA DE CLASSES COMPLETO JUSTIFICATIVA PARA IMPLEMENTAÇÃO LISTA DE CASOS DE USO DIAGRAMA DE CASOS DE USO DIAGRAMA DE CLASSES A SER IMPLEMENTADO PROJETO DE BANCO DE DADOS...61

15 5.1 DESCRIÇÃO DO SISTEMA DE OFICINA ELETRÔNICA TABELAS PROJETO ORIENTADO A OBJETOS DIAGRAMA DE SEQUÊNCIA IMPLEMENTAÇÃO DO GERADOR DE ARTEFATOS LAYOUT DE TELAS TELA INICIAL DO SISTEMA TELA DE GERAR ARTEFATOS ARTEFATOS GERADOS...72 CONCLUSÃO...75 REFERÊNCIAS...77 GLOSSÁRIO...80 APÊNDICES...84

16 14 INTRODUÇÃO O desenvolvimento de softwares é um processo complexo e de difícil realização, devido às mudanças de tecnologia e às alterações nos requisitos que surgem no decorrer do processo de desenvolvimento (PAZIN, 2004). Para facilitar esse processo, algumas técnicas podem ser utilizadas. O reuso de software, visa diminuir a possibilidade de inserção de erros e com isso o produto final pode ser gerado com maior qualidade (JUNIOR, 2006). A técnica de reuso pode ser automatizada por softwares específicos chamados de geradores ou wizards (PAZIN, 2004). Geradores de Aplicações são ferramentas que têm a capacidade de automatizar e acelerar o processo de desenvolvimento de softwares, por meio de reuso de código pré-escrito, chamados de templates. Os geradores permitem ao desenvolvedor inserir especificações do programa em alto nível e a ferramenta gera um produto de software (PAZIN, 2004). Com a utilização de geradores de aplicação, o desenvolvedor deve inserir apenas as informações sobre o que deve ser feito, e a ferramenta deve decidir como essas informações são transformadas em código fonte (CLEAVELAND, 2001). Os geradores de aplicação trazem benefícios em termos de produtividade para o software, pelo fato de gerarem classes de alto nível com base em suas especificações. Um dos problemas dos geradores de aplicação é o elevado custo em seu desenvolvimento, utilização e manutenção (JUNIOR, 2006). O objetivo deste trabalho é desenvolver um gerador de artefatos para aplicações web. Artefatos são produtos de uma ou mais atividades dentro do contexto de desenvolvimento de um software ou sistema. Esse gerador deve criar as classes Java Beans da aplicação, as classes Java DAO para a manipulação dos dados armazenados em um banco de dados, os controladores da aplicação (Servlets), os scripts SQL de criação e manipulação do banco de dados e as interfaces HTML e JSP para a aplicação. Esses artefatos são gerados a partir das tabelas existentes em um banco de dados. O objetivo principal do gerador é diminuir as tarefas repetitivas de copiar, colar e alterar.

17 15 O processo de codificação que os geradores utilizam durante a engenharia de aplicação pode ser mais rápido e menos suscetível a erros humanos do que o processo tradicional de codificação, ou seja, os geradores podem produzir códigos de forma sistemática e mais segura em relação aos métodos tradicionais de programação (CZARNECKI E EISENERCKER, 2000). O desenvolvimento e a utilização deste gerador de aplicação pode ser justificada pela diminuição de tarefas repetitivas e pelos benefícios oferecidos como a alta qualidade do produto gerado, pois esses produtos gerados são alterados de acordo com as informações que são fornecidas ao gerador, e que assim facilita o desenvolvimento de uma nova versão do software.

18 16 1 FUNDAMENTOS CONCEITUAIS 1.1 UML Unified Modeling Language A Unified Modeling Language (UML) é uma linguagem de modelagem gráfica e visual, designada para especificar, construir e documentar um sistema, permitindo a visualização de softwares e aplicações em diagramas padronizados (FOWLER, 2005). Ela nasceu da unificação das linguagens de modelagem orientadas a objetos existentes desde o final dos anos oitenta e início dos anos noventa. Em 1997, a UML foi aprovada como padrão pela OMG, tendo desde então grande aceitação e utilização pela comunidade de desenvolvedores de sistemas. Desde seu surgimento foram sendo criadas atualizações para tornar a linguagem mais clara e útil (PENDER, 2004). A UML é uma linguagem visual para modelar sistemas orientados a objetos. Isso quer dizer que a UML é uma linguagem que define elementos gráficos (visuais) que podem ser utilizadas na modelagem de sistemas. Esses elementos permitem representar os conceitos do paradigma da orientação a objetos. Através dos elementos gráficos definidos nesta linguagem pode-se construir diagramas que representam diversas perspectivas de um sistema (BEZERRA, 2007, p. 15). A linguagem de modelagem é uma notação utilizada para expressar e indicar quais os passos a serem seguidos para o desenvolvimento de um projeto. A especificação da UML consiste de duas partes (BEZERRA, 2007): a) semântica: especifica a sintaxe abstrata e a semântica dos conceitos de modelagem estática e dinâmica de objetos; b) notação: especifica a notação gráfica para a representação visual da semântica. A UML suporta o desenvolvimento iterativo e incremental, que é um processo de desenvolvimento de sistemas em pequenos passos. Uma iteração é um laço de desenvolvimento que resulta na liberação de um subconjunto de produtos que evolui até o produto final percorrendo as seguintes atividades: análise de requisitos, análise, projeto, implementação e teste (PENDER, 2004).

19 17 A UML é projetada especificamente para representar sistemas orientados a objetos (OO). As técnicas de desenvolvimento orientadas a objetos descrevem o software como um conjunto de blocos cooperativos de informações e comportamentos (PENDER, 2004, p. 5). A UML permite ao desenvolvedor especificar, documentar e estruturar os diagramas para uma maior visualização lógica do desenvolvimento completo de um sistema de informação. (FOWLER, 2005). A UML foi projetada para atender a algumas especificações, para que possa verdadeiramente ser um padrão que resolva as necessidades práticas da comunidade de desenvolvimento de software. A UML auxilia os desenvolvedores para (PENDER, 2004): a) oferecer aos desenvolvedores uma linguagem de modelagem pronta para usar, expressiva e visual, para o desenvolvimento e a troca de modelos significativos; b) fornecer mecanismos de extensibilidade e especialização para estender os principais conceitos; c) admitir especificações independentes das linguagens de programação e dos processos de desenvolvimento específicos; d) oferecer uma base formal para entender a linguagem de modelagem; e) encorajar o crescimento do mercado de ferramentas de objetos; f) admitir conceitos de desenvolvimento de nível mais alto, como componentes, colaborações, frameworks e padrões. Fonte: Bezerra, 2007 p. 18 Figura 1. Diagramas definidos pela UML.

20 18 A Figura 1 ilustra o modelo oficial da UML que se compõe de 13 tipos de diagramas: classes, objetos, componentes, instalação, pacotes, estrutura, caso de uso, transição de estado, atividade, sequência, interatividade, colaboração ou comunicação e tempo (BEZERRA, 2007). a) Diagrama de Classes: descreve os tipos de objetos presentes no sistema e os tipos de relacionamentos existentes entre eles, é uma representação da estrutura e relações entre as classes, que servem de modelo para os objetos e seus comportamentos. Esse diagrama pode ser observado na Figura 2. Fonte: Fowler, 2005 p. 53 Figura 2. Diagrama de Classes. b) Diagrama de Objetos: é uma varição do diagrama de classes utilizando praticamente a mesma notação, e é tão importante quanto ele. Normalmente permite desvendar as regras que precisam fazer parte das definições dos recursos e seus relacionamentos. Tem

21 19 como objetivo admitir a investigação de requisitos e modelar os casos de testes para validar o diagrama de classes. Exibe os objetos instanciados em um sistema e a configuração de instâncias. A Figura 3 apresenta esse diagrama. Fonte: Fowler, 2005 p. 95 Figura 3. Diagrama de Objetos. c) Diagrama de Pacotes: mostra os pacotes e exibe suas respectivas dependências. Um pacote é a representação de um grupo de classes ou outros elementos que se relacionam com outros pacotes através de uma relação de dependência. A Figura 4 representa um diagrama de pacotes. Fonte: Fowler, 2005 p. 98 Figura 4. Diagrama de Pacotes.

22 20 d) Diagrama de Estrutura Composta: é utilizado para descrever relacionamentos entre os elementos do sistema e a colaboração interna das classes, interfaces e componentes para e especificação de uma funcionalidade. Os recursos estáticos influenciam classes e associações, objetos, ligações e colaborações, oferecendo ao framework no qual os elementos dinâmicos do modelo são executados. Esse diagrama funciona de modo semelhante a uma planta para a construção de um equipamento, mostra as partes e como elas podem ser montadas, mas não pode mostrar como o produto final se comportará. A Figura 5 apresenta um exemplo desse diagrama. Fonte: Fowler, 2005 p. 133 Figura 5. Diagrama de Estrutura Composta. e) Diagrama de Caso de Uso: modela as expectativas dos usuários para utilização do sistema, descrevendo a funcionalidade proposta para um novo sistema que será projetado. É normalmente utilizado como parte da abordagem de caso de uso, que inclui uma descrição textual dos casos de uso individuais e a extração de cenários. Pode ser escrito de maneiras diferentes, mas a mais comum é representar a visão de fora do sistema. Diagramas de caso de uso identificam os recursos específicos do sistema, comportamento compartilhado entre

23 21 os recursos e oferece modo simples e fácil de entendimento para os clientes visualizarem os requisitos. A Figura 6 apresenta um exemplo de diagrama de caso de uso. Fonte: Fowler, 2005 p. 107 Figura 6. Diagrama de Caso de Uso. f) Diagrama de Componentes: modela a visão da implementação representando partes do software no ambiente de implementação, ilustra como deverá ficar a organização das classes através de componentes de trabalho. Sua finalidade é definir os modelos físicos do software e seus relacionamentos entre si, os componentes podem representar qualquer coisa desde uma classe até aplicações, subsistemas e sistemas. Esse diagrama pode ser utilizado para representação do relacionamento entre classes que especificam os requisitos para os componentes. A Figura 7 apresenta esse diagrama. Fonte: Fowler, 2005 p. 135 Figura 7. Diagrama de Componentes.

24 22 g) Diagrama de Implantação: descreve os componentes de uma arquitetura de execução, ou seja, a configuração do hardware e do software, exibindo o layout físico do sistema revelando quais partes do hardware e do software são executados. É consistido em nós representando um tipo de recurso de processamento e associações que define o tipo de relacionamento que dá suporte à comunicação entre os nós. A Figura 8 é um exemplo de diagrama de implantação. Fonte: Fowler, 2005 p. 103 Figura 8. Diagrama de Implantação. h) Diagrama de Sequência: utilizado para representar informações de forma simples e lógica de sequências de processos em um sistema, tendo como foco a identificação da interação e comportamento entre os grupos de objetos ao longo do tempo. Seu maior beneficio é a ajuda na identificação de mensagens trocadas entre os objetos que fazem perguntas e os que respondem. Normalmente isso ocorre em cenários para caso de uso, capturando os comportamentos de um único cenário e exibindo os objetos e as mensagens passadas entre eles no caso de uso. São modelados em nível de objeto e não no nível de classe, admitindo que vários objetos de uma mesma classe

25 23 possam trabalhar juntos. A Figura 9 representa um diagrama de sequência. Fonte: Fowler, 2005 p. 69 Figura 9. Diagrama de Sequência. i) Diagrama de Transição de Estado: são técnicas para conhecer o comportamento do sistema, é uma representação do estado ou situação em que o objeto pode se encontrar no decorrer da execução de processos de um sistema, passando assim o objeto de um estado inicial para o estado final através de uma transição. Inclui notações que explicam o comportamento do objeto enquanto ele muda de um estado para outro e enquanto está em um estado específico. É designado para mostrar o comportamento do ciclo de vida de um único objeto. Esse diagrama pode ser observado na Figura 10. Fonte: Fowler, 2005 p. 111 Figura 10. Diagrama de Transição de Estado.

26 24 j) Diagrama de Atividades: é uma técnica que descreve a lógica de procedimento, representa processo de negócio e fluxo de trabalho conduzido por processamento, desempenha papel semelhante aos fluxogramas, e suportam comportamento paralelo. São importantes somente para a modelagem de aspectos dinâmicos de um sistema e para construção de sistemas executáveis por meio de engenharia reversa. Diz o que acontece, mas não diz quem faz o que, este diagrama não comunica qual classe é responsável por cada ação. A Figura 11 é um exemplo de diagrama de atividades. Fonte: Fowler, 2005 p. 119 Figura 11. Diagrama de Atividades. k) Diagrama de Colaboração ou Comunicação: exibe interação entre conjuntos de objetos e seus relacionamentos, incluindo mensagens trocadas entre eles. Dá ênfase à ordenação estrutural em que as mensagens são trocadas entre os objetos de um sistema. Oferecem visão de alto nível da progressão lógica através das interações. Esse diagrama é utilizado para dar ênfase no contexto do sistema, é

27 25 desenhado como um diagrama de objetos, onde os objetos são exibidos juntamente com seus relacionamentos. A Figura 12 exibe esse diagrama. Fonte: Fowler, 2005 p. 130 Figura 12. Diagrama de Colaboração ou Comunicação. l) Diagrama de Temporização: apresenta comportamento dos objetos durante seu ciclo de vida e sua interação em uma escala de tempo, focando as condições que mudam no decorrer desse período. É uma outra forma de diagrama de interação, no qual o foco está nas restrições de temporização para um ou vários objetos. Oferece visão da mudança de estado do objeto enfatizando a importância do tempo e da temporização. Seu layout é uma grade com eixos de tempo e estado, utiliza duas formas de representação, uma linha de tempo de estado (timeline) e uma linha de tempo de valor geral. Esse diagrama é representado pela Figura 13. Fonte: Fowler, 2005 p. 141 Figura 13. Diagrama de Temporização.

28 26 m) Diagrama de Interatividade: é uma mistura e variações de diagramas de atividades e sequência, faz utilização do layout do diagrama de atividades para modelar o fluxo da lógica em diversos eventos. Faz modelagem de uma série de comportamentos discretos (atividades) utilizando blocos de ocorrência de interação e realiza interação individual que se expressa nos diagramas de sequência. Esse diagrama é representado na Figura 14. Fonte: Fowler, 2005 p. 140 Figura 14. Diagrama de Interatividade. Um software ou aplicação que utiliza a UML como linguagem de suporte à modelagem envolve a criação de diversos documentos, podendo ser textos ou gráficos. Esses documentos são denominados artefatos de software que compõem as visões do sistema. Os artefatos gráficos produzidos durante o desenvolvimento de uma aplicação de software orientado a objetos são definidos pela utilização dos diagramas da UML (BEZERRA, 2007).

29 Plataformas Tecnológicas A Linguagem Java Java é uma linguagem de programação, desenvolvida pela empresa Sun Microsystems voltada para a programação Orientada a Objetos (OO). É portável para diferentes plataformas e diferente das outras linguagens de programação. A linguagem Java é compilada para um bytecode que é executado e compilado por uma máquina virtual (JAVA, 2009). A Sun lança a primeira plataforma universal de software, desenhada a partir das tecnologias utilizadas na Internet e intranets corporativas. A tecnologia Java possibilita aos desenvolvedores escrever aplicativos uma vez, para rodar em qualquer computador (SUN, 2009). Java foi criada com base nos elementos das linguagens C e C++ com finalidade de adicionar conteúdo dinâmico a páginas da Web, como interatividade e animações, atendendo as necessidades crescentes dos usuários e desenvolvedores (DEITEL e DEITEL, 2005). Java é utilizada em todos os principais setores corporativos de médio e grande porte no mundo inteiro e está presente em uma ampla gama de dispositivos programáveis como computadores, celulares, PDA, e redes (DEITEL e DEITEL, 2005). A linguagem teve sua idéia principal amadurecida pelas mudanças ocorridas no mundo da tecnologia, e foi implementada com o intuito de abranger essas mudanças. A linguagem Java foi projetada com os seguintes objetivos: orientação a objetos, portabilidade, recursos de rede e segurança, e oferece diversas vantagens em relação ao uso de outras tecnologias de servidor como: flexibilidade, e benefícios como escalabilidade de distribuir o processamento de aplicações desenvolvidas em diversos servidores (GONÇALVES, 2007). Segundo o site da Sun Microsystems, em 1998, foi introduzida uma nova tecnologia que permite maior velocidade, flexibilidade e um conjunto completo de classes base, nas seguintes plataformas (SUN, 2009): a) JSE (Java Standard Edition): é um ambiente básico destinado ao desenvolvimento e execução das aplicações para desktops e estações de trabalho;

RESUMO. Palavras-chave: AlphaWEB. Gerador de Artefatos. Aplicações. Software. ABSTRACT

RESUMO. Palavras-chave: AlphaWEB. Gerador de Artefatos. Aplicações. Software. ABSTRACT GERADOR DE ARTEFATOS PARA APLICAÇÕES WEB GENERATOR ARTIFACTS FOR WEB APPLICATIONS Juliane Rosário juh_rosario@yahoo.com.br Murillo da Silva Casa Grande murilloscg@yahoo.com.br Prof. M. Sc. Anderson Pazin

Leia mais

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

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

Leia mais

DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES

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

Leia mais

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação SOFT DISCIPLINA: Engenharia de software AULA NÚMERO: 08 DATA: / / PROFESSOR: Andrey APRESENTAÇÃO O objetivo desta aula é apresentar e discutir conceitos relacionados a modelos e especificações. Nesta aula

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

Universidade da Beira Interior

Universidade da Beira Interior Universidade da Beira Interior Relatório Apresentação Java Server Pages Adolfo Peixinho nº4067 Nuno Reis nº 3955 Índice O que é uma aplicação Web?... 3 Tecnologia Java EE... 4 Ciclo de Vida de uma Aplicação

Leia mais

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

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

Leia mais

SQL APOSTILA INTRODUÇÃO A LINGUAGEM SQL

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

Leia mais

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

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

Persistência e Banco de Dados em Jogos Digitais

Persistê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 mais

Wilson Moraes Góes. Novatec

Wilson 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 mais

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

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

Leia mais

Associação Carioca de Ensino Superior Centro Universitário Carioca

Associação Carioca de Ensino Superior Centro Universitário Carioca Desenvolvimento de Aplicações Web Lista de Exercícios Métodos HTTP 1. No tocante ao protocolo de transferência de hipertexto (HTTP), esse protocolo da categoria "solicitação e resposta" possui três métodos

Leia mais

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

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

Leia mais

Roteiro 2 Conceitos Gerais

Roteiro 2 Conceitos Gerais Roteiro 2 Conceitos Gerais Objetivos: UC Projeto de Banco de Dados Explorar conceitos gerais de bancos de dados; o Arquitetura de bancos de dados: esquemas, categorias de modelos de dados, linguagens e

Leia mais

Dado: Fatos conhecidos que podem ser registrados e têm um significado implícito. Banco de Dados:

Dado: Fatos conhecidos que podem ser registrados e têm um significado implícito. Banco de Dados: MC536 Introdução Sumário Conceitos preliminares Funcionalidades Características principais Usuários Vantagens do uso de BDs Tendências mais recentes em SGBDs Algumas desvantagens Modelos de dados Classificação

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

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

Desenvolvimento WEB II. Professora: Kelly de Paula Cunha

Desenvolvimento WEB II. Professora: Kelly de Paula Cunha Desenvolvimento WEB II Professora: Kelly de Paula Cunha O Java EE (Java Enterprise Edition): série de especificações detalhadas, dando uma receita de como deve ser implementado um software que utiliza

Leia mais

DESENVOLVIMENTO WEB UTILIZANDO FRAMEWORK PRIMEFACES E OUTRAS TECNOLOGIAS ATUAIS

DESENVOLVIMENTO WEB UTILIZANDO FRAMEWORK PRIMEFACES E OUTRAS TECNOLOGIAS ATUAIS DESENVOLVIMENTO WEB UTILIZANDO FRAMEWORK PRIMEFACES E OUTRAS TECNOLOGIAS ATUAIS Emanuel M. Godoy 1, Ricardo Ribeiro Rufino 1 1 Universidade Paranaense (Unipar) Paranavaí PR Brasil godoymanel@gmail.com,

Leia mais

UML - Unified Modeling Language

UML - Unified Modeling Language UML - Unified Modeling Language Casos de Uso Marcio E. F. Maia Disciplina: Engenharia de Software Professora: Rossana M. C. Andrade Curso: Ciências da Computação Universidade Federal do Ceará 24 de abril

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

Orientação a Objetos

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

Leia mais

Bancos de Dados. Conceitos F undamentais em S is temas de B ancos de Dados e s uas Aplicações

Bancos de Dados. Conceitos F undamentais em S is temas de B ancos de Dados e s uas Aplicações Conceitos F undamentais em S is temas de B ancos de Dados e s uas Aplicações Tópicos Conceitos Básicos Bancos de Dados Sistemas de Bancos de Dados Sistemas de Gerenciamento de Bancos de Dados Abstração

Leia mais

gerenciamento de portais e websites corporativos interface simples e amigável, ágil e funcional não dependendo mais de um profissional especializado

gerenciamento de portais e websites corporativos interface simples e amigável, ágil e funcional não dependendo mais de um profissional especializado O NetPublisher é um sistema de gerenciamento de portais e websites corporativos (intranets ou extranets), apropriado para pequenas, médias e grandes empresas. O conteúdo do website pode ser atualizado

Leia mais

Java para Desenvolvimento Web

Java para Desenvolvimento Web Java para Desenvolvimento Web Servlets A tecnologia Servlet foi introduzida pela Sun Microsystems em 1996, aprimorando e estendendo a funcionalidade e capacidade de servidores Web. Servlets é uma API para

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

Programando em PHP. Conceitos Básicos

Programando em PHP. Conceitos Básicos Programando em PHP www.guilhermepontes.eti.br lgapontes@gmail.com Conceitos Básicos Todo o escopo deste estudo estará voltado para a criação de sites com o uso dos diversos recursos de programação web

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

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

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

Leia mais

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

Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Sistema Gerenciador de Banco de Dados

Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Sistema Gerenciador de Banco de Dados Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Um Sistema Gerenciador de Banco de Dados (SGBD) é constituído por um conjunto de dados associados a um conjunto de programas para acesso a esses

Leia mais

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

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

Leia mais

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

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

Leia mais

www.f2b.com.br 18/04/2006 Micropagamento F2b Web Services Web rev 00

www.f2b.com.br 18/04/2006 Micropagamento F2b Web Services Web rev 00 www.f2b.com.br 18/04/2006 Micropagamento F2b Web Services Web rev 00 Controle de Revisões Micropagamento F2b Web Services/Web 18/04/2006 Revisão Data Descrição 00 17/04/2006 Emissão inicial. www.f2b.com.br

Leia mais

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

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

Leia mais

Ferramenta de apoio a gerência de configuração de software. Aluno: Rodrigo Furlaneto Orientador: Everaldo Artur Grahl

Ferramenta de apoio a gerência de configuração de software. Aluno: Rodrigo Furlaneto Orientador: Everaldo Artur Grahl Ferramenta de apoio a gerência de configuração de software Aluno: Rodrigo Furlaneto Orientador: Everaldo Artur Grahl Roteiro de apresentação Introdução Objetivos Fundamentação Teórica Gerência de Configuração

Leia mais

Introdução a Computação

Introdução a Computação Introdução a Computação Aula 03 Profissões de TI Prof. MSc. Edilberto Silva edilms@yahoo.com http:// Papéis... Um papel é uma definição abstrata de um conjunto de atividades executadas e dos respectivos

Leia mais

Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto

Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto Desenvolvimento de Sistemas Orientados a Objetos com UML UP/RUP: Projeto Engenharia de Software I Informática 2009 Profa. Dra. Itana Gimenes RUP: Artefatos de projeto Modelo de Projeto: Use-Case Realization-projeto

Leia mais

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

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

Leia mais

2 Diagrama de Caso de Uso

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

Leia mais

Universidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1.

Universidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1. Universidade Federal de Santa Maria Curso de Arquivologia Disciplina de Banco de Dados Aplicados à Arquivística Prof. Andre Zanki Cordenonsi Versao 1.0 Março de 2008 Tópicos Abordados Conceitos sobre Banco

Leia mais

Eduardo Bezerra. Editora Campus/Elsevier

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

Leia mais

3 SCS: Sistema de Componentes de Software

3 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 mais

Engenharia de Software III

Engenharia 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 mais

Engenharia de Requisitos Estudo de Caso

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

Leia mais

UML 2. Guia Prático. Gilleanes T.A. Guedes. Novatec. Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2

UML 2. Guia Prático. Gilleanes T.A. Guedes. Novatec. Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2 UML 2 Guia Prático Gilleanes T.A. Guedes Obra revisada e ampliada a partir do título Guia de Consulta Rápida UML 2 Novatec capítulo 1 Introdução à UML A UML (Unified Modeling Language ou Linguagem de Modelagem

Leia mais

Para construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd.

Para construção dos modelos físicos, será estudado o modelo Relacional como originalmente proposto por Codd. Apresentação Este curso tem como objetivo, oferecer uma noção geral sobre a construção de sistemas de banco de dados. Para isto, é necessário estudar modelos para a construção de projetos lógicos de bancos

Leia mais

Programação Web. Professor: Diego Oliveira. Conteúdo 02: JSP e Servlets

Programação Web. Professor: Diego Oliveira. Conteúdo 02: JSP e Servlets Programação Web Professor: Diego Oliveira Conteúdo 02: JSP e Servlets JSP JSP é um template de uma página Web que usa Java para gerar HTML dinamicamente JSP é considerado server-side e roda em um objeto

Leia mais

Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA

Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA RESUMO Ricardo Della Libera Marzochi A introdução ao Service Component Architecture (SCA) diz respeito ao estudo dos principais fundamentos

Leia mais

Sistemas para internet e software livre

Sistemas para internet e software livre Sistemas para internet e software livre Metodologia de modelagem de aplicações WEB Image: FreeDigitalPhotos.net Domínio: Elementos de aplicação WEB Páginas Web Scripts Formulários Applets e ActiveX Motivação

Leia mais

Conceitos de Banco de Dados

Conceitos 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 mais

ALESSANDRO RODRIGO FRANCO FERNANDO MARTINS RAFAEL ALMEIDA DE OLIVEIRA

ALESSANDRO RODRIGO FRANCO FERNANDO MARTINS RAFAEL ALMEIDA DE OLIVEIRA ALESSANDRO RODRIGO FRANCO FERNANDO MARTINS RAFAEL ALMEIDA DE OLIVEIRA INTRODUÇÃO O projeto de um banco de dados é realizado sob um processo sistemático denominado metodologia de projeto. O processo do

Leia mais

Análise e Projeto Orientados por Objetos

Análise e Projeto Orientados por Objetos Análise e Projeto Orientados por Objetos Aula 02 Análise e Projeto OO Edirlei Soares de Lima Análise A análise modela o problema e consiste das atividades necessárias para entender

Leia mais

Aula 03 - Projeto Java Web

Aula 03 - Projeto Java Web Aula 03 - Projeto Java Web Para criação de um projeto java web, vá em File/New. Escolha o projeto: Em seguida, na caixa Categorias selecione Java Web. Feito isso, na caixa à direita selecione Aplicação

Leia mais

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP) Hardware (Nível 0) Organização O AS/400 isola os usuários das características do hardware através de uma arquitetura de camadas. Vários modelos da família AS/400 de computadores de médio porte estão disponíveis,

Leia mais

1. CONCEITOS BÁSICOS DE BD, SBD E SGBD

1. CONCEITOS BÁSICOS DE BD, SBD E SGBD Introdução 1. CONCEITOS BÁSICOS DE BD, SBD E SGBD A importância da informação para a tomada de decisões nas organizações tem impulsionado o desenvolvimento dos sistemas de processamento de informações.

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

Conteúdo Programático de PHP

Conteúdo Programático de PHP Conteúdo Programático de PHP 1 Por que PHP? No mercado atual existem diversas tecnologias especializadas na integração de banco de dados com a WEB, sendo o PHP a linguagem que mais se desenvolve, tendo

Leia mais

Desenvolvendo Websites com PHP

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

Leia mais

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

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

Leia mais

Programação para Internet II

Programação para Internet II Programação para Internet II Aulas 01 e 02 Prof. Fernando Freitas Costa http://blog.fimes.edu.br/fernando nando@fimes.edu.br Conteúdo Programático Instalação e configuração básica do Eclipse Indigo e do

Leia mais

DOCUMENTAÇÃO DO FRAMEWORK - versão 2.0

DOCUMENTAÇÃ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 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

Tópicos em Engenharia de Software (Optativa III) AULA 2. Prof. Andrêza Leite andreza.lba@gmail.com (81 )9801-6619

Tópicos em Engenharia de Software (Optativa III) AULA 2. Prof. Andrêza Leite andreza.lba@gmail.com (81 )9801-6619 Tópicos em Engenharia de Software (Optativa III) AULA 2 Prof. Andrêza Leite andreza.lba@gmail.com (81 )9801-6619 Engenharia de Software Objetivo da aula Depois desta aula você terá uma revisão sobre o

Leia mais

Documento de Arquitetura

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

Leia mais

Programação com acesso a BD. Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br

Programação com acesso a BD. Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br Programação com acesso a BD Prof.: Clayton Maciel Costa clayton.maciel@ifrn.edu.br 1 Introdução BD desempenha papel crítico em todas as áreas em que computadores são utilizados: Banco: Depositar ou retirar

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

Use a Cabeça! FREEMAN, Eric e Elisabeth. HTML com CSS e XHTML BASHMAN, Brian / SIERRA Kathy / BATES, Bert. Servlets & JSP

Use a Cabeça! FREEMAN, Eric e Elisabeth. HTML com CSS e XHTML BASHMAN, Brian / SIERRA Kathy / BATES, Bert. Servlets & JSP Use a Cabeça! FREEMAN, Eric e Elisabeth. HTML com CSS e XHTML BASHMAN, Brian / SIERRA Kathy / BATES, Bert. Servlets & JSP Software cliente: browser e outros Protocolo HTTP Infraestrutura de transporte

Leia mais

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

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

Leia mais

Projeto de Arquitetura

Projeto de Arquitetura Introdução Projeto de Arquitetura (Cap 11 - Sommerville) UNIVERSIDADE FEDERAL DE ALAGOAS Curso de Ciência da Computação Engenharia de Software I Prof. Rômulo Nunes de Oliveira Até agora, estudamos: Os

Leia mais

ENGENHARIA DE SOFTWARE I

ENGENHARIA DE SOFTWARE I ENGENHARIA DE SOFTWARE I Prof. Cássio Huggentobler de Costa [cassio.costa@ulbra.br] Twitter: www.twitter.com/cassiocosta_ Agenda da Aula (002) Metodologias de Desenvolvimento de Softwares Métodos Ágeis

Leia mais

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

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

Leia mais

Roteiro. Arquitetura. Tipos de Arquitetura. Questionário. Centralizado Descentralizado Hibrido

Roteiro. Arquitetura. Tipos de Arquitetura. Questionário. Centralizado Descentralizado Hibrido Arquitetura Roteiro Arquitetura Tipos de Arquitetura Centralizado Descentralizado Hibrido Questionário 2 Arquitetura Figura 1: Planta baixa de uma casa 3 Arquitetura Engenharia de Software A arquitetura

Leia mais

2 Geração Dinâmica de Conteúdo e Templates de Composição

2 Geração Dinâmica de Conteúdo e Templates de Composição 2 Geração Dinâmica de Conteúdo e Templates de Composição Alguns dos aspectos mais importantes na arquitetura proposta nesta dissertação são: a geração dinâmica de conteúdo e a utilização de templates de

Leia mais

Hoje é inegável que a sobrevivência das organizações depende de dados precisos e atualizados.

Hoje é inegável que a sobrevivência das organizações depende de dados precisos e atualizados. BANCO DE DADOS Universidade do Estado de Santa Catarina Centro de Ciências Tecnológicas Departamento de Ciência da Computação Prof. Alexandre Veloso de Matos alexandre.matos@udesc.br INTRODUÇÃO Hoje é

Leia mais

A Linguagem de Modelagem Unificada (UML)

A Linguagem de Modelagem Unificada (UML) Aécio Costa A Linguagem de Modelagem Unificada (UML) Percebeu-se a necessidade de um padrão para a modelagem de sistemas, que fosse aceito e utilizado amplamente. Surge a UML (Unified Modeling Language)

Leia mais

Módulo 4: Gerenciamento de Dados

Módulo 4: Gerenciamento de Dados Módulo 4: Gerenciamento de Dados 1 1. CONCEITOS Os dados são um recurso organizacional decisivo que precisa ser administrado como outros importantes ativos das empresas. A maioria das organizações não

Leia mais

Banco de Dados. Prof. Antonio

Banco de Dados. Prof. Antonio Banco de Dados Prof. Antonio SQL - Structured Query Language O que é SQL? A linguagem SQL (Structure query Language - Linguagem de Consulta Estruturada) é a linguagem padrão ANSI (American National Standards

Leia mais

PRODUTO 1 (CONSTRUÇÃO DE PORTAL WEB)

PRODUTO 1 (CONSTRUÇÃO DE PORTAL WEB) RELATÓRIO DE ENTREGA DO PRODUTO 1 (CONSTRUÇÃO DE PORTAL WEB) PARA A ELABORAÇÃO DOS PLANOS MUNICIPAIS DE GESTÃO INTEGRADA DE RESÍDUOS SÓLIDOS PMGIRS PARA OS MUNICÍPIOS DE NOVO HORIZONTE, JUPIÁ, GALVÃO,

Leia mais

Desenvolvendo para WEB

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

Leia mais

Roteiro. BCC321 - Banco de Dados I. Conceitos Básicos. Conceitos Básicos. O que é um banco de dados (BD)?

Roteiro. BCC321 - Banco de Dados I. Conceitos Básicos. Conceitos Básicos. O que é um banco de dados (BD)? Roteiro BCC321 - Banco de Dados I Luiz Henrique de Campos Merschmann Departamento de Computação Universidade Federal de Ouro Preto luizhenrique@iceb.ufop.br www.decom.ufop.br/luiz Conceitos Básicos Banco

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

Sistemas Distribuídos

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

Leia mais

Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços. Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena

Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços. Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena Um Processo para Desenvolvimento de Aplicações Web Baseado em Serviços Autores: Fábio Zaupa, Itana Gimenes, Don Cowan, Paulo Alencar e Carlos Lucena Tópicos Motivação e Objetivos LP e SOA Processo ADESE

Leia mais

Curso de Aprendizado Industrial Desenvolvedor WEB

Curso de Aprendizado Industrial Desenvolvedor WEB Curso de Aprendizado Industrial Desenvolvedor WEB Disciplina: Programação Orientada a Objetos II Professor: Cheli dos S. Mendes da Costa Modelo Cliente- Servidor Modelo de Aplicação Cliente-servidor Os

Leia mais

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

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

Leia mais

ISO/IEC 12207: Gerência de Configuração

ISO/IEC 12207: Gerência de Configuração ISO/IEC 12207: Gerência de Configuração Durante o processo de desenvolvimento de um software, é produzida uma grande quantidade de itens de informação que podem ser alterados durante o processo Para que

Leia mais

DESENVOLVIMENTO WEB DENTRO DOS PARADIGMAS DO HTML5 E CSS3

DESENVOLVIMENTO WEB DENTRO DOS PARADIGMAS DO HTML5 E CSS3 DESENVOLVIMENTO WEB DENTRO DOS PARADIGMAS DO HTML5 E CSS3 Eduardo Laguna Rubai, Tiago Piperno Bonetti Universidade Paranaense (Unipar) Paranavaí PR- Brasil eduardorubay@gmail.com, bonetti@unipar.br Resumo.

Leia mais

5 Framework para coordenação e mediação de Web Services para ambientes de aprendizado à distância

5 Framework para coordenação e mediação de Web Services para ambientes de aprendizado à distância 5 Framework para coordenação e mediação de Web Services para ambientes de aprendizado à distância O capítulo anterior apresentou uma discussão sobre a inclusão dos chamados learning services no processo

Leia mais

QUESTINAMENTOS AO EDITAL DE CONCORRÊNCIA 01/2013

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

Leia mais

Manual do Painel Administrativo

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

Leia mais

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

04/08/2012 MODELAGEM DE DADOS. PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS. Aula 1. Prof. Rafael Dias Ribeiro. M.Sc. MODELAGEM DE DADOS PROF. RAFAEL DIAS RIBEIRO, M.Sc. @ribeirord MODELAGEM DE DADOS Aula 1 Prof. Rafael Dias Ribeiro. M.Sc. @ribeirord 1 Objetivos: Apresenta a diferença entre dado e informação e a importância

Leia mais

Introdução Banco de Dados

Introdução Banco de Dados Introdução Banco de Dados Vitor Valerio de Souza Campos Adaptado de Vania Bogorny Por que estudar BD? Os Bancos de Dados fazem parte do nosso dia-a-dia: operação bancária reserva de hotel matrícula em

Leia mais

Um Driver NDIS Para Interceptação de Datagramas IP

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

Leia mais

Introdução. Banco de dados. Por que usar BD? Por que estudar BD? Exemplo de um BD. Conceitos básicos

Introdução. Banco de dados. Por que usar BD? Por que estudar BD? Exemplo de um BD. Conceitos básicos Introdução Banco de Dados Por que usar BD? Vitor Valerio de Souza Campos Adaptado de Vania Bogorny 4 Por que estudar BD? Exemplo de um BD Os Bancos de Dados fazem parte do nosso dia-a-dia: operação bancária

Leia mais

TI Aplicada. Aula 02 Áreas e Profissionais de TI. Prof. MSc. Edilberto Silva prof.edilberto.silva@gmail.com http://www.edilms.eti.

TI Aplicada. Aula 02 Áreas e Profissionais de TI. Prof. MSc. Edilberto Silva prof.edilberto.silva@gmail.com http://www.edilms.eti. TI Aplicada Aula 02 Áreas e Profissionais de TI Prof. MSc. Edilberto Silva prof.edilberto.silva@gmail.com http:// Papéis... Um papel é uma definição abstrata de um conjunto de atividades executadas e dos

Leia mais