• Nenhum resultado encontrado

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

N/A
N/A
Protected

Academic year: 2021

Share "Análise e Projeto de Sistemas. Modelagem de Requisitos com Casos de Uso. 2003, Alexandre Vasconcelos & Augusto Sampaio"

Copied!
33
0
0

Texto

(1)

Análise e Projeto de Sistemas

Análise e Projeto de Sistemas

Modelagem de Requisitos com

Casos de Uso

(2)

CIn

CIn--UFPEUFPE ©2003, Alexandre Vasconcelos & Augusto Sampaio©2003, Alexandre Vasconcelos & Augusto Sampaio 22

Objetivos

Objetivos

Descrever em detalhe a técnica de Modelagem de Requisitos com Casos de Uso

Apresentar um modelo de documento de requisitos

Discutir o uso do diagrama de atividades na modelagem de casos de uso

(3)
(4)

CIn

CIn--UFPEUFPE ©2003, Alexandre Vasconcelos & Augusto Sampaio©2003, Alexandre Vasconcelos & Augusto Sampaio 44

Principais Tipos de Requisitos

Principais Tipos de Requisitos

Não-Funcionais

Atributos ou qualidades do sistema.Exemplos:

Usabilidade (Facilidade de uso) Confiabilidade

Desempenho Segurança Distribuição

Adequação a Padrões

Restrições de Hardware e Software

Funcionais

(5)

Caso

Caso

de

de

uso

uso

Uma unidade coerente de funcionalidade provida por um um sistema, manifestada por uma seqüência de

mensagens trocadas entre o sistema e um ou mais usuários externos (representados como atores), junto com as ações executadas pelo sistema.

Descrevem o que acontece dentro do sistema.

Mostram apenas o que o sistema faz, e não como.

Capturam o comportamento pretendido para um sistema, sem a necessidade de especificar como esse comportamento será

(6)

CIn

CIn--UFPEUFPE ©2003, Alexandre Vasconcelos & Augusto Sampaio©2003, Alexandre Vasconcelos & Augusto Sampaio 66

Caso de uso: representação gráfica

Caso de uso: representação gráfica

Solicitar

(7)

Atores

Atores

Constituem as entidades que interagem com o ambiente do sistema

Pessoas ou outros sistemas (de hardware ou software) que interagem com o sistema em desenvolvimento

Definem um papel particular (uma mesma entidade pode desempenhar diferentes papéis)

São sempre externos ao sistema

O sistema será descrito através de vários casos de uso que são executados por um número de atores

(8)

CIn

CIn--UFPEUFPE ©2003, Alexandre Vasconcelos & Augusto Sampaio©2003, Alexandre Vasconcelos & Augusto Sampaio 88

Ator: representação gráfica

Ator: representação gráfica

(9)

D

D

iagrama

iagrama

de casos de uso:

de casos de uso:

representação gráfica

representação gráfica

Cliente

Sacar dinheiro

Realizar depósito

Transferir entre contas

Uma associação entre um ator e um caso de uso indica que há uma comunicação, possivelmente com envio e recepção de mensagens.

(10)

CIn

CIn--UFPEUFPE ©2003, Alexandre Vasconcelos & Augusto Sampaio©2003, Alexandre Vasconcelos & Augusto Sampaio 1010

Cenário

Cenário

Em UML significa um caminho através de um caso de uso.

Uma instância de um caso de uso Exemplo (Sacar dinheiro):

Saque com sucesso

Tentativa de saque MAS senha incorreta Tentativa de saque MAS saldo insuficiente

(11)

Cenário

Cenário

:

:

Fluxo

Fluxo

de

de

eventos básico

eventos básico

/principal

/principal

Série de passos que compõem um caso de uso

Concentre-se inicialmente na funcionalidade

básica/central do caso de uso

(12)

CIn

CIn--UFPEUFPE ©2003, Alexandre Vasconcelos & Augusto Sampaio©2003, Alexandre Vasconcelos & Augusto Sampaio 1212

Exemplo

Exemplo

de um

de um

fluxo básico

fluxo básico

Caso de uso “Sacar dinheiro”

1. O cliente passa o seu cartão 2. Digita sua senha

3. Digita o valor do saque

4. O sistema verifica se há saldo suficiente 5. O saldo é debitado da conta do cliente 6. O dinheiro é entregue ao cliente

(13)

Cenário

Cenário

:

:

Fluxos secundários

Fluxos secundários

Caso de uso “Sacar dinheiro” MAS...

E se a senha não conferir? E se não houver saldo?

(14)

CIn

CIn--UFPEUFPE ©2003, Alexandre Vasconcelos & Augusto Sampaio©2003, Alexandre Vasconcelos & Augusto Sampaio 1414

Requisitos Não

Requisitos Não

-

-

Funcionais

Funcionais

x

x

Casos de Uso

Casos de Uso

Requisitos não funcionais podem ser:

Específicos: associados a um caso de uso específico

Genéricos: associados a vários casos de uso ou ao sistema com um todo

(15)

Especificação de Caso de Uso

Especificação de Caso de Uso

Identificador do caso de uso Breve Descrição

Ator (opcional)

Prioridade (ex: Essencial, Importante, Desejável) Pré condições

Pós condições Fluxo de eventos:

Fluxo de eventos principal

Fluxos secundários: alternativos e de exceção

(16)

CIn

CIn--UFPEUFPE ©2003, Alexandre Vasconcelos & Augusto Sampaio©2003, Alexandre Vasconcelos & Augusto Sampaio 1616

Pacotes de Casos de Uso

Pacotes de Casos de Uso

Servem para agrupar casos de uso relacionados

Critérios para agrupamento:

ator

funcionalidades correlatas processos

(17)

Um Modelo de Documento de Requisitos

Um Modelo de Documento de Requisitos

Introdução

Objetivos do documento Público ao qual se destina Termos e acrônimos

Referências

Descrição geral do sistema

Abrangência e sistemas relacionados Descrição dos usuários

Casos de uso Diagrama

Especificações

(18)

CIn

CIn--UFPEUFPE ©2003, Alexandre Vasconcelos & Augusto Sampaio©2003, Alexandre Vasconcelos & Augusto Sampaio 1818

Como

Como

encontrar atores

encontrar atores

e

e

casos

(19)

Como encontrar atores?

Como encontrar atores?

Quem usa o sistema?

Quem instala/mantém o sistema?

Quem inicia/desliga o sistema?

Que outros sistemas usam o sistema?

Quem recebe informação do sistema?

Quem provê informação ao sistema?

(20)

CIn

CIn--UFPEUFPE ©2003, Alexandre Vasconcelos & Augusto Sampaio©2003, Alexandre Vasconcelos & Augusto Sampaio 2020

Como encontrar casos de uso?

Como encontrar casos de uso?

Que funções o ator vai querer do sistema?

O sistema armazena informações? Que

informações atores irão criar, ler, atualizar ou

apagar?

O sistema precisa notificar o ator sobre

mudanças no seu estado interno?

Existe algum evento externo que o sistema

precisa saber? Que ator informa o sistema

desses eventos?

(21)

Especificação Detalhada

dos Casos de Uso

(22)

CIn

CIn--UFPEUFPE ©2003, Alexandre Vasconcelos & Augusto Sampaio©2003, Alexandre Vasconcelos & Augusto Sampaio 2222

Quando

Quando

e

e

por que realizá

por que realizá

-

-

las

las

?

?

Quando?

após fazer levantamento dos principais casos de uso do sistema

Por que?

descrever detalhes dos casos de uso

descrever fluxos de eventos e outras propriedades

uniformizar entendimento entre clientes, usuários e equipe de desenvolvimento

(23)

Uso do diagrama de atividades na

especificação dos fluxos de eventos

(24)

CIn

CIn--UFPEUFPE ©2003, Alexandre Vasconcelos & Augusto Sampaio©2003, Alexandre Vasconcelos & Augusto Sampaio 2424

Diagrama de atividades

Diagrama de atividades

Usados para representar graficamente o fluxo de eventos (fluxo básico + fluxos alternativos)

São muito usados para modelar atividades concorrentes.

Às vezes um diagrama fala mais que 1000

palavras!

(25)

Estado inicial Verifica senha Libera dinheiro Termina transação e Imprime recibo Manipula senha incorreta [ incorreta ] [ correta ] Pede valor condição de guarda atividade [ dinheiro disponível ]

[ dinheiro não disponível ]

Prepara para Imprimir recibo [ resolvido ]

[ não resolvido ]

Exemplo: diagrama de atividades para o caso de uso

Exemplo: diagrama de atividades para o caso de uso

Sacar dinheiro

Sacar dinheiro

transição concorrência decisão sincronização de atividades

(26)

CIn

CIn--UFPEUFPE ©2003, Alexandre Vasconcelos & Augusto Sampaio©2003, Alexandre Vasconcelos & Augusto Sampaio 2626

Estruturação do Modelo

de Casos de Uso

(27)

Generalização de Atores

Generalização de Atores

É possível definir tipos gerais de atores e especializá-los usando o relacionamento de especialização

Vendedor Realizar venda

Estabelecer crédito Supervisor

(28)

CIn

CIn--UFPEUFPE ©2003, Alexandre Vasconcelos & Augusto Sampaio©2003, Alexandre Vasconcelos & Augusto Sampaio 2828

Relacionamentos entre Casos de Uso

Relacionamentos entre Casos de Uso

Inclusão

Extensão

(29)

Inclusão de casos de uso

Inclusão de casos de uso

Use inclusão quando houver repetição entre casos de uso e você desejar evitar esta repetição.

Um caso de uso incorpora explicitamente o

comportamento de outro caso de uso, evitando assim repetições de descrição de fluxos.

(30)

CIn

CIn--UFPEUFPE ©2003, Alexandre Vasconcelos & Augusto Sampaio©2003, Alexandre Vasconcelos & Augusto Sampaio 3030

Inclusão de casos de uso: exemplo

Inclusão de casos de uso: exemplo

Validar cliente

Cliente

Sacar

(31)

Exemplo de inclusão: validação de cliente no

Exemplo de inclusão: validação de cliente no

sistema

sistema

Use Case: Sacar

O cliente seleciona a opção “sacar” O cliente informa o valor a ser sacado

includes Validar cliente

O cliente recebe o dinheiro

Use Case de Inclusão: Validar Cliente O cliente informa a senha e passa o cartão O sistema valida a senha e os dados do cartão

(32)

CIn

CIn--UFPEUFPE ©2003, Alexandre Vasconcelos & Augusto Sampaio©2003, Alexandre Vasconcelos & Augusto Sampaio 3232

Extensão de casos de uso

Extensão de casos de uso

Use extensão quando quiser descrever uma variação do comportamento normal.

partes opcionais de use cases

cursos alternativos e complexos que raramente ocorrem

Solicitar catálogo Vendedor

Realizar pedido

(33)

Generalização de casos de uso

Generalização de casos de uso

Relaciona um Use Case especializado a um mais geral O filho herda os atributos, operações e seqüências de comportamento dos pais

Validar cliente

Referências

Documentos relacionados

Hardi Hardt Jair Costa, Luciano Schrammel Alexandre Sampaio Diretor de Prova :. Hora de divulgacao:

Francisco de Oliveira Magalhães Cláudio Augusto Gomes da Câmara. Argus Vasconcelos de

Com isso, a nossa pesquisa abordará a deficiência visual de um modo geral, partindo dos seus conceitos, e classificações, vamos falar sobre cegueira e baixa visão,

Neville Chamberlain, em que preconizou o abandono das sanções, pela falência do sistema colectivo, a reforma do Pacto da SDN e a limitação dos compromis- sos militares

VASCONCELOS

A partir da análise do sequenciamento anterior, primers específicos contendo sítios de restrição para a enzima XhoI (primer sense) e BamHI (primer antisense) foram sintetizados para

A Financeira Alfa S.A – Crédito, Financiamento e Investimentos não realizou até o momento, operação com instrumento financeiro derivativo com o objetivo de

No tipo argumentativo, portanto, destaca-se a estratégia da singularização, que pode ser expressa por meio de vários mecanismos (explícitos ou implícitos), dentre os quais se