RUP - Cap. 4 – Processo Centrado
na Arquitetura
Disciplina: ESOF2
Prof. Adriana M. Martins
RUP – Cap. 4 – Processo Centrado na Arquitetura
Introdução

Conceitos Chave do RUP:
- Dirigido por Casos de Uso
- Centrado na Arquitetura
- Iterativo e Incremental
Lembrando que:
A arquitetura representa a forma, enquanto que
os casos de uso representam a funcionalidade.
Aula 04
2
RUP – Cap. 4 – Processo Centrado na Arquitetura
Introdução

Casos de Uso podem conduzir o desenvolvimento de
software, porém não são suficientes.

A arquitetura de um sistema pode ser definida como sendo:
“Uma visão comum na qual todos os
participantes concordem ou pelo menos aceitem.”
Aula 04
3
RUP – Cap. 4 – Processo Centrado na Arquitetura
Introdução

A arquitetura deverá descrever os elementos mais
importantes do modelo.

A arquitetura é construída durante a fase de elaboração.

O objetivo é criar uma base arquitetural para que a fase de
construção seja iniciada com um fundamento sólido para a
construção completa do sistema.
Aula 04
4
RUP – Cap. 4 – Processo Centrado na Arquitetura
O que é a Arquitetura para um Sistema?

“O arquiteto é especialista na integração de todos os
aspectos de uma construção, mas não é especialista em
todos os aspectos.” Exemplo: arquiteto civil.

Sistemas de software são apresentados através de diferentes
perspectivas (visões), que juntas compõem a arquitetura
do sistema.
Aula 04
5
RUP – Cap. 4 – Processo Centrado na Arquitetura
O que é a Arquitetura para um Sistema?

A arquitetura lida com algumas decisões importantes como:
-
a organização do sistema;
os elementos estruturais e interfaces entre si, e também o
seu comportamento e composição em subsistemas
maiores;
o estilo arquitetural que guiará a organização dos
elementos, interfaces, colaborações e composições.
-
-
Envolve também decisões sobre uso, funcionalidade,
performance, reuso, compreensibilidade, estética, robustez,
restrições econômicas e tecnológicas.
Aula 04
6
RUP – Cap. 4 – Processo Centrado na Arquitetura
O que é a Arquitetura para um Sistema?

A arquitetura também pode ser representada como visões de
modelos (modelo de visão 4 + 1):
Usuário Final
Funcionalidade
-Pacotes
-Subsistemas
-Classes
Visão
Lógica
Visão de
Implementação
Programadores
Gerenciamento de Software
-Módulos estáticos
-Camadas
-Gerenciamento de
configurações
Visão de
Caso de Uso
Analistas/Testadores
Comportamento
- Testes, processos, iterações
Visão de
Processo
Integradores de Sistemas
Desempenho
Escalabilidade
Processamento
Cenários Chave
Visão de
Implantação
Engenharia de Sistema
Topologia, entrega, instalação, comunicação
Aula 04
7
RUP – Cap. 4 – Processo Centrado na Arquitetura
Porque é Necessária a Arquitetura?


Para desenvolver sistemas complexos é necessário um arquiteto e
desenvolvedores.
São sistemas que não existem no mundo real, geralmente são
únicos e inexistentes.
“O design e a implementação vão além de algoritmos e estruturas de
dados de computação: projetar e especificar toda uma estrutura
dessas emerge como um novo tipo de problema.”
Aula 04
8
RUP – Cap. 4 – Processo Centrado na Arquitetura
Porque é Necessária a Arquitetura?

-
-
A arquitetura é necessária para:
Entendimento do sistema
Organização do desenvolvimento
Estímulo ao reuso
Evolução do sistema
Aula 04
9
RUP – Cap. 4 – Processo Centrado na Arquitetura
Porque é Necessária a Arquitetura?

Entendimento do Sistema: tornar sistemas complexos
compreensíveis é um desafio por várias razões:
-
Comportamento complexo;
Ambiente de operação complexo;
Tecnologia complexa;
Combinação de computação distribuída, produtos e plataformas
comerciais, componentes e estruturas reusáveis;
Satisfação de demanda de indivíduos e de organizações;
Dificuldade de gerenciamento;
Constantes mudanças.
-
-
-
Aula 04
10
RUP – Cap. 4 – Processo Centrado na Arquitetura
Porque é Necessária a Arquitetura?

Organização do Desenvolvimento: redução da intensa
necessidade de comunicação entre membros de uma equipe
maior e viabilização do trabalho em paralelo.

Estímulo ao Reuso: a base do reuso são os componentes.
Quando estes são bem projetados há redução de tempo e
custo durante a construção do sistema.

Evolução do Sistema: o sistema deve ser capaz de suportar
bem as mudanças, sem causar impactos indesejáveis ao
projeto e implementação existentes.
Aula 04
11
RUP – Cap. 4 – Processo Centrado na Arquitetura
Casos de Uso x Arquitetura
Casos de Uso com Valor:
alta performance, qualidade
e usabilidade.
Restrições e facilitadores:
Casos de Uso
Software do sistema
dirigem
Middleware
guia
Sistemas de legado
Arquitetura
Padrões e políticas
Requisitos não funcionais
Experiência
Necessidade de distribuição
- Arquiteturas prévias
- Padrões arquiteturais
Aula 04
12
RUP – Cap. 4 – Processo Centrado na Arquitetura
Casos de Uso x Arquitetura

a)
b)
c)
d)
e)
f)
Restrições e facilitadores para definição da Arquitetura:
Software do sistema: quais produtos serão usados – BD e SO?
Middleware: quais os produtos de interface serão usados entre camadas?
Sistemas Legados: sistemas já existentes serão usados? Serão
melhorados?
Padrões e políticas da empresa: serão usadas, adaptadas?
Requisitos não-funcionais: qual a disponibilidade, tempo de
restauração, memória?
Necessidade de distribuição: como o sistema estará organizado,
distribuído fisicamente?
Este é um entendimento geral de como o sistema funcionará!
Aula 04
13
RUP – Cap. 4 – Processo Centrado na Arquitetura
Casos de Uso x Arquitetura
A arquitetura é desenvolvida em interações durante a fase de
elaboração;
 Abordagem incremental com resultado sendo uma arquitetura
estável;
 Durante a fase de construção, os casos de uso são implementados
baseados nos requisitos dos usuários e dos clientes, sendo também
influenciados pela arquitetura selecionada na fase de elaboração.

Entradas do cliente
Entradas dos usuários
Casos de Uso
Arquitetura
Aula 04
14
RUP – Cap. 4 – Processo Centrado na Arquitetura
Elaboração da Arquitetura

Quais os casos de uso serão arquiteturalmente significantes?
Os que ajudam a mitigar riscos mais sérios;
b) Os que são considerados mais importantes para os usuários do
sistema;
c) Os que ajudam a cobrir as funcionalidades mais importantes do
sistema.
a)
Geralmente são 80% dos Casos de Uso
Aula 04
15
RUP – Cap. 4 – Processo Centrado na Arquitetura
Elaboração da Arquitetura
O resultado da fase de elaboração será uma base
arquitetural – um esqueleto do sistema com poucos “músculos”.
Depois desta etapa haverão poucas mudanças na arquitetura.

Base Arquitetural: agregação dos modelos do sistema que
representem os casos de uso mais importantes, com uma
perspectiva arquitetural e uma descrição da arquitetura.

O papel da descrição da arquitetura é guiar toda a equipe de
desenvolvimento durante os ciclos de vida do sistema. Se a
arquitetura for estável, o padrão desta também se tornará
estável.

Aula 04
16
RUP – Cap. 4 – Processo Centrado na Arquitetura
Elaboração da Arquitetura
Base Arquitetural
Casos de Uso
Análise
Projeto
Implantação
Implementação
Testes
Descrição Arquitetural
Casos de Uso
Análise
Projeto
Implantação
Implementação
Aula 04
17
RUP – Cap. 4 – Processo Centrado na Arquitetura
Elaboração da Arquitetura
Fim da Construção
Casos de Uso
Análises
Projeto
Implantação
Implementação
Testes
Descrição Arquitetural
Casos de Uso
Análises
Projeto
Implantação
Implementação
Aula 04
18
RUP – Cap. 4 – Processo Centrado na Arquitetura
Elaboração da Arquitetura
A descrição da Arquitetura:
- É basicamente a uma extração sobre os modelos do sistema;
- Apresenta apenas componentes arquiteturalmente
significantes;
- Contém as 5 visões: casos de uso, análise, projeto,
implantação e implementação;

Aula 04
19
RUP – Cap. 4 – Processo Centrado na Arquitetura
Elaboração da Arquitetura
A descrição da Arquitetura: deve sempre ser atualizada, mas não
deve “crescer” durante o ciclo de vida do projeto. As atualizações
podem incluir:
a) descoberta de novas interfaces e classes;
b) adição de funcionalidades aos subsistemas já existentes;
c) atualização de versão dos componentes utilizados;
d) reorganização da estrutura do processo.

Pode ainda conter: requisitos não-funcionais, detalhes sobre
plataforma, sistemas legados e comerciais utilizados, documentação de
padrões utilizados.
- É uma visão de alto nível: trata com detalhes apenas subsistemas
que são significantes no ponto de vista da arquitetura.
-
Aula 04
20
RUP – Cap. 4 – Processo Centrado na Arquitetura
Elaboração da Arquitetura

Utilizando Padrões de Arquitetura:
Padrões de projeto são as “soluções já consagradas para
problemas recorrentes”.
- Trata de uma perspectiva arquitetural do sistema, portanto mais
abrangente.
- No UP a solução é descrita na forma de interações e colaborações
entre subsistemas e até mesmo entre sistemas.
-
Exemplos de padrões: Broker, Cliente-Servidor, Three-Tier, Ponto-a-Ponto,
Camadas.
-
Obs: mais de um padrão poderá ser usado no sistema, porém um deles
deverá ser o predominante.
-
Aula 04
21
RUP – Cap. 4 – Processo Centrado na Arquitetura
Elaboração da Arquitetura – Modelo em Camadas
Modelos, classes,
bibliotecas
específicas do negócio.
Subsistemas não específicos
para a aplicação, permitem
reuso por outras aplicações do
mesmo domínio do negócio.
Não
consideram
detalhes
específicos
do
negócio.
Aula 04
22
RUP – Cap. 4 – Processo Centrado na Arquitetura
O Arquiteto Cria a Arquitetura
A arquitetura é criada pelo arquiteto, juntamente com outros
desenvolvedores;
 Deve buscar um sistema com alta performance, qualidade,
funcionalidade, amigável, robusto, …
 Objetivo: implementar as funcionalidades da aplicação em um custo
adequado com eficiência desejada, agora e no futuro.
 Arquiteto: conhecimento do domínio no qual trabalha e de
desenvolvimento de software.
 Uma boa arquitetura = diminuição do tempo total de desenvolvimento
de projeto.

Aula 04
23
RUP – Cap. 4 – Processo Centrado na Arquitetura
A Descrição da Arquitetura – Exemplo
Visão Arquitetural do Modelo de Caso de Uso – Caixa
Eletrônico:

-
Apresenta atores e casos de uso mais importantes.
Apresenta descrição completa do caso de uso.
É totalmente implementado durante a fase de elaboração.
Depósito

Transferência

Saque
Saque
Aula 04
24
RUP – Cap. 4 – Processo Centrado na Arquitetura
A Descrição da Arquitetura – Exemplo

Visão Arquitetural do Modelo de Projeto – Caixa Eletrônico:
Apresenta os classificadores mais importantes do modelo de projeto
(subsistemas, interfaces, classes, classes ativas) e as realizações dos
casos de uso mais importantes.
-
1. Diagrama de classes das classes ativas do Caso de Uso
2. Diagrama de classes mostrando os subsistemas e interfaces
3. Diagrama de colaboração
4. Descrição do fluxo de realização do Caso de Uso
Gerenciador
do Cliente
Gerenciador
da Transação
Gerenciador
da Conta
Aula 04
25
RUP – Cap. 4 – Processo Centrado na Arquitetura
A Descrição da Arquitetura – Exemplo
Visão Arquitetural do Modelo de Implementação – Caixa
Eletrônico:

Define a arquitetura física do sistema em termos de nós conectados;
- Os nós e conexões do modelo de implantação e a alocação de
objetos ativos aos nós podem ser descritos em diagramas de
implantação.
-

Gerenciador
Cliente
Internet
Servidor da
Aplicação
Intranet
Servidor de
Dados
Cliente
nós
Aula 04
26
RUP – Cap. 4 – Processo Centrado na Arquitetura
A Descrição da Arquitetura – Exemplo
Visão Arquitetural do Modelo de Implantação – Caixa
Eletrônico:

Será o mapeamento direto do modelo de projeto para o modelo de
implantação.
-
Aula 04
27
RUP – Cap. 4 – Processo Centrado na Arquitetura
Três Conceitos Importantes

O que é Arquitetura?
Especificação feita pelo arquiteto na descrição da arquitetura;
 Permite controle do desenvolvimento;
 Contém elementos estruturais do sistema, interfaces e suas
colaborações;
 Dirigida pelos Casos de Uso;
 Compreensível, suportar reuso e modificações.


Como é obtida?



Desenvolvida interativamente durante a fase de elaboração.
Construção de uma base da arquitetura.
Como é descrita?
Visão dos modelos do sistema que contém os componentes mais
interessantes arquiteturalmente e mais importantes a serem entendidos
pela equipe e interessados.

Aula 04
28
RUP – Cap. 4 – Processo Centrado na Arquitetura
Visão Geral
Aula 04
29
Download

Cap 4 RUP Centrado na Arquitetura