EA975 - Laboratório de Engenharia de Software

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

Download "EA975 - Laboratório de Engenharia de Software"

Transcrição

1 EA975 - Laboratório de Engenharia de Software Turmas K/L Aula 1 O que vamos desenvolver? Vamos desenvolver uma aplicação distribuída, empregando a arquitetura 3-Tier segundo o estilo REST/HTTP (Respresentational State Transfer) e implementada em Javascript sobre o framework MEAN (MongoDB-Express-AngularJS-Node.js). Aplicação distribuída: seus componentes executam em diferentes nós de processamento dispersos em diferentes domínios administrativos. Arquitetura 3-Tier: os componentes da arquitetura executam em 3 diferentes camadas horizontais (tier): cliente, servidor e serviços de retaguarda. Estilo REST/HTTP (RESTful): os métodos HTTP GET, POST, PUT e DELETE são utilizados para acessar, inserir, modificar e remover informações no domínio do servidor. Framework: esqueleto de uma aplicação onde diversos componentes já estão implementados. EA975/ Prof. Eleri Cardozo 2

2 Arquiteturas 3-Tier Camada do Cliente Protocolo Cliente/ Servidor Camada do Servidor Protocolo de Acesso aos Serviços Camada de Serviços de Retaguarda Interface com o usuário ou com outras aplicações Lógica da aplicação (stateless/stateful) Persistência de dados Serviços na nuvem Aplicações legadas Exemplo de tecnologias de implementação: HTTP JDBC EA975/ Prof. Eleri Cardozo 3 Framework MEAN EA975/ Prof. Eleri Cardozo 4 fonte:

3 AJAX AJAX (Asynchronous Javascript and XML) é um conjunto de funções em Javascript que suportam interação com servidores HTTP. AJAX permite um código Javascript executando em um navegador web realizar requisições HTTP (GET, POST, etc.) de maneira assíncrona (ou seja, a interface não é "congelada" enquanto a requisição HTTP é processada). AJAX é suportado por todos os navegadores atuais e foi concebido para dar "dinamismo" às interfaces web. Exemplo: EA975/ Prof. Eleri Cardozo 5 JSON JSON (Javascript Object Notation) é um padrão de troca de informações entre aplicações. É uma alternativa menos "verbosa" ao XML. JSON é adotado pelas grandes corporações da internet. XML: <disciplina> <sigla>ea975</sigla> <nome>lab. Eng. de Software</nome> <turmas> <turma>k</turma> <turma>l</turma> </turmas> <sala>le-27</sala> <vagas>40</vagas> <professor> <nome>eleri Cardozo</nome> <matricula>245429</matricula> </professor> </disciplina> JSON: {disciplina: { sigla: EA975, turmas: [K, L], sala: LE-27, vagas: 40, professor: { nome: Eleri Cardozo, matricula: } } } EA975/ Prof. Eleri Cardozo 6

4 AngularJS AngularJS é um desenvolvimento patrocinado pela Google que tem por objetivo facilitar o processamento de objetos JSON recebidos em uma interação HTTP. AngularJS permite gerar requisições HTTP de maneira mais simplificada que o AJAX nativo, bem como processar o conteúdo de uma resposta no formato JSON, por exemplo, apresentar no navegador uma tabela HTML cujos campos são gerados dinamicamente a partir de objetos JSON. AngularJS é integralmente escrito em Javascript e, portanto, suportado por todos os navegadores atuais. AngularJS é uma alternativa ao DOM (Document Object Model) que é mais voltado para interações baseadas em XML. Vamos utilizar o AngularJS para implementar nossa Camada do Cliente. EA975/ Prof. Eleri Cardozo 7 REST REST (Representational State Transfer) é um estilo arquitetural proposto por Roy Fielding em 2000 (e redescoberto uma década depois). REST define recursos identificados por URI/URL e mantidos em servidores stateless. Cada recurso tem um estado associado que pode se alterar ao longo do tempo. REST prevê ainda que a arquitetura é organizada em camadas horizontais (tiers). Arquiteturas que seguem o estilo REST são comumente implementadas em 3 camadas (3-tier) com interação cliente-servidor via HTTP. As seguintes requisições HTTP são empregadas: POST: cria um recurso com seu respectivo estado inicial no servidor; GET: acessa o estado de um recurso mantido no servidor; PUT: altera o estado de um recurso mantido no servidor; DELETE: remove um objeto mantido no servidor. Normalmente o estado dos objetos é persistente em banco de dados. Operações HTTP POST, GET, PUT e DELETE são mapeadas em operações CRUD (Create, Retrieve, Update, Remove) no banco de dados. EA975/ Prof. Eleri Cardozo 8

5 Node.js e Express Node.js é um servidor HTTP escrito em Javascript a partir do V8, o interpretador Javascript do Google Chrome. Node.js trabalha com diversos módulos (extensões), por exemplo: express: módulo de processamento de requisições REST/HTTP; mongoose: interface para o banco de dados MongoDB; body-parser: interpretador JSON do conteúdo de uma requisição HTTP POST e PUT. Express permite definir callbacks (funções chamadas assincronamente) para o processamento de requisições HTTP de acordo com o recurso (URL) sendo acessado. Facilita a codificação de servidores REST/HTTP. Vamos utilizar Node.js+Express (e outros módulos) para implementar nossa Camada do Servidor. EA975/ Prof. Eleri Cardozo 9 JSON e Banco de Dados Os bancos de dados comumente utilizam armazenamento dos dados em tabelas e linguagem de consulta SQL (Structured Query Language). Propostas de modos de armazenamento e linguagens de consulta alternativos têm surgido nas duas últimas décadas. Por exemplo, a Oracle, líder de mercado em banco de dados, oferece o Oracle XML DB, um banco de dados com armazenamento nativo em XML e linguagens de consulta orientadas a XML (XQuery e XPath). Entretanto, claramente o formato XML está sendo substituído pelo JSON nos serviços oferecidos na internet. Então, por que não armazenar no banco de dados documentos no formato JSON ao invés de tabelas ou documentos XML? EA975/ Prof. Eleri Cardozo 10

6 MongoDB JSON não possui uma linguagem de descrição de documentos como o XML Schema nem linguagens de consulta como o XPath. MongoDB é um banco de dados para armazenamento de objetos no formato JSON. Não é necessário definir previamente os formatos dos objetos que serão armazenados. A linguagem de consulta é simples: são passados os campos dos objetos JSON que queremos acessar. Exemplos: {nome: Eleri Cardozo} {$or: [{nome: Eleri Cardozo}, {nome: Albert Einstein}]} {vagas: {$gt 20}} No MongoDB todo objeto armazenado possui uma chave de acesso única (atributo _id). Node.js possui um módulo para interagir com o MongoDB, o mongoose. Vamos utilizar o MongoDB para implementar nossa Camada de Serviços de Retaguarda. EA975/ Prof. Eleri Cardozo 11 O que fazer agora? Detalhar, por meio de um texto livre, uma aplicação com restrições descritas no slide 2. Cuidados: Conceba uma aplicação simples que resulte em poucos casos de uso (mas pelo menos um caso de uso por membro do grupo). Esboce com lápis e papel como seria a interface do usuário desta aplicação. Se a figura começar a ficar confusa, repense a aplicação. Conceba uma apliação que não demande conhecimentos específicos do usuário final (no máximo o preenchimento de um formulário no navegador). Conceba uma aplicação que seja "autônoma", ou seja, não dependa de outras aplicações ou serviços para funcionar. EA975/ Prof. Eleri Cardozo 12

EA975 - Laboratório de Engenharia de Software

EA975 - Laboratório de Engenharia de Software EA975 - Laboratório de Engenharia de Software Turmas K/L - 2017 Aula 7 Componentes de Software Um componente de software é um segmento de código que pode ser reusado, eventualmente após um processo de

Leia mais

EA975 - Laboratório de Engenharia de Software

EA975 - Laboratório de Engenharia de Software EA975 - Laboratório de Engenharia de Software Turmas K/L - 2017 Aula 8 Vamos inicialmente especificar com mais detalhes o termo "recurso" utilizado no estilo arquitetural REST. Em REST, recursos são uma

Leia mais

REST RESTfulWeb Services JAX-RS

REST RESTfulWeb Services JAX-RS Web Services REST Web Service Serviço oferecido por um sistema que pode ser acessado diretamente por outro sistema desenvolvido em qualquer tecnologia através de uma rede como a internet. Cada plataforma

Leia mais

Instrutor: Eder Martins Franco

Instrutor: Eder Martins Franco Minicurso de REST Aula 1 fsdfsdf Introdução às RESTful APIs com PHP Instrutor: Eder Martins Franco 27 MAI 2017 Faculdade FUCAPI v1.0 Professor who? Programador e professor, notívago e viciado em café.

Leia mais

Web Services REST. Sistemas Distribuídos. Mauro Lopes Carvalho Silva. Professor EBTT DAI Departamento de Informática Campus Monte Castelo

Web Services REST. Sistemas Distribuídos. Mauro Lopes Carvalho Silva. Professor EBTT DAI Departamento de Informática Campus Monte Castelo Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia do Maranhão Objetivos Nesta aula

Leia mais

Compreender as diferenças entre os vários métodos e códigos de erro HTTP. Conhecer as linguagens fundamentais para programação para a Web

Compreender as diferenças entre os vários métodos e códigos de erro HTTP. Conhecer as linguagens fundamentais para programação para a Web PROGRAMAÇÃO WEB [27200] GERAL Ano Letivo: 201415 Grupo Disciplinar: Ciência e Tecnologia da Programação ECTS: 8,0 Regime: PL Semestre: S2 OBJETIVOS O desenvolvimento de aplicações para a Web é uma atividade

Leia mais

DESENVOLVIMENTO DE SISTEMAS WEB. Lista de Exercícios AV2-01. Luiz Leão

DESENVOLVIMENTO DE SISTEMAS WEB. Lista de Exercícios AV2-01. Luiz Leão DESENVOLVIMENTO DE SISTEMAS WEB Luiz Leão luizleao@gmail.com http://www.luizleao.com Questão 01 Sobre as características da programação orientada a objetos, explique o encapsulamento. Questão 01 - Resposta

Leia mais

Protocolo HTTP. Professor Leonardo Larback

Protocolo HTTP. Professor Leonardo Larback Protocolo HTTP Professor Leonardo Larback Protocolo HTTP No final da década de 1980, Tim Berners-Lee criou o protocolo HTTP (HyperText Transfer Protocol) e o padrão de arquivo HTML (HyperText Markup Language)

Leia mais

EXERCÍCIOS DE REVISÃO DE CONTEÚDO QUESTÕES DISSERTATIVAS

EXERCÍCIOS DE REVISÃO DE CONTEÚDO QUESTÕES DISSERTATIVAS EXERCÍCIOS DE REVISÃO DE CONTEÚDO QUESTÕES DISSERTATIVAS 1. Explique a(s) diferença(s) entre design pattern e framework. 2. Analisar o arquivo de configurações (web.xml) abaixo identificando quais suas

Leia mais

Classes de Projeto. Prof. Anderson Cavalcanti UFRN-CT-DCA

Classes de Projeto. Prof. Anderson Cavalcanti UFRN-CT-DCA Classes de Projeto Prof. Anderson Cavalcanti UFRN-CT-DCA Linhas Gerais sobre as Classes de Projeto Especificação de Classes de Projeto Especificação de classes de fronteira Responsáveis pela interação

Leia mais

Engenharia de Software Orientada a objetos. Prof. Rogério Celestino dos Santos

Engenharia de Software Orientada a objetos. Prof. Rogério Celestino dos Santos Engenharia de Software Orientada a objetos Prof. Rogério Celestino dos Santos http://sites.google.com/site/rogeriocsaulas/ Estereótipos são uma maneira de destacar determinados componentes do diagrama,

Leia mais

modelos, bancos de dados e active record

modelos, bancos de dados e active record modelos, bancos de dados e active record engenharia de sistemas de informação Daniel Cordeiro 1º de setembro de 2017 Escola de Artes, Ciências e Humanidades EACH USP avisos 5 e 8/set Semana da Pátria 12/set

Leia mais

Geração de eventos para atuação do dispositivo IoT via Node-Red utilizando cloud USP

Geração de eventos para atuação do dispositivo IoT via Node-Red utilizando cloud USP Geração de eventos para atuação do dispositivo IoT via Node-Red utilizando cloud USP Objetivos Assinar o Galileo num canal MQTT (alteração de código no eclipse). paradigma publish-subscribe Criar interface

Leia mais

Web Services REST JAX-RS

Web Services REST JAX-RS Web Services REST JAX-RS Professor: Ricardo Luis dos Santos IFSUL 2015 Agenda Principais tecnologias envolvidas Testando os serviços desenvolvidos JAX-RS Principais anotações JAX-RS Principais anotações

Leia mais

Webservices LEANDRO MENDES FERREIRA

Webservices LEANDRO MENDES FERREIRA Webservices LEANDRO MENDES FERREIRA Webservices - Agenda CONCEITOS RPC HTTP SOAP RESTFUL CONCEITOS Conceitos Básicos XML (extensible Markup Language) Liguagem de marcação para descrição de documentos de

Leia mais

Web I F R N I N S T I T U TO F E D E R A L D E E D U C A Ç Ã O, C I Ê N C I A E T E C N O LO G I A D O R I O G R A N D E D O N R T E.

Web I F R N I N S T I T U TO F E D E R A L D E E D U C A Ç Ã O, C I Ê N C I A E T E C N O LO G I A D O R I O G R A N D E D O N R T E. Web I F R N I N S T I T U TO F E D E R A L D E E D U C A Ç Ã O, C I Ê N C I A E T E C N O LO G I A D O R I O G R A N D E D O N R T E. J O S É A N TÔ N I O D A C U N H A Web Page HTTP No início a web, era

Leia mais

STD29006 Sistemas Distribuídos

STD29006 Sistemas Distribuídos STD29006 Sistemas Distribuídos Serviços Web Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br http://docente.ifsc.edu.br/mello/std 22 de setembro

Leia mais

Desenvolvendo Aplicações RESTFul utilizando Node.js

Desenvolvendo Aplicações RESTFul utilizando Node.js III Escola Regional de Informática do Piauí. Livro Anais - Artigos e Minicursos, v. 1, n. 1, p. 532-548, jun, 2017. www.eripi.com.br/2017 - ISBN: 978-85-7669-395-6 Capítulo 15 Desenvolvendo Aplicações

Leia mais

Criando e consumindo Web service REST com PHP e JSON. Palestrante: Weiberlan Garcia

Criando e consumindo Web service REST com PHP e JSON. Palestrante: Weiberlan Garcia Criando e consumindo Web service REST com PHP e JSON Palestrante: Weiberlan Garcia Weiberlan Garcia Consultor de Software Livre, trabalha na empresa Ambiente Livre Tecnologia. Desempenha funções de análise,

Leia mais

Introdução. descrever os tipos de interfaces e linguagens oferecidas por um SGBD. mostrar o ambiente de programas dos SGBD s

Introdução. descrever os tipos de interfaces e linguagens oferecidas por um SGBD. mostrar o ambiente de programas dos SGBD s Introdução Contribuição do Capítulo 2: discutir modelos de dados definir conceitos de esquemas e instâncias descrever os tipos de interfaces e linguagens oferecidas por um SGBD mostrar o ambiente de programas

Leia mais

Web Services. Professor: Ricardo Luis dos Santos IFSUL Campus Sapucaia do Sul

Web Services. Professor: Ricardo Luis dos Santos IFSUL Campus Sapucaia do Sul Web Services Professor: Ricardo Luis dos Santos IFSUL 2015 Rápida revisão da última aula 3 Rápida revisão da última aula 1 Listar o filme com o id 475 2 Listar todos os filmes com o título que inicia com

Leia mais

arquitetura shared-nothing em 3 camadas

arquitetura shared-nothing em 3 camadas arquitetura shared-nothing em 3 camadas engenharia de sistemas de informação Daniel Cordeiro 29 de agosto de 2017 Escola de Artes, Ciências e Humanidades EACH USP info sobre o projeto projeto: iterações

Leia mais

AJAX (Asynchronous Javascript And XML)

AJAX (Asynchronous Javascript And XML) AJAX (Asynchronous Javascript And XML) André Tavares da Silva andre.silva@udesc.br AJAX O nome AJAX foi idealizado por Jesse James Garrett, que definiu o objeto XMLHttpRequest. O AJAX não é uma linguagem

Leia mais

Análise e Projeto de Software

Análise e Projeto de Software Análise e Projeto de Software Proj. Desenvolvimento de Software Prof. Cleverton Hentz cleverton.hentz@ifrn.edu.br 8 de junho de 2017 Material Apresentado Sumário de Aula 1 Introdução 2 Estruturação do

Leia mais

PROGRAMAÇÃO SERVIDOR PADRÕES MVC E DAO EM SISTEMAS WEB. Prof. Dr. Daniel Caetano

PROGRAMAÇÃO SERVIDOR PADRÕES MVC E DAO EM SISTEMAS WEB. Prof. Dr. Daniel Caetano PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB PADRÕES MVC E DAO Prof. Dr. Daniel Caetano 2011-2 Visão Geral 1 2 3 4 5 6 7 Padrão de Desenvolvimento? O Conceito de Padrão de Projeto Padrão MVC Persistência MVC Nível

Leia mais

Projecto Integrador. Introdução ao REST. Material de suporte às aulas de Proj. Integrador (Nuno Preguiça) Copyright DI FCT/ UNL / 1

Projecto Integrador. Introdução ao REST. Material de suporte às aulas de Proj. Integrador (Nuno Preguiça) Copyright DI FCT/ UNL / 1 Projecto Integrador Introdução ao REST Material de suporte às aulas de Proj. Integrador (Nuno Preguiça) Copyright DI FCT/ UNL / 1 Notas Imagens do livro: G. Alonso et. Al. Web Services: Concepts, Architectures

Leia mais

Protótipo de uma ferramenta de apoio para desenvolvimento de sistemas web para WebIntegrator

Protótipo de uma ferramenta de apoio para desenvolvimento de sistemas web para WebIntegrator Protótipo de uma ferramenta de apoio para desenvolvimento de sistemas web para WebIntegrator Ederson Evaristo Jantsch Orientador: Marcel Hugo 09/07/2002 Roteiro Introdução Aplicação multicamadas Tecnologias

Leia mais

BCD29008 Banco de dados

BCD29008 Banco de dados BCD29008 Banco de dados Prof. Emerson Ribeiro de Mello Instituto Federal de Santa Catarina IFSC campus São José mello@ifsc.edu.br http://docente.ifsc.edu.br/mello/bcd 31 de julho de 2017 1/24 Apresentação

Leia mais

Análise e Projeto de Software Parte II. Marcos Dósea

Análise e Projeto de Software Parte II. Marcos Dósea Análise e Projeto de Software Parte II Marcos Dósea marcosdosea@gmail.com Agenda Aula III Análise de Software Orientado à Objetos Motivação Marcos Dósea marcosdosea@gmail.com O que é análise e projeto?

Leia mais

Noções do padrão MVC e DAO

Noções do padrão MVC e DAO Ambiente de Programação Visual Noções do padrão MVC e DAO Prof. Mauro Lopes 1-31 18 Objetivos Nesta aula iremos apresentar os conceitos introdutórios sobre Padrões de Projetos. Nesta introdução iremos

Leia mais

Desenvolvimento Web TCC Turma A-1

Desenvolvimento Web TCC Turma A-1 Desenvolvimento Web TCC-00.226 Turma A-1 Conteúdo Model-View-Controller (MVC) Professor Leandro Augusto Frata Fernandes laffernandes@ic.uff.br Material disponível em http://www.ic.uff.br/~laffernandes/teaching/2013.2/tcc-00.226

Leia mais

REST Um Estilo de Arquitetura de Sistemas Distribuídos

REST Um Estilo de Arquitetura de Sistemas Distribuídos REST Um Estilo de Arquitetura de Sistemas Distribuídos Márcio Alves de Araújo¹, Mauro Antônio Correia Júnior¹ 1 Faculdade de Computação Universidade Federal de Uberlândia (UFU) Monte Carmelo MG Brasil

Leia mais

1.2- Ambientes de Middleware

1.2- Ambientes de Middleware 1.2- Ambientes de Middleware Applications RMI, RPC and events Request reply protocol Middleware layers External data representation Operating System Fonte: [Coulouris] 1 1.2- Ambientes de Middleware Aplicação

Leia mais

Integração de sistemas utilizando Web Services do tipo REST

Integração de sistemas utilizando Web Services do tipo REST Integração de sistemas utilizando Web Services do tipo REST Jhonatan Wilson Aparecido Garbo, Jaime Willian Dias Universidade Paranaense (Unipar) Paranavaí PR Brasil jhowgarbo@gmail.com jaime@unipar.br

Leia mais

Nesta disciplina aprenderemos. HTML CSS JavaScript Jquery PHP

Nesta disciplina aprenderemos. HTML CSS JavaScript Jquery PHP Introdução Nesta disciplina aprenderemos HTML CSS JavaScript Jquery PHP HTML é a abreviatura de HyperText Mark-up Language. O HTML foi inventado em 1990, por um cientista chamado Tim Berners-Lee. A finalidade

Leia mais

Aula 11 Introdução ao Java Script

Aula 11 Introdução ao Java Script Aula 11 Introdução ao Java Script Java Script é uma linguagem que permite trabalhar com a Lógica em páginas escritas em HTML (HiperText Mark-up Language). As páginas HTML podem ser escritas utilizando-se

Leia mais

2 Versão 1: Funcionalidade Básica e Interface Web

2 Versão 1: Funcionalidade Básica e Interface Web Técnicas de Projeto e Implementação de Sistemas II Descrição do Projeto da Disciplina 1 Introdução O projeto da disciplina consiste na implementação de um sistema de busca de tarifas de passagens aéreas.

Leia mais

Universidade Federal de Goiás Estilos Arquiteturais

Universidade Federal de Goiás Estilos Arquiteturais Universidade Federal de Goiás Estilos Arquiteturais Prof. Helder Brito Nascimento Instituto de Informática helderbn@gmail.com O que é um estilo de arquitetura Como você diferencia uma construção da outra?

Leia mais

Leonardo Zorzo Carbone. Orientador: Adilson Vahldick

Leonardo Zorzo Carbone. Orientador: Adilson Vahldick WebCode Componente web para edição de código fonte Leonardo Zorzo Carbone Orientador: Adilson Vahldick Roteiro da Apresentação Introdução Fundamentação Teórica Desenvolvimento Conclusão Extensões Introdução

Leia mais

PROJETO DE PROGRAMAS. Projeto de Programas PPR0001

PROJETO DE PROGRAMAS. Projeto de Programas PPR0001 PROJETO DE PROGRAMAS Projeto de Programas PPR0001 Desenvolvimento de Software 2 3 Desenvolvimento de Software Análise de Requisitos Distinguir e dividir o sistema em componentes: Analisar os componentes

Leia mais

código belo vs. legado e qualidade de software

código belo vs. legado e qualidade de software código belo vs. legado e qualidade de software engenharia de sistemas de informação Daniel Cordeiro 22 de agosto de 2017 Escola de Artes, Ciências e Humanidades EACH USP pergunta Em geral, qual afirmação

Leia mais

INTEGRAÇÃO DA METODOLOGIA DE DESENVOLVIMENTO AJAX COM SERVLETS JAVA

INTEGRAÇÃO DA METODOLOGIA DE DESENVOLVIMENTO AJAX COM SERVLETS JAVA Encontro Internacional de Produção Científica Cesumar 23 a 26 de outubro de 2007 INTEGRAÇÃO DA METODOLOGIA DE DESENVOLVIMENTO AJAX COM SERVLETS JAVA Everton Coimbra de Araújo 1, Juliano Rodrigo Lamb 2,

Leia mais

Projecto Integrador. Introdução ao REST. Material de suporte às aulas de Proj. Integrador (Nuno Preguiça) Copyright DI FCT/ UNL / 1

Projecto Integrador. Introdução ao REST. Material de suporte às aulas de Proj. Integrador (Nuno Preguiça) Copyright DI FCT/ UNL / 1 Projecto Integrador Introdução ao REST Material de suporte às aulas de Proj. Integrador (Nuno Preguiça) Copyright DI FCT/ UNL / 1 Notas Imagens do livro: G. Alonso et. Al. Web Services: Concepts, Architectures

Leia mais

FURBMOBILE: UMA APLICAÇÃO PARA VISUALIZAÇÃO E ACOMPANHAMENTO DA MATRIZ CURRICULAR

FURBMOBILE: UMA APLICAÇÃO PARA VISUALIZAÇÃO E ACOMPANHAMENTO DA MATRIZ CURRICULAR Departamento de Sistemas e Computação FURB Curso de Ciência da Computação Trabalho de Conclusão de Curso 2016/1 FURBMOBILE: UMA APLICAÇÃO PARA VISUALIZAÇÃO E ACOMPANHAMENTO DA MATRIZ CURRICULAR Acadêmico:

Leia mais

Service Oriented Architecture SOA

Service Oriented Architecture SOA Service Oriented Architecture SOA Arquitetura orientada aos serviços Definição: Arquitetura de sistemas distribuídos em que a funcionalidade é disponibilizada sob a forma de serviços (bem definidos e independentes)

Leia mais

DIFERENÇAS NO DESENVOLVIMENTO DE APLICAÇÕES WEB COM BD TRADICIONAL E BD NOSQL MONGODB

DIFERENÇAS NO DESENVOLVIMENTO DE APLICAÇÕES WEB COM BD TRADICIONAL E BD NOSQL MONGODB DIFERENÇAS NO DESENVOLVIMENTO DE APLICAÇÕES WEB COM BD TRADICIONAL E BD NOSQL MONGODB Nicolas Ignacio RYBERG 1.2 ; Angelo Augusto FROZZA 3 ; Daniel de Andrade VARELA 3 Identificação autores: 1 Bolsista

Leia mais

O que se espera para o futuro dos Web Services? As tecnologias são respectivamente JSON e REST.

O que se espera para o futuro dos Web Services? As tecnologias são respectivamente JSON e REST. Web Services Por que os Web Services são atrativos para a integração de sistemas? Pois os Web services são componentes que possibilitam que as aplicações se comuniquem utilizando protocolos padrão da internet

Leia mais

Introdução à Informática

Introdução à Informática Introdução à Informática Aula 3 http://www.ic.uff.br/~bianca/introinfo/ Aula 3-12/09/2007 1 Objetivo da disciplina O objetivo dessa disciplina é dar ao aluno noções básicas de computação. Serão apresentados

Leia mais

Introdução ao Javascript

Introdução ao Javascript Programação WEB I Introdução ao Javascript Apresentação da Disciplina,Introdução a linguagem Javascript Objetivos da Disciplina Apresentar os principais conceitos da linguagem Javascript referente à programação

Leia mais

Rui Carneiro, Rui Pereira, Tiago Orfão

Rui Carneiro, Rui Pereira, Tiago Orfão Geração de Gráficos SVG através de PHP Rui Carneiro, Rui Pereira, Tiago Orfão Faculdade de Engenharia da Universidade do Porto, R. Dr. Roberto Frias, 4200-465 Porto. {ei04073,ei04077,ei03102}@fe.up.pt

Leia mais

Pré-requisitos: Conhecimentos de informática gerencial e lógica de programação.

Pré-requisitos: Conhecimentos de informática gerencial e lógica de programação. CURSO DESENVOLVEDOR FRONT-END HTML5/CSS3/JavaScript Objetivo: Este curso visa introduzir o aluno do mundo do desenvolvimento Web, com aplicabilidade, ensino e capacitação nas principais linguagens de diagramação

Leia mais

Aula 05. Infraestrutura de TI: hardware e software Pearson. Todos os direitos reservados.

Aula 05. Infraestrutura de TI: hardware e software Pearson. Todos os direitos reservados. Aula 05 Infraestrutura de TI: hardware e software slide 1 Infraestrutura de TI: hardware e software 1. Quais os componentes da infraestrutura de TI? 2. Quais as principais tecnologias de hardware computacional,

Leia mais

O CMS JOOMLA! UM GUIA PARA INICIANTES

O CMS JOOMLA! UM GUIA PARA INICIANTES O CMS JOOMLA! UM GUIA PARA INICIANTES 25/04/2016 Daniel Picon dpicon@sc.usp.br 1 INTRODUÇÃO REDE DE COMPUTADORES E INTERNET O que acontece quando tentamos acessar um site da internet? Computadores se comunicam

Leia mais

Banco de Dados. Perspectiva Histórica dos Bancos de Dados. Prof. Walteno Martins Parreira Jr

Banco de Dados. Perspectiva Histórica dos Bancos de Dados. Prof. Walteno Martins Parreira Jr Banco de Dados Perspectiva Histórica dos Bancos de Dados Prof. Walteno Martins Parreira Jr www.waltenomartins.com.br waltenomartins@yahoo.com 2015 Histórico Antes dos computadores, as informações eram

Leia mais

Introdução a Web Services

Introdução a Web Services Introdução a Web Services Mário Meireles Teixeira DEINF/UFMA O que é um Web Service? Web Service / Serviço Web É uma aplicação, identificada por um URI, cujas interfaces podem ser definidas, descritas

Leia mais

2 Instalando e configurando o ambiente de desenvolvimento do Microsoft SQL Server

2 Instalando e configurando o ambiente de desenvolvimento do Microsoft SQL Server Sumário Parte 1 Introdução ao desenvolvimento de banco de dados com o Microsoft SQL Server 2005 1 Apresentando o desenvolvimento de banco de dados com o Microsoft SQL Server 2005... 21 O processo de armazenar

Leia mais

AJAX. Prof. Marcos Alexandruk

AJAX. Prof. Marcos Alexandruk Prof. Marcos Alexandruk m.alexandruk@hotmail.com Asynchronous JavaScript and XML Não é uma "nova tecnologia" Utiliza os recursos já existentes do JavaScript Jesse James Garret utilizou o termo pela primeira

Leia mais

Simon Holmes. Novatec

Simon Holmes. Novatec Simon Holmes Novatec Original English language edition published by Manning Publications Co., Copyright 2014 by Manning Publications. Portuguese-language edition for Brazil copyright 2016 by Novatec Editora.

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

PROTÓTIPO DE UM SISTEMA DE MONITORAMENTO DE ANIMAIS DOMÉSTICOS UTILIZANDO RFID.

PROTÓTIPO DE UM SISTEMA DE MONITORAMENTO DE ANIMAIS DOMÉSTICOS UTILIZANDO RFID. PROTÓTIPO DE UM SISTEMA DE MONITORAMENTO DE ANIMAIS DOMÉSTICOS UTILIZANDO RFID. Aluno(a): Filipe Roberto Tavares Orientador: Mauro Marcelo Mattos Agenda Introdução Objetivos Fundamentação teórica Trabalhos

Leia mais

Desenvolvimento de Sistemas Corporativos Aula 1.3 Motivação de DSC Visão geral de Arquiteturas. Prof. Bruno Moreno

Desenvolvimento de Sistemas Corporativos Aula 1.3 Motivação de DSC Visão geral de Arquiteturas. Prof. Bruno Moreno Desenvolvimento de Sistemas Corporativos Aula 1.3 Motivação de DSC Visão geral de Arquiteturas Prof. Bruno Moreno bruno.moreno@ifrn.edu.br Motivação Few companies have the luxury of reinventing themselves

Leia mais

Manipulação de Dados em PHP (Integração PHP e MySql) Parte 1

Manipulação de Dados em PHP (Integração PHP e MySql) Parte 1 Desenvolvimento Web III Manipulação de Dados em PHP (Integração PHP e MySql) Parte 1 Prof. Mauro Lopes 1-31 21 Objetivos Nesta aula iremos trabalhar a manipulação de banco de dados através da Linguagem

Leia mais

Arquitetura em Camadas

Arquitetura em Camadas Arquitetura em Camadas 1 Introdução Em aplicações OO de médio e grande porte, diversos aspectos devem ser considerados: Apresentação Lógica da aplicação Lógica do negócio Persistência de Objetos Camada

Leia mais

Administração de Sistemas Operacionais. Prof. Marlon Marcon

Administração de Sistemas Operacionais. Prof. Marlon Marcon Administração de Sistemas Operacionais Prof. Marlon Marcon SGBD SGBD: Sistema de gerenciamento de banco de dados. é o conjunto de programas de computador (softwares) responsáveis pelo gerenciamento de

Leia mais

Adrian Mejia. Novatec

Adrian Mejia. Novatec Adrian Mejia Novatec Copyright Packt Publishing 2015. First published in the English language under the title Building an E-Commerce Application with MEAN (9781785286551) Copyright Packt Publishing 2015.

Leia mais

Aula 01 Conceito de Banco de Dados e SGBD

Aula 01 Conceito de Banco de Dados e SGBD Aula 01 Conceito de Banco de Dados e SGBD Dado: conjunto de símbolos arranjados a fim de representar a informação fora da mente humana. Elemento de Dado: subconjunto de símbolos que compõem um dado com

Leia mais

Aula 06 Sistemas Embarcados LT38C

Aula 06 Sistemas Embarcados LT38C Aula 06 Sistemas Embarcados LT38C Prof. Lucas Ricken Garcia 2017/1 Introdução a Banco de Dados Coleção de dados relacionados. Fatos conhecidos que podem ser registrados e possuem significado implícito.

Leia mais

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

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

Leia mais

Introdução Diagrama de Classes Diagrama de Seqüência Diagrama de Atividades. Diagramas UML. Classe, Seqüência e Atividades. Marcio E. F.

Introdução Diagrama de Classes Diagrama de Seqüência Diagrama de Atividades. Diagramas UML. Classe, Seqüência e Atividades. Marcio E. F. Diagramas UML Classe, Seqüência e Atividades Marcio E. F. Maia Disciplina: Engenharia de Software Professora: Rossana M. C. Andrade Curso: Ciências da Computação Universidade Federal do Ceará 15 de maio

Leia mais

Sistema de Avaliação do Docente pelo Discente e Auto-Avaliação do Docente (SIAV)

Sistema de Avaliação do Docente pelo Discente e Auto-Avaliação do Docente (SIAV) Sistema de Avaliação do Docente pelo Discente e Auto-Avaliação do Docente (SIAV) Riane de Oliveira Torres Santos Analista de Tecnologia da Informação Universidade Federal da Bahia riane@ufba.br RESUMO:

Leia mais

1.5 PROGRAMAÇÃO DE JOGOS EM AMBIENTE DE REA LIDADE AUMENTADA AMBIENTES INTEGRADOS DE DESENVOLVIMENTO DE JOGOS 19

1.5 PROGRAMAÇÃO DE JOGOS EM AMBIENTE DE REA LIDADE AUMENTADA AMBIENTES INTEGRADOS DE DESENVOLVIMENTO DE JOGOS 19 ÍNDICE GERAL SOBRE O LIVRO XI 1 INTRODUÇÃO 1 1.1 GERAÇÃO DIGITAL NATIVE 2 1.2 ALGORITMIA E PROGRAMAÇÃO DE COMPUTADORES 2 1.3 COMPUTAÇÃO EM NUVEM 4 1.4 PROGRAMAÇÃO DE DISPOSITIVOS MÓVEIS 6 1.5 PROGRAMAÇÃO

Leia mais

Objetos e Componentes Distribuídos: EJB

Objetos e Componentes Distribuídos: EJB : EJB Sistemas Distribuídos Mauro Lopes Carvalho Silva Professor EBTT DAI Departamento de Informática Campus Monte Castelo Instituto Federal de Educação Ciência e Tecnologia do Maranhão Objetivos Nesta

Leia mais

BANCO DE DADOS. Araújo Lima. Fev / Araújo

BANCO DE DADOS. Araújo Lima. Fev / Araújo BANCO DE DADOS Lima Fev / 2016 1 Aula 3 3.Modelos de dados Modelo Conceitual Modelo Lógico Modelo Físico Classificação de Bancos de Dados Hierárquico Rede Relacional 2 MODELOS DE DADOS... Ferramenta usada

Leia mais

Redes de Computadores e Aplicações Camada de aplicação IGOR ALVES

Redes de Computadores e Aplicações Camada de aplicação IGOR ALVES Redes de Computadores e Aplicações Camada de aplicação IGOR ALVES Camada de aplicação Um protocolo da camada de aplicação define como processos de uma aplicação, que funcionam em sistemas finais diferentes,

Leia mais

Arquiteturas SOA, WOA, e REST

Arquiteturas SOA, WOA, e REST Arquiteturas SOA, WOA, e REST Aplicação de Software Social Fred Figueiredo Luiz Borges Pedro Pires Arquiteturas SOA, WOA e REST Desenvolvimento de aplicações orientadas ao fornecimento de serviços que

Leia mais

Conceitos de Orientação a Objetos

Conceitos de Orientação a Objetos AULA 1 INTRODUÇÃO AO PHP Em PHP AVANÇADO, além de voltar a focar o desenvolvimento em PHP interagindo com o banco de dados Postgresql, também iremos trabalhar com desenvolvimento com orientação a objetos.

Leia mais

Arquitecturas de Software Enunciado de Projecto 2007 2008

Arquitecturas de Software Enunciado de Projecto 2007 2008 UNIVERSIDADE TÉCNICA DE LISBOA INSTITUTO SUPERIOR TÉCNICO Arquitecturas de Software Enunciado de Projecto 2007 2008 1 Introdução Na primeira metade da década de 90 começaram a ser desenvolvidas as primeiras

Leia mais

Sistemas distribuídos. Prof. Emiliano Monteiro

Sistemas distribuídos. Prof. Emiliano Monteiro Sistemas distribuídos Prof. Emiliano Monteiro Serviços web (web services) Nos serviços web um cliente específico de uma determinada aplicação interage pela Internet com um serviço que possui uma interface

Leia mais

Projeto. Observatório Nacional de Clima e Saúde

Projeto. Observatório Nacional de Clima e Saúde Projeto Observatório Nacional de Clima e Saúde Coordenação Técnica Institucional: Fiocruz e INPE Coordenação Nacional CGVAM- Coordenação Geral de Vigilância Ambiental Secretaria de Vigilância em Saúde

Leia mais

Banco de dados POO Márcio Delamaro. Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP

Banco de dados POO Márcio Delamaro. Programação Orientada a Objetos Prof Marcio Delamaro ICMC/USP Banco de dados POO Márcio Delamaro 1/37 Objetivo Nesta aula vamos dar uma breve introdução do que é um Banco de dados relacional Como acessar um banco de dados usando Java 2/37 O que é Bancos de dados

Leia mais

Introdução aos Sistemas Operacionais

Introdução aos Sistemas Operacionais Introdução aos Sistemas Operacionais Eleri Cardozo FEEC/Unicamp 1 Definição de Sistema Operacional Um sistema operacional é um gerenciador de recursos de hardware ou uma máquina virtual que oferece uma

Leia mais

CURSO DESENVOLVEDOR JAVA Edição 2010

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

Leia mais

Introdução. O que é um Banco de Dados (BD)?

Introdução. O que é um Banco de Dados (BD)? O que é um Banco de Dados (BD)? É uma coleção de dados relacionados e armazenados em algum dispositivo Associações aleatórias de dados não podem ser chamadas de base de dados Conceito de dados Valor de

Leia mais

Livro texto: Capítulo 1

Livro texto: Capítulo 1 Livro texto: Capítulo 1 Bancos de dados (BD) No decorrer do dia, a maioria de nós se depara com atividades que envolvem alguma interação com os BD s banco reservas em um hotel compra de passagens aéreas

Leia mais

PROGRAMAÇÃO PARA INTERNET RICA RICH INTERNET APPLICATIONS

PROGRAMAÇÃO PARA INTERNET RICA RICH INTERNET APPLICATIONS PROGRAMAÇÃO PARA INTERNET RICA RICH INTERNET APPLICATIONS Prof. Dr. Daniel Caetano 2013-1 Objetivos Apresentar o que é uma Aplicação Rica para Internet Contextualizar tais aplicações na Web e os desafios

Leia mais

Exercício Programa Mini Web Server

Exercício Programa Mini Web Server 2004-2017 Volnys Bernal 1 Exercício Programa PSI 2653 Meios Eletrônicos Interativos I 2004-2017 Volnys Bernal 2 Objetivo Desenvolvimento de um programa servidor WEB Composição do grupo 4 pessoas (obrigatório)

Leia mais

Arquitetura de sistemas distribuídos

Arquitetura de sistemas distribuídos Arquitetura de sistemas distribuídos 4. Serviços em Sistemas Distribuídos 4.1 Sistema de arquivos distribuídos 4.2 Serviços WEB 4.3 Computação Ubíqua 4.4 Computação nas nuvens 1 Arquivos CONCEITO Arquivo:

Leia mais

Suporte Nativo a XML no Oracle 10g

Suporte Nativo a XML no Oracle 10g Suporte Nativo a XML no Gerenciamento de Dados e Informação Fernando Fonseca & Robson Fidalgo 1 2 XML Parsers Suporte a interfaces DOM e SAX XML Class Generator Código fonte a partir de XML DTD ou Schema

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

Unidade 1 Introdução

Unidade 1 Introdução Unidade 1 UFCG/CEEI/DSC Banco de Dados I Prof. Cláudio Baptista, PhD O que é um Banco de Dados (BD)? É uma coleção de dados relacionados e armazenados em algum dispositivo. Propriedades de um BD: Um BD

Leia mais

PROGRAMAÇÃO ORIENTADA A OBJETOS. Aula 09a- Acessando os dados através JDBC

PROGRAMAÇÃO ORIENTADA A OBJETOS. Aula 09a- Acessando os dados através JDBC Aula 09a- Acessando os dados através JDBC Conteúdo Programático desta aula Compreender os comando existentes para acesso e manipulação de dados nos Bancos de dados Apresentar os dados obtidos no banco

Leia mais

TRIGGERS Temas abordados

TRIGGERS Temas abordados MYSQL TRIGGERS TRIGGERS Temas abordados 1 - Introdução ao SQL Triggers SQL Trigger é uma instrução SQL ou um conjunto de instruções SQL,que fica armazenado, é será activado ou disparado quando um evento

Leia mais

SimpleXML: Integrando PHP e XML de maneira simples. Anderson Casimiro

SimpleXML: Integrando PHP e XML de maneira simples. Anderson Casimiro PHP Conference SimpleXML: Integrando PHP e XML de maneira simples Anderson Casimiro Quem é esse cara? Coordenador de TI Desenvolvedor há mais de 4 anos Entusiasta PHP Áreas: Saúde, RH e Comercial Master

Leia mais

REST. Caio Nakashima caio.nakashima@mds.gov.br caionakashima@gmail.com

REST. Caio Nakashima caio.nakashima@mds.gov.br caionakashima@gmail.com REST Caio Nakashima caio.nakashima@mds.gov.br caionakashima@gmail.com 1 RESTful REpresentation State Transfer Estilo de arquitetura de software para sistemas distribuídos Termo proposto por Roy Fielding

Leia mais

ANEXO III INTEGRAÇÃO SISTEMA PPE COM SOLUÇÃO DE FILMAGENS

ANEXO III INTEGRAÇÃO SISTEMA PPE COM SOLUÇÃO DE FILMAGENS ANEXO III INTEGRAÇÃO SISTEMA PPE COM SOLUÇÃO DE FILMAGENS Este documento tem por objetivo a definição de especificações e serviços para as integrações necessárias entre o sistema de exame (sistema PPE)

Leia mais

Prof. Romulo Fagundes Cantanhede. Node.JS. O poder do JavaScript do lado do Servidor

Prof. Romulo Fagundes Cantanhede. Node.JS. O poder do JavaScript do lado do Servidor Prof. Romulo Fagundes Cantanhede Node.JS O poder do JavaScript do lado do Servidor Agenda Quem sou eu O que é Node.JS? Mas como não falar de nosql Alguns módulos que o Node.JS possui Conclusão Quem sou

Leia mais