Aula 4 diagrama de caso de uso

46
Diagrama de Caso de Uso Professor Wagner Gadêa Lorenz [email protected] Disciplina: Engenharia de Software II Curso de Sistemas de Informação Cachoeira do Sul, 18 de Março de 2015.

Transcript of Aula 4 diagrama de caso de uso

Page 1: Aula 4   diagrama de caso de uso

Diagrama de Caso de Uso

Professor Wagner Gadêa [email protected]

Disciplina: Engenharia de Software IICurso de Sistemas de Informação

Cachoeira do Sul, 18 de Março de 2015.

Page 2: Aula 4   diagrama de caso de uso

Diagrama de Casos de Uso

O diagrama de casos de uso procura, por meio de um linguagem simples, possibilitar a compreensão do comportamento externo do sistema (em termos de funcionalidade oferecidas por ele) por qualquer pessoa, tentando apresentar o sistema por intermédio de uma perspectiva do usuário.

Ele é entre todos os diagramas da UML o mais abstrato, e com isso, o mais flexível e informal.

Engenharia de Software II 2 Prof. Wagner Gadêa Lorenz

Page 3: Aula 4   diagrama de caso de uso

Diagrama de Casos de Uso

O diagrama de caso de uso é utilizado normalmente no início da modelagem do sistema, principalmente nas etapas de levantamento e análise de requisitos.

Embora seja consultado e possivelmente modificado durante todo o processo de engenharia e serve de base para a modelagem de outros diagramas.

Engenharia de Software II 3 Prof. Wagner Gadêa Lorenz

Page 4: Aula 4   diagrama de caso de uso

Diagrama de Casos de Uso

Este diagrama tem por objetivo apresentar uma visão externa geral das funcionalidades que o sistema deverá oferecer aos usuários, sem se preocupar com a questão de como tais funcionalidade serão implementadas.

Engenharia de Software II 4 Prof. Wagner Gadêa Lorenz

Page 5: Aula 4   diagrama de caso de uso

Diagrama de Casos de Uso

O diagrama de caso de uso é de grande auxílio para a compreensão dos requisitos do sistema, ajudando a especificar, visualizar e documentar as características, funções e serviços do sistema desejado pelo usuário.

Engenharia de Software II 5 Prof. Wagner Gadêa Lorenz

Page 6: Aula 4   diagrama de caso de uso

Diagrama de Casos de Uso

O diagrama de caso de uso tenta identificar os tipos de usuários que irão interagir com o sistema, quais papéis esses usuários irão assumir e quais funções um usuário específico poderá requisitar.

Engenharia de Software II 6 Prof. Wagner Gadêa Lorenz

Page 7: Aula 4   diagrama de caso de uso

Diagrama de Casos de Uso

Por fazer uso de uma linguagem informal e apresentar uma visão geral do comportamento do sistema a ser desenvolvido, o diagrama de caso de uso pode e deve ser apresentado durante as reuniões iniciais com os clientes como uma forma de ilustrar o comportamento do sistema de informação, facilitar a compreensão dos usuários e auxiliar na identificação de possíveis falhas de especificações.

Engenharia de Software II 7 Prof. Wagner Gadêa Lorenz

Page 8: Aula 4   diagrama de caso de uso

Atores

O diagrama de caso de uso concentra-se em dois itens principais:

• atores e

• casos de uso.

Engenharia de Software II 8 Prof. Wagner Gadêa Lorenz

Page 9: Aula 4   diagrama de caso de uso

Atores

Os atores representam os papéis desempenhados pelas diversos usuários que poderão utilizar, de alguma maneira, os serviços e funções do sistema.

Eventualmente um ator pode representar algum hardware especial ou mesmo outro software que interaja com o sistema, como no caso de um agente de software ou um sistema integrado.

Engenharia de Software II 9 Prof. Wagner Gadêa Lorenz

Page 10: Aula 4   diagrama de caso de uso

Atores

Os atores são representados por símbolos de “bonecos magros”, contendo uma breve descrição logo abaixo de seu símbolo que identifica o papel que o ator em questão assume dentro do diagrama.

Engenharia de Software II 10 Prof. Wagner Gadêa Lorenz

Page 11: Aula 4   diagrama de caso de uso

Atores

Engenharia de Software II 11

Figura 1. Exemplo de atores.Prof. Wagner Gadêa Lorenz

Page 12: Aula 4   diagrama de caso de uso

Casos de Uso

Os casos de uso referem-se aos serviços, tarefas ou funcionalidade que podem ser utilizadas de alguma maneira pelos atores que interagem com o sistema, sendo utilizados para expressar e documentar os comportamentos pretendidos para as funções deste.

Engenharia de Software II 12 Prof. Wagner Gadêa Lorenz

Page 13: Aula 4   diagrama de caso de uso

Casos de Uso

Podem ser classificados em casos de uso primários ou secundários.

Um caso de uso é considerado primário quando se refere a um processo importante, que enfoca um dos requisitos funcionais do software, como realizar um saque ou emitir um extrato em um sistema de controle bancário.

Um caso de uso secundário refere-se a um processo periférico, como a manutenção de um cadastro.

Engenharia de Software II 13 Prof. Wagner Gadêa Lorenz

Page 14: Aula 4   diagrama de caso de uso

Casos de UsoOs casos de uso são representados por elipses contendo dentro de si um texto que descreve a que funcionalidade o caso de uso se refere.

Engenharia de Software II 14

Figura 2. Exemplo de caso de usoProf. Wagner Gadêa Lorenz

Page 15: Aula 4   diagrama de caso de uso

Casos de Uso

Os casos de uso costumam ser documentados, fornecendo instruções em linhas gerais de como será seu funcionamento, quais atividades deverão ser executadas, qual evento forçará seu execução, quais atores poderão utilizá-los e quais suas possíveis restrições, entre outras.

Engenharia de Software II 15 Prof. Wagner Gadêa Lorenz

Page 16: Aula 4   diagrama de caso de uso

Documentação de Casos de Uso

A documentação de um caso de uso costuma descrever, por meio de uma linguagem bastante simples, a função em linhas gerais do caso de uso, quais atores interagem com ele, quais etapas devem ser executadas pelo ator e pelo sistema para que o caso de uso execute sua função, quais parâmetros devem ser fornecidos e quais restrições e validações o caso de uso deve ter.

Engenharia de Software II 16 Prof. Wagner Gadêa Lorenz

Page 17: Aula 4   diagrama de caso de uso

Documentação de Casos de Uso

Ver Exemplo "documentação do caso de uso abertura de conta”.

Engenharia de Software II 17 Prof. Wagner Gadêa Lorenz

Page 18: Aula 4   diagrama de caso de uso

Documentação de Casos de Uso

O que significa Caso de Uso Geral?

Pode haver casos de uso gerais e casos de uso especializados, que herdam as características dos casos de uso gerais.

Com isso, no item Caso de Uso Geral, deve-se informar, se existir, o nome do caso de uso geral a partir do qual o caso de uso atual foi derivado.

Engenharia de Software II 18 Prof. Wagner Gadêa Lorenz

Page 19: Aula 4   diagrama de caso de uso

Associações

As associações representam as interações ou relacionamentos entre os atores que fazem parte do diagrama, entre os atores e os casos de uso ou os elementos relacionados entre os casos de uso e outros casos de uso.

Os relacionamentos entre casos de uso recebem nomes especiais, como inclusão, extensão e generalização.

Engenharia de Software II 19 Prof. Wagner Gadêa Lorenz

Page 20: Aula 4   diagrama de caso de uso

Associações

Uma associação entre um ator e um caso de uso demonstra que o ator utiliza, de alguma maneira, a funcionalidade do sistema representada pelo caso de uso em questão, seja requisitando a execução daquela função, seja recebendo o resultado produzido por ela a pedido de outro ator.

Engenharia de Software II 20 Prof. Wagner Gadêa Lorenz

Page 21: Aula 4   diagrama de caso de uso

Associações

Engenharia de Software II 21

Figura 3. Associação entre Ator e Caso de Uso.

Prof. Wagner Gadêa Lorenz

Page 22: Aula 4   diagrama de caso de uso

Generalização/Especialização

O relacionamento de generalização/especialização é uma forma de associação entre casos de uso na qual existem dois ou mais casos de uso com características semelhantes, apresentando pequenas diferenças entre si.

Quando ocorre, costuma-se definir um caso de uso geral que descreve as características compartilhadas por todos os casos de uso em questão e então relacioná-lo com os outros casos de uso envolvidos, cuja documentação conterá apenas as características específicas de cada um.

Engenharia de Software II 22 Prof. Wagner Gadêa Lorenz

Page 23: Aula 4   diagrama de caso de uso

Generalização/Especialização

Engenharia de Software II 23

Figura 4. Especialização/Generalização.

Prof. Wagner Gadêa Lorenz

Page 24: Aula 4   diagrama de caso de uso

Generalização/Especialização

A generalização/especialização também pode ser aplicado a atores. No caso, existe um ator geral chamado “Pessoa"e dois atores especializados chamados “Pessoa Física” e “Pessoa Jurídica”.

Engenharia de Software II 24 Prof. Wagner Gadêa Lorenz

Page 25: Aula 4   diagrama de caso de uso

Generalização/Especialização

Engenharia de Software II 25

Figura 5. Especialização/Generalização com Atores.

Prof. Wagner Gadêa Lorenz

Page 26: Aula 4   diagrama de caso de uso

Inclusão

A associação de inclusão costuma ser utilizada quando existe um cenário, situação ou rotina comum a mais de um caso de uso.

Quando isso ocorre, a documentação dessa rotina é colocada em um caso de uso específico para que outros casos de uso utilizem esse serviço, evitando-se descrever uma mesma sequência de passos em vários casos de uso.

Engenharia de Software II 26 Prof. Wagner Gadêa Lorenz

Page 27: Aula 4   diagrama de caso de uso

Inclusão

Os relacionamentos de inclusão indicam uma obrigatoriedade, ou seja, quando um determinado caso de uso tem um relacionamento de inclusão com outro, a execução do primeiro obriga também a execução do segundo.

Engenharia de Software II 27 Prof. Wagner Gadêa Lorenz

Page 28: Aula 4   diagrama de caso de uso

Inclusão

Engenharia de Software II 28

Figura 6. InclusãoProf. Wagner Gadêa Lorenz

Page 29: Aula 4   diagrama de caso de uso

Inclusão

Engenharia de Software II 29 Prof. Wagner Gadêa LorenzFigura 7. Inclusão

Page 30: Aula 4   diagrama de caso de uso

Extensão

As associações de extensão são utilizadas para descrever cenários opcionais de um caso de uso.

Os casos de uso estendidos descrevem cenários que apenas ocorrerão em uma situação específica se determinada condição for satisfeita.

Engenharia de Software II 30 Prof. Wagner Gadêa Lorenz

Page 31: Aula 4   diagrama de caso de uso

Extensão

Com isso, as associações de extensão indicam a necessidade de um teste para determinar se é necessário executar também o caso de uso estendido ou não.

Relacionamentos de extensão representam eventos que não ocorrem sempre, o que não significa que eles sejam incomuns.

Engenharia de Software II 31 Prof. Wagner Gadêa Lorenz

Page 32: Aula 4   diagrama de caso de uso

Extensão

Engenharia de Software II 32 Prof. Wagner Gadêa Lorenz

Figura 8. Extensão

Page 33: Aula 4   diagrama de caso de uso

Extensão

Engenharia de Software II 33 Prof. Wagner Gadêa Lorenz

Figura 9. Extensão

Page 34: Aula 4   diagrama de caso de uso

Restrições em Associações de Extensão

As restrições são compostas por um texto entre chaves e utilizadas para definir validações, consistências, condições, etc., que devem ser aplicadas a um determinado componente ou situação.

Engenharia de Software II 34 Prof. Wagner Gadêa Lorenz

Page 35: Aula 4   diagrama de caso de uso

Restrições em Associações de Extensão

Engenharia de Software II 35 Prof. Wagner Gadêa Lorenz

Figura 10. Associação de Extensão com Restrição - Realizar Login

Page 36: Aula 4   diagrama de caso de uso

Restrições em Associações de Extensão

Engenharia de Software II 36 Prof. Wagner Gadêa Lorenz

Figura 11. Associação de Extensão com Restrição - Encerrar Conta

Page 37: Aula 4   diagrama de caso de uso

Pontos de Extensão

Identifica um ponto no comportamento de um caso de uso a partir do qual esse comportamento poderá ser estendido pelo comportamento de outro caso de uso, se a condição para que isso ocorra for satisfeita.

Engenharia de Software II 37 Prof. Wagner Gadêa Lorenz

Page 38: Aula 4   diagrama de caso de uso

Pontos de Extensão

Engenharia de Software II 38 Prof. Wagner Gadêa Lorenz

Figura 12. Exemplo pontos de extensão.

Page 39: Aula 4   diagrama de caso de uso

Pontos de Extensão

Ver exemplo “Documentação do Caso de Uso Encerrar Conta”.

Engenharia de Software II 39 Prof. Wagner Gadêa Lorenz

Page 40: Aula 4   diagrama de caso de uso

Fronteiras do Sistemas

Uma fronteira do sistema identifica um classificador que contém um conjunto de casos de uso.

Uma fronteira de sistema permite identificar um subsistema ou mesmo um sistema completo, além de destacar o que está contido no sistema e o que não está.

Engenharia de Software II 40 Prof. Wagner Gadêa Lorenz

Page 41: Aula 4   diagrama de caso de uso

Fronteiras do Sistemas

Normalmente os atores são externos ao sistema, mas quando se tratar de “agentes de software”, que geralmente estão inseridos no ambiente de software, mas são independentes e proativos e podem interagir com o sistema de acordo com os seus objetivos.

Eles são representados por atores, mas são colocados dentro da fronteira, uma vez que fazem parte do software.

Engenharia de Software II 41 Prof. Wagner Gadêa Lorenz

Page 42: Aula 4   diagrama de caso de uso

Fronteiras do Sistemas

Engenharia de Software II 42 Prof. Wagner Gadêa Lorenz

Figura 13. Exemplo Fronteira do Sistema - Sistema de Pesquisa Internet.

Page 43: Aula 4   diagrama de caso de uso

Exercícios

1.Elaborar todos os diagramas abordados na aula na ferramenta UML (aula 4 - Diagrama de Caso de Uso).

2. Elaborar a Documentação do Diagrama de Caso de Uso para a Figura 13. Exemplo Fronteira do Sistema - Sistema de Pesquisa Internet, ou seja, para os casos de uso: Solicitar Pesquisa, Buscar Informação e Buscar Ofertas.

Engenharia de Software II 43 Prof. Wagner Gadêa Lorenz

Page 44: Aula 4   diagrama de caso de uso

Próxima Aula

• Exercícios de fixação sobre Diagramas de Caso de Uso;

• Correção dos Exercícios .

Engenharia de Software II 44 Prof. Wagner Gadêa Lorenz

Page 45: Aula 4   diagrama de caso de uso

Dúvidas

• Conteúdo • Moodle • (http://wagnerglorenz.com.br/moodle/)

• Dúvidas

[email protected]

Engenharia de Software II 45 Prof. Wagner Gadêa Lorenz

Page 46: Aula 4   diagrama de caso de uso

Referências Bibliográficas

• GUEDES, Gilleanes T. A.. UML: uma abordagem prática. São Paulo: Novatec, 2004.

Engenharia de Software II 46 Prof. Wagner Gadêa Lorenz