You are on page 1of 80

Diagramas de Casos de Uso

No diga pouco em muitas palavras, mas sim, muito em poucas.


Pitgoras

Elaine

Casos de uso
O modelo de casos de uso modela os requisitos funcionais do sistema. uma tcnica de modelagem idealizada por Ivar Jacobson, na dcada de 70. Mais tarde a notao de casos de uso foi adicionada UML. O diagrama da UML utilizado na modelagem de casos de uso o diagrama de casos de uso.
Elaine

Casos de Uso
Um caso de uso descreve um conjunto de funcionalidades do sistema modelando o dilogo que ocorre entre algo que est fora do sistema, uma entidade externa chamada de ator e o sistema.

Elaine

Casos de Uso
Um caso de uso especifica o comportamento de um sistema ou parte dele. uma descrio do conjunto de passos que o sistema executar para desempenhar suas funes Um caso de uso baseado em um cenrio que descreve como o ator interage com o sistema. Ele identifica eventos que podem ser solicitados e descreve a resposta do sistema para esses eventos
Elaine

Diagrama de Casos de Uso


O diagrama de casos de uso representa todas as formas de uso do sistema. Todas as funcionalidades. Casos de uso fornecem uma viso do sistema focada nas funcionalidade. Deixamos claro em que CASOS podemos USAR o sistema.

Elaine

Diagrama de Casos de Uso


Alm das funcionalidades definimos como o software interage com o usurio para prover esse tipo de servio. Podemos definir quem tem acesso ao que no contexto do sistema.

Elaine

Diagrama de Casos de Uso


Possibilitam um formato de apresentao compreensvel que pode ser utilizado para aprimorar a comunicao, especialmente entre os projetistas da aplicao e os clientes. Tambm so teis para outras fases, ajudando na quantificao, identificao de objetos e desenvolvimento de estratgias de teste (principalmente pelas descries dos casos de uso)
Elaine

Diagrama de Casos de Uso


Objetivos:
Delimitao do contexto de um sistema Documentao e o entendimento dos requisitos Descrio dos requisitos funcionais Principal sada da etapa de especificao de requisitos Principal entrada da etapa de anlise Facilitam a comunicao entre os stakeholders So a base para a definio do cronograma Auxiliam na elaborao dos casos de teste
Elaine

Casos de Uso
Anlise Tradicional
O que o sistema deve fazer?

Anlise por Casos de Uso


O que o sistema deve fazer ... E para quem?

Elaine

Atores
So entidades do meio ambiente (externas ao sistema) que interagem com o sistema para solicitar algo ou informar algo. Atores podem dar inicio a eventos ou interagir com o sistema em decorrncia do resultado de eventos ocorridos.

Elaine

Atores
Categorias de atores:
Pessoas (Empregado, cliente, gerente, aluno, professor); Organizaes ( Empresa Fornecedora, Administradora de cartes); Outros Sistemas ( Sistema de estoque, Sistema de cobrana); Equipamentos (Leitora de cartes, Sensores, Alarmes);

Elaine

Atores
Um ator corresponde a um papel representado em relao ao sistema
O mesmo indivduo pode ser o cliente que efetua compras na loja e pode ser o vendedor que processa vendas; Uma pessoa pode representar o papel de Funcionrio de um banco, mas tambm pode ser Cliente do banco.

O nome dado a um ator deve lembrar o seu papel.


Elaine

Atores
Atores se comunicam com o sistema por muitas razes, incluindo:
Iniciar um caso de uso. Os casos de uso sempre so iniciados por atores. Pedir alguns dados armazenados no sistema, os quais ento o caso do uso apresenta ao ator. Mudar os dados armazenados no sistema por meio de um dialogo com o sistema. Informar que ocorreu algo que o sistema deve estar ciente.
Elaine

Atores
Um ator inicia um caso de uso. Entretanto, depois que o caso de uso comeou, ele pode se comunicar com vrios outros atores. Considera-se s vezes, erradamente, que a associao de comunicao representa o fluxo de dados. No isso. A associao de comunicao representa um dilogo entre o ator e o sistema, um tipo de canal de comunicao sobre o qual podem fluir dados em ambas as direes durante o dilogo.
Elaine

Casos de Uso
Caso de uso um requisito que ser automatizado. usado para representar as funcionalidades de um sistema. Representa o que o sistema faz (no como). O como est associado descrio do caso de uso. partir dessa descrio partimos para as atividades de projeto.
Elaine

Cadastrar produto

Casos de Uso
Casos de uso se comunicam com atores por muitos motivos:
Se algo especial aconteceu no sistema, um ator pode ter de ser informado. Um caso de uso pode necessitar da ajuda de um ator para tomar uma deciso. Um caso de uso pode delegar responsabilidade a um ator.

Elaine

Conectando atores e casos de uso:


Os atores e os casos de uso com os quais eles interagem so ligados pela associao de comunicao. A seta opcional, mas, quando usada, ela indica qual elemento comea a interao. Para entender plenamente o papel definido para um ator, voc deve saber em que casos de uso o ator est envolvido. Para entender plenamente o alcance de um caso de uso, voc deve saber os atores com os quais ele se comunica.
Elaine

Diagrama de Casos de Uso

Associao entre ator e caso de uso

Descrio de um conjunto de passos que o detalhamento do caso de uso


Elaine

Exemplo
Cliente de banco pode usar um caixa automtico para:
Sacar dinheiro Transferir dinheiro Consultar saldo

Elaine

Exemplo

Elaine

Relacionamentos
Os relacionamentos que ocorrem com mais freqncia quando trabalhamos com casos de uso so:
Extend Include

Elaine

Extenso
um tipo de relacionamento que s pode ocorrer entre casos de uso. No existe um relacionamento de extenso entre um ator e um caso de uso. Define uma extenso de um relacionamento para um caso de uso a partir de outro caso de uso e essa extenso opcional, ou seja um comportamento que poder ou no ser usado pelo caso de uso de origem.
Elaine

Extenso
Nesse relacionamento de extenso estou definindo que ao acessar a funcionalidade encerrar conta pode ser necessrio ou no sacar dinheiro (Se a conta tem saldo positivo, vou sacar dinheiro) mas essa funcionalidade no obrigatria, caso a conta tem saldo igual a zero no ocorrer a funcionalidade de sacar dinheiro. opcional. De forma semelhante, ao acessar a funcionalidade encerrar conta pode ser necessrio ou no depositar dinheiro (Se a conta tem saldo negativo vou depositar dinheiro) mas essa funcionalidade no obrigatria, caso a conta tem saldo positivo ou igual a zero no ocorrer a funcionalidade de depositar dinheiro.
Elaine

Extenso
Pode ser usada para:
Simplificar fluxos de eventos complexos Representar comportamentos opcionais Lidar com excees

Por exemplo, em uma descrio de um caso de uso temos fluxos bsicos e fluxos alternativos, quando um fluxo alternativo complexo e opcional podemos model-lo como um caso de uso, ligando-o ao caso de uso de origem por um relacionamento de extenso.
Elaine

Extenso
As seguintes situaes podem dar margem utilizao do extend:
Descries de caractersticas que so opcionais ao comportamento bsico do sistema, por exemplo, caractersticas que podem ser adquiridas ou no. Descries complexas de erros ou tratamentos de excees que, de outra forma, iriam obscurecer o comportamento primrio do sistema. Exemplos disso so fluxos alternativos de tamanho significativo, especialmente aqueles cujo tamanho maior do que o do fluxo principal.
Elaine

Extenso
Mais situaes que podem dar margem utilizao do extend:
Customizao do modelo de requisitos para atender a necessidades especficas do usurio. Exemplos disso so fluxos alternativos que especificam como usurios especficos tratam diferentes condies que ocorrem dentro de um mesmo caso de uso. Gerncia de escopo e verso. Um exemplo disso so caractersticas que no sero introduzidas at as ltimas verses.
Elaine

Extenso
Podemos concluir ento que o relacionamento de extenso me permite definir relaes entre casos de uso onde existe uma adio de comportamentos opcionais ao caso de uso que est sendo estendido.

Elaine

Incluso
Tambm um tipo de relacionamento que s pode ocorrer entre casos de uso. No existe um relacionamento de incluso entre um ator e um caso de uso. Defini a incluso de comportamentos presentes em outro caso de uso e essa incluso ser obrigatria. Sempre ir utilizar essas funcionalidades presentes no caso de uso includo ao caso de uso de origem
Elaine

Incluso
Identificar usurio uma funcionalidade que poderia ser interna de sacar dinheiro e de depositar dinheiro mas sendo comum a vrios casos de uso, mais interessante modelar identificar usurio em um caso de uso que permita o reuso do mesmo. Assim, todos os casos de uso que necessitem identificar usurio de forma obrigatria ligado ao caso de uso Identificar usurio atravs do relacionamento de incluso.
Elaine

Incluso
Pode ser usada para:
Representar comportamentos reutilizveis Simplificar fluxos de eventos complexos

Quando existe uma dada funo dentro do sistema que aparece em vrios casos de uso, ou seja ela utilizada por vrias funcionalidades, podemos modelar essa funo em um caso de uso uma nica vez e lig-la a todos os casos de uso que incluem essa funo comum, dizendo que essa funo usada em diferentes partes do meu software.
Elaine

Especializao
Um caso de uso pode especializar outro caso de uso:
Adicionando o fluxo de eventos original Refinando o fluxo de eventos original

Especializao permite modelar comportamento diferenciado entre um caso de uso base e casos de uso filhos. Pouco utilizado. Pode existir entre atores tambm
Elaine

Generalizao de casos de uso


Quando o usurio acessar a funcionalidade consultar saldo, essa funcionalidade vai se dar de uma maneira especfica:
ou consultar saldo na tela ou consultar saldo impresso.

Elaine

Relacionamentos
Relao Associao Incluso Funo O caminho de comunicao entre um ator e o(s) caso(s) de uso em que participa A insero de um comportamento adicional em um caso de uso base que explicitamente descreve a insero Um relacionamento entre um caso de uso geral e um mais especfico que herda e adiciona propriedades aquele A insero de um comportamento adicional em um caso de uso base que no sabe sobre o comportamento adicional
Elaine

Notao

Generalizao

Extenso

Sentido da seta
Na incluso partimos do caso de uso base para o caso de uso que ser includo
<<include>>

Sacar dinheiro

Identificar usurio

Elaine

Sentido da seta
Na extenso parte do caso de uso opcional para o caso de uso base
<<extend>>

Inscrever Aluno Secretria

Atualizar cadastro

Elaine

Regras
No existe ligao entre atores.
Atores so entidades externas do sistema, portanto a comunicao entre eles est fora do escopo do sistema, no devendo ser modelada no diagrama de caso de uso, um vez que ele modela apenas as funcionalidades do sistema.

Elaine

Herana de Atores
Alguns casos de uso so utilizados por vrios atores, para simplificar o diagrama e diminuir o nmero de associaes, cria-se um ator genrico. Alm disso alguns casos de uso so exclusivos de apenas um ou alguns atores, mas no de todos. Generalizao pode simplificar a representao grfica do sistema.
Elaine

Sem Generalizao x Com Generalizao

Elaine

Exemplo

Elaine

Estudo de Caso Locadora de Veculos


O diagrama de caso de uso criado com base em um cenrio descrito a partir da especificao de requisitos. Assim, vamos construir o diagrama de caso de uso para a locadora de veculos descrita no cenrio a seguir. importante ressaltar que a partir de um conjunto de requisitos definidos podemos ter diferentes diagramas de casos de uso modelados pois estes diagramas refletem a soluo que cada analista d para o problema.
Elaine

Cenrio Locadora de Veculos


Uma locadora de veculos deseja um sistema para facilitar o atendimento a seus clientes. O processo de aluguel de carros atual confuso e est gerando insatisfao entre os clientes. A locadora composta basicamente pelos seus funcionrios e carros para aluguel. Os funcionrios so identificados por cpf, nome, endereo, telefone. J os carros esto divididos em diversos tipos: popular, luxo, utilitrio, etc. As informaes importantes sobre os carros a serem armazenadas so: cdigo (placa do carro), tipo, modelo, ano, cor, chassis, km e valor do aluguel (dirias e semanais).
Elaine

Cenrio Locadora de Veculos


Os funcionrios sero responsveis pelo cadastro dos clientes e dos carros adquiridos pela locadora, por efetuar o aluguel de um carro para o cliente e dar baixa no aluguel. Existem clientes especiais e clientes comuns. Os especiais possuem uma taxa de desconto e um quilometragem extra para seus aluguis. Qualquer cliente identificado por rg, nome, cpf, telefone, endereo, cidade. Desta forma, o cliente poder solicitar o aluguel de carros a um funcionrio da locadora.
Elaine

Funcionalidades do Sistema
Alugar Carro: cliente deve solicitar ao funcionrio o aluguel do carro. O sistema verifica se o carro solicitado pelo cliente est disponvel. Caso esteja, o processo de locao concludo e o carro passa a estar indisponvel. A data de aluguel deve ser guardada para calculo do valor do aluguel na devoluo. Dar Baixa: cliente faz devoluo do carro para o funcionrio e solicita nota fiscal (recibo) com a quilometragem percorrida e o valor do aluguel. O funcionrio coloca o status do carro novamente como disponvel, solicita ao sistema para calcular o valor a ser pago e emite o recibo para o cliente. Cadastrar Cliente: cliente solicita ao funcionrio que o cadastre na locadora. O funcionrio recebe os dados e cadastra-o. Cadastrar Carro: funcionrio cadastra o carro adquirido.
Elaine

Funcionalidades do Sistema
Na funcionalidade Alugar Carro temos descrito um conjunto de passos que sero executados no contexto desta funcionalidade. Essa descrio de passos servir para descrever o caso de uso e no gerar outros casos de uso. Assim, solicitar aluguel, verificar disponibilidade do carro, alterar disponibilidade etc no sero casos de uso, mas passos que sero executados dentro do caso de uso Alugar Carro. O mesmo ocorre para Dar baixa, Cadastrar Cliente e Cadastrar Carro
Elaine

Soluo - Locadora de Veculos

Elaine

Estudo de Caso II
Sistema de reserva de passagem area
Para esse estudo de caso trabalharemos com a lista de requisitos definidos durante a engenharia de requisitos. Importante deixar claro que nem todo requisito listado ser um caso de uso. Ele pode ser simplesmente um passo interno de algum caso de uso que represente uma funcionalidade mais abrangente.

Elaine

RF1 RF2 RF3 RF4 RF5 RF6 RF7 RF8 RF9 RF10 RF11 RF12 RF13 RF14 RF15 RF16 RF17 RF18

Sistema deve permitir o cadastro do usurio Sistema deve permitir que o usurio se identifique Sistema deve consultar a classe vo Sistema deve consultar o trecho da viagem Sistema deve permitir consulta aos aeroportos Sistema deve permitir consulta as datas disponveis de ida e volta Sistema deve permitir que usurio consulte as formas de pagamento Sistema deve enviar para os usurios cadastrados e-mails promocionais Sistema deve permitir que o usurio consulte CEP no sistema dos correios Sistema deve permitir que o usurio solicite a reserva on-line Sistema deve gerar cdigo de reserva Sistema deve emitir e-mail ao usurio confirmando a reserva com dados Sistema deve permitir que usurio cancele a reserva Sistema deve permitir que administrador emita relatrio de reservas confirmadas Sistema deve permitir que administrador emita relatrio de reservas canceladas Sistema deve validar o pagamento junto com a operadora de carto Sistema deve permitir que o administrador emita relatrio de usurios cadastrados Sistema deve permitir que usurio edite seus dados pessoais
Elaine

RF1 RF2 RF3 RF4 RF5 RF6 RF7 RF8

Sistema deve permitir o cadastro do usurio Sistema deve permitir que o usurio se identifique Sistema deve consultar a classe vo Sistema deve consultar o trecho da viagem Sistema deve permitir consulta aos aeroportos Sistema deve permitir consulta as datas disponveis de ida e volta Sistema deve permitir que usurio consulte as formas de pagamento Sistema deve enviar para os usurios cadastrados e-mails promocionais

O RF1 ser modelado como caso de uso. Importante percebermos que os RF de 2 at o 7 so passos internos da funcionalidade mais abrangente efetuar reserva, portanto eles no se tornaro casos de uso. Essas funcionalidades faro parte da descrio do caso de uso efetuar reserva. O RF8 ser um caso de uso, uma vez que representa uma funcionalidade especfica do sistema .
Elaine

RF1 RF2 RF3 RF4 RF5 RF6 RF7 RF8 RF9 RF10 RF11 RF12

Sistema deve permitir o cadastro do usurio Sistema deve permitir que o usurio se identifique Sistema deve consultar a classe vo Sistema deve consultar o trecho da viagem Sistema deve permitir consulta aos aeroportos Sistema deve permitir consulta as datas disponveis de ida e volta Sistema deve permitir que usurio consulte as formas de pagamento Sistema deve enviar para os usurios cadastrados e-mails promocionais Sistema deve permitir que o usurio consulte CEP no sistema dos correios Sistema deve permitir que o usurio solicite a reserva on-line Sistema deve gerar cdigo de reserva Sistema deve emitir e-mail ao usurio confirmando a reserva com dados

Os RFs 9, 11 e 12 tambm so passos internos da funcionalidade mais abrangente efetuar reserva, portanto eles no se tornaro casos de uso. J o RF10 exatamente a funcionalidade efetuar reserva, que engloba todos estes outros RFs citados, assim ele ser um caso de uso.
Elaine

RF13 RF14 RF15

Sistema deve permitir que usurio cancele a reserva Sistema deve permitir que administrador emita relatrio de reservas confirmadas Sistema deve permitir que administrador emita relatrio de reservas canceladas

O RF 13 ser modelado como um caso de uso, visto que cancelar reserva um ato a parte do sistema onde o usurio vai solicitar cancelamento da reserva, o sistema exibe as reservas desse usurio para que ele possa selecionar aquela que ele deseja cancelar. O RF14 e o RF15 sero modelados como um caso de uso emitir relatrio de reservas, j que o que muda apenas o status da reserva que ser includa no relatrio. Essa diferena pode ser interna ao caso de uso, detalhada na descrio.
Elaine

RF16 RF17 RF18

Sistema deve validar o pagamento junto com a operadora de carto Sistema deve permitir que o administrador emita relatrio de usurios cadastrados Sistema deve permitir que usurio edite seus dados pessoais

O RF 16 tambm um passo interno da funcionalidade mais abrangente efetuar reserva, portanto no se tornar caso de uso. O RF17 ser caso de uso novo pois embora seja um relatrio, este totalmente diferente dos outros (RF14 e RF15). O RF18 ser modelado como um caso de uso pois a edio dos dados do usurio ser desvinculada do efetuar cadastro. Para edio ele tem que efetuar o login, abrir sua ficha cadastral j existente para ento fazer a alterao. So ao desvinculadas do ponto de vista do usurio. No estamos modelando um manter usurio nesse sistema on-line.
Elaine

Casos de uso definidos


Cadastrar Usurio Enviar e-mail promocional Efetuar reserva Cancelar reserva Emitir relatrio de reservas Emitir relatrio de usurios cadastrados Atualizar dados pessoais.

Elaine

Definio de Atores
Os RF14, RF15 e RF17 so efetuados pelo administrador do sistema. Os RF2, 7, 8, 10, 12, 13 e 18 citam um ator usurio O RF9 diz que haver interao com um sistema externo (Sistema dos correios), como um sistema externo que troca informao com o sistema considerado um ator, teremos o ator Sistema do Correio. Da mesma forma que o RF16 cita interao com a operadora de carto, definindo assim o ator Operadora de Carto
Elaine

RF1 RF2 RF3 RF4 RF5 RF6 RF7 RF8 RF9 RF10 RF11 RF12 RF13 RF14 RF15 RF16 RF17 RF18

Sistema deve permitir o cadastro do usurio Sistema deve permitir que o usurio se identifique Sistema deve consultar a classe vo Sistema deve consultar o trecho da viagem Sistema deve permitir consulta aos aeroportos Sistema deve permitir consulta as datas disponveis de ida e volta Sistema deve permitir que usurio consulte as formas de pagamento Sistema deve enviar para os usurios cadastrados e-mails promocionais Sistema deve permitir que o usurio consulte CEP no sistema dos correios Sistema deve permitir que o usurio solicite a reserva on-line Sistema deve gerar cdigo de reserva Sistema deve emitir e-mail ao usurio confirmando a reserva com dados Sistema deve permitir que usurio cancele a reserva Sistema deve permitir que administrador emita relatrio de reservas confirmadas Sistema deve permitir que administrador emita relatrio de reservas canceladas Sistema deve validar o pagamento junto com a operadora de carto Sistema deve permitir que o administrador emita relatrio de usurios cadastrados Sistema deve permitir que usurio edite seus dados pessoais
Elaine

Funcionalidades do Administrador

Elaine

Funcionalidades do Usurio
Podemos perceber que o usurio (internauta) pode se cadastrar mas que para Efetuar reserva, Cancelar reserva e Atualizar dados pessoais, ele tem que ser um usurio logado, ou seja um tipo especial de usurio que vamos chamar de cliente.
Elaine

Ator Correio
O sistema de correios consultado durante o cadastro do usurio, para consultar o CEP, assim esse ator est ligado ao caso de uso Cadastrar usurio

Elaine

Ator Operadora do Carto


A operadora do carto um sistema externo que ser acessado durante a validao do pagamento que ocorre durante o caso de uso Efetuar reserva

Elaine

Diagrama de caso de uso finalizado

Elaine

Mdulo de Gesto de Usurio


RF1 RF2 RF3 RF4 RF5 RF6 RF7 RF8 RF9

O software deve ident. e validar todos os usurios que desejarem acess-lo, identificando seu perfil O software deve disp. ao usurio identificado as func. associadas ao seu perfil e ao seu papel no sist. (coordenador, bolsista, etc). As func. de acesso restrito e as func. de acesso pblico. O software deve disp. ao usurio no identificado somente as func. Pblicas. O software deve permitir ao usurio recuperar a sua senha, caso esquea O software deve permitir que o adm. inclua, altere ou exclua usurios O software deve permitir que o adm. inclua, altere ou exclua perfis de acesso O software deve permitir que o adm. associe as func. disponveis nos mdulos aos perfis cadastrados ou exclua dos perfis as funcionalidades previamente associadas. O software deve permitir que o adm. associe um usurio a um nico perfil de acesso O software deve permitir ao adm. consultar as funcionalidades associadas a um perfil

RF10 O software deve permitir ao adm. consultar os usurios associados a um determinado perfil RF11 O software deve permitir ao adm. indicar se um determinado usurio pode administrar seus

substitutos ou no
RF12 O software deve permitir que os usurios devidamente autorizados designem um ou mais substitutos

com os respectivos perodos de substituio (data inicial e final) e selecionem um subconjunto das suas funcionalidades as quais os substitutos tero acesso.
Elaine

Mdulo de Gesto de Usurio


RF13 O software deve permitir que todos os usurios faam a manuteno de seus dados pessoais:email,

localizao, senha e telefones.


RF14 O software deve permitir que os administradores reenviem a senha de qualquer usurio e que os

usurios reenviem a prpria senha


RF15 O software deve gerar senhas temporrias, vlidas somente no primeiro login, quando as senhas forem

reenviadas pelos administradores ou pelos prprios usurios


RF16 O software deve solicitar a troca de senha, aps o login, para todas as senhas que j expiraram RF17 O software deve, caso o usurio corrente seja um substituto, apresentar a lista de usurios que ele est

substituindo na data corrente.


RF18 O software deve, caso o usurio corrente seja um substituto, permitir que ele selecione o usurio com

o qual vai atuar, caso ele seja substituto de mais de um usurio.

Elaine

Estudando cada RF
RF1- O software deve identificar e validar todos os usurios que desejarem acess-lo, identificando seu perfil
Caso de Uso: Autenticar Usurio Ator: Usurio

RF2- O software deve disponibilizar ao usurio identificado as funcionalidades associadas ao seu perfil e ao seu papel no sistema (coordenador, bolsista, etc). As funcionalidades de acesso restrito e as funcionalidades de acesso pblico.
Passo que ocorre dentro do autenticar usurio

RF3- O software deve disponibilizar ao usurio no identificado somente as funcionalidades de acesso pblico.
Passo que ocorre dentro de autenticar usurio, podendo ser modelada como um fluxo alternativo.

RF4- O software deve permitir ao usurio recuperar a sua senha, caso esquea
Se quisssemos modelar a possibilidade de recuperao de senha a qualquer momento atravs de um menu da seria um caso de uso, mas neste caso vamos optar por s poder recuperar senha dentro do efetuar login, ento essa funcionalidade ser um fluxo alternativo de efetuar login.
Elaine

Estudando cada RF
RF5- O software deve permitir que o administrador inclua, altere ou exclua usurios Caso de uso: Administrar usurio Ator: Administrador RF6- O software deve permitir que o administrador inclua, altere ou exclua perfis de acesso Caso de uso: Administrar perfis de acesso Ator: Administrador RF7- O software deve permitir que o administrador associe as funcionalidades disponveis nos mdulos aos perfis cadastrados ou exclua dos perfis as funcionalidades previamente associadas. Passo da funcionalidade Administrar perfil de acesso. RF8- O software deve permitir que o administrador associe um usurio a um nico perfil de acesso Passo da funcionalidade Administrar perfil de acesso.
Elaine

Estudando cada RF
RF9- O software deve permitir ao administrador consultar as funcionalidades associadas a um perfil Passo da funcionalidade Administrar perfil de acesso RF10- O software deve permitir ao administrador consultar os usurios associados a um determinado perfil Passo da funcionalidade Administrar perfil de acesso RF11- O software deve permitir ao administrador indicar se um determinado usurio pode administrar seus substitutos ou no Passo da funcionalidade Administrar usurio

RF12- O software deve permitir que os usurios devidamente autorizados designem um ou mais substitutos com os respectivos perodos de substituio (data inicial e final) e selecionem um subconjunto das suas funcionalidades as quais os substitutos tero acesso. Caso de uso: Administrar substitutos Ator: usurio autenticado
Elaine

Estudando cada RF
RF13- O software deve permitir que todos os usurios faam a manuteno de seus dados pessoais: e-mail, localizao, senha e telefones. Caso de uso: Manter dados pessoais Ator: usurio autenticado RF14- O software deve permitir que os administradores reenviem a senha de qualquer usurio e que os usurios reenviem a prpria senha Passo presente em administrar usurio e em administrar perfil RF15- O software deve gerar senhas temporrias, vlidas somente no primeiro login, quando as senhas forem reenviadas pelos administradores ou pelos prprios usurios Passo presente em casos de uso do sistema RF16- O software deve solicitar a troca de senha, aps o login, para todas as senhas que j expiraram Regras associadas a autenticar usurio
Elaine

Estudando cada RF
RF17- O software deve, caso o usurio corrente seja um substituto, apresentar a lista de usurios que ele est substituindo na data corrente. Regra interna ao autenticar usurio RF18- O software deve, caso o usurio corrente seja um substituto, permitir que ele selecione o usurio com o qual vai atuar, caso ele seja substituto de mais de um usurio.
Caso de uso: Selecionar perfil de uso Ator: Usurio autenticado

Elaine

Soluo - Caso de Uso

Elaine

Descrio Casos de Uso


UC1 Nome do Caso de Uso
Objetivo: Breve descrio do que o caso de uso dever fazer Requisitos: A qual RF do doc de requisitos ele se refere Atores: Quem acessa esse caso de uso Prioridade: prioritrio ou no (cliente define) Pr-condies: quais as condies necessrias antes de disparar o caso de uso Freqncia de uso: a frequencia me d idia de criticalidade (risco) Criticalidade (risco): importncia do caso de uso Condio de entrada: o que dispara esse caso de uso Fluxo Principal: descrever aes normais que ocorrem Fluxo Alternativo: desvios do cenrio principal Extenses: descrevem os extends Ps Condies: o que deve ser verdade depois de executado o caso de uso Regras de Negcio: que pode ser definido agora ou em doc parte.

Elaine

Prioridade e Risco
Devemos considerar os casos de uso mais importantes primeiramente. Para identificar os mais importantes verificamos os parmetros: risco de desenvolvimento(criticalidade) e prioridade estabelecidas pelo usurio. Dessa forma, cada caso de uso se encaixa em uma das categorias a seguir:
1. Risco alto e prioridade alta: casos de uso nesta categoria so os mais crticos. Devem ser considerados o quanto antes. 2. Risco alto e prioridade baixa: embora os casos de uso nesta categoria tenham risco alto, necessrio, antes de comear a consider-los, negociar com o cliente em relao a sua verdadeira necessidade. 3. Risco baixo e prioridade alta: embora os casos de uso tenham prioridade alta, necessrio ter em mente que os casos de uso de mais alto risco devem ser considerados primeiro. 4. Risco baixo e prioridade baixa: em situaes em que o desenvolvimento do sistema est atrasado, estes casos de uso so os primeiros a serem "cortados".
Elaine

Exemplo de descrio
UC1 Consultar Clientes
Objetivo: O sistema deve permitir que o setor de atendimento ao cliente consulte clientes cadastrados Requisitos: RF1 Atores: Setor de atendimento ao cliente Prioridade: Pr-condies: Freqncia de uso: diria Criticalidade: Condio de entrada: o ator seleciona a opo consultar cliente
Elaine

Fluxo Principal:
1. O sistema apresenta tela de busca de clientes contendo as informaes: - Nome (campo editvel) - Status (lista contendo os itens: Em dia, Inadimplente) - As opes: * Buscar * Cancelar 2. O ator informa dados de busca e seleciona a opo Buscar [A1] 3. O sistema apresenta tela com informaes dos Clientes de acordo com o filtro especificado: - Nome (somente leitura) - Status (somente leitura) - CPF (somente leitura) - Data de Nascimento (somente leitura) - A opo Detalhar 4. O sistema apresenta ao final a opo Voltar
Elaine

Fluxo Principal:
5. O ator seleciona a opo Detalhar [A2] 6. O sistema apresenta tela de detalhes para o cliente contendo as informaes: - Nome (somente leitura) - CPF (somente leitura) - Status (somente leitura) Se o cliente estiver com - Data de Nascimento (somente leitura) status em dia no - Endereo (somente leitura) aparece, se estiver em atraso, mostra o motivo - Motivo [RN1] (somente leitura) de acordo com regra - A opo Ok negcio 1 7. O ator seleciona a opo ok 8. O sistema retorna ao passo 3 do fluxo principal.

Elaine

Fluxo Alternativo:
Fluxo Alternativo: [A1] O ator selecionou a opo Cancelar 1. Sistema retorna para a tela inicial. 2. O caso de uso encerrado. [A2] O ator selecionou a opo Voltar 1. Sistema retorna ao passo 1 do fluxo principal. Extenses: Ps Condies: Regras de Negcio: [RN1] O campo Motivo ser apresentado apenas se o Status do cliente for inadimplente
Elaine

Descries independentes de Interface


Alterao na Interface alterao descrio
Considere a situao de uma parte da interface estar sendo continuamente modificada, por alguma razo. O fato da interface ser modificada possivelmente resultar na modificao da descrio do caso de uso.

Assim, casos de uso devem ser independentes do desenho da interface pelo fato de que os requisitos do sistema no devem estar associados a detalhes de interface. A ateno deve estar na essncia das interaes entre atores e o sistema, em vez de como cada interao realizada fisicamente. Por exemplo, usar o termo "envia uma requisio" ao invs de "duplo clique sobre o boto de envio de requisies".
Elaine

Caso de Uso Incluir Cliente


UC1 Incluir Clientes
Objetivo: O sistema deve permitir que o administrador efetue o cadastrado de cliente Requisitos: RF2 Atores: Administrador Prioridade: Pr-condies: Freqncia de uso: Criticalidade: Condio de entrada: o ator seleciona a opo incluir cliente

Elaine

Fluxo Principal:
1. O sistema apresenta tela de cadastro de clientes contendo as informaes: (Dados Pessoais) - Nome (campo editvel) - CPF(campo editvel) - RG (campo editvel) -Data de Nascimento (campo editvel) -Sexo (lista contendo as opes feminino e masculino) (Informaes de Contato) - Endereo (campo editvel) - Telefone de contato (campo editvel) - e-mail (campo editvel) - As opes: * Incluir Cliente * Cancelar

Elaine

Fluxo Principal:
2. O ator informa os dados do cliente e seleciona a opo incluir Cliente [A1] 3. O sistema valida os dados informados [RN1] 4. O sistema efetua o cadastro do cliente [RN2] 5. O sistema exibe a mensagem Cliente cadastrado com sucesso com a opo OK no final. 6. O ator seleciona OK 7. O sistema retorna para a tela inicial 8. O caso de uso encerrado.

Elaine

Fluxo Alternativo
Fluxo Alternativo: [A1] O ator seleciona a opo Cancelar 1. Sistema retorna para a tela inicial. 2. O caso de uso encerrado. [A2] Dados para cadastro do cliente invlidos 1. O sistema exibe mensagem de erro Existem informaes obrigatrias que no foram preenchidas com a opo OK no final. 2. O ator seleciona a opo 3. O sistema retorna ao passo 1 do fluxo principal. Extenses: Ps Condies: Regras de Negcio: [RN1] Todos os campos do cadastro de clientes so obrigatrios. [RN2] Ao efetuar o cadastro do cliente, um nmero de matrcula deve ser gerado para o cliente.
Elaine

Extenso ou Fluxo Alternativo


Conceitualmente, o mecanismo de extenso idntico aquele dos fluxos alternativos. Um caso de uso de extenso, assim como um fluxo alternativo, insere a si prprio no fluxo do caso de uso que ele estende. Somente o caso de uso de extenso conhece o ponto no caso de uso base onde o comportamento ser inserido. Em conseqncia, freqentemente um caso de uso de extenso comea sua vida como um fluxo alternativo.

Elaine

Extenso ou Fluxo Alternativo


Nem todo fluxo alternativo deve virar um caso de uso de extenso. As regras para os fluxos alternativos so mais frouxas do que aquelas para os casos de uso de extenso. Devido ao fato de que os fluxos alternativos so parte do caso de uso, eles podem explorar seu conhecimento do estado do caso de uso, suas pr-condies, e outros fluxos de eventos para terminar o caso de uso ou para continuar o fluxo do caso de uso em pontos de extenso diferentes daquele onde eles assumiram o controle. Tudo o que os casos de uso de extenso conhecem a respeito do caso de uso original o ponto de extenso onde eles introduziram a si prprios no fluxo de eventos do caso de uso estendido.
Elaine