Você está na página 1de 38

MÓDULO

Análise Orientada a Objetos


Engenharia Web
Roteiro
• Engenharia de Software
• Engenharia de Web
• Aplicações Web
• Modelo de Processo
• Métodos de Desenvolvimento

DAW4 2
Engenharia de Software
• Enfoque sistemático para o
desenvolvimento, operação, manutenção e
descontinuação do software (IEEE)
• Aplicação prática do conhecimento científico
no projeto e construção de programas e da
documentação requerida para desenvolver,
operar e manter esses programas (Boehm)
• Disciplina que aplica os princípios de
engenharia com o objetivo de produzir
software de alta qualidade a baixo custo
(Bauer) DAW4 3
Objetivo da Engenharia
de Software
• Produzir software de alta qualidade a baixo custo
• Usando Modelos de Processo de Software
– Conjunto de atividades, métodos, técnicas e ferramentas
que garantem que o software seja produzido com alta
qualidade e baixo custo

DAW4 4
Aplicações Web
Atributos da aplicação • Evolução contínua
[Pressman 2001] – ... e rápida (horas?)
• Uso intensivo da rede – Estrutura e funcionalidade
– Internet, intranet e extranet – Informação
– Diversos e diferentes
grupos de usuários

• Direcionadas a conteúdo
– Hipermídia

DAW4 5
Aplicações Web
Atributos do processo • Estética
[Pressman 2001] – Sucesso da aplicação
• Características que
direcionam o
desenvolvimento

• Urgência
– Adaptação dos métodos

• Segurança
– Aplicação e infraestrutura

DAW4 6
Aplicações Web
Atributos de qualidade • ISO/IEC 9126
[Pressman 2001] – Software product
• Usabilidade evaluation – Quality
characteristics and
• Funcionalidade guidelines for their use
• Confiabilidade – Portabilidade
• Eficiência
• Manutenibilidade • Qualidade de Aplicações
Web
[Rocha et al. 2001]
• Base para avaliar a
qualidade de aplicações
Web
DAW4 7
Aplicações Web
Tecnologias [Pressman • Padrões
2001] – W3C
• Desenvolvimento (sopa de letrinhas!)
baseado em – Web Semântica
componentes • http://www.w3.org/
– Construir menos e reusar 2001/sw/
mais – Acessibilidade
– Substituir um componente • http://www.w3.org/
por outro WAI/
– Internacionalização
• Segurança • http://www.w3.org/
– Permitir apenas acesso International/
autorizado

DAW4 8
Engenharia de Web
• A aplicação das práticas • Os princípios, conceitos e
de engenharia no métodos de engenharia
desenvolvimento de
podem ser aplicados ao
Aplicações Web
desenvolvimento de
Aplicações Web?
• Objetivo: produzir
Aplicações Web de alta
qualidade a baixo custo • Por que a Engenharia de
Web é importante?
• Abordagem “ad hoc” para
desenvolvimento de
Aplicações Web

DAW4 9
Engenharia Web

• Conjunto de abordagens sistemáticas, disciplinadas e


quantificáveis para o desenvolvimento Web
– Visando a qualidade com uso de conceitos de engenharia
• Englobando
– Análise
– Desenvolvimento
– Operação e
– Manutenção

DAW4 10
Engenharia Web

• Multidisciplinaridade
• Mecanismos para gerenciamento de conteúdo
– Dinamicidade de conteúdo
• integração de componentes
• Independência de localização de serviços
• Independência de dispositivos
– Cada vez mais a Web está sendo acessada por dispositivos
móveis

DAW4 11
Principais Atividades
• Definição do problema, motivação, propósitos e audiência
• Planejamento e gerência do projeto - estudo de viabilidade
• Análise e Especificação de Requisitos
• Design
– Estrutura Organizacional (Conceitual)
– Navegação
– Conteúdo
– Interface
– Funcional
• Implementação
• Testes
• Instalação
• Evolução e Suporte (manutenção)

DAW4 12
Projeto e Análise Web
• Verificação antes da codificação
– Requisitos
– Comportamento do sistema

– Analogia:
Projeto Arquitetural X Análise e Projeto de Software

DAW4 13
Design Web
• Estrutura Organizacional (Conceitual)
– Visão global do site (conceitos envolvidos)
• Navegação
– Visão de navegação (comportamental)
• Conteúdo
– Visão e modelagemdas informações
• Interface
– Organização, interação e apresentação
• Funcional
– Arquitetura dos programas, projeto de banco de dados,
plataforma

DAW4 14
Estrutura Organizacional
Qual o objetivo da
organização e como
o site ajuda em sua
realização?

Exemplo: Venda de
produtos on-line

Destaque a
produtos

Facilidade para
acesso a
departamentos

DAW4 15
Navegação
• Como chegar a determinados conteúdos?
– Caminhos percorridos
• Nós e ligações
– Podem ser múltiplos
– Atalhos

DAW4 16
Conteúdo
• O que está acessível?
– Quais informações e serviços constam no site
• Web Writing
– Diretrizes para conteúdos
– Distinções próprias da Web
– Nível de profundidade do conteúdo deve acompanhar a
navegação
No exemplo:

Descrição do
produto com Preço

Imagem ilustrativa

DAW4 17
Design da Interface
• Apresentação
– Determinar os aspectos estéticos e visuais
– Diagramação
– Uso de imagens e ícones
– Escolha das cores, tipo de fontes, plano de fundo, ...
• Interação
– Determinar como os serviços podem ser utilizados
– Menus, cliques, botões e ícones

DAW4 18
Separação da Interface

• Importante para Web


– Facilita a compreensão dos artefatos, adaptação e evolução
da interface
• Uso de Folha de Estilos em Cascata
– Cascading Style Sheets (CSS)
– Possibilidade maior facilidade para padronizar estilos com
classes

DAW4 19
Estrutura Funcional
• O que está por traz do funcionamento do site
– Envolvendo tecnologias computacionais
• Servidor e aplicações base
• Rede
• Processamento
• A Web hoje
– Cada vez mais tem disponibilizado aplicações
funcionalmente complexas
– Acesso a grandes bases de dados
– Aplicações robustas que suportam milhões de acessos

DAW4 20
Questões que devem ser
vistas em um projeto Web
• Características próprias do desenvolvimento
Web
– Abrangência
• Usuários dos mais variados perfis
• E de diferentes localizações geográficas
– Colaboração
• Tanto síncrona como assíncrona
– Aplicações cada vez mais complexas
• Principalmente em relação à interação, que deve ser
simples e usável
DAW4 21
Modelagem Web

• Uma forma de representar o conhecimento


– base para a implementação
• Métodos e linguagens são propostos
– WebML -Web Modeling Language
– UWE - UML-based Web Engineering
– W2000
– OOHDM -Object-Oriented Hypermedia Design Method
• Característica comum
– Separação em visões,

DAW4 22
Desafios na modelagem
para Web
• Deficiências em relação a suporte ferramental
– Integração com a modelagem
– Transformação entre modelos
– Flexibilidade para adaptação ao modo de trabalho das
organizações
• Dificuldades de modelar
– Interação por eventos
– Gerenciamento de mensagens
– Controle do navegador
• Aplicações cada vez mais complexas
• Muitas diretrizes e padrões para qualidade
– Boas práticas para acessibilidade e usabilidade

DAW4 23
Desafios na modelagem
para Web
• Como apoiar efetivamente o uso de boas práticas nos
projetos?
– Falta de uma ligação direta para a incorporação com
elementos e arquiteturas que as preveem
– Ou mesmo estruturas que indicam como e quando usar
diretrizes
– Algumas boas práticas envolvem subjetividade
• Difícil a realização de inferências computacionais

DAW4 24
Conclusões

• A Engenharia Web é uma área desafiadora,


cheia de riscos e complexa
– Mas cheia de bons desafios e oportunidades
• Abre novas áreas de pesquisa, novos ramos
e promessas de desenvolvimentos
– Existem vários modelos para o desenvolvimento
Web
• O melhor é aquele que melhor se ajusta ao projeto,
desenvolvedores e organização

DAW4 25
Modelo de processo
• Pressman [2001]

DAW4 26
Modelo de processo
• Lowe & Eklund [2002]

DAW4 27
Levantamento
• Práticas de Resultados
desenvolvimento • Não existe uma
Web e Multimídia abordagem uniforme
na Irlanda
[Barry & Lang 2001]
• Modelos citados na
literatura não são
• 1.000 empresas utilizados
98 respostas válidas
• 100 empresas
Conclusão
(multimídia)
15 respostas válidas • Novas técnicas são
necessárias
DAW4 28
Levantamento
Metodologias

Metodologias adotadas para desenvolvimento de aplicações multimídia

DAW4 29
Levantamento
Desenvolver aplicações multimídia
Intenções
futuras

Incluir dados multimídia nos sistemas de informação

DAW4 30
Métodos
• HDM – Hypermedia Design Method
• RMM – Relationship Management Methodology
• EORM – Enhanced Object Relationship Methodology
• OOHDM – Object-Oriented Hypermedia Design Method
• SOHDM – Scenario-based Object-oriented Hypermedia Design
Methodology
• WSDM – Web Site Design Method
• RNA – Relationship-Navigational Analysis
• MacWeb Approach
• HFPM – Hypermedia Flexible Process Modeling
• OO/Pattern Approach
• Lowe-Hall’s Engineering Approach

[Koch 1999]
DAW4 31
Fases cobertas pelos
métodos

DAW4 32
Métodos (RE)
• WSDM – Web Site Design Method
• SOHDM – Scenario-based Object-oriented Hypermedia Design
Methodology
• RNA – Relationship-Navigational Analysis
• HFPM – Hypermedia Flexible Process Modeling
• OOHDM – Object-Oriented Hypermedia Design Method
• UWE – UML-based Web Engineering
• W2000 (UML+HDM)
• WebML – Web Modeling Language
• NDT – Navigational Development Techniques
• Design-driven Requirements Elicitation

[Escalona & Koch 2004]


DAW4 33
Técnicas
Captura
Definição
Validação

DAW4 34
Resumo
Pense!
• Porque a Engenharia de • Como alcançar o objetivo
Web é importante? de produzir Aplicações
Web de alta qualidade a
• Os princípios, conceitos e baixo custo?
métodos de engenharia
podem ser aplicados ao
desenvolvimento de
Aplicações Web?

DAW4 35
Referências
• Pressman, R. S. (2001) Software engineering: a practitioner’s
approach, 5th edition, McGraw-Hill
• Rocha, A. R. C., Maldonado, J. C., Weber, K. C. (2001) Qualidade de
Software: Teoria e Prática, Prentice Hall
• Lowe, D. B., Eklund, J. (2002) Client Needs and the Design Process in
Web Projects, Journal of Web Engineering, 1(1)
• Barry, C., Lang, M. A (2001) Survey of Multimedia and Web
Development Techniques and Methodology Usage, IEEE Multimedia
8(2) p. 52-60
• Koch, N. (1999) A Comparative Study of Methods for Hypermedia
Development, LMU Technical Report 9905
• Escalona, M. J., Koch, N. (2004) Requirements Engineering for Web
Applications – A Comparative Study, Journal of Web Engineering, 2(3)
p. 193-212
• Krishnamurthy, S. (2002). Cave or Community? An Empirical
Examination of 100 Mature Open Source Projects. First Monday, 7(6).

DAW4 36
Referências
• Thomas, C. (2003) A Survey of Quality Practices in Open Source
Software and the Linux Kernel. In Proceedings of 2003 Pacific
Northwest Software Quality Conference.
http://developer.osdl.org/craiger/pnsqc2003.pdf
• Reis, C. R. (2003) Caracterização de um Processo de Software para
Projetos de Software Livre. São Carlos, abril de 2003. 195p.
Dissertação (Mestrado). Instituto de Ciências Matemáticas e de
Computação, Universidade de São Paulo.
http://coweb.icmc.usp.br/coweb/mostra.php?ident=59.33.1
• The Bugzilla Team (2005). The Bugzilla Guide - 2.18 Release.
http://www.bugzilla.org/docs/2.18/pdf/Bugzilla-Guide.pdf
• Lohmeyer, J. (2004) Open-Source Bug Tracking with Bugzilla. Linux
Journal. http://www.linuxjournal.com/article/7216

DAW4 37
DAW4 38

Você também pode gostar