A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 1 Utilizando UML e Padrões – Craig Larman Modelos de Sistemas.

Apresentações semelhantes


Apresentação em tema: "Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 1 Utilizando UML e Padrões – Craig Larman Modelos de Sistemas."— Transcrição da apresentação:

1 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 1 Utilizando UML e Padrões – Craig Larman Modelos de Sistemas Casos de Uso

2 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 2 Utilizando UML e Padrões – Craig Larman • Delimitação do contexto de um sistema. • Entendimento dos requisitos. • Descrição dos requisitos funcionais. • Principal saída da etapa de especificação de requisitos. • Principal entrada da etapa de análise. Objetivos Principais dos Casos de Uso

3 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 3 Utilizando UML e Padrões – Craig Larman Casos de Uso

4 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 4 Utilizando UML e Padrões – Craig Larman • Técnica proposta por Ivar Jacobson em sua metodologia de desenvolvimento de sistemas orientados a objetos OOSE (Engenharia de Software Orientada á Objeto ). • Segundo Ivar Jacobson, podemos dizer que um Caso de Uso é um "documento narrativo que descreve a sequência de eventos de um ator que usa um sistema para completar um processo". Casos de Uso

5 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 5 Utilizando UML e Padrões – Craig Larman • Incorporado à linguagem UML(Unified Modeling Language ), que define um diagrama para representar graficamente os casos de uso e seus relacionamentos (Diagrama de Casos de Uso). • Cada caso de uso deve descrever somente uma funcionalidade ou objetivo do sistema. Casos de Uso

6 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 6 Utilizando UML e Padrões – Craig Larman UML – Unified Modeling Language Linguagem de Modelagem Unificada • é uma linguagem visual utilizada para modelar sistemas computacionais por meio do paradigma de Orientação a Objetos. • a UML é composta por vários diagramas com o objetivo de fornecer múltiplas visões do sistema a ser modelado, analisando-o e modelando-o sob diversos aspectos.

7 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 7 Utilizando UML e Padrões – Craig Larman UML – Unified Modeling Language Linguagem de Modelagem Unificada – Descrição de um sistema segundo três perspectivas: • Operações (funcional)  Diagrama de Caso de Uso • Dados (estrutural)  Diagrama de Classes • Eventos (temporal)  Diagramas de Sequência, Atividades, Transição de Estados

8 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 8 Utilizando UML e Padrões – Craig Larman UML – Unified Modeling Language Linguagem de Modelagem Unificada • cada diagrama da UML modela o sistema em camadas, sendo que alguns diagramas enfocam o sistema de forma mais geral, apresentando uma visão externa do sistema, como é o objetivo do Diagrama de Casos de Uso.

9 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 9 Utilizando UML e Padrões – Craig Larman Diagrama de Casos de Uso Todo o conjunto de Casos de Uso e Atores do sistema organiza o escopo do sistema a respeito dos objetivos que os usuários atingirão quando o sistema estiver pronto.

10 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 10 Utilizando UML e Padrões – Craig Larman • Descreve a funcionalidade proposta para o novo sistema. • Fornece uma descrição clara e consistente do que o sistema deve fazer. Diagrama de Casos de Uso

11 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 11 Utilizando UML e Padrões – Craig Larman • São sempre iniciadas por um ator. • Deve sempre retornar um resultado ao ator. • Cada caso de uso especifica uma funcionalidade completa envolvendo os atores interessados. Características do Diagrama Caso de Uso

12 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 12 Utilizando UML e Padrões – Craig Larman Etapas: • Objetivo • Ator • Descrição • Passos (procedimentos) Características do Diagrama Caso de Uso

13 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 13 Utilizando UML e Padrões – Craig Larman Manter os clientes da empresa, onde também serão submetidos a análise de crédito. Os clientes devem fornecer informações como referências pessoais e comerciais, dados profissionais e dados pessoais. Diagrama Caso de Uso - Objetivo

14 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 14 Utilizando UML e Padrões – Craig Larman • Atores são papéis de elementos externos ao sistema e que interagem DIRETAMENTE com o sistema. • Um Ator é um PAPEL DESEMPENHADO POR ALGUMA COISA EXTERNA ao sistema (não necessariamente uma pessoa). Diagrama Caso de Uso - Ator

15 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 15 Utilizando UML e Padrões – Craig Larman Para identificar os atores que vão participar do modelo devemos fazer as seguintes perguntas: • Quem usa o sistema? • Quem inicializa o sistema? • Quem fornece os dados? • Quem usa as informações? Diagrama Caso de Uso Como identificar atores?

16 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 16 Utilizando UML e Padrões – Craig Larman Ator • Exemplo de atores: • Cliente • Secretária • Sistema de vendas (desde que não seja o sistema que estamos desenvolvendo) Diagrama Caso de Uso - Ator

17 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 17 Utilizando UML e Padrões – Craig Larman • É um papel que tipicamente estimula/solicita ações/eventos do sistema e recebe reações. Cada ator pode participar de vários casos de uso. Ator Diagrama Caso de Uso - Ator

18 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 18 Utilizando UML e Padrões – Craig Larman Diagrama Caso de Uso - Atores Ator  PESSOAAtor  SISTEMA

19 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 19 Utilizando UML e Padrões – Craig Larman Diagrama Caso de Uso - Atores herança entre Atores

20 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 20 Utilizando UML e Padrões – Craig Larman Casos de Uso = OBJETIVO do Ator Diagrama Caso de Uso Representação

21 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 21 Utilizando UML e Padrões – Craig Larman • É uma sequência de ações executadas para um determinado objetivo. • O seu nome deve ser uma frase que indique a ação que ele realiza. • É descrito como um conjunto de passos bem como suas exceções. • Tem início, meio e fim e sempre devolve uma resposta. Diagrama Casos de Uso – Caso de Uso

22 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 22 Utilizando UML e Padrões – Craig Larman • Caso de uso, normalmente, é iniciado a partir de um estímulo (solicitação) de um ator. Em geral uma comunicação é identificada como uma ligação sem direção. •Um caso de uso pode estar associado a mais de um ator. Atores ativos iniciam um caso de uso, atores passivos participam do caso de uso sem iniciá-lo. Diagrama Casos de Uso – Caso de Uso

23 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 23 Utilizando UML e Padrões – Craig Larman Especificação dos Casos de Uso • Cada caso de uso no diagrama de casos de uso deve ser detalhado na especificação de caso de uso. • Esta especificação é evolutiva, quanto mais requisitos são coletados, mais detalhes são adicionados na especificação.

24 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 24 Utilizando UML e Padrões – Craig Larman Casos de Uso = Diagrama + Narrativa Descrição - Esse caso de uso começa no cadastramento de uma proposta de financiamento pelo Analista de Crédito, que será submetida a uma análise de crédito.

25 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 25 Utilizando UML e Padrões – Craig Larman Deve ser possível ao Analista de Crédito:  incluir um novo cliente, sempre que existir uma nova proposta, informando: Dados pessoais: nome completo, endereço de residência, bairro, cidade, CEP, Estado, telefone para contato, nome da empresa, endereço comercial, cargo que ocupa, salário e data de nascimento; Dados dos documentos obrigatórios - CPF e o RG; Detalhe do Caso de Uso

26 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 26 Utilizando UML e Padrões – Craig Larman Deve ser possível ao Analista de Crédito: (cont.)  alterar os dados do cliente cadastrado;  excluir o cliente cadastrado, caso haja desistência da proposta de crédito;  consultar todos os dados do cliente, informando o CPF ou o código do cliente. Detalhe do Caso de Uso

27 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 27 Utilizando UML e Padrões – Craig Larman • Se o cliente possuir contas bancárias, esses dados deverão ser fornecidos; • O cliente deve apresentar, obrigatoriamente, no mínimo 2 referências pessoais ou comerciais; • Para toda manipulação dos clientes na base de dados, deve ser validado o CPF e a cidade escolhida. Detalhe do Caso de Uso

28 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 28 Utilizando UML e Padrões – Craig Larman • Consiste na explicitação de todas as diferentes funcionalidade do sistema, que permitirá inferir e identificar mais claramente outras necessidades. Expansão Diagrama de Casos de Uso

29 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 29 Utilizando UML e Padrões – Craig Larman Casos de Uso Tipos de e specificação • descrição inicial  representação conceitual do sistema; • descrição base  documenta o comportamento ideal; • descrição elaborada  documenta detalhadamente o comportamento.

30 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 30 Utilizando UML e Padrões – Craig Larman Descrição inicialDescrição baseDescrição elaborada Nome Atores Descrição Fluxo básico Fluxo alternativo Pré-condição Pós-condição Requisitos especiais Especificação dos Casos de Uso

31 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 31 Utilizando UML e Padrões – Craig Larman Fluxo Básico: Quando a atividade é realizada com sucesso, deve existir somente um fluxo. Cenário 1 (Fluxo Básico) : Passo1, Passo2, Passo3, Passo4

32 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 32 Utilizando UML e Padrões – Craig Larman E se a consulta for por cliente? Fluxo Alternativo • Diagrama de Caso de Uso Cenário 1 (Fluxo Básico) : Passo1, Passo2, Passo3, Passo4

33 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 33 Utilizando UML e Padrões – Craig Larman Diagrama de Caso de Uso Fluxos Alternativos Os cenários são todos os caminhos possíveis que o Caso de Uso pode ter desde o Fluxo Básico até todos os Fluxos Alternativos combinados entre si.

34 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 34 Utilizando UML e Padrões – Craig Larman • Cenário 1 : Passo1, Passo2, Passo3, Passo4 (Fluxo Básico); • Cenário 2 : Passo1, Passo2, A1, Passo4; • Cenário 3 : Passo1, Passo2, Passo 3, A2, Passo2; • Cenário 4 : Passo1, Passo2, A1, A2, Passo2; • Cenário 5 : Passo1, A3. Diagrama de Caso de Uso Fluxos Alternativos

35 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 35 Utilizando UML e Padrões – Craig Larman Fluxos Alternativos Cenário 2 : Passo 1, Passo 2, A1, Passo 4 A1

36 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 36 Utilizando UML e Padrões – Craig Larman Fluxos Alternativos Cenário 2 : Passo 1, Passo 2, A1, Passo 4 A1

37 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 37 Utilizando UML e Padrões – Craig Larman Fluxos Alternativos Cenário 3 : Passo 1, Passo 2, Passo 3, A2, Passo 2 A2

38 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 38 Utilizando UML e Padrões – Craig Larman Fluxos Alternativos Cenário 4 : Passo 1, Passo 2, A1, A2, Passo 2 A2 A1

39 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 39 Utilizando UML e Padrões – Craig Larman Fluxos Alternativos Cenário 5 : Passo 1, A3 A3

40 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 40 Utilizando UML e Padrões – Craig Larman Diagrama de Caso de Uso Fluxos Alternativos O que causa um Fluxo Alternativo O que um Fluxo Alternativo pode fazer l uma escolha do Ator l retroceder para um passo anterior. l o estado do Sistema. l avançar para um passo posterior; l finalizar o Caso de Uso.

41 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 41 Utilizando UML e Padrões – Craig Larman Diagrama de Caso de Uso Pré-condição e Pós-condição Pré-condição Pós-condição

42 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 42 Utilizando UML e Padrões – Craig Larman • Demonstram restrições para um Caso de Uso iniciar e garantias mínimas alcançadas quando este terminar. • A Pré-condição é a CONDIÇÃO o Sistema deve se encontrar para permitir que o Caso de Uso inicie. A pré-condição mais comum nos sistemas é "O usuário deve estar logado". Diagrama de Caso de Uso Pré-condição e Pós-condição

43 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 43 Utilizando UML e Padrões – Craig Larman Diagrama de Caso de Uso Pré-condição e Pós-condição

44 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 44 Utilizando UML e Padrões – Craig Larman Pós-condição: Tarefas que devem ser realizadas depois que as etapas de Caso de Uso tiverem sido concluídas. As pós- condições descrevem os resultados observáveis de sucesso ou de falha do Caso de Uso. Especificação dos Casos de Uso

45 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 45 Utilizando UML e Padrões – Craig Larman Especificação dos Casos de Uso

46 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 46 Utilizando UML e Padrões – Craig Larman Requisitos especiais: • Requisitos legais e de regulamentação; • Padrões de aplicativos; • Requisitos de usabilidade, confiabilidade, desempenho e portabilidade; • Sistemas operacionais, ambientes, compatibilidade e restrições de projeto. Especificação dos Casos de Uso

47 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 47 Utilizando UML e Padrões – Craig Larman Estruturar Modelo de Casos de Uso • Estabelecer relacionamento de “Inclusão” entre os casos de uso. • Estabelecer relacionamento de “Extensão” entre os casos de uso. • Estabelecer relacionamento de “Generalização” entre os casos de uso. • Estabelecer relacionamento de “Generalização” entre os atores.

48 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 48 Utilizando UML e Padrões – Craig Larman Diagrama de Casos de Uso Casos de Uso: Relacionamentos • Extensão: representa fluxos opcionais ou anormais. É representado por > • Inclusão: representa fluxos complexos e comuns a vários casos de uso. É representado por >

49 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 49 Utilizando UML e Padrões – Craig Larman Casos de Uso: Relacionamentos (exemplo)

50 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 50 Utilizando UML e Padrões – Craig Larman Casos de Uso: Relacionamentos (exemplo)

51 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 51 Utilizando UML e Padrões – Craig Larman Exemplo – Sistema de Pedidos Diagrama de Casos de Uso

52 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 52 Utilizando UML e Padrões – Craig Larman Diagrama de Caso de Uso NARRATIVA

53 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 53 Utilizando UML e Padrões – Craig Larman Diagrama de Caso de Uso NARRATIVA

54 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 54 Utilizando UML e Padrões – Craig Larman Diagrama de Casos de Uso Relacionamento «include» entre Casos de Uso

55 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 55 Utilizando UML e Padrões – Craig Larman Caso de Uso “Selecionar Produtos” Diagrama de Caso de Uso Relacionamento «include» entre Casos de Uso

56 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 56 Utilizando UML e Padrões – Craig Larman Diagrama de Caso de Uso Após o relacionamento «include»

57 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 57 Utilizando UML e Padrões – Craig Larman Diagrama de Caso de Uso Após o relacionamento «include»

58 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 58 Utilizando UML e Padrões – Craig Larman Diagrama de Caso de Uso Relacionamento «extend» entre Casos de Uso • Um Caso de Uso disponibiliza um ponto de extensão (extension point) que outros Casos de Uso podem observar e de acordo com uma condição, este Caso de Uso que está observando pode assumir o controle e embutir os seus comportamentos.

59 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 59 Utilizando UML e Padrões – Craig Larman Diagrama de Caso de Uso Relacionamento «extend» entre Casos de Uso • Para direcionar melhor o uso do relacionamento «extend», podemos afirmar que você usará esta técnica quando necessitar que a qualquer momento dada uma condição, o Caso de Uso base deverá ser interrompido e outro Caso de Uso deverá assumir o controle.

60 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 60 Utilizando UML e Padrões – Craig Larman Diagrama de Caso de Uso Relacionamento «extend» entre Casos de Uso

61 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 61 Utilizando UML e Padrões – Craig Larman Diagrama de Caso de Uso Relacionamento «extend» entre Casos de Uso

62 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 62 Utilizando UML e Padrões – Craig Larman Construindo Casos de Uso 1.Listar todas as funções e defina a fronteira do sistema. 2.Identificar atores e casos de uso. 3.Desenhe o diagrama de casos de uso. 4.Escreva todos os casos de uso em formato de alto nível. 5.Escreva os casos de uso mais críticos em formato essencial expandido.

63 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 63 Utilizando UML e Padrões – Craig Larman Decomposição de Casos de Uso Pacotes Casos de Uso Gerenciar Ponto de Venda Casos de Uso Gerenciar Estoque Casos de Uso Gerais

64 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 64 Utilizando UML e Padrões – Craig Larman Construindo Casos de Uso Exemplo Objetivo Geral O propósito do Sistema é criar um terminal de ponto de vendas para ser usado em lojas de varejo para aumentar a automatização das compras.

65 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 65 Utilizando UML e Padrões – Craig Larman Objetivos Específicos: • Checkout (passagem pelo caixa) mais rápido para o cliente; • • Verificação e identificação rápida do cliente; • • Análise rápida e precisa do crédito. Construindo Casos de Uso Exemplo

66 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 66 Utilizando UML e Padrões – Craig Larman • Passo 1.1  Listar todos os requisitos • Capturar a informação de um item adquirido, usando o código, obtido por um leitor de código de barra, ou pela entrada manual usando o código universal de produto.. Construindo Casos de Uso Exemplo

67 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 67 Utilizando UML e Padrões – Craig Larman • Passo 1.1  Listar todos os requisitos (cont.) • Calcular o total da venda corrente, incluindo os cálculos de impostos e de cupons de desconto; • Reduzir a quantidade em estoque quando a venda for finalizada. • Registrar as venda completadas. Construindo Casos de Uso Exemplo

68 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 68 Utilizando UML e Padrões – Craig Larman • Passo 1.1  Listar todos os requisitos (cont) • O gerente deve abrir o caixa (log in) com um identificador (ID) e uma senha para poder usar o sistema. • Tratar os pagamentos em dinheiro: capturar a quantia recebida e informar o troco. Construindo Casos de Uso Exemplo

69 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 69 Utilizando UML e Padrões – Craig Larman • Passo 1.1  Listar todos os requisitos (cont) • Tratar o pagamento por cartão de crédito: captar a informação do cartão de crédito por um leitor de cartões ou uma entrada manual e autorizar o pagamento com o serviço de autorização de crédito (externo) da loja via conexão por modem. Construindo Casos de Uso Exemplo

70 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 70 Utilizando UML e Padrões – Craig Larman • Passo 1.1  Listar todos os requisitos (cont.) • Registrar os pagamentos por crédito no sistema de contas a receber da loja, uma vez que o serviço de autorização de crédito deve à loja a quantia oferecida como pagamento Construindo Casos de Uso Exemplo

71 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 71 Utilizando UML e Padrões – Craig Larman • Passo 1.2  Listar todas as funções • Comprar itens; • Controlar estoque • Gerenciar usuários • Inicializar caixa • Fazer login • Efetuar pagamento com dinheiro • Efetuar pagamento com cartão • Efetuar pagamento com cheque. Construindo Casos de Uso Exemplo

72 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 72 Utilizando UML e Padrões – Craig Larman • Passo Gerenciar Usuários Caixa Iniciar Log in Comprar Itens Administrador do sistema Cliente Gerente Exemplo – PONTO DE VENDAS Devolver Itens

73 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 73 Utilizando UML e Padrões – Craig Larman • Passo 4 - caso de uso em alto nível Caso de uso:Comprar Itens Atores:Cliente, Caixa Descrição:Um cliente chega a um ponto de pagamento, com vários itens que deseja comprar. O Caixa registra os itens de compra e recebe um pagamento. No final, o Cliente sai com os itens comprados. Exemplo 1 – PONTO DE VENDAS

74 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 74 Utilizando UML e Padrões – Craig Larman Caso de uso:Iniciar Atores:Gerente Descrição:O Gerente liga o sistema POST de modo a prepará-lo para o uso pelos Caixas. O Gerente verifica se a data e a hora estão corretas, após o que o sistema está preparado para uso dos caixas. Exemplo 1 – PONTO DE VENDAS • Passo 4 - caso de uso em alto nível (cont.)

75 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 75 Utilizando UML e Padrões – Craig Larman Exemplo – PONTO DE VENDAS Passo 5 - caso de uso essenciais expandidos Caixa Comprar Itens Cliente Pagar com cartão Pagar com dinheiro Pagar com cheque > Controlar estoque >

76 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 76 Utilizando UML e Padrões – Craig Larman • Passo 5 - caso de uso essenciais expandidos Sequência típica de eventos Ação do atorResposta do sistema 1- Este caso de uso começa quando um Cliente chega a um ponto de pagamento equipado com um POST, com vários itens que deseja comprar. 2- O Caixa registra cada item. Se houver mais de exemplar de item, o Caixa pode entrar com a qte. 3- determina o preço do item e acrescenta informações sobre o item à transação de venda em andamento. A descrição e o preço do item são apresentados. Exemplo – PONTO DE VENDAS

77 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 77 Utilizando UML e Padrões – Craig Larman • Passo 5 - continuação..... Ação do atorResposta do sistema 4- No término da entrada de itens o Caixa, indica para o POST que a entrada de itens está completa. 5- O sistema apresenta o total de venda. 6- O caixa informa ao Cliente o total. Exemplo – PONTO DE VENDAS

78 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 78 Utilizando UML e Padrões – Craig Larman • Passo 5 - continuação..... Ação do atorResposta do sistema 7- O Cliente informa o tipo de pagamento: a) se pagamento em dinheiro – ver Pagar com dinheiro. b) Se pagamento com cartão – ver Pagar com Cartão. c) Se pagamento com cheque – ver Pagar com cheque. Exemplo – PONTO DE VENDAS

79 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 79 Utilizando UML e Padrões – Craig Larman • Passo 5 - continuação..... Ação do atorResposta do sistema 8- Registra a venda completada. 9- Atualiza os níveis de estoque. 10- Gera um recibo. 11- O caixa dar o recibo ao Cliente. Exemplo – PONTO DE VENDAS

80 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 80 Utilizando UML e Padrões – Craig Larman • Passo 5 - continuação..... Sequencias alternativas. Linha 2 – Entrada de identificador de item inválido. Indicar erro. Linha 7 – Cliente não pode pagar; cancelar a transação de venda. Exemplo – PONTO DE VENDAS

81 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 81 Utilizando UML e Padrões – Craig Larman • Passo 5 - Seção – Pagar com dinheiro Ação do atorResposta do sistema 1- O Cliente dar um pagamento em dinheiro – “ O valor fornecido” – possivelmente maior que o total de venda. 2- O Caixa registra a quantia fornecida. 3- Apresenta o troco devido ao Cliente. 4- O Caixa deposita o dinheiro recebido e retira o troco devido. Exemplo – PONTO DE VENDAS

82 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 82 Utilizando UML e Padrões – Craig Larman • Passo 5 - Seção – Pagar com dinheiro Sequencias alternativas. Linha 1 – O cliente não tem dinheiro suficiente. Pode cancelar a venda ou iniciar outro método de pagamento. Exemplo – PONTO DE VENDAS

83 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 83 Utilizando UML e Padrões – Craig Larman Exemplo - Saque Bancário • Requisitos  solicitar extrato;  registrar movimento;  consultar saldo;  sacar dinheiro;  realizar depósito;  transferência entre contas;  alterar senha.

84 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 84 Utilizando UML e Padrões – Craig Larman Transferir entre contas Cliente Realizar depósito Sacar dinheiro Consultar saldo Solicitar extrato Alterar senha Exemplo - Saque Bancário

85 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 85 Utilizando UML e Padrões – Craig Larman Transferir entre contas Cliente Realizar depósito Sacar dinheiro Registrar movimento > Exemplo - Saque Bancário

86 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 86 Utilizando UML e Padrões – Craig Larman Caso de uso Sacar dinheiro Atores:Cliente Descrição:Descreve os passos necessários para o cliente sacar algum valor de uma determinada conta. Exemplo - Saque Bancário

87 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 87 Utilizando UML e Padrões – Craig Larman Ação do atorResposta do sistema 1- Informar o número da conta 2- Verificar se a conta existe 3- Solicitar senha Exemplo - Saque Bancário

88 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 88 Utilizando UML e Padrões – Craig Larman Ação do atorResposta do sistema 4- Informar senha 5- Verificar se a senha está correta 6- Informar o valor a ser retirado Exemplo - Saque Bancário

89 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 89 Utilizando UML e Padrões – Craig Larman Ação do atorResposta do sistema 7- Se o valor solicitado for válido, entregar a importância ao cliente. 8- Ver “Registrar Movimento” Exemplo - Saque Bancário

90 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 90 Utilizando UML e Padrões – Craig Larman No início de cada semestre, os alunos devem requisitar um catálogo de cursos contendo aqueles que serão oferecidos no semestre. Este catálogo deve conter informações a respeito de cada curso, do professor, do departamento e dos pré- requisitos. Desse modo, os alunos podem tomar suas decisões mais apropriadamente. Exemplo 1 – Sistema Matrícula num Curso

91 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 91 Utilizando UML e Padrões – Craig Larman O novo sistema permitirá que os alunos selecionem quatro cursos oferecidos para o próximo semestre. Além disso, o aluno indicará dois cursos alternativos, caso ele não possa ser matriculado na primeira opção. Cada curso terá no máximo 10 alunos e o no mínimo de 3 alunos. O curso, com número de alunos inferior a 3, será cancelado. Para cada matrícula feita por um aluno, o sistema envia informação ao sistema de cobrança para que possa ser cobrado o pagamento, durante o semestre. Exemplo 1 – Sistema Matrícula num Curso

92 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 92 Utilizando UML e Padrões – Craig Larman Os Professores devem acessar o sistema “on line”, indicando quais cursos irão lecionar. Eles também podem acessar o sistema para saber quais alunos estão matriculados em cada curso. Em cada semestre, há um prazo para alteração de matrícula. Os alunos devem poder acessar o sistema durante esse período, para adicionar ou cancelar cursos. Exemplo 1 – Sistema Matrícula num Curso

93 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 93 Utilizando UML e Padrões – Craig Larman Requisitos FuncionaisPrioridade Professores escolhem disciplinas a lecionar Essencial Produzida listagem de disciplinas e professores Essencial Alunos inscrevem-se e matriculam-se nas disciplinas Essencial Exemplo 1 – Sistema Matrícula num Curso

94 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 94 Utilizando UML e Padrões – Craig Larman Requisitos FuncionaisPrioridade Produzida listagem de disciplinas e alunos matriculados Essencial A secretaria introduz os dados e emite uma listagem para cada professor com as disciplinas que vão lecionar Essencial Exemplo 1 – Sistema Matrícula num Curso

95 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 95 Utilizando UML e Padrões – Craig Larman Requisitos FuncionaisPrioridade A secretaria produz uma listagem para os alunos das disciplinas disponíveis nesse semestre Importante Após o período de inscrição os professores recebem a listagem das disciplinas a leccionar com a lista dos alunos matriculados Desejável Exemplo 1 – Sistema Matrícula num Curso

96 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 96 Utilizando UML e Padrões – Craig Larman Requisitos FuncionaisPrioridade A matrícula ser-lhes-á cobrada através de um sistema de faturamento externo. Este sistema irá receber a informação necessária a partir do sistema de gestão de cursos. Essencial Recebem um catálogo do curso com a lista de disciplinas que inclui o docente, o departamento e os pré-requisitos necessários Essencial Exemplo 1 – Sistema Matrícula num Curso

97 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 97 Utilizando UML e Padrões – Craig Larman Requisitos FuncionaisPrioridade Os alunos poderão escolher até 4 disciplinas, e deverão indicar 2 opcionais Essencial As disciplinas poderão ter no máximo 10 alunos e no mínimo 3 alunos (senão serão canceladas) Essencial Os alunos terão acesso ao sistema durante um certo período e forma a poderem adicionar e alterar disciplinas à sua seleção inicial Essencial Exemplo 1 – Sistema Matrícula num Curso

98 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 98 Utilizando UML e Padrões – Craig Larman Requisitos Não-FuncionaisTipo Acesso online ao sistema para escolha das disciplinas a lecionar e para saber no final quais os alunos matriculados nas mesmas Interopebilidade.... Exemplo 1 – Sistema Matrícula num Curso

99 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 99 Utilizando UML e Padrões – Craig Larman PapelDescrição Alunoalguém que se matricula para ter aulas na Universidade Professoralguém certificado para dar aulas na Universidade Funcionário da secretaria alguém responsável pela manutenção do sistema de gestão de cursos da Universidade Sistema de Faturamento sistema externo responsável pela cobrança das matrículas aos alunos da Universidade Exemplo 1 – Sistema Matrícula num Curso ATORES

100 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 100 Utilizando UML e Padrões – Craig Larman Exemplo 1 – Sistema Matrícula num Curso Diagrama de Contexto Sistema de cobrança Professor Aluno Funcionário Sistema de Matrícula

101 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 101 Utilizando UML e Padrões – Craig Larman Exemplo 1 – Sistema Matrícula num Curso Casos de Uso Funcionário Matrícula nos Cursos Sistema de cobrança Aluno Professor Selecionar curso para ensinar Pedir lista dos matriculados Manter Informação de aluno Manter informação de professor Gerar catalogo Manter informações dos cursos

102 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 102 Utilizando UML e Padrões – Craig Larman Uma empresa tem necessidade de um Sistema de Pizzaria Online, por meio do qual seus clientes possam solicitar pizzas pela Internet. O sistema tem o controle dos pedidos das pizzas e bebidas. Para solicitar seus pedidos os clientes obrigatoriamente deverão estar cadastrado. Um cliente poderá realizar vários pedidos, no entanto, um pedido será exclusivo para um cliente. Exemplo 2 – Sistema de Pizzaria Online

103 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 103 Utilizando UML e Padrões – Craig Larman O sistema deve informar, através de relatórios online, sempre que um item estiver com sua quantidade abaixo ou perto da quantidade mínima. Neste caso deverá ser montado um pedido para um fornecedor que venda este tido de produto. Exemplo 2 – Sistema de Pizzaria Online

104 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 104 Utilizando UML e Padrões – Craig Larman Requisitos FuncionaisPrioridade O cliente visualiza os tipos de pizzas (sabores, tamanho...) Essencial O cliente escolhe a pizza e adiciona no seu pedido Essencial O cliente seleciona a bebidaEssencial O cliente visualiza o pedido antes de fechar o pedido Essencial Exemplo 2 – Sistema de Pizzaria Online

105 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 105 Utilizando UML e Padrões – Craig Larman Requisitos FuncionaisPrioridade O cliente poderá visualizar uma lista com todos os seus Pedido já solicitados anteriormente. Essencial O cliente pode opinar sobre o atendimento da pizzaria, referindo-se tanto à qualidade da pizza como da entrega. Importante Exemplo 2 – Sistema de Pizzaria Online

106 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 106 Utilizando UML e Padrões – Craig Larman Requisitos FuncionaisPrioridade Um pedido poderá realizar muitos pedidos, no entanto, um pedido será exclusivo para um único cliente. Desejável Cada pedido deverá armazenar, entre outras informações, a data e a hora em que o pedido foi feito e a hora provável de sua entrega. Essencial Exemplo 2 – Sistema de Pizzaria Online

107 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 107 Utilizando UML e Padrões – Craig Larman Requisitos FuncionaisPrioridade O valor da pizza será calculado pelo sabor mais caro. Essencial Cada pizza consome diversas quantidades de diversos itens de estoque. Sempre que uma pizza for produzida, essas quantidades devem ser diminuídas de seus respectivos itens no estoque. Essencial Exemplo 2 – Sistema de Pizzaria Online

108 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 108 Utilizando UML e Padrões – Craig Larman Requisitos FuncionaisPrioridade Montar pedido para o fornecedor sempre que um item do estoque estiver com sua quantidade perto da quantidade mínima. Essencial Emitir relatório que permitam saber quais os sabores de pizza são mais pedidos, bairros que se encontram estes clientes. Essencial Emitir relatório com o consumo médio diário de cada produto. Importante Exemplo 2 – Sistema de Pizzaria Online

109 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 109 Utilizando UML e Padrões – Craig Larman Requisitos Não-FuncionaisTipo Controle de acesso – o cliente deverá estar logado ao sistema Segurança O tempo de resposta deve ser o menor possível para não prejudicar o atendimento aos clientes Performance O sistema deverá gravar logs de erros Tolerância a falha Exemplo 2 – Sistema de Pizzaria Online

110 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 110 Utilizando UML e Padrões – Craig Larman Requisitos Não-FuncionaisTipo O sistema deverá fazer backup automático no final do dia Tolerância a falha O sistema deverá ser facilmente integralizável, caso seja necessário interligá-lo a a outros sistemas existentes. Interoperabi lidade O sistema deve ser fácil de usarUsabilidade Exemplo 2 – Sistema de Pizzaria Online

111 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 111 Utilizando UML e Padrões – Craig Larman Funções do produto ( algumas funções) FunçõesDescrição Escolher Pizza O sistema deverá apresentar um formulário contendo duas divisões, a primeira apresentará os tamanhos de pizzas (pequeno, médio e grande) e a segunda os sabores de pizzas disponíveis. Exemplo 2 – Sistema de Pizzaria Online

112 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 112 Utilizando UML e Padrões – Craig Larman Funções do produto ( algumas funções) FunçõesDescrição Escolher Bebida Representa o processo pelo qual um cliente escolhe uma bebida, sendo um pouco semelhante ao processo de escolha de pizza. Opinar Esse serviço permite que o cliente emita opiniões sobre os pedidos feitos anteriormente por ele. Exemplo 2 – Sistema de Pizzaria Online

113 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 113 Utilizando UML e Padrões – Craig Larman Funções do produto ( algumas funções) FunçõesDescrição Visualizar Pedido O cliente pode visualizar os itens escolhidos (pizzas e bebidas) Excluir ItemA partir do caso de uso “Visualizar Pedido”, o cliente pode excluir item do pedido. Visualizar Pedidos Anteriores O cliente pode visualizar todos os pedidos já feitos por ele. Exemplo 2 – Sistema de Pizzaria Online

114 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 114 Utilizando UML e Padrões – Craig Larman FunçõesDescrição Visualizar Sabores Mais Pedidos Esse processo apresenta todos os sabores da pizzaria em ordem de sua preferencia Concluir Pedido Último passo para solicitar um pedido. É obrigatório que o cliente visualize seu pedido antes de concluí-lo. Funções do produto ( algumas funções) Exemplo 2 – Sistema de Pizzaria Online

115 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 115 Utilizando UML e Padrões – Craig Larman FunçõesDescrição Visualizar Pedidos em Aberto Permite que um funcionário obtenha uma listagem de todos os pedidos ainda não atendidos. Finalizar Pedido do Cliente Define um pedido como finalizado, determinando o funcionário que o preparou e o que o entregou. Funções do produto ( algumas funções) Exemplo 2 – Sistema de Pizzaria Online

116 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 116 Utilizando UML e Padrões – Craig Larman Funções Descrição Manter Cardápio Incluir, alterar e excluir pizzas do cardápio. Executado pelo administrador. Emitir Produtos em Baixa no Estoque Gera um relatório apresentando todos os produtos em baixa no estoque. Funções do produto ( algumas funções) Exemplo 2 – Sistema de Pizzaria Online

117 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 117 Utilizando UML e Padrões – Craig Larman Funções Descrição Emitir Compras em Aberto Gera uma listagem contendo todas as compras solicitadas a fornecedores que ainda não foram entregues. ( Administrador) Manter Compras Fornecedor Permite ao administrador efetuar a manutenção das compras da empresa. Funções do produto ( algumas funções) Exemplo 2 – Sistema de Pizzaria Online

118 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 118 Utilizando UML e Padrões – Craig Larman FunçõesDescrição Emitir Melhores Clientes Relatório de clientes que mais consomem na Pizzaria Emitir Consumo por Período Relatório que informa o consumo dos itens do estoque em um determinado período. Funções do produto ( algumas funções) Exemplo 2 – Sistema de Pizzaria Online

119 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 119 Utilizando UML e Padrões – Craig Larman Exemplo 2 – Sistema de Pizzaria Online Subsistema de Venda Cliente Visualizar Sabores mais Pedidos Visualizar Pedidos Anteriores Escolher Pizza Escolher Bebida Visualizar Pedidos Opinar Concluir Pedido Excluir Pedido Logar Auto- Registrar Cliente >

120 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 120 Utilizando UML e Padrões – Craig Larman Administrador Emitir Compras em Aberto Visualizar Pedidos em Aberto Manter Cardápio Emitir Produtos em Baixa Finalizar Pedido Cliente Manter Compras Fornecedor Emitir Consumo por Pedido Emitir Melhores Clientes Logar Visualizar pedido Administrador > Funcionário Exemplo 2 – Sistema de Pizzaria Online Subsistema Administrativo

121 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 121 Utilizando UML e Padrões – Craig Larman Cliente Visualizar Sabores mais Pedidos Visualizar Pedidos Anteriores Escolher Pizza Escolher Bebida Visualizar Pedidos Opinar Concluir Pedido Excluir Pedido Logar Auto- Registrar Cliente > Exemplo 2 – Sistema de Pizzaria Online Subsistema Venda

122 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 122 Utilizando UML e Padrões – Craig Larman Nome do Caso de UsoEscolher Pizza Ator principalCliente Atores secundários ResumoEste caso de uso descreve as etapas percorridas por um cliente para escolher uma pizza. Pré-condição Pós-condição Exemplo 2 – Sistema de Pizzaria Online

123 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 123 Utilizando UML e Padrões – Craig Larman Fluxo principal Ações do atorAções do Sistema 1- selecionar opção Escolher Pizza 2- Apresentar tamanhos e sabores disponíveis 3-Selecionar tamanho da pizza 4- Permitir a escolha de sabores de acordo com o tamanho selecionado Exemplo 2 – Sistema de Pizzaria Online

124 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 124 Utilizando UML e Padrões – Craig Larman Fluxo principal Ações do atorAções do Sistema 5- Selecionar tantos sabores quantos desejados até olimite do tamanho escolhido 6- Adicionar pizza ao carrinho de pizzas 7- Armazenar pizza escolhida ao pedido Exemplo 2 – Sistema de Pizzaria Online

125 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 125 Utilizando UML e Padrões – Craig Larman Cliente Visualizar Sabores mais Pedidos Visualizar Pedidos Anteriores Escolher Pizza Escolher Bebida Visualizar Pedidos Opinar Concluir Pedido Excluir Pedido Logar Auto- Registrar Cliente > Exemplo 2 – Sistema de Pizzaria Online Subsistema Venda

126 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 126 Utilizando UML e Padrões – Craig Larman Nome do Caso de UsoVisualizar Pedido Ator principalCliente Atores secundários ResumoEste caso de uso descreve as etapas percorridas por um cliente para visualizar os itens de seu pedido. Pré-condição Pós-condição Exemplo 2 – Sistema de Pizzaria Online

127 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 127 Utilizando UML e Padrões – Craig Larman Fluxo principal Ações do atorAções do Sistema 1- Selecionar opção Visualizar Pedido 2- Apresentar todas as pizzas, com seus respectivos sabores e, e as bebidas escolhidas pelo cliente. Exemplo 2 – Sistema de Pizzaria Online

128 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 128 Utilizando UML e Padrões – Craig Larman Fluxo Alternativo –Excluir Item Ações do atorAções do Sistema 1- Selecionar Item e solicitar sua exclusão 2- Executar o caso de uso “Excluir Item” Exemplo 2 – Sistema de Pizzaria Online

129 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 129 Utilizando UML e Padrões – Craig Larman Nome do Caso de UsoExcluir Item Ator principalCliente Atores secundários ResumoEste caso de uso descreve as etapas percorridas para excluir um item do pedido Pré-condição Pós-condição Exemplo 2 – Sistema de Pizzaria Online

130 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 130 Utilizando UML e Padrões – Craig Larman Fluxo Alternativo IExcluir Pizza Ações do atorAções do Sistema 1- Excluir pizza 2- Excluir itens de sabor da pizza Exemplo 2 – Sistema de Pizzaria Online

131 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 131 Utilizando UML e Padrões – Craig Larman Fluxo Alternativo IIExcluir Bebida Ações do atorAções do Sistema 1- Excluir bebida Exemplo 2 – Sistema de Pizzaria Online

132 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 132 Utilizando UML e Padrões – Craig Larman Exemplo 3 – Reserva de Hotel 1. INTRODUÇÃO Este documento especifica os requisitos do sistema Controle de Reserva de Hotel, fornecendo aos desenvolvedores as informações necessárias para o projeto e implementação, assim como para a realização dos testes e homologação do sistema. 1.2 Escopo do produto O Sistema a ser desenvolvido terá como campo de atuação a área hoteleira. O mesmo servirá ao gerenciamento de uma rede de hotéis, oferecendo uma interface totalmente voltada para WEB. Cada hotel terá um ou vários terminais que permitirão as operações básicas de um hotel, podendo o cliente reservar e cancelar um apartamento através da Web, e terá também comunicação com outros hotéis da mesma rede de modo a consultar sobre disponibilidade de vagas. Este sistema também faz interface com outros dois sistemas internos do hotel: controle de restaurante e controle de tarifação de telefone. l.

133 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 133 Utilizando UML e Padrões – Craig Larman 2. DESCRIÇÃO GERAL O Sistema de Controle de Reserva de Hotel – CRH vem para facilitar a vida da Rede Hoteleira a qual vai servir. Tendo como característica óbvia a automatização das principais tarefas inerentes à regra do negócio, ele dará grande agilidade na execução dos principais processos do hotel, hoje feitos de forma manual. Por ser um produto totalmente voltado para WEB, ele descentraliza parte do serviço para o lado CLIENTE, uma vez que este poderá cadastrar-se e efetuar reservas, sem necessariamente interagir com os funcionários do hotel. Exemplo 3 – Reserva de Hotel

134 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 134 Utilizando UML e Padrões – Craig Larman 3 – REQUISITOS ESPECÍFICOS Abaixo detalharemos as principais funções dos produto em desenvolvimento, cuja análise e especificação de requisitos é objeto desde documento. 3.1 Requisitos funcionais Exemplo 3 – Reserva de Hotel

135 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 135 Utilizando UML e Padrões – Craig Larman 3.1 Requisitos funcionais Requisitos FuncionaisPrioridade Entrada para cadastro de cliente (nome, endereço, ,data de chegada, data de saída, classificação do cliente, documento). Essencial Consultas, reservas e cancelamento de reserva através da WebEssencial Cadastro de apartamento: tipo de quarto (suíte, standard, duplo, ar-condicionado), cidade ou local Essencial Cadastro de salas e auditório Essencial Cadastro de despesas Essencial Controle de ocupação de apartamento (reservado ou entrada do hóspede). Importante Controle de limpeza dos apartamentos Desejável Exemplo 3 – Reserva de Hotel

136 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 136 Utilizando UML e Padrões – Craig Larman 3.1 Requisitos funcionais (cont) Requisitos FuncionaisPrioridade Preços diferenciados para alta temporada e baixa temporada.Desejável Descontos para clientes VIP e grupos.Desejável Recebimento de pagamento (tipo de pagamento cheque, dinheiro, cartão, parcelado, moeda estrangeira). Essencial Emissão de nota fiscal (podendo ser separado por itens: hospedagem, restaurante, lavanderia, etc). Essencial Emissão da fatura parcial (somente para consulta).Importante Emissão de relatórios contábeis.Essencial Exemplo 3 – Reserva de Hotel

137 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 137 Utilizando UML e Padrões – Craig Larman 3.1 Requisitos funcionais (cont) Requisitos FuncionaisPrioridade Relatórios de ocupaçãoEssencial Consulta o nome do cliente (se já existente).Desejável Gerar relatórios estatísticos (média de dias que o cliente se hospeda, gastos médios, itens mais consumidos nos restaurantes). Importante Serviços de mala direta (podendo selecionar os clientes e enviar mensagens via ou imprimir cartas para serem enviados posteriormente via correio. Desejável Pesquisa dos clientes no banco de dados segundo alguns tipos de critérios (freqüência que o cliente se hospeda, preferência de apartamentos, preferência de local, tipo de serviços utilizados, estadia de negócios ou turismo, faixa etária, procedência). Desejável Exemplo 3 – Reserva de Hotel

138 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 138 Utilizando UML e Padrões – Craig Larman 3.1 Requisitos funcionais (cont) Requisitos FuncionaisPrioridade Recuperar consumo do Cliente no RestauranteEssencial Recuperar gastos do Cliente com telefoneEssencial Recuperar gastos com serviço de LavanderiaEssencial Exemplo 3 – Reserva de Hotel

139 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 139 Utilizando UML e Padrões – Craig Larman 3.2 Requisitos não-funcionais Requisitos Não-FuncionaisTipo Conexão para consultas e reservas de vagas em outros hotéis do Grupo Interopebilidade Tempo de resposta desejável menor que 10 segundos para consultas de vagas em outros hotéis da rede Utilização de computadores PC de mercadoPortabilidade Sistema operacional Windows XP ou mais recente Portabilidade Utilização da linguagem JAVA Usabilidade Portabilidade para novos hardwares e sistemas operacionais (quando forem lançadas novas versões de sistema operacional). Portabilidade Interface gráfica fácil de usar 'tipo Windows' para entrada de dados e operação Usabilidade Exemplo 3 – Reserva de Hotel

140 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 140 Utilizando UML e Padrões – Craig Larman 3.2 Requisitos não-funcionais Requisitos Não-FuncionaisTipo Procedimento de backup do cadastro de clientes e ocupação e dados correntes Segurança Senha de acesso ao sistema. Deverão ter senhas diferentes para recepcionistas, camareiras, gerentes e proprietário de modo que cada usuário tenha acesso restrito a certas informações Segurança Sistema 'no-break' em caso de queda de energiaSegurança O sistema deve possuir mecanismo que garanta a confidencialidade das informações trocadas pelos usuários Segurança Garantia: o desenvolvedor do produto deverá dar suporte gratuito durante um ano após a entrega do produto para casos de mau funcionamento do sistema Externo (não éticos) Deverá fornecer treinamento aos usuários Organizacionais (entrega) Exemplo 3 – Reserva de Hotel

141 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 141 Utilizando UML e Padrões – Craig Larman 3.2 Requisitos não-funcionais Requisitos Não-FuncionaisTipo O produto pode ser desenvolvido em etapas, mas deverá ter as funcionalidades básicas na primeira versão (gerenciar reservas e ocupação de apartamentos, cadastro de clientes, controle de pagamento, emissão de relatórios, e reservas pela Web). Organizacionais (entrega) O prazo de desenvolvimento para as funcionalidades básicas é de 6 meses Organizacionais (entrega) Após o desenvolvimento das funcionalidades básicas, o sistema deverá ser colocado em operação por 3 meses antes de se iniciar o desenvolvimento de outras funcionalidades Organizacionais (entrega) Após os 3 meses de funcionamento, o produto deverá ser reavaliado para inserir melhorias, corrigir falhas do sistema e implementar as novas funcionalidades. Organizacionais (manutenção) O prazo estimado para implementação da segunda fase é de 6 meses Organizacionais (entrega) Exemplo 3 – Reserva de Hotel

142 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 142 Utilizando UML e Padrões – Craig Larman 2.1 Usuário (atores) PapelDescrição ClientePessoa que fazem uso dos serviços do Hotel AtendenteResponsável pelo atendimento ao cliente Gerente Responsável pelo gerenciamento do Hotel Contabilidade Sistema de contabilidade responsável pelo fechamento financeiro mensal do HOTEL Limpeza Setor encarregado pela limpeza do Hotel Administradora de Cartão Exemplo 3 – Reserva de Hotel

143 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 143 Utilizando UML e Padrões – Craig Larman 2.1 Funções do produto ( algumas funções) FunçõesDescrição Cadastro de ClienteFazer cadastro dos clientes Gerenciamento de ReservasPermitir o cliente ou atendente autenticados efetuar reservas ou manipular reservas prévias Check-in Tratar a entrada do Cliente no Hotel pelo atendente Check-out Tratar a saída do Cliente no Hotel pelo atendente Gerenciamento de filiais Manipulação dos dados das filiais pela Gerência Geral Gerenciamento de Serviços Atividades inerentes à associação de serviços a um dado cliente dos serviços oferecidos pela rede hoteleira. Exemplo 3 – Reserva de Hotel

144 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 144 Utilizando UML e Padrões – Craig Larman Atendente Limpeza Cliente Funcionário Sistema de Controle de Reserva de Hotel Gerente Sistema Contab. Adm Cartão Exemplo 3 – Reserva de Hotel Diagrama de Contexto

145 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 145 Utilizando UML e Padrões – Craig Larman Exemplo 3 – Reserva de Hotel Casos de Uso

146 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 146 Utilizando UML e Padrões – Craig Larman Controlar Reserva Atendente Reservar Quarto Cancelar Reservar Canc. Automático Disp onib. Quarto Verif. disp. quarto Obter período reserva > Exemplo 3 – Reserva de Hotel Casos de Uso

147 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 147 Utilizando UML e Padrões – Craig Larman Registrar Entrada Cliente Atendente Fazer Reserva > Cadastro Cliente > Exemplo 3 – Reserva de Hotel Casos de Uso

148 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 148 Utilizando UML e Padrões – Craig Larman Fazer pagamento Atendente Verificar Serviços > Providenciar saida Cliente > Pag. Vista Pag. Cartão > Exemplo 3 – Reserva de Hotel Casos de Uso

149 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 149 Utilizando UML e Padrões – Craig Larman Faça o Diagrama de Casos de Uso para Sistema de Vídeo Locadora, considerando os seguintes requisitos funcionais: 1- Cliente faz pedido do filme; 2- Cliente é cadastrado; 3- Cliente faz pagamento; 4- Fornecedor emite fatura; 5- Locadora envia nota-fiscal para o cliente; Exemplo 4 – Locadora

150 Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 150 Utilizando UML e Padrões – Craig Larman (cont.) 6- Locadora envia dicas de filmes para os Clientes; 7- Locadora faz pagamento para a distribuidora; 8- Locadora faz pedido de DVD para distribuidora; 9- Locadora mantém uma relação de distribuidoras; 10- O filme é consultado através dos atores, atrizes e diretores. Exemplo 4 – Locadora


Carregar ppt "Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / ©Ian Sommerville 2000 Slide 1 Utilizando UML e Padrões – Craig Larman Modelos de Sistemas."

Apresentações semelhantes


Anúncios Google