Os diagramas UML podem ser
divididos em três grandes grupos:
- Diagramas de Comportamento
- Diagramas de Interação
- Diagramas de Estrutura
Vamos estudar os diagramas
de cada grupo.
Estes tipos de diagramas
descrevem características comportamentais de um sistema ou processo de negócios.
- Atividade: descreve regras de
negocio de alto nível, incluindo fluxo de dados. Pode ser ainda utilizado
para descrever lógicas complexas em um sistema.

- Maquina de Estado: formalmente
conhecido como diagrama de estados, descreve os estados de um objeto ou a
interação que possa ocorrer, bem como mudanças de estados.

- Caso de Uso: mostra casos de uso,
atores e seus relacionamentos.

- Interação: uma variação do
diagrama de atividade, que mostra o controle de fluxo dentro de um
sistema, onde cada nó dentro do diagrama pode representar outro digrama de
interação.

Como um subconjunto dos
diagramas de interação, estes tipos de diagramas dão ênfase a interação entre
objetos .
- Comunicação: mostra instancias de
classes, seus relacionamentos e o fluxo de mensagens entre eles.
Normalmente é focado na estrutura organizacional dos objetos e no envio e
recebimento de mensagens.

- Seqüência: modela a lógica
seqüencial de um negocio, em conseqüência da ordenação das mensagens na
linha do tempo.

- Sincronismo: descreve as mudanças
no estado ou condição de uma instancia através do tempo, normalmente usado
para mostrar mudanças no estado de um objeto através do tempo em resposta
a um evento externo.

Estes tipos de diagramas
descrevem elementos estáticos de um modelo, que não altera com o tempo.
- Classes: mostra uma coleção de
objetos estáticos com seus tipos, conteúdos e relacionamentos.

- Estrutura: descreve a estrutura
interna de uma classe, incluindo pontos de interação das classes com
outras partes do sistema.

- Componente: descreve componentes
de um sistema, bem como a interação entre eles, interações e interfaces
publicas.

- Distribuição: mostra a
arquitetura de execução de um sistema, incluindo nós, ambientes de
execução de software e hardware, e as camadas conectando ambos.

- Objeto: descreve objetos e seus
relacionamentos em um determinado ponto do tempo. Normalmente é um caso
especial de diagrama de classes.

- Pacote: mostra como elementos de
um modelo são organizados em pacotes bem como as dependências entre estes.

Para exemplificar o uso de
diagrama UML, vamos implementar os oito principais diagramas de um sistema de
locadora de filmes. Locadora de Filmes foi escolhido por ter sua regra de
negócio simples e conhecida pela maioria. Os diagramas implementados são Diagrama
de Casos de Uso, Diagrama de Classe, Diagrama de Seqüência, Diagrama de
Colaboração, Diagrama de Atividade e Diagrama de Componentes.
Como descrito
anteriormente, um caso de uso descreve a interação entre o usuário e o sistema,
ou mesmo parte do sistema ou de outro sistema com o mesmo. No nosso sistema de
locadora, descrevemos três casos de uso em nosso diagrama: o cliente reserva um
filme, o cliente aluga um filme e o cliente devolve um filme.

O diagrama de classe
mostra uma coleção de objetos estáticos com seus tipos e relacionamentos. Neste
modelo omitimos os métodos. Cada entidade real do sistema é representada por um
diagrama, ou seja uma classe. Nesta são apresentadas os atributos, ou
características, de cada objeto.

O diagrama de Seqüência
modela a lógica seqüencial de um negocio, em conseqüência da ordenação das
mensagens na linha do tempo. No exemplo do sistema de locadora de filmes, o
cliente solicita a locação a um funcionário, que verifica alguma pendência de
locações anteriores, em seguida verifica a disponibilidade do filme, em seguida
altera o status do filme e aprova a locação.

O diagrama de colaboração,
assim como de seqüência, é outro tipo de diagrama de interação. Este tipo de
diagrama mostra como os objetos de um sistema interagem com os demais.

O diagrama de atividade
descreve regras de negocio de alto nível, incluindo fluxo de dados. Neste
exemplo, o diagrama descreve o processo inicial da locação, onde é verificado o
registro do cliente, e a locação é aprovada ou recusada.

Um diagrama de componentes
descreve componentes de um sistema, bem como a interação entre eles, interações
e interfaces publicas. Neste diagrama é exibida a aplicação, bem como sua
interação com alguns registros do sistema.
