Banco de Dados
O projeto foi desenvolvido utilizando o BaaS (BackEnd as a Service) FIREBASE. O produto é fornecido pela Google Cloud e, através de um conjunto de serviços, gerencia toda parte de banco de dados da aplicação bem como a camada de segurança e infraestrutura. Dentre os serviços do Firebase, utilizamos o Cloud Firestore que organiza/armazena os dados em coleções e documentos, assim como modelos NoSQL (orientado a documentos).
Modelagem Conceitual
Embora se trate de um modelo não-relacional (NoSQL) utilizamos uma representação de nível conceitual (Entidade-Relacionamento) para melhor ilustrar o fluxo de dados da aplicação. PKs e FKs não estão representadas nesse modelo.
Database
Modelo de dados é representado por 2 coleções (user e trip). São atribuidos aos documentos seguindo o exemplo abaixo:
`{
"childrenName": "Maria Joaquina",
"childrenGender": "Feminino",
"childrenBirthday": "
"city": "Porto Alegre",
"responsibleName": "João Pedro",
"trips": [{
createDate: 27 de maio de 2020 14:23:54 UTC-3,
aircraft: "Passado",
thoughts: "Nossa, que legal que eu fiz...",
island: "jealous",
behaviour: "Minha atitude em relação a este comportamento foi...",
autoAnalysis: false,
deleted: false
}]
"deleted": "false",
}`