OOAD - Diagramas Estruturados UML
Os diagramas estruturais UML são categorizados da seguinte forma: diagrama de classes, diagrama de objetos, diagrama de componentes e diagrama de implantação.
Diagrama de Classe
Um diagrama de classes modela a visão estática de um sistema. Compreende as classes, interfaces e colaborações de um sistema; e as relações entre eles.
Diagrama de classes de um sistema
Vamos considerar um sistema bancário simplificado.
Um banco tem muitas agências. Em cada zona, uma agência é designada como a sede zonal que supervisiona as outras agências naquela zona. Cada filial pode ter várias contas e empréstimos. Uma conta pode ser uma conta poupança ou uma conta corrente. Um cliente pode abrir uma conta poupança e uma conta corrente. No entanto, o cliente não deve ter mais de uma conta poupança ou conta corrente. Um cliente também pode obter empréstimos do banco.
A figura a seguir mostra o diagrama de classe correspondente.
Aulas no sistema
Banco, agência, conta, conta poupança, conta corrente, empréstimo e cliente.
Relacionamentos
A Bank “has–a” number of Branches - composição, um para muitos
A Branch with role Zonal Head Office supervises other Branches - associação unária, um para muitos
A Branch “has–a” number of accounts - agregação, um para muitos
Da classe Conta, duas classes herdaram, a saber, Conta Poupança e Conta Corrente.
A Customer can have one Current Account - associação, um para um
A Customer can have one Savings Account - associação, um para um
A Branch “has–a” number of Loans - agregação, um para muitos
A Customer can take many loans - associação, um para muitos
Diagrama de Objeto
Um diagrama de objetos modela um grupo de objetos e seus links em um determinado momento. Ele mostra as instâncias das coisas em um diagrama de classes. O diagrama de objetos é a parte estática de um diagrama de interação.
Example - A figura a seguir mostra um diagrama de objeto de uma parte do diagrama de classes do Sistema Bancário.
Diagrama de Componentes
Os diagramas de componentes mostram a organização e as dependências entre um grupo de componentes.
Os diagramas de componentes são compostos por -
- Components
- Interfaces
- Relationships
- Pacotes e subsistemas (opcional)
Os diagramas de componentes são usados para -
construção de sistemas por meio de engenharia direta e reversa.
modelagem de gerenciamento de configuração de arquivos de código-fonte durante o desenvolvimento de um sistema usando uma linguagem de programação orientada a objetos.
representando esquemas em bancos de dados de modelagem.
modelagem de comportamentos de sistemas dinâmicos.
Example
A figura a seguir mostra um diagrama de componentes para modelar o código-fonte de um sistema desenvolvido em C ++. Ele mostra quatro arquivos de código-fonte, a saber, myheader.h, otherheader.h, priority.cpp e other.cpp. Duas versões de myheader.h são mostradas, rastreando desde a versão recente até seu ancestral. O arquivo priority.cpp tem dependência de compilação em other.cpp. O arquivo other.cpp tem dependência de compilação em otherheader.h.
Diagrama de implantação
Um diagrama de implantação enfatiza a configuração dos nós de processamento de tempo de execução e seus componentes que residem neles. Eles geralmente são compostos de nós e dependências ou associações entre os nós.
Os diagramas de implantação são usados para -
dispositivos modelo em sistemas embarcados que normalmente consistem em uma coleção de hardware com uso intensivo de software.
representam as topologias de sistemas cliente / servidor.
modelar sistemas totalmente distribuídos.
Example
A figura a seguir mostra a topologia de um sistema de computador que segue a arquitetura cliente / servidor. A figura ilustra um nó estereotipado como servidor que é composto por processadores. A figura indica que quatro ou mais servidores estão implantados no sistema. Conectados ao servidor estão os nós clientes, onde cada nó representa um dispositivo terminal, como estação de trabalho, laptop, scanner ou impressora. Os nós são representados por ícones que representam claramente o equivalente no mundo real.