Você está na página 1de 7

1.

  Defina  acoplamento  e  coesão.  Um  sistema  de  qualidade  possui  ​ baixo 


(alto/baixo) grau de acoplamento e ​ alto​  (alto/baixo) grau de coesão. 
 
Acoplamento:​  medida da dependência entre os módulos 
Coesão: medida da força de associação dos elementos dentro de um módulo com o 
intuito de prover uma única função. 
 
 
2. Como você define o princípio de ocultação de informações? 
 
O  princípio  da  ocultação  de  informações  sugere  que  cada  módulo  deve  conter 
decisões de projeto que ele oculta dos outros módulos. 
 
 
3.  Descrever  o   caso  de  uso  essencial  (sem   detalhes  de  interface  gráfica)  da 
interação  de um usuário com  o  sistema de um caixa eletrônico  para efetuar  a 
retirada de dinheiro. 
 
1. O cliente insere o cartão no caixa eletrônico 
2. O sistema solicita senha do cartão 
3. O sistema apresenta a tela inicial ao cliente 
4. O cliente seleciona a opção de “retirada” 
5. O sistema solicita valor do saque 
6. O cliente digita valor e clica em confirmar 
7. O sistema solicita os dois últimos dias do ano de nascimento do cliente 
8. O cliente insere os dados 
9. O sistema aprova o saque  
10. Fim do caso de uso 
 
4.  Quando  devo  utilizar  caso  de  uso  de  inclusão?  E  o  caso  de  uso  de 
extensão?  
 
Use  estender  quando:  por  algum  motivo  for  indesejável  modificar  o  caso  de   uso 
base. 
 
Use  inclusão  quando:  você  estiver  se  repetindo  em  dois  ou  mais  casos  de  uso 
separados e quiser evitar a repetição. 
você  quiser  decompor  um  caso  de  uso  demasiadamente  longo  em  subunidades, 
para melhorar a compreensão. 
 
 
5. Preencha com verdadeiro ou falso as afirmativas abaixo:  
 
(​F​
)  É  possível  relacionar  dois  atores  utilizando  um  relacionamento  de <<include>> 
ou <<extend>>.  
V​
(​)  Um  relacionamento  com  o esteriótipo de  <<extend>> indica que  o  caso  de uso 
base poderá  incorporar o comportamento de outro. O caso de uso estendido enviará 
o seu comportamento ao caso de uso base.  

F​
(​)  Um  dispositivo  de Hardware  não pode  ser considerado um  ator no  diagrama de 
caso de uso.  

V​
(​)  Um  banco  de  dados  de  um  sistema  externo  pode  ser  considerado  um  ator  no 
diagrama de caso de uso se ele enviar ou receber informações de um caso de uso  

F​
(​)  O  caso  de  uso  não  é  capaz  de  representar  os  requisitos  funcionais  de  um 
sistema de informação  

F​
(​)  O  diagrama  de  caso  de  uso não  pode  ser  utilizado  para  estabelecer o contrato 
entre o cliente, analistas e desenvolvedores, daquilo que deverá ser implementado e 
construído por eles.  

F​
(​)  <<include>>  é  uma relação  de dependência  que  não obriga  o caso de uso base 
a conter o comportamento de um outro caso de uso.  

V​
(​)  Atores  são  agentes  que  interagem  com  os  casos  de  uso.  Eles  podem  ser 
pessoas, departamentos e sistemas de software.  

F​
(​)  Atores  interagem  com  casos  de  uso  por  meio  de  relacionamentos  com 
esteriótipo de <<extend>>  

V​
(​)  Um  caso  de  uso  é   um  processo de  negócio  relativamente longo,  com  começo, 
meio e fim.  

F​
(​ )  Um  diagrama  de  caso  de  uso  tem  por  objetivo  representar  como  uma 
funcionalidade  será  implementada  e  não  o  que  ela  representa  para  o  sistema  de 
informação.  

V​
(​)  O  diagrama  de  caso  de  uso  pode  ser  utilizado  como  uma  ponte  para   o 
documento de requisitos e a fase de análise.  

F​
(​)  Especialização  é o nome que se dá à criação de objetos partindo de uma classe. 
Por  exemplo,  uma  especialização  da  classe  professor pode  resultar na  Prof.  Maria 
Augusta.  

V​
(​) Diagramas de casos de uso servem para registrar requisitos de um sistema.  

V​
(​)  Associação  é  o  meio  empregado  para  registrar  o  relacionamento  entre 
instâncias de classes.  

V​
(​)  Em  uma  composição,  quando  o  elemento  que  agrega  é  criado,  as  partes  ou 
elementos  agregados  são  criados.  Quando  o  elemento que agrega  é  destruído,  os 
elementos agregados também são destruídos. 

 
 
 
6.  Observe  o  diagrama  de caso de uso abaixo considerando principalmente os 
relacionamentos entre os casos de uso. 
 

 
 
a) Descreva as funcionalidades que o sistema é capaz de realizar.  
 
O  sistema  proposto  permite  que  um  usuário  posso  receber  pagamentos,  realizar  
venda de  produtos e realizar  compra  de  produtos. O  gerente poderá  emitir  relatório 
de vendas e atualizar comissão das vendas. 
 
 
b)  Aponte  os  erros  que  você  conseguir  encontrar.   Podem  ocorrer  erros 
semânticos  (relações  erradas  entre  os elementos do caso de uso), como erros 
de lógica de negócio. 
 
Em  ‘Receber  pagamentos’ não  deveria ter  um include  para  ‘Atribuir desconto’, pois 
nem todo pagamento terá desconto. 
 
Em  ‘relaizar  venda  de  produtos’  e  ‘realizar  compra  de  produtos’  os  relacionamento 
com  ‘atualizar  estoque’  deveriam  ser  do  tipo  include,  pois  é  obrigatório  manter  o 
estoque atualizado ao realizar qualquer uma dessas funções. 
 
Em  ‘atualizar  comissão de venda’ está incorreto o tipo de ligação com o caso de uso 
‘atualizar  estoque’,  este  tipo  de  ligação   é  feito  entre  ator e caso  de  uso,  não  entre 
casos  de  uso.  A   ligação  entre  esses  dois  casos  de  uso  é  incorreta,  não   há 
necessidade de atualizar estoque após atualizar comissão de venda. 
 
Os nomes dos casos de uso devem estar no singular. 
 
No  relacionamento  de extensão o  caso  de  uso de extensão aponta para o  caso  de 
uso base. 
 
É  incorreto  o  relacionamento  do  vendedor  como  caso  de  uso  ‘realizar  compra  de 
produtos’, este deve ser relacionado com o gerente. 
  
 
c)  Construa  um novo diagrama de caso de uso corrigindo os erros semânticos 
e de lógica de negócio. 
 
 

   
8. O que é a responsabilidade de um objeto? 
 
Notificar aos objetos de controle os eventos gerados externamente ao sistema.  
Notificar aos atores o resultado de interações entre os objetos interno. 
 
 
9.  Quais  são  as  diferenças  entre  os  diagramas  de  sequência  e  de 
comunicação?  
 
● Diagrama de sequência 
○ Substituem o sistema pelos objetos do modelo de domínio. 
○ Mostra as interações entre os objetos do sistema. 
○ Apresenta as mensagens ordenadas no tempo. 
○ A  visualização  fica  prejudicada  a  medida  que  o  número  de  objetos 
cresce. 
○ Disposição dos objetos em uma dimensão. 
 
● Diagrama de comunicação: 
○ Apresenta as mensagens enfatizando os relacionamentos. 
○ Difícil ver a sequência de mensagens. 
○ Melhor utilização do espaço. 
○ Disposição dos objetos em duas dimensões. 
 
 
10. O que é uma ligação (link) no diagrama de comunicação? 
 
É uma ligação entre dois objetos envolvidos em um processo (vínculo). 
 
 
11.  É necessário enumerar as mensagens nos diagramas de sequência? E nos 
de comunicação? Por quê? 
 
Nos  diagramas  de  sequência  sim,  pois  este  tipo  de  diagrama  mostra  o 
relacionamento entre os objetos e apresenta as mensagens ordenadas no tempo. 
 
Nos  diagramas  de  comunicação  não,  pois este tipo de diagrama apenas enfatiza os 
relacionamentos, não há uma preocupação com a ordem das mensagens. 
 
 
 
   
12.  Na notação  UML,  como se representa  uma  mensagem com iteração e uma 
mensagem com condição nos diagramas de interação? 
 

 
 
13.  No diagrama de  sequência, como é chamada a linha tracejada que parte da 
representação do objeto? 
 
Linha de vida 
 
 
14.  Qual  a  relação  entre  os  diagramas  de  interação,  classes,  casos  de  uso e  
fluxos  de  casos  de  uso?  Como  a  informação   de  um  diagrama  ou  artefato  é 
usada por outro?  
 
 
 
   
15. Observe o caso de uso “comprar livro”  
 
● O cliente digita parte do nome do livro desejado  
● O  sistema mostra os livros cujo título contém todas as palavras digitadas pelo 
usuário, incluindo o título, autor, preço e ícone de compra, um livro por linha  
● O cliente clica no ícone de compra do livro que deseja comprar  
● O sistema acrescenta o livro selecionado ao carrinho de compras do usuário  
 
 
A partir do caso de uso “comprar livro” faça:  
 
a.  Crie  o  modelo  de  classes  de  domínio  (modelagem  conceitual)  usando  a 
notação UML. Mostre as classes conceituais, seus atributos e associações. 
 
  
 
b.  Crie  o  diagrama  de  sequência  do sistema  mostrando  as interações do  ator 
com o sistema. 
 
  
 
c. Escolha uma das operações iniciadas pelo ator e defina seu contrato.  
 
 

Você também pode gostar