e a Visão 4+1
Adriano de Pinho Tavares
TODOS OS DIREITOS RESERVADOS - WWW.INSTITUTOGTI.COM.BR
Modelagem Arquitetural e
a Visão 4+1
TODOS OS DIREITOS RESERVADOS - WWW.INSTITUTOGTI.COM.BR
Modelos são Simplificações
Modelagem – Para quê
Objetivos da modelagem:
– Compreensão de sistemas complexos.
– Explorar e comparar as alternativas de desenho a um
baixo custo.
– Formar a fundação para implementação.
– Capturar requisitos com precisão.
TODOS OS DIREITOS RESERVADOS - WWW.INSTITUTOGTI.COM.BR
Modelagem – Vantagens
Vantagens da Modelagem:
– Prover a estrutura para a solução de problemas.
– Experimentação de múltiplas soluções.
– Produzir abstrações para tratar complexidade.
– Reduzir o tempo do projeto.
– Diminuir custos de desenvolvimento.
– Controlar riscos de erros.
Modelagem – Princípios
Os quatro princípios da modelagem:
1. Escolha o modelo mais adequado
2. Use níveis diferentes de precisão.
3. Procure conectar o modelo à realidade.
4. Nenhum modelo único é suficiente.
TODOS OS DIREITOS RESERVADOS - WWW.INSTITUTOGTI.COM.BR
Modelagem e a UML
Combina conceitos de várias
metodologias
Abrangente – Modelagem de negócios,
Requisitos, Análise, Desenho,
Implementação, Testes, Implantação.
Aplicável a qualquer domínio.
Independente de linguagem,
plataforma ou processo.
UML 2 - Objetivos
Linguagem consistente para:
– Visualização.
– Especificação.
– Construção.
TODOS OS DIREITOS RESERVADOS - WWW.INSTITUTOGTI.COM.BR
TODOS OS DIREITOS RESERVADOS - WWW.INSTITUTOGTI.COM.BR
UML – Principais Elementos
Semântica dos modelos (UML2 e MOF).
Linguagem de interoperabilidade chamada XMI.
Linguagem de queries chamada OCL.
Arquiteturas de Softwares
A arquitetura de um sistema de software é a
organização ou a estrutura dos componentes
significativos do sistema que interagem por meio
de interfaces, com elementos constituídos de
componentes e interfaces sucessivamente
menores.
TODOS OS DIREITOS RESERVADOS - WWW.INSTITUTOGTI.COM.BR
Modelagem Arquitetural
Tipos de Projeto de sistemas de software
– Dirigidos por Calendário.
• Atendimento urgente a uma norma regulatória.
– Dirigidos por Qualidade.
• Sistemas que lidam com vidas humanas.
– Dirigidos por Requisitos.
• Sistemas com foco apenas na visão do usuário.
– Dirigidos por Documentação.
• Necessidades fortíssimas de sub-contratação e/ou gestão da
informação.
–
Dirigidos por Arquiteturas.
Dirigidos por Arquiteturas.
TODOS OS DIREITOS RESERVADOS - WWW.INSTITUTOGTI.COM.BR
Visão 4+1
A visão 4+1 para desenho técnico de sistemas.
Baseado nos princípios de:
– Modelo.
– Visão.
– Preocupação.
– Envolvidos.
Visão 4+1
Visão de
implementação
Desenvolvedores
Gerência de
configuração
Visão de
processos
Desempenho
Escalabilidade
Vasão (Throughput)
Integradores de sistemas
Visão de
implantação
Topologia do sistema
Comunicação
Provisionamento
Analistas de suporte
Visão
Lógica
Funcionalidade
Usuários finais
◄lógico
físico►
Visão de
casos de
uso
TODOS OS DIREITOS RESERVADOS - WWW.INSTITUTOGTI.COM.BR
TODOS OS DIREITOS RESERVADOS - WWW.INSTITUTOGTI.COM.BR
Visão de Implementação
Usada para capturar os sub-sistemas em um
modelo de implementação, normalmente
representada como um diagrama de
componentes.
Expressa a gestão da configuração.
Agenda.INI
Agenda.HLP
Agenda.DLL
Agenda.EXE
TODOS OS DIREITOS RESERVADOS - WWW.INSTITUTOGTI.COM.BR
Visão 4+1 - O que usar
Nem todos os sistemas precisam de todas as visões:
– Sistema pequeno (ignore a visão de implementação).
– Processador único (ignore a visão de implantação).
– Processo único (ignore a visão de processos).
Alguns sistemas precisam de visões adicionais:
– Visão de dados.
– Visão de segurança.
– Outros aspectos.
TODOS OS DIREITOS RESERVADOS - WWW.INSTITUTOGTI.COM.BR
Modelagem da Visão Lógica
Diagrama primário - Diagrama de classificadores
estáticos (pacotes e classes).
A visão da arquitetura do sistema que compreende o
vocabulário do espaço do problema e da solução, as
colaborações, que realizam os casos de uso do sistema,
os subsistemas que determinam a decomposição do
sistema em camadas, e as interfaces que são expostas
pelos subsistemas e o pelo sistema como um todo.
Modelagem da Visão Lógica
Pacotes:
– Mecanismo de propósito geral da UML para
TODOS OS DIREITOS RESERVADOS - WWW.INSTITUTOGTI.COM.BR
Modelagem da Visão Lógica
Modelagem da Visão Lógica
Arquitetura de referência:
– Representa principais abstrações da tecnologia, e
serve como um template para que o código possa ser
implementado.
– Expressa como um diagrama de classes.
– Um diagrama de classes de uma arquitetura de
referência usa estereótipos e muitas vezes padrões
de desenho para a sua representação.
TODOS OS DIREITOS RESERVADOS - WWW.INSTITUTOGTI.COM.BR
Modelagem da Visão Lógica
Modelagem da Visão Lógica
TODOS OS DIREITOS RESERVADOS - WWW.INSTITUTOGTI.COM.BR
Modelagem da Visão Lógica
Modelagem da Visão Lógica
TODOS OS DIREITOS RESERVADOS - WWW.INSTITUTOGTI.COM.BR
Modelagem da Visão Lógica
Modelagem da Visão Lógica
TODOS OS DIREITOS RESERVADOS - WWW.INSTITUTOGTI.COM.BR
Modelagem da Visão Lógica
Diagrama primário - Diagrama de componentes.
Um diagrama de componentes é usado para
mostrar as dependências de compilação e
TODOS OS DIREITOS RESERVADOS - WWW.INSTITUTOGTI.COM.BR
UML 1.x
TODOS OS DIREITOS RESERVADOS - WWW.INSTITUTOGTI.COM.BR
Diagrama primário - Diagrama de implantação.
Um diagrama de implantação mostra a
configuração dos processadores (nodos) em
tempo de execução, os links de comunicação
entre eles e as instâncias dos componentes e
objetos que residem neles.
s : Server
processorSpeed = 300MHz
memory = 128M
<<Deploys>>
dbadmin.exe
tktmstr.exe
: RAIDFarm
storage
capacity = 2
Tera
<<10-T Ethernet>>: Kiosk
<<Deploys>>
user.exe
*
c : Console
<<Deploys>>
admin.exe
config.exe
*
<<RS-232>>TODOS OS DIREITOS RESERVADOS - WWW.INSTITUTOGTI.COM.BR
TODOS OS DIREITOS RESERVADOS - WWW.INSTITUTOGTI.COM.BR
Dicas (1/2)
Arquiteturas devem capturar abstrações.
Bom uso de hierarquias de classes.
Decomposição baseada em pacotes.
Uso de colaborações.
Dicas (2/2)
Uso de mecanismos arquiteturais.
Uso de decisões estratégicas vs decisões
táticas.
TODOS OS DIREITOS RESERVADOS - WWW.INSTITUTOGTI.COM.BR
Formalização do Modelo
Use templates estabelecidos para fazer a modelagem
arquitetural.
Um bom exemplo é o template de Documento de
Arquitetura de Software (DAS) do RUP.
Use este modelo para derivar o seu documento para uso
em sistemas do mundo real.
O DAS é contruído durante as fases de concepção e
elaboração e mantido durante todo o restante do projeto
pelo arquiteto de software.
Conclusões
A modelagem arquitetural captura as principais decisões
estratégicas de um sistema.
A UML2 fornece diversos diagramas para a modelagem
arquitetural.
A visão 4+1 é uma boa abstração para a representação de
diversas visões.
Visão 4+1 deve ser complementada com tópicos mais
avançados como mecanismos de arquitetura e padrões.
TODOS OS DIREITOS RESERVADOS - WWW.INSTITUTOGTI.COM.BR