UML - Diagramas de implantação
Os diagramas de implantação são usados para visualizar a topologia dos componentes físicos de um sistema, onde os componentes de software são implantados.
Os diagramas de implantação são usados para descrever a visão de implantação estática de um sistema. Os diagramas de implantação consistem em nós e seus relacionamentos.
Objetivo dos diagramas de implantação
O próprio termo Implantação descreve o propósito do diagrama. Os diagramas de implantação são usados para descrever os componentes de hardware, onde os componentes de software são implantados. Os diagramas de componentes e os diagramas de implantação estão intimamente relacionados.
Os diagramas de componentes são usados para descrever os componentes e os diagramas de implantação mostram como eles são implantados no hardware.
A UML é projetada principalmente para focar nos artefatos de software de um sistema. No entanto, esses dois diagramas são diagramas especiais usados para enfocar os componentes de software e hardware.
A maioria dos diagramas UML é usada para lidar com componentes lógicos, mas os diagramas de implantação são feitos para enfocar a topologia de hardware de um sistema. Os diagramas de implantação são usados pelos engenheiros do sistema.
O objetivo dos diagramas de implantação pode ser descrito como -
Visualize a topologia de hardware de um sistema.
Descreva os componentes de hardware usados para implantar componentes de software.
Descreva os nós de processamento do tempo de execução.
Como desenhar um diagrama de implantação?
O diagrama de implantação representa a visão de implantação de um sistema. Está relacionado ao diagrama de componentes porque os componentes são implantados usando os diagramas de implantação. Um diagrama de implantação consiste em nós. Os nós nada mais são do que hardware físico usado para implantar o aplicativo.
Os diagramas de implantação são úteis para engenheiros de sistema. Um diagrama de implantação eficiente é muito importante, pois controla os seguintes parâmetros -
Performance
Scalability
Maintainability
Portability
Antes de desenhar um diagrama de implantação, os seguintes artefatos devem ser identificados -
Nodes
Relações entre nós
A seguir está um diagrama de implantação de amostra para fornecer uma ideia da visão de implantação do sistema de gerenciamento de pedidos. Aqui, mostramos nós como -
Monitor
Modem
Servidor de cache
Server
O aplicativo é considerado um aplicativo baseado na web, que é implementado em um ambiente em cluster usando o servidor 1, o servidor 2 e o servidor 3. O usuário se conecta ao aplicativo usando a Internet. O controle flui do servidor de armazenamento em cache para o ambiente em cluster.
O diagrama de implantação a seguir foi desenhado considerando todos os pontos mencionados acima.
Onde usar diagramas de implantação?
Os diagramas de implantação são usados principalmente por engenheiros de sistema. Esses diagramas são usados para descrever os componentes físicos (hardware), sua distribuição e associação.
Os diagramas de implantação podem ser visualizados como os componentes / nós de hardware nos quais residem os componentes de software.
Os aplicativos de software são desenvolvidos para modelar processos de negócios complexos. Aplicativos de software eficientes não são suficientes para atender aos requisitos de negócios. Os requisitos de negócios podem ser descritos como a necessidade de oferecer suporte ao número crescente de usuários, tempo de resposta rápido, etc.
Para atender a esses tipos de requisitos, os componentes de hardware devem ser projetados de forma eficiente e econômica.
Os aplicativos de software atuais são muito complexos por natureza. Os aplicativos de software podem ser autônomos, baseados na web, distribuídos, baseados em mainframe e muitos mais. Portanto, é muito importante projetar os componentes de hardware de forma eficiente.
Os diagramas de implantação podem ser usados -
Para modelar a topologia de hardware de um sistema.
Para modelar o sistema embarcado.
Para modelar os detalhes de hardware para um sistema cliente / servidor.
Para modelar os detalhes de hardware de um aplicativo distribuído.
Para engenharia direta e reversa.