Creazione Database per la gestione di un negozio di abbigliamento

Stato
Discussione chiusa ad ulteriori risposte.

indisparte

Nuovo Utente
45
3
Salve a tutto devo sviluppare un sistema informativo, composto da una base di dati relazionale e da un applicativo in Java Swing, per la gestione di un negozio di abbigliamento.
Il sistema deve permettere di gestire vendite e disponibilità di magazzino di varie tipologie di capi, e per ogni capo di varie taglie e colori.
In allegato inserisco la prima bozza del class diagram.

NegozioAbbigliamento.jpg
Cosa va migliorato?Sono ben accetti consigli e critiche!!
 
Ultima modifica da un moderatore:

rctimelines

Utente Èlite
5,144
2,023
CPU
Ryzen 7 2700X | i7-6700k@4.5 | i5-4460... altri
Dissipatore
wraith MAX | Scythe Katana2|Arctic Freezer 11LP
Scheda Madre
Asrock B450 Fatal1ty 4K | Asus Prime Z270P | Acer Veriton
HDD
Samsung 970evo m.2 | vari | Samsung 860 evo
RAM
16GB G.Skill TridentZ 3000 | 16GB CORSAIR 2133 | 8GB DDR3 1600
GPU
RadeonPro WX3100 4G | ZOTAC GTX 1070 8G | Quadro k620 2G
Monitor
DELL 2419P 2K + Benq 17" | LG Ultrawide 27''
Net
fibra 1000
OS
Windows10-pro64/OpenSUSE-QL15.1/Debian 10.3
Attenzione, credo che qui il "trucco" sia specifico della tipologia di prodotto. I campi "taglia" e "colore" non vanno gestiti come caratteristica di igni articolo, ma come "variante" di questi, in modo da limitare l'aumento irragionevole del numero di articoli. È una caratteristica tipica dei gestionali per questo tipo di prodotti.

Inviato dal mio Nexus 6P utilizzando Tapatalk
 

indisparte

Nuovo Utente
45
3
Attenzione, credo che qui il "trucco" sia specifico della tipologia di prodotto. I campi "taglia" e "colore" non vanno gestiti come caratteristica di igni articolo, ma come "variante" di questi, in modo da limitare l'aumento irragionevole del numero di articoli. È una caratteristica tipica dei gestionali per questo tipo di prodotti.

Inviato dal mio Nexus 6P utilizzando Tapatalk
Quindi dovrei metterli in una classe apparte?
 

rctimelines

Utente Èlite
5,144
2,023
CPU
Ryzen 7 2700X | i7-6700k@4.5 | i5-4460... altri
Dissipatore
wraith MAX | Scythe Katana2|Arctic Freezer 11LP
Scheda Madre
Asrock B450 Fatal1ty 4K | Asus Prime Z270P | Acer Veriton
HDD
Samsung 970evo m.2 | vari | Samsung 860 evo
RAM
16GB G.Skill TridentZ 3000 | 16GB CORSAIR 2133 | 8GB DDR3 1600
GPU
RadeonPro WX3100 4G | ZOTAC GTX 1070 8G | Quadro k620 2G
Monitor
DELL 2419P 2K + Benq 17" | LG Ultrawide 27''
Net
fibra 1000
OS
Windows10-pro64/OpenSUSE-QL15.1/Debian 10.3
Si, vanno gestiti con una tabella collegata a quella dei prodotti

Inviato dal mio Nexus 6P utilizzando Tapatalk
 

rctimelines

Utente Èlite
5,144
2,023
CPU
Ryzen 7 2700X | i7-6700k@4.5 | i5-4460... altri
Dissipatore
wraith MAX | Scythe Katana2|Arctic Freezer 11LP
Scheda Madre
Asrock B450 Fatal1ty 4K | Asus Prime Z270P | Acer Veriton
HDD
Samsung 970evo m.2 | vari | Samsung 860 evo
RAM
16GB G.Skill TridentZ 3000 | 16GB CORSAIR 2133 | 8GB DDR3 1600
GPU
RadeonPro WX3100 4G | ZOTAC GTX 1070 8G | Quadro k620 2G
Monitor
DELL 2419P 2K + Benq 17" | LG Ultrawide 27''
Net
fibra 1000
OS
Windows10-pro64/OpenSUSE-QL15.1/Debian 10.3
Vabbè, ovviamente si tratta di un esercizio scolastico, per cui certi affinamenti non credo siano nemmeno necessari. Se ti hanno assegnato proprio il caso dell'abbigliamento sottolineando i campi colore e taglia, sicuramente il motivo è che ti vogliono fare ragionare sul concetto di "variante".

Inviato dal mio Nexus 6P utilizzando Tapatalk
 

indisparte

Nuovo Utente
45
3
Vabbè, ovviamente si tratta di un esercizio scolastico, per cui certi affinamenti non credo siano nemmeno necessari. Se ti hanno assegnato proprio il caso dell'abbigliamento sottolineando i campi colore e taglia, sicuramente il motivo è che ti vogliono fare ragionare sul concetto di "variante".

Inviato dal mio Nexus 6P utilizzando Tapatalk
Ecco come l'ho modificato
Main_V_01.jpg
Quello che mi preoccupa è come eliminare l'associazione molti a molti tra Cliente e Ordine e quale cardinalità inserire tra Capo d'abbigliamento, disponibilità e magazzino.
 

Krona

Nuovo Utente
69
36
Quello che mi preoccupa è come eliminare l'associazione molti a molti tra Cliente e Ordine e quale cardinalità inserire tra Capo d'abbigliamento, disponibilità e magazzino.
La relazione dovrebbe essere uno a molti, io a mente faccio sempre un ragionamento da ambo le parti, tipo in questo caso: "Un cliente può fare molti ordini (1-n); un ordine appartiene ad un solo cliente (1-1)" => Clienti - Ordini => uno a molti
 

indisparte

Nuovo Utente
45
3
La relazione dovrebbe essere uno a molti, io a mente faccio sempre un ragionamento da ambo le parti, tipo in questo caso: "Un cliente può fare molti ordini (1-n); un ordine appartiene ad un solo cliente (1-1)" => Clienti - Ordini => uno a molti
Si concordo con te, inoltre non mi convince quella classe "Disponibilità" tra le due relazioni perchè non ho idea della cardinalità.
Ho apportato delle modifiche
Main_V_2.jpg
Post unito automaticamente:

Ho ulteriormente modificato il mio class diagram seguendo le linee guida di un negozio non più online ma fisico. Ho rimosso la tabella magazzino(anche se credo di doverla ripristinare in quanto posso utilizzarla per specificare le posizioni, i reparti del magazzino, dove reperire i capi)
Main_V_3.jpg
 
Ultima modifica:

indisparte

Nuovo Utente
45
3
Sto procedento per entità a creare la mia base di dati di un negozio d'abbigliamento. Ho iniziato a stabilire questo schema
per poi cercare di rimuovere le specializzazioni in questo modo
Ma mi accorgo che entrambe le tabelle hanno attributi in comune. Non trovo un altro modo mi serve un aiuto
 
Stato
Discussione chiusa ad ulteriori risposte.

Ci sono discussioni simili a riguardo, dai un'occhiata!

Entra

oppure Accedi utilizzando
Discord Ufficiale Entra ora!

Discussioni Simili