Escolar Documentos
Profissional Documentos
Cultura Documentos
VERSÃO 01 - 08/07/2013
Página 2 de 29
MANUAL DE NORMAS E PADRÕES DE MODELAGEM DE DADOS
Capítulo 1. INTRODUÇÃO
Este manual tem por finalidade divulgar os objetivos, a metodologia, políticas, normas e padrões
relativos ao processo de Administração e Modelagem de Dados.
Visa facilitar o trabalho dos profissionais de Informática, possibilitando um entendimento mais rápido
do processo de Modelagem e dos Modelos de Dados existentes na Empresa.
Página 3 de 29
MANUAL DE NORMAS E PADRÕES DE MODELAGEM DE DADOS
1. Objetivos
São os seguintes os objetivos que determinam a necessidade da função de Administração de Dados:
Implantar a filosofia de que os dados pertencem à empresa, não sendo propriedade de Áreas
ou Sistemas. Os Sistemas devem ser adaptados para evolução nas estruturas de dados para
atendimento de novas necessidades.
3. Premissas
O conhecimento, a organização e a gerência dos dados corporativos são elementos essenciais
para que as empresas atinjam seus objetivos estratégicos.
Os dados são o alicerce dos sistemas de informação, os quais são basicamente, funções
atuando sobre os dados.
Página 5 de 29
MANUAL DE NORMAS E PADRÕES DE MODELAGEM DE DADOS
Capítulo 3. POLÍTICAS
Esse capítulo tem objetivo de descrever diretrizes gerais para o processo de modelagem de dados.
Modelos Sistêmicos:
Esses modelos atendem a necessidade de um sistema específico e são criados pelos Analistas de
Sistemas, cabendo à Administração de Dados apoiar o processo de modelagem, garantindo a
correção dos modelos e sua aderência aos padrões. Normalmente são objetos de controle ou
dados de processos operacionais de utilização do sistema.
Pacotes:
Estruturas de dados fornecidas pelo fabricante do pacote e não integrado às estruturas
desenvolvidas para a Leader.
Visão lingüística através do repositório que contenha a definição detalhada e clara dos
elementos do modelo.
O modelo conceitual puro não será guardado, pode ser efetuado nas primeiras fases do
desenvolvimento (Estudo Preliminar), para levantamento de informações que são posteriormente
refinadas. O objetivo é não aumentar a burocracia na manutenção da documentação, levando-se o
modelo lógico o mais próximo da tecnologia.
Página 6 de 29
MANUAL DE NORMAS E PADRÕES DE MODELAGEM DE DADOS
O modelo físico deve, em um primeiro momento, ser totalmente derivado do Modelo Lógico e, se
necessário, desnormalizado de acordo com os recursos tecnológicos.
Visando não poluir o modelo lógico facilitando seu entendimento, as tabelas auxiliares criadas com
único objetivo de atender a tecnologia aumentando performance ou a facilidade de programação e
que não contem dados que serão guardados, não devem ter entidade correspondente.
A "sequence" ou “id” do Banco de dados como chave primária não deve ser utilizada exceto nas
seguintes situações:
A entidade não possui uma chave natural;
Preservação do histórico do dado na possível alteração da composição da chave natural;
Problemas técnicos, detectados no projeto físico, que devem ser discutidos com o Administrador de
Banco de Dados e Administrador de Dados.
O projeto lógico deve sempre considerar a chave natural e, se houver uma chave natural que não é
utilizada como primary key, as regras de integridade da chave natural devem ser implementadas.
5. Utilização de Domínio
A padronização na definição de tamanho, formato, nome e valores válidos dos atributos é
extremamente importante para integração dos sistemas e para o entendimento das informações.
O Designer disponibiliza o objeto domínio para facilitar essa padronização, não só para valores
possíveis para os atributos e colunas.
Com o objetivo de evitar que a mesma informação seja criada com definições diferentes, toda
informação que tenha a possibilidade de existir em mais do que uma entidade/tabela, que faça parte
de entidades corporativas ou de grande importância para o negócio, deve ser primeiramente criada
como um domínio e posteriormente associada ao atributo da tabela. A implementação será
gradativa.
Todo domínio criado deve ser corporativo visando prever impactos de mudança nas definições do
mesmo.
6. Documentação de Conceitos
Alguns conceitos são importantes para entendimento do Modelo de Dados esclarecendo o significado
de alguma expressão que aparece nas descrições de Entidades e Atributos.
Conceitos desse tipo devem estar documentados no Designer no objeto Business Terminology, na
aplicação relativa a Área de Negócio, que também pode ser utilizado para documentação de outros
conceitos importantes para os sistemas.
Página 8 de 29
MANUAL DE NORMAS E PADRÕES DE MODELAGEM DE DADOS
Só serão listadas as atividades que devem ter participação do Administrador de Dados. Não se
propõe a detalhar ou redefinir o processo de Desenvolvimento de Sistemas nem a Metodologia de
Modelagem de Dados.
Todo novo sistema ou manutenção evolutiva ou legal que signifique grande impacto, deve passar por
todas as etapas abaixo. As manutenções muito pequenas, como exemplo a criação de apenas uma
coluna, podem ser tratadas como uma solicitação isolada.
1. Macro-Processo
Administrador de Dados
Implementa Implementa
base de dados base de dados
Página 9 de 29
MANUAL DE NORMAS E PADRÕES DE MODELAGEM DE DADOS
O Administrador de Dados é responsável pela homologação do Modelo de Dados e o Administrador
de Banco de Dados pela implementação.
A participação do Administrador de Dados nas fases anteriores visa, além de apoiar e entender o
negócio para estar capacitado à homologação, identificar os problemas antes da fase de
implementação evitando re-trabalho dos Desenvolvedores.
2. Planejamento do Projeto
A participação do AD e do DBA na elaboração do cronograma e o conhecimento sobre o andamento
do Sistema é importante para que o mesmo possa estimar esforços e se planejar para que possa
cumprir suas atribuições evitando o máximo possível o impacto sobre os prazos acordados com os
usuários.
3.1. Atividades
Levantamento de Necessidades
Sempre que necessário, e de acordo com planejamento prévio, o Administrador de Dados pode
participar do Levantamento de Necessidades com objetivo de, em modelos mais complexos,
entender melhor a necessidade de informação. Essa estratégia tem como objetivo prover o AD de
conhecimento para apoio nas fases seguintes.
A documentação do modelo tem como premissa básica estar suficientemente clara para o pleno
entendimento do mesmo.
4.1. Atividades
O Analista de Sistemas deve:
Detalhar o Modelo Lógico de Dados com seus atributos, descrições e regras de integridade.
5.1. Atividades
Projeto das Estruturas de Dados
A primeira tarefa a ser feita pelos Analistas é a transformação do projeto lógico em físico. A partir
do modelo físico criado à imagem do modelo lógico, o Analista deve fazer os ajustes necessários
Página 11 de 29
MANUAL DE NORMAS E PADRÕES DE MODELAGEM DE DADOS
para a implementação física e só deve voltar ao Modelo Entidade – Relacionamento para
complementação de alguma informação que não tenha sido percebida nas atividades anteriores.
O Administrador de Dados:
Verificar se todas as redundâncias/desnormalizações geradas foram acordadas e se os
mecanismos de controle das mesmas (check constraint, trigger, etc) foram definidos no
Designer.
Verificar se todas as views existentes, possuem os conceitos requeridos pelo ponto de vista
do analista, validando este conceito com as tabelas que dão origem as views.
Verificar se as tabelas auxiliares criadas nesta fase não contem informações consideradas
importantes para a Empresa que não estejam mapeadas em alguma entidade.
Para a análise do projeto físico do banco de dados pelo DBA, o Desenvolvedor deve entregar ao DBA:
Informações de volume das tabelas no Designer.
Lista de funções críticas (com os devidos acessos).
Mapeamentos lógicos · físicos não suportados pelo Designer são difíceis de se manterem
documentados uma vez que a alteração não pode partir da(s) entidade para a(s) tabela(s). Nesse
caso, o modelo lógico também deve ser alterado.
Ao utilizar a ferramenta “Database Design Transformer”, cuidado para não gerar tabelas que não
pertençam á aplicação (shared). Todas as entidades de todas as aplicações existentes no
repositório são listadas pelo Transformer que permite a geração por uma aplicação que não seja
“owner” da entidade.
Página 12 de 29
MANUAL DE NORMAS E PADRÕES DE MODELAGEM DE DADOS
6. Fase 4 – CONSTRUÇÃO / IMPLEMENTAÇÃO DA BASE DE DADOS
Esse é o momento em que todas as informações do Design são revisadas pelo AD. Todos os objetos
são validados antes da criação dos objetos no banco de dados.
A responsabilidade de criação das bases de dados é do Administrador de Banco de Dados que só fará
a criação após a aprovação do Administrador de Dados.
6.1. Atividades
O Analista de Sistemas deve:
Solicitar a implementação ao Administrador de Dados.
O Administrador de Dados:
Validar todas as informações de todos os objetos do Designer. Verificar padrões, clareza e se
todos os objetos foram previamente aprovados.
Autorizar a implementação ao Administrador de Banco de Dados.
7. OUTRAS CONSIDERAÇÕES
Página 13 de 29
MANUAL DE NORMAS E PADRÕES DE MODELAGEM DE DADOS
Capítulo 5. PADRÕES
Este capítulo tem o objetivo de documentar os padrões que devem ser utilizados para os modelos e
objetos de dados no Designer. Toda vez que houver algum impeditivo para o cumprimento de algum
padrão, o Administrador de Dados deve ser consultado.
“Aplicação” CORPORATIVA para Entidades Corporativas que são aquelas compartilhadas por
várias Áreas de Negócio. É criada uma única vez pelo Administrador de Dados.
Os Modelos de Dados já existentes e que não estão nesse padrão devem continuar na localização
atual até que seja possível rearrumá-los.
Algumas regras:
O nome do diagrama não será padronizado, deve apenas conter o prefixo “ERD_” e deve
identificar o melhor possível o assunto que está representando.
Diagramas gerados apenas para teste ou estudo pelo Desenvolvedor, deverão ter o nome do
Desenvolvedor e devem ser removidos ao final do teste ou estudo.
Página 14 de 29
MANUAL DE NORMAS E PADRÕES DE MODELAGEM DE DADOS
O Administrador de Dados manterá diagramas E-R por assunto nas Aplicações/Áreas de Negócio e na
aplicação CORPORATIVA, independentes de Aplicações/Sistemas, com objetivo de visualizar todo o
modelo de dados da Empresa. Esses diagramas terão o prefixo "AD_ERD_" e não devem ser
alterados pelos desenvolvedores sendo responsabilidade do Administrador de Dados mantê-los.
1.3. O QUE DEVE ESTAR documentado NO MODELO FÍSICO e não deve estar no modelo
lógico
Página 15 de 29
MANUAL DE NORMAS E PADRÕES DE MODELAGEM DE DADOS
Este item destina-se a definir os padrões de documentação que devem ser adotados nos projeto
lógico de dados (Entidades, Atributos, Relacionamentos, etc).
2.1. APLICAÇÃO
O cadastramento no Designer de aplicações deve seguir o seguinte padrão:
Exemplo:
GEL - COMERCIAL - Aplicação da Área de Negócio Comercial.
COM - COMPRAS - Aplicação para os módulos de Compras da Área Comercial.
Exemplo:
Essa aplicação tem como objetivo principal apoiar a Área de Compras desde o cadastramento de
mercadorias e fornecedores até a elaboração de pedidos.
Principais funções apoiadas:
- Planejamento de Compras;
- Cadastramento de fornecedores;
- Cadastramento de Mercadorias;
- Reposição de Mercadorias.
2.2. ENTIDADE
As entidades devem estar documentadas no Designer da seguinte forma:
Evitar a utilização de termos de processamento, tais como controle, processo, arquivo, sigla, etc.
Exemplo: MERCADOLOGICO
GRADE TAMANHO.
Página 16 de 29
MANUAL DE NORMAS E PADRÕES DE MODELAGEM DE DADOS
2.2.2. Short Name
Uma abreviatura do nome da entidade usada como referência em outras telas do Case e como
default para o "alias" de uma tabela em um comando SQL. Recomendado a utilização de quatro a
sete caracteres.
Se não for informado, é gerado automaticamente pelo Case.
Exemplo: MERC
GTAM.
2.2.3. Plural
Nome que será usado como nome da tabela no banco de dados. Deve, sempre que possível, ser o
mesmo da Entidade com a substituição do “branco” por “_”. As palavras podem ser abreviadas de
acordo com o "glossário de termos (ver Glossário de Termos neste documento).".
Se não for informado, é gerado automaticamente pelo Case.
Exemplo: MERCADOLOGICO
GRADE_TAM.
2.2.4. Description
Deve ser preenchido com informações a respeito do(s) objetivo(s) e conteúdo da Entidade, ou seja,
que conjunto de dados é representado pela Entidade. Deve ser o mais completo e claro possível de
maneira a facilitar o entendimento a respeito da mesma. Sempre que houver exceção, também deve
ser explicada.
Observação: Há domínios criados para os atributos acima e os mesmos devem ser utilizados para
efeito de padronização.
2.3. RELACIONAMENTO
2.3.1. Nome
Nome do relacionamento expresso por um verbo no presente, infinitivo ou particípio. Sempre que
possível, criar frase significativa do relacionamento.
Exemplo: CURSO freqüentado por ALUNO
ALUNO freqüenta CURSO.
2.4. DOMÍNIO
O nome do domínio segue o mesmo padrão do nome do atributo, exceto nas situações abaixo:
Caso o domínio seja "parte" de outro domínio por divisão de colunas, deve levar um prefixo de
numeração estruturado para agrupar as partes e deve conter a coluna "subset of" apontando para
um item de grupo.
Exemplo: Domínio 1. NUM_CGC
Domínio 1.1 NUM_CGC_RADIC subset of 1. NUM_CGC.
Domínio 1.2 NUM_CGC_ESTAB subset of 1. NUM_CGC.
Domínio 1.3 NUM_DV subset of 1. NUM_CGC.
Caso o domínio seja “parte” de outro domínio por utilizar um subconjunto de valores, deve conter o
nome do domínio já existente na coluna "subset of". Nesse caso, o nome do domínio deve ser o
mesmo do domínio que contem todos os valores, com algum complemento.
Exemplo: Domínio IND_ESTADO_CIVIL valores (Solteiro, Separado, Casado, Divorciado,
Desquitado, Outros).
Domínio IND_ESTADO_CIVIL_XXX valores (solteiro, Casado, Separado, Outros).
Atenção: Para a CG_REF_CODES que não tem o conceito de aplicação. Ao ser gerado um domínio
com mesmo nome de outro, o anterior é recoberto. Por esse motivo, analisar a necessidade de
inclusão do domínio na aplicação CORPORATIVA (veja Utilização de Domínio).
2.5. ATRIBUTO
Página 18 de 29
MANUAL DE NORMAS E PADRÕES DE MODELAGEM DE DADOS
XXX - Três letras que identificam a natureza da coluna, de acordo com o Glossário de termos
(ver Glossário de Termos neste documento).
YYYYYY - Abreviatura até seis letras que identifica cada qualificador da coluna, de acordo com
o Glossário de termos (ver Glossário de Termos neste documento).
Exemplo: VAL_PAGTO
DSC_PRODUT.
Se houver domínio correspondente, e o domínio não refletir apenas uma lista de valores genérica, o
nome do atributo deve ser formado pelo nome do domínio podendo ser complementado (o prefixo de
agrupamento do domínio deve ser retirado).
Exemplos: IND_ESTADO_CIVIL.
2.5.3. Comment
Descrição reduzida do objeto.
2.5.4. Description
Deve ser preenchido com a descrição do objetivo, significado e conteúdo, de forma completa e clara,
de maneira a facilitar o entendimento a respeito do atributo.
Exemplo: TXT_EMAIL
Endereço eletrônico completo utilizado para envio de mensagens eletrônicas via
Internet.
2.5.5. Diversos
As propriedades FORMAT e MAXIMUM LENGHT devem estar preenchidos.
Regras de integridade que não tem documentação natural no Designer (ver Capítulo 3 Item
Diretrizes para Documentação de Restrições de Integridade).
NUM
utilizado para campos numérico
NUM_SEQ
para chaves primárias seqüências ex: num_seq_padronização da tabela padronização
COD
cógido alfanumérico para identificar um domínio que pode virar uma tabela
VAL /VLR
para atributos com valores
QTD
para atributos com quantidade
PRC
para atributos com percentuais
DSC
Página 19 de 29
MANUAL DE NORMAS E PADRÕES DE MODELAGEM DE DADOS
para atributos descritivos ex: dsc_casa significa a descrição da casa
TXT
para campos textos
IND
para indicadores de máximo 2 elementos
DAT
para campos data
NOM
para atributos com nome ex: nom_cliente
2.6. FUNÇÕES
Padrão não verificado pelo Administrador de Dados.
2.6.2. Label
Formado pela sigla do sistema e uma numeração que define a hierarquia no diagrama de funções.
Exemplo
Sigla do sistema: COM
Label da função inicial: COM
Label de duas macro-funções (segundo nível): COM1
COM2
Label de uma função elementar (terceiro nível) hierarquicamente subordinado a COM1:
COM1.1 ou COM1.1.
Página 20 de 29
MANUAL DE NORMAS E PADRÕES DE MODELAGEM DE DADOS
Exemplo: MERCADOLOGICO
GRADE_TAMANHO.
REGRA_CONCOR_PRECO_FILIAL ( CONCOR vem de concorrência e foi abreviada em
6 posições ).
3.1.5. Alias
Uma abreviatura do nome da tabela. Deve, sempre que possível, ser o mesmo do Short Name da
Entidade. Recomendado de quatro até sete caracteres.
Se não for informado, é gerado automaticamente pelo Case.
Exemplo: MERC
GTAM.
Página 21 de 29
MANUAL DE NORMAS E PADRÕES DE MODELAGEM DE DADOS
3.1.6. Description
Deve ser preenchido com informações a respeito do(s) objetivo(s) e conteúdo da Tabela. Deve ser o
mais completo e claro possível de maneira a facilitar o entendimento a respeito da mesma. Sempre
que houver exceção, também deve ser explicada.
Sempre que houver a Entidade correspondente, deve ser igual à descrição da Entidade com as
modificações e observações que existem na Tabela.
3.1.7. Comment
Deve ser preenchido com um resumo da descrição da Tabela.
Exemplo: Tabela: CURSO
Comment: Cursos que são ou já foram ministrados pela Instituição.
Observação: Há domínios criados para os atributos acima e os mesmos devem ser utilizados para
efeito de padronização.
No mapeamento de uma entidade “fraca”, a PK da tabela “forte” deve ser a primeira coluna da
tabela “fraca”.
Esta ordem também deve estar na definição da Constraint FK de tabelas relacionadas.
3.2. VIEWS
3.2.1. Nome
Segue a mesma regra do nome da Entidade com exceção que deve ser precedido por:
“V_” - para views que só as aplicações estruturadas utilizam.
“V_U” - para views do ambiente transacional que são utilizadas pelos usuários através de
Ferramentas abertas (exemplo: Excel).
Página 22 de 29
MANUAL DE NORMAS E PADRÕES DE MODELAGEM DE DADOS
Exemplo: V_VENDA_DIARIA_SKU.
Em exceção, views criadas em substituição a sinônimos, com o objetivo de acessar tabelas em outra
instância de banco de dados, devem ter a seguinte formação:
Exemplo:
View criada em LMPRD03, owner GEL para acesso à tabela CONTROLE_NOTA existente em
CD01, owner CDR:
CDR_CONTROLE_NOTA.
3.4. COLUNAS
3.4.1. Nome
Segue a mesma regra do Nome de Atributo e deve ser o mesmo quando houver atributo
correspondente.
Exemplo: VAL_PAGTO
DSC_PRODUT.
3.4.2. Comment
Descrição reduzida do objeto.
3.4.3. Description
Deve ser preenchida com a descrição o mais completa e clara possível de maneira a facilitar o
entendimento a respeito do atributo. Se houver atributo correspondente, deve ser igual ao atributo
com as observações de diferenças, se houver.
Exemplo: DSC_EMAIL
Endereço eletrônico completo utilizado para envio de mensagens eletrônicas via
Internet.
A mesma regra sobre utilização de domínio especificada para o atributo é válida para a coluna.
Página 23 de 29
MANUAL DE NORMAS E PADRÕES DE MODELAGEM DE DADOS
3.4.6. Diversos
As propriedades DATATYPE e MAXIMUM LENGHT devem estar preenchidas e iguais às colunas
FORMAT e MAXIMUM LENGTH da Entidade, quando houver.
As colunas que são criadas para armazenar Foreign Keys devem ter o mesmo nome, tamanho,
formato, comentário e descrição da coluna original. Podem ser complementadas com algum prefixo
quando fundamental para o entendimento do significado do relacionamento ou houver mais de um
relacionamento.
3.5. CONSTRAINTS
O padrão de nome de constraint deve ser utilizado para aquelas que não são geradas
automaticamente pelo Designer. As constraint geradas pelo Designer não precisam ter seu nome
alterado.
Exemplo:
/* Verifica se o código da aplicação foi alterado. */
IF updating(‘cod_aplic’) THEN
IF :new.cod_aplic != :old.cod_aplic THEN
raise_application_error(-20001,
‘BR02 – O Código da Aplicação não pode ser alterado.’);
END IF;
END IF;
MANUTENÇÃO DE PK
Deve ser avaliado o impacto em outras tabelas e negociada a alteração com todas as Áreas de
Desenvolvimento impactadas. A responsabilidade é Desenvolvedor que pode solicitar o apoio do
Administrador de Dados.
Atenção para o fato do Designer não replicar a alteração para as tabelas que utilizam a PK como
Foreign KEY.
Página 24 de 29
MANUAL DE NORMAS E PADRÕES DE MODELAGEM DE DADOS
<short name da tabela (destino)>_<short name da tabela (origem)>_FKnn, onde:
FK = sufixo identificador de Foreign Key
nn = número seqüencial para o caso de haver mais que um relacionamento entre as mesmas
tabelas.
3.5.5. Diversos
Para cada Foreign Key deve haver o relacionamento definido no projeto lógico
(relacionamento entre as entidades envolvidas) com a propriedade “relationship” preenchida
com o nome do relacionamento.
3.6.1. Nome
O nome deve ter a seguinte formação: x_< nome da tabela >_nn ou
x_< short name da tabela >_nn, onde
Exemplo: S_TIPO_ATENDIMENTO_03
S_D_FUNCI_O2.
3.7. TRIGGERS
3.7.1. Nome
O nome deve ter a seguinte formação: T_< nome da tabela >_tynn ou
T_< short name da tabela >_tynn, onde
t = A para After
B para Before
Y = R para Row
S para Statement
nn = 01 para insert
02 para update
03 para delete
04 para insert/update
05 para insert/delete
06 para update/delete
07 para insert/update/delete.
Página 25 de 29
MANUAL DE NORMAS E PADRÕES DE MODELAGEM DE DADOS
Exemplo: T_FUNCIONARIO_AR01.
T_DIM_FUNCIONARIO_AR01.
Capítulo 6. DICAS
Este capítulo se destina a documentar algumas “dicas”, apenas como apoio às Equipes de
Desenvolvimento de Sistemas.
Página 26 de 29
MANUAL DE NORMAS E PADRÕES DE MODELAGEM DE DADOS
1.1. Neste capítulo serão descritos algumas normas de programação fundamentais para a garantia
da qualidade de dados ou facilitar o diagnóstico de problemas relacionados ao Banco de Dados.
Esses comandos, além de aumentar o grau de dependência do programa às colunas não utilizadas,
sobrecarregam o banco de dados além da necessidade.
3. TRATAMENTO DE ERROS
Erros do Banco de dados devem ser tratados pelos programas mesmo que o tratamento seja o mais
simples possível identificando o ponto ou comando do banco de Dados do programa onde o erro
ocorreu.
Em programas de consulta e atualização, o erro deve ser mostrado em forma de log, tela ou
qualquer outro mecanismo, ajudando no diagnóstico de algum problema de banco de dados.
Página 27 de 29
MANUAL DE NORMAS E PADRÕES DE MODELAGEM DE DADOS
Capítulo 8. GLOSSÁRIO
AD - Administrador de Dados.
Página 28 de 29