Exercício 2.3: Criando o Diagrama de Modelagem de Domínio do PiggyBank

Neste exercício, você criará a área funcional Operações da Conta e o diagrama de modelo de domínio do PiggyBank. O diagrama de modelo de domínio descreve o domínio do sistema PiggyBank, utilizando um diagrama de classe que mostra as principais classes no sistema.

O modelo de análise é construído sobre a área funcional Operações da Conta que você identificou no Módulo 1. O pacote Operações da Conta contém o subpacote Elementos de Análise de Operações da Conta, bem como as realizações de casos de uso Exibir Saldo, Transferir Dinheiro e Descontar Cheque. Um subpacote Elementos de Análise de Operações da Conta contém os elementos de análise RUP® (Rational Unified Process®) que você cria ao modelar a estrutura estática do modelo. O pacote também contém o diagrama de elementos de análise de Operações da Conta, que é utilizado como um espaço de trabalho para criar os diagramas no nível de domínio.

O diagrama de domínio é um tipo de diagrama de classes que mostra as principais classes do sistema financeiro on-line PiggyBank. O diagrama de classe simples mostra as principais classes identificadas no exercício anterior, os atributos das classes e quaisquer relacionamentos entre as classes. O modelo de domínio descreve apenas o domínio do sistema e não descreve detalhes do aplicativo em si. O modelo de domínio faz isso modelando apenas as classes de entidade do sistema e seus relacionamentos. O diagrama de domínio é denominado estático, porque modela apenas a estrutura do sistema. Neste exercício, você criará as classes de entidade e modelará seus atributos. Você identificará e modelará as operações de cada entidade ao criar o diagrama de seqüência para cada caso de uso.

A modelagem é um processo iterativo. Seu modelo de domínio é alterado à medida que você descobre informações adicionais sobre o sistema que está sendo modelado. Neste tutorial, você esboça o diagrama de domínio básico e modela todos os atributos para cada entidade.

Criando uma Área Funcional

Como o modelo de análise é construído sobre o modelo de casos de uso, a área funcional Operações da Conta armazena os elementos de análise do PiggyBank e as realizações de casos de uso. Você deve criar uma nova área funcional de Operações da Conta na raiz do modelo.

Para criar a área funcional Operações da Conta:
  1. Na visualização Explorador de Modelos, expanda Modelo de Análise, expanda «ModelLibrary» Blocos de Construção de Análise, clique com o botão direito do mouse no pacote ${functional.area}; em seguida, clique em Copiar.
  2. Clique com o botão direito do mouse no pacote Modelo de Análise; em seguida, clique em Colar.
  3. Clique com o botão direito do mouse em ${functional.area}; em seguida, clique em Localizar/Substituir
  4. No campo Localizar o quê, digite ${functional.area} e clique em Substituir.
  5. No campo Substituir por, digite Operações da Conta e clique em OK.

Para incluir a realização de caso de uso Exibir Saldo na área funcional Operações da Conta:
  1. Na visualização Explorador de Modelos, expanda Modelo de Análise, expanda «ModelLibrary» Blocos de Construção de Análise, clique com o botão direito do mouse no pacote ${use.case}; em seguida, clique em Copiar.
  2. Clique com o botão direito do mouse no pacote Operações da Conta; em seguida, clique em Colar.
  3. Clique com o botão direito do mouse em ${use.case}; em seguida, clique em Localizar/Substituir.
  4. No campo Localizar o quê, digite ${use.case} e clique em Substituir.
  5. No campo Substituir por, digite Exibir Saldo e clique em OK.
Para incluir a realização de caso de uso Transferir Dinheiro na área funcional Operações da Conta:
  1. Na visualização Explorador de Modelos, expanda Modelo de Análise, expanda «ModelLibrary» Blocos de Construção de Análise, clique com o botão direito do mouse no pacote ${use.case}; em seguida, clique em Copiar.
  2. Clique com o botão direito do mouse no pacote Operações da Conta; em seguida, clique em Colar.
  3. Clique com o botão direito do mouse em ${use.case}; em seguida, clique em Localizar/Substituir.
  4. No campo Localizar o quê, digite ${use.case} e clique em Substituir.
  5. No campo Substituir por, digite Transferir Dinheiro e clique em OK.
Para incluir a realização de caso de uso Descontar Cheque na área funcional Operações da Conta:
  1. Na visualização Explorador de Modelos, expanda Modelo de Análise, expanda «ModelLibrary» Blocos de Construção de Análise, clique com o botão direito do mouse no pacote ${use.case}; em seguida, clique em Copiar.
  2. Clique com o botão direito do mouse no pacote Operações da Conta; em seguida, clique em Colar.
  3. Clique com o botão direito do mouse em ${use.case}; em seguida, clique em Localizar/Substituir.
  4. No campo Localizar o quê, digite ${use.case} e clique em Substituir.
  5. No campo Substituir por, digite Descontar Cheque e clique em OK.

A área funcional Operações da Conta contém as realizações de caso de uso e os elementos de análise para o modelo de análise do PiggyBank. O subpacote Elementos de Análise de Operações da Conta contém todos os elementos de análise para o projeto. Você pode utilizar o diagrama de classes Classes de Análise de Operações da Conta como um espaço de trabalho para construir os diagramas de domínio do PiggyBank.

Criando o Diagrama de Modelo de Domínio

Você criará o diagrama de modelo de domínio na área funcional Operações da Conta e, em seguida, copiará os elementos do modelo visualizado para o pacote «perspectiva» Visões Gerais do gabarito de modelo de análise. O diagrama Classes de Análise de Operações da Conta é o espaço de trabalho para criar diagramas, enquanto o pacote «perspectiva» Visões Gerais contém apenas a cópia final dos diagramas, e não as classes.

Para criar um diagrama de domínio:
  1. Na visualização Explorador de Modelos, expanda Modelo de Análise e expanda Operações da Conta.
  2. No pacote Elementos de Análise de Operações da Conta, dê um clique duplo em Classes de Análise de Operações da Conta.

Você criou o diagrama Elementos de Análise do PiggyBank. Este diagrama é um espaço de trabalho no qual é possível criar e visualizar classes dentro da estrutura da área funcional. Você deve criar seus diagramas de classes no nível de domínio neste pacote e, em seguida, arrastar os diagramas completos para o pacote «perspectiva» Visões Gerais para concluir o modelo.

Criando a Classe Conta

A classe conta representa a conta do usuário do PiggyBank. A classe conta descreve as tarefas funcionais associadas à ela, como getBalance e findForCustomer.

Para modelar a classe Conta:
  1. Na Paleta, dê um clique duplo em Classe e nomeie a classe como Conta.
  2. No editor de diagrama, clique na classe Conta e, na visualização Propriedades, na página Estereótipos, clique em Incluir Estereótipos .
  3. Na janela Aplicar Estereótipos, selecione a caixa de opções Entidade e clique em OK.
  4. No editor de diagrama, clique com o botão direito do mouse ma classe Conta; em seguida, clique em Incluir UML > Atributo e nomeie o atributo como saldo.
  5. No editor de diagrama, na classe Conta, clique no atributo saldo e, na visualização Propriedades, na página Geral, clique em Selecionar Tipo.
  6. Na janela Selecionar Elemento, expanda UML2, clique em Inteiro e clique em OK.
  7. No editor de diagrama, clique com o botão direito do mouse na classe Conta; em seguida, clique em Incluir UML > Atributo e nomeie o atributo como número.
  8. No editor de diagrama, na classe Conta, clique no atributo número.
  9. Na visualização Propriedades, na página Geral, clique em Selecionar Tipo
  10. Na janela Selecionar Elemento, expanda UML2, clique em Cadeia e clique em OK.
Você modelou a classe Conta.
Nota: O gabarito Modelo de Análise contém classes vazias que são estereotipadas utilizando os estereótipos de elemento de análise RUP. Em vez de criar novas classes e aplicar estereótipos a elas, você pode copiar os elementos de análise para a área funcional e renomeá-los. Para utilizar os elementos de análise RUP existentes, na visualização Explorador de Modelos, no pacote «ModelLibrary» Blocos de Construção, clique com o botão direito do mouse em um elemento de análise; em seguida clique em Copiar. Clique com o botão direito do mouse em sua área funcional; em seguida, clique em Colar.

Criando a Classe Transferência

A classe Transferência descreve a transação que ocorre quando um cliente transfere dinheiro de uma conta para outra. A classe Transferência possui duas associações à classe Conta.

Para modelar a classe Transferência:
  1. Na Paleta, dê um clique duplo em Classe e nomeie a classe como Transferência.
  2. No editor de diagrama, clique na classe Transferência e, na visualização Propriedades, na página Estereótipos, clique em Incluir Estereótipos .
  3. Na janela Aplicar Estereótipos, selecione a caixa de opções Entidade e clique em OK.
  4. No editor de diagrama, clique com o botão direito do mouse na classe Transferência; em seguida, clique em Incluir UML > Atributo e nomeie o atributo como valor.
  5. No editor de diagrama, na classe Transferência, clique no atributo valor.
  6. Na visualização Propriedades, na página Geral, clique em Selecionar Tipo.
  7. Na janela Selecionar Elemento, expanda UML2, clique em Inteiro e clique em OK.

Você modelou a classe Transferência.

Modelando os Relacionamentos entre Transferência e Conta

A classe Transferência depende da classe Conta.

Para modelar os relacionamentos entre Transferência e Conta:
  1. Na Paleta, ao lado de Dependência, clique na seta para baixo e clique em Uso.
  2. No editor de diagrama, posicione o cursor sobre a classe Transferência e arraste-a para a classe Conta.

Você modelou os relacionamentos da classe Transferência. Seu diagrama deverá ser semelhante à figura a seguir:

Os Relacionamentos entre Conta e Transferência.

Criando a Classe Cheque

A classe Cheque descreve um cheque é descontado no PiggyBank.

Para modelar a classe Cheque:
  1. Na Paleta, dê um clique duplo em Classe e nomeie a classe como Cheque.
  2. No editor de diagrama, clique na classe Cheque.
  3. Na visualização Propriedades, na página Estereótipos, clique em Incluir Estereótipos.
  4. Na janela Aplicar Estereótipos, selecione a caixa de opções Entidade, em seguida, clique em OK.
  5. No editor de diagrama, clique com o botão direito do mouse na classe Cheque; em seguida, clique em Incluir UML > Atributo e nomeie o atributo como valor.
  6. No editor de diagrama, na classe Cheque, clique no atributo valor.
  7. Na visualização Propriedades, na página Geral, clique em Selecionar Tipo.
  8. Na janela Selecionar Elemento, expanda UML2; clique em Inteiro e clique em OK.
  9. No editor de diagrama, na classe Cheque, clique no atributo valor.
  10. Na visualização Propriedades, na página Geral, ao lado de Visibilidade, clique em pública.
  11. No editor de diagrama, clique com o botão direito do mouse na classe Cheque; em seguida, clique em Incluir UML > Atributo e nomeie o atributo como referência.
  12. No editor de diagrama, na classe Cheque, clique no atributo referência.
  13. Na visualização Propriedades, na página Geral, clique em Selecionar Tipo.
  14. Na janela Selecionar Elemento, expanda UML2, clique em Cadeia e clique em OK.
  15. No editor de diagrama, na classe Cheque, clique no atributo referência.
  16. Na visualização Propriedades, na página Geral, ao lado de Visibilidade, clique em pública.

Você modelou a classe Cheque. Seu diagrama deverá ser semelhante à figura a seguir:

A classe Cheque mostrando dois atributos: valor e referência.

Modelando os Relacionamentos entre Cheque e Conta

A classe Cheque depende da classe Conta.

Para modelar os relacionamentos entre Cheque e Conta:
  1. Na Paleta, clique em Uso.
  2. No editor de diagrama, posicione o cursor sobre a classe Cheque e arraste-a para a classe Conta.

Você modelou os relacionamentos da classe Cheque.

Criando a Classe Cliente

A classe Cliente descreve um cliente do PiggyBank.

Para modelar a classe Cliente:
  1. Na Paleta, dê um clique duplo em Classe e nomeie a classe como Cliente.
  2. No editor de diagrama, clique na classe Cliente.
  3. Na visualização Propriedades, na página Estereótipos, clique em Incluir Estereótipos.
  4. Na janela Aplicar Estereótipos, selecione a caixa de opções Entidade e clique em OK.
  5. No editor de diagrama, clique com o botão direito do mouse na classe Cliente; em seguida, clique em Incluir UML > Atributo e nomeie o atributo como loginId.
  6. No editor de diagrama, na classe Cliente, clique no atributo loginID.
  7. Na visualização Propriedades, na página Geral, clique em Selecionar Tipo.
  8. Na janela Selecionar Elemento, expanda UML2, clique em Cadeia e clique em OK.
  9. No editor de diagrama, na classe Cheque, clique no atributo loginId.
  10. Na visualização Propriedades, na página Geral, ao lado de Visibilidade, clique em pública.
  11. No editor de diagrama, clique com o botão direito do mouse na classe Cheque; em seguida, clique em Incluir UML > Atributo e nomeie o atributo como nome.
  12. No editor de diagrama, na classe Cheque, clique no atributo nome.
  13. Na visualização Propriedades, na página Geral, clique em Selecionar Tipo.
  14. Na janela Selecionar Elemento, expanda UML2, clique em Cadeia e clique em OK.
  15. No editor de diagrama, na classe Cheque, clique no atributo nome.
  16. Na visualização Propriedades, na página Geral, ao lado de Visibilidade, clique em pública.

Você modelou a classe Cliente.

Modelando os Relacionamentos entre Conta e Cliente

A classe Conta depende da classe Cliente.

Para modelar os relacionamentos entre Conta e Cliente:
  1. Na Paleta, clique em Uso.
  2. No editor de diagrama, posicione o cursor sobre a classe Conta e arraste-a para a classe Cliente.

Você modelou os relacionamentos da classe Cliente. Também concluiu o esboço básico do diagrama de domínio. Seu diagrama deverá ser semelhante à figura a seguir:

O esboço básico do diagrama de domínio do PiggyBank.

O diagrama modela o domínio básico do sistema, descrevendo a estrutura das principais classes do sistema e os relacionamentos existentes entre elas. Por exemplo, um clique, identificado por um ID de login e nome exclusivos, pode ter mais de uma conta, mas uma conta não pode pertencer a mais de um cliente.

Criando o Diagrama de Visão Geral de Modelo de Domínio

Agora você criará o diagrama de modelo de domínio do PiggyBank no pacote «perspectiva» Visões Gerais. Esta é a versão final do diagrama que fornece visão geral e informações de navegação.

Para criar o diagrama de visão geral de domínio do PiggyBank:
  1. Na visualização Explorador de Modelos, expanda Modelo de Análise, expanda «perspectiva» Visões Gerais, clique com o botão direito do mouse em ${project} Modelo de Domínio; em seguida, clique em Localizar/Substituir.
  2. No campo Localizar o quê, digite ${project} e clique em Substituir.
  3. No campo Substituir por, digite PiggyBank e clique emOK.
  4. Dê um clique duplo no diagrama Modelo de Domínio do PiggyBank.
  5. Na visualização Explorador de Modelos, expanda Operações da Conta e expanda Elementos de Análise de Operações da Conta.
  6. Na visualização Explorador de Modelos, clique no elemento de análise Cliente e arraste-o para o diagrama.
  7. Na visualização Explorador de Modelos, clique no elemento de análise Conta e arraste-o para o diagrama.
  8. Na visualização Explorador de Modelos, clique no elemento de análise Transferência e arraste-o para o diagrama.
  9. Na visualização Explorador de Modelos, clique no elemento de análise Cheque e arraste-o para o diagrama.

Você criou o diagrama de modelo de domínio do PiggyBank no pacote «perspectiva» Visões Gerais. Esta é a versão final de seu diagrama. Você pode utilizar o diagrama de Classes de Análise de Operações da Conta como um espaço de trabalho incompleto para construir os diagramas de participantes de caso de uso.

Termos de Utilização | Feedback
(C) Direitos autorais IBM Corporation 2004, 2005. Todos os Direitos Reservados.