1 UML NO PROJETO DE COMPONENTES: 3 a PARTE COMPONENTE DIAGRAMA DE COMPONENTES DIAGRAMA DE PACKAGE

Preview:

Citation preview

1

UML NO PROJETO DE COMPONENTES:3a PARTE

COMPONENTE

DIAGRAMA DE COMPONENTES

DIAGRAMA DE PACKAGE

2

Um componente é uma parte f ísica de um sistema querealiza um conjunto de interf aces.

Uma interface é uma coleção de operações utilizadaspara especificar um serviço de uma classe ou componente

Um componente é um elemento f ísico: vive no mundo dosbits e não no mundo dos conceitos.

ControladorDe Pedidos

I . COMPONENTE

3

Modelar componentes permite a visualização da

organização f ísica do sistema. Auxilia também na gerência de confi guração, possibilitando por exemplo o controle de versões.

Muitas linguagens de programação oferecem suporte

para a criação de componentes. Por exemplo, em J ava podem ser criados componentes J ava Beans. No entanto, na UML podemos modelar através de componentes não somente esses tipos de componentes, mas também outros elementos que participam do sistema.

4

No caso exemplo temos o componente PEDI DOS queé um componente com estereótipo schemarepresentando exatamente um esquema no banco dedados, contendo as tabelas cliente, pedido, itempedido, f atura, item faturado e livro (essas tabelasforam representadas no sistema como classes comestereótipo de tabelas do Modelo Relacional)

PEDIDOS

<<Schema>>

5

Temos também no caso exemplo o componenteControlador de Pedidos que corresponde a umarquivo .java

Controlador

De Pedidos

6

Entre os componentes podemos encontrar tantoarquivos com código-fonte quanto arquivos comcódigo executável. Considerando um sistemadesenvolvido em J ava, tanto um arquivo .java comoum arquivo .class são considerados componentes.Um arquivo com dados também é considerado umcomponente.

7

Os componentes se assemelham a classes em muitosaspectos mas devemos observar a seguinte dif erença:

As classes representam abstrações lógicas e oscomponentes representam algo f ísico que reside em umnó.

O nó na UML representa algum tipo de unidadecomputacional.

Um componente é uma implementação f ísica de umconjunto de elementos lógicos, como as classes.

8

Estereótipos

ExecutableLibraryTableDocumentfile

9

Em nosso sistema exemplo, a implementação em J ava do caso de uso Solicita Cancelamento de Fatura f oi elaborada de f orma que cada componente correspondesse à implementação f ísica de apenas uma única classe. Cada componente é um arquivo .java.

Um diagrama de componentes mostra os várioscomponentes do sistema e suas dependências. A seguiré apresentado o diagrama que implementa o caso de usoSolicita Cancelamento de Fatura.

I I . DI AGRAMA DE COMPONENTES

10

JanelaPrincipal

main(args : String[]) : void

JanelaSolicitaCancelamentoFatura

exibir() : void

FaturaNaoEncontradaException

ControladorDePedidos

obterFatura(numero : int) : Fatura_ProjcadastrarSolCancFatura(umaFatura : Fatura_Proj) : String

SolicitacaoDeCancelamentoJaEfetuadaException

Fatura_Proj

numFatura : intdataEmissao : DatedataVencimento : DatevalorPago : doubledataPagamento : Date

dataPedidoCancelamento : DatedataCancelamento : Datestatus : StringnumPedido : int

recuperarPelaPK(numFatura : int) : Fatura_ProjsolicitarCancelamento() : void

Conexao

$ conn : Connection=null

11

J anelaPrincipal

Fatura_Proj

ControladorDePedidos J anelaSolicita

Cancelamento

FaturaNaoEncontradaException

SolicitacaoDeCancelamentoJ aEf etuadaException

Conexao

12

Ao mostrar a dependência entre dois componentesestamos dizendo que há um relacionamento entre essescomponentes e a alteração de um componente podeaf etar o outro.

O relacionamento de dependência, apresentadoatravés de uma seta tracejada, indica que um elementotem conhecimento de outro elemento. A dependência é umrelacionamento entre dois itens em que a alteração de umitem pode afetar a semântica do outro.

Num relacionamento de dependência a seta tracejadaaponta o item do qual o outro depende.

13

1. Modelagem de código-f onte

I I I . Formas de usar o Diagrama de Componentes:

14

2. Modelagem de versões executáveis

15

Conforme os componentes crescem em número, é naturalreuni-los em grupos relacionados conceitualmente.

Utilizando as f erramentas de desenvolvimento é comumcolocarmos esses grupos de arquivos em diretóriosseparados.

Na UML pode ser utilizado o conceito de package paramodelar esses grupos de arquivos.

I I I . DI AGRAMA DE PACKAGE

16

O caso exemplo f oi organizado nos seguintespackages:

package PI nterf aces conterá os componentesJ anelaPrincipal e J anelaSolicitaCancelamento;

package PControle conterá o componenteControladorDePedidos;

package PConexao conterá o componente Conexao; package PExcecao conterá os componentes

SolicitacaoDeCancelamentoJ aEfetuadaExceptione FaturaNaoEncontradaException.

17

PPedido

PControle

PI nterf aces

PConexao

PExcecao

Pode ser elaborado um diagrama de packagemostrando a dependência entre esses packages.

18

Exercicio

Desenvolva o projeto de Componentes para o Sistema da PETROBRAS

19

UML NO PROJETO DE IMPLANTAÇÃO

DIAGRAMA DE IMPLANTAÇÃO

CONEXÃO ENTRE NÓS

20

Quando temos um sistema grande, que será instalado emvários computadores pode ser interessante elaborar umdiagrama de implantação que apresente como oscomponentes serão distribuídos por esses computadores.

Diagramas de implantação são compostos por nós

I . DI AGRAMA DE I MPLANTAÇÃO

21

Cada nó representa algum tipo de unidade computacional.

Nós podem agrupados em pacotes como as classes ou os componentes

Um nó pode classifi cado como:

- Processador: tem capacidade de processamento, podendo executar um componente

- Dispositivo: não tem capacidade de processamento

Serv idor de Banco de Dados

22

A associação é o relacionamento mais comum entre nós. Uma associação representa uma conexão f ísica entre os nós. As conexões entre nós mostram os caminhos de comunicação através dos quais o sistema irá interagir.

Como a conexão é uma associação podem ser incluídas as multiplicidades. Neste caso temos um relacionamento 1:1.

Maq. atendimento de pedidos

Serv idor de Banco de Dados

TCP/IP

I I . CONEXÕES ENTRE NÓS

conexão

23

O schema PEDI DOS ficará no servidor de Banco de Dados e os demais componentes no PC.

Maq. atendimento de pedidos

Serv idor de Banco de Dados

TCP/IP

No diagrama apresentado a seguir são apresentadasas unidades computacionais de nosso sistema exemplo,o sistema de controle de pedidos: um servidor debanco de dados e um PC, conectados através de umarede TCP/ I P.

24

Os componentes do sistema podem ser alocados a cada nó.

No diagrama apresentado como exemplo, por ser simples, a descrição de como os componentes estão alocados foi realizada através de um comentário: o schema PEDI DOS fi caria no servidor de Banco de Dados e os demais componentes ficariam no PC. PEDI DOS é um componente com estereótipo schema representando exatamente um esquema no banco de dados, contendo as tabelas cliente, pedido, item pedido, f atura, item faturado e livro.

Outras características de cada nó podem também ser descritas.

25

I I . Onde usar?

- Modelagem de Sistemas Embutidos

26

I I . Onde usar?

- Modelagem de Cliente Servidor

27

I I . Onde usar?

- Modelagem de um sistema totalmente distribuído

28

Exercício

Desenvolva o projeto de Implantação para o sistema da PETROBRAS

Recommended