Novo Sistema com Dúvida na Estruturação de Módulos

Meus Caros,

Estou iniciando um novo projeto, parecido com um ERP, é um sistema de porte médio com 5 módulos, onde cada cliente vai poder contratar cada módulo isoladamente, e cada um deles com uma quantidade de usuários determinada na licença de uso.

Minha dúvida é com relação a estruturação desses módulos no SC, não sei se crio tudo numa único projetão no SC, ou se crio cada módulo como sendo um projeto isolado, mas ainda assim interligados, já que cada módulo vai precisar acessar dados dos outros módulos. Crio uma base de dados para cada módulo, ou uma única base para todo o sistema ???

Quanto ao controle de acesso, crio um controle centralizado, ou cada módulo teria que ter um controle de acesso independente ??? Se for centralizado creio que terei que fazer esse sistema de segurança/acesso todo personalizado, não sendo possível usar o modo automatico de criação dele pelo SC, correto ???

Acredito que criar módulos como projetos isolados no SC seja a forma mais adequada para facilitar a manutenção futura, mas não sei se isso vai me trazer problemas para interligar esses módulos se optar por criar um sistema centralizado de controle de acesso.

São essas dúvidas que tenho nesta fase inicial do projeto com relação a melhor forma de estruturar esses módulos, e gostaria muito de receber sugestões e ponderações dos colegas sobre uma forma ou outra de se fazer um sistema deste tipo.

Agradeço de antemão aos que puderem contribuir.

Obrigado.

Por questões de praticidade, atualização, cruzamento de dados e performance teria que ser feito em um único BANCO DE DADOS.

Como por padrão o SCRTIPCASE não cria um sistema de senhas MULTI-EMPRESA, você vai ter que alterar o código
do plano de senhas GRUPO criado e adicionar um cadastro de empresas, e qtde usuários.

E a qtde de usuários teria que criar uma tabela também no plano de senha que conteria o cod_emp, cod_login, e datahora (timestamp) e uma aplicação JAVASCRIPT ou em cada modulo ONLOAD, uma rotina para atualizar o mesmo para você poder
ter a qtde de usuário logada no momento para poder bloquear novos login e fazer o logout de quem esta a 30 minutos sem ação.

Quanto ao BANCO DE DADOS único ganharia também por ele estar no mesmo servidor HOST, o CACHE e Requisições de ENTRADA e SAIDA, que caso seu sistema abrir vários BANCOS no MESMO HOST tudo isso conta como processamento extra no servidor de BANCO DE DADOS, quanto na parte do servidor (HTTP) PHP para manter os extras de sessão lá também.

Jailton,

Obrigado pela resposta meu caro.

E quanto a criar sistemas separados para cada módulo o que você diz ?

Eu gostaria de criar separadamente cada módulo, e um módulo principal para controle de acesso e acesso aos menus.

Esses menus que eu não sei se seria possível fazer um menu horizontal onde estariam os nome dos 5 módulos, e uma vez clicando num modulo abriria um menu vertical para o módulo específico, não sei inicialmente como eu faria isso no SC, mas acho que o melhor caminho seria esse, ou não ???

Sim é viável fazer os módulos separados neste caso a dica é separar também em uma BASE somente os arquivos do PLANO DE SENHA, usuários, empresas, etc.

Ai através deste BD de SENHAS você vai fazer o LOGIN, que te levará a um menu com os MODULOS HABILITADOS, que já vão levar para
a sessão o cod_emp, nome_login, cod_login, grupo, que vão ser repassados aos módulos ativos do menu.

Interesssante seria que após o LOGIN ele filtrasse as empresas disponíveis para o mesmo, selecionar antes de entrar.

Tipo LOGIN: XN3455, passou pela senha já carrega no SELECT na tela de LOGIN as empresas DISPONIVEIS, ai além do código
do LOGIN, ele tem que LEVAR O NOME ABREVIADO DO usuário, grupo, etc, porque em suas telas é interessante você gravar
quem Inclui, Alterou, Excluir, com Lgoins Codigo, Login Nome Abreviado, Data e Hora.

E no PLANO de Senhas de cada modulo tem cliente que vai te pedir o JOÃO PODE ter acesso a TUDO a MARIA só pode CONSULTAR,
o JOSÉ só pode ALTERAR e não incluir.

Heehe vai dar trabalho claro, mas é possível.

Só que detalhe se for usar o gerador / gerenciador que o scriptcase cria não tenho certeza se você vai ter que incluir os aplicativos
manualmente já que o plano de senha lê o projeto que ele esta ativo e atualiza os nomes das aplicações disponíveis para o mesmo.

Olá Bom dia,

Já fiz sistemas assim, e minha preferência é colocar tudo no mesmo projeto, e modularizar por pastas visto que o scriptcase já gera cada aplicação de forma separada em pastas.

Sendo assim caso seu cliente queira só o módulo de faturamento você publica somente as aplicações que se referem a faturamento pra ele.

Faço assim devido as bibliotecas que não coloco em modo público , assim como imagens e botões.

Abraço

Neste meu caso não seria bem assim, o sistema com todos os módulos estariam num único servidor e cada cliente vai poder acessar o que foi contratado, portanto eu não teria essa necessidade de publicações personalizadas, pelo menos não a princípio.

O meu receio em criar um grande projetão com tudo dentro é a lentidão de se trabalhar com ele em tempo de desenvolvimento, se eu separar cada módulo em um projeto isolado e criar um projeto mestre onde seria feita a autenticação do cliente e usuário e a partir daí um menu principal com os módulos e cada opção deste menu principal acessando uma outro projeto com um outro menu específico para cada módulo acho que ficaria melhor, só não sei o nível de trabalho que isso me daria, uma vez que sou iniciante no SC e tenho receio de ter problemas com isso.

Quanto ao banco de dados estou convencido que teria que ser tudo em dois banco, um para as tabelas de autenticação de cliente/usuário e outro com as tabelas de todos os módulos.