Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • W Wiki
  • Project information
    • Project information
    • Activity
    • Labels
    • Planning hierarchy
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 13
    • Issues 13
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Packages & Registries
    • Packages & Registries
    • Package Registry
    • Infrastructure Registry
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • Projeto Focus
  • Wiki
  • Wiki
  • banco_dados

Last edited by Gustavo Santos SIlva Jun 12, 2023
Page history
This is an old version of this page. You can view the most recent version or browse the history.

banco_dados

Home Escopo e Cronograma Processos Design Configuração Arquitetura Código Banco de Dados Qualidade Gestão

Banco de Dados

image

Descrição

O Firebase é uma plataforma de desenvolvimento de aplicativos fornecida pela Google. Ela inclui um banco de dados em tempo real chamado Firebase Realtime Database, que é uma solução NoSQL altamente escalável. O Firebase Realtime Database armazena dados como um grande objeto JSON, permitindo que os desenvolvedores criem aplicativos em tempo real com atualizações automáticas.

Nesta documentação, vamos explorar a estrutura do banco de dados Firebase, juntamente com os schemas para as coleções Objective e User.

Modelagem do Banco de Dados

  • Esquema Entidade-Relacionamento

image

  • Esquema-Lógico

Estrutura do Banco de Dados Firebase

O Firebase Realtime Database organiza os dados em uma estrutura de árvore, onde cada nó é identificado por uma chave exclusiva. Os nós podem conter outros nós e/ou valores primitivos.

/users
  /<user_id>
    name: "Nome do Usuário"
    notificationTime: 12
    dailyGoal: 5
    /objectives
      /<objective_id>
        name: "Nome do Objetivo"
        /phrases
          /<phrase_id>
            text: "Texto da Frase"
    /phrases
      /<phrase_id>
        text: "Texto da Frase"

Na estrutura acima, temos um nó raiz chamado users, que contém nós filhos identificados por IDs de usuário (<user_id>). Cada nó de usuário possui os seguintes atributos:

*name: O nome do usuário (String). *notificationTime: O horário de notificação do usuário (int). *dailyGoal: A meta diária do usuário (int). *objectives: Um nó que armazena os objetivos do usuário. *phrases: Um nó que armazena as frases do usuário.

Dentro do nó objectives, encontramos nós identificados por IDs de objetivo (<objective_id>). Cada nó de objetivo possui os seguintes atributos:

*name: O nome do objetivo (String). *phrases: Um nó que armazena as frases relacionadas ao objetivo.

Dentro do nó phrases, encontramos nós identificados por IDs de frase (<phrase_id>). Cada nó de frase possui o seguinte atributo:

*text: O texto da frase (String).

Schemas das Coleções

A seguir, apresentamos os schemas das classes 'Objective' e 'User' em Dart, que representam a estrutura de dados mencionada acima.

  • Collection

Coleções do Firebase Realtime Database Coleção users Esta coleção armazena os dados dos usuários registrados no aplicativo.

  • Implementação
    • Schemas
Clone repository
  • 1º Encontro com Stakeholder
  • Gerenciamento do Projeto
  • Mocks
  • Planing Poker
  • User Stories
  • arquitetura
  • banco_dados
  • codigo
  • configuracao
  • design
  • escopo e cronograma
  • Home
  • horarios
  • instalacao
  • processos
View All Pages