Arquitetura de Aplicações Web

14
Arquitetura de Arquitetura de Aplicações Web Aplicações Web Amanda Meincke Melo [email protected] RA: 007250 Disciplina: Engenharia de Software I Professora: Eliane Martins

description

Arquitetura de Aplicações Web. Disciplina: Engenharia de Software I Professora: Eliane Martins. Amanda Meincke Melo [email protected] RA: 007250. Roteiro. Visão Geral Sistemas e Aplicações Baseados na Web O Processo de Engenharia para Web Projeto Arquitetural Estudo de Caso Conclusão - PowerPoint PPT Presentation

Transcript of Arquitetura de Aplicações Web

Page 1: Arquitetura de Aplicações Web

Arquitetura de Aplicações WebArquitetura de Aplicações Web

Amanda Meincke Melo

[email protected]

RA: 007250

Disciplina: Engenharia de Software IProfessora: Eliane Martins

Page 2: Arquitetura de Aplicações Web

junho/2003 Engenharia de Software I - Arquitetura de Aplicações WEB

2

Roteiro

Visão Geral– Sistemas e Aplicações Baseados na Web– O Processo de Engenharia para Web

Projeto Arquitetural– Estudo de Caso

Conclusão Referências

Page 3: Arquitetura de Aplicações Web

junho/2003 Engenharia de Software I - Arquitetura de Aplicações WEB

3

Sistemas e Aplicações Baseados na Web

“Inclui uma mistura entre imprensa e desenvolvimento de software, entre mercado e computação, entre comunicações internas e relações externas, e entre arte e tecnologia.”

Thomas Powell

WebAppsWebApps

Page 4: Arquitetura de Aplicações Web

junho/2003 Engenharia de Software I - Arquitetura de Aplicações WEB

4

Sistemas e Aplicações Baseados na Web Exemplos:

– Web sites completos;– Funcionalidades especializadas dentro de

Web sites;– Aplicações de processamento de

informação (em: Internet, Intranet ou Extranet);

Page 5: Arquitetura de Aplicações Web

junho/2003 Engenharia de Software I - Arquitetura de Aplicações WEB

5

Sistemas e Aplicações Baseados na Web Atributos comuns à maioria das

WebApps:– Baseadas em rede;– Direcionadas a conteúdo;– Evolução contínua.

Influem na maneira como a Engenharia

para Web é conduzida

Influem na maneira como a Engenharia

para Web é conduzida

Page 6: Arquitetura de Aplicações Web

junho/2003 Engenharia de Software I - Arquitetura de Aplicações WEB

6

O Processo de Engenharia para Web

Formulação do Problema

Planejamento do Projeto

Análise deRequisitos

Projeto Arquitetural

Projeto Navegacional

Projeto de Interface

Implementação do Sistema

Testes (conteúdo, funcionalidade e compatibilidade)

Revisão de modelos de

análise e projeto

Revisão especializadade usabilidade

Dica: considerar as restrições impostas pelas características

das diferentes WebApps

Dica: considerar as restrições impostas pelas características

das diferentes WebApps

Arquitetura da Informação + Projeto da Interação

Page 7: Arquitetura de Aplicações Web

junho/2003 Engenharia de Software I - Arquitetura de Aplicações WEB

7

Projeto Arquitetural

Visão LógicaVisão de

Desenvolvimento

Visão de Processo Visão Física

Cenários

(Kruchten, 1995)

Decomposição OO

Requisitos funcionais: diagramas de classes, templates de classes

Decomposição OO

Requisitos funcionais: diagramas de classes, templates de classes

Decomposição de Processo

Requisitos não-funcionais: diagramas de componentes (UML)

Decomposição de Processo

Requisitos não-funcionais: diagramas de componentes (UML)

Orientada a Dados

Modelo E-R

Orientada a Dados

Modelo E-R

Decomposição em SubsistemasMódulos, Subsistemas, Camadas

Decomposição em SubsistemasMódulos, Subsistemas, Camadas

Mapeamento do Sw para o HwRequisitos não-funcionais

Mapeamento do Sw para o HwRequisitos não-funcionais

Page 8: Arquitetura de Aplicações Web

junho/2003 Engenharia de Software I - Arquitetura de Aplicações WEB

8

Visão de Desenvolvimento

Estilo Arquitetural: Camadas Aspecto Coberto: Decomposição Modular Sintaxe:

Especificidades:– cada camada deve ter responsabilidades bem definidas;– as interfaces entre as camadas devem ser bem projetadas;– subsistemas dependem apenas de subsistemas de um

mesmo nível ou de nível inferior.

Page 9: Arquitetura de Aplicações Web

junho/2003 Engenharia de Software I - Arquitetura de Aplicações WEB

9

Visão de Desenvolvimento

Estudo de Caso

Botões AndarBotões Elevador

Controle Central

Base de Dados

Física

Fonte: Arquitetura em Camadas (Sílvia e Camila)

Lógica de Negóciosda Aplicação Web

Controle Central

Base de Dados

Física

Interface Web Homem-Computador

Acesso à Dados

Através da Interface Web, é possível:- Visualizar interior dos elevadores;- Visualizar acesso aos elevadores;

- Verificar localização dos elevadores;- Operar controle central.

Através da Interface Web, é possível:- Visualizar interior dos elevadores;- Visualizar acesso aos elevadores;

- Verificar localização dos elevadores;- Operar controle central.

Aplicação Web

Page 10: Arquitetura de Aplicações Web

junho/2003 Engenharia de Software I - Arquitetura de Aplicações WEB

10

Visão Física

Aspecto Coberto: Estrutura Notação: Diagrama de deployment (UML) Sintaxe Utilizada:

Ferramenta: UMLStudio 6.2

nodo 1 nodo 2<<nome da conexão>>

Page 11: Arquitetura de Aplicações Web

junho/2003 Engenharia de Software I - Arquitetura de Aplicações WEB

11

Estudo de Caso: Visão Física

Page 12: Arquitetura de Aplicações Web

junho/2003 Engenharia de Software I - Arquitetura de Aplicações WEB

12

Conclusão

Complexidade do projeto varia de acordo com o tipo de aplicação;

O projeto de interface e da navegabilidade contam com métodos próprios;

Mais de uma visão são necessárias para expressar a arquitetura da aplicação;

Diferentes estilos arquiteturais podem ser adotados nas diferentes visões;

Os modelos apresentados são adequados para o problema apresentado (o estudo de caso proposto foi adaptado):– Aplicação Web (cliente-servidor);

Page 13: Arquitetura de Aplicações Web

junho/2003 Engenharia de Software I - Arquitetura de Aplicações WEB

13

Conclusão

A documentação de diferentes visões (abstrações) do sistema possibilita a reflexão, em tempo de projeto, sobre as soluções propostas para atender os diferentes requisitos do sistema computacional em desenvolvimento, sejam eles funcionais, sejam não funcionais;

A identificação das diferentes facetas do sistema (e sua documentação) permite a atribuição de tarefas bem definidas a diferentes equipes na fase de implementação do sistema.

Page 14: Arquitetura de Aplicações Web

junho/2003 Engenharia de Software I - Arquitetura de Aplicações WEB

14

ReferênciasBooch, G. (2001). “The architecture of Web applications”. [online]:

http://www-106.ibm.com/developerworks/library/it-booch_web/? dwzone=ibm

Conallen, Jim. (1998). “Modeling Web Application Design with UML.” [online]: http://www.rational.com/products/whitepapers/100462.jsp

Garrett, J. J. (2002). “A visual vocabulary for describing information architecture and interaction design”. [online]: http://www.jjg.net/ ia/visvocab/

Kruchten, P. (1995). “Architectural Blueprints - The “4+1” View”. Paper published in IEEE Software 12 (6) November 1995, pp. 42-50.

Pressaman, R. S. (2001). “Software Engineering - A practioner’s approach. 5th edition, McGraw-Hill, 860p.

Schwabe, D.; Rossi, G. (1998). “An Object Oriented Approach to Web-Based Application Design”, Theory and Practice of Object Systems 4(4), 1998. Wiley and Sons, New York, ISSN 1074-3224). [online]: http://www.inf.puc-rio.br/~schwabe/papers/TAPOSRevised.pdf