Baixe o app para aproveitar ainda mais
Prévia do material em texto
Análise e Projeto de Sistemas - Modelagem Casos de Uso Prof.Júlio Martins Introdução UML ● Mecanismos de uso geral da UML ○ Estereótipos, notas explicativas, etiquetas valoradas, restrições, pacotes e etc. 2 Estereótipos ● Utilizado para estender o significado de um determinado elemento em um diagrama ● UML predefine diversos estereótipos ● Também é possível definir estereótipos específicos 3 Estereótipos ● Podem ser classificados em dois tipos: ○ Estereótipo gráfico ■ Um ícone que lembre o significado do conceito a ele associado Estereótipo textuais ■ Um nome delimitado pelos símbolos <<estereótipo>> 4 Estereótipos ● Exemplos 5 Notas Explicativas ● Utilizadas para comentar ou esclarecer alguma parte do diagrama ○ Podem ser descritas ■ Em texto livre ■ Ou utilizando expressão mais formal 6 Notas Explicativas ● Exemplos 7 Etiquetas Valoradas(Tags) ● Os elementos gráficos de um diagrama da UML possuem propriedades predefinidas ● Outras propriedades para elementos de um diagrama podem também ser definidas através de etiquetas valoradas 8 Etiquetas Valoradas(Tags) ● Definindo etiquetas ○ {tag = valor} ○ {tag1 = valor1, tag2 = valor2…} ○ {tag} 9 Etiquetas Valoradas(Tags) ● Ex: Nomes de pessoas que criaram elementos 10 Restrições ● A todo elemento da UML está associada alguma semântica ○ Cada elemento gráfico possui um significado bem definido que, uma vez entendido, fica implícito na utilização do elemento em algum diagrama ○ As restrições permitem estender ou alterar a semântica natural de um elemento gráfico 11 Restrições ● A UML define uma linguagem formal que pode ser utilizada para especificar restrições ○ Essa linguagem se chama OCL ■ And, or, implies, if, then, else, not, in 12 Pacotes ● Um mecanismo de agrupamento geral que pode ser utilizado para agrupar vários artefatos de um modelo 13 MODELAGEM DE CASOS DE USO 14 Introdução ● O modelo de casos de uso ○ É uma representação das funcionalidades externamente observáveis do sistema e dos elementos ao sistema que interagem com o mesmo ● Modelo os requisitos funcionais do sistema ● Modelo de casos de uso força os desenvolvedores a moldar o sistema de acordo com o usuário 15 Introdução ● Diagrama UML ○ Diagrama de Casos de Uso ● Técnica de modelagem idealizada por Ivar Jacobson, na década de 1970 ● Posteriormente, notação de casos de uso foi adicionada à UML 16 Componentes do Modelo ● Modelo de casos de uso de um sistema é composto de: ○ Casos de Uso ○ Atores ○ Relacionamento entre os elementos anteriores 17 Casos de Uso ● Um caso de uso é a especificação de uma sequência de interações entre um sistema e os agentes externos ○ Define parte da funcionalidade de um sistema, sem revelar a estrutura e o comportamento internos deste sistema ○ Um caso de uso representa quem faz o que com o sistema sem considerar o comportamento interno 18 Descrições Narrativas ● Cada caso de uso é definido através da narrativa das intenções que ocorrem entre os elementos externos do sistema ● Há várias formas de se descrever casos de uso ○ Grau de abstração ○ Formato ○ Grau de detalhamento 19 Formato ● Descrição Contínua ○ Texto livre ● Exemplo: ○ “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 o saque. O cliente digita a quantia a ser retirada, o sistema fornece essa quantia e imprime recibo” 20 Formato ● Descrição Numerada ○ Passos numerados ● Exemplo: ○ 1. Cliente insere seu cartão no caixa eletrônico ○ 2. Sistema apresenta solicitação de senha ○ 3. Cliente digita senha ○ 4. Sistema exibe menu de operações disponíveis ○ 5. Cliente indica que deseja realizar saque ○ 6. Sistema requisita quantia a ser sacada ○ 7. Cliente retira a quantia e recibo 21 Formato ● Narrativa Fragmentada ○ Ações do ator e reações do sistema ○ Lida em “zigue-zague” 22 Grau de Detalhamento ● O grau de detalhamento a ser utilizada na descrição de um caso de uso também pode variar ○ Sucinto: descreve interações sem muitos detalhes ○ Expandido ou detalhado: descreve as interações em detalhes 23 Grau de Abstração ● O grau de abstração de um caso de uso diz respeito à existência ou não de menção à tecnologia a ser utilizada na descrição deste caso de uso ○ Essencial ■ Não faz menção à tecnologia a ser utilizada Real ■ Apresenta detalhes da tecnologia a ser utilizada na implementação deste caso de uso 24 Grau de Abstração ● Exemplo de descrição essencial (e numerada) 25 Cenários ● O caso de uso tem diversas maneiras de ser realizado ● Um cenário é a descrição de uma das maneiras pelas quais um caso de uso pode ser realizado ● Normalmente há diversos cenários para um mesmo caso de uso ● Úteis durante a modelagem de interações 26 Cenários 27 Atores ● Elemento externo que interage com o sistema ○ Externo: atores não fazem parte do sistema ○ Interage: um ator troca informações com o sistema ● Casos de uso representam uma sequência de interações entre o sistema e o ator no sentido de troca de informações entre eles ● Normalmente um agente externo inicia a sequencia de interações com o sistema 28 Atores ● Categorias de atores ○ Pessoas (Emprego, Cliente, Gerente, Vendedor) ○ Organizações (Administradores de Cartões) ○ Outros sistemas(Sistema de Cobrança, Sistema de Estoque de Produtos) 29 Atores ● Um ator corresponde a um papel representado em relação ao sistema ○ A mesma pessoa pode ser Funcionário de um banco e pode ser Cliente do mesmo banco ● Pessoal, o nome dado a um ator deve lembrar o seu papel 30 Relacionamentos ● Casos de uso e atores não existem sozinhos! ● A UML define diversos relacionamentos no modelos de caso de uso ○ Comunicação ○ Inclusão ○ Extensão ○ Generalização 31 Relacionamento Comunicação ● Informa a que caso de uso o ator está associado ● Isso significa que o ator interage com o sistema pode meio desse caso de uso ● Um ator pode se comunicar com mais de um caso de uso 32 Relacionamento Inclusão ● Existe somente entre casos de uso ● Quando dois ou mais casos de uso incluem uma sequência de interações comum, esta sequência comum pode descrita em um outro caso de uso ○ Torna a descrição dos casos de uso mais simples ○ Exemplo? 33 Relacionamento Extensão ● Utilizado para modelar situações onde diferentes sequências de interações podem ser inseridas em um caso de uso ○ Representa um comportamento opcional ○ Exemplo? 34 Relacionamento de Generalização ● Na generalização entre casos de uso, sejam A e B dois casos de uso ○ Quando B herda de A, as sequências de comportamento de A também valem para B ● Na generalização entre atores significa que o herdeiro possui o mesmo comportamento que o ator do qual ele herda 35 DIAGRAMA DE CASOS DE USO 36 Diagrama de Casos de Uso ● Representa graficamente os atores, casos de uso e relacionamento entre os elementos ● Tem o objetivo de ilustrar em um nível alto de abstração quais elementos externos interagem com que funcionalidades do sistema 37 Notação 38 Notação 39 Notação ● Os relacionamentos de inclusão, extensão e herança são representados por uma seta direcionada de um caso de uso para outro 40 Notação 41 Notação 42 Notação 43 Notação 44Identificação dos Elementos do Modelo de Casos de Uso ● Os atores e os casos de uso são identificados a partir de informações coletadas na fase de levantamento de requisitos do sistema ○ Analistas devem identificar as atividades do negócio relevantes ao sistema a ser construído ● Quantos casos de uso são necessários? Depende ○ Da complexidade do sistema 45 Identificação dos Elementos do Modelo de Casos de Uso ● Identificação de atores ○ Analista da empresa deve identificar áreas da empresa que serão afetadas ou utilizarão o sistema ○ Pergunta básica ■ Que órgãos, empresas ou pessoas irão utilizar o sistema? ■ Que outros sistemas irão se comunicar com o sistema a ser construído 46 Identificação dos Elementos do Modelo de Casos de Uso ● Identificação de casos de uso ○ A partir da lista inicial de atores, deve passar à identificação dos casos de uso ○ Perguntas importantes ■ Quais são as necessidades e objetivos de cada ator em relação ao sistema? ■ O sistema deve realizar alguma ação que ocorre regularmente no tempo? ■ Para cada requisito funcional, existe algum caso de uso para atendê-lo? 47 Construção do DCU ● Construção dos Diagramas de Casos de Uso: ○ Devem dar suporte à escrita do modelo, fornecendo uma visão de alto nível ○ Quanto mais fácil for a leitura do diagrama representando casos de uso, melhor ○ Se o sistema não for tão complexo, pode ser criado um único DCU 48 Construção do DCU ● Construção dos Diagramas de Casos de Uso: ○ Em sistemas complexos, representar todos os casos de uso do sistema em um único DCU talvez o torne ilegível ■ Alternativa é criar vários diagramas 49 Documentação dos Atores ● Uma breve descrição para cada ator deve ser adicionada ao modelo de casos de uso ● Pessoal, muito importante, o nome de um ator deve lembrar o papel desempenhado pelo mesmo sistema 50 Documentação dos Casos de Uso ● UML não define uma estruturação específica a ser utilizada ○ A equipe de desenvolvimento deve utilizar o formato de descrição que lhe for realmente útil 51 Documentação dos Casos de Uso ● Nome ● Descrição ● Identificador ● Importância ● Sumário ● Ator Primário ● Ator Secundário ● Pré-condições 52 Documentação dos Casos de Uso ● Fluxo Principal ● Fluxo Alternativo ● Fluxos de Exceção ● Pós-condições ● Regras de Negócio ● Histórico ● Notas de Implementação 53 Documentação Suplementar ao Modelo de Casos de Uso ● O modelo de casos de uso força o desenvolvedor a pensar em como os agentes externos interagem com o sistema ● No entanto, este modelo corresponde somente aos requisitos funcionais ○ Outros tipos de requisitos(desempenho, interface, segurança, regras de negócio fazem parte do documento de requisitos) 54 Documentação Suplementar ao Modelo de Casos de Uso ● Regras de Negócio ○ São políticas, condições ou restrições que devem ser consideradas na execução dos processos existente em uma organização ○ A descrição do modelo de regras de negócio pode ser feita utilizando texto informal ou alguma forma de estruturação 55 Documentação Suplementar ao Modelo de Casos de Uso ● Regras de Negócio 56 Documentação Suplementar ao Modelo de Casos de Uso ● Regras de Negócio ○ Têm influência sobre um ou mais casos de uso 57 Modelo de Casos de Uso em um processo I&I ● Deve-se considerar os casos de uso mais importantes primeiro ○ Risco de desenvolvimento ○ Prioridades estabelecidas pelo usuário 58 Modelo de Casos de Uso em um processo I&I ● Um caso de uso não tão importante não será contemplado na iterações iniciais ○ Atacar o risco mais cedo 59 PRÁTICA 60 Referências ● Princípios de Análise e Projeto de Sistemas com UML 2015 ● Slides do professor Marcos de Oliveira 61 Questions? E-mail: juliomserafim@gmail.com 62
Compartilhar