Buscar

aula_09-Diagramas de Implementação

Prévia do material em texto

Modelagem de 
Sistemas
Marcelo Vasques de Oliveira
Aula 9
Aula 9 – Diagramas de 
Implementação
• Discriminar o diagrama de Componentes 
e seus elementos
• Discriminar o diagrama de implantação e 
seus elementos
• Relacionar os 2 diagramas
• Aplicar, através de exemplos, a 
construção dos 2 diagramas
2
Diagrama de Componentes
• Útil para modelagem da arquitetura física de 
um software, 
• Apresenta os componentes físicos, suas 
interfaces e dependências.
• Permite o desenvolvimento baseado em 
componentes, onde um software é dividido em 
componentes e interfaces que são reutilizáveis
e substituíveis. 
• Especifica a arquitetura do software
3
Analogia
• Sistema de home theater
–componentes podem ser facilmente 
conectados e substituídos a qualquer 
momento: projetor, receiver, caixas de som 
(frontal, lateral, subwoofer). 
–Se componente queimar, é substituído por 
um igual ou equivalente (mesma interface).
• Análogo ao conceito de componentes de 
software 
4
Componente
• A UML define componente como:
–Um componente representa uma parte 
modular de um sistema que encapsula seu 
conteúdo e cuja manifestação é substituível 
dentro de um ambiente. 
–Define seu comportamento em termos de 
interfaces fornecidas e requeridas (conexão 
com demais componentes).
5
Componente
• Caixa preta, onde são especificadas as 
interfaces para que outros componentes 
possam usar seus serviços sem conhecer 
detalhes de como os serviços implementados. 
• O componente encapsula (protege) o seu 
conteúdo 
–e seu comportamento é definido em função 
de prover e requerer serviços, através de 
suas interfaces.
6
Componente
• O desejo é que o componente possa ser 
independente e intercambiável. 
• Em um sistema baseado em componentes, 
cada componente tem uma finalidade, ou seja, 
presta um serviço e para tal demanda o uso de 
outros componentes. 
7
Sistema com um conjunto de componentes
• A ideia é construir sistemas, como um conjunto 
de componentes, que são partes substituíveis.
• E que esses componentes possam ser 
reutilizados em muitos sistemas.
• Os componentes devem ter interfaces que 
propiciem grande flexibilidade e adaptação a 
muitos sistemas.
• Componentes podem ser criados de outros 
componentes.
8
O Que pode ser um componente
• Página HTML
• Código fonte em linguagem
• Código executável
• DLL
• Servlet
• Máquina JAVA
9
Interface de um componente
• Elementos que definem um conjuntos de 
operações que outros elementos, como classes 
ou componentes, devem implementar.
• Existem dois tipos de interfaces
–Interfaces fornecidas: descrevem os serviços 
oferecidos a outros componentes. Um 
componente pode declarar quantas interfaces 
fornecidas forem necessárias. 
10
Interface de um componente
–Interfaces requeridas: são as interfaces 
usadas pelo componente, quando solicita 
serviços de outros componentes. Um 
componente pode ter várias interfaces 
requeridas. 
11
Interface de um componente
• Um mesmo componente pode tanto fornecer 
como requerer interfaces.
• O relacionamento entre os componentes e as 
interfaces é a essência dos sistemas
12
Componentes e Interface
• O usuário do serviço de um componente deve 
conhecer bem a sintaxe de suas interfaces
• Pelo nosso exemplo, as interface são as 
conexões possíveis entre o receiver do home 
Theather e dispositivos (projetor, DVD e etc_
–Para usarmos um DVD precisamos saber as 
possíveis conexões: HDMI, DVI e etc. 
–Para usar um componente precisamos saber 
as possíveis interfaces.
13
Componentes e Interface
• 2 maneiras de representar o relacionamento 
entre componentes e interface.
• Opção 1: o componente que usa a interface se 
conecta ao outro componente por meio do 
relacionamento de dependência
14
Componentes e Interface
• Opção 2: O componente que fornece a 
interface é conectado a ela pelo 
relacionamento de Realização (entre o 
componente Fornecedor e a Interface). 
15
Conector de montagens
• Estabelece uma ligação entre componentes 
em que uma interface requerida por um é 
fornecida por outro 
16
Conector de montagens
• ImageObserver é uma interface
• Componente.py Implementa (fornece essa 
interface)
• Imagem.py depende da interface
17
Exemplo de um componente com
• 2 interfaces providas : Validar Usuário e 
Validar Senha
• 1 interface requerida: Conexão
18
Dependência
• Um componente pode utilizar serviços ou 
depender de alguma outra forma de outros 
componentes do sistema 
• Componente 1 depende de componente 2
19
Componentes x classes
• Pode ser utilizado para demonstrar as classes 
que estão sendo implementadas ou 
manipuladas por um componente.
20
21
Flexibilidade da solução.
• A solução permite flexibilidade em mudanças.
–Se for alterar a técnica de criptografia ou 
ampliar as possiblidades com novas técnicas, 
basta substituir ou adicionar novos 
componentes.
–Se quisermos trocar o firewall, basta substituir 
o respectivo componente. 
–Se mudarmos o SGBD , basta substituir o 
respectivo componente
22
Diagrama de Implantação
• Mostra o layout físico de um sistema, 
revelando quais partes do software são 
executadas em quais partes do hardware 
(FOWLER). 
• Enfoca a estrutura física sobre a qual o 
software vai executar. 
• Define como as máquinas estarão conectadas 
e através de quais protocolos se comunicarão.
–Elementos: os nós e as conexões entre eles. 
23
Elementos do Diagrama de Implantação
• Nó: recurso computacional de um sistema, 
como servidores, impressoras, terminais 
remotos, computadores pessoais, software, 
banco de dados dentre outros. 
• Em geral o nó é identificado por um nome, 
24
Elementos do Diagrama de Implantação
• Em diagramas de implantação, a existência de 
componentes dentro de um nó, pode ocorrer.
• Possibilita definir a configuração do nó: 
capacidade de processamento, memórias 
principal e (discos).
25
Nó – componentes e relações
26
Esteriótipos de um nó.
27
Caminhos de comunicação - conexões
• Os nós são conectados por conexões, que é 
um relacionamento de associação, 
–Nesse caso a associação representa uma 
conexão física entre os nós.
–Multiplicidade (1..*), papel e nome do 
relacionamento (TCP/IP)
28
Exemplo de Diagrama de Implantação
29
30
31
32
Modelagem de 
Sistemas
Marcelo Vasques de Oliveira
Atividades
Sobre o diagrama de componentes, analise:
I. Ele apresenta os componentes que irão compor o 
software bem com a dependência entre eles
II. A dependência entre os componentes denota que
um componente precisa do outro para executar as 
suas funcionalidades
III. A reutilização de componentes entre vários sistemas
é um desejo da equipe de desenvolvimento
IV. Um componente pode ter apenas interfaces 
requeridas
Assinale a única alternativa correta.
34
a. ( ) estão corretas apenas I, II e III
b. ( ) estão corretas apenas I, II e IV
c. ( ) Estão corretas I, II, III e IV
d. ( ) Estão corretas apenas I e II
e. ( ) está correta apenas I
35
Com base nos diagramas de componentes e 
implantação, analise.
I. O diagrama de implantação modela os aspectos
físicos, mostrando a organização do hardware.
II. Um componente deve ser adaptável a um sistema
através de sua interface.
III. O diagrama de componentes mostra as 
dependências entre os elementos do hardware que
sustentará o software.
IV – O diagrama de implantação pode conter
componentes em seus nós.
Assinale a ÚNICA opção correta, 36
a. ( ) estão corretas apenas I, II e IV
b. ( ) estão corretas apenas I, II e II
c. ( ) Estão corretas I, II, III e IV
d. ( ) Estão corretas apenas I e II
e. ( ) está correta apenas I
37
Sobre o diagrama de implantação, é INCORRETO
afirmar:
a) ( ) É direcionado para a distribuição, entrega e 
instalação das partes que formam o sistema físico.
b) ( ) É um conjunto de nós conectados, onde um nó é
única e exclusivamente uma estação ou servidor.
c) ( ) Os elementos são os nós e as conexões.
d) ( ) Envolvem a topologia dosistema, descrevendo a 
estrutura do hardware.
e) ( ) Pode ser integrado ao diagrama de 
componentes, mostrando que componentes
executam em que nó. 38

Continue navegando