·
Cursos Gerais ·
Linguagens de Programação
Envie sua pergunta para a IA e receba a resposta na hora
Recomendado para você
59
Modelagem de Classes e Diagrama de Classes
Linguagens de Programação
UENP
1
Aplicações da Programação Funcional: Conceitos e Exemplos Práticos
Linguagens de Programação
UENP
33
Introdução ao Planejamento de Projetos - UFF
Linguagens de Programação
UENP
32
Principais habilidades e conceitos em Java: Classe Vehicle
Linguagens de Programação
UENP
2
Especificação do Trabalho de Programação II - Desenvolvimento de Software com Java FX e PostgreSQL
Linguagens de Programação
UENP
1
Avaliação 5 - Programação Concorrente e Paralela
Linguagens de Programação
UENP
1
Diagrama de Classes da Locadora
Linguagens de Programação
UENP
2
Especificação do Trabalho: Desenvolvimento de Programa Orientado a Objetos em Java FX
Linguagens de Programação
UENP
1
Certificado de Conclusão - Criando Robôs com Python
Linguagens de Programação
UENP
Texto de pré-visualização
Modelagem de Sistemas Modelo de Casos de Uso Prof Maurício Arimoto mauriciouenpedubr Fevereiro2022 1 58 Introdução Característica intrínseca de sistemas de software Complexidade de desenvolvimento Aumenta a medida que o sistema cresce 2 58 Modelagem de Sistemas de Software Em sistemas de software também há uma gradação de complexidade Necessidade de planejamento inicial Projeto do veículo Conceito de Modelo Representação idealizada do sistema a ser construído 4 58 Unified Modeling Language UML Linguagem padrão de notação de projetos Análise e projeto de sistemas de software no paradigma de Orientação a Objetos Fornece múltiplas visões do sistema através de diagramas UML Cada diagrama analisa o sistema sob um determinado aspecto Um enfoque mais amplo externo ou mais específico internos 5 58 Unified Modeling Language UML Representa o sistema sob os seguintes aspectos Requisitos Comportamento Estrutura lógica Dinâmica de processos Comunicaçãointerface com o usuário 6 58 Análise e Projeto OO com UML na Disciplina Análise de Requisitos Modelagem de Casos de Uso Análise e Projeto Diagrama de classes Padrões de Projeto OO 8 58 Análise e Projeto Orientado a Objetos Modelagem de Casos de Uso Um sistema serve diferentes atores provendo diferentes serviços A funcionalidade a ser provida é muito grande para ser analisada como uma única unidade Importante ter um mecanismo de dividir em partes menores e mais gerenciáveis 9 58 Modelo de Casos de Uso O Modelo de Casos de Uso é um dos artefatos resultantes da etapa de Levantamento e Análise de Requisitos Visa capturar e descrever a funcionalidade que um sistema deve prover segundo uma perspectiva externa 10 58 Modelo de Casos de Uso Modelos de Casos de Uso são muito usados no desenvolvimento de sistemas Usuários e clientes conseguem visualizar qual a funcionalidade a ser provida pelo sistema Podem reagir mais rapidamente no sentido de refinar alterar ou rejeitar as funções previstas para o sistema 11 58 Modelo de Casos de Uso Objetivos Principais dos Casos de Uso Delimitação do contexto de um sistema Entendimento e documentação dos requisitos Descrição os requisitos funcionais Facilita a comunicação entre os stakeholders Auxilia na elaboração dos casos de teste 12 58 Modelagem de Casos de Uso Casos de Uso e Atores Um caso de uso é um conjunto de ações realizadas pelo sistema ou por meio da interação com o sistema Produz um resultado observável com valor para um ou mais atores do sistema Realização de uma tarefa ou meta de negócio Exemplos de casos de uso Emprestar Livro Vender Produtos Incluir ordem de serviço 13 58 Modelagem de Casos de Uso Casos de Uso e Atores Representa um possível uso do sistema por um ator uma pessoa dispositivo mecanismo ou subsistema que interage com o sistema alvo utilizando alguns de seus serviços 14 58 Casos de Uso Categorias de atores Pessoas Empregado Cliente Gerente Vendedor etc Organizações Empresa Fornecedora Agência de Impostos etc Dispositivos Leitora de Código de Barras Sensor etc Subsistemas Sistema de Cobrança Autorização de Crédito etc Depende do escopo do sistema 15 58 Modelagem de Casos de Uso Casos de Uso e Atores Como identificar atores Observar atentamente os atores que serão responsáveis direta ou indiretamente pela interação com o sistema Ator principal interage diretamente com o sistema computacional Ator secundário interage com outros atores 16 58 Modelagem de Casos de Uso Como identificar Atores Exemplo Caixa Automático O Cliente é quem opera o caixa automático ator ator principal O Sistema Bancário interage com o caixa automático ator secundário 17 58 Modelagem de Casos de Uso Casos de Uso e Atores Como identificar Casos de Uso Observar os objetivos pretendidos pelos atores Casos de uso para satisfazer tais objetivos Possíveis interações do ator com o sistema 18 58 Modelagem de Casos de Uso Como identificar Casos de Uso Exemplo Caixa Automático O Cliente de banco pode usar um caixa automático para Efetuar Saque Efetuar Extrato Efetuar Pagamento Um requisito pode referirse a mais de um caso de uso Um caso de uso pode referirse a mais de um requisito 19 58 Identificando Casos de Uso Pode ser difícil decidir entre um ou vários casos de uso Por exemplo seriam casos de uso Inserir cartão em um Caixa Automático Entrar com a senha Receber o cartão de volta 20 58 Identificando Casos de Uso Inclusões Alterações e Exclusões são casos de uso Exemplos Incluir cliente Alterar dados do cliente e Excluir cliente E quanto às consultas seriam casos de uso Consultar cliente por nome Consultar cliente por data de nascimento 21 58 Modelagem de Casos de Uso Duas partes principais Diagrama de Casos de Uso da UML Descrição dos Casos de Uso ou Casos de Uso Textuais pode ser complementada com outros diagramas ex diagrama de sequência e de atividades 22 58 Modelagem de Casos de Uso Diagrama de casos de Uso Representação das funcionalidades observáveis do sistema e dos elementos externos ao sistema que interagem com o mesmo Especifica as funcionalidades que um sistema tem de oferecer segundo diferentes perspectivas 23 58 Diagrama de Casos de Uso Mostram um conjunto de casos de uso atores e seus relacionamentos Modelam aspectos dinâmicos do sistema Proporcionam uma representação contextual do sistema fronteira explıcita Indicam a forma como o sistema interage com as entidades externas atores 24 58 Diagrama de Casos de Uso O diagrama de casos de uso de um sistema é composto por Casos de uso Atores Relacionamentos entre os elementos anteriores Assunto delimita as fronteiras do diagrama sistema ou subsistema 25 58 Diagrama de Casos de Uso Figura Conceitos e notações 26 58 Diagrama de Casos de Uso Relacionamentos Objetivo Aumentar a reutilização em diferentes contextos Evita a descrição de um mesmo conjunto de fluxos de eventos através da extraçãofatoração do comportamento comum dos casos de uso 27 58 Diagrama de Casos de Uso Relacionamentos Os relacionamentos podem ser de Associação Inclusão include Extensão extend GeneralizaçãoEspecialização 28 58 Diagrama de Casos de Uso Relacionamentos Exemplo Associação Figura Comunicação entre atores e casos de uso 29 58 Diagrama de Casos de Uso Relacionamentos Include Uso principal quando um caso de uso possui um comportamento comum a vários outros casos de uso Evitar repetir comportamento A inclusão de outro caso de uso é obrigatória Usado também para decompor um caso de uso muito complexo 30 58 Diagrama de Casos de Uso Relacionamentos Exemplo Include Figura Relacionamento de inclusão 31 58 Diagrama de Casos de Uso Relacionamentos Extend Um caso de uso estende outro se ele adiciona comportamento ao caso de uso base Quando uma modificação é necessária em um caso de uso e não se quer mexer no caso de uso base O caso de uso de extensão não tem execução obrigatória mas opcional 32 58 Diagrama de Casos de Uso Relacionamentos Exemplo Extend Figura Relacionamento de extensão 33 58 Diagrama de Casos de Uso Relacionamentos GeneralizaçãoEspecialização Entre casos de uso significa que um caso de uso filho herdao comportamento e o significado do caso de uso pai acrescentando ou sobrescrevendo o seu comportamento Válido também entre atores 34 58 Diagrama de Casos de Uso Relacionamentos Exemplo GeneralizaçãoEspecialização entre Atores Figura Relacionamento de generalizaçãoespecialização 35 58 Diagrama de Casos de Uso Relacionamentos Exemplo GeneralizaçãoEspecialização entre Casos de Uso Figura Relacionamento de generalizaçãoespecialização 36 58 Diagrama de Casos de Uso Exemplo Sistema Caixa Automático Figura Diagrama de Casos de Uso 37 58 Descrição de Casos de Uso Um caso de uso deve descrever o que um sistema faz Um diagrama de casos de uso é insuficiente para este propósito Devese especificar o comportamento de um caso de uso pela descrição textual de seu fluxo de eventos 38 58 Descrição de Casos de Uso Passos do fluxo de eventos de um caso de uso 1 Uma interação entre um ator e o sistema 2 Uma ação que o sistema realiza para atingir o objetivo do ator primário ou 3 Uma ação que o sistema realiza para proteger os interesses de um interessado 39 58 Descrição de Casos de Uso Pode ser complementada por Diagrama de atividades fluxo de eventos Diagrama de sequência troca de mensagens Pode servir de base para casos de teste 40 58 Descrição de Casos de Uso Níveis de Descrição Resumido resumo de um parágrafo apenas com o cenário de sucesso principal Completo detalhado com estrutura bem definida 41 58 Descrição de Casos de Uso Completo Nome Propósito Ator Primário Interessados e Interesses Précondições Póscondições Fluxo de eventos normal Cenário de Sucesso Principal Fluxo de eventos alternativos 42 58 Descrição de Casos de Uso Sistema Caixa Automático Caso de Uso Efetuar Saque Propósito Este caso de uso permite que um cliente do banco efetue um saque retirando dinheiro de sua conta bancária Ator Primário Cliente Interessados e Interesses 1 Cliente deseja efetuar um saque 2 Banco garantir que apenas o próprio cliente efetuará saques e que os valores dos saques sejam compatíveis com o limite de crédito do cliente Précondições O caixa automático deve estar conectado ao sistema bancário Póscondições O saque é efetuado debitando o valor da conta do cliente e entregando o mesmo valor para o cliente em espécie 43 58 Descrição de Casos de Uso Sistema Caixa Automático Caso de Uso Efetuar Saque Sequência típica de eventos 1 O cliente insere seu cartão no caixa automático 2 O caixa automático analisa o cartão e verifica se ele é aceitável 3 O caixa automático solicita que o cliente informe a senha 4 O cliente informa a senha 5 O caixa automático envia os dados do cartão e da senha para o sistema bancário para validação 6 O caixa automático solicita que o cliente informe o tipo de transação a ser efetuada 7 O cliente seleciona a opção saque 8 O caixa automático solicita que seja informada a quantia 9 O cliente informa a quantia a ser sacada 10 O caixa automático envia uma requisição para o sistema bancário para que seja efetuado um saque na quantia especificada 11 As notas são preparadas e liberadas 44 58 Descrição de Casos de Uso Sistema Caixa Automático Caso de Uso Efetuar Saque Sequência alternativa 2a O cartão não é aceitável Seja porque sua tarja magnética não é passível de leitura seja ou porque é de um tipo incompatível uma mensagem de erro de leitura é mostrada e se retorna ao passo 1 5a Senha incorreta 1 1a e 2a tentativas Uma mensagem de erro é mostrada para o cliente Retornar ao passo 3 2 3a tentativa bloquear o cartão e abortar a transação 10a Saque não autorizado Uma mensagem de erro é exibida e a operação é abortada 11a Não há dinheiro suficiente no caixa eletrônico Uma mensagem de erro é exibida e a operação é abortada 19 Cancelamento O cliente pode cancelar a transação enquanto o saque não for autorizado pelo sistema bancário A transação é abortada 45 58 Descrição de Casos de Uso Sistema Caixa Automático Caso de Uso Efetuar Saque Sequência típica de eventos 1 O cliente insere seu cartão no caixa automático 2 O caixa automático analisa o cartão e verifica se ele é aceitável 3 O caixa automático solicita que o cliente informe a senha 4 O cliente informa a senha 5 O caixa automático envia os dados do cartão e da senha para o sistema bancário para validação 6 O caixa automático solicita que o cliente informe o tipo de transação a ser efetuada 7 O cliente seleciona a opção saque 8 O caixa automático solicita que seja informada a quantia 9 O cliente informa a quantia a ser sacada 10 O caixa automático envia uma requisição para o sistema bancário para que seja efetuado um saque na quantia especificada 11 As notas são preparadas e liberadas 46 58 Descrição de Casos de Uso Sistema Caixa Automático Caso de Uso Efetuar Saque Sequência alternativa 2a O cartão não é aceitável Seja porque sua tarja magnética não é passível de leitura seja ou porque é de um tipo incompatível uma mensagem de erro de leitura é mostrada e se retorna ao passo 1 5a Senha incorreta 1 1a e 2a tentativas Uma mensagem de erro é mostrada para o cliente Retornar ao passo 3 2 3a tentativa bloquear o cartão e abortar a transação 10a Saque não autorizado Uma mensagem de erro é exibida e a operação é abortada 11a Não há dinheiro suficiente no caixa eletrônico Uma mensagem de erro é exibida e a operação é abortada 19 Cancelamento O cliente pode cancelar a transação enquanto o saque não for autorizado pelo sistema bancário A transação é abortada 47 58 Casos de Uso de Inclusão e de Extensão Caso de Uso Efetuar Saque Sequência típica de eventos 1 Incluir Validar Cartão 2 O cliente seleciona a opção saque 3 O caixa automático solicita que seja informada a quantia 4 O cliente informa a quantia a ser sacada 5 O caixa automático envia uma requisição para o sistema bancário para que seja efetuado um saque na quantia especificada 6 As notas são preparadas Entrega do dinheiro ponto de extensão 7 As notas são liberadas 48 58 Casos de Uso Inclusão e de Extensão Caso de Uso Efetuar Saque Sequência alternativa 5a Saque não autorizado Uma mensagem de erro é exibida e a operação é abortada 6a Não há dinheiro suficiente no caixa eletrônico Uma mensagem de erro é exibida e a operação é abortada 1 a 3 Cancelamento O cliente pode cancelar a transação enquanto o saque não for autorizado pelo sistema bancário A transação é abortada 49 58 Descrição de Casos de Uso Sistema Caixa Automático Caso de Uso Validar Cartão Sequência típica de eventos 1 O cliente insere o cartão no caixa automático 2 O caixa automático analisa o cartão e verifica se ele é aceitável 3 O caixa automático solicita informação para identificação do cliente 4 O cliente informa a sua identificação 5 O caixa automático envia os dados do cartão e da identificação para o sistema bancário para validação 6 O caixa automático solicita que o cliente informe o tipo de transação a ser efetuada 50 58 Descrição de Casos de Uso Sistema Caixa Automático Caso de Uso Validar Cartão Sequência alternativa 2a O cartão não é aceitável Se o cartão não é aceitável seja porque sua tarja magnética não é passível de leitura seja porque é de um tipo incompatível uma mensagem de erro de leitura é mostrada e se retorna ao passo 1 5a Dados de Identificação Incorretos 1 1a e 2a tentativas Uma mensagem de erro é mostrada para o cliente Retornar ao passo 3 2 3a tentativa bloquear o cartão e abortar a transação 15 Cancelamento O cliente solicita o cancelamento da transação e a transação é abortada 51 58 GeneralizaçãoEspecialização Caso de Uso e suas Especializações Caso de Uso Validar Cartão por Análise de Retina Sequência típica de eventos 3 O caixa automático solicita que o cliente se posicione corretamente para a captura da imagem da retina 4 O caixa automático retira uma foto da retina do cliente 5 O caixa automático envia os dados do cartão e a foto da retina para o sistema bancário para validação 52 58 GeneralizaçãoEspecialização Caso de Uso e suas Especializações Caso de Uso Validar Cartão por Senha Sequência típica de eventos 3 O caixa automático solicita a senha 4 O cliente informa a senha 5 O caixa automático envia os dados do cartão e a senha para o sistema bancário para validação 53 58 Fluxos de Eventos Variantes Podemos ter outro tipo de fluxo de eventos alternativo Fluxos variantes são considerados dentro da normalidade do caso de uso e indicam formas diferentes mas igualmente normais de se realizar uma certa porção de um caso de uso 54 58 Fluxos de Eventos Variantes Caso de Uso Validar Cartão Sequência típica de eventos 1 O cliente insere o cartão no caixa automático 2 O caixa automático analisa o cartão e verifica se ele é aceitável 3 Validar cartão 4 O caixa automático solicita que o cliente informe o tipo de transação a ser efetuada 55 58 Fluxos de Eventos Variantes Caso de Uso Validar Cartão por Análise de Retina Sequência alternativa 3a Validar cartão por autenticação de senha 1 O caixa automático solicita a senha 2 cliente informa a senha 3 O caixa automático envia os dados do cartão e a senha para o sistema bancário para validação 3b Validar cartão por análise de retina 1 O caixa automático solicita que o cliente se posicione corretamente para a captura da imagem da retina 2 O caixa automático retira uma foto da retina do cliente 3 O caixa automático envia os dados do cartão e a foto da retina para o sistema bancário para validação 56 58 Síntese O modelo de casos de uso é um artefato da fase de levantamento e análise de requisitos Ajuda no entendimento comum acerca das funcionalidades que um sistema deve prover Casos de uso podem ser utilizados como base para o projeto de casos de teste para o sistema São indepedentes do método de análise e também de paradigma de desenvolvimento 57 58 Exercício Uma locadora de veículos deseja um sistema para facilitar o atendimento a seus clientes A locadora é composta basicamente pelos seus funcionários e carros para aluguel Os funcionários são identificados por CPF nome endereço e telefone Já os carros estão divididos em diversos tipos popular luxo utilitário etc As informações importantes sobre os carros a serem armazenadas são código chapa do carro tipo modelo ano cor chassis km e valor do aluguel diárias e semanais Os funcionários serão responsáveis pelo cadastro dos clientes e dos carros adquiridos pela locadora por efetuar o aluguel de um carro para o cliente e dar baixa no aluguel Existem clientes especiais e clientes comuns Os especiais possuem uma taxa de desconto e um valor de quilometragem extra para seus aluguéis Qualquer cliente é identificado por RG nome CPF telefone endereço e cidade Com base na descrição acima identifique o casos de uso do sistema e elabore o diagrama de casos de uso orrespondente 58 58
Envie sua pergunta para a IA e receba a resposta na hora
Recomendado para você
59
Modelagem de Classes e Diagrama de Classes
Linguagens de Programação
UENP
1
Aplicações da Programação Funcional: Conceitos e Exemplos Práticos
Linguagens de Programação
UENP
33
Introdução ao Planejamento de Projetos - UFF
Linguagens de Programação
UENP
32
Principais habilidades e conceitos em Java: Classe Vehicle
Linguagens de Programação
UENP
2
Especificação do Trabalho de Programação II - Desenvolvimento de Software com Java FX e PostgreSQL
Linguagens de Programação
UENP
1
Avaliação 5 - Programação Concorrente e Paralela
Linguagens de Programação
UENP
1
Diagrama de Classes da Locadora
Linguagens de Programação
UENP
2
Especificação do Trabalho: Desenvolvimento de Programa Orientado a Objetos em Java FX
Linguagens de Programação
UENP
1
Certificado de Conclusão - Criando Robôs com Python
Linguagens de Programação
UENP
Texto de pré-visualização
Modelagem de Sistemas Modelo de Casos de Uso Prof Maurício Arimoto mauriciouenpedubr Fevereiro2022 1 58 Introdução Característica intrínseca de sistemas de software Complexidade de desenvolvimento Aumenta a medida que o sistema cresce 2 58 Modelagem de Sistemas de Software Em sistemas de software também há uma gradação de complexidade Necessidade de planejamento inicial Projeto do veículo Conceito de Modelo Representação idealizada do sistema a ser construído 4 58 Unified Modeling Language UML Linguagem padrão de notação de projetos Análise e projeto de sistemas de software no paradigma de Orientação a Objetos Fornece múltiplas visões do sistema através de diagramas UML Cada diagrama analisa o sistema sob um determinado aspecto Um enfoque mais amplo externo ou mais específico internos 5 58 Unified Modeling Language UML Representa o sistema sob os seguintes aspectos Requisitos Comportamento Estrutura lógica Dinâmica de processos Comunicaçãointerface com o usuário 6 58 Análise e Projeto OO com UML na Disciplina Análise de Requisitos Modelagem de Casos de Uso Análise e Projeto Diagrama de classes Padrões de Projeto OO 8 58 Análise e Projeto Orientado a Objetos Modelagem de Casos de Uso Um sistema serve diferentes atores provendo diferentes serviços A funcionalidade a ser provida é muito grande para ser analisada como uma única unidade Importante ter um mecanismo de dividir em partes menores e mais gerenciáveis 9 58 Modelo de Casos de Uso O Modelo de Casos de Uso é um dos artefatos resultantes da etapa de Levantamento e Análise de Requisitos Visa capturar e descrever a funcionalidade que um sistema deve prover segundo uma perspectiva externa 10 58 Modelo de Casos de Uso Modelos de Casos de Uso são muito usados no desenvolvimento de sistemas Usuários e clientes conseguem visualizar qual a funcionalidade a ser provida pelo sistema Podem reagir mais rapidamente no sentido de refinar alterar ou rejeitar as funções previstas para o sistema 11 58 Modelo de Casos de Uso Objetivos Principais dos Casos de Uso Delimitação do contexto de um sistema Entendimento e documentação dos requisitos Descrição os requisitos funcionais Facilita a comunicação entre os stakeholders Auxilia na elaboração dos casos de teste 12 58 Modelagem de Casos de Uso Casos de Uso e Atores Um caso de uso é um conjunto de ações realizadas pelo sistema ou por meio da interação com o sistema Produz um resultado observável com valor para um ou mais atores do sistema Realização de uma tarefa ou meta de negócio Exemplos de casos de uso Emprestar Livro Vender Produtos Incluir ordem de serviço 13 58 Modelagem de Casos de Uso Casos de Uso e Atores Representa um possível uso do sistema por um ator uma pessoa dispositivo mecanismo ou subsistema que interage com o sistema alvo utilizando alguns de seus serviços 14 58 Casos de Uso Categorias de atores Pessoas Empregado Cliente Gerente Vendedor etc Organizações Empresa Fornecedora Agência de Impostos etc Dispositivos Leitora de Código de Barras Sensor etc Subsistemas Sistema de Cobrança Autorização de Crédito etc Depende do escopo do sistema 15 58 Modelagem de Casos de Uso Casos de Uso e Atores Como identificar atores Observar atentamente os atores que serão responsáveis direta ou indiretamente pela interação com o sistema Ator principal interage diretamente com o sistema computacional Ator secundário interage com outros atores 16 58 Modelagem de Casos de Uso Como identificar Atores Exemplo Caixa Automático O Cliente é quem opera o caixa automático ator ator principal O Sistema Bancário interage com o caixa automático ator secundário 17 58 Modelagem de Casos de Uso Casos de Uso e Atores Como identificar Casos de Uso Observar os objetivos pretendidos pelos atores Casos de uso para satisfazer tais objetivos Possíveis interações do ator com o sistema 18 58 Modelagem de Casos de Uso Como identificar Casos de Uso Exemplo Caixa Automático O Cliente de banco pode usar um caixa automático para Efetuar Saque Efetuar Extrato Efetuar Pagamento Um requisito pode referirse a mais de um caso de uso Um caso de uso pode referirse a mais de um requisito 19 58 Identificando Casos de Uso Pode ser difícil decidir entre um ou vários casos de uso Por exemplo seriam casos de uso Inserir cartão em um Caixa Automático Entrar com a senha Receber o cartão de volta 20 58 Identificando Casos de Uso Inclusões Alterações e Exclusões são casos de uso Exemplos Incluir cliente Alterar dados do cliente e Excluir cliente E quanto às consultas seriam casos de uso Consultar cliente por nome Consultar cliente por data de nascimento 21 58 Modelagem de Casos de Uso Duas partes principais Diagrama de Casos de Uso da UML Descrição dos Casos de Uso ou Casos de Uso Textuais pode ser complementada com outros diagramas ex diagrama de sequência e de atividades 22 58 Modelagem de Casos de Uso Diagrama de casos de Uso Representação das funcionalidades observáveis do sistema e dos elementos externos ao sistema que interagem com o mesmo Especifica as funcionalidades que um sistema tem de oferecer segundo diferentes perspectivas 23 58 Diagrama de Casos de Uso Mostram um conjunto de casos de uso atores e seus relacionamentos Modelam aspectos dinâmicos do sistema Proporcionam uma representação contextual do sistema fronteira explıcita Indicam a forma como o sistema interage com as entidades externas atores 24 58 Diagrama de Casos de Uso O diagrama de casos de uso de um sistema é composto por Casos de uso Atores Relacionamentos entre os elementos anteriores Assunto delimita as fronteiras do diagrama sistema ou subsistema 25 58 Diagrama de Casos de Uso Figura Conceitos e notações 26 58 Diagrama de Casos de Uso Relacionamentos Objetivo Aumentar a reutilização em diferentes contextos Evita a descrição de um mesmo conjunto de fluxos de eventos através da extraçãofatoração do comportamento comum dos casos de uso 27 58 Diagrama de Casos de Uso Relacionamentos Os relacionamentos podem ser de Associação Inclusão include Extensão extend GeneralizaçãoEspecialização 28 58 Diagrama de Casos de Uso Relacionamentos Exemplo Associação Figura Comunicação entre atores e casos de uso 29 58 Diagrama de Casos de Uso Relacionamentos Include Uso principal quando um caso de uso possui um comportamento comum a vários outros casos de uso Evitar repetir comportamento A inclusão de outro caso de uso é obrigatória Usado também para decompor um caso de uso muito complexo 30 58 Diagrama de Casos de Uso Relacionamentos Exemplo Include Figura Relacionamento de inclusão 31 58 Diagrama de Casos de Uso Relacionamentos Extend Um caso de uso estende outro se ele adiciona comportamento ao caso de uso base Quando uma modificação é necessária em um caso de uso e não se quer mexer no caso de uso base O caso de uso de extensão não tem execução obrigatória mas opcional 32 58 Diagrama de Casos de Uso Relacionamentos Exemplo Extend Figura Relacionamento de extensão 33 58 Diagrama de Casos de Uso Relacionamentos GeneralizaçãoEspecialização Entre casos de uso significa que um caso de uso filho herdao comportamento e o significado do caso de uso pai acrescentando ou sobrescrevendo o seu comportamento Válido também entre atores 34 58 Diagrama de Casos de Uso Relacionamentos Exemplo GeneralizaçãoEspecialização entre Atores Figura Relacionamento de generalizaçãoespecialização 35 58 Diagrama de Casos de Uso Relacionamentos Exemplo GeneralizaçãoEspecialização entre Casos de Uso Figura Relacionamento de generalizaçãoespecialização 36 58 Diagrama de Casos de Uso Exemplo Sistema Caixa Automático Figura Diagrama de Casos de Uso 37 58 Descrição de Casos de Uso Um caso de uso deve descrever o que um sistema faz Um diagrama de casos de uso é insuficiente para este propósito Devese especificar o comportamento de um caso de uso pela descrição textual de seu fluxo de eventos 38 58 Descrição de Casos de Uso Passos do fluxo de eventos de um caso de uso 1 Uma interação entre um ator e o sistema 2 Uma ação que o sistema realiza para atingir o objetivo do ator primário ou 3 Uma ação que o sistema realiza para proteger os interesses de um interessado 39 58 Descrição de Casos de Uso Pode ser complementada por Diagrama de atividades fluxo de eventos Diagrama de sequência troca de mensagens Pode servir de base para casos de teste 40 58 Descrição de Casos de Uso Níveis de Descrição Resumido resumo de um parágrafo apenas com o cenário de sucesso principal Completo detalhado com estrutura bem definida 41 58 Descrição de Casos de Uso Completo Nome Propósito Ator Primário Interessados e Interesses Précondições Póscondições Fluxo de eventos normal Cenário de Sucesso Principal Fluxo de eventos alternativos 42 58 Descrição de Casos de Uso Sistema Caixa Automático Caso de Uso Efetuar Saque Propósito Este caso de uso permite que um cliente do banco efetue um saque retirando dinheiro de sua conta bancária Ator Primário Cliente Interessados e Interesses 1 Cliente deseja efetuar um saque 2 Banco garantir que apenas o próprio cliente efetuará saques e que os valores dos saques sejam compatíveis com o limite de crédito do cliente Précondições O caixa automático deve estar conectado ao sistema bancário Póscondições O saque é efetuado debitando o valor da conta do cliente e entregando o mesmo valor para o cliente em espécie 43 58 Descrição de Casos de Uso Sistema Caixa Automático Caso de Uso Efetuar Saque Sequência típica de eventos 1 O cliente insere seu cartão no caixa automático 2 O caixa automático analisa o cartão e verifica se ele é aceitável 3 O caixa automático solicita que o cliente informe a senha 4 O cliente informa a senha 5 O caixa automático envia os dados do cartão e da senha para o sistema bancário para validação 6 O caixa automático solicita que o cliente informe o tipo de transação a ser efetuada 7 O cliente seleciona a opção saque 8 O caixa automático solicita que seja informada a quantia 9 O cliente informa a quantia a ser sacada 10 O caixa automático envia uma requisição para o sistema bancário para que seja efetuado um saque na quantia especificada 11 As notas são preparadas e liberadas 44 58 Descrição de Casos de Uso Sistema Caixa Automático Caso de Uso Efetuar Saque Sequência alternativa 2a O cartão não é aceitável Seja porque sua tarja magnética não é passível de leitura seja ou porque é de um tipo incompatível uma mensagem de erro de leitura é mostrada e se retorna ao passo 1 5a Senha incorreta 1 1a e 2a tentativas Uma mensagem de erro é mostrada para o cliente Retornar ao passo 3 2 3a tentativa bloquear o cartão e abortar a transação 10a Saque não autorizado Uma mensagem de erro é exibida e a operação é abortada 11a Não há dinheiro suficiente no caixa eletrônico Uma mensagem de erro é exibida e a operação é abortada 19 Cancelamento O cliente pode cancelar a transação enquanto o saque não for autorizado pelo sistema bancário A transação é abortada 45 58 Descrição de Casos de Uso Sistema Caixa Automático Caso de Uso Efetuar Saque Sequência típica de eventos 1 O cliente insere seu cartão no caixa automático 2 O caixa automático analisa o cartão e verifica se ele é aceitável 3 O caixa automático solicita que o cliente informe a senha 4 O cliente informa a senha 5 O caixa automático envia os dados do cartão e da senha para o sistema bancário para validação 6 O caixa automático solicita que o cliente informe o tipo de transação a ser efetuada 7 O cliente seleciona a opção saque 8 O caixa automático solicita que seja informada a quantia 9 O cliente informa a quantia a ser sacada 10 O caixa automático envia uma requisição para o sistema bancário para que seja efetuado um saque na quantia especificada 11 As notas são preparadas e liberadas 46 58 Descrição de Casos de Uso Sistema Caixa Automático Caso de Uso Efetuar Saque Sequência alternativa 2a O cartão não é aceitável Seja porque sua tarja magnética não é passível de leitura seja ou porque é de um tipo incompatível uma mensagem de erro de leitura é mostrada e se retorna ao passo 1 5a Senha incorreta 1 1a e 2a tentativas Uma mensagem de erro é mostrada para o cliente Retornar ao passo 3 2 3a tentativa bloquear o cartão e abortar a transação 10a Saque não autorizado Uma mensagem de erro é exibida e a operação é abortada 11a Não há dinheiro suficiente no caixa eletrônico Uma mensagem de erro é exibida e a operação é abortada 19 Cancelamento O cliente pode cancelar a transação enquanto o saque não for autorizado pelo sistema bancário A transação é abortada 47 58 Casos de Uso de Inclusão e de Extensão Caso de Uso Efetuar Saque Sequência típica de eventos 1 Incluir Validar Cartão 2 O cliente seleciona a opção saque 3 O caixa automático solicita que seja informada a quantia 4 O cliente informa a quantia a ser sacada 5 O caixa automático envia uma requisição para o sistema bancário para que seja efetuado um saque na quantia especificada 6 As notas são preparadas Entrega do dinheiro ponto de extensão 7 As notas são liberadas 48 58 Casos de Uso Inclusão e de Extensão Caso de Uso Efetuar Saque Sequência alternativa 5a Saque não autorizado Uma mensagem de erro é exibida e a operação é abortada 6a Não há dinheiro suficiente no caixa eletrônico Uma mensagem de erro é exibida e a operação é abortada 1 a 3 Cancelamento O cliente pode cancelar a transação enquanto o saque não for autorizado pelo sistema bancário A transação é abortada 49 58 Descrição de Casos de Uso Sistema Caixa Automático Caso de Uso Validar Cartão Sequência típica de eventos 1 O cliente insere o cartão no caixa automático 2 O caixa automático analisa o cartão e verifica se ele é aceitável 3 O caixa automático solicita informação para identificação do cliente 4 O cliente informa a sua identificação 5 O caixa automático envia os dados do cartão e da identificação para o sistema bancário para validação 6 O caixa automático solicita que o cliente informe o tipo de transação a ser efetuada 50 58 Descrição de Casos de Uso Sistema Caixa Automático Caso de Uso Validar Cartão Sequência alternativa 2a O cartão não é aceitável Se o cartão não é aceitável seja porque sua tarja magnética não é passível de leitura seja porque é de um tipo incompatível uma mensagem de erro de leitura é mostrada e se retorna ao passo 1 5a Dados de Identificação Incorretos 1 1a e 2a tentativas Uma mensagem de erro é mostrada para o cliente Retornar ao passo 3 2 3a tentativa bloquear o cartão e abortar a transação 15 Cancelamento O cliente solicita o cancelamento da transação e a transação é abortada 51 58 GeneralizaçãoEspecialização Caso de Uso e suas Especializações Caso de Uso Validar Cartão por Análise de Retina Sequência típica de eventos 3 O caixa automático solicita que o cliente se posicione corretamente para a captura da imagem da retina 4 O caixa automático retira uma foto da retina do cliente 5 O caixa automático envia os dados do cartão e a foto da retina para o sistema bancário para validação 52 58 GeneralizaçãoEspecialização Caso de Uso e suas Especializações Caso de Uso Validar Cartão por Senha Sequência típica de eventos 3 O caixa automático solicita a senha 4 O cliente informa a senha 5 O caixa automático envia os dados do cartão e a senha para o sistema bancário para validação 53 58 Fluxos de Eventos Variantes Podemos ter outro tipo de fluxo de eventos alternativo Fluxos variantes são considerados dentro da normalidade do caso de uso e indicam formas diferentes mas igualmente normais de se realizar uma certa porção de um caso de uso 54 58 Fluxos de Eventos Variantes Caso de Uso Validar Cartão Sequência típica de eventos 1 O cliente insere o cartão no caixa automático 2 O caixa automático analisa o cartão e verifica se ele é aceitável 3 Validar cartão 4 O caixa automático solicita que o cliente informe o tipo de transação a ser efetuada 55 58 Fluxos de Eventos Variantes Caso de Uso Validar Cartão por Análise de Retina Sequência alternativa 3a Validar cartão por autenticação de senha 1 O caixa automático solicita a senha 2 cliente informa a senha 3 O caixa automático envia os dados do cartão e a senha para o sistema bancário para validação 3b Validar cartão por análise de retina 1 O caixa automático solicita que o cliente se posicione corretamente para a captura da imagem da retina 2 O caixa automático retira uma foto da retina do cliente 3 O caixa automático envia os dados do cartão e a foto da retina para o sistema bancário para validação 56 58 Síntese O modelo de casos de uso é um artefato da fase de levantamento e análise de requisitos Ajuda no entendimento comum acerca das funcionalidades que um sistema deve prover Casos de uso podem ser utilizados como base para o projeto de casos de teste para o sistema São indepedentes do método de análise e também de paradigma de desenvolvimento 57 58 Exercício Uma locadora de veículos deseja um sistema para facilitar o atendimento a seus clientes A locadora é composta basicamente pelos seus funcionários e carros para aluguel Os funcionários são identificados por CPF nome endereço e telefone Já os carros estão divididos em diversos tipos popular luxo utilitário etc As informações importantes sobre os carros a serem armazenadas são código chapa do carro tipo modelo ano cor chassis km e valor do aluguel diárias e semanais Os funcionários serão responsáveis pelo cadastro dos clientes e dos carros adquiridos pela locadora por efetuar o aluguel de um carro para o cliente e dar baixa no aluguel Existem clientes especiais e clientes comuns Os especiais possuem uma taxa de desconto e um valor de quilometragem extra para seus aluguéis Qualquer cliente é identificado por RG nome CPF telefone endereço e cidade Com base na descrição acima identifique o casos de uso do sistema e elabore o diagrama de casos de uso orrespondente 58 58