Escolar Documentos
Profissional Documentos
Cultura Documentos
2 – UFC Russas
Nome:
Matrícula:
1. Considere o cenário onde você empreendeu em uma solução que provê, via rede,
sugestões de investimentos. Cada cliente requisita uma sugestão passando o próprio
perfil (conservador, moderado ou agressivo), o quanto investirá e a taxa de retorno
desejada. O seu sistema retornará uma carteira de possibilidades de investimento,
indicando a mais adequada ao perfil informado, para que se alcance a taxa de retorno
em um tempo informado na resposta. Além disso, algumas outras possibilidades são
disponibilizadas na resposta. Com esse cenário acima fornecido, responda às questões
abaixo:
a. Com o teorema CAP em mente, quais características você escolhe para o seu
sistema? Justifique a sua escolha dizendo como ela impacta no funcionamento
da aplicação.
b. Dadas características do CAP que você escolheu anteriormente, escolha um
modelo de comportamento para: rede, nós e tempo. Justifique as escolhas
para a interação interna dos componentes do sistema e para a interação com
os clientes.
Cenário: Vivemos uma situação de pandemia onde o mundo esperou pela criação de
vacinas, que nos permitiu caminhar novamente em direção à normalidade. Durante
esse processo aprendemos que:
a. Vacinas devem ser armazenadas em contêineres que as mantém em uma
temperatura adequada.
b. As vacinas passam por diversos lugares, antes de serem aplicadas em uma
pessoa: fábrica, centrais de distribuição, centrais de armazenamento, postos
de vacinação.
c. Vacinas são falsificadas por bandidos.
d. Há uma necessidade imensa de doses, que devem ser produzidas em várias
fábricas, em vários lugares do mundo, por várias empresas diferentes.
Portanto, o desafio foi organizar sistematicamente a interação dos fabricantes com
seus parceiros comerciais, afim de entregar doses de vacinas autênticas e dentro dos
padrões de qualidade para os governos clientes. Assim, projete um sistema que
permita monitorar o processo de compra e distribuição das vacinas, considerando as
restrições apresentadas acima. Importante lembrar de colocar nos diagramas as
entidades que interagem com o sistema, os componentes e a interação entre eles.
3. Modifique o código abaixo para que ele deixe de ser sequencial e converta-se em
concorrente. Use co-rotinas e canais.
Sequencial Concorrente
suspend fun getMessages(): List<Msg> {
val msgs = mutableListOf<Msg>()
val firstMsg = api.getMsg()
val secondMsg = api.getMsg()
val thirdMsg = api.getMsg()
msgs.add(firstMsg)
msgs.add(secondMsg)
msgs.add(thirdMsg)
return msgs
}