Buscar

Aluno_ PEDRO AUGUSTO RIBEIRO SILVA 3

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 11 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

Nesta aula, trataremos da arquitetura física do software desenvolvida sob o paradigma da
orientação a objetos, especificamente com auxilio da UML, denominada modelo de
implementação, que, por sua vez, é decomposto em dois diagramas: componentes e
implantação.
O diagrama de implantação visa mostrar a arquitetura física dos nós (de processamento),
onde o sistema será executado, e as conexões entre eles; ou seja, apresenta infraestrutura,
servidores e demais dispositivos necessários ao funcionamento do sistema.
O diagrama de componentes mostra a divisão do sistema em componentes de software e a
relação entre eles. A junção dos dois diagramas, que é opcional, permite-nos saber o poder
de processamento e capacidade de memória e discos dos nós envolvidos, na medida em
que definimos componentes que rodarão em cada um.
Discriminar o diagrama de componentes e seus elementos;
Discriminar o diagrama de implantação e seus elementos;
Relacionar os diagramas de componentes e implantação;
Aplicar, através de exemplos, a construção e integração entre os diagramas de
componentes e implantação.
O que são e o que fazem?
Diagramas de componentes mostram os componentes de um sistema e suas
dependências.
Diagramas de componentes são úteis para modelagem da arquitetura física de um
software, apresentando os componentes físicos, suas interfaces e dependências.
Os diagramas de componentes permitem o desenvolvimento baseado em componentes,
onde um software é dividido em componentes e interfaces reutilizáveis e substituíveis.
Análise Orientada e Objetos e Projeto Arquitetural
Aula 4: Implementação e Arquitetura do
Software
Introdução
Objetivos
Diagramas de componentes
Imagine um sistema de home theater composto por componentes que podem ser
facilmente conectados uns aos outros e substituídos a qualquer momento: projetor, receiver,
caixas de som (frontal, lateral, subwoofer). Se qualquer elemento queimar, poderemos
substituí-lo por um igual ou equivalente (com as mesmas interfaces).
A ideia do uso de componentes em software é a mesma: conjunto de componentes com
interfaces bem definidas que podem ser integrados a qualquer sistema e substituído
sempre que necessário.
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. Um componente
define seu comportamento em termos de interfaces fornecidas e requeridas. Como tal, um
componente serve como um tipo, cuja conformidade é definida por essas interfaces
fornecidas e requeridas”.
Um componente pode ser definido como uma caixa-preta onde são especificadas as suas
interfaces para que outros componentes possam usar seus serviços sem conhecer detalhes
de como esses serviços estão sendo implementados. Ou seja, 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.
Figura 1
Fonte: Elaborado pelo autor
A imagem ao lado mostra a representação do componente na UML. O componente tem um
nome: “Componente”.
A ideia é construir sistemas como um conjunto de componentes, que são partes
substituíveis; deve-se poder reutilizá-los em muitos sistemas.
Os componentes devem ter interfaces que propiciem grande flexibilidade e
adaptação em muitos sistemas. Componentes podem, inclusive, ser criados de
outros componentes. Veja, a seguir, sobre interfaces.
Componentes
Atenção!
http://pos.estacio.webaula.com.br/cursos/ATU186/aula4/img/figura1.png
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.
Interfaces são elementos que definem um conjuntos de operações que outros elementos,
como classes ou componentes, devem implementar.
Em diagramas de componentes, 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. O símbolo de
uma interface fornecida é o círculo apresentado à esquerda do componente, conforme
imagem ao lado.
Interfaces requeridas: são as interfaces usadas pelo componente quando ele solicita
serviços de outros componentes. Um componente pode ter várias interfaces requeridas. O
símbolo da interface requerida é um semicírculo apresentado à direita do componente,
conforme imagem ao lado.
Um mesmo componente pode tanto fornecer como requerer interfaces. O relacionamento
entre os componentes e as interfaces é a essência dos sistemas.
O usuário do serviço de um componente deve conhecer bem a sintaxe das interfaces do
componente. Analogamente ao exemplo dado inicialmente, as interface são as conexões
possíveis entre o receiver do home theater e os dispositivos (projetor, caixas, DVD, TV etc.).
Para usarmos um DVD precisamos saber as possíveis conexões (HDMI, DVI etc.). Para usar
um componente precisamos saber as possíveis interfaces.
Existem duas maneiras de representar o relacionamento entre componentes e interface,
conforme as duas imagens a seguir.
Na representação abaixo, o componente que usa a interface se conecta ao outro
componente por meio do relacionamento de dependência.
Figura 2
Fonte: Elaboradopelo autor
O Componente que fornece a interface é conectado a ela pelo relacionamento de
realização (entre o componente fornecedor e a interface). O componente que usa a
interface (componente usuário) é a ela conectado pelo relacionamento de dependência
Interfaces
Atenção!
Componentes e interfaces
http://pos.estacio.webaula.com.br/cursos/ATU186/aula4/img/figura2.png
(entre o componente usuário e a interface). O relacionamento de dependência determina
que um componente pode usar os serviços ou depender de outro elemento do sistema.
Figura 3
Fonte: Elaboradopelo autor
Na imagem ao lado, temos o exemplo do componente Login Usuário, onde <> é um
estereótipo. Esse componente tem:
Duas interfaces providas, ou seja, serviços prestados ao usuário (validar usuário e
validar senha);
Uma interface requerida, ou seja, serviço que precisa usar (conexão).
Figura 4
Fonte: Elaboradopelo autor
Ao lado, tem-se um exemplo de diagrama de componentes necessários ao serviço de caixa
eletrônico (agências bancárias e “banco 24 h”).
Gerenciador de Caixa Eletrônico: gerencia o uso e aguarda pelos eventos dos correntistas,
ao interagir com o caixa eletrônico.
Criptografia: criptografa os dados de forma que trafeguem em segurança até os servidores
da empresa.
Controlador Caixa Eletrônico: age como interface entre o caixa eletrônico e as camadas da
aplicação, residentes nos servidores, que darão a reposta a cada solicitação do cliente.
Firewall: filtra os acessos verificando se a chamada ao Gerenciador de Contas é confiável e
ocorre de acordo com os parâmetros de comunicação da empresa.
Gerenciador de Contas: gerencia acessos aos dados da conta e sua movimentação
solicitando a descriptografia dos dados e identificando o que o cliente solicitou no caixa
eletrônico.
Descriptografia: responsável por descriptografar dados criptografados na origem deixando-
os no estado original.
SGBD: faz o acesso à base de dados, conforme solicitação do cliente.
http://pos.estacio.webaula.com.br/cursos/ATU186/aula4/img/figura1.pngfigura3.png
http://pos.estacio.webaula.com.br/cursos/ATU186/aula4/img/figura4.png
Figura 5
Fonte: Elaboradopelo autor
Repare que a solução da tela anterior permite flexibilidade em futuras mudanças.
Se alterarmos a técnica de criptografia ou desejarmos ampliar as possiblidades
com novas técnicas, basta substituir ou adicionar novos componentes de
criptografia e descriptografia;
Se quisermos trocar o software de firewall, basta substituirmos o respectivo
componente;
Se mudarmos de banco de dados, basta substituirmos o componente responsável
pelo acesso aos dados.
Mostra o layout físico de um sistema, revelando quais partes do software são executadas
em quaispartes 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.
Seus elementos são os nós e as conexões entre eles.
Conexões representam um caminho de comunicação entre os nós, assim como as
associações possuem nome e multiplicidade.
Um diagrama de implantação mostra o local onde os componentes e artefatos são
utilizados no sistema em funcionamento.
Um nó, em um diagrama de implantação, representa um recurso computacional de um
sistema, como servidores, impressoras, terminais remotos, computadores pessoais, dentre
outros. Em geral, o nó é identificado por um nome que o descreve, conforme imagem ao
lado.
Podemos representar em diagramas de implantação a existência de componentes dentro
de um nó, conforme exemplo ao lado.
Diagrama de implantação
Nó
http://pos.estacio.webaula.com.br/cursos/ATU186/aula4/img/figura5.png
Nesse caso, representamos a relação de dependência entre os componentes.
Figura 6
Fonte: Elaborado pelo autor
A possibilidade de representar os componentes que vão executar em um nó é positiva, no
sentido de possibilidade de definição da configuração do nó, tanto em termos de
capacidade de processamento como de memória principal e memória secundária (discos).
Os nós em um diagrama de implantação são conectados por caminhos de comunicação,
que é um relacionamento de associação no qual podem constar multiplicidade, papel e
nome do relacionamento (em geral, pelo tipo de protocolo de comunicação). Nesse caso, a
associação representa uma conexão física entre os nós.Os nós em um diagrama de
implantação são conectados por caminhos de comunicação, que é um relacionamento de
associação no qual podem constar multiplicidade, papel e nome do relacionamento (em
geral, pelo tipo de protocolo de comunicação). Nesse caso, a associação representa uma
conexão física entre os nós.
Abaixo, um exemplo de dois nós representando um sistema cliente-servidor, onde o
caminho de comunicação é o protocolo TCP/IP através da internet.
Figura 7
Fonte: Elaborado pelo autor
Atenção!
Caminhos de comunicação (conexões)
http://pos.estacio.webaula.com.br/cursos/ATU186/aula4/img/figura6.png
http://pos.estacio.webaula.com.br/cursos/ATU186/aula4/img/figura7.png
A decomposição do sistema pode ser efetivada de duas formas, não excludentes: em
camadas ou partições, conforme imagem em exibição. Clique na imagem para ampliá-la.
Figura 8
Fonte: Elaborado pelo autor
Nós: Tablet do Vendedor, CPU do Vendedor, CPU do Gerente, Servidor de
Aplicações, Servidor de BD e Impressora;
Caminhos de comunicação: TCP/IP e Porta USB conectam CPU do Vendedor e
Impressora.
A baixo, temos exemplo do diagrama de implantação para o sistema de caixa eletrônico, o
mesmo que elaboramos para o diagrama de componentes (nesta aula, em seção anterior).
Figura 9
Fonte: Elaborado pelo autor
O refinamento do diagrama mostra os componentes que vão executar em cada um dos nós.
Repare que conhecer os componentes que cada nó precisará executar permite
compreender a capacidade de cada um, tanto em termos de processamento (processador),
memória (RAM), disco e outras configurações.
A imagem a baixo apresenta um diagrama de implantação com
seus elementos básicos:
http://pos.estacio.webaula.com.br/cursos/ATU186/aula4/img/figura8.png
http://pos.estacio.webaula.com.br/cursos/ATU186/aula4/img/figura9.png
Figura 10
Fonte: Elaborado pelo autor
Por fim, cabe ressaltar que o diagrama de implantação deve fazer parte dos manuais para
instalação e operacionalização dos sistemas (BEZERRA, 2015).
Atenção!
Exercícios de fixação
No que se refere ao diagrama de componentes, assinale a alternativa errada.
Mostra os componentes e sua localização física em termos de nós e onde se encontram
Mostra os componentes do sistema
Mostra as relações entre eles
Apresenta as interfaces requeridas
Apresenta as interfaces fornecidas
No que se refere ao diagrama de componentes e seus elementos, assinale a alternativa
correta.
I. Uma interface fornecida apresenta os detalhes para que um componente possa usar o
serviço fornecido por outro.
II. Um componente é um elemento modular e substituível.
III. Um componente só pode ter uma interface oferecida.
Com base em sua análise, assinale a única alternativa correta.
Estão corretas apenas II e III
http://pos.estacio.webaula.com.br/cursos/ATU186/aula4/img/figura10.png
Está correta apenas II
Estão corretas I, II e III
Estão corretas apenas I e II
Estão corretas apenas I e III
Assinale a alternativa que apresenta o correto elemento associado ao seguinte conceito:
“representa uma parte modular de um sistema que encapsula seu conteúdo e cuja
manifestação é substituível dentro de um ambiente”.
Objeto
Interface requerida
Classe
Componente
Software
Sobre o diagrama de componentes, analise as assertivas.
I. O diagrama de componentes deve ser usado em integração com o diagrama de casos de
uso na modelagem do domínio do problema.
II. O usuário do serviço de um componente deve conhecer bem a sintaxe de suas interfaces.
III. Os componentes podem relacionar-se por relacionamentos de dependência.
Com base em sua análise, assinale a alternativa correta.
Está correta apenas I
Estão corretas I, II e III
Estão corretas apenas I e II
Estão corretas apenas II e III
Estão corretas apenas I e III
Analise as duas assertivas a seguir e a relação entre elas.
I. O diagrama de componentes possui ao menos uma interface fornecida.
... porque...
II. Um componente deve manter-se independente e isolado dos demais.
Com base em sua análise, assinale a resposta correta quanto à assertividade de cada uma e
sobre a relação entre elas.
As duas assertivas estão corretas, e a segunda justifica a primeira.
As duas assertivas estão corretas, e a segunda não justifica a primeira.
As duas assertivas estão erradas.
A assertiva I está correta, e a assertiva II está errada.
A assertiva I está errada, e a assertiva II está correta.
Assinale a alternativa que completa a seguinte afirmativa: “Segundo Fowler, o diagrama de
_____________ mostra o layout físico de um sistema, revelando quais partes do software são
executadas em quais partes do hardware”.
Componentes
Atividade
Pacote
Sequência
Implantação
No que se refere ao diagrama de implantação, analise as assertivas.
I. Nós e caminhos de conexão são dois dos elementos do diagrama.
II. Os nós podem ser servidores, estações, impressoras, máquinas leitoras de digitais.
III. Os caminhos de comunicação sempre serão o protocolo TCP/IP, já que o caminho
sempre será sob a internet.
Estão corretas apenas II e III
Estão todas corretas
Está correta apenas III
Estão corretas apenas I e II
Estão corretas I e III
Sobre os diagramas de implantação da UML (unified modeling language), úteis,
especialmente, na fase de projeto de software, é incorreto afirmar:
É direcionado para a distribuição, entrega e instalação das partes que formam o sistema
físico.
É um conjunto de nós conectados, no qual um nó é única e exclusivamente uma
estação ou servidor.
Envolvem a topologia do sistema, descrevendo a estrutura do hardware.
Pode ser integrado ao diagrama de componentes, mostrando que componentes
executam em que nó.
A UML é uma linguagem que possibilita a modelagem nas diversas fases de um processo
de desenvolvimento de software. Na fase de projeto, definidos a arquitetura e componentes
do software, ganham destaque os diagramas de componentes e de implantação. Com base
nesses dois diagramas, analise as assertivas a seguir.
I. O diagrama de implantação modela os aspectos físicos do sistema, mostrando a
organização do hardware.
Nesta aula:
Estudou o objetivo e as atividades da fase ou disciplina de projeto de software;
Analisou o diagrama de componentes e seus elementos, bem como sua
aplicabilidade em um projeto de software;
Analisou o diagrama de implantação e seus elementos, definindo o momento de
sua aplicação;
Relacionou os diagramas de componentes e implantação,que nos favorecem na
definição da capacidade de processamento e memória (principal e secundária) de
cada nó.
BOOCH, G; RUMBAUGH, J; JACOBSON, I. UML: guia do usuário. 2. ed. Rio de Janeiro:
Campus, 2006.
BEZERRA, E. Princípios de análise e projeto de sistemas com UML. 3. ed. Elsevier, 2015.
LARMAN, C. Utilizando UML e padrões: uma introdução à análise e projeto orientados a
objetos e ao desenvolvimento iterativo. 3. ed. Bookman, 2007.
II. O diagrama de componentes mostra as dependências entre os elementos do hardware
que sustentarão o software.
III. O ideal é que um componente desenvolvido possa ser usado em vários sistemas.
Assinale a única opção correta, com base em sua análise das assertivas.
Apenas as assertivas I e III estão corretas
Apenas a assertiva III está correta
Apenas a assertiva I está correta
Apenas as assertivas I e II estão corretas
Apenas as assertivas II e III estão corretas
Um diagrama de implantação define aspectos físicos do sistema, onde cada nó representa
um dispositivo físico com memória ou capacidade de processamento. Já o diagrama de
componentes apresenta módulos de software (arquivos .dll, .exe, .com, .bat, .htm e outros
executáveis) necessários para executar a aplicação. Com base nesse contexto apresentado,
responda:
É possível integrar esses dois diagramas mostrando para cada nó os componentes que
nele executariam?
Caso a resposta seja sim, explique a vantagem em integrarmos os dois diagramas dessa
forma?
Síntese
Referências

Outros materiais