Engenharia web seminário

1,142 views

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,142
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
36
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Engenharia web seminário

  1. 1. EngenhariaWEBBenedilson Lima
  2. 2. IntroduçãoO 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. 3. Discussões introdutóriasO 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 hardwarecliente e servidor, SO, redes e navegadores, surgeum sistema baseado na Web.Seminário Engenharia Web - Benedilson Lima 3
  4. 4. Discussões introdutóriasO WebApps são realmente softwares de computador?O No sentido de que são uma coleção de instruçõesexecutáveis e dados que oferecem informações efuncionalidades para usuários finais.Seminário Engenharia Web - Benedilson Lima 4
  5. 5. Os atributos a seguir são encontradosna grande maioria das WebApps:O Intensidade da rede: Cada WebApp reside em uma rede edeve servir às necessidades de uma comunidadediversificada 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 WebApppoderá variar por ordens de grandeza de um dia para o outro;O Desempenho: Se um usuário de WebApp tiver que esperarmuito 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çãocontinua – Urgência – Segurança – EstéticaSeminário Engenharia Web - Benedilson Lima 5
  6. 6. Então você deseja montar uma WebApp?O Logicamente, você poderia utilizar umacombinação de informalidade, urgência, intuição earte (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 oumelhorar.O Se todas as coisas correrem bem, você e seuscolegas serão heróis e nascerá uma WebAppsignificativa.Seminário Engenharia Web - Benedilson Lima 6
  7. 7. O que é Engenharia Web?O É uma alternativa que se opõem a técnicada escola antiga – uma que reduz (masnão elimina) o risco e tem umaprobabilidade mais alta de sucessoquando WebApps de qualidade industrialprecisam ser montadas. Essa alternativachama-se: engenharia Web (WebE).O A WebE propõe um arcabouço ágil,porém disciplinado para a montagem deWebApps de qualidade industrial.Seminário Engenharia Web - Benedilson Lima 7
  8. 8. Engenharia Web não se tratade ferramentas e tecnologia?O São muito importantes, mas sófuncionarão bem se forem usadas dentrodo contexto de um arcabouço ágil paraengenharia Web e em conjunto commétodos comprovados para entender oproblema, projetar uma solução e testa-lacompletamente.Seminário Engenharia Web - Benedilson Lima 8
  9. 9. Processos de Engenharia WebSeminário Engenharia Web - Benedilson Lima 9
  10. 10. ComunicaçãoEntre os princípios mais fundamentais daengenharia de software está: entenda oproblema antes de começar a resolvê-lo ecertifique-se de que a solução que vocêconcebe é aquela que as pessoasrealmente desejam. É razoável sugerir queesse princípio também deva se tornar umpilar da engenharia Web.Seminário Engenharia Web - Benedilson Lima 10
  11. 11. A atividade de comunicaçãoO É o local onde os engenheiros Web e osinteressados se engajam em uma série de açõesde WebE que:O Formulação;O Elicitação;O Negociação.Seminário Engenharia Web - Benedilson Lima 11
  12. 12. PlanejamentoO Se o incremento da WebApp for simples,o planejamento exigirá muito poucotempo;O Se por outro lado, o incremento forcomplexo – conteúdo, funcionalidade,restrições e desempenho, o planejamentoexigirá maior esforço e abrangerá cadauma das ações e tarefas discutidas aseguir...Seminário Engenharia Web - Benedilson Lima 12
  13. 13. A equipe da Engenharia WebO 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 pelosdesenvolvedores/provedores.O Elemento de ligação.O Engenheiro da Web:O Envolvido com atividades durante o desenvolvimentode uma WebApp.Seminário Engenharia Web - Benedilson Lima 13
  14. 14. A equipe da Engenharia WebO Especialista do domínio de negócio:O Deve ser capaz de responder a todas as questõesrelativas às metas, aos objetivos e aos requisitos denegó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 realizadaspor engenheiros da Web e especialista de suporte.Seminário Engenharia Web - Benedilson Lima 14
  15. 15. A diferença organizacional entre odesenvolvimento terceirizado e o internoSeminário Engenharia Web - Benedilson Lima 15
  16. 16. Como avaliamos os riscos?Riscos Probabilidade ImpactoPessoasPouca experiência com XML na equipe 80% 3Interessados não cooperativos 60% 2Gerente "sênior" pode mudar no meio do caminho 40% 1ProdutoConteúdo informativo pode estar desatualizado 50% 2Algoritmos podem não estar definidos adequadamente 80% 3Segurança para WebApp mais difícil do que o esperado 80% 3Integração do banco de dados mais difícil do que o esperado 40% 3Capacidade de definição de espaço mais difícil do que o esperado 70% 3ProcessoNão há ênfase suficiente em comunicação 60% 2Muitas tarefas de análise (muito tempo gasto) 30% 1Não há ênfase suficiente no projeto de navegação 40% 2... ... ...Seminário Engenharia Web - Benedilson Lima 16
  17. 17. CronogramaSeminário Engenharia Web - Benedilson Lima 17
  18. 18. Estimando esforço e tempoConteúdo e funções Análise Projeto Codificação Teste Entrega Feedback TotalParedes, portas ejanelas1 2 2 2 0,5 0,25 7,75Sensores 0,5 1,5 1 1 0,25 0,25 4,5Especificar e desenharparedes, portas ejanelas1,25 3 3 3 1 0,25 11,5Calcular o tamanho docômodo0,5 1 2 1 0,5 0,25 5,25Salvar/recuperarespaço nomeado0 1 1 0,5 0,5 0,25 3,25Atualizar/excluir espaçonomeado0 1 1 0,5 0,5 0,25 3,25imprimir espaçonomeado0 1 1 0,5 0,5 0,25 3,25Recomendar hardwarede segurança0,5 3 2 2 0,5 0,25 8,25Especificar hardwarede segurança0,5 2 2 3 0,5 0,25 8,25Totais 4,25 15,5 15 13,5 4,75 2,25 55,25Seminário Engenharia Web - Benedilson Lima 18
  19. 19. Modelagem de análise paraaplicações da WebO Temos observado que WebApps têm umimediatismo e uma volatilidade que vãocontra a modelagem detalhada tanto nonível de análise quanto de projeto.Seminário Engenharia Web - Benedilson Lima 19
  20. 20. Essa modelagem de análise deveexistir apenas se....O A WebApp a ser construída é grande e/oucomplexa;O O número de interessados é grande;O O número de engenheiros da Web e outroscolaboradores é grande;O As metas e os objetivos (durante a formulação) daWebApp vão afetar os fundamentos básicos donegócio;O O sucesso da WebApp terá um forte efeito nosucesso do negócio.Seminário Engenharia Web - Benedilson Lima 20
  21. 21. Casos de usoO Casos de uso são ocatalisador de todasas atividades deanálise emodelagem derequisitosHierarquia de usuáriosSeminário Engenharia Web - Benedilson Lima 21
  22. 22. Modelos de análiseAnálise de conteúdo:O Identifica todo oespectro deconteúdo a serfornecido pelaWebApp.Análise de interação:O Descreve o modopelo qual o usuáriointerage com aWebApp.Seminário Engenharia Web - Benedilson Lima 22
  23. 23. Modelos de análiseAnálise funcional:O Operações queserão aplicadas aoconteúdo daWebApp;O Funções deprocessamentoindependentes doconteúdo.Análise de configuração:O Descreve o ambientee a infra-estrutura nosquais a WebAppreside.Seminário Engenharia Web - Benedilson Lima 23
  24. 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. 25. Projeto de interfaceO 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. 26. Projeto de estéticaO 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, usode gráficos e decisões estéticasrelacionadas.Seminário Engenharia Web - Benedilson Lima 26
  27. 27. Projeto de conteúdoO Define o leiaute, a estrutura e o esboço para todo oconteúdo apresentado como parte da WebApp;O Estabelece os relacionamentos entre objetos deconteúdo.Seminário Engenharia Web - Benedilson Lima 27
  28. 28. Projeto de conteúdo começa com a representação dos objetosde conteúdo, sua associações e relacionamentos.Seminário Engenharia Web - Benedilson Lima 28
  29. 29. Projeto de arquiteturaO Identifica a estrutura global de hipermídia de WebApp;O Estilos arquiteturais de conteúdo incluem estrutura linear, emmalha, hierárquica e em rede.Seminário Engenharia Web - Benedilson Lima 29
  30. 30. Projeto de arquiteturaO Identifica a estrutura global de hipermídia de WebApp;O Estilos arquiteturais de conteúdo incluem estrutura linear, emmalha, hierárquica e em rede.Seminário Engenharia Web - Benedilson Lima 30
  31. 31. Arquitetura da WebAppProjeto de arquitetura em três camadas;Desacopla a interfase da navegação e docomportamento da aplicação;Simplicidade a implementação e reuso aumentado.Seminário Engenharia Web - Benedilson Lima 31
  32. 32. Projeto de componenteO Desenvolve a lógica de processamento detalhadonecessário para implementar componentesfuncionais de WebApps.O Fornecem acesso e consulta a banco de dadossofisticados;O Estabelecem interfaces de dados a sistemasexterno à empresa.Seminário Engenharia Web - Benedilson Lima 32
  33. 33. Padrões de projeto de WebAppO Englobam padrões de projeto genéricos que seaplicam a todos os tipos de software e padrões dehipermí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. 34. Método de Projeto de HipermídiaOrientado a ObjetosO Object-Oriented Hypermedia Design Method;O É um de vários métodos propostos paraprojetos 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. 35. Resumo do método OOHDMSeminário Engenharia Web - Benedilson Lima 35
  36. 36. Esquema conceitual parcialSeminário Engenharia Web - Benedilson Lima 36
  37. 37. Construção e ImplantaçãoSeminário Engenharia Web - Benedilson Lima 37
  38. 38. ConstruçãoO 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 aplicadaspara construir a WebApp que foi modelada;O Quando o incremento da WebApp tiver sidoconstruído, uma série de testes rápidos é realizadapara garantir que os erros no projeto sejamdescobertos.Seminário Engenharia Web - Benedilson Lima 38
  39. 39. SeleçãoO Envolve a identificação de componentesrelevantes preexistentes, que podem serreutilizados dentro do projeto proposto;O Princípios:O Levar em consideração as restrições do ambientetécnico;O Combinar os componentes com os ambientes deinformação e funcionais;O Considerar as habilidades e o conhecimento dosdesenvolvedores e prováveis mantenedores.Seminário Engenharia Web - Benedilson Lima 39
  40. 40. CodificaçãoO Cobre a adaptação de componentesexistentes ou a criação de novoscomponentes;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 usandouma representação de projetointermediária do componente a serconstruído.Seminário Engenharia Web - Benedilson Lima 40
  41. 41. PrincípiosO Escrever código que seja auto documentável;O Restringir seus algoritmos seguindo práticas daprogramação estruturada;O Manter a lógica condicional o mais simplespossível e garantir que possa ser testada.Seminário Engenharia Web - Benedilson Lima 41
  42. 42. Gerenciamento de conteúdoO Criação, migração e estruturação doconteúdo;O Princípios:O Selecionar estruturas de dados queatendam às necessidades do projeto;O Garantir a coerência nos formatos eestruturas de dados;O Evitar confiar em formatos de dadosproprietários.Seminário Engenharia Web - Benedilson Lima 42
  43. 43. Autoria de páginasO A integração do conteúdo bruto com oprojeto gráfico e o mapeamento doconteúdo nas telas e páginas.O Princípios:O Considerar continuamente as questões deusabilidade;O Entender como seus usuários reagirão, enão como você quer que eles reajam.Seminário Engenharia Web - Benedilson Lima 43
  44. 44. IntegraçãoO Vinculo do código, conteúdo e apresentaçãonos componentes finais a serem liberados;O Princípios:O Procurar divergências ou inconsistências nainterface do componentes;O Ter oportunidade de identificar componentesque precisam de refatoração.Seminário Engenharia Web - Benedilson Lima 44
  45. 45. RefatoraçãoO É uma ação interativa para “polir” oscomponentes implantados a fim demelhorar sua estrutura e esclarecer eremover código redundante;O Princípios:O Refatore com frequência, e em pequenasetapas, quando surgir a oportunidade;O Garantir que a implementação comunica oprojeto de maneira óbvia.Seminário Engenharia Web - Benedilson Lima 45
  46. 46. TesteO Verificação de que os diversoscomponentes e objetos estão corretos;O Princípios:O Realizar uma revisão exaustiva;O Realizar testes unitários e corrigir os errosencontrados;O Selecionar testes que mais provavelmentelocalizarão erros, em vez se oculta-los.Seminário Engenharia Web - Benedilson Lima 46
  47. 47. ImplantaçãoO A WebApp é configurada para o seuambiente 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 anecessidade.Seminário Engenharia Web - Benedilson Lima 47
  48. 48. Ferramentas e tecnologias para WebAppsO Linguagens de descrição de conteúdo emodelagem: HTML, VRML e XML;O Linguagens de programação: Java;O Recursos de desenvolvimento baseadosem componentes: CORBA, COM,ActiveX, .NET;O Navegadores, ferramentas de multimídia,conectividade de banco de dados,segurança, servidores, gerenciamento eanálise de sites.Seminário Engenharia Web - Benedilson Lima 48
  49. 49. Tendências futurasO É provável que o conteúdo e funcionalidadeda Web evolua à medida que aparecem maise mais WebApps mash-up;O O acesso se tornará onipresente, abrindooportunidades para remessa de conteúdocom valor em tempo real;O A Web 2.0 trata da criação de umaexperiência Web mais comprometida,interativa e coletiva, onde todos os usuáriossão capazes de serem participantes ativos,ao invés de passivos.Seminário Engenharia Web - Benedilson Lima 49
  50. 50. BibliografiaSeminário Engenharia Web - Benedilson Lima 50PRESSMAN, Roger S. Engenharia de Software, 6ª edição, ed. Makron Books.PRESSMAN, Roger S; LOWE, David. Engenharia Web, ed. Ltc.

×