Ao projetar aplicações empresariais complexas como um Sistema de Gestão de Armazém (WMS), visualizar os limites do sistema, atores e casos de uso é essencial. Como instrutor técnico especialista na Visual Paradigm, recebo frequentemente perguntas sobre como criar diagramas arquitetônicos limpos e prontos para apresentações, sem me atrapalhar com ferramentas de arrastar e soltar pesadas. Neste tutorial de masterclass, vou guiá-lo pelo meu processo de pensamento exato para construir um diagrama de casos de uso abrangente de WMS usando PlantUML dentro do editor gratuito de PlantUML, VPasCode.
Aqui está uma prévia do diagrama final que construiremos juntos:

1. Configurando Estilos Globais e Estrutura Fundamental
Sempre que inicio um novo projeto de diagrama como código, minha primeira prioridade é estabelecer uma hierarquia visual e estética consistentes. Diagramas padrão muitas vezes podem parecer desordenados, por isso gosto de sobrescrever os estilos padrão cedo para garantir linhas limpas, tipografia legível e paletas de cores estruturadas.
Começo configurando conectores ortogonais (linetype ortho) para manter todas as linhas de conexão limpas, horizontais ou verticais—evitando linhas diagonais confusas que cruzam o texto. Em seguida, configuro uma codificação de cores personalizada para atores e casos de uso, permitindo distinguir imediatamente atores primários, entidades secundárias e limites internos do sistema.
@startuml
skinparam linetype ortho
skinparam defaultFontSize 14
skinparam defaultFontColor #333333
skinparam vpDiagramType UseCaseDiagram
skinparam actor {
BackgroundColor #E8F5E9
}
skinparam usecase {
BackgroundColor #BBDEFB
BorderColor #1976D2
ArrowColor #1976D2
}
left to right direction
2. Definindo Atores do Sistema e Limites do Sistema
Em seguida, preciso definir os limites do sistema e identificar quem interage com ele. No nosso cenário de gestão de armazém, temos três atores distintos:
- Gerente de Armazém: Um ator primário responsável pelas operações diárias, níveis de estoque e movimentações de mercadorias.
- Administrador: Um ator primário responsável por gerenciar contagens de estoque de alto nível, pedidos de compra e relatórios do sistema.
- Fornecedor: Um ator secundário que dispara remessas de entrada e entradas de estoque de uma perspectiva externa.
Embrulho todas as funcionalidades internas do sistema dentro de um retângulo contêiner que representa o Sistema de Gestão de Armazém. Isso separa claramente os casos de uso internos dos atores externos.
actor "Gerente de Armazémn(Primário)" as manager
actor "Administradorn(Primário)" as admin
actor "Fornecedorn(Secundário)" as supplier
rectangle "Sistema de Gestão de Armazém" {
usecase "Receber Mercadorias de Entrada" as UC1
usecase "Processar Pedido de Compra" as UC2
usecase "Registrar Remessa de Entrada" as UC3
usecase "Realizar Entrada de Estoque" as UC4
usecase "Separar Pedidos" as UC5
usecase "Processar Pedido de Venda" as UC6
usecase "Realizar Saída de Estoque" as UC7
usecase "Gerenciar Níveis de Estoque" as UC8
usecase "Realizar Contagem de Estoque" as UC9
usecase "Gerar Relatórios" as UC10
}
3. Mapeando Associações de Atores e Codificação de Cores
Para tornar o diagrama intuitivamente escaneável, mapeio as associações entre atores e seus respectivos casos de uso. Aplico links codificados por cores correspondentes a cada tipo de ator: preto neutro para gerentes de armazém, carmesim para administradores e goldenrod para fornecedores. Esta técnica reduz drasticamente a carga cognitiva quando revisores analisam as permissões do sistema.
manager -[#black]- UC1
manager -[#black]- UC5
manager -[#black]- UC10
manager -[#black]- UC8
admin -[#crimson]- UC2
admin -[#crimson]- UC6
admin -[#crimson]- UC9
UC3 -[#goldenrod]- fornecedor
UC4 -[#goldenrod]- fornecedor
4. Estabelecimento de Relacionamentos entre Casos de Uso (Inclui e Estende)
O passo final é definir como os casos de uso internos se relacionam entre si usando setas de dependência. Eu uso <<include>> relacionamentos para mostrar subprocessos obrigatórios (como o recebimento de mercadorias de entrada, que exige registro de remessa e registro de entrada em estoque) e <<extend>> relacionamentos para comportamentos opcionais ou condicionais, como o gerenciamento de níveis de estoque durante rupturas de estoque.
UC1 ...> UC2 : <>
UC1 ...> UC3 : <>
UC1 ...> UC4 : <>
UC2 ...> UC6 : <>
UC5 ...> UC6 : <>
UC8 <... UC7 : <>
@enduml
Por que usar o VPasCode para seu fluxo de trabalho de diagramação?

Criar este diagrama dentro do VPasCode oferece várias vantagens distintas em relação às ferramentas tradicionais de desenho para desktop:
- Renderização em Tempo Real:À medida que você digita ou ajusta seu código PlantUML, a visualização prévia é atualizada instantaneamente.
- Detecção Automática de Formato:Você nunca precisa especificar manualmente seu mecanismo de sintaxe—o VPasCode detecta PlantUML, Mermaid e outros formatos em tempo real.
- Opções de Exportação Gratuitas:Baixe seus diagramas de arquitetura finalizados como PNGs de alta resolução, SVGs escaláveis ou compartilhe-os instantaneamente com sua equipe por meio de URLs seguras.
Pronto para criar seus próprios diagramas em segundos?
Experimente a maneira mais fácil de escrever, renderizar e compartilhar diagramas técnicos com código.


