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

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

1 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 UML - Diagramas de Casos de Utilização (Use Case Diagrams)

Apresentações semelhantes


Apresentação em tema: "1 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 UML - Diagramas de Casos de Utilização (Use Case Diagrams)"— Transcrição da apresentação:

1 1 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 UML - Diagramas de Casos de Utilização (Use Case Diagrams)

2 2 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Objectivo n Um diagrama de casos de utilização de um sistema mostra actores (tipos de utilizadores), casos de utilização e relações entre eles Fundamental acompanhar de descrições textuais de casos de utilização n Permite: mostrar para que serve o sistema (a utilidade do sistema), ignorando a forma como está organizado internamente especificar o contexto do sistema -com quem interage (actores) e com que finalidade (casos de utilização) capturar os requisitos funcionais do sistema -casos de utilização são funcionalidades do sistema vistas pelos utilizadores n Pode referir-se a um sistema de software, um sistema de negócio ou organização, um equipamento, uma classe, etc. n É elaborado por analistas e especialista de domínio nos primeiros estágios do desenvolvimento

3 3 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 As três perspectivas de um sistema n Casos de utilização para que serve o sistema (utilidade) num vídeo-gravador: reproduzir cassete, gravar cassete nem sempre evidente a partir da observação do interface! um caso de utilização engloba uma sequência de interacções com elementos da interface, para atingir resultado útil (produto ou serviço) para o utilizador! n Interface sistema como caixa preta o que é visível na fronteira do sistema (estrutura e funcionamento) num vídeo-gravador: teclas, visor, abertura para cassete, tomadas n Implementação sistema como caixa branca acrescenta o que está escondido (estrutura e funcionamento) num vídeo-gravador: motor, cabeças de gravação, sintonizador,...

4 4 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Exemplo 1: Telemóvel (equipamento) Telemóvel nome do sistema fronteira do sistema actor caso de utilização associação de comunicação entre actor e caso de utilização

5 5 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Exemplo 2: Restaurante (negócio) Cliente Servir almoço Fornecedor Restaurante Servir jantar Comprar bens casos de utilização primários - servem directamente clientes caso de utilização secundário - não serve directamente clientes - envolve interacção com o exterior - serve casos de utilização primários - tem valor para o fornecedor - utilizador ou utilizado? - o que importa é que interage com o sistema!

6 6 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Exemplo 3: Aplicação de Gestão de Restaurantes (software) Empregado de mesa Registar pedido Aplicação de Gestão de Restaurantes Emitir factura Cozinheiro A mesma coisa para o sistema de informação do restaurante (hardware+software)!

7 7 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Actores n Actor = papel (role) Um actor em relação a um sistema é um papel que alguém ou alguma coisa do ambiente envolvente desempenha quando interage com o sistema n Actor = classe classes são frequentemente usadas para modelar papéis que objectos individuais podem desempenhar n Actor = tipo de utilizador (em sentido lato) pode ser uma pessoa ou outro sistema pode utilizar ou ser utilizado, o que interessa é que interage com o sistema n Actor recurso do sistema recursos são pessoas, máquinas, etc. que pertencem ao sistema e que são usados para levar a cabo tarefas dentro do sistema n Actor indivíduo o mesmo indivíduo pode interagir com o sistema em vários papéis (como cliente, como fornecedor, etc.) Cliente ou «actor» Cliente

8 8 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Casos de utilização n Definição: Um caso de utilização é uma descrição de um conjunto de sequências de acções (1), incluindo variantes (2), que um sistema realiza (3) para produzir um resultado observável com valor para um actor (4,5) (1) a definição dá ênfase à sequência (modo) de funcionamento, mas este detalhe só surge numa 2ª iteração, depois de se ter alguma ideia do interface do sistema (2) a sequência concreta de acções pode variar de instância para instância do caso de utilização (3) interessam-nos mais as acções do sistema, pois são essas que temos de implementar, mas também interessa descrever as acções do actor (5) é esta utilidade ou objectivo que importa descrever numa 1ª iteração (6) o resultado pode ser um produto, um serviço, etc. n Mais simplesmente, um caso de utilização é : uma funcionalidade do sistema vista pelos utilizadores um tipo de interacção (de alto nível) entre actores e o sistema Servir almoço ou Servir almoço

9 9 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Descoberta dos casos de utilização n Pensar em cada actor e nas interacções que tem com o sistema n Um caso de utilização agrupa interacções elementares de actores com elementos da interface do sistema, mas qual deve ser o nível de agrupamento? n Caso de utilização simples: utilização de funcionalidade de grão mais fino possível que, uma vez implementada, acrescenta valor (do ponto de vista dos utilizadores) ao sistema que está a ser desenvolvido Exemplo no multibanco: -"introduzir cartão" não é um caso de utilização porque não tem valor isoladamente -"levantar dinheiro" é um caso de utilização porque tem valor para o detentor do cartão O caso de utilização inclui todas as acções a montante (de preparação) e a jusante (de finalização) necessárias (numa relação de um para um) à produção do resultado -Levantamento no multibanco, vai desde a introdução do cartão até à recolha do cartão, do talão e do dinheiro n Caso de utilização composto: combinação de casos de utilização mais simples modelar apenas quando importa automatizar

10 10 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Descrição dos casos de utilização n 3 níveis de detalhe, de acordo com as 3 perspectivas de um sistema n 1º) essência / utilidade descrição breve independente da interface que o sistema apresenta descrever o objectivo ou resultado a produzir opcionalmente, indicar lista de features e limitações (nível de requisitos) n 2º) interface descrição de sequências de funcionamento normais e excepcionais, em termos de interacções dos actores com elementos da interface opcionalmente, acompanhar de desenhos da interface para o utilizador e de diagramas dinâmicos indicar quando é que o caso de utilização começa e acaba, quando ocorrem interacções com os actores, que objectos são trocados, quem faz o quê (o sistema ou um actor) pode ser aproveitado para o no manual do utilizador n 3º) implementação realização do caso de utilização por uma colaboração de objectos internos ao sistema sequências de funcionamento detalhadas com (inter)acções internas ao sistema já não compete ao analista, mais sim ao projectista/implementador já não faz parte do modelo de casos de utilização, mas sim do modelo de design

11 11 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Exemplo: descrição do caso de utilização "servir almoço" n Objectivo: servir uma refeição rápido a um cliente que se dirige ao restaurante ao almoço n Features e limitações: há dois pratos do dia pré-confeccionados, um de carne e outro de peixe, e uma lista fixa de pratos de preparação rápida não se fazem reservas n Sequência normal de funcionamento: o cliente chega ao restaurante e senta-se numa mesa vaga o empregado entrega ao cliente uma folha com o menu do dia o cliente indica ao empregado o prato e bebida pretendidos o empregado transmite o pedido do prato à cozinha o empregado entrega a bebida ao cliente assim que está pronto, o empregado entrega o prato pedido ao cliente o cliente pede a conta o empregado faz a conta e entrega-a ao cliente o cliente paga a conta à saída n Sequência de funcionamento excepcional: Quando o restaurante está cheio, os clientes que chegam ao restaurante formam fila à entrada e o empregado vai chamando os clientes para as mesas há medida que vão vagando

12 12 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Casos de utilização e o processo de desenvolvimento n Casos de utilização guiam o planeamento Cada iteração do processo de desenvolvimento deve analisar detalhadamente e implementar um conjunto de casos de utilização ou variantes de casos de utilização Cada iteração resultará num incremento ao produto com utilidade para o cliente Começar pelos casos de utilização ou variantes mais prioritários ou com mais risco n Casos de utilização guiam a captura e especificação de requisitos Casos de utilização definem implicitamente requisitos funcionais Alguns requisitos não funcionais podem também ser alocados a casos de utilização Em sistemas simples, dispensam definição prévia de uma lista de requisitos n Casos de utilização guiam o desenho do sistema Arquitectura (forma) do sistema (divisão em módulos e definição dos seus interfaces e dependências) é condicionada pelos casos de utilização (função) e requisitos adicionais A implementação de cada caso de utilização sobre essa arquitectura é modelada por uma colaboração de objectos, combinando estrutura e comportamento n Casos de utilização guiam o teste do sistema Casos de teste de "caixa preta" desenhados a partir dos casos de utilização

13 13 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Aplicação a sistemas de negócio n Actores modelam clientes, fornecedores, parceiros, etc. n Casos de utilização modelam processos de negócio processos de negócio primários: servem directamente clientes processos de negócio secundários: não servem directamente clientes, mas envolvem interacção com o exterior e servem processos de negócio primários n Nem todas as actividades de um sistema de negócio se podem englobar em processos de negócio, numa definição estrita caso das actividades que não estão relacionadas, mesmo que indirectamente, com um actor individual essas actividades são englobadas em processos de suporte internos processos de gestão de recursos, planeamento, controlo, etc. n Processos de negócio e de suporte são relacionados e detalhados através de diagramas de actividades, até chegar a actividades que podem ser atribuídas a trabalhadores ou equipas individuais

14 14 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Estruturação dos diagramas de casos de utilização

15 15 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Formas de estruturar n Relação extend entre casos de utilização n Relação include entre casos de utilização n Relação de generalização entre casos de utilização n Relação de generalização entre actores n Agrupamento de casos de utilização em pacotes de casos de utilização

16 16 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Relação extend entre casos de utilização (1) n Para simplificar a descrição dos casos de utilização, podem-se organizar os casos de utilização em casos básicos (casos de utilização de acordo com a definição) e extensões aos casos básicos, que traduzem partes ou modalidades acrescentadas condicionalmente (opções) n Significado: uma instância do caso de utilização A pode incluir (sujeito a condições especificadas na extensão) o comportamento especificado por B o caso básico deve fazer sentido sozinho os actores interagem com o caso básico (A) n Em software, corresponde normalmente a seguir um botão ou um link num formulário que desencadeia uma acção ou dá acesso a outro formulário ou relatório A B «extend» extensão caso básico

17 17 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Relação extend entre casos de utilização (2) n Exemplo: n Podem-se indicar explicitamente os pontos em que um caso de utilização básico pode ser estendido (pontos de extensão) Na descrição textual do caso básico:.... (sobremesa).... Servir uma sobremesa Servir jantar Extension points sobremesa «extend» (sobremesa) Servir uma entrada Servir jantar Servir uma sobremesa Servir à luz de velas «extend»

18 18 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Relação extend entre casos de utilização (3) Modificar Disciplina Visualizar Lista de Disciplinas Adicionar Disciplina Eliminar Disciplina «extend» Visualizar Ficha de Disciplina «extend» Manutenção da Lista de Disciplinas: «extend»

19 19 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Relação include entre casos de utilização (1) n Quando vários casos de utilização têm uma sub-sequência de funcionamento comum, é conveniente separar essa parte comum para um novo caso de utilização que é incluído pelos primeiros n Notação: n Significado uma instância do caso de utilização A inclui obrigatoriamente o comportamento especificado por B os actores interagem com A na descrição textual de A: include(B) A B (parte comum a outros casos de utilização além de A) «include»

20 20 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Relação include entre casos de utilização (2) n Exemplo: Servir almoço Servir jantar Pagar refeição «include»

21 21 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Relação de generalização entre casos de utilização n Relação de generalização: entre uma coisa mais genérica e uma coisa mais especializada n Significa que o caso de utilização "filho" (mais especializado) herda o comportamento, significado e actores do caso de utilização "pai" (mais genérico) O filho pode adicionar ou substituir comportamento do pai O filho pode aparecer em qualquer contexto em que o pai pode aparecer n Notação: mesmo que generalização entre classes n Exemplo: Servir uma refeição Servir almoço Servir jantar

22 22 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Relação de generalização entre actores n Exemplo: Um cliente empresarial é um (is a) cliente O cliente empresarial herda as associações (de comunicação com casos de utilização) do cliente genérico Permite simplificar e estruturar os diagramas Cliente Cliente Empresarial

23 23 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Pacotes de casos de utilização n Num sistema complexo, podem existir demasiados casos de utilização para visualizar com clareza num único diagrama! n Uma solução: um diagrama de casos de utilização inicial, com pacotes de casos de utilização, e um diagrama de casos de utilização relativo a cada pacote n Critérios de agrupamento de casos de utilização em pacotes: -por actores -por sub-sistemas n Pacotes de casos de utilização correspondem normalmente a menus em sistemas de software

24 24 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Exemplo: Restaurante «extend» Servir almoço Pagar refeição «include» Cliente Fornecedor Restaurante Servir uma refeição Servir jantar Servir à luz de velas Servir uma sobremesa Servir uma entrada Comprar bens

25 25 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Exemplo: Sistema de Gestão de Restaurantes Sist. de Gestão de Restaurantes (SGR) Empregado de mesa Relação com Fornecedores Relação com Clientes Empregado de caixa Cozinheiro

26 26 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Exemplo: SGR (2) SGR – Relação com Clientes Cozinheiro Elaborar menu do dia Tirar a conta Pagar a conta Empregado de mesa Registar pedido Empregado da caixa

27 27 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Exemplo: SGR (3) SGR – Relação com Fornecedores Cozinheiro Registar compra Preparar encomenda

28 28 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Caso de Estudo: Sistema de Informação de uma Biblioteca

29 29 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Objectivo n Pretende-se projectar o Sistema de Informação de uma Biblioteca (SIB), para apoiar as seguintes actividades: gestão de aquisições de publicações -registar a aquisição gestão de consultas e fotocópias de publicações dentro da biblioteca -interessa contar o nº de vezes que cada publicação foi consultada consulta da base de dados de publicações (público e empregados) gestão de sócios -inscrição, renovação, cancelamento gestão de requisições -só os sócios podem requisitar publicações -requisição com levantamento, devolução

30 30 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Metodologia n Captura e especificação de requisitos: listar requisitos candidatos construir um modelo de casos de utilização da biblioteca detalhar casos de utilização da biblioteca através de diagramas de actividades, identificando as actividades automatizadas com recurso ao SIB e os trabalhadores envolvidos construir um modelo de domínio construir um glossário de conceitos de domínio construir um modelo de casos de utilização do SIB (sistema de software) detalhar alguns casos de utilização da SIB através de diagramas de sequência -sistema representado por um único objecto

31 31 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Diagrama de casos de utilização da biblioteca Biblioteca

32 32 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Actores em relação à biblioteca n Leitor Pessoa que se dirige à biblioteca para consultar publicações, sendo ou não sócio da biblioteca. n Sócio Leitor que está inscrito como sócio da biblioteca. n Fornecedor Empresa a quem a biblioteca adquire publicações.

33 33 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Casos de utilização da biblioteca n Consultar base de dados de publicações Consultar a base de dados com a lista de publicações existentes na biblioteca, incluindo informação sobre o estado das publicações. n Consultar publicação O leitor consulta a publicação dentro das instalações da biblioteca. Para fins de gestão, é mantido um contador do número de vezes que cada publicação é consultada dentro da biblioteca. n Obter cópia de publicação O leitor pode tirar fotocópias de partes de publicações numa fotocopiadora da biblioteca. n Requisitar publicação A biblioteca empresta uma publicação a um sócio para consulta no exterior da biblioteca mediante uma requisição. Envolve dois contactos com a biblioteca, para o levantamento e a devolução da publicação. n Adquirir publicação A biblioteca adquire livros a fornecedores.

34 34 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Diagrama de casos de utilização do SIB Sistema de Informação da Biblioteca (SIB)

35 35 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Actores em relação ao SIB n Leitor Pessoa que se dirige à biblioteca para consultar publicações, sendo ou não sócio da biblioteca. n Funcionário Empregado da biblioteca que atende os leitores e sócios. n Gestor Empregado da biblioteca que trata das aquisições de publicações e consulta estatísticas de utilização.

36 36 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Casos de utilização do SIB (1) n Consultar base de dados de publicações Consultar a base de dados com a lista de publicações existentes na biblioteca, incluindo informação sobre o estado das publicações. n Registar sócio Inscrever leitor como sócio da biblioteca. n Registar levantamento de publicação Registar o levantamento de uma publicação por um sócio (empréstimo da publicação ao sócio). n Registar devolução de publicação Registar a devolução à biblioteca de uma publicação que estava emprestada por um sócio.

37 37 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Casos de utilização do SIB (2) n Registar consulta de publicação Registar que uma publicação foi consultada por um leitor dentro da biblioteca. Não é necessário identificar o leitor. n Registar publicação Registar publicação já existente (na instalação do sistema) ou adquirida. n Obter estatísticas de utilização Obter estatísticas sobre a taxa de utilização das várias publicações, úteis para a aquisição de novas publicações.

38 38 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 Exercícios n Estender o caso de estudo (biblioteca) n Elaborar diagramas de casos de utilização relativamente aos seguintes sistemas: Terminal Multibanco


Carregar ppt "1 UML – Diagramas de casos de utilização, v. 1.0, João Pascoal Faria, 2001 UML - Diagramas de Casos de Utilização (Use Case Diagrams)"

Apresentações semelhantes


Anúncios Google