Buongiorno a tutti,
premetto che sono nuovo nella progettazione software e sto cercando di sbrogliare un problema di progettazione del database per me nuovo.
Ho delle entità quali:
Nazioni
Città
Sedi
Uffici
Progetti
Task
Persone
Vorrei astrarre queste entità a una classe generica chiamata Oggetti in quanto vorrei, con una certa flessibilità, applicare delle funzionalità quali Community, Condivisione Documenti, Messaggistica ed altro, senza doverle riprogrammarle per ognuno di essi.
Vorrei proporre una relazione Molti a Molti tra ognuno di questi oggetti (laddove non sia consigliato vorrei inibirlo a livello di codice).
Ognuno di questi oggetti ha naturalmente degli attributi completamente diversi.
Pensavo di fare una tabella Oggetti con il solo ID e ENTITA, mentre le altre Entità avrebbero una chiave esterna che riprende l'oggetto. In seguito, il resto delle tabelle riguardanti le funzionalità aggiuntive, le legherei con una chiave esterna sull'oggetto e non sulla singola entità.
Ho qualche dubbio sull'associazione molti a molti tra gli oggetti in quanto richiederebbe il traversing con parecchie funzioni ricorsive. Ho sentito parlare della struttura Closure Table per gestire gerarchie multi padre ma non trovo molta documentazione o informazioni sulla reale efficacia.
Sono sulla buona strada? avete qualcosa da consigliarmi?
premetto che sono nuovo nella progettazione software e sto cercando di sbrogliare un problema di progettazione del database per me nuovo.
Ho delle entità quali:
Nazioni
Città
Sedi
Uffici
Progetti
Task
Persone
Vorrei astrarre queste entità a una classe generica chiamata Oggetti in quanto vorrei, con una certa flessibilità, applicare delle funzionalità quali Community, Condivisione Documenti, Messaggistica ed altro, senza doverle riprogrammarle per ognuno di essi.
Vorrei proporre una relazione Molti a Molti tra ognuno di questi oggetti (laddove non sia consigliato vorrei inibirlo a livello di codice).
Ognuno di questi oggetti ha naturalmente degli attributi completamente diversi.
Pensavo di fare una tabella Oggetti con il solo ID e ENTITA, mentre le altre Entità avrebbero una chiave esterna che riprende l'oggetto. In seguito, il resto delle tabelle riguardanti le funzionalità aggiuntive, le legherei con una chiave esterna sull'oggetto e non sulla singola entità.
Ho qualche dubbio sull'associazione molti a molti tra gli oggetti in quanto richiederebbe il traversing con parecchie funzioni ricorsive. Ho sentito parlare della struttura Closure Table per gestire gerarchie multi padre ma non trovo molta documentazione o informazioni sulla reale efficacia.
Sono sulla buona strada? avete qualcosa da consigliarmi?