Projeto Arquitetural

    projarqu.gif (9599 bytes)

Resumo da seção

Projeto de uma arquitetura

Decomposição do sistema: partições e camadas

22-6.gif (4794 bytes)

Arquiteturas em n camadas

22-1.gif (4706 bytes)

22-2.gif (3773 bytes) 

Uso de UML para modelar a arquitetura

22-3.gif (2165 bytes)

22-4.gif (2911 bytes)

22-5.gif (8907 bytes)

Estruturas de controle

Opções de persistência

Escolha da forma básica de persistência

  Dados na memória Arquivos SGBDs
Persistência de dados Requer hardware especial Bom suporte Bom suporte
Custo de aquisição Custo do hardware especial Não há Pode ser caro
Custo total de posse Variável Variável Variável
Quantidade de dados Limitado pelo hardware Limitado pelo sostema operacional;
A memória limita files em cache
Essencialmente sem limite
Desempenho Muito rápido Rápido para acesso sequencial, certos acessos randômicos e para arquivos em cache Rápido
Estensibilidade Limitada Limitada Excelente
Acesso concorrente Locking de objetos Locking de arquivos Locking de objetos ou de registros;
Alguns SGBDs só têm locking de páginas
Recuperação de crash Shadow memory Arquivos de backup Bom suporte
Integridade Não há Não há Projetista pode especificar regras
Suporte a transações Não há Não há Transações curtas
Distribuição Não há Não há Às vezes
Linguagem de consulta Não há Parcial Poderosa
Segurança Não há Proteção simples do sistema operacional Pode ser simples ou sofisticado
Metadados Não há Não há Sim

Escolha do paradigma de SGBD

Determinação da estratégia de interação entre a aplicação e os dados

batch.gif (7180 bytes)

metamodel.gif (6495 bytes)

Reutilização: Frameworks e componentização

Resumo: Perguntas a fazer ao elaborar um projeto arquitetural

Sobre entidades externas ao sistema

Determinação de oportunidades para o reuso de software

Sobre a organização geral do sistema

Sobre a camada de interface

Sobre a camada de lógica da aplicação

Sobre a camada de dados persistentes

Sobre requisitos de desempenho

O que deve ser produzido?

Sobre a integração futura

Perguntas adicionais

Pergunta final

proj1-2 programa anterior próxima