©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE1 Análise e Projeto de Sistemas Modelagem de Requisitos com Casos de Uso.

Slides:



Advertisements
Apresentações semelhantes
Modelo de Casos de Uso Diagrama de Casos de Uso
Advertisements

Análise e Projeto Orientado a Objetos
Requisitos de Software
UML Diagramas de Caso de Uso (USE-CASE)
APSOO Aula 03.
(Unified Modeling Language)
Casos de Uso.
Diagrama de Atividades
UML Material retirado da apostila do Professor Cesar Augusto Tacla
Centrado na arquitetura
Projeto de Sistemas de Software
Linguagens de Modelagem para SMA
Análise de Requisitos Use Case Renata Araujo Ricardo Storino
Especificação e Modelagem de Requisitos
Modelagem de Sistemas de Informação
Professor: Rogério Lopes Disciplina: Engenharia de Software II Fortium Sistemas da Informação Engenharia de Software II.
Engenharia de Requisitos Requisito – sistema Caso de uso - usuário
Análise e Gerenciamento de Requisitos com Casos de Uso
Selma Shin Shimizu Melnikoff 2006
AP 1.
Modelagem para Web Aula de 11/04/2011.
Especificação de Requisitos de Software com Casos de Uso
Análise de Sistemas Análise e Projeto Prof. Jeime Nunes Site:
Simone Sawasaki Tanaka
UML Unified Modeling Language
DIAGRAMA DE CASO DE USO Prof. Fabíola Gonçalves C. Ribeiro.
O Fluxo de Requisitos © Alexandre Vasconcelos
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
Use Cases (Casos de Uso)
Use Cases (Casos de Uso)
Caso de Uso - Definição Um caso de uso é uma descrição narrativa de uma seqüência de eventos que ocorre quando um ator (agente externo) usa um sistema.
Diagramas de Atividade
Fase de Concepção (Início, Planejamento)
Sistema de Informação Modelagem de Negócio UML
Levantamento de Requisitos
Educação Profissional Técnica de Nível Médio Curso Técnico de Informática
Análise Orientada Objeto
UML – Engenharia de Software 1
Levantamento de Requisitos
UML Diagrama de Caso de Uso Profª. Marcelo Siedler
Capturando Requisitos com Use Cases Disciplina: Estudo do RUP Autor: Tiago Lima Massoni Orientacao: Augusto Sampaio Paulo Borba.
Especificação de Caso de Uso
Laboratório de Programação
RUP - Cap. 3 – Processo Dirigido por Caso de Uso
Revisão 2º Bimestre Engenharia de Software I
Diagrama de Colaboração. Diagramas de Interação Expressam informações bastante similares porém de maneira diferente Diagrama de seqüência: – Interação.
Análise e Projeto de Sistemas
Modelando Sistemas em UML
Fluxos secundários Só devem ser analisados e descritos após a descrição dos fluxos básicos. Fluxos alternativos situações especiais (desconto para um cliente)
Casos de Uso Tarciane Andrade
Abr-17 Analisar Caso de Uso Analisar caso de uso.
Use Cases e Fluxo de Eventos
Diagramas de Caso de Uso
Fase de Concepção (Início, Planejamento)
Requisitos Não funcionais
Diagrama Casos de Uso.
A linguagem unificada de modelagem
Engenharia de Software Fluxo de Requisitos
UML: Casos de Uso Projeto de Sistemas de Software.
UML (Unified Modeling Language) Linguagem Unificada de Modelagem
Modelagem de Sistemas Orientada a Objeto Com UML
CIn-UFPE1 UML Uma linguagem unificada de modelagem Visão Geral.
Engenharia de Software com o RUP - Workflow de Requisitos
Interações entre objetos
Aula 04 – Analise de Sistemas Profª Rita de Cassia Gaieski
UML (Unified Modeling Language) A linguagem unificada de modelagem
Diagrama de atividade.
©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE1 Análise e Projeto de Sistemas Modelagem de Requisitos com Casos de Uso.
Transcrição da apresentação:

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE1 Análise e Projeto de Sistemas Modelagem de Requisitos com Casos de Uso

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE2 Objetivos n Descrever em detalhe a técnica de Modelagem de Requisitos com Casos de Uso n Apresentar um modelo de documento de requisitos n Discutir o uso do diagrama de atividades na modelagem de casos de uso

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE3 Conceitos Básicos

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE4 Principais Tipos de Requisitos n Não-Funcionais  Atributos ou qualidades do sistema n Funcionais  Expressam funcionalidades do sistema

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE5 Alguns Tipos de Requisitos Não-Funcionais n Usabilidade (Facilidade de uso) n Confiabilidade n Desempenho n Segurança n Distribuição n Adequação a Padrões n Restrições de Hardware e Software

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE6 Caso de uso n É uma forma específica de uso do sistema através da execução de alguma de suas funcionalidades. n Uma unidade coerente de funcionalidade provida por um um sistema, manifestada por uma seqüência de mensagens trocadas entre o sistema e um ou mais usuários externos (representados como atores), junto com as ações executadas pelo sistema.

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE7 Caso de uso (continuação) n Descrevem o que acontece dentro do sistema. n Ajudam muito na comunicação entre clientes e desenvolvedores. n Mostram apenas o que o sistema faz, e não como.  Capturam o comportamento pretendido para um sistema, sem a necessidade de especificar como esse comportamento será implementado.

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE8 Caso de uso: representação gráfica Solicitar extrato Solicitar saldo

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE9 Atores n Constituem as entidades que interagem com o ambiente do sistema  Pessoas ou outros sistemas (de hardware ou software) que interagem com o sistema em desenvolvimento n Definem um papel particular n São sempre externos ao sistema n O sistema será descrito através de vários casos de uso que são executados por um número de atores

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE10 Ator: representação gráfica Cliente Caixa

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE11 Atores x usuários do sistema n Uma mesma pessoa pode desempenhar diferentes papéis Carlos como professor Professor Estudante Carlos como estudante Carlos

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE12 Diagrama de casos de uso n Diagrama com os casos de uso do sistema e atores relacionados n Facilitam o entendimento do sistema mostrando a sua “visão externa”. n A coleção de casos de uso deve especificar todas as formas existentes de uso do sistema Diagrama de casos de uso

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE13 Diagrama de casos de uso: representação gráfica Diagrama de casos de uso: representação gráfica Cliente Sacar dinheiro Realizar depósito Transferir entre contas Uma associação entre um ator e um caso de uso indica que há uma comunicação, possivelmente com envio e recepção de mensagens.

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE14 Cenários n Em UML significa um caminho através de um caso de uso. n Uma instância de um caso de uso n Exemplo (Sacar dinheiro):  Saque com sucesso  Tentativa de saque MAS senha incorreta  Tentativa de saque MAS saldo insuficiente

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE15 Requisitos Não-Funcionais x Casos de Uso n Requisitos não funcionais podem ser:  Específicos: associados a um caso de uso específico  Genéricos: associados a vários casos de uso ou ao sistema com um todo n Para serem atendidos podem gerar novos casos de uso

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE16 Especificação de Caso de Uso n Identificador do caso de uso n Breve Descrição n Ator (opcional) n Prioridade n Pré condições n Pós condições n Fluxo de eventos:  Fluxo de eventos principal  Fluxos secundários: alternativos e de exceção n Requisitos Não-Funcionais Específicos

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE17 Modelo de casos de uso Atores Casos de uso Especificações de casos de uso Modelo de casos de uso

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE18 Pacotes de Casos de Uso n Servem para agrupar casos de uso relacionados n Critérios para agrupamento:  ator  funcionalidades correlatas  processos  “um por todos e todos por um”

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE19 Um Modelo de Documento de Requisitos n Introdução  Objetivos do documento  Público ao qual se destina  Termos e acrônimos  Referências n Descrição geral do sistema  Abrangência e sistemas relacionados  Descrição dos usuários n Casos de uso  Diagrama  Especificações n Requisitos não funcionais genéricos

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE20 Como encontrar atores e casos de uso?

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE21 Como encontrar atores? n Quem usa o sistema? n Quem instala/mantém o sistema? n Quem inicia/desliga o sistema? n Que outros sistemas usam o sistema? n Quem recebe informação do sistema? n Quem provê informação ao sistema?

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE22 Como encontrar casos de uso? n Atores são fundamentais para a descoberta dos casos de uso n Pergunte  Que funções o ator vai querer do sistema?  O sistema armazena informações? Que informações atores irão criar, ler, atualizar ou apagar?  O sistema precisa notificar o ator sobre mudanças no seu estado interno?  Existe algum evento externo que o sistema precisa saber? Que ator informa o sistema desses eventos?

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE23 Especificação Detalhada dos Casos de Uso

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE24 Quando e por que realizá-las? n Quando?  após fazer levantamento dos principais casos de uso do sistema n Por que?  descrever detalhes dos casos de uso  descrever fluxos de eventos e outras propriedades  uniformizar entendimento entre clientes, usuários e equipe de desenvolvimento

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE25 Identificação do caso de uso n Deve ser única! n Não deve mudar nunca n Pois casos de uso podem ser referenciados por seu identificador

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE26 Breve descrição do caso de uso n Dar uma idéia do propósito do caso de uso, do seu objetivo n Deve ser feita ao se identificar o caso de uso, para evitar mal-entendidos n 2 ou 3 linhas!

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE27 Prioridade de casos de uso n Essencial para gerenciar os requisitos n É preciso definir prioridade de todos os casos de uso n Exemplos de prioridade:  Essencial  Importante  Desejável

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE28 Pré e pós condições n O que deve ser verdade antes e depois da realização do caso de uso!

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE29 Pré e pós condições: exemplos n Caso de uso “Entregar pedido”  Pré condição: os itens do pedido devem existir em estoque  Pós condição: os itens enviados devem ser abatidos do estoque n Caso de uso “Recadastrar CPF”  Pré condição: o usuário deve possuir um CPF  Pós condição: a situação do contribuinte é atualizada

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE30 Fluxo de eventos básico/principal n Série de passos que compõem um caso de uso n Concentre-se inicialmente na funcionalidade básica/central do caso de uso n Pense nos fluxos secundários depois!

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE31 Exemplo de um fluxo básico n Caso de uso “Sacar dinheiro” 1. O cliente passa o seu cartão 2. Digita sua senha 3. Digita o valor do saque 4. O sistema verifica se há saldo suficiente 5. O saldo é debitado da conta do cliente 6. O dinheiro é entregue ao cliente

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE32 Exemplo de um fluxo básico n Caso de uso “Sacar dinheiro” n MAS...  E se a senha não conferir?  E se não houver saldo?  E se não houver dinheiro suficiente na máquina?

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE33 Fluxos secundários n Só devem ser analisados e descritos após a descrição dos fluxos básicos.  situações especiais (ex: desconto para um cliente)  situações de erro

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE34 Uso do diagrama de atividades na especificação dos fluxos de eventos

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE35 Diagrama de atividades n Usados para representar graficamente o fluxo de eventos (fluxo básico + fluxos alternativos) n São semelhantes aos antigos fluxogramas. n São muito usados para modelar atividades concorrentes. Às vezes um diagrama fala mais que 1000 palavras!

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE36 Diagrama de atividades n É composto de:  atividades  transições  decisões

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE37 Estado inicial Verifica senha Libera dinheiro Termina transação e Imprime recibo Manipula senha incorreta [ incorreta ] [ correta ] Pede valor condição de guarda atividade [ dinheiro disponível ] [ dinheiro não disponível ] Prepara para Imprimir recibo [ resolvido ] [ não resolvido ] Exemplo: diagrama de atividades para o caso de uso Sacar dinheiro transição concorrência Estado final decisão sincronização de atividades

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE38 Estruturação do Modelo de Casos de Uso

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE39 Por que estruturar o modelo? n Extrair descrições de funcionalidades genéricas e compartilhadas que podem ser usadas por mais de um caso de uso. n Extrair descrições de funcionalidades adicionais que possam estender descrições específicas n Facilitar o entendimento do modelo

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE40 Generalização de Atores n É possível definir tipos gerais de atores e especializá- los usando o relacionamento de especialização Vendedor Realizar venda Estabelecer crédito Supervisor

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE41 Generalização de Atores: outro exemplo Aluno tempo integral Aluno tempo parcial

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE42 Relacionamentos entre Casos de Uso n Inclusão n Extensão n Generalização

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE43 Inclusão de casos de uso n Use inclusão quando houver repetição entre casos de uso e você desejar evitar esta repetição. n Um caso de uso incorpora explicitamente o comportamento de outro caso de uso, evitando assim repetições de descrição de fluxos.

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE44 Inclusão de casos de uso: exemplo Efetuar pagamento Vendedor Realizar pedido >

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE45 Inclusão de casos de uso: outro exemplo Validar cliente Cliente Sacar >

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE46 Exemplo de inclusão: validação de cliente no sistema Use Case: Sacar O cliente seleciona a opção “sacar” O cliente informa o valor a ser sacado includes Validar cliente O cliente recebe o dinheiro Use Case de Inclusão: Validar Cliente O cliente informa a senha e passa o cartão O sistema valida a senha e os dados do cartão

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE47 Extensão de casos de uso n Use extensão quando quiser descrever uma variação do comportamento normal.  partes opcionais de use cases  cursos alternativos e complexos que raramente ocorrem Solicitar catálogo Vendedor Realizar pedido >

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE48 Generalização de casos de uso n Relaciona um Use Case especializado a um mais geral n O filho herda os atributos, operações e seqüências de comportamento dos pais n O filho pode adicionar e redefinir o comportamento do pai n O filho pode substituir o pai em qualquer lugar que ele aparece

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE49 Generalização de casos de uso: exemplo Validar cliente Verificar passwordScan da retina

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE50 Diagrama de casos de uso estruturado: outro exemplo > Histórico do semestre atual Solicitar histórico de do curso Solicitar histórico > Verificar dependências Matricular aluno > Sistema de controle de pre-requisitos

©2003, Alexandre Vasconcelos & Augusto Sampaio CIn-UFPE51 Diagrama de casos de uso estruturado: outro exemplo