Baixe o app para aproveitar ainda mais
Prévia do material em texto
Prof. Cesar Tegani Tofanini Notas de Aula Diagrama de Classes Página 1 de 6 Diagrama de Casos de Uso Definição O diagrama de casos de uso procura, por meio de uma linguagem simples, possibilitar a compreensão do comportamento externo de um sistema por qualquer pessoa, tentando representar o sistema através da perspectiva do usuário. Este diagrama normalmente é usado no início da modelagem do sistema, mostrando quais as funções e serviços que um sistema oferece e quais os usuários que utilizarão estes serviços. Desta forma, pode ser usado para documentar e validar os requisitos de sistema levantados durante o processo inicial de entrevistas para levantamento de informações sobre o sistema que está sendo modelado. O diagrama O diagrama de casos de uso se concentra em dois itens principais: atores e casos de uso, modelando todas as relações existentes entre estes itens. Atores Os atores representam os papéis desempenhados pelos diversos usuários que poderão de alguma maneira os serviços do sistema que está sendo modelado. Lembrando que um ator pode ser um usuário, um hardware ou mesmo outro sistema. Em outras palavras, um ator é qualquer elemento externo que interaja com alguma funcionalidade do sistema. No diagrama o ator é representado pelo desenho de um boneco magro, conforme a figura abaixo. Prof. Cesar Tegani Tofanini Notas de Aula Diagrama de Classes Página 2 de 6 Casos de Uso Casos de uso são os serviços, tarefas ou funções que podem ser utilizados de alguma maneira pelos usuários do sistema, como o clique em um botão ou a alteração dos dados de algum tipo de cadastro. Em geral podemos associar um caso de uso a uma tela do sistema, mas isso não é uma regra, um caso de uso pode estar associado à algum botão, função interna ou mesmo à exibição de alguma informação em um display por exemplo. No diagrama, o caso de uso é representado pelo desenho de uma elipse, juntamente com o seu nome, conforme figura abaixo. Documentação de Casos de Uso Através de uma linguagem bastante simples, é importante descrevermos cada um dos casos, suas relações com os atores e as regras que regem estas relações. A UML não especifica um formato para esta documentação, deixando bastante aberto para que se documente estas regras da forma que se achar mais conveniente. O que se deve ter em mente é que a documentação deve ser fácil de ser compreendida tanto pela equipe de projetistas e implementadores quanto por clientes que por ventura precisem validar o projeto. Neste texto um modelo para a documentação dos casos de uso é apresentado, no anexo a esta nota de aula. Este modelo não é uma regra e sim uma sugestão de gabarito para realizar a documentação. Normalmente, cada empresa tem seu modelo específico. Prof. Cesar Tegani Tofanini Notas de Aula Diagrama de Classes Página 3 de 6 Associações Representam as interações ou relacionamentos entre os itens que fazem parte do diagrama, as relações podem ser: associação simples, especialização/generalização, inclusão e extensão. Veja a tabela abaixo, que mostras as possibilidades de associações. Relação Ator x Ator Caso x Caso Caso x Ator Especialização/Generalização Sim Sim Não Associação simples Não Não Sim Inclusão Não Sim Não Extensão Não Sim Não Especialização/Generalização É o relacionamento entre atores ou entre casos de uso que demonstra que os itens relacionados são iguais, variando em uma ou mais características no item que é especializado. Desta forma, procura-se demonstrar este item faz a mesma coisa do item genérico, mas com alguma particularidade. É representado através de um traço que liga o item genérico com o item que é especializado. Veja um exemplo na figura abaixo. Prof. Cesar Tegani Tofanini Notas de Aula Diagrama de Classes Página 4 de 6 Associação simples É o relacionamento entre um ator e um caso de uso, representando que o ator interage de alguma forma com o caso relacionado. Pode ser um relacionamento de duas vias, onde o ator envia informações ao caso e o caso envia informações ao ator, também pode ser um relacionamento de uma única via, ou seja, ou o caso de uso envia informação ao ator ou o ator envia informação ao caso de uso. No primeiro caso, o relacionamento é representado com uma linha simples ligando o ator ao caso de uso, esta linha pode estar sem setas ou com duas setas, uma apontando para cada lado. No segundo caso, a linha possui apenas uma seta, apontando para o item que recebe a informação. Inclusão A relação de inclusão, da mesma forma que a relação de extensão, é usada quando existe um serviço, situação ou rotina comum a mais de um caso de uso. Quando isso ocorre, a documentação deste serviço é colocada em um caso de uso específico para que outros casos de usos utilizem-se desta rotina, evitando que se descreva de forma duplicada uma mesma funcionalidade. A regra é que toda a vez que um caso de uso for chamado e este faça referência para outro caso de uso através de um relacionamento de inclusão, obrigatoriamente o caso de uso incluído será executado. Extensão A relação de extensão, da mesma forma que a relação de inclusão, é usada quando existe um serviço, situação ou rotina comum a mais de um caso de uso. Quando isso ocorre, a documentação deste serviço é colocada em um caso de uso específico para que outros casos de usos utilizem-se desta rotina, evitando que se descreva de forma duplicada uma mesma funcionalidade. A regra é que toda a vez que um caso de uso for chamado e este faça referência para outro caso de uso através de um relacionamento de extensão, opcionalmente o caso de uso estendido será executado. Prof. Cesar Tegani Tofanini Notas de Aula Diagrama de Classes Página 5 de 6 Isso dependerá da regra de negócio envolvida na execução do caso de uso chamado. Exemplo de associações No diagrama de exemplo acima, representamos parte de um sistema para controle de água em uma caixa d’água. Podemos notar todas as associações descritas anteriormente. Não é necessário se preocupar com o que o sistema está descrevendo para entendermos as associações, vejamos: Relacionamento Tipo Descrição Chefe x Operador Especialização/ Generalização Neste relacionamento podemos tirar a conclusão que o ator Chefe é uma especialização do ator Operador, isso quer dizer que um chefe faz tudo que um operador faz, mas um operador não faz tudo que um chefe faz no sistema. Um exemplo é que o caso de uso Avisar Responsável somente é relacionado com o ator Chefe. Prof. Cesar Tegani Tofanini Notas de Aula Diagrama de Classes Página 6 de 6 Chefe X Avisar Responsável Associação simples de única via Neste caso representamos que o caso de uso Avisar Responsável é utilizado pelo ator Chefe, entretanto as informações trafegam somente do caso de uso para o ator e não no sentido contrário. Uma possível implementação para este caso seria um sinal luminoso que apareceria na sala do chefe para avisar de alguma anormalidade no sistema. Operador X Consultar Nível Associação Simples Representa a chamada da função de consulta de nível pelo operador do sistema. A relação diz que a troca de informações acontece dos dois lados, portanto uma possível implementação seria uma tela onde o usuário teria que clicar em um botão para consultar o nível de água na caixa. Consultar Nível X Desligar Água Extensão Relação de dependênciaopcional, quando o caso de uso Consultar Nível é chamado, dependendo de alguma regra de negócio, o caso de uso Desligar Água poderá ser chamado. Acionar Água X Consultar Tempo Fora do Nível Inclusão Neste relacionamento, toda a vez que um ator executar o caso de uso Acionar Água, o caso de uso Consultar Tempo Fora do Nível também será executado. Poderíamos colocar os dois casos de uso dentro de um mesmo e único caso, mas por questões de entendimento, muitas vezes separamos em casos de usos distintos, facilitando a compreensão do modelo como um todo.
Compartilhar