Estrutura de Banco de Dados Multi Aplicativos

Olá,

Estou montando uma plataforma de aplicativos e começando pelo banco de dados, estou com problemas de lógica, referente às licenças de uso.

Minha plataforma será nada mais que um sistema desktop cujas funcionalidades estão disponíveis em forma de módulos, onde cada aplicativo pode ter vários módulos exclusivos e módulos usados por outros aplicativos também.

Organizar essa idéia no banco de dados tem sido uma dor de cabeça, visto que há tabelas com ligações demais:

Tabelas:
Aplicativos <-> Licenças <-> Licenciados <-> Pessoas <-> Operadores

Para começar esta discussão, gostaria de sua opinião sobre as tabelas licenças e licenciados.
A licença possui os dados de permissão de uso de um determinado aplicativo, enquanto que um licenciado é uma pessoa que possui de uma a várias licenças.

Licenças <-> Tranzações <-> ContasCrédito <-> Licenciado

Como podem notar, muitas ligações entre essas duas tabelas.
Para ficar o mais legível possível, deverei renomear uma das duas tabelas a fim de que o campo de chave estrangeira das duas não fique muito parecido: licenças_id e licenciado_id.

Alguma sugestão para como poderia nomear a tabela ´licenciado´?

Esse tipo de assunto não tem oque discutir…vc tem que modelar oque vc precisar para gerar a estrutura de BD que cumpra seus requisitos…
Mas me parece que vc tb não tem nem certeza aonde vc quer chegar…

  1. Defina como vai ser sua politica de cobrança.
  2. Modele varias estrategias diferentes e lista os trade off de cada.
  3. Escolha um modelo e adote medidas que possa minimizar os pontos negativos.

OBS - nada é perfeito…