Sei sulla pagina 1di 43
Instituto Superior de Contabilidade e Administração de Coimbra Licenciatura em Informática de Gestão UML 2013-2014

Instituto Superior de Contabilidade e Administração de Coimbra

Superior de Contabilidade e Administração de Coimbra Licenciatura em Informática de Gestão UML 2013-2014
Superior de Contabilidade e Administração de Coimbra Licenciatura em Informática de Gestão UML 2013-2014
Superior de Contabilidade e Administração de Coimbra Licenciatura em Informática de Gestão UML 2013-2014
Superior de Contabilidade e Administração de Coimbra Licenciatura em Informática de Gestão UML 2013-2014
Superior de Contabilidade e Administração de Coimbra Licenciatura em Informática de Gestão UML 2013-2014
Superior de Contabilidade e Administração de Coimbra Licenciatura em Informática de Gestão UML 2013-2014
Superior de Contabilidade e Administração de Coimbra Licenciatura em Informática de Gestão UML 2013-2014
Superior de Contabilidade e Administração de Coimbra Licenciatura em Informática de Gestão UML 2013-2014
Superior de Contabilidade e Administração de Coimbra Licenciatura em Informática de Gestão UML 2013-2014
Superior de Contabilidade e Administração de Coimbra Licenciatura em Informática de Gestão UML 2013-2014
Superior de Contabilidade e Administração de Coimbra Licenciatura em Informática de Gestão UML 2013-2014
Superior de Contabilidade e Administração de Coimbra Licenciatura em Informática de Gestão UML 2013-2014
Superior de Contabilidade e Administração de Coimbra Licenciatura em Informática de Gestão UML 2013-2014
Superior de Contabilidade e Administração de Coimbra Licenciatura em Informática de Gestão UML 2013-2014
Superior de Contabilidade e Administração de Coimbra Licenciatura em Informática de Gestão UML 2013-2014
Superior de Contabilidade e Administração de Coimbra Licenciatura em Informática de Gestão UML 2013-2014
Superior de Contabilidade e Administração de Coimbra Licenciatura em Informática de Gestão UML 2013-2014
Superior de Contabilidade e Administração de Coimbra Licenciatura em Informática de Gestão UML 2013-2014
Superior de Contabilidade e Administração de Coimbra Licenciatura em Informática de Gestão UML 2013-2014
Superior de Contabilidade e Administração de Coimbra Licenciatura em Informática de Gestão UML 2013-2014

Licenciatura em Informática de Gestão

UML

2013-2014

Modelação de Casos de Uso

Sistemas de Informação I

Fernando Paulo Belfo

em Informática de Gestão UML 2013-2014 Modelação de Casos de Uso Sistemas de Informação I Fernando
S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Agenda  Introdução

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Agenda

Introdução

Actores e casos de uso

Cenários

Relações

Exercícios práticos

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Introdução  Introdução

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Introdução

Introdução

Os “casos de utilização” (ou “use cases”), constituem a técnica em UML, que representa

o levantamento de requisitos de um sistema O que é um requisito?

O requisito num sistema é uma funcionalidade ou

característica considerada relevante na óptica do utilizador

Normalmente, representa o comportamento esperado do sistema, que na prática consiste num serviço que deve ser disponibilizado a um utilizador (Booch, Rumbaugh e Jacobson, 1999)

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

3

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Introdução  Introdução

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Introdução

Introdução

Segundo Bennet. McRobb e Farner, 1999 os requisitos podem ser classificados em 3

categorias

Requisitos funcionais

Requisitos não funcionais

Requisitos de utilização (usability)

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

4

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Introdução  Introdução

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Introdução

Introdução

Requisitos funcionais

descrevem o que um sistema faz ou é esperado

que faça

são os requisitos que inicialmente são

levantados, abrangendo a descrição de

processamentos a efectuar pelo sistema, entradas (inputs) e saídas (outputs) de informação em papel ou no ecrã que derivam da

interacção com pessoas e outros sistemas

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

5

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Introdução  Introdução

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Introdução

Introdução

Requisitos não funcionais

relacionados com as características qualitativas

do sistema, descrevendo a qualidade com que o sistema deverá fornecer os requisitos funcionais.

abrangem medidas de desempenho como, por exemplo, tempos de resposta, volume de dados ou considerações de segurança

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

6

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Introdução  Introdução

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Introdução

Introdução

Requisitos de utilização (usability) Garantem que existirá uma boa ligação entre:

o sistema desenvolvido,

utilizadores do sistema e também

as tarefas que desempenham utilizando o

sistema

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

7

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Introdução  Introdução

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Introdução

Introdução

Os diagramas utilizam as seguintes abstracções de modelação:

Actores

Casos de Uso

Relações (Uses, Extends e Generalização)

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

8

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Atores e casos

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Atores e casos de uso

Actor

Representa um conjunto coerente

de papéis que os utilizadores de

casos de uso desempenham quando interagem com esses casos de uso

Tipicamente, um actor representa um papel que um ser humano, um dispositivo de hardware ou até outro

que um ser humano, um dispositivo de hardware ou até outro Pacote::Actor sistema desempenha no sistema

Pacote::Actor

sistema desempenha no sistema

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

9

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Atores e casos

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Atores e casos de uso

Actor

de Casos de Uso Atores e casos de uso  Actor   Introdução  Atores

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

10

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Atores e casos

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Atores e casos de uso

Diagrama de Caso de Uso

Descreve a funcionalidade proposta para o sistema Um Caso de Uso representa uma unidade discreta da interacção

entre um utilizador e o sistema

Reservar Mesa
Reservar Mesa

Um Caso de Uso é uma unidade de um trabalho significante. Exemplos:

"login para o sistema“

"registar no sistema“

"criar pedido"

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

11

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Atores e casos

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Atores e casos de uso

Diagrama de Caso de Uso

Cada Caso de Uso tem uma descrição o

qual descreve a funcionalidade que irá

ser construída no sistema proposto.

Um Caso de Uso pode "incluir" outra funcionalidade de Caso de Uso ou

"estender" outro Caso de Uso com seu próprio comportamento. Casos de Uso são tipicamente relacionados a "actores"

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

«include»
«include»

12

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Atores e casos

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Atores e casos de uso

Exemplo prático

Imagine que através da técnica de recolha

“entrevista” conseguiu escrever um texto que

descreve sumariamente um conjunto de requisitos para um novo sistema Pretende-se representar estes requisitos através dum adequado diagrama de “Use Cases” (U.C.)

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

13

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Atores e casos

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Atores e casos de uso

Exemplo prático

Descrição sumária do conjunto de requisitos:

Pretende-se desenvolver um sistema de

informação de gestão para um grupo de pizzarias PhonePizza, que permita aos clientes efectuar encomendas na loja e através da Internet

Na loja, o cliente dirige-se ao empregado de balcão que introduzirá no sistema a encomenda do cliente.

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

14

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Atores e casos

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Atores e casos de uso

Exemplo prático

Descrição sumária do conjunto de requisitos:

Caso a encomenda seja feita através da Internet,

o cliente terá que se identificar, através do seu nome de utilizador e palavra-chave (controlo de acesso), e poderá usufruir de um desconto no

item, caso este esteja em promoção.

O sistema deve ainda permitir que o Gestor da Pizzaria efectue as reservas de mesa,

verificando se este tem autorização para o

efectuar.

O mesmo deverá acontecer para os restantes funcionários.

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

15

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Atores e casos

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Atores e casos de uso

Exemplo prático

Visão do sistema

Deve ser definida à partida

Assegurará a adequada compreensão do sistema a desenvolver pelas partes

Deverá ser curta e concisa sobre o sistema de

informação em geral

Deve evitar detalhes sobre os requisitos do sistema de informação

Não deve ultrapassar um parágrafo para sistemas pequenos, nem algumas páginas em sistemas maiores

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

16

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Atores e casos

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Atores e casos de uso

Exemplo prático

O produto a desenvolver deve apresentar uma proposta de valor atrativa composta por:

PARA

[nome do produto]

[clientes-alvo do segmento a alcançar]

O

É

[categoria de produto com a sua

diferenciação principal e respetivas vantagens]

QUE

[todas as principais características do

produto na aplicação específica, benefícios principais, razão convincente p/ usar ou comprar]

AO CONTRÁRIO

[do produto alternativo, do

sistema ou processo de negócio atual]

(Belfo, 2011)

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

17

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Atores e casos

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Atores e casos de uso

Exemplo prático

Visão do sistema

PARA os clientes e colaboradores do grupo de

pizzarias PhonePizza, O PizzaSys É um sistema de informação versátil e amigável QUE permite aos clientes destas pizarias efectuar encomendas na loja ou através da Internet e ainda permite aos seus colaboradores gerirem esses mesmo pedidos"

aos seus colaboradores gerirem esses mesmo pedidos"  Introdução  Atores e casos de uso 

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

18

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Atores e casos

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Atores e casos de uso

Exemplo prático

Actores

Uso Atores e casos de uso  Exemplo prático  Actores ● No desenvolvimento dum diagrama

No desenvolvimento dum diagrama de use cases

o primeiro passo é a identificação dos actores do sistema

Um actor representa um utilizador que interage com o sistema

Neste caso identificam-se os seguintes:

Cliente Empregado de Balcão Gestor Pizzaria

Gestor Cliente Empregado Cliente Cliente Cliente Pizzaria Balcão
Gestor
Cliente
Empregado
Cliente
Cliente
Cliente
Pizzaria
Balcão

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

19

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Atores e casos

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Atores e casos de uso

Exemplo prático

Actores

Uso Atores e casos de uso  Exemplo prático  Actores ● Apesar da representação humanizada,

Apesar da representação humanizada, os

actores podem não ser só figuras humanas, mas também outros sistemas físicos ou lógicos como, por exemplo, um módulo de Contabilidade

Um actor pode invocar vários U.C e um U.C. pode ser invocado por vários actores

Um actor pode assumir vários papéis ao mesmo

tempo

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

20

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Atores e casos

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Atores e casos de uso

Exemplo prático

Actores

Uso Atores e casos de uso  Exemplo prático  Actores ● Por exemplo, um actor

Por exemplo, um actor Funcionário pode também

ser um actor Chefe de Loja

Os actores devem ser detalhados através duma

descrição, de forma a assegurar uma correcta

compreensão do significado do actor por todos os elementos da equipa

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

21

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Atores e casos

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Atores e casos de uso

Exemplo prático

Actores

Descrição dos actores

Exemplo prático  Actores ● Descrição dos actores  Cliente - Uma pessoa que encomenda produtos

Cliente - Uma pessoa que encomenda produtos da PhonePizza pela Internet e nas

pizzarias

Empregado de Balcão - Empregado que recebe as encomendas ao balcão da pizzaria Gestor Pizzaria - Empregado que está encarregue de efectuar as reservas de mesa numa pizzaria

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

22

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Atores e casos

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Atores e casos de uso

Exemplo prático

Actores

Generalização de actores

Exemplo prático  Actores ● Generalização de actores  Considere que um Funcionário também pode ser

Considere que um Funcionário também pode ser um Chefe de Loja e assim, ter, para além

das suas tarefas específicas, a possibilidade de

usar qualquer caso de uso de um Funcionário Aí, pode haver “generalização” entre atores que se representa como a figura mostra

entre atores que se representa como a figura mostra  Introdução  Atores e casos de

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

23

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Atores e casos

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Atores e casos de uso

Exemplo prático

de Casos de Uso Atores e casos de uso  Exemplo prático  Use cases de

Use cases de Negócio e de Sistema

Os use cases podem ser definidos numa

perspectiva de Negócio ou de Sistema

Perspectiva negócio tenta-se identificar a forma como em termos de processo de negócio se responde a um cliente ou evento

Perspectiva do Sistema procura-se identificar as interacções com a aplicação a desenvolver (software)

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

24

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Atores e casos

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Atores e casos de uso

Exemplo prático

de Casos de Uso Atores e casos de uso  Exemplo prático  Use cases de

Use cases de Negócio e de Sistema

Esta diferença pretende distinguir os use cases

que correspondem a processos de negócio que não são suportados pelo sistema informático dos que são

Se olhar apenas para o Sistema, pode-se esquecer a restante parte do negócio

Por vezes soluções mais eficientes ou eficazes

resultam duma alteração no processo de negócio

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

25

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Atores e casos

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Atores e casos de uso

Exemplo prático

Use cases para cada actor

de uso  Exemplo prático  Use cases para cada actor Actor Use Cases Cliente Efectuar

Actor

Use Cases

Cliente

Efectuar Encomenda Internet Controlo de Acesso

Empregado Balcão

Efectuar Encomenda Controlo de Acesso

Gestor

Reservar Mesa Controlo de Acesso

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

26

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Atores e casos

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Atores e casos de uso

Exemplo prático

de Casos de Uso Atores e casos de uso  Exemplo prático  Comunicação entre actores

Comunicação entre actores e Use cases

Linha recta simples

Os actores podem estar colocados em qualquer ponto do diagrama, com o

pressuposto de que existe alguma

comunicação de emissão ou recepção

Seta unidireccional O sentido da seta é o sentido da comunicação, sendo este caso auxiliado pela colocação dos actores emissores à esquerda da fronteira do sistema, e dos actores receptores à direita

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

27

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Atores e casos

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Atores e casos de uso

Exemplo prático

de Casos de Uso Atores e casos de uso  Exemplo prático  Comunicação entre actores

Comunicação entre actores e Use cases

Linha recta simples Efectuar Encomenda Cliente Empregado
Linha recta simples
Efectuar Encomenda
Cliente
Empregado

Balcão

Seta unidireccional Efectuar Encomenda Cliente Empregado
Seta unidireccional
Efectuar Encomenda
Cliente
Empregado

Balcão

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

28

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Atores e casos

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Atores e casos de uso

Exemplo prático

de Casos de Uso Atores e casos de uso  Exemplo prático  Comunicação entre actores

Comunicação entre actores e Use cases

Existem UC que são desencadeados

automaticamente (processo cíclico ou despoletado por um evento específico)

Poderia existir a necessidade de:

fazer cópia periódica dos dados das encomendas

envio mensal das promoções aos clientes

Efectuar cópia de segurança Cliente Unidade de
Efectuar cópia de
segurança
Cliente
Unidade de

Backup

Enviar promoções mensais
Enviar promoções
mensais

Cliente

Cliente

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

29

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Cenários  Exemplo

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Cenários

Exemplo prático

Modelação de Casos de Uso Cenários  Exemplo prático  Cenário principal e Cenários Secundários ●

Cenário principal e Cenários Secundários

Cada UC deve ser detalhado ou descrito em

termos de cenários de utilização

Estes cenários são os caminhos possíveis

seguidos dentro do UC, de forma a fornecer ao

actor uma resposta

A descrição de cada cenário deverá assumir uma abordagem estruturada

A UML disponibiliza um conjunto de técnicas,

designadas por diagramas de interacção, que permitem descrever de forma gráfica os diversos

cenários

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

30

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Cenários  Exemplo

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Cenários

Exemplo prático

Modelação de Casos de Uso Cenários  Exemplo prático  Cenário principal e Cenários Secundários Efectuar

Cenário principal e Cenários Secundários

Efectuar Encomenda Internet (Cenário Principal)

Pré-condição

O cliente é um utilizador válido no sistema

Descrição

1 . O UC começa quando o cliente selecciona a opção de encomendar.

2. Em simultâneo com a encomenda é mostrado o catálogo de produtos.

3. O cliente adiciona produtos à encomenda através da introdução do código

4. O sistema mostra o nome, descrição e preço do produto.

5. De cada vez que é adicionado um produto, o valor total é calculado.

6. O cliente confirma a sua encomenda através da opção Confirmar.

7. O sistema pede então os detalhes do cartão de crédito.

8. O sistema confirma os dados do pagamento e atribui um número de identificação à encomenda

Pós-Condição

A encomenda será entregue na morada do cliente

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

31

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Cenários  Exemplo

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Cenários

Exemplo prático

Modelação de Casos de Uso Cenários  Exemplo prático  Cenário principal e Cenários Secundários Efectuar

Cenário principal e Cenários Secundários

Efectuar Encomenda Internet (Cenários Secundários)

 

Pré-condição

O cliente é um utilizador válido no sistema

 

Descrição

1 . O UC começa quando o cliente selecciona a opção de encomendar.

 

2.

Em simultâneo com a encomenda é mostrado o catálogo de produtos.

3.

O cliente adiciona produtos à encomenda através da introdução do código a) Se um código é inválido o sistema avisa o cliente com uma mensagem

4.

O sistema mostra o nome, descrição e preço do produto.

5.

De cada vez que é adicionado um produto, o valor total é calculado.

6.

O cliente confirma a sua encomenda através da opção Confirmar.

7.

O sistema pede então os detalhes do cartão de crédito.

8.

O sistema confirma os dados do pagamento e atribui um número de identificação à encomenda a) Se o cartão for inválido, o sistema avisa o cliente através duma mensagem, voltando para o passo 7

Pós-Condição

A encomenda será entregue na morada do cliente

32

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Cenários  Exemplo

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Cenários

Exemplo prático

Modelação de Casos de Uso Cenários  Exemplo prático  Cenário principal e Cenários Secundários ●

Cenário principal e Cenários Secundários

A representação gráfica do cenário principal e

dos cenários secundários pode ser efectuada em conjunto quando a sua complexidade é reduzida

Ao serem definidos os actores e use cases, é também definida a fronteira do sistema, que separa os requisitos que estão fora ou dentro do sistema a desenvolver

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

33

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Relações entre casos

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Relações entre casos de uso

Exemplo prático

Relações

entre casos de uso  Exemplo prático  Relações ● Os use cases podem estar relacionados

Os use cases podem estar relacionados entre si

As relações mais frequentes são «uses» «extends» generalização

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

34

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Relações entre casos

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Relações entre casos de uso

Exemplo prático

Relações

entre casos de uso  Exemplo prático  Relações ● «uses», ou o que é o

«uses», ou o que é o mesmo dizer «includes»,

significa que um determinado UC utiliza sempre a funcionalidade disponibilizada num outro UC

A relação «extends» ocorre quando existe um comportamento opcional que pode ser incluído num UC. Este comportamento é definido num segundo use case e invocado pelo UC base,

através de um mecanismo de pontos de extensão

A relação de generalização é utilizada quando existe um use case que é um caso particular de um outro use case

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

35

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Relações entre casos

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Relações entre casos de uso

Exemplo prático

Relações

entre casos de uso  Exemplo prático  Relações O comportamento do UC "Efectuar Encomenda Internet"
O comportamento do UC "Efectuar Encomenda Internet" é semelhante ao UC Efectuar Encomenda". A
O comportamento do UC "Efectuar Encomenda Internet" é
semelhante ao UC Efectuar Encomenda". A generalização
usufrui das mesmas propriedades que uma relação pai/filho,
onde o UC "filho" herda ou substitui por completo o
Desconto Internet
comportamento do "pai".
«extend»
Efectuar Encomenda Internet
Desconto p.6
Efectuar
A relação «Extends» ocorre quando existe um
Encomenda
«include»
comportamento opcional que deve ser incluído
num UC. O UC "Efectuar Encomenda Internet"
possui um ponto de extensão "Desconto p. 6" que
A relação «include» ocorre quando existe um
indica onde, na sua descrição, será utilizado
Controlo Acesso
comportamento que deve ser incluído num UC.
o comportamento do UC "Desconto Internet".
Este comportamento é definido num
Desta forma, ao adicionar um novo produto à
segundo UC normalmente quando este pode
sua encomenda obterá um desconto se o produto
ser usado por outros use cases.
estiver em promoção.

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

36

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Relações entre casos

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Relações entre casos de uso

Exemplo prático

de Uso Relações entre casos de uso  Exemplo prático  Relações («include» ou «use» na

Relações («include» ou «use» na descrição)

Efectuar Encomenda Internet (Cenário Principal)

Pré-condição

(retirou-se a pré-condição que passa para o include)

Descrição

1.

Include: Controlo de Acesso

2.

O UC começa quando o cliente selecciona a opção de encomendar.

3.

Em simultâneo com a encomenda é mostrado o catálogo de produtos.

4.

O cliente adiciona produtos à encomenda através da introdução do código

Pós-Condição

A encomenda será entregue na morada do cliente

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

37

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Relações entre casos

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Relações entre casos de uso

Exemplo prático

de Uso Relações entre casos de uso  Exemplo prático  Relações («extend» na descrição) Efectuar

Relações («extend» na descrição)

Efectuar Encomenda Internet (Cenário Principal)

Pré-condição

O cliente é um utilizador válido no sistema

Descrição

5.

De cada vez que é adicionado um produto, o valor total é calculado.

6.

Se o produto está em promoção, existindo assim um desconto:

7.

a. Extend: Calcular desconto Em simultâneo com a sua encomenda, é mostrado o catálogo de produtos.

8.

Pós-Condição

A encomenda será entregue na morada do cliente

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

38

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Relações entre casos

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Relações entre casos de uso

Exemplo prático

de Uso Relações entre casos de uso  Exemplo prático  Relações (Descrição do UC de

Relações (Descrição do UC de extensão)

Desconto Internet (Extensão)

Pré-condição

O produto está em promoção na Internet

Descrição

1. O sistema retorna o valor do desconto.

2. Mostra o desconto na encomenda.

3. Calcula o desconto subtraindo-o ao preço do produto.

Pós-Condição

 

Condição: {Produto em promoção}

Ponto de Extensão: Desconto p.6

Efectuar Encomenda Internet Desconto Internet «extend» Desconto p.6
Efectuar Encomenda Internet
Desconto Internet
«extend»
Desconto p.6

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

39

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Relações entre casos

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Relações entre casos de uso

Exemplo prático

de Uso Relações entre casos de uso  Exemplo prático  Utilização adequada das 3 relações

Utilização adequada das 3 relações

Usar «includes» significa que o mesmo UC pode

ser usado noutro UC

Usar «extends» para descrever variações do

comportamento normal, usando pontos de

extensão no caso de uso base

Usar a relação de generalização para descrever variações do comportamento normal,

pretendendo-se somente efectuar uma descrição

casual

Fowler (2000)

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

40

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Relações entre casos

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Relações entre casos de uso

Exemplo prático

de Uso Relações entre casos de uso  Exemplo prático Sistema de Encomendas Desconto Internet Efectuar
Sistema de Encomendas Desconto Internet Efectuar Encomenda Internet «extend» Cliente Desconto p.6 Pacote::Cliente
Sistema de Encomendas
Desconto Internet
Efectuar Encomenda Internet
«extend»
Cliente
Desconto p.6
Pacote::Cliente
Ponto de Extensão
«include»
Empregado
Balcão
Efectuar Encomenda
Cliente
Controlo Acesso
«include»
Relação
Reservar Mesa
Gestor
Pacote::Cliente
Pizzaria
S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Exercícios  Exercícios

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Exercícios

Exercícios práticos

Usando o “Visual Paradigma for UML”,

reproduza a modelação dos anteriores casos

de uso para o exemplo da PhonePizza

dos anteriores casos de uso para o exemplo da PhonePizza Requisitos • Design • Código Suporta

Requisitos • Design • Código

Suporta equipes de desenvolvimento de software no levantamento de requisitos, modelação do software com UML, design de bases de dados e geração de código / reversão.

Resolva alguns exercícios da respetiva folha prática

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

42

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso Referências  Booch,

S.I.1 | Fernando Belfo 2013-2014 | UML: Modelação de Casos de Uso

Referências

Booch, Grady, Rumbaugh, James, & Jacobson, Ivar. (1999). The

unified modeling language user guide: Addison-Welsley Longman

Inc.

O ´ Neil, H., Mauro, N. e Ramos, P. (2010). Exercícios de UML:

Editora FCA

Mauro, N. e O´ Neil, H. (2004). Fundamental de UML: Editora FCA

Introdução Atores e casos de uso Cenários Relações Exercícios Referências

43