Escolar Documentos
Profissional Documentos
Cultura Documentos
CURSO
DISCIPLINA
TEMA
Engenharia WEB
TÍTULO
Componentes RA
Ana Pris Santos 1822394
São Paulo
Out./2020
RESUMO
Este trabalho tem como objetivo conceber uma breve análise de uma das muitas
particularidades da Engenharia WEB, as Melhores Práticas de Segurança para WEB e
destinado ao Projeto Profissional Interdisciplinar da Faculdade Sumaré.
To 2
SUMÁRIO
1. INTRODUÇÃO.............................................................................................................04
2. OBJETIVO.....................................................................................................................05
3. METODOLOGIA..........................................................................................................04
4. FUNDAMENTACAO TEÓRICA..................................................................................04
5. RESULTADOS DA PESQUISA..................................................................................06
6.CONSIDERAÇÕES FINAIS.........................................................................................07
7.REFERÊNCIAS..............................................................................................................08
To 3
1. INTRODUÇÃO
To 4
sendo construídas sem considerar os princípios da engenharia de software,
descaracterizando assim uma solução eficaz e eficiente, que atenda as estratégias de
negócios e supram as expectativas dos usuários, quanto que no software tradicional, é
necessário a compreensão completa do problema para que se tenha uma solução
eficaz, como erros de conteúdo, por exemplo, que quando não identificados e
solucionados antes mesmo do processo de produção podem trazer falhas aos usuários
e, consequentemente, seu descrédito. (Breve, 2002, p. 4) diz que conforme seu escopo
e complexidade foram aumentando, pequenos serviços foram cedendo espaço para
grandes aplicativos, e com isso, a complexidade dos projetos e as dificuldades de
desenvolvimento, manutenção e gerenciamento; afirmando também que a falta de
planejamento, projetos mal feitos e falta de gerenciamento, no qual 84% dos sistemas
entregues não atendem às necessidades do cliente, 79% dos projetos são entregues
com atrasos e 63% tem custo maior que o orçamento previsto, assim como mais de
50% dos sistemas prontos são de baixa qualidade e faltam funcionalidades
necessárias, assim desenvolvedores e usuários, começaram a se preocupar com a
maneira como os sistemas Web complexos estão sendo criados, bem como seus níveis
de desempenho, qualidade e integridade, surgindo assim a engenharia para a web.
To 5
2. OBJETIVOS
To 6
3. METODOLOGIA
A metodologia utilizada neste Projeto (PPI) foi realizar pesquisas bibliográficas a partir
de material já publicado com fontes científicas, cujos materiais (livros, artigos, iniciações
e internet) com base no tema Engenharia WEB foram utilizados para embasar o
propósito, visão e trabalho final.
No sentido amplo, foram consultadas mais fontes referenciais que estarão presentes na
bibliografia.
To 7
4. 4. FUNDAMENTAÇÃO TEÓRICA
Desenvolvimento de aplicação web está mais complexo, pois cada vez mais
estão integradas às estratégias das empresas, mas o processo de engenharia de
sistemas web não é tão disciplinado quanto à engenharia de software tradicional.
Quase todas as aplicações web ainda continuam sendo construídas de uma maneira ad
hoc, não sendo considerados os princípios fundamentais da engenharia de software
(ALTARAWNEH &SHIEK, 2008), os sistemas web precisam passar por um processo de
engenharia para produzir uma solução eficaz e eficiente que atenda as estratégias de
negócios e supram as expectativas dos usuários, já nos outros tipos de softwares é
preciso o entendimento completo do problema para que se tenha uma solução eficaz. É
fundamental que os erros de conteúdo sejam identificados e solucionados antes do
software entrar em produção, pois com um grande volume de aplicação web faz com
que os usuários não utilizem mais essa aplicação que já apresentou falhas.
E por isso (PRESSMAN, 1998) discute a ideia de juntar a Engenharia Software e
Engenharia Web, da seguinte maneira
Qualquer produto ou sistema que seja importante tem que ter a engenharia e
antes de começar a produzi-los, o melhor é entender o problema e criar solução
funcional para assim poder testá-la.
Com isso podemos analisar ou retirar é que os princípios, os conceitos, e os
métodos da engenharia de software podem ser aplicados no processo do
desenvolvimento web, porém tem uma técnica diferenciada quando é usada no
desenvolvimento de sistemas software convencionais. (PRESSMAN, 1998, p. 1)
To 8
4.2 Engenharia de Aplicações WEB
To 9
se referenciavam, por onde, através de um, acessava-se outro com uma sistemática
bem limitada.
Segundo Gabrieli et al. (2007), nos termos evolucionários dos websites e das
aplicações web, existem quatro gerações de classificações, sendo a primeira como
lineares, simples e funcionais, privilegiando apenas o conteúdo e não a forma,
apresentando sequência de textos e imagens, intermediada por retornos de linhas e
outros separadores de fluxos de dados, como marcadores e réguas horizontais e
limitadas por conexões lentas e monitores monocromáticos; a segunda como websites
de primeira geração pela substituição de palavras por ícones, inclusão de imagens em
fundos, botões com chanfros e títulos textuais por banners, caracterizando-se a forma
hierárquica por meio de menus de navegação com vários níveis; a terceira sendo o
conteúdo somado com a forma como era entregue ao usuário, preocupando-se
simultaneamente com funcionalidade e estética, leiautes precisos, harmonia entre as
cores, tipografias adequadas, uso corretos de gráficos e tempo de carregamento e
renderização de cada página acessada; e pela quarta, aplicações baseadas em bancos
de dados e vastos conteúdos dinâmicos, próximos ao conceito de Sistema de
Informação Web, que evoluiu com as características da terceira geração.
(Breve, 2002) cita três características que podem ser encontradas na maioria
dos aplicativos para web: sendo por rede intensiva, que utilizam recursos de rede por
To 10
natureza e atendem as necessidades de diversas comunidades de clientes, disponíveis
na internet e comunicável ao mundo todo, intranet no meio organizacional ou extranet
pela comunicação entre redes; os dirigidos a conteúdos, tendo como função primária o
uso da hipermídia para apresentação de textos, gráficos e vídeos para os usuários; e os
aplicativos de evolução contínua, que contrariamente aos convencionais, evoluem por
versões continuamente planejadas e lançadas em determinados intervalos de tempo.
To 11
de seu domínio
Acesso a base que permitem os usuários realizarem extrações e, ou, registrarem
de dados informações
Armazém de que amplia a característica de base de dados em grande escala
dados
Fonte: base de dados (Beder, 2012).
Confecção: Os autores.
To 12
4.3 MODELOS DE PROCESSOS (*)
Quando se desenvolve uma aplicação web tem sempre que considerar dois
grandes fatores que são habilidade de gerenciar a informação e de escalar a estrutura
da aplicação [Ginige & Murugeram, 001| b].
To 13
definir uma arquitetura que tenha a capacidade de evoluir rapidamente. Pois se o
problema for resolvido com rapidez pode prejudicar a capacidade de evolução da
aplicação conforme for passando o tempo.
Por não existir um acordo sobre o modelo geral de ciclo de vida da aplicação
web o ponto comum é ser evolutivo e incremental, algumas atividades são utilizadas na
hora do desenvolvimento da aplicação: analise de requisitos, projeto, evolução ou
manutenção entre outras.
Analise de Requisitos:
Conceitualização:
Prototipação:
To 15
Para se ter uma avaliação previa são estregues algumas versões para os
clientes. Prototipação é enfatizada no contexto da web e é construída numa arquitetura.
Uma coleção de páginas são efetuados manualmente tende amostras dos conteúdos
da aplicação e da estética, e igual do desejo da aparência e do comportamento.
Projeto:
To 16
Apresentação: Pode ser afetado a maneira pelo qual o conteúdo da aplicação e
os comandos de navegação que são informados para os usuários [Fraenali, 1999].
Uma interface bem planejada melhora a relação do usuário em relação aos serviços
que a aplicação oferece.
Implementação:
Evolução e manutenção:
To 17
1 – Entender todas as funções do sistema e o ambiente operacional, com os requisitos
e objetivos do sistema.
A equipe:
Provedor de conteúdo:
Editor web: É responsável para incluir o conteúdo e age como ligação entre a equipe
técnica e os desenvolvedores e provedores.
Engenheiro de web:
Especialista de suporte:
To 19
Administrador:
Atributos de qualidade:
To 20
4.4 PLANEJAMENTO
To 21
Na identificação dos riscos, (PRESSMAN & LOWE, 2009) orienta a solicitar a
cada membro da equipe fazer uma lista de riscos, que será organizado nas seguintes
categorias:
Risco Descrição
Confeccção: Os autores
A sugestão de Pressman & Lowe (2009) é que seja feita uma tabela de riscos
em que cada risco seja calculado por meio do seguinte produto: probabilidade x
impacto. Desta forma, haverá uma tabela com riscos de alta probabilidade e alto
impacto no alto e riscos de baixa prioridade de alto impacto na parte de baixo, para que
após avaliada, a equipe defina a linha de corte estabelecendo quais riscos receberão
consideração adicional.
To 22
Plano de contingência
4.4.2 ESTIMAÇÃO
E então, duas técnicas para a estimativa são apresentadas por Pressman &
Lowe (2009), são elas: Estimativa baseada em cenário, ou seja, examinar cenários de
uso a ser construído e Estimativa baseada em tabela produto-processo, que utiliza uma
tabela de produto-processo e as principais tarefas são listadas para que os membros da
equipe estimem a quantidade de esforço (em homens-dias) necessária para
desenvolver para cada objeto de conteúdo e funcionalidade.
4.4.3 ESCALONAMENTO
To 23
essas tarefas críticas atrasarem, a data de término do incremento da aplicação Web
será colocada em risco.
4.4.4 MONITORAÇÃO
Para Pressman & Lowe (2009), no caso de projetos maiores, há três técnicas
que podem ser usadas no acompanhamento do progresso de um incremento: A
primeira técnica consiste em realizar uma enquete com a equipe para determinar quais
atividades do Escopo de Processo foram finalizadas, a segunda técnica determina
quantos cenários do usuário foram implementados e quantos (para determinado
incremento) ainda precisam ser implementados e, por fim, se a equipe de Engenharia
Web tiver gasto tempo para construir um cronograma de trabalho detalhado para o
incremento, o progresso pode ser acompanhado determinando-se quantas tarefas de
trabalho foram finalizadas, quantos produtos de trabalho foram produzidos e revisados,
e quão confiantes os membros da equipe estão na entrega na data de término do
incremento.
To 24
Para (BEDER, 2012, p.66), em geral, um bom projeto deve guiar a construção
da aplicação web e garantir que as soluções adotadas maximizem alguns requisitos de
qualidade, tais como: simplicidade, robustez e usabilidade. Segundo (BREVE, 2002) as
características de curto prazo de desenvolvimento e rápida evolução de sistemas para
a web forçam os desenvolvedores a realizarem um projeto que resolva os problemas
imediatos e que, ao mesmo tempo, crie uma arquitetura que comporte uma evolução
rápida. O problema, obviamente, é que na tentativa de resolver apenas o problema
imediato, acaba-se comprometendo a capacidade evolutiva do aplicativo. Há quatro
elementos técnicos a serem considerados:
Confecção: Os autores.
To 25
4.5.2 Projetos de Arquitetura
Para (BREVE, 2002, p. 13) o Projeto de Arquitetura para sistemas para a Web tem foco
na definição da estrutura hipermídia do aplicativo, na aplicação de padrões e na
construção de modelos (templates) para montar a estrutura e permitir reuso. E uma
atividade paralela chamada de Projeto de Conteúdo, deriva a estrutura geral e o esboço
detalhado do conteúdo que será apresentado. E nesta etapa é definida a estrutura que
será utilizada, ou seja, a maneira como o conteúdo será apresentado ao usuário, e
como a navegação será realizada.
Tabela
Estrutura Descrição
Estrutura Hierárquica Sendo a mais comum, nela o usuário pode navegar por toda a
hierarquia, não apenas na vertical, mas também na horizontal. Isto
é feito através de links que levam a outra parte da estrutura.
Confecção: Os autores.
To 26
Segundo (BREVE, 2002, p. 15), uma vez que a arquitetura está criada e os
componentes (páginas, scripts, applets, etc.) já foram identificados, é hora do projetista
definir caminhos que permitam ao usuário ter acesso aos conteúdos e aos serviços.
Para tanto o projetista deve: identificar as semânticas de navegação para diferentes
usuários e definir os mecanismos para realizar a navegação. O objetivo desta fase é
criar uma unidade semântica de navegação (semantic navigation unit – SNU) para cada
objetivo associado a cada tipo de usuário. A estrutura do SNU é composta de um
conjunto de subestruturas navegáveis que podemos chamar de caminhos (ways of
navigating – WoN).
Para (PRESSMAN, 2006), testes caixas brancas são projetados para um exame
rigoroso do detalhe procedimental. Caminhos lógicos internos ao software e
colaborações entre componentes são testados, definindo-se casos de testes que
exercitam conjuntos específicos de condições e/ou ciclos. Testes caixas-pretas
referem-se a testes que são conduzidos na interface do software. Um teste caixa-preta
examina algum aspecto fundamental do sistema, pouco se preocupando com a
estrutura interna do software (PRESSMAN, 2006).
Delamaro, Chaim & Vincenzi (2010) sugerem a técnica de teste de caixa cinza
para os testes de requisitos não funcionais. Assim como o teste caixa preta, este teste
verifica se a saída obtida é a saída esperada, porém, nesse caso, o testador utiliza seu
To 28
conhecimento sobre as estruturas de dados, os algoritmos utilizados, o ambiente de
execução e arquitetura da aplicação para desenvolver os testes.
5. RESULTADOS DA PESQUISA
6. CONSIDERAÇÕES FINAIS
To 29
7. REFERÊNCIAS
Acesso em:
Acesso em:
Acesso em:
Beder, Delano Medeiros. 2017. Engenharia Web: uma abordagem sistemática para o
desenvolvimento de aplicações web
To 31