Baixe o app para aproveitar ainda mais
Prévia do material em texto
1 Modelo de Casos de Uso Engenharia de Software I Profa. Adriana Pereira de Medeiros 2 Resumo Introdução Cenários e Casos de Uso Diagrama de Casos de Uso » Elementos » Notação UML Identificação de atores e casos de uso Introdução A modelagem de Casos de Uso é uma técnica baseada em Cenários para elicitação de requisitos. » Objetivo: reunir informações sobre o sistema proposto e os existentes para obter os requisitos. Fontes de informações: » Documentação » Especificações de sistemas similares » Stakeholders 3 Cenários São descrições narrativas que explicam detalhadamente um exemplo de interação com o sistema para realizar uma atividade. Descrevem as interações sob o ponto de vista do usuário que as realiza. Podem ser especificados pelo usuário ou pelo projetista (com propósitos diferentes). 4 2 Exemplo Ao chegar ao caixa eletrônico insiro meu cartão e o sistema requisita minha senha. Após fornecer a senha e esta ser validada, o sistema exibe as opções de operações disponíveis. Seleciono a opção de realizar saque. Então o sistema requisita o valor a ser sacado. Informo o valor desejado e após verificar se há saldo suficiente para o saque, o sistema libera o dinheiro na quantia desejada. Retiro o dinheiro do caixa eletrônico e o sistema finaliza a operação. 5 Casos de Uso Descrevem como os usuários interagem com o sistema (as funcionalidades do sistema). Facilitam a organização dos requisitos de um sistema. Dão uma visão externa do sistema. O conjunto de casos de uso deve ser capaz de comunicar a funcionalidade e o comportamento do sistema para o cliente. Dirigem o processo de desenvolvimento como um todo. Descrevem o que o sistema faz, mas NÃO especificam como isso deve ser feito. 6 7 Exemplo 1) Cliente indica que deseja realizar um saque. 2) Sistema requisita o valor da quantia a ser sacada. 3) Cliente fornece o valor da quantia que deseja sacar. 4) Sistema verifica que há saldo disponível para o saque e libera a quantia desejada. 5) Cliente retira o dinheiro e o caso de uso termina. 7 8 Modelo de Casos de Uso É uma representação das funcionalidades externamente observáveis do sistema e dos elementos externos que interagem com ele. Esse modelo representa os requisitos funcionais do sistema. Ajuda os desenvolvedores a modelar o sistema de acordo com as necessidades do usuário. 8 3 9 Utilidade do Modelo de Casos de Uso 9 10 Composição do Modelo Casos de Uso Atores Relacionamentos Representação Gráfica na UML: Diagrama de Casos de Uso 10 11 Diagrama de Casos de Uso Tem o objetivo de ilustrar em um nível alto de abstração quais elementos externos interagem com quais funcionalidades do sistema. Apresenta os elementos externos de um sistema e como eles utilizam o sistema. 11 12 Elementos Os possíveis elementos em um diagrama de casos de uso são: » Caso de uso » Ator » Relacionamentos • Comunicação • Generalização • Dependência (Inclusão e Extensão) » Fronteira do Sistema Para cada um desses elementos, a UML define uma notação gráfica e uma semântica específicas. 12 4 13 Caso de uso Representa uma funcionalidade do sistema (um requisito funcional). É iniciado por um ator ou por outro caso de uso. Notação: Nome do Caso de Uso 13 Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 14 Ator Elemento externo que interage com o sistema. Representa o papel desempenhado por um elemento externo ao sistema. » Humano (usuário), dispositivo de hardware ou outro sistema. Notação: Nome do Ator Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 15 Relacionamento Indica que há uma interação (comunicação) entre um caso de uso e um ator. Um ator pode se comunicar com vários casos de uso. Notação: Ator (from Use Case View) Caso de Uso (from Use Case View) interação Resumo da Notação UML (I) Ator, Caso de Uso e relacionamento de comunicação. 16 Cliente Realizar Saque Ator Relacionamento de comunicação Caso de Uso 5 Exemplo de Diagrama Sistema de Contabilidade Solicitar Produtos Comprador Vendedor Pagar Fatura Enviar Fatura 17 Relacionamento de Generalização Generalização entre Casos de Uso » O caso de uso mais genérico reúne comportamentos comuns a dois ou mais casos de uso. Generalização entre Atores » Usado quando um ator desempenha um papel que já é desempenhado por outro ator, mas que também possui comportamento particular adicional. Notação: 18 19 Exemplo 19 Evita repetição ao representar uma atividade comum a dois ou mais casos de uso. Um caso de uso pode incluir vários casos de uso. Notação: 20 Relacionamento de Dependência (include) 20 <<include>> 6 Exemplo 21 Relacionamento de Dependência (extend) Representa uma variação/extensão do comportamento do caso de uso base. O caso de uso estendido só é executado sob certas circunstâncias. Separa partes obrigatórias de partes opcionais. » Partes obrigatórias: caso de uso base » Partes opcionais: caso de uso estendido Representar comportamentos variantes do sistema (podendo reusar este comportamento em outros casos de uso). Notação: 22 Exemplo 23 Fronteira do Sistema Elemento opcional (mas essencial para um bom entendimento). Serve para definir a área de atuação do sistema. Notação: 24 7 25 Exemplo 25 Resumo da Notação 26 26 27 Identificação dos elementos Atores e casos de uso são identificados a partir de informações coletadas no levantamento de requisitos. » Identificar as atividades do negócio relevantes ao sistema a ser construído e os agentes responsáveis por elas. » A quantidade de casos de uso e atores depende da complexidade do sistema. 27 Princípios de Análise e Projeto de Sistemas com UML - 2ª edição 28 Identificação de atores Fontes e destinos das informações a serem processadas são atores em potencial. O analista deve identificar: » as áreas da empresa que serão afetadas ou utilizarão o sistema, » fontes de informações a serem processadas e os destinos das informações geradas pelo sistema. 8 29 Identificação de atores Perguntas úteis para identificar atores » Que órgãos, empresas ou pessoas (cargos) irão utilizar o sistema? » Que outros sistemas irão se comunicar com o sistema? » Alguém deve ser informado de alguma ocorrência no sistema? » Quem está interessado em um certo requisito funcional do sistema? 29 30 Identificação de Casos de Uso Pode-se distinguir entre dois tipos de casos de uso: » Primário: representa os objetivos dos atores, » Secundário: aquele que não traz benefício direto para os atores, mas que é necessário para que sistema funcione adequadamente. 30 31 Casos de Uso Primários Perguntas úteis: » Quais são as necessidades e objetivos de cada ator em relação ao sistema? » Que informações o sistema deve produzir? » O sistema deve realizar alguma ação que ocorre regularmente no tempo? » Para cada requisito funcional, existe um (ou mais) caso(s) de uso para atendê-lo? 31 32 Casos de Uso Secundários Se encaixam nas seguintes categorias: » Manutenção de cadastros; » Manutenção de usuários; » Gerenciamento de acesso; » Manutenção de informações provenientes de outros sistemas. São menos importantes que os casos de uso primários » O sistema de software não existe para cadastrar informações, nem tampouco para gerenciar os usuários. 32 9 33 Construção do Diagrama de Casos de Uso Diagramas de casos de uso fornece uma visão de alto nível do sistema. É útil e recomendada a utilização do retângulo de fronteira para delimitar e separar visualmente casos de uso e atores. Para facilitar a visualização, pode-se criar vários diagramas e agrupá-los em pacotes. 33 Exemplo 34 35 36 Leitura Booch, G.; Rumbaugh, J.; Jacobson, I. UML – Guia do Usuário. Editora Campus Bezerra, Princípios de Análise e Projeto de Sistemas com UML - 2ª Edição - Capítulo 4. Obs.: Alguns slides do livro foram aproveitados nesta apresentação. 10 Exercícios 1. Desenhe diagramas de casos de uso para os seguintes sistemas: a. A biblioteca da sua universidade b. O seu aparelho celular. 2. Crie um modelo de casos de uso de um sistema de software para a seguinte situação fictícia: Uma loja possui CDs e DVDs para venda e locação. Um cliente pode comprar ou locar uma quantidade ilimitada desses produtos. Para locar é obrigatório que o cliente esteja cadastrado na loja. A loja possui um funcionário cuja função é atender os clientes durante a venda e locação dos produtos. Suas principais tarefas são: conferir o pagamento efetuado pelos clientes; emitir recibo de venda e de locação; ao final do dia, anotar em um caderno de registro o valor de cada venda. 37 Exercícios 3. Defina o que significa um ator. O que significa um ator estar associado a um caso de uso? 4. Que tipo de relacionamento é possível entre um ator e um caso de uso? Que tipo de relacionamento pode haver entre casos de uso? Que tipo de relacionamento pode haver entre atores? Apresente a notação da UML para cada uma das suas respostas. 5. Considere a seguinte declaração obtida de um gerente de uma empresa que comercializa livros por correio durante o levantamento de requisitos para a construção de um sistema de software: Após a ordem de compra do cliente ter sido registrada, o vendedor envia uma requisição ao depósito com detalhes da ordem de compra.Quais atores em potencial podem ser identificados a partir desse texto? 38
Compartilhar