Aula9 - Diagrama de Causa e Efeito e Diagrama de Dispers%E3o
Objetivos: O diagrama de CASOS DE USO procura, por meio de uma linguagem simples, possibilitar a...
Transcript of Objetivos: O diagrama de CASOS DE USO procura, por meio de uma linguagem simples, possibilitar a...
Objetivos:Objetivos:
O diagrama de CASOS DE USO procura, por meio de uma linguagem simples,
possibilitar a compreensão do comportamento externo do sistema por qualquer
pessoa, através da perspectiva do usuário ...
- visão externa geral das funções e serviços disponibilizadas
O diagrama de CASOS DE USO procura, por meio de uma linguagem simples,
possibilitar a compreensão do comportamento externo do sistema por qualquer
pessoa, através da perspectiva do usuário ...
- visão externa geral das funções e serviços disponibilizadas
Auxiliar na etapa de análise de requisitos, ajudando a especificar, visualizar e
documentar as características, funções e serviços do sistema desejado pelo
usuário.
Auxiliar na etapa de análise de requisitos, ajudando a especificar, visualizar e
documentar as características, funções e serviços do sistema desejado pelo
usuário.
Identificar os tipos de usuários que irão interagir com o sistema.Identificar os tipos de usuários que irão interagir com o sistema.
•... representação das funcionalidades externamente observáveis do sistema e dos elementos externos que interagem com o mesmo.
•Esse modelo representa os requisitos funcionais do sistema.
•Também direciona diversas das atividades posteriores do ciclo de vida do sistema de software.
•Além disso, força os desenvolvedores a moldar o sistema de acordo com as necessidades do usuário.
•Equipe de clientes (validação)•aprovam o que o sistema deverá fazer•entendem o que o sistema deverá fazer
•Equipe de desenvolvedores •Ponto de partida para refinar requisitos de software.•Podem seguir um desenvolvimento dirigido a casos de uso.•Designer (projetista): encontrar classes •Testadores: usam como base para casos de teste
Formatos de representação
Formato
Este caso de uso inicia quanto o Cliente chega ao caixa eletrônico e insere seu cartão. O Sistema requisita a senha do Cliente. Após o Cliente fornecer sua senha e esta ser validada, o Sistema exibe as opções de operações possíveis. O Cliente opta por realizar um saque. Então o Sistema requisita o total a ser sacado. O Cliente fornece o valor da quantidade que deseja sacar. O Sistema fornece a quantia desejada e imprime o recibo para o Cliente. O Cliente retira a quantia e o recibo, e o caso de uso termina.
Exemplo de descrição contínua
Formato
1) Cliente insere seu cartão no caixa eletrônico.2) Sistema apresenta solicitação de senha.3) Cliente digita senha.4) Sistema valida a senha e exibe menu de operações disponíveis.5) Cliente indica que deseja realizar um saque.6) Sistema requisita o valor da quantia a ser sacada.7) Cliente fornece o valor da quantia que deseja sacar.8) Sistema fornece a quantia desejada e imprime o recibo para o Cliente9) Cliente retira a quantia e o recibo, e o caso de uso termina.
Exemplo de descrição numerada
Formato
Cliente Sistema
Insere seu cartão no caixa eletrônico. Digita senha.
Solicita realização de saque. Fornece o valor da quantia que deseja sacar.
Retira a quantia e o recibo.
Apresenta solicitação de senha. Valida senha e exibe menu de operações disponíveis. Requisita quantia a ser sacada. Fornece a quantia desejada e imprime o recibo para o Cliente
Exemplo de descrição tabular
Conceitos:Conceitos:
Dentre todos os diagramas é o mais flexível e informal.Dentre todos os diagramas é o mais flexível e informal.
Este é utilizado no início da modelagem do sistema.Este é utilizado no início da modelagem do sistema.
Pode ser modificado durante a etapa da análise e servir para modelar outros
diagramas•Diagrama mais ABSTRATO•Diagrama mais FLEXÍVEL•Diagrama mais INFORMAL
Pode ser modificado durante a etapa da análise e servir para modelar outros
diagramas•Diagrama mais ABSTRATO•Diagrama mais FLEXÍVEL•Diagrama mais INFORMAL
Conceitos:Conceitos:
É responsável por apresentar uma visão geral do comportamento do sistema a
ser devolvido.
Sem se preocupar com o COMO;
É responsável por apresentar uma visão geral do comportamento do sistema a
ser devolvido.
Sem se preocupar com o COMO;
O diagrama de caso de uso concentra-se em dois itens principais: Atores e Casos
de Uso.
O diagrama de caso de uso concentra-se em dois itens principais: Atores e Casos
de Uso.
Atores:Atores:
Normalmente: Representam os papéis desempenhados pelos diversos usuários.Normalmente: Representam os papéis desempenhados pelos diversos usuários.
Eventualmente: Ele pode representar um hardware especial ou outro software que
interaja com o sistema.
Eventualmente: Ele pode representar um hardware especial ou outro software que
interaja com o sistema.
São representados por bonecos magros:São representados por bonecos magros:
Atores - Exemplos:Atores - Exemplos:
Casos de Uso:Casos de Uso:
Referem-se aos serviços, tarefas ou funções que podem ser utilizados pelos
usuários do sistema.
Referem-se aos serviços, tarefas ou funções que podem ser utilizados pelos
usuários do sistema.
Um caso de uso representa o que um ator quer que o sistema faça. Um caso de uso representa o que um ator quer que o sistema faça.
Pode se associar um caso de uso a outro caso de uso do sistema. Pode se associar um caso de uso a outro caso de uso do sistema.
Os casos de uso costumam ser documentados, fornecendo instruções em linhas
gerais de como será seu funcionamento, quais atividades deverão ser
executadas, quais atores os poderão utilizar, quais suas possíveis restrições,
entre outras.
Os casos de uso costumam ser documentados, fornecendo instruções em linhas
gerais de como será seu funcionamento, quais atividades deverão ser
executadas, quais atores os poderão utilizar, quais suas possíveis restrições,
entre outras.
Casos de Uso - Exemplo:Casos de Uso - Exemplo:
São representados por elipses:São representados por elipses:
Casos de Uso - DOCUMENTAÇÃO:Casos de Uso - DOCUMENTAÇÃO:
Associações:Associações:
Representam os relacionamentos entre os atores que fazem parte do diagrama,
entre os atores e os casos de uso ou os relacionamentos entre os casos de uso e
outros casos de uso. Relacionamento entre:
Representam os relacionamentos entre os atores que fazem parte do diagrama,
entre os atores e os casos de uso ou os relacionamentos entre os casos de uso e
outros casos de uso. Relacionamento entre:
•ATORES
•ATORES e CASOS DE USO (COMUNICAÇÃO)
•CASOS DE USO e CASOS DE USO
•ATORES
•ATORES e CASOS DE USO (COMUNICAÇÃO)
•CASOS DE USO e CASOS DE USO
Recebem nomes como: Inclusão, Extensão e Generalização.Recebem nomes como: Inclusão, Extensão e Generalização.
Exemplo:Exemplo:
Associações:Associações:
Ator Caso de UsoAtor Caso de Uso
Demonstra que o ator utiliza-se, de alguma maneira, uma função do sistema
representada pelo caso de uso – requisitando a execução e recebendo o
resultado produzido. ***Cliente utiliza de alguma maneira o serviço Abertura Conta,
informação trafega nas duas direcões
Demonstra que o ator utiliza-se, de alguma maneira, uma função do sistema
representada pelo caso de uso – requisitando a execução e recebendo o
resultado produzido. ***Cliente utiliza de alguma maneira o serviço Abertura Conta,
informação trafega nas duas direcões
Associações – Especialização/Generalização:Associações – Especialização/Generalização:
É uma forma de associações entre casos de uso na qual existem dois ou mais casos de uso com características semelhantes.É uma forma de associações entre casos de uso na qual existem dois ou mais casos de uso com características semelhantes.
Não é necessário colocar a mesma documentação para todos os casos de uso
envolvidos.
- Caso de Uso Geral/Herança
Não é necessário colocar a mesma documentação para todos os casos de uso
envolvidos.
- Caso de Uso Geral/Herança
Generalização
Especialização
Associações – Especialização/Generalização:Associações – Especialização/Generalização:
Entre AtoresEntre Atores
Generalização
Especialização
Associações – Inclusão:Associações – Inclusão:
Usada quando existe um serviço, situação ou rotina comum a mais de um Caso de Uso.Usada quando existe um serviço, situação ou rotina comum a mais de um Caso de Uso.
Quando um caso de uso possui um relacionamento de inclusão com outro, a
execução do primeiro obriga também a execução do segundo.
Quando um caso de uso possui um relacionamento de inclusão com outro, a
execução do primeiro obriga também a execução do segundo.
Analogia à “Chamada de Sub-Rotina”Analogia à “Chamada de Sub-Rotina”
Representação – linha tracejada com texto “<<Include>>”Representação – linha tracejada com texto “<<Include>>”
Exemplo:Exemplo:
Associações – Extensão:Associações – Extensão:
Utilizado para descrever cenários opcionais de um caso de uso. Utilizado para descrever cenários opcionais de um caso de uso.
Estes descrevem cenários que acontecerão apenas em situação específica, se
uma determinada condição for satisfeita. Exemplo:
Estes descrevem cenários que acontecerão apenas em situação específica, se
uma determinada condição for satisfeita. Exemplo:
Exemplo:Exemplo:
Exemplo:Exemplo:
Exemplo:Exemplo:
Mecanismos Gerais
•Utilizado para estender (enriquecer) o significado de um determinado elemento em um diagrama.
•A UML predefine diversos estereótipos. •É possível também definir estereótipos específicos.
•Estereótipos podem ser classificados em dois tipos:
•estereótipo gráfico: um ícone que lembre o significado do conceito a ele associado. •estereótipos de rótulo: um nome delimitado pelos símbolos << e >>.
Estereótipos
Exemplos de estereótipos
«fronteira»FormulárioVisualizaçãoAvaliações
Notações:Notações:
Estereótipos:Permitem a identificação de componentes – permitindo sua diferenciação dando maior destaque no diagrama.
Estereótipos:Permitem a identificação de componentes – permitindo sua diferenciação dando maior destaque no diagrama.
Notas explicativas Utilizadas para comentar ou esclarecer alguma
parte de um diagrama. Podem ser descritas em texto livre; também podem
corresponder a uma expressão formal utilizando OCL (Linguagem de Restrição de Objetos).
Apresentar texto explicativo.
Exemplos de notas explicativas
+obterPagamento() : Moeda-comissão : Porcentagem
Vendedor
return comissão * obterSalárioBase();
Notações:Notações:
Pacotes:Organizar elementos em grupos para serem utilizados na modelagem de sistemas muito extensos – principalmente quando existem vários sistemas ou sub-sistemas integrados.
Pacotes:Organizar elementos em grupos para serem utilizados na modelagem de sistemas muito extensos – principalmente quando existem vários sistemas ou sub-sistemas integrados.
PacotesPacotes podem ser agrupados dentro de outros pacotes,
formando uma hierarquia de contenção.
Sistema de Controle Hospitalar