Descrição formal de Casos de Uso

21
#AnaliseDeSiste mas Prof. Natanael Simões natanaelsimo es Descrição de Casos de Uso Documentando formalmente os cenários elicitados

description

Como documentar formalmente diagramas de Caso de Uso para geração do documento de especificação de requisitos.

Transcript of Descrição formal de Casos de Uso

Page 1: Descrição formal de Casos de Uso

#AnaliseDeSistemas

Prof. Natanael Simões

natanaelsimoesDescrição de Casos de Uso

Documentando formalmente os cenários elicitados

Page 2: Descrição formal de Casos de Uso

2

• Diagramas não falam• Diagramas propiciam interpretações

equivocadas• Descrever define melhor o escopo• Descrever define como programar

Pra que descrever?

Page 3: Descrição formal de Casos de Uso

3

• NomeQual o nome do caso de uso?

• ObjetivoQual o propósito principal?

• Requisitos (Funcionais)Quais os requisitos funcionais relacionados?

• AtoresQuem são os atores envolvidos?

Casos de Uso

Page 4: Descrição formal de Casos de Uso

4

• PrioridadeQual o prioridade de desenvolvimento?

• Pré-condiçõesQual(is) estado(s) do sistema para entrar no caso de uso?

• Frequência de usoCom que frequência esse caso de uso será executado?

Casos de Uso

Page 5: Descrição formal de Casos de Uso

5

• Pós-condiçõesEm qual(is) estado(s) o sistema está após o término desse caso de uso?

• CamposQuais dados estarão envolvidos?

• Fluxo principalQuais passos serão necessários para que ocorra com sucesso o caso?

Casos de Uso

Page 6: Descrição formal de Casos de Uso

6

• Fluxos alternativosQue outros rumos o ator ou sistema podem tomar dentro do fluxo principal?

• Fluxos de exceçãoO que pode dar errado?

• ValidaçõesComo o sistema vai verificar o que pode dar errado?

Casos de Uso

Page 7: Descrição formal de Casos de Uso

7

• Protótipo das telasComo serão as telas necessárias para cumprir o caso de uso?

Casos de Uso

Page 8: Descrição formal de Casos de Uso

8

UC001 – Nome do caso de usoObjetivo: [Qual propósito?]Requisitos: [Quais requisitos funcionais?]Atores: [Quais atores?]Prioridade: [Qual prioridade de desenvolvimento?]Pré-condições: [Qual estado anterior do sistema?]Frequência de uso: [Qual frequência do uso?]Pós-condições: [Qual estado posterior do sistema?]Campos: [Quais campos serão necessários?]Fluxo principal: a) Ação 1. (A1)

b) Ação 2. (A2)(E1)c) Caso de uso é encerrado.

Fluxo alternativo: A1 – fluxo alternativo qualquera) Ação 1.b) Ação 2.c) Volta ao passo “b” do fluxo principal.A2 – outro fluxo...

Fluxo de exceção: E1 – uma exceçãoa) Ação 1.b) Volta ao passo “a” do fluxo principal.

Validações: [Como validar para saber se há exceção?]Protótipo das telas:

Page 9: Descrição formal de Casos de Uso

9

Exemplo

Page 10: Descrição formal de Casos de Uso

10

• Código + Número sequenciado = IDUC001

• Nome do caso de uso (mesmo do diagrama)Emprestar exemplar

Nome

UC001 – Emprestar exemplar

Page 11: Descrição formal de Casos de Uso

11

Atores

Atendente, Usuário

• Indicar TODOS os envolvidos no processo• Separar com vírgula

Page 12: Descrição formal de Casos de Uso

12

Prioridade

• Não confundir com frequência de uso• Cria uma ordem para ser programado

• Se vai usar número ou nomes, você decide!• Mesmas regras valem para FREQUÊNCIA

UC001 – Emprestar exemplar P = 3 / AltaUC002 – Devolver exemplar P = 2 / MédiaUC003 – Reservar publicação P = 1 / BaixaUC004 – Cancelar reserva P = 1 / Baixa

Page 13: Descrição formal de Casos de Uso

13

Pré-condições

• São requisitos/estados que o sistema deve estar para que o caso aconteça

• Se (requisito_estado != esperado) então some daqui.

Pré-condição de “UC004 – Cancelar reserva” será a existência de uma reserva realizada em “UC003 – Reservar publicação”

Page 14: Descrição formal de Casos de Uso

14

Pós-condições

• São requisitos/estados que o sistema deve estar após o caso acontecer

• Aqui não tem “se”, é OBRIGATÓRIO

Pós-condição de “UC004 – Cancelar reserva” será a inexistência da reserva antes realizada em “UC003 – Reservar publicação”

Page 15: Descrição formal de Casos de Uso

15

Campos

• Todas as características de todos os objetos não-atores envolvidos no caso

Objetos de “UC001 – Emprestar exemplar”• Atendente (ator)• Usuário (ator)• Livro

o Nomeo Autoro ISBNo Quantidade de páginaso ...

Page 16: Descrição formal de Casos de Uso

16

Fluxos

• Mecânica para todos os fluxosa) Ator faz alguma coisab) Sistema respondec) Ator faz outrad) Sistema respondee) O caso de uso é encerrado

Page 17: Descrição formal de Casos de Uso

17

Fluxo principal

• Pode conter fluxos alternativos e de exceçãoa) Cliente solicita visualizar extrato de pontuação;b) Sistema requer o mês de referência;c) Cliente seleciona um mês de referência e (A1) confirma

a operação;d) Sistema exibe o extrato referente ao mês selecionado

pelo Cliente;e) Cliente seleciona (A2) retornar ao menu principal;f) O caso de uso é encerrado. A1 – cancelar operação/voltar

para página anterior

A2 – emitir novo extrato

Page 18: Descrição formal de Casos de Uso

18

Fluxo alternativo

• Pode apontar para outro fluxo alternativo e de exceção

• Pode encerrar em si mesmo• Pode voltar para o fluxo principal

A1 – cancelar operação/voltar para página anteriora) Cliente cancela operação ou volta para a página anterior;b) Retorna ao passo ‘f’ do fluxo principal.

A2 – emitir novo extratoc) Cliente seleciona emitir novo extrato;d) Retorna ao passo ‘b’ do fluxo principal.

Page 19: Descrição formal de Casos de Uso

19

Fluxo de exceção

• Pode apontar para outro fluxo alternativo e de exceção

• Pode encerrar em si mesmo• Pode voltar para o fluxo principal

E1 – valor inválidoa) Sistema reconhece que o valor entrado é inválido e informa

ao operador;b) Retorna ao passo ‘e’ do fluxo principal.

Page 20: Descrição formal de Casos de Uso

20

Validações

• Algoritmo que dispara fluxos de exceção

Apenas os campos de e-mail e do representante não são requeridos, o restante é obrigatório. O tipo de contrato só poderá ser MENSAL, TRIMESTRAL, SEMESTRAL e ANUAL. O estado da loja no sistema será 0 e 1 para desativado e ativado respectivamente.

Page 21: Descrição formal de Casos de Uso

21

Protótipo de telas