Aula 2. Programa. Arquitectura da camada de interface.! Programação Web - 1! Engenharia de Aplicações Sistemas Interactivos 2010/11!

Documentos relacionados
SCE-557. Técnicas de Programação para WEB. Rodrigo Fernandes de Mello

DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES

Escola Superior de Tecnologia de Setúbal. Projecto Final

Ficha da Unidade Curricular

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

Viabilidade Técnica - #entrega02 INTRODUÇÃO LISTA DE MATERIAL

Introdução. Aulas. ltodi.est.ips.pt/es. Detalhes administrativos Definição de engenharia de software Contexto Relação com outras áreas e disciplinas

Padrões de Interação com o Usuário

CONSTRUÇÃO DE UM FRAMEWORK PARA O DESENVOLVIMENTO DE APLICAÇÕES WEB

Sessão de Esclarecimento. Curso de Webdesign

TECNOLOGIAS E FRAMEWORKS PARA O DESENVOLMENTO DE INTERFACES WEB

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

Humano-Computador (IHC)

Ensino técnico Integrado ao médio.

JSP trata-se de uma tecnologia que possibilita o desenvolvimento de páginas web dinâmicas utilizando todas as potencialidades do Java como linguagem

Automação Residencial

MVC e Camadas - Fragmental Bliki

Fábio Costa e Miguel Varela

Desenvolvimento Cliente-Servidor 1

Proposta de Estágio Ano letivo 2011 / 2012 Tema: SalesForce - sistema multi-plataforma para monitorizacao da actividade comercial

O que é o Boleto Online?

A Revolucionar a Gestão de Filas.

Aula 1 Desenvolvimento Web. Curso: Técnico em Informática / 2º módulo Disciplina: Desenvolvimento Web Professora: Luciana Balieiro Cosme

Introdução à Informática

Aplicativos para Internet Aula 01

Agenda da Aula. Resumo dos Padrões (Aula 4) Padrões Arquiteturais. Arquitetura Cliente-Servidor. Arquitetura Cliente-Servidor

Estudo comparativo de diferentes linguagens de interfaces baseadas em XML

Programando em PHP. Conceitos Básicos

geas

DWEB. Design para Web. CSS3 - Fundamentos. Curso Superior de Tecnologia em Design Gráfico

Sistema de Informação para Coleções de Interesse Biotecnológico

Frameworks para criação de Web Apps para o Ensino Mobile

Conteúdo Programático de PHP

ABORDAGEM DE FRAMEWORKS PARA JSF QUE AUXILIAM O DESENVOLVIMENTO DE SOFTWARE

XHTML 1.0 DTDs e Validação

SCC Técnicas de Programação para WEB. Rodrigo Fernandes de Mello

II Semana de Tecnologia da Informação. Rails Framework

Curso - Padrões de Projeto Módulo 5: Model-View- Controller

Informática I. Aula Baseada no Capítulo 2 do Livro Introdução a Informática Capron e Johnson

Gestão de projectos na Web

Action Vision Visão. Versão 1.0. Histórico de Revisão Data Versão Descrição Autor 06/08/ Visão geral do projeto Matheus Camilo

UM NOVO CONCEITO EM AUTOMAÇÃO. Série Ponto

Universidade da Beira Interior

Europass-Curriculum Vitae

Front-End: corresponde ao que será visualizado pelo utilizador via web. Deve ser acessível para todo e qualquer utilizador.

Técnico de Organização de Eventos Módulo III Criação de Páginas Web. Técnico de Organização de Eventos. Técnico de Organização de Eventos

UNIVERSIDADE ESTADUAL DA PARAÍBA CENTRO DE CIÊNCIAS E TECNOLOGIA DEPARTAMENTO DE QUÍMICA CURSO DE LICENCIATURA EM QUÍMICA LINDOMÁRIO LIMA ROCHA

PLANIFICAÇÃO ANUAL. Tecnologias da Informação e. Comunicação. Ano Letivo: 2011/2012 E 2012/2013. Professora: Marlene Fernandes. (Marlene Fernandes)

Engenharia de Software e Sistemas Distribuídos. Enunciado Geral do Projecto

Comunicando através da rede

DESENVOLVIMENTO WEB UTILIZANDO FRAMEWORK PRIMEFACES E OUTRAS TECNOLOGIAS ATUAIS

Unified Modeling Language. Diagramas de Implementação

Virtualização e Consolidação de Centro de Dados O Caso da UTAD António Costa - acosta@utad.pt

Tecnologias Web. Padrões de Projeto - Camada de Apresentação

Treinamento em PHP. Aula 1. Ari Stopassola Junior

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

CURSO INTENSIVO. ios Mobile Development

Modelos Arquiteturais

Linux - Servidor de Redes

08/04/2013. Agenda. O Sistema CACHÉ. O Sistema CACHÉ. O Sistema CACHÉ. O Sistema CACHÉ

Programação para Internet I. 2. O protocolo HTTP. Nuno Miguel Gil Fonseca nuno.fonseca@estgoh.ipc.pt

SOLUÇÃO EM DISPOSITIVO MÓVEL PARA ATENDIMENTO DE RESTAURANTES E LANCHONETES EM VIÇOSA-MG 1

SISTEMA COMPUTACIONAL PARA ANÁLISES DE DADOS EM AGRICULTURA DE PRECISÃO

SISTEMA OPERACIONAL DE CÓDIGO ABERTO (LINUX) Prof. Glauber Alexandre

Requisitos de Sistemas

PRODUTO 1 (CONSTRUÇÃO DE PORTAL WEB)

PictureFrame: Um padrão para criação de imagens reutilizáveis

Servidores Virtuais. Um servidor à medida da sua empresa, sem investimento nem custos de manutenção.

Proposta de Estágio Ano letivo 2011 / 2012 Tema: SISMS - sistema integrado de suporte e monitorização para serviços comerciais

PHP - Orientação a Objeto MVC. Éderson T. Szlachta {Tecnólogo em Análise e Desenv. de Sistemas} - edersonszlachta@gmail.com

Sistemas de Informações Gerenciais Prof. Esp. André Luís Belini Bacharel em Sistemas de Informações MBA em Gestão Estratégica de Negócios

A INTERNET E A NOVA INFRA-ESTRUTURA DA TECNOLOGIA DE INFORMAÇÃO

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

UM ESTUDO SOBRE OS FRAMEWORKS JSF E PRIMEFACES NO DESENVOLVIMENTO DE SOFTWARE WEB

UNIVERSIDADE LUSÍADA DE LISBOA. Programa da Unidade Curricular INFORMÁTICA Ano Lectivo 2014/2015

O que é o Virto ERP? Onde sua empresa quer chegar? Apresentação. Modelo de funcionamento

Novas Tecnologias Microsoft.

Plano de Trabalho Docente Ensino Técnico

ios mobile development curso intensivo

PHC dteamcontrol Externo


NETBEANS IDE UTILIZAÇAO DE RECURSOS PARA DESENVOLVIMENTO DE PROJETO JAVA WEB

WWW - World Wide Web

Sistemas Multimédia. Arquitectura Protocolar Simples Modelo OSI TCP/IP. Francisco Maia Redes e Comunicações

UNIVERSIDADE FEDERAL DE SANTA MARIA CENTRO DE TECNOLOGIA AULA 14 PROFª BRUNO CALEGARO

UFG - Instituto de Informática

Interface Homem Máquina para Domótica baseado em tecnologias Web

Padrões de Projeto WEB e o MVC

ACTOS PROFISSIONAIS GIPE. Gabinete de Inovação Pedagógica

Produtos da Fábrica de Software

Planificação Anual TIC 8º Ano 2012/ PERÍODO

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

ISEP. Instituto Superior de Engenharia do Porto. Análise de Sistemas Informáticos

Transcrição:

Aula 2 Arquitectura da camada de interface.! Programação Web - 1! Mestrado em Engenharia Informática Universidade do Minho! 44! Programa Métodos! &! Tecnologias!! Conceitos de IHC!! Programação web client side!! Concepção centrada no utilizador!! Model-based design!! Programação web server side!! Avaliação de interfaces! Mestrado em Engenharia Informática Universidade do Minho! 45!

First principles (1) Focus on the user and their tasks, not on the technology (Johnson, 2008)!! O ponto fulcral!!! Para quem é o software?!! Para que é o software?!! Que problemas têm os utilizadores agora?!! Qual as capacidades e conhecimento dos utilizadores?!! Como pensam os utilizadores nos dados?!! Como vai afectar os utilizadores?! Mestrado em Engenharia Informática Universidade do Minho! 46! Mestrado em Engenharia Informática Universidade do Minho! 47!

Programação Web! ARQUITECTURA DA IU Mestrado em Engenharia Informática Universidade do Minho! 48! Arquitectura em camadas Mestrado em Engenharia Informática Universidade do Minho! 49!

Importância da separação de camadas UIs sujeitas a muitas alterações! Novas features na aplicação! Diversidade de dispositivos! Novas tecnologias de input/output! Separação de camadas! Portabilidade! Reutilização! Uma aplicação, múltiplas interfaces! Customisation! User Interface Management Systems (UIMS)! Geração/gestão/adaptação automática de interfaces (?)! Evolução para Model-Based User Interface Development (MBUID)! Mestrado em Engenharia Informática Universidade do Minho! 50! Modelo de Seeheim! 1st UI software tools workshop, Seeheim, Alemanha. 1-3 Nov., 1983.!! Modelo lógico de um UIMS! Mestrado em Engenharia Informática Universidade do Minho! 51!

Componentes do Modelo de Seeheim Presentation! lê dados do input! gera o output! Dialogue Control! define a estrutura do diálogo! faz ponte entre Presentation e Application! Mestrado em Engenharia Informática Universidade do Minho! 52! Components of Seeheim Model (ctd) Application Interface Model! representação da aplicação na perspectiva da interface! inclui:! especificação dos dados da aplicação! especificação das operações da aplicação! mapeamento dos dados e operações da interface para dados e operações da aplicação! Mestrado em Engenharia Informática Universidade do Minho! 53!

Seeheim Model Prós and Contras Prós! separation of concerns! possibilitou a utilização de técnicas e ferramentas de processamento de linguagens! Contras! multi-threaded interaction?! low-level ʻsemanticʼ feedback?! cada componente é monolítico! Mestrado em Engenharia Informática Universidade do Minho! 54! MVC Arquitecture Mestrado em Engenharia Informática Universidade do Minho! 55!

MVC: Model-View-Controller! Arquitectura do Smalltalk-80 (Burbeck, 1987)!! Divide aplicações interactivas em três tipos de componentes:! - Model:!! Contém os dados e a lógica de negócio! - View:!! Faz o rendering fo modelo (interface) para o utilizador!! Que parte do modelo é apresentada?!! Como é apresentada?! - Controller!! Processa user input!! Transforma eventos da interface em chamadas à funcionalidade! Mestrado em Engenharia Informática Universidade do Minho! 56! MVC-like no Swing Delegate Mestrado em Engenharia Informática Universidade do Minho! 57!

Web Apps Data sources / services! Mestrado em Engenharia Informática Universidade do Minho! 58! MVC-like em Web Apps Web page (Controller) JavaScript 1 2 Web Server (Model) Browser 3 4 HTML/CSS (View) Mestrado em Engenharia Informática Universidade do Minho! 59!

Conteúdo vs. Forma HTML (HyperText Markup Language)! propósito original: definir o conteúdo de um documento! HTML com tags de formatação (HTML 3.2)! Uma má ideia!! Formatação feita página a página!!! CSS (Cascading Style Sheets)! Aparecem no HTML 4.0! Definem como o HTML deve ser apresentado! Permitem remover a informação de formatação do HTML! Exemplo: Mestrado em Engenharia Informática Universidade do Minho! 60! Separar o conteúdo do layout Mestrado em Engenharia Informática Universidade do Minho! 61!

Web apps! Aplicação acedida via um browser!! Acesso (tipicamente) baseado em contas de utilizador!! Dados dos utilizadores guardados de forma centralizado no servidor! Mestrado em Engenharia Informática Universidade do Minho! 62! Web vs. Desktop - desenvolvimento Web!! multi-plataforma com uma única code base!! Manutenção facilitada!! Maior facilidade de logging!! Fim da pirataria!?!! Acesso limitado aos recursos das máquinas cliente!! Investimento em hardware e desempenho!! Segurança de dados e privacidade! Desktop!! Tecnologia estável! Grrr!! Maior controlo do utilizador!!?!!! Acesso directo às máquinas! Responsabilidade do utilizador!! Responsabilidade do utilizador! Mestrado em Engenharia Informática Universidade do Minho! 63!

Web vs. Desktop - utilizadores Web!! Acesso facilitado!! Necessidade de conectividade!! Manutenção facilitada!! Maior riscos de segurança/ privacidade!! Maior segurança dos dados!! Menor segurança dos dados!! Pior desempenho!! Pior hardware!! Modelo de negócio baseado em subscrições! Desktop!! Requerem instalação!! Acesso facilitado!! Utilizador mantém controlo!! Menores riscos de segurança/ privacidade(?)!! Necessidade de gerir backups!! Possibilidade de gerir backups!! Melhor desempenho!! Melhor hardware!! Modelo de negócio baseado em compra (?)! Mestrado em Engenharia Informática Universidade do Minho! 64!! Aplicação desktop para o projecto?! - Sim/Não?! - Porquê? (Ganhos/Perdas)! - Existe meio termo?! Mestrado em Engenharia Informática Universidade do Minho! 65!