Deixe um comentário

UML: Diagramas de Casos de Uso

Você sabe o que é um Caso de Uso?

Casos de uso são diagramas utilizados para mostrar as principais funcionalidades do sistema. É uma boa ferramenta para identificar em alto nível as funcionalidades do sistema. É também uma ótima fonte de comunicação com o cliente.

Os diagramas neste artigo foram criados no StarUML.

Atores

Atores são entidades que se relacionam com o sistema. Normalmente é um usuário qualquer, mas pode ser também outro sistema, um dispositivo etc. Atores são representados por um ícone semelhante a um ser humano:

Nem todos os atores precisam aparecer no sistema, aqueles nas quais sua participação é implícita podem ser omitidos.

Casos de Uso

Um caso de uso representa uma funcionalidade do sistema.  É representado por uma elipse, contendo o nome do caso de uso internamente:

Relacionamento entre atores

Pode haver dois tipos de relacionamentos entre atores: de comunicação ou de generalização.

No relacionamento de comunicação ocorre a troca de mensagens entre os atores:

No relacionamento de generalização, um ator genérico é herdado por um ator mais especifico, assim como ocorre entre as classes:

Relacionamento entre atores e casos de uso

Um ator pode se comunicar com um ou mais casos de uso, da mesma forma um caso de uso pode se relacionar com um ou mais atores. O relacionamento pode indicar o sentido do relacionamento:

Relacionamentos entre casos de uso

Os relacionamentos entre casos de uso podem ser do tipo inclusão, extensão ou generalização.

No relacionamento de inclusão, o caso de uso é incluído e passa a fazer parte de outro. As utilidades em decompor um caso de uso para ser utilizado através de inclusão são muitas, mas entre as principais esta a possibilidade de decompor casos de uso complexos em partes menores ou mesmo separar partes que serão utilizadas em vários casos de uso. Veja os dois casos nos exemplos abaixo:

O  relacionamento de extensão é semelhante ao de inclusão no sentido de que funções são incluídas em outro caso de uso. A diferença é que a extensão em casos de uso representa uma exceção, ou seja, representa comportamento não normal do sistema

Já o relacionamento de generalização trata de herança entre um caso de uso mais genérico para um mais especifico:

Você pode também demonstrar no caso de uso os limites do sistema, ou seja, indicar o que faz parte do sistema ou o que é externo a ele:

Fonte: Fernando Amaral

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: