0% acharam este documento útil (0 voto)
9 visualizações14 páginas

Sistema de Controle para Videolocadora

O documento propõe um sistema de videolocadora para automatizar empréstimos, devoluções e reservas de filmes. O sistema deve gerar relatórios, calcular pagamentos e impedir novos empréstimos em caso de dívidas.

Enviado por

Rafael Troiano
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
9 visualizações14 páginas

Sistema de Controle para Videolocadora

O documento propõe um sistema de videolocadora para automatizar empréstimos, devoluções e reservas de filmes. O sistema deve gerar relatórios, calcular pagamentos e impedir novos empréstimos em caso de dívidas.

Enviado por

Rafael Troiano
Direitos autorais
© All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PDF, TXT ou leia on-line no Scribd

Sistema de Videolocadora

Visão Geral do Sistema


É proposto o desenvolvimento de um sistema de controle de Videolocadora, que
vai informatizar as funções de empréstimo, devolução e reserva de filmes. O
objetivo do sistema é agilizar o processo de empréstimo e garantir maior
segurança, ao mesmo tempo possibilitar um melhor controle das informações por
parte da gerência. Deverão ser gerados relatórios de empréstimos por cliente,
empréstimos por fita e empréstimos no mês. O sistema deverá calcular
automaticamente o valor dos pagamentos a serem efetuados em cada empréstimo,
inclusive multas e descontos devidos. A cada devolução de filmes corresponderá
um pagamento, não sendo possível trabalhar com sistema de créditos. A
impossibilidade de efetuar um pagamento deve deixar o cliente suspenso, ou
seja, impossibilitando de tomar emprestados novos filmes até saldar a dívida.
O cliente se identifica e identifica os filmes que deseja levar. O
funcionário faz o registro e libera os filmes para empréstimo, desde que não
estejam reservados.
O cliente entrega ao funcionário as fitas. O funcionário faz o registro da
devolução e o cliente efetua o pagamento devido
O cliente solicita a reserva de um ou mais filmes. O funcionário registra a
reserva.
Emprestar filmes
Devolver filmes
Reservar filmes

Emprestar Filmes
Um cliente solicita a locação de alguns
filmes. Após se identificar e escolher os
filmes se não houver problemas no seu
cadastro e se os filmes não estiverem
reservados para outro cliente, ele pode
leva-los para casa, ciente do prazo de
devolução e do valor a ser pago.
Devolver Filmes
O cliente entrega os filmes que deseja devolver
O funcionário identifica cada um dos filmes
O funcionário indica que não há mais filmes para
devolver
O sistema informa o valor total a ser pago
O cliente realiza o pagamento.
Reservar Filmes
O cliente entra em contato com o funcionário
da videolocadora.
O cliente diz o seu nome e solicita uma
reserva informando o nome do filme
O funcionário confirma a reserva,
informando o prazo de validade.
Expansão dos casos de uso

Descrição Essencial ou Real

Todos os casos de uso da análise são do tipo essencial. Essencial, nesse contexto, não significa
importante ou fundamental, mas que ele é descrito em um nível de discurso no qual apenas a "essência"
das operações é apresentada, em oposição à sua realização concreta. Em outras palavras, o analista
deve descrever "o que" acontece entre o usuário e o sistema, sem, entretanto, informar "como" essa
interação ocorre. O analista não deve, portanto, na fase de análise, tentar descrever a tecnologia de
interface entre o sistema e o usuário. Isso será feito na fase de projeto quando serão feitos casos de uso
reais.

Uma dúvida frequente refere-se ao que descrever no caso de uso: o sistema atual ou o sistema
que será desenvolvido? Se no sistema atual as operações são feitas manualmente e depois serão feitas
no computador, qual deve ser a descrição produzida pelo caso de uso? A resposta é: nem uma nem a
outra. O caso de uso de análise deve descrever a essência das operações, e não a sua realização
concreta. Assim, o analista deve procurar sempre abstrair a tecnologia empregada no processo e se
concentrar na essência das informações trocadas. Em vez de dizer "o funcionário procura a ficha do
cliente no fichário", correspondente a uma tecnologia manual, empregada normalmente em sistemas não-
informatizados, ou "o funcionário clica no botão 'procurar' digitando o código do cliente no campo X3", que
corresponde a uma tecnologia informatizada, o analista deve registrar no caso de uso simplesmente "o
funcionário localiza as informações sobre o cliente". Essa última forma independe de tecnologia ou
interface e representa, dessa maneira, a descrição da operação no seu nível essencial.

Como descrever, por exemplo, o caso de uso "sacar dinheiro" de um caixa automático, sem
entrar no nível da tecnologia de interface? No lugar de dizer que o cliente passa o cartão magnético,
diz-se que ele se identifica. E no lugar de dizer que o sistema mostra as opções na tela e o usuário
pressiona um botão, diz-se apenas que o usuário escolhe a opção. Logo, eliminando as referências à
tecnologia, fica-se apenas com a essência das interações. Isso abre caminho para que, na fase de
projeto, seja possível pensar cm diferentes alternativas para implementar as operações e na interface
que permitirá realizar um caso de uso.
Fluxo principal: Tratamento de exceções:
1 O cliente chega ao balcão com as 3a. O cliente não possui cadastro.
fitas que deseja locar. 3a.1 O cliente deve informar seus dados para cadastro.
2 O cliente informa seu nome e 3a.2 [EV] O funcionário registra o cadastro.
entrega as fitas ao funcionário. 3a.3 Retorna ao fluxo principal no passo 3.
3 [EV] O funcionário registra o 3b. O cliente possui pendências no cadastro (locação
nome do cliente e inicia a anterior não foi paga).
locação. 3b.1 O cliente paga seu débito.
4 [EV] O funcionário registra cada 3b.2 [EV] O funcionário registra a quitação do débito,
uma das fitas. eliminando assim a pendência.
5 [RS] O funcionário finaliza a 3b.3 Retorna ao passo 3.
locação, devolve as fitas ao 4a. Uma fita está reservada para outro cliente.
cliente e lhe informa a data de 4a.1 [RS] O funcionário informa que a fita não está
devolução e o valor total da disponível para locação.
locação. 4a.2 Prossegue a locação do passo 4 sem incluir a fita
6 O cliente vai embora com as reservada.
fitas. 4b. Uma fita está danificada,
4b.1 O funcionário informa que a fita está danificada.
4b.2 [EV] O funcionário registra que a fita está danificada.
4b.3 O funcionário verifica se existe outra fita disponível
com o mesmo filme.
4b.4 [EV] Se existir, o funcionário substitui a fita e
prossegue para o passo 4, senão segue do passo 4 sem
incluir a fita danificada.
Caso de uso: Emprestar Fitas
Atores: Funcionário e Cliente
Interessados: Gerente financeiro, Setor de compras
Precondições: As fitas a serem locadas estão devidamente registradas (pode-se garantir que as fitas com código
identificador tenham sido previamente registradas no sistema se o código for produzido apenas após o registro).
Pós-condições: O cliente ficou de posse das fitas. O registro da locação das fitas para o cliente foi feito. O cliente
foi informado do prazo e do valor da locação.
Requisitos correlacionados: F1 e F2.
Variações tecnológicas: a identificação do cliente poderá ser feita por meio de um código simples ou um cartão
com código de barras. A identificação das fitas também poderá ser feita por um código ou por leitor de código de
barras. Outra opção seria um leitor magnético, mas essa opção não está sendo seriamente considerada no momento
devido ao custo.
Questões em aberto:
1. Os prazos de locação variam de fita para fita?
2. Existem promoções do tipo leve 4 e pague 3?
Fluxo principal:
1 O cliente chega ao balcão com as fitas que deseja locar.
2 O cliente informa seu nome e entrega as fitas ao funcionário.
3 [EV] O funcionário registra o nome do cliente e inicia a locação.
4 [EV] O funcionário registra cada uma das fitas.
5 [RS] O funcionário finaliza a locação, devolve as fitas ao cliente e lhe informa a data de devolução e o
valor total da locação.
6 O cliente vai embora com as fitas.
Tratamento de exceções:
3a. O cliente não possui cadastro.
3a.1 O cliente deve informar seus dados para cadastro.
3a.2 [EV] O funcionário registra o cadastro.
3a.3 Retorna ao fluxo principal no passo 3.
3b. O cliente possui pendências no cadastro (locação anterior não foi paga).
3b.1 O cliente paga seu débito.
3b.2 [EV] O funcionário registra a quitação do débito, eliminando assim a pendência.
3b.3 Retorna ao passo 3.
4a. Uma fita está reservada para outro cliente.
4a.1 [RS] O funcionário informa que a fita não está disponível para locação.
4a.2 Prossegue a locação do passo 4 sem incluir a fita reservada.
4b. Uma fita está danificada,
4b.1 O funcionário informa que a fita está danificada.
4b.2 [EV] O funcionário registra que a fita está danificada.
4b.3 O funcionário verifica se existe outra fita disponível com o mesmo filme.
4b.4 [EV] Se existir, o funcionário substitui a fita e prossegue para o passo 4, senão segue do passo 4 sem
incluir a fita danificada.
Caso de uso: Devolver Fitas
Atores: Funcionário e Cliente
Interessados: Gerente financeiro
Precondições: As fitas a serem devolvidas foram devidamente registradas como locadas para o cliente.
Pós-condições: O cliente efetuou os pagamentos.
Requisitos correlacionados: Emprestar fitas
Variações tecnológicas: A identificação das fitas também poderá ser feita por um código ou por leitor de código de
barras.
Questões em aberto:
1. O cliente poderá devolver uma fita sem efetuar o pagamento?
Fluxo principal:
1 O cliente entrega as fitas que deseja devolver.
2 [EV] O funcionário identifica cada uma das fitas e registra a devolução.
3 [EV] O funcionário indica que não há mais fitas para devolver.
4 [RS] O sistema informa o valor total a ser pago.
5 O cliente realiza o pagamento.
6 O funcionário conclui a devolução.
Tratamento de exceções:
2b. Uma fita está danificada,
2b.1 O funcionário informa que a fita está danificada.
2b.2 [EV] O funcionário registra que a fita está danificada.
2b.3 [RS] O funcionário informa o valor da fita e solicita o pagamento da mesma.
2b.4 [EV] Se houver acordo, o cliente paga e segue para o passo 4, senão faz o registro, bloqueia o cliente e
segue do passo 2.
Caso de uso: Reservar Fitas
Atores: Funcionário e Cliente
Interessados: Gerente financeiro, Setor de compras
Precondições: O cliente deve estar previamente cadastrado e não ter pendências
Pós-condições: O cliente foi informado do prazo que deverá efetuar o empréstimo e do valor da locação.
Requisitos correlacionados: Emprestar Filmes
Variações tecnológicas: a identificação do cliente poderá ser feita por meio de um código simples ou do seu nome.
A identificação das fitas poderá ser feita pelo nome do filme.
Questões em aberto: Uma fita reservada para outro cliente poderá ser reservada para período posterior?
Fluxo principal:
1 O cliente entra em contato com o funcionário da Videolocadora
2 O cliente informa seu nome e as fitas que deseja reservar.
3 [EV] O funcionário registra o nome do cliente e inicia a reserva.
4 [EV] O funcionário registra cada uma das fitas como reservada.
5 [RS] O funcionário finaliza a reserva e lhe informa o prazo de validade e o valor da locação.
Tratamento de exceções:
4a. Uma fita está reservada ou alugada para outro cliente no período desejado.
4a.1 [RS] O funcionário informa que a fita não está disponível para locação.
4a.2 Prossegue a reserva do passo 4 sem incluir a fita indisponível.
4b. Uma fita não está disponível no acervo (não existe),
4b.1 O funcionário informa que a fita não está disponível no acervo.
4b.2 [EV] O funcionário registra a intensão de aluguel deste filme.
4b.3 [EV] O funcionário verifica se há outros clientes interessados neste filme;
4b.4 [EV] Se existir, o funcionário informa a necessidade da aquisição ao setor de compras;
4b.5 Segue do passo 4 sem incluir a fita indisponível.
Associação

As associações representam as interações ou relacionamentos entre os Atores que fazem parte do diagrama, entre os Atores
e os Casos de Uso ou os relacionamentos dos casos de uso e outros casos de uso. Os relacionamentos entre os Casos de Uso
recebem nomes especiais, como Inclusão Extensão e Generalização.

Uma associação entre um ator e um caso de Uso demonstra que o Ator se utiliza, de alguma maneira, da função do sistema
representada pelo caso de uso em questão, seja requisitando a execução daquela função, seja recebendo o resultado
produzido por ela a pedido de outro Ator.

A associação entre um ator e um caso de uso é representada por uma reta ligando o ator ao caso de uso, podendo ocorrer que
as extremidades da reta contenham setas, indicando a navegabilidade da Associação, o que demonstra o sentido em que as
informações trafegam, ou seja, se estas são fornecidas pelo Ator ao Caso de Uso serão transmitidas pelo Caso de Uso ao Ator
ou ambos (neste último caso a reta não possui setas, significando que as informações são transmitidas nas suas direções).

Além disso uma Associação pode possuir uma descrição própria quando há necessidade de esclarecer a natureza da
informação que está sendo transmitida, ou para dar um nome à Associação, se isto for considerado necessário.

Abertura de conta

Cliente

Ao examinarmos o exemplo ilustrado acima, percebemos que o ator cliente utiliza, de alguma forma, o serviço de abertura de
conta, representado pelo caso de uso e que a informação referente a este processo trafega nas duas direções.
Especialização/Generalização

O relacionamento de Especialização/Generalização é uma forma de Associação entre Casos de Uso na qual existem dois ou
mais Casos de Uso com características semelhantes, apresentando pequenas diferenças entre si. Quando tal situação ocorre,
costuma-se definir um caso de Uso Geral que descreve as características compartilhadas por todos os casos de uso em questão
e então relacioná-lo com os outros casos de uso envolvidos, cuja, documentação conterá somente as características específicas
de cada um.

Desta forma, não é necessário colocar a mesma documentação para todos os Casos de uso envolvidos, porque toda a estrutura
de um caso de uso generalizado é herdada pelos casos de uso especializados. Além disso, os casos de Uso especializados
herdam também quaisquer possíveis associações de inclusão ou extensão que o caso de uso geral venha a possuir bem como
quaisquer associações com os atores que utilizem o caso de uso geral. A associação de generalização/especialização é
representada por uma reta com uma seta mais grossa, que indica qual o caso de uso geral para o qual a seta aponta e quais os
casos de uso especializados (os que se encontram na outra extremidade da seta apontando para o caso de uso geral) um
exemplo de especialização pode ser visualizado a seguir:

Abertura de Conta

Abertura de conta Abertura de conta

Corrente Poupança

..
Inclusão

A associação de inclusão costuma ser utilizada quando existe um serviço, situação ou rotina comum a mais de um caso de uso.
Quando isso ocorre, a documentação dessa rotina é colocada em um caso de uso específico para que outros casos de uso se
utilizem desse serviço evitando-se descrever uma mesma sequência de passos em vários casos de uso. Os relacionamentos de
inclusão indicam uma obrigatoriedade, ou seja, quando um determinado caso de uso possui um relacionamento de inclusão
com outro, a execução do primeiro obriga também a execução do segundo. Um relacionamento de inclusão pode ser
comparado a chamada de uma sub-rotina ou função, artificio bastante utilizado na maioria das linguagens de programação.

Uma associação de inclusão é representada por uma reta tracejada contendo uma seta em uma de suas extremidades que
aponta para o caso de uso incluído no caso de uso posicionado na outra extremidade da reta. As associações de inclusão
costumam apresentar também um Estereótipo contendo o texto “include” entre dois pares de sinais de menor / maior (<<>>).
Exemplo a seguir.

saque

<<include>>

Cliente

Depósito registrar movimento Banco

<<include>>
Extensão

Associação de extensão são utilizadas para descrever cenários opcionais de um caso de uso. Os casos de uso estendidos
descrevem cenários que somente ocorrerão em uma situação especifica se uma determinada condição for satisfeita. Assim,
na associação de extensão indicam a necessidade de um teste para determinar se é necessário executar também o caso de
uso estendido ou não. Relacionamentos de extensão representam eventos que não ocorrem sempre, o que não significa que
eles sejam incomuns. As associações de extensão possuem representação muito semelhante às associações de inclusão, sendo
também representados por uma reta tracejada, diferenciando-se pelo fato da seta apontar para o caso de uso que utiliza o
caso de uso estendido e por possuir um estereotipo contendo o texto, “extend” ao invés de “include”. Exemplo a seguir:

Encerrar Corta

Extend Extend

funcionário

Cliente

Saque Depósito
Bibliografia

Wazlawick, Raul S. Análise e Projeto de Sistemas de Informação Orientados a Objetos, 2004, Ed. Campus
Guedes, Gilleanes T. A. UML Uma Abordagem Prática, Ed Novatec, 2004

Você também pode gostar