1. Considere o exemplo da tabela Hospital apresentada em aula, com atributos sobre Paciente
(características físicas) e diagnostico (sintomas e diagnostico – doente ou não). Descreva
rapidamente um exemplo de cenário (conjunto de aplicações) para o Sistema, que gere a
necessidade de ter dois agregados: Paciente e Diagnostico.
O cenário proposto consiste em um aplicativo que lida com o processo de consulta com o clinico
geral de qualquer paciente, o cenário abrange o ato de fazer a reserva para a consulta, a consulta
mesma com o médico e termina com o diagnóstico (para o qual o médico leva em consideração
o histórico de doenças congênitas pré-existentes) e a atribuição do tratamento ao paciente.
Uma vez que o paciente assiste à consulta e o médico faz as revisões correspondentes, registra
as informações de seus sinais vitais, sintomas e determina o estado disso; Essas informações
são armazenadas em um objeto da classe Diagnóstico, que também adiciona informações sobre
os tratamentos que devem ser aplicados ao paciente, pois pode haver vários tratamentos em
uma única consulta, na classe de tratamento existe um campo que relaciona os tratamentos ao
diagnóstico .
b) Redefina esse Diagrama, considerando uma alternativa de acesso aos dados,
considerando a necessidade de somente um agregado: Paciente.
Nesse caso, o aplicativo teria apenas a funcionalidade de fazer reservas para as consultas
solicitadas pelo paciente. Permanecendo da seguinte maneira:
2. Considere o cenário de somente um agregado chamado Paciente, que agrega dados dos
Paciente e dos seus Diagnósticos. Discuta rapidamente como esse agregado poderia ser
representado usando os modelos de Chave-Valor/Documentos e Família de Colunas de
Banco de Dados.
O cenário principal nesse caso seria poder acessar todos os dados do paciente, uma vez que
temos um único agregado, a classe do paciente é um contêiner de todas as outras classes, que
por sua vez agrupam as classes com as quais estão relacionados. A representação do modelo
pode ser vista abaixo:
No caso de famílias de colunas, como temos apenas um agregado, teríamos uma única família
de dados, a primeira coluna contém a designação dos atributos e a coluna seguinte contém as
informações correspondentes ao objeto selecionado, ou seja, devido a isso podemos acessar
todas as informações de um objeto específico com uma única operação.
nome "José"
cpf 45520245697
rg 486521548
Paciente ...............
Doença
Doença, tempo..., edade..., hereditário
congenita
DIAG001 temperatura, pressão, sintomas, ...
Diagnósticos DIAG002 temperatura, pressão, sintomas, ...
DIAG003 temperatura, pressão, sintomas, ...
3. Considere o cenário que gere a necessidade de ter dois agregados: Paciente e Diagnósticos.
Represente o modelo de acesso dessas estruturas utilizando banco de dados Famílias de
Colunas.
nome "José"
cpf 45520245697
Paciente rg 486521548
...............
A primeira fase do Map-Reduce filtra todos os pacientes para obter apenas aqueles que estão
doentes; para isso, é necessário aceder a os objetos da classe “Diagnóstico” relacionados aos
objetos da classe de pacientes, e consultamos o atributo de estado de saúde para identificar os
pacientes doentes.
A segunda fase conta o número de pacientes com status doente. O diagrama a seguir ilustra o
processo: