Exerccio 1: O que o diagrama de Caso de Uso? Quando so utilizados? Para que so utilizados?
Resposta
Apresenta uma viso externa das funcionalidades que o sistema dever oferecer aos
usurios.
Auxilia para a compreenso dos requisitos do sistema, ajudando a especificar, visualizar e
documentar as caractersticas, funes e servios do sistema desejados pelo usurio.
Tenta identificar os tipos de usurios que iro interagir com o sistema, quais papis esses
usurios iro assumir e quais funes um usurio especifico poder requisitar.
O diagrama de Casos de Uso concentra-se em dois itens principais: atores e casos de uso.
Exerccio 2: construa um modelo de casos de uso para a seguinte situao fictcia: "Estamos
criando um servio de entregas. Nossos clientes podem nos requisitar a entrega de volumes.
Alguns volumes so considerados de maior valor por nossos clientes, e, portanto, eles querem ter
tais volumes segurados durante o transporte. Contratamos uma companhia de seguro para
segurar volumes de valor".
Resposta
Aes do Sistema
Restries/Validaes
Fluxo Alternativo
Aes do Ator
Aes do Sistema
Fluxo de Exceo
Aes do Ator
Aes do Sistema
Exerccio 4: Considere a seguinte narrativa do caso de uso Realizar Saque. Identifique os erros
existentes nesta narrativa. Construa uma nova verso deste caso de uso que no contenha os
erros encontrados.
A operao de um caixa eletrnico tem incio a partir de uma sesso em que o cliente seleciona a
opo de realizar saque. O cliente ento escolhe uma quantia a ser retirada, a partir de um
conjunto de opes de quantia disponveis.
O sistema verifica se a conta correspondente tem saldo suficiente para satisfazer a requisio.
Seno, uma mensagem adequada reportada, o que acarreta na execuo da extenso. Se h
dinheiro suficiente, os nmeros da conta e da agncia do cliente so enviados ao banco, que
aprova ou desaprova a transao. Se a transao aprovada, a mquina libera a quantia
correspondente e emite um recibo. Se a transao desaprovada, a extenso Informar Falha
executada.
Exerccio 5: defina o que significa um ator. O que significa um ator estar associado a um caso de
uso por um relacionamento de comunicao?
Resposta
Ator:
Um ator define um papel que pode ser desempenhado por um usurio na sua interao com o
sistema. Um usurio aqui pode ser um indivduo ou um outro sistema.
Um mesmo usurio pode assumir vrios papis ao longo de sua interao com o sistema
Uma lista de atores uma lista de papis e no uma lista de usurios.
Atores esto fora do sistema, e normalmente fora do controle do sistema
Conectando atores e casos de uso:
Os atores e os casos do 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.
Atores se comunicam com o sistema por muitas razes, incluindo:
Pedir alguns dados armazenados no sistema, os quais ento o caso do uso apresenta
ao ator.
Um caso de uso pode necessitar da ajuda de um ator para tomar uma deciso.
Exerccio 7: defina o conceito de requisito. Que tipos de requisitos existem? Explique o que
realizado na fase de levantamento de requisitos de um sistema de informaes.
Um requisito descreve uma condio ou capacidade a que um sistema deve se adaptar; eles
podem ser derivados diretamente da necessidade de um stakeholder (parte interessada) ou
usurio ou extrados de um contrato, padro, especificao, ou outro documento formalmente
imposto. s vezes til expressar tipos de requisitos diferentes:
Requisitos Funcionais:
Aes que o produto deve realizar de modo a fornecer funcionalidades teis para seus usurios.
Estes requisitos definem as razes fundamentais para a existncia do produto.
Exemplo: Software para uma central telefnica servindo a um prdio de apartamentos: O sistema
deve emitir uma conta telefnica por apartamento considerando todas as ligaes realizadas pelo
apartamento no ms, contendo as seguintes informaes:...
Requisitos no funcionais:
So propriedades ou qualidades que o produto deve possuir
Estes requisitos normalmente so relacionados funcionalidade do produto, ou seja, uma vez que
saibamos o que o sistema deve fazer, podemos determinar como ele ir se comportar e que
caractersticas de qualidade ele deve apresentar (por exemplo, performance e nvel de segurana
desejado)
Exemplo: Automvel
acelerar, mudar marcha (requisitos funcionais)
conforto, cor do painel de instrumentos (requisitos no funcionais)
Exerccio 8: que tipo de relacionamento possvel entre um ator e um caso de uso? Que tipo de
relacionamento pode haver entre casos de uso? Que tipo de relacionamento pode haver entre
atores?
A tabela a seguir exibe as alternativas possveis entre relacionamentos entre atores e casos de uso
em um diagrama de casos de uso. As clulas da tabela com um X indicam possibilidade. As clulas
no preenchidas indicam impossibilidade.
Entre
Entre casos Entre ator
atores
de uso
e caso de
uso
Comunica
X
o
Incluso
X
Extenso
X
Generaliza
X
X
o
Exerccio 9: descreva a(s) diferena(s) entre os relacionamentos de incluso, de extenso e de
herana?
O relacionamento Include:
1. Um relacionamento include permite extrair sees comuns da descrio de dois ou mais casos
e coloc-las em um caso de uso separado a partir do qual elas podem ser referenciadas. Cada
caso de uso original passa a ter ento um relacionamento includes com o novo caso de uso;
O relacionamento Extend:
como: adicionar o envio de e-mails por voz a um servio telefnico convencional existente. til
pensar no relacionamento de extenso como um relacionamento de acrscimo, uma vez que ele
sempre acrescenta funcionalidade a um caso de uso existente. A caracterstica marcante do caso
de uso que estende um caso de uso original que ele no demanda nenhuma alterao no caso de
uso original. Isto significa que o caso de uso estendido deve ser capaz de se virar sozinho. Ele
deve ser completo, sem qualquer necessidade de extenses a fim de gerar valor.
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.
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.
Em contraste ao relacionamento include, um relacionamento extend conhece necessariamente o
caso de uso que ele estende.
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.
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.
Generalizao entre Casos de Uso
A generalizao entre casos de uso nos permite criar descries genricas de comportamento que
podemos especializar para satisfazer necessidades particulares.
Cancelar Reserva
Sumrio: Este caso de uso possibilita a um usurio cancelar uma reserva. O prprio usurio,
usando a Internet, registra o cancelamento.
Ator Primrio: Usurio
Pr-Condies: O Usurio cadastrado na Biblioteca. O Usurio j foi autenticado pelo Sistema.
Fluxo Principal:
1. O usurio solicita sua lista de reservas
2. O sistema apresenta a lista de reservas
3. O usurio seleciona a reserva a ser cancelada
4. O sistema pede a confirmao do usurio para cancelar a reserva
5. O usurio confirma o cancelamento
6. O sistema cancela a reserva
7. O sistema mostra para o usurio a lista de reservas atualizada e oferece ao usurio a opo
de efetuar novo cancelamento ou encerrar o caso de uso.
Fluxo Alternativo (2): O usurio no tem reservas em seu nome
a. O sistema reporta uma mensagem apropriada
b. O caso de uso se encerra
Fluxo Alternativo (5): o usurio no confirma o cancelamento da reserva
a. Volta para o passo 2
Devolver Cpia
Sumrio: O usurio devolve um exemplar em seu poder
Ator Primrio: Bibliotecria
Pr-Condies: Bibliotecria identificada. A Bibliotecria tem em mos o exemplar a ser devolvido.
Fluxo Principal:
1. A bibliotecria entra com o cdigo do exemplar
2. O sistema apresenta o registro do emprstimo
3. A bibliotecria confirma a devoluo
4. O sistema registra a devoluo
5. O sistema verifica se houve atraso na devoluo
6. O sistema verifica a existncia de reservas agendadas para o exemplar devolvido
7. O caso de uso se encerra
Fluxo Alternativo (5): devoluo em atraso
a. O sistema calcula o nmero de dias em atraso e a multa a ser paga (RN04)
b. O sistema reporta uma mensagem apropriada
c. A bibliotecria registra o pagamento da multa
d. Volta ao passo 6
Fluxo Alternativo (6): existem reservas agendadas para o exemplar devolvido
a. Executa o Caso de Uso Efetivar Reserva Agendada
b. Volta para o passo 7
Glossrio
Emprstimo em Aberto: emprstimo vencido e no devolvido
Dados do Emprstimo: ttulo do livro, cdigo do exemplar, data do emprstimo, data da
devoluo
Regras de Negcio
RN01: Um Usurio no pode ter mais de duas reservas em aberto em seu nome.
RN02: O prazo mximo para a retirada de um livro reservado de dois dias.
RN03: Um Usurio pode ter no mximo trs exemplares em seu poder num determinado instante
de tempo.
RN04: A multa a ser aplicada de R$ 1,00 por dia til de atraso.
Exerccio 11: considere a seguinte declarao obtida de um gerente de uma empresa que
comercializa livros por correio durante o levantamento de requisitos para construo de um
sistema de software: "Aps a ordem de compra do cliente ter sido registrada, o vendedor envia
uma requisio ao depsito com detalhes da ordem de compra." Quais atores em potencial podem
ser identificados a partir desse texto?
Exerccio 14: Considere o diagrama de classes a seguir, que exibe uma classe associativa entre as
classes Pessoa e Empresa. Crie um diagrama de classes equivalente ao fornecido abaixo, mas sem
utilizar uma classe associativa.
Resposta:
Exerccio 15: Construa um diagrama de classes inicial para a seguinte situao: Pacotes so
enviados de uma localidade a outra. Pacotes tm um peso especfico. Localidades so
caracterizadas pelas facilidades de transporte (por exemplo, ferrovirias, aeroportos e autoestradas). Algumas localidades so vizinhas, isto , existe uma rota direta de transporte entre tais
localidades. A rota de transporte entre as localidades tem um certo comprimento (a distncia entre
as localidades). Trens, avies e caminhes so usados para o transporte de pacotes. Cada um
destes meios de transporte pode suportar uma carga mxima de peso. A cada momento, durante o
seu transporte, necessrio saber a posio (localidade) de cada pacote. Tambm necessrio
manter o controle de que meio de transporte est sendo utilizado em cada parte da rota para um
certo pacote.
Resposta:
Restries:
Uma rota liga facilidades de um mesmo tipo
Trens so usados em rotas entre ferrovias
Avies so usados em rotas entre aeroportos
Caminhes so usados em rodovias
Exerccio 16: Considere o seguinte discurso relativo a um sistema de partidas de tnis: "Num
torneio de tnis, cada partida jogada entre 2 jogadores. Pretende-se manter informao sobre o
nome e idade dos jogadores; data da partida e atribuio dos jogadores s partidas. O mximo de
partidas que um jogador poder realizar 6 e o mnimo 1. Desenhe o diagrama de classes
correspondente.
Resposta:
Exerccio 17: Identifique classes e/ou relacionamentos a partir das seguintes regras do negcio:
a) Pedidos so compostos de vrios itens de pedido.
b) Um item de pedido diz respeito a um e exatamente um produto.
c) Um pedido pode conter at 20 itens.