SlideShare uma empresa Scribd logo
1 de 50
Baixar para ler offline
Engenharia
WEB
Benedilson Lima
Introdução
O Você já sabe que a Web é grande (Cultural e social):
O Como compramos produtos (comércio eletrônico);
O Encontramos pessoas (encontros on-line);
O Entendemos o mundo (portais);
O Vemos noticia (mídia on-line);
O Expressamos nossas opiniões (blogs);
O Nos divertimos (desde downloads, até cassinos on-line).
Seminário Engenharia Web - Benedilson Lima 2
Discussões introdutórias
O O enfoque da escola antiga, de forma lamentável,
era um proposição do tipo acertar-ou-errar (ad hoc);
O O veículo que adquire informação, a estrutura,
mostra uma apresentação empacotada e a entrega
é chamado de aplicação Web (WebApp);
O Quando uma WebApp é combinada com hardware
cliente e servidor, SO, redes e navegadores, surge
um sistema baseado na Web.
Seminário Engenharia Web - Benedilson Lima 3
Discussões introdutórias
O WebApps são realmente softwares de computador?
O No sentido de que são uma coleção de instruções
executáveis e dados que oferecem informações e
funcionalidades para usuários finais.
Seminário Engenharia Web - Benedilson Lima 4
Os atributos a seguir são encontrados
na grande maioria das WebApps:
O Intensidade da rede: Cada WebApp reside em uma rede e
deve servir às necessidades de uma comunidade
diversificada de clientes;
O Simultaneidade: Um grande número de usuários poderá
acessar a WebApp ao mesmo tempo;
O Carga imprevisível: O número de usuários da WebApp
poderá variar por ordens de grandeza de um dia para o outro;
O Desempenho: Se um usuário de WebApp tiver que esperar
muito tempo ele ou ela poderá decidir ir para outro lugar;
O Disponibilidade: 24 h, 7 dias por semana, 365 dias por ano;
Orientada a dados – Sensível ao conteúdo – Evolução
continua – Urgência – Segurança – Estética
Seminário Engenharia Web - Benedilson Lima 5
Então você deseja montar uma WebApp?
O Logicamente, você poderia utilizar uma
combinação de informalidade, urgência, intuição e
arte (técnica da escola antiga);
O A WebApp pode:
O Não fazer o que deveria;
O Ser entregue atrasada ou nem ser entregue;
O Ser difícil, ou impossível de se corrigir, adaptar ou
melhorar.
O Se todas as coisas correrem bem, você e seus
colegas serão heróis e nascerá uma WebApp
significativa.
Seminário Engenharia Web - Benedilson Lima 6
O que é Engenharia Web?
O É uma alternativa que se opõem a técnica
da escola antiga – uma que reduz (mas
não elimina) o risco e tem uma
probabilidade mais alta de sucesso
quando WebApps de qualidade industrial
precisam ser montadas. Essa alternativa
chama-se: engenharia Web (WebE).
O A WebE propõe um arcabouço ágil,
porém disciplinado para a montagem de
WebApps de qualidade industrial.
Seminário Engenharia Web - Benedilson Lima 7
Engenharia Web não se trata
de ferramentas e tecnologia?
O São muito importantes, mas só
funcionarão bem se forem usadas dentro
do contexto de um arcabouço ágil para
engenharia Web e em conjunto com
métodos comprovados para entender o
problema, projetar uma solução e testa-la
completamente.
Seminário Engenharia Web - Benedilson Lima 8
Processos de Engenharia Web
Seminário Engenharia Web - Benedilson Lima 9
Comunicação
Entre os princípios mais fundamentais da
engenharia de software está: entenda o
problema antes de começar a resolvê-lo e
certifique-se de que a solução que você
concebe é aquela que as pessoas
realmente desejam. É razoável sugerir que
esse princípio também deva se tornar um
pilar da engenharia Web.
Seminário Engenharia Web - Benedilson Lima 10
A atividade de comunicação
O É o local onde os engenheiros Web e os
interessados se engajam em uma série de ações
de WebE que:
O Formulação;
O Elicitação;
O Negociação.
Seminário Engenharia Web - Benedilson Lima 11
Planejamento
O Se o incremento da WebApp for simples,
o planejamento exigirá muito pouco
tempo;
O Se por outro lado, o incremento for
complexo – conteúdo, funcionalidade,
restrições e desempenho, o planejamento
exigirá maior esforço e abrangerá cada
uma das ações e tarefas discutidas a
seguir...
Seminário Engenharia Web - Benedilson Lima 12
A equipe da Engenharia Web
O Desenvolvedores/provedores de conteúdo:
O Geração e coleta de conteúdo;
O Oriundos de diversas áreas.
O Editor da Web:
O Organizador dos conteúdos gerados pelos
desenvolvedores/provedores.
O Elemento de ligação.
O Engenheiro da Web:
O Envolvido com atividades durante o desenvolvimento
de uma WebApp.
Seminário Engenharia Web - Benedilson Lima 13
A equipe da Engenharia Web
O Especialista do domínio de negócio:
O Deve ser capaz de responder a todas as questões
relativas às metas, aos objetivos e aos requisitos de
negócio.
O Especialista de suporte:
O WebApps evoluem continuamente;
O Correções, adaptações e aperfeiçoamentos do site;
O Atualizações do conteúdo;
O Implementação de novos procedimentos e formulários;
O Modificações no padrão de navegação.
O Administrador:
O Web Master;
O Pode se envolver com atividades técnicas realizadas
por engenheiros da Web e especialista de suporte.
Seminário Engenharia Web - Benedilson Lima 14
A diferença organizacional entre o
desenvolvimento terceirizado e o interno
Seminário Engenharia Web - Benedilson Lima 15
Como avaliamos os riscos?
Riscos Probabilidade Impacto
Pessoas
Pouca experiência com XML na equipe 80% 3
Interessados não cooperativos 60% 2
Gerente "sênior" pode mudar no meio do caminho 40% 1
Produto
Conteúdo informativo pode estar desatualizado 50% 2
Algoritmos podem não estar definidos adequadamente 80% 3
Segurança para WebApp mais difícil do que o esperado 80% 3
Integração do banco de dados mais difícil do que o esperado 40% 3
Capacidade de definição de espaço mais difícil do que o esperado 70% 3
Processo
Não há ênfase suficiente em comunicação 60% 2
Muitas tarefas de análise (muito tempo gasto) 30% 1
Não há ênfase suficiente no projeto de navegação 40% 2
... ... ...
Seminário Engenharia Web - Benedilson Lima 16
Cronograma
Seminário Engenharia Web - Benedilson Lima 17
Estimando esforço e tempo
Conteúdo e funções Análise Projeto Codificação Teste Entrega Feedback Total
Paredes, portas e
janelas
1 2 2 2 0,5 0,25 7,75
Sensores 0,5 1,5 1 1 0,25 0,25 4,5
Especificar e desenhar
paredes, portas e
janelas
1,25 3 3 3 1 0,25 11,5
Calcular o tamanho do
cômodo
0,5 1 2 1 0,5 0,25 5,25
Salvar/recuperar
espaço nomeado
0 1 1 0,5 0,5 0,25 3,25
Atualizar/excluir espaço
nomeado
0 1 1 0,5 0,5 0,25 3,25
imprimir espaço
nomeado
0 1 1 0,5 0,5 0,25 3,25
Recomendar hardware
de segurança
0,5 3 2 2 0,5 0,25 8,25
Especificar hardware
de segurança
0,5 2 2 3 0,5 0,25 8,25
Totais 4,25 15,5 15 13,5 4,75 2,25 55,25
Seminário Engenharia Web - Benedilson Lima 18
Modelagem de análise para
aplicações da Web
O Temos observado que WebApps têm um
imediatismo e uma volatilidade que vão
contra a modelagem detalhada tanto no
nível de análise quanto de projeto.
Seminário Engenharia Web - Benedilson Lima 19
Essa modelagem de análise deve
existir apenas se....
O A WebApp a ser construída é grande e/ou
complexa;
O O número de interessados é grande;
O O número de engenheiros da Web e outros
colaboradores é grande;
O As metas e os objetivos (durante a formulação) da
WebApp vão afetar os fundamentos básicos do
negócio;
O O sucesso da WebApp terá um forte efeito no
sucesso do negócio.
Seminário Engenharia Web - Benedilson Lima 20
Casos de uso
O Casos de uso são o
catalisador de todas
as atividades de
análise e
modelagem de
requisitos
Hierarquia de usuários
Seminário Engenharia Web - Benedilson Lima 21
Modelos de análise
Análise de conteúdo:
O Identifica todo o
espectro de
conteúdo a ser
fornecido pela
WebApp.
Análise de interação:
O Descreve o modo
pelo qual o usuário
interage com a
WebApp.
Seminário Engenharia Web - Benedilson Lima 22
Modelos de análise
Análise funcional:
O Operações que
serão aplicadas ao
conteúdo da
WebApp;
O Funções de
processamento
independentes do
conteúdo.
Análise de configuração:
O Descreve o ambiente
e a infra-estrutura nos
quais a WebApp
reside.
Seminário Engenharia Web - Benedilson Lima 23
Modelagem de projeto para WebApps
• Para atingir esses atributos de qualidade, um bom projeto deve apresentar:
Simplicidade, consistência, identidade, robustez, navegabilidade e atração visual.
Segurança, escalabilidade e prazo para colocação no mercado.
Seminário Engenharia Web - Benedilson Lima 24
Projeto de interface
O Representação de leiaute de tela;
O Definição dos modos de interação;
O Descrição dos mecanismos de navegação.
Seminário Engenharia Web - Benedilson Lima 25
Projeto de estética
O Também chamado de projeto gráfico;
O Descreve o “aspecto” da WebApp;
O Esquemas de cor, leiaute geométrico,
tamanho de texto, fonte e colocação, uso
de gráficos e decisões estéticas
relacionadas.
Seminário Engenharia Web - Benedilson Lima 26
Projeto de conteúdo
O Define o leiaute, a estrutura e o esboço para todo o
conteúdo apresentado como parte da WebApp;
O Estabelece os relacionamentos entre objetos de
conteúdo.
Seminário Engenharia Web - Benedilson Lima 27
Projeto de conteúdo começa com a representação dos objetos
de conteúdo, sua associações e relacionamentos.
Seminário Engenharia Web - Benedilson Lima 28
Projeto de arquitetura
O Identifica a estrutura global de hipermídia de WebApp;
O Estilos arquiteturais de conteúdo incluem estrutura linear, em
malha, hierárquica e em rede.
Seminário Engenharia Web - Benedilson Lima 29
Projeto de arquitetura
O Identifica a estrutura global de hipermídia de WebApp;
O Estilos arquiteturais de conteúdo incluem estrutura linear, em
malha, hierárquica e em rede.
Seminário Engenharia Web - Benedilson Lima 30
Arquitetura da WebApp
Projeto de arquitetura em três camadas;
Desacopla a interfase da navegação e do
comportamento da aplicação;
Simplicidade a implementação e reuso aumentado.
Seminário Engenharia Web - Benedilson Lima 31
Projeto de componente
O Desenvolve a lógica de processamento detalhado
necessário para implementar componentes
funcionais de WebApps.
O Fornecem acesso e consulta a banco de dados
sofisticados;
O Estabelecem interfaces de dados a sistemas
externo à empresa.
Seminário Engenharia Web - Benedilson Lima 32
Padrões de projeto de WebApp
O Englobam padrões de projeto genéricos que se
aplicam a todos os tipos de software e padrões de
hipermídia especialmente relevantes para WebApps.
O Padrões:
O Arquiteturais;
O Construção de componentes;
O Navegação;
O Apresentação;
O Comportamento/usuário-interação.
Seminário Engenharia Web - Benedilson Lima 33
Método de Projeto de Hipermídia
Orientado a Objetos
O Object-Oriented Hypermedia Design Method;
O É um de vários métodos propostos para
projetos de WebApp;
O Sugere um processo de projeto que inclui:
O Projeto conceitual;
O Projeto navegacional;
O Projeto de interface abstrata;
O Implementação.
Seminário Engenharia Web - Benedilson Lima 34
Resumo do método OOHDM
Seminário Engenharia Web - Benedilson Lima 35
Esquema conceitual parcial
Seminário Engenharia Web - Benedilson Lima 36
Construção e Implantação
Seminário Engenharia Web - Benedilson Lima 37
Construção
O Conjunto de ações de seleção, codificação,
gerenciamento de conteúdo, autoria de páginas,
integração, refatoração e teste.
O Ferramentas e tecnologia de WebE, são aplicadas
para construir a WebApp que foi modelada;
O Quando o incremento da WebApp tiver sido
construído, uma série de testes rápidos é realizada
para garantir que os erros no projeto sejam
descobertos.
Seminário Engenharia Web - Benedilson Lima 38
Seleção
O Envolve a identificação de componentes
relevantes preexistentes, que podem ser
reutilizados dentro do projeto proposto;
O Princípios:
O Levar em consideração as restrições do ambiente
técnico;
O Combinar os componentes com os ambientes de
informação e funcionais;
O Considerar as habilidades e o conhecimento dos
desenvolvedores e prováveis mantenedores.
Seminário Engenharia Web - Benedilson Lima 39
Codificação
O Cobre a adaptação de componentes
existentes ou a criação de novos
componentes;
O Pode envolver a criação direta de HTML,
ou código fonte em linguagem de script;
O Geração automática de código usando
uma representação de projeto
intermediária do componente a ser
construído.
Seminário Engenharia Web - Benedilson Lima 40
Princípios
O Escrever código que seja auto documentável;
O Restringir seus algoritmos seguindo práticas da
programação estruturada;
O Manter a lógica condicional o mais simples
possível e garantir que possa ser testada.
Seminário Engenharia Web - Benedilson Lima 41
Gerenciamento de conteúdo
O Criação, migração e estruturação do
conteúdo;
O Princípios:
O Selecionar estruturas de dados que
atendam às necessidades do projeto;
O Garantir a coerência nos formatos e
estruturas de dados;
O Evitar confiar em formatos de dados
proprietários.
Seminário Engenharia Web - Benedilson Lima 42
Autoria de páginas
O A integração do conteúdo bruto com o
projeto gráfico e o mapeamento do
conteúdo nas telas e páginas.
O Princípios:
O Considerar continuamente as questões de
usabilidade;
O Entender como seus usuários reagirão, e
não como você quer que eles reajam.
Seminário Engenharia Web - Benedilson Lima 43
Integração
O Vinculo do código, conteúdo e apresentação
nos componentes finais a serem liberados;
O Princípios:
O Procurar divergências ou inconsistências na
interface do componentes;
O Ter oportunidade de identificar componentes
que precisam de refatoração.
Seminário Engenharia Web - Benedilson Lima 44
Refatoração
O É uma ação interativa para “polir” os
componentes implantados a fim de
melhorar sua estrutura e esclarecer e
remover código redundante;
O Princípios:
O Refatore com frequência, e em pequenas
etapas, quando surgir a oportunidade;
O Garantir que a implementação comunica o
projeto de maneira óbvia.
Seminário Engenharia Web - Benedilson Lima 45
Teste
O Verificação de que os diversos
componentes e objetos estão corretos;
O Princípios:
O Realizar uma revisão exaustiva;
O Realizar testes unitários e corrigir os erros
encontrados;
O Selecionar testes que mais provavelmente
localizarão erros, em vez se oculta-los.
Seminário Engenharia Web - Benedilson Lima 46
Implantação
O A WebApp é configurada para o seu
ambiente operacional;
O Entregue aos usuários finais;
O Período de avaliação é iniciado;
O O feedback da avaliação é apresentado à
equipe de WebE;
O O incremento é modificado conforme a
necessidade.
Seminário Engenharia Web - Benedilson Lima 47
Ferramentas e tecnologias para WebApps
O Linguagens de descrição de conteúdo e
modelagem: HTML, VRML e XML;
O Linguagens de programação: Java;
O Recursos de desenvolvimento baseados
em componentes: CORBA, COM,
ActiveX, .NET;
O Navegadores, ferramentas de multimídia,
conectividade de banco de dados,
segurança, servidores, gerenciamento e
análise de sites.
Seminário Engenharia Web - Benedilson Lima 48
Tendências futuras
O É provável que o conteúdo e funcionalidade
da Web evolua à medida que aparecem mais
e mais WebApps mash-up;
O O acesso se tornará onipresente, abrindo
oportunidades para remessa de conteúdo
com valor em tempo real;
O A Web 2.0 trata da criação de uma
experiência Web mais comprometida,
interativa e coletiva, onde todos os usuários
são capazes de serem participantes ativos,
ao invés de passivos.
Seminário Engenharia Web - Benedilson Lima 49
Bibliografia
Seminário Engenharia Web - Benedilson Lima 50
PRESSMAN, Roger S. Engenharia de Software, 6ª edição, ed. Makron Books.
PRESSMAN, Roger S; LOWE, David. Engenharia Web, ed. Ltc.

Mais conteúdo relacionado

Destaque

Introdução à Arquitetura Web
Introdução à Arquitetura WebIntrodução à Arquitetura Web
Introdução à Arquitetura WebBreno Vitorino
 
Projeto de Interface de Usuário
Projeto de Interface de UsuárioProjeto de Interface de Usuário
Projeto de Interface de UsuárioTatiana Tavares
 
Seminário - Estudos Empíricos em Engenharia de Software - RE@Quixadá
Seminário - Estudos Empíricos em Engenharia de Software - RE@QuixadáSeminário - Estudos Empíricos em Engenharia de Software - RE@Quixadá
Seminário - Estudos Empíricos em Engenharia de Software - RE@QuixadáCamilo Almendra
 
Apresentação de Introdução à Engenharia de Produção
Apresentação de Introdução à Engenharia de ProduçãoApresentação de Introdução à Engenharia de Produção
Apresentação de Introdução à Engenharia de ProduçãoMarcel Gois
 
PROJETO INTEGRADO MULTIDISCIPLINAR IV - PIM IV
PROJETO INTEGRADO MULTIDISCIPLINAR IV - PIM IVPROJETO INTEGRADO MULTIDISCIPLINAR IV - PIM IV
PROJETO INTEGRADO MULTIDISCIPLINAR IV - PIM IVHenry Jackman
 

Destaque (7)

Introdução à Arquitetura Web
Introdução à Arquitetura WebIntrodução à Arquitetura Web
Introdução à Arquitetura Web
 
Projeto de Interface de Usuário
Projeto de Interface de UsuárioProjeto de Interface de Usuário
Projeto de Interface de Usuário
 
Seminário - Estudos Empíricos em Engenharia de Software - RE@Quixadá
Seminário - Estudos Empíricos em Engenharia de Software - RE@QuixadáSeminário - Estudos Empíricos em Engenharia de Software - RE@Quixadá
Seminário - Estudos Empíricos em Engenharia de Software - RE@Quixadá
 
Apresentação de Introdução à Engenharia de Produção
Apresentação de Introdução à Engenharia de ProduçãoApresentação de Introdução à Engenharia de Produção
Apresentação de Introdução à Engenharia de Produção
 
PROJETO INTEGRADO MULTIDISCIPLINAR IV - PIM IV
PROJETO INTEGRADO MULTIDISCIPLINAR IV - PIM IVPROJETO INTEGRADO MULTIDISCIPLINAR IV - PIM IV
PROJETO INTEGRADO MULTIDISCIPLINAR IV - PIM IV
 
Apresentacao Seminario
Apresentacao SeminarioApresentacao Seminario
Apresentacao Seminario
 
Normas Para O Resumo Simples
Normas Para O Resumo SimplesNormas Para O Resumo Simples
Normas Para O Resumo Simples
 

Semelhante a Engenharia web seminário

Arquitetura da Informacao na WEB
Arquitetura da Informacao na WEBArquitetura da Informacao na WEB
Arquitetura da Informacao na WEBFábio Flatschart
 
O futuro do arquiteto e das arquiteturas Java Enterprise
O futuro do arquiteto e das arquiteturas Java EnterpriseO futuro do arquiteto e das arquiteturas Java Enterprise
O futuro do arquiteto e das arquiteturas Java EnterpriseGlobalcode
 
Overview do Mercado de Desenvolvimento Web
Overview do Mercado de Desenvolvimento WebOverview do Mercado de Desenvolvimento Web
Overview do Mercado de Desenvolvimento WebHector Nieva
 
Especialização em desenvolvimento web e aplicativos móveis - Univem
Especialização em desenvolvimento web e aplicativos móveis - UnivemEspecialização em desenvolvimento web e aplicativos móveis - Univem
Especialização em desenvolvimento web e aplicativos móveis - UnivemRicardo Sabatine
 
Criando aplicações web com tecnologias Microsoft
Criando aplicações web com tecnologias MicrosoftCriando aplicações web com tecnologias Microsoft
Criando aplicações web com tecnologias MicrosoftFabrício Lopes Sanchez
 
Teoria de Sistemas de Informação - Atividade: Tecnologia e SI
Teoria de Sistemas de Informação - Atividade: Tecnologia e SITeoria de Sistemas de Informação - Atividade: Tecnologia e SI
Teoria de Sistemas de Informação - Atividade: Tecnologia e SIAlessandro Almeida
 
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...Rodrigo Branas
 
Introdução a arquitetura de sistemas com .NET
Introdução a arquitetura de sistemas com .NETIntrodução a arquitetura de sistemas com .NET
Introdução a arquitetura de sistemas com .NETMário Meyrelles
 
Agência Web - ADDTECH
Agência Web - ADDTECHAgência Web - ADDTECH
Agência Web - ADDTECH.add
 
Pós-graduação em Desenvolvimento Web e Aplicativos Móveis
Pós-graduação em Desenvolvimento Web e Aplicativos MóveisPós-graduação em Desenvolvimento Web e Aplicativos Móveis
Pós-graduação em Desenvolvimento Web e Aplicativos MóveisElvis Fusco
 
Desenvolvimento de Sites V.2
Desenvolvimento de Sites V.2Desenvolvimento de Sites V.2
Desenvolvimento de Sites V.2Patricia Mallmann
 
AAB301 - Rich Internet Application - wcamb
AAB301 - Rich Internet Application - wcambAAB301 - Rich Internet Application - wcamb
AAB301 - Rich Internet Application - wcambMicrosoft Brasil
 
PI III - IMPLEMENTACAO DE PROJETOS DE TI
PI III - IMPLEMENTACAO DE PROJETOS DE TIPI III - IMPLEMENTACAO DE PROJETOS DE TI
PI III - IMPLEMENTACAO DE PROJETOS DE TINilo Basílio
 
29/09/2011 - 9h às 12h30 - oficina - arquitetura da informação em sistemas 2...
29/09/2011 -  9h às 12h30 - oficina - arquitetura da informação em sistemas 2...29/09/2011 -  9h às 12h30 - oficina - arquitetura da informação em sistemas 2...
29/09/2011 - 9h às 12h30 - oficina - arquitetura da informação em sistemas 2...Rio Info
 
Aula Teste Fatec Engenharia de Software III
Aula Teste  Fatec Engenharia de Software IIIAula Teste  Fatec Engenharia de Software III
Aula Teste Fatec Engenharia de Software IIIDalton Martins
 
Projeto Indiana
Projeto IndianaProjeto Indiana
Projeto Indianahellequin
 
Apresentação: Utilização de Metodologias Ágeis para Adaptação de um Processo ...
Apresentação: Utilização de Metodologias Ágeis para Adaptação de um Processo ...Apresentação: Utilização de Metodologias Ágeis para Adaptação de um Processo ...
Apresentação: Utilização de Metodologias Ágeis para Adaptação de um Processo ...Felipe Nascimento
 

Semelhante a Engenharia web seminário (20)

Rup e metodos ágies
Rup e metodos ágiesRup e metodos ágies
Rup e metodos ágies
 
Arquitetura da Informacao na WEB
Arquitetura da Informacao na WEBArquitetura da Informacao na WEB
Arquitetura da Informacao na WEB
 
CV Alexandre R. de Castro
CV Alexandre R. de CastroCV Alexandre R. de Castro
CV Alexandre R. de Castro
 
O futuro do arquiteto e das arquiteturas Java Enterprise
O futuro do arquiteto e das arquiteturas Java EnterpriseO futuro do arquiteto e das arquiteturas Java Enterprise
O futuro do arquiteto e das arquiteturas Java Enterprise
 
Overview do Mercado de Desenvolvimento Web
Overview do Mercado de Desenvolvimento WebOverview do Mercado de Desenvolvimento Web
Overview do Mercado de Desenvolvimento Web
 
Especialização em desenvolvimento web e aplicativos móveis - Univem
Especialização em desenvolvimento web e aplicativos móveis - UnivemEspecialização em desenvolvimento web e aplicativos móveis - Univem
Especialização em desenvolvimento web e aplicativos móveis - Univem
 
Criando aplicações web com tecnologias Microsoft
Criando aplicações web com tecnologias MicrosoftCriando aplicações web com tecnologias Microsoft
Criando aplicações web com tecnologias Microsoft
 
Teoria de Sistemas de Informação - Atividade: Tecnologia e SI
Teoria de Sistemas de Informação - Atividade: Tecnologia e SITeoria de Sistemas de Informação - Atividade: Tecnologia e SI
Teoria de Sistemas de Informação - Atividade: Tecnologia e SI
 
A Nova Web
A Nova WebA Nova Web
A Nova Web
 
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...
Minicurso - Desenvolvendo aplicações web com JavaScript e AngularJS - Estácio...
 
Introdução a arquitetura de sistemas com .NET
Introdução a arquitetura de sistemas com .NETIntrodução a arquitetura de sistemas com .NET
Introdução a arquitetura de sistemas com .NET
 
Agência Web - ADDTECH
Agência Web - ADDTECHAgência Web - ADDTECH
Agência Web - ADDTECH
 
Pós-graduação em Desenvolvimento Web e Aplicativos Móveis
Pós-graduação em Desenvolvimento Web e Aplicativos MóveisPós-graduação em Desenvolvimento Web e Aplicativos Móveis
Pós-graduação em Desenvolvimento Web e Aplicativos Móveis
 
Desenvolvimento de Sites V.2
Desenvolvimento de Sites V.2Desenvolvimento de Sites V.2
Desenvolvimento de Sites V.2
 
AAB301 - Rich Internet Application - wcamb
AAB301 - Rich Internet Application - wcambAAB301 - Rich Internet Application - wcamb
AAB301 - Rich Internet Application - wcamb
 
PI III - IMPLEMENTACAO DE PROJETOS DE TI
PI III - IMPLEMENTACAO DE PROJETOS DE TIPI III - IMPLEMENTACAO DE PROJETOS DE TI
PI III - IMPLEMENTACAO DE PROJETOS DE TI
 
29/09/2011 - 9h às 12h30 - oficina - arquitetura da informação em sistemas 2...
29/09/2011 -  9h às 12h30 - oficina - arquitetura da informação em sistemas 2...29/09/2011 -  9h às 12h30 - oficina - arquitetura da informação em sistemas 2...
29/09/2011 - 9h às 12h30 - oficina - arquitetura da informação em sistemas 2...
 
Aula Teste Fatec Engenharia de Software III
Aula Teste  Fatec Engenharia de Software IIIAula Teste  Fatec Engenharia de Software III
Aula Teste Fatec Engenharia de Software III
 
Projeto Indiana
Projeto IndianaProjeto Indiana
Projeto Indiana
 
Apresentação: Utilização de Metodologias Ágeis para Adaptação de um Processo ...
Apresentação: Utilização de Metodologias Ágeis para Adaptação de um Processo ...Apresentação: Utilização de Metodologias Ágeis para Adaptação de um Processo ...
Apresentação: Utilização de Metodologias Ágeis para Adaptação de um Processo ...
 

Mais de Benedilosn

Gerenciamento de Redes de Computadores
Gerenciamento de Redes de ComputadoresGerenciamento de Redes de Computadores
Gerenciamento de Redes de ComputadoresBenedilosn
 
Slide para seleção de professor de informática
Slide para seleção de professor de informáticaSlide para seleção de professor de informática
Slide para seleção de professor de informáticaBenedilosn
 
Vocação chamado e segmento a jesus cristo
Vocação chamado e segmento a jesus cristoVocação chamado e segmento a jesus cristo
Vocação chamado e segmento a jesus cristoBenedilosn
 
O criador o céu e a terra o homem a queda
O criador o céu e a terra o homem a quedaO criador o céu e a terra o homem a queda
O criador o céu e a terra o homem a quedaBenedilosn
 
Creio em deus pai todo poderoso, criador do céu e da terra
Creio em deus pai todo poderoso, criador do céu e da terraCreio em deus pai todo poderoso, criador do céu e da terra
Creio em deus pai todo poderoso, criador do céu e da terraBenedilosn
 
Meu relacionamento em família
Meu relacionamento em famíliaMeu relacionamento em família
Meu relacionamento em famíliaBenedilosn
 
Programas de educação ambiental no ensino infantil pedagogia
Programas de educação ambiental no ensino infantil   pedagogiaProgramas de educação ambiental no ensino infantil   pedagogia
Programas de educação ambiental no ensino infantil pedagogiaBenedilosn
 
Inovações tecnológicas e educação
Inovações tecnológicas e educaçãoInovações tecnológicas e educação
Inovações tecnológicas e educaçãoBenedilosn
 
A importância do ambiente alfabetizador
A importância do ambiente alfabetizadorA importância do ambiente alfabetizador
A importância do ambiente alfabetizadorBenedilosn
 
Redes de computadores - wifi
Redes de computadores - wifiRedes de computadores - wifi
Redes de computadores - wifiBenedilosn
 
Programação genética - IA
Programação genética - IAProgramação genética - IA
Programação genética - IABenedilosn
 
Interface de linha de comando - CLI
Interface de linha de comando - CLIInterface de linha de comando - CLI
Interface de linha de comando - CLIBenedilosn
 
Implementações de suporte a curvas no html5 e aplicações de curvas em Computa...
Implementações de suporte a curvas no html5 e aplicações de curvas em Computa...Implementações de suporte a curvas no html5 e aplicações de curvas em Computa...
Implementações de suporte a curvas no html5 e aplicações de curvas em Computa...Benedilosn
 
Criancas e jovens na internet
Criancas e jovens na internetCriancas e jovens na internet
Criancas e jovens na internetBenedilosn
 
Banco de dados web
Banco de dados webBanco de dados web
Banco de dados webBenedilosn
 

Mais de Benedilosn (15)

Gerenciamento de Redes de Computadores
Gerenciamento de Redes de ComputadoresGerenciamento de Redes de Computadores
Gerenciamento de Redes de Computadores
 
Slide para seleção de professor de informática
Slide para seleção de professor de informáticaSlide para seleção de professor de informática
Slide para seleção de professor de informática
 
Vocação chamado e segmento a jesus cristo
Vocação chamado e segmento a jesus cristoVocação chamado e segmento a jesus cristo
Vocação chamado e segmento a jesus cristo
 
O criador o céu e a terra o homem a queda
O criador o céu e a terra o homem a quedaO criador o céu e a terra o homem a queda
O criador o céu e a terra o homem a queda
 
Creio em deus pai todo poderoso, criador do céu e da terra
Creio em deus pai todo poderoso, criador do céu e da terraCreio em deus pai todo poderoso, criador do céu e da terra
Creio em deus pai todo poderoso, criador do céu e da terra
 
Meu relacionamento em família
Meu relacionamento em famíliaMeu relacionamento em família
Meu relacionamento em família
 
Programas de educação ambiental no ensino infantil pedagogia
Programas de educação ambiental no ensino infantil   pedagogiaProgramas de educação ambiental no ensino infantil   pedagogia
Programas de educação ambiental no ensino infantil pedagogia
 
Inovações tecnológicas e educação
Inovações tecnológicas e educaçãoInovações tecnológicas e educação
Inovações tecnológicas e educação
 
A importância do ambiente alfabetizador
A importância do ambiente alfabetizadorA importância do ambiente alfabetizador
A importância do ambiente alfabetizador
 
Redes de computadores - wifi
Redes de computadores - wifiRedes de computadores - wifi
Redes de computadores - wifi
 
Programação genética - IA
Programação genética - IAProgramação genética - IA
Programação genética - IA
 
Interface de linha de comando - CLI
Interface de linha de comando - CLIInterface de linha de comando - CLI
Interface de linha de comando - CLI
 
Implementações de suporte a curvas no html5 e aplicações de curvas em Computa...
Implementações de suporte a curvas no html5 e aplicações de curvas em Computa...Implementações de suporte a curvas no html5 e aplicações de curvas em Computa...
Implementações de suporte a curvas no html5 e aplicações de curvas em Computa...
 
Criancas e jovens na internet
Criancas e jovens na internetCriancas e jovens na internet
Criancas e jovens na internet
 
Banco de dados web
Banco de dados webBanco de dados web
Banco de dados web
 

Engenharia web seminário

  • 2. Introdução O Você já sabe que a Web é grande (Cultural e social): O Como compramos produtos (comércio eletrônico); O Encontramos pessoas (encontros on-line); O Entendemos o mundo (portais); O Vemos noticia (mídia on-line); O Expressamos nossas opiniões (blogs); O Nos divertimos (desde downloads, até cassinos on-line). Seminário Engenharia Web - Benedilson Lima 2
  • 3. Discussões introdutórias O O enfoque da escola antiga, de forma lamentável, era um proposição do tipo acertar-ou-errar (ad hoc); O O veículo que adquire informação, a estrutura, mostra uma apresentação empacotada e a entrega é chamado de aplicação Web (WebApp); O Quando uma WebApp é combinada com hardware cliente e servidor, SO, redes e navegadores, surge um sistema baseado na Web. Seminário Engenharia Web - Benedilson Lima 3
  • 4. Discussões introdutórias O WebApps são realmente softwares de computador? O No sentido de que são uma coleção de instruções executáveis e dados que oferecem informações e funcionalidades para usuários finais. Seminário Engenharia Web - Benedilson Lima 4
  • 5. Os atributos a seguir são encontrados na grande maioria das WebApps: O Intensidade da rede: Cada WebApp reside em uma rede e deve servir às necessidades de uma comunidade diversificada de clientes; O Simultaneidade: Um grande número de usuários poderá acessar a WebApp ao mesmo tempo; O Carga imprevisível: O número de usuários da WebApp poderá variar por ordens de grandeza de um dia para o outro; O Desempenho: Se um usuário de WebApp tiver que esperar muito tempo ele ou ela poderá decidir ir para outro lugar; O Disponibilidade: 24 h, 7 dias por semana, 365 dias por ano; Orientada a dados – Sensível ao conteúdo – Evolução continua – Urgência – Segurança – Estética Seminário Engenharia Web - Benedilson Lima 5
  • 6. Então você deseja montar uma WebApp? O Logicamente, você poderia utilizar uma combinação de informalidade, urgência, intuição e arte (técnica da escola antiga); O A WebApp pode: O Não fazer o que deveria; O Ser entregue atrasada ou nem ser entregue; O Ser difícil, ou impossível de se corrigir, adaptar ou melhorar. O Se todas as coisas correrem bem, você e seus colegas serão heróis e nascerá uma WebApp significativa. Seminário Engenharia Web - Benedilson Lima 6
  • 7. O que é Engenharia Web? O É uma alternativa que se opõem a técnica da escola antiga – uma que reduz (mas não elimina) o risco e tem uma probabilidade mais alta de sucesso quando WebApps de qualidade industrial precisam ser montadas. Essa alternativa chama-se: engenharia Web (WebE). O A WebE propõe um arcabouço ágil, porém disciplinado para a montagem de WebApps de qualidade industrial. Seminário Engenharia Web - Benedilson Lima 7
  • 8. Engenharia Web não se trata de ferramentas e tecnologia? O São muito importantes, mas só funcionarão bem se forem usadas dentro do contexto de um arcabouço ágil para engenharia Web e em conjunto com métodos comprovados para entender o problema, projetar uma solução e testa-la completamente. Seminário Engenharia Web - Benedilson Lima 8
  • 9. Processos de Engenharia Web Seminário Engenharia Web - Benedilson Lima 9
  • 10. Comunicação Entre os princípios mais fundamentais da engenharia de software está: entenda o problema antes de começar a resolvê-lo e certifique-se de que a solução que você concebe é aquela que as pessoas realmente desejam. É razoável sugerir que esse princípio também deva se tornar um pilar da engenharia Web. Seminário Engenharia Web - Benedilson Lima 10
  • 11. A atividade de comunicação O É o local onde os engenheiros Web e os interessados se engajam em uma série de ações de WebE que: O Formulação; O Elicitação; O Negociação. Seminário Engenharia Web - Benedilson Lima 11
  • 12. Planejamento O Se o incremento da WebApp for simples, o planejamento exigirá muito pouco tempo; O Se por outro lado, o incremento for complexo – conteúdo, funcionalidade, restrições e desempenho, o planejamento exigirá maior esforço e abrangerá cada uma das ações e tarefas discutidas a seguir... Seminário Engenharia Web - Benedilson Lima 12
  • 13. A equipe da Engenharia Web O Desenvolvedores/provedores de conteúdo: O Geração e coleta de conteúdo; O Oriundos de diversas áreas. O Editor da Web: O Organizador dos conteúdos gerados pelos desenvolvedores/provedores. O Elemento de ligação. O Engenheiro da Web: O Envolvido com atividades durante o desenvolvimento de uma WebApp. Seminário Engenharia Web - Benedilson Lima 13
  • 14. A equipe da Engenharia Web O Especialista do domínio de negócio: O Deve ser capaz de responder a todas as questões relativas às metas, aos objetivos e aos requisitos de negócio. O Especialista de suporte: O WebApps evoluem continuamente; O Correções, adaptações e aperfeiçoamentos do site; O Atualizações do conteúdo; O Implementação de novos procedimentos e formulários; O Modificações no padrão de navegação. O Administrador: O Web Master; O Pode se envolver com atividades técnicas realizadas por engenheiros da Web e especialista de suporte. Seminário Engenharia Web - Benedilson Lima 14
  • 15. A diferença organizacional entre o desenvolvimento terceirizado e o interno Seminário Engenharia Web - Benedilson Lima 15
  • 16. Como avaliamos os riscos? Riscos Probabilidade Impacto Pessoas Pouca experiência com XML na equipe 80% 3 Interessados não cooperativos 60% 2 Gerente "sênior" pode mudar no meio do caminho 40% 1 Produto Conteúdo informativo pode estar desatualizado 50% 2 Algoritmos podem não estar definidos adequadamente 80% 3 Segurança para WebApp mais difícil do que o esperado 80% 3 Integração do banco de dados mais difícil do que o esperado 40% 3 Capacidade de definição de espaço mais difícil do que o esperado 70% 3 Processo Não há ênfase suficiente em comunicação 60% 2 Muitas tarefas de análise (muito tempo gasto) 30% 1 Não há ênfase suficiente no projeto de navegação 40% 2 ... ... ... Seminário Engenharia Web - Benedilson Lima 16
  • 17. Cronograma Seminário Engenharia Web - Benedilson Lima 17
  • 18. Estimando esforço e tempo Conteúdo e funções Análise Projeto Codificação Teste Entrega Feedback Total Paredes, portas e janelas 1 2 2 2 0,5 0,25 7,75 Sensores 0,5 1,5 1 1 0,25 0,25 4,5 Especificar e desenhar paredes, portas e janelas 1,25 3 3 3 1 0,25 11,5 Calcular o tamanho do cômodo 0,5 1 2 1 0,5 0,25 5,25 Salvar/recuperar espaço nomeado 0 1 1 0,5 0,5 0,25 3,25 Atualizar/excluir espaço nomeado 0 1 1 0,5 0,5 0,25 3,25 imprimir espaço nomeado 0 1 1 0,5 0,5 0,25 3,25 Recomendar hardware de segurança 0,5 3 2 2 0,5 0,25 8,25 Especificar hardware de segurança 0,5 2 2 3 0,5 0,25 8,25 Totais 4,25 15,5 15 13,5 4,75 2,25 55,25 Seminário Engenharia Web - Benedilson Lima 18
  • 19. Modelagem de análise para aplicações da Web O Temos observado que WebApps têm um imediatismo e uma volatilidade que vão contra a modelagem detalhada tanto no nível de análise quanto de projeto. Seminário Engenharia Web - Benedilson Lima 19
  • 20. Essa modelagem de análise deve existir apenas se.... O A WebApp a ser construída é grande e/ou complexa; O O número de interessados é grande; O O número de engenheiros da Web e outros colaboradores é grande; O As metas e os objetivos (durante a formulação) da WebApp vão afetar os fundamentos básicos do negócio; O O sucesso da WebApp terá um forte efeito no sucesso do negócio. Seminário Engenharia Web - Benedilson Lima 20
  • 21. Casos de uso O Casos de uso são o catalisador de todas as atividades de análise e modelagem de requisitos Hierarquia de usuários Seminário Engenharia Web - Benedilson Lima 21
  • 22. Modelos de análise Análise de conteúdo: O Identifica todo o espectro de conteúdo a ser fornecido pela WebApp. Análise de interação: O Descreve o modo pelo qual o usuário interage com a WebApp. Seminário Engenharia Web - Benedilson Lima 22
  • 23. Modelos de análise Análise funcional: O Operações que serão aplicadas ao conteúdo da WebApp; O Funções de processamento independentes do conteúdo. Análise de configuração: O Descreve o ambiente e a infra-estrutura nos quais a WebApp reside. Seminário Engenharia Web - Benedilson Lima 23
  • 24. Modelagem de projeto para WebApps • Para atingir esses atributos de qualidade, um bom projeto deve apresentar: Simplicidade, consistência, identidade, robustez, navegabilidade e atração visual. Segurança, escalabilidade e prazo para colocação no mercado. Seminário Engenharia Web - Benedilson Lima 24
  • 25. Projeto de interface O Representação de leiaute de tela; O Definição dos modos de interação; O Descrição dos mecanismos de navegação. Seminário Engenharia Web - Benedilson Lima 25
  • 26. Projeto de estética O Também chamado de projeto gráfico; O Descreve o “aspecto” da WebApp; O Esquemas de cor, leiaute geométrico, tamanho de texto, fonte e colocação, uso de gráficos e decisões estéticas relacionadas. Seminário Engenharia Web - Benedilson Lima 26
  • 27. Projeto de conteúdo O Define o leiaute, a estrutura e o esboço para todo o conteúdo apresentado como parte da WebApp; O Estabelece os relacionamentos entre objetos de conteúdo. Seminário Engenharia Web - Benedilson Lima 27
  • 28. Projeto de conteúdo começa com a representação dos objetos de conteúdo, sua associações e relacionamentos. Seminário Engenharia Web - Benedilson Lima 28
  • 29. Projeto de arquitetura O Identifica a estrutura global de hipermídia de WebApp; O Estilos arquiteturais de conteúdo incluem estrutura linear, em malha, hierárquica e em rede. Seminário Engenharia Web - Benedilson Lima 29
  • 30. Projeto de arquitetura O Identifica a estrutura global de hipermídia de WebApp; O Estilos arquiteturais de conteúdo incluem estrutura linear, em malha, hierárquica e em rede. Seminário Engenharia Web - Benedilson Lima 30
  • 31. Arquitetura da WebApp Projeto de arquitetura em três camadas; Desacopla a interfase da navegação e do comportamento da aplicação; Simplicidade a implementação e reuso aumentado. Seminário Engenharia Web - Benedilson Lima 31
  • 32. Projeto de componente O Desenvolve a lógica de processamento detalhado necessário para implementar componentes funcionais de WebApps. O Fornecem acesso e consulta a banco de dados sofisticados; O Estabelecem interfaces de dados a sistemas externo à empresa. Seminário Engenharia Web - Benedilson Lima 32
  • 33. Padrões de projeto de WebApp O Englobam padrões de projeto genéricos que se aplicam a todos os tipos de software e padrões de hipermídia especialmente relevantes para WebApps. O Padrões: O Arquiteturais; O Construção de componentes; O Navegação; O Apresentação; O Comportamento/usuário-interação. Seminário Engenharia Web - Benedilson Lima 33
  • 34. Método de Projeto de Hipermídia Orientado a Objetos O Object-Oriented Hypermedia Design Method; O É um de vários métodos propostos para projetos de WebApp; O Sugere um processo de projeto que inclui: O Projeto conceitual; O Projeto navegacional; O Projeto de interface abstrata; O Implementação. Seminário Engenharia Web - Benedilson Lima 34
  • 35. Resumo do método OOHDM Seminário Engenharia Web - Benedilson Lima 35
  • 36. Esquema conceitual parcial Seminário Engenharia Web - Benedilson Lima 36
  • 37. Construção e Implantação Seminário Engenharia Web - Benedilson Lima 37
  • 38. Construção O Conjunto de ações de seleção, codificação, gerenciamento de conteúdo, autoria de páginas, integração, refatoração e teste. O Ferramentas e tecnologia de WebE, são aplicadas para construir a WebApp que foi modelada; O Quando o incremento da WebApp tiver sido construído, uma série de testes rápidos é realizada para garantir que os erros no projeto sejam descobertos. Seminário Engenharia Web - Benedilson Lima 38
  • 39. Seleção O Envolve a identificação de componentes relevantes preexistentes, que podem ser reutilizados dentro do projeto proposto; O Princípios: O Levar em consideração as restrições do ambiente técnico; O Combinar os componentes com os ambientes de informação e funcionais; O Considerar as habilidades e o conhecimento dos desenvolvedores e prováveis mantenedores. Seminário Engenharia Web - Benedilson Lima 39
  • 40. Codificação O Cobre a adaptação de componentes existentes ou a criação de novos componentes; O Pode envolver a criação direta de HTML, ou código fonte em linguagem de script; O Geração automática de código usando uma representação de projeto intermediária do componente a ser construído. Seminário Engenharia Web - Benedilson Lima 40
  • 41. Princípios O Escrever código que seja auto documentável; O Restringir seus algoritmos seguindo práticas da programação estruturada; O Manter a lógica condicional o mais simples possível e garantir que possa ser testada. Seminário Engenharia Web - Benedilson Lima 41
  • 42. Gerenciamento de conteúdo O Criação, migração e estruturação do conteúdo; O Princípios: O Selecionar estruturas de dados que atendam às necessidades do projeto; O Garantir a coerência nos formatos e estruturas de dados; O Evitar confiar em formatos de dados proprietários. Seminário Engenharia Web - Benedilson Lima 42
  • 43. Autoria de páginas O A integração do conteúdo bruto com o projeto gráfico e o mapeamento do conteúdo nas telas e páginas. O Princípios: O Considerar continuamente as questões de usabilidade; O Entender como seus usuários reagirão, e não como você quer que eles reajam. Seminário Engenharia Web - Benedilson Lima 43
  • 44. Integração O Vinculo do código, conteúdo e apresentação nos componentes finais a serem liberados; O Princípios: O Procurar divergências ou inconsistências na interface do componentes; O Ter oportunidade de identificar componentes que precisam de refatoração. Seminário Engenharia Web - Benedilson Lima 44
  • 45. Refatoração O É uma ação interativa para “polir” os componentes implantados a fim de melhorar sua estrutura e esclarecer e remover código redundante; O Princípios: O Refatore com frequência, e em pequenas etapas, quando surgir a oportunidade; O Garantir que a implementação comunica o projeto de maneira óbvia. Seminário Engenharia Web - Benedilson Lima 45
  • 46. Teste O Verificação de que os diversos componentes e objetos estão corretos; O Princípios: O Realizar uma revisão exaustiva; O Realizar testes unitários e corrigir os erros encontrados; O Selecionar testes que mais provavelmente localizarão erros, em vez se oculta-los. Seminário Engenharia Web - Benedilson Lima 46
  • 47. Implantação O A WebApp é configurada para o seu ambiente operacional; O Entregue aos usuários finais; O Período de avaliação é iniciado; O O feedback da avaliação é apresentado à equipe de WebE; O O incremento é modificado conforme a necessidade. Seminário Engenharia Web - Benedilson Lima 47
  • 48. Ferramentas e tecnologias para WebApps O Linguagens de descrição de conteúdo e modelagem: HTML, VRML e XML; O Linguagens de programação: Java; O Recursos de desenvolvimento baseados em componentes: CORBA, COM, ActiveX, .NET; O Navegadores, ferramentas de multimídia, conectividade de banco de dados, segurança, servidores, gerenciamento e análise de sites. Seminário Engenharia Web - Benedilson Lima 48
  • 49. Tendências futuras O É provável que o conteúdo e funcionalidade da Web evolua à medida que aparecem mais e mais WebApps mash-up; O O acesso se tornará onipresente, abrindo oportunidades para remessa de conteúdo com valor em tempo real; O A Web 2.0 trata da criação de uma experiência Web mais comprometida, interativa e coletiva, onde todos os usuários são capazes de serem participantes ativos, ao invés de passivos. Seminário Engenharia Web - Benedilson Lima 49
  • 50. Bibliografia Seminário Engenharia Web - Benedilson Lima 50 PRESSMAN, Roger S. Engenharia de Software, 6ª edição, ed. Makron Books. PRESSMAN, Roger S; LOWE, David. Engenharia Web, ed. Ltc.