Modelagem de Banco de Dados

Bom dia pessoal, estou com uma dúvida em relação a modelagem do banco de dados de um determinado módulo de um sistema que estou construindo.

Necessito que na Interface Gráfica, uma determinada Tela do sistema possa ser incluída em outra tela. Para isso, criei no banco de dados uma Tabela responsável por armazenar os dados de cada Tela.

Tabela Tela: tem um código e outras informações…

E criei também uma tabela chamada TELA_COMPONENTES que faz todo relacionamento da tela com seus componentes (no caso telas).

Tabela TELA_COMPONENTES:

tela componente tipo
001 c1 formulario
001 c2 tabela

E dependendo do tipo do componente posso entrar em outra tabela (FORMULARIO ou TABELA)

Tabela FORMULARIO:

tela outros campos
001

Tabela TABELA:

tela outros campos
002

Essa é a melhor forma de fazer ? Porque minha preocupação é a seguinte: Dependendo do tipo do componente , precisarei fazer um JOIN em uma tabela específica.

uma tela ou formulário NÃO É uma entidade(tabela), pegue seus formulários e aplique a 1° 2° e 3° formas normais!