Pular para conteúdo

Dicionário de dados

Introdução

O dicionário de dados é um recurso fundamental para documentar de forma precisa os elementos que compõem um conjunto de dados dentro de um projeto ou sistema. Ele reúne nomes, atributos e descrições que ajudam a compreender o conteúdo, o uso e a estrutura dos dados envolvidos.

Seu principal objetivo é esclarecer o significado de cada variável presente em uma planilha ou banco de dados, indicando, por exemplo, o nome exato da variável, uma versão abreviada mais amigável, os valores permitidos ou esperados, além de descrições que contextualizam seu papel no sistema.

Metodologia

A construção do dicionário de dados seguiu os seguintes passos:

  • Levantamento e listagem de todos os elementos de dados utilizados utilizando Miro e Lucidchart.
  • Definição clara do propósito e do uso de cada elemento dentro do contexto do projeto.
  • Especificação do tipo de dado e tamanho correspondente, especialmente para colunas de tabelas.
  • Indicação de restrições aplicáveis, como a definição de chaves primárias, chaves estrangeiras ou outras regras de integridade.

Dicionário de Dados

Tabela: Consulta_Personagem

Descrição: Tabela que armazena o id de todos os personagens para que seja possível consultar de qual tipo o personagem é.

Nome Descrição Tipo de dado Tamanho Restrições de domínio
id_personagem Identificador único do personagem serial PK
tipo_personagem Tipo que descreve em qual tabela estão os dados específicos do personagem. Pode ser "AP", "J" e "P" varchar 2 Not Null

Tabela: Agente_Penitenciario

Descrição: Tabela que armazena todos os personagens do tipo "AP", ou seja, agentes penitenciários.

Nome Descrição Tipo de dado Tamanho Restrições de domínio
id_personagem Identificador único do Agente Penitenciário int FK, Unique, Not Null
id_sala Identificador da sala onde o personagem se encontra atualmente int FK, Not Null
nome Nome do personagem varchar 50 Default
velocidade Velocidade máxima do personagem int Default
nivel_de_perigo Intervalo de 0 a 10 que indica o quão durão é o agente penitenciário int Default
nivel_de_alerta Intervalo de 0 a 10 que representa o nível de alerta e atenção do agente penitenciário int Default
corrupto Valor booleano que classifica um agente penitenciário como corrupto ou não boolean Default
preco Preço que o policial cobra por vantagens na prisão int Default
cargo Cargo que o agente penitenciário possui dentro da prisão varchar 255 Default

Tabela: Jogador

Descrição: Tabela que armazena o personagem do tipo "J", ou seja, o jogador.

Nome Descrição Tipo de dado Tamanho Restrições de domínio
id_personagem Identificador único do jogador int FK, Unique, Not Null
id_sala Identificador da sala onde o personagem se encontra atualmente int FK, Not Null
id_inventario Identificador único do inventário pessoal int FK, Not Null
nome_missao Identificador único da missão varchar 255 FK
titulo_objetivo Objetivo principal escolhido pelo jogador varchar 255 FK
nome_gangue Identificador da gangue varchar 50 FK
id_cela Identificador da cela do jogador int FK
nome Nome do personagem varchar 50 Not Null
dificuldade_jogo Dificuldade do jogo escolhida pelo player varchar 1 Default
modificador_equipamento Modificador numérico vindo dos itens que o ajuda a não ser pego int Default
vida Quantidade de vida do jogador (0 a 100) int Default
qtded_recurso Quantidade monetária do jogador (cigarro) int Default
qtded_captura Quantidade de vezes que o jogador foi capturado por um agente penitenciário int Default

Tabela: Agente_Penitenciario_Jogador

Descrição: Tabela que armazena as capturas que os agentes penitenciários realizaram com o jogador.

Nome Descrição Tipo de dado Tamanho Restrições de domínio
id_captura Identificador único da captura serial PK
id_personagem_jogador Identificador único do jogador int FK
id_personagem_agente_penitenciario Identificador único do agente penitenciário int FK

Tabela: Prisioneiro

Descrição: Tabela que armazena todos os personagens do tipo "P", ou seja, prisioneiros.

Nome Descrição Tipo de dado Tamanho Restrições de domínio
id_personagem Identificador único do prisioneiro na tabela genérica int FK, Unique, Not Null
id_sala Identificador da sala onde o personagem se encontra int FK, Not Null
nome_gangue Identificador da gangue que o prisioneiro participa varchar 50 FK, Not Null
nome Nome do personagem varchar 50 Not Null
velocidade Velocidade máxima do personagem int Default
vida Quantidade de vida que o Prisioneiro possui. É um intervalo que pode variar de 0 a 100. int Default
crime Crime cometido pelo prisioneiro varchar 255 Default

Tabela: Gangue

Descrição: Tabela que armazena todas as gangues da penitenciária.

Nome Descrição Tipo de dado Tamanho Restrições de domínio
nome_gangue Nome que identifica a gangue varchar 50 PK
descricao Texto que descreve a gangue e sua história varchar 1000 Not Null
qtdd_membros Quantidade de membros que participam daquela gangue int Default
qtdd_recursos_gangue Quantidade monetária que a gangue possui. Na narrativa será nomeada como cigarro. int Default

Tabela: Sala

Descrição: Tabela que lista todas as salas da penitenciária
Observações: A sala com o menor id é o checkpoint do usuário, ou seja, sua cela

Nome Descrição Tipo de dado Tamanho Restrições de domínio
id_sala Identificador único da sala int PK
id_inventario Identificador único do inventário. Pode ser um inventário de sala ou o inventário pessoal do jogador. int FK, Not Null
norte Identificador da sala que fica ao norte da sala atual. int FK, Default
sul Identificador da sala que fica ao sul da sala atual. int FK, Default
leste Identificador da sala que fica ao leste da sala atual. int FK, Default
oeste Identificador da sala que fica ao oeste da sala atual. int FK, Default
nome Nome da sala varchar 50 Not Null
descricao Texto que descreve a sala varchar 1000 Not Null
nivel_de_perigo Nível de perígo da sala. É um intervalo de 0 a 10 que informa a probabilidade do usuário ser capturado int
bloqueado Valor booleano que informa se a sala está com acesso bloqueado boolean Default

Tabela: Missao

Descrição: Tabela que apresenta todas as missões jogáveis do game, com suas descrições e indicadores se foram ou não finalizadas.

Nome Descrição Tipo de dado Tamanho Restrições de domínio
nome_missao Identificador único da missão varchar 255 PK
descricao Características gerais da missão e seus objetivos varchar 1000 Not Null
status Indica se a missão foi concluída (true) ou não (false) boolean Default

Tabela: Inventario

Descrição: Tabela que lista as características dos inventários do jogo

Nome Descrição Tipo de dado Tamanho Restrições de domínio
id_inventario Identificador único do inventário. Pode ser um inventário de sala ou o inventário pessoal do jogador. int PK
qtd_itens Quantidade máxima de itens que o inventário pode armazenar int Not Null
is_full Booleano que informa se o inventário está cheio ou não boolean Default

Tabela: Instancia_Item

Descrição: Tabela que lista todas as instâncias de itens que há no jogo

Nome Descrição Tipo de dado Tamanho Restrições de domínio
id_instancia Identificador único da instância do item int PK
id_inventario Identificador único do inventário onde a instância se encontra. Pode ser um inventário de sala ou o inventário pessoal do jogador. int FK, Not Null
nome_item Nome que identifica de qual item é a instância varchar 50 FK
nivel_de_gasto Quantidade de vezes que essa instância já foi utilizada int Default

Descrição: Esta tabela lista todos os diálogos possíveis presentes no game.

Nome Descrição Tipo de dado Tamanho Restrições de domínio
id_dialogo Identificador único do diálogo int PK
id_personagem Identificador estrangeiro que indica a qual personagem este diálogo pertence int FK
nome_missao Identificador único da missão varchar 255 FK
texto Texto referente ao diálogo varchar 500 Not Null
ordem Ordem em que o diálogo está em relação a todos os outros int Not Null

Tabela: Objetivo_Principal

Descrição: Esta tabela apresenta todos os objetivos pelos quais o jogador pode seguir ao longo do game.

Nome Descrição Tipo de dado Tamanho Restrições de domínio
titulo_objetivo Identificador único do objetivo principal varchar 255 PK
descricao Texto que descreve e caracteriza cada objetivo principal pelo qual o jogador pode optar varchar 1000 Not Null

Tabela: Item

Descrição: Tabela que armazena todos os itens disponíveis no jogo.

Nome Descrição Tipo de dado Tamanho Restrições de domínio
nome_item Identificador único do item varchar 50 PK
nome_missao Identificador único da missão varchar 255 FK, Not Null
descricao Texto que descreve as características do item varchar 500 Not Null
durabilidade Quantidade de vezes que o item pode ser usado int Default
pode_ver_vendido Indicador que informa se o item pode ou não ser vendido na loja boolean Default
utilidade Utilidade que o item oferece ao jogador, caso seja uma ferramenta varchar 500 Default
beneficio Benefício que o item oferece ao jogador, caso o item esteja equipado varchar 500 Default

Tabela: Loja

Descrição: Tabela que armazena preços e itens que são vendidos pelas gangues.

Nome Descrição Tipo de dado Tamanho Restrições de domínio
nome_gangue Identificador da gangue que é dona da loja int FK, Unique, Not Null
nome_item Identificador do item vendido varchar 100 FK, Not Null
preco Preço do item da loja int Not Null

Tabela: Item_Loja

Descrição: Tabela que armazena as compras realizadas ao longo do jogo.

Nome Descrição Tipo de dado Tamanho Restrições de domínio
id_compra Identificador único da compra int PK, Not Null
nome_gangue Identificador da gangue que vendeu o item varchar 50 FK, Not Null
nome_item Identificador do item varchar 100 FK, Not Null

Tabela: Missao_Sala

Descrição: Tabela relaciona as salas que só podem ser acessadas depois que alguma missão for cumprida.

Nome Descrição Tipo de dado Tamanho Restrições de domínio
nome_missao Identificador único da missão varchar 255 FK
id_sala Identificador único da sala int FK

Tabela: Objetivo_Principal_Missao

Descrição: Esta tabela apresenta a relação entre os objetivos que o jogador pode seguir com as missões associadas a cada objetivo.

Nome Descrição Tipo de dado Tamanho Restrições de domínio
nome_missao Identificador único da missão relacionada ao objetivo principal varchar 255 FK, Not Null
titulo_objetivo Identificador único do objetivo principal relacionado à missão varchar 255 FK, Not Null
ordem Identificador da ordem das missões INT Not Null

Tabela: Modificador_dificuldade

Descrição: Esta tabela guarda as informações das dificuldades que são possíveis para se jogar e seus respectivos modificadores.

Nome Descrição Tipo de dado Tamanho Restrições de domínio
tag_dificuldade Identificador único da dificuldade varchar 1 PK, Not Null
titulo_objetivo Identificador único do objetivo principal relacionado à missão int Not Null

📑 Histórico de Versões

Versão Data Descrição Autor
1.0 21/04/2025 Adição do texto do dicionário de dados Mayara Alves
1.1 30/05/2025 Criação do Dicionário de Dados Maria Alice e Marllon Cardoso
1.2 09/05/2025 Adiciona tabela ObjetivoPrincipalMissao Maria Alice
2.0 13/06/2025 Corrige dicionário de dados após criação das tabelas Maria Alice
3.0 30/06/2025 Adiciona norte, sul, leste e oeste na tabela de salas, e cela do jogador Maria Alice
4.0 07/07/2025 Retira velocidade e adiciona dificuldade_jogo e modificador_equipamento na tabela de Jogador, adiciona tabela Modificador_dificuldade Marllon Cardoso
5.0 07/07/2025 Atualiza modelo relaciona Maria Alice