Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 14

Discussione: Diagramma E/R

  1. #1
    Utente di HTML.it
    Registrato dal
    Jan 2013
    Messaggi
    8

    Diagramma E/R

    Qui di seguito riporto il testo del database. Devo creare il diagramma E/R.

    Un'azienda che produce parti meccaniche vuole realizzare un database che consenta di memorizzare
    la distinta base dei suoi prodotti e gli ordini degli stessi. La distinta base di un prodotto permette
    di speci care tutte le parti di cui un prodotto e costituito, insieme alle quantita, alle modalita di
    lavorazione di queste parti e ai costi.
    Per ogni prodotto si vuole memorizzare l'elenco dei componenti necessari alla sua realizzazione
    unitamente al prezzo di vendita e alla quantia disponibile in magazzino. Ogni prodotto e identi cato
    da un codice intero progressivo.
    I componenti sono identi cati dal loro fornitore e da un codice alfanumerico fornito dal fornitore
    stesso. Per ogni componente utilizzato nella fabbricazione di un altro prodotto sono note: la quantita,
    il tempo di lavorazione e la modalita di lavorazione. Un componente puo comparire piu volte nella
    distinta base di un prodotto a patto che cambi almeno un attributo tra la modalita di lavorazione, la
    quantita o il tempo di lavorazione. Le modalita di lavorazione sono scelte da un insieme prede nito.
    I componenti possono in ne essere ulteriormente classi cati in:
    1. materia prima: caratterizzata da costo, unita di misura e nome del fornitore;
    2. mezzo lavorato: caratterizzato dal costo, dall'informazione se prodotto internamente o acquistato
    all'esterno e dal nome dell'eventuale fornitore (nullo nel caso il cui il mezzo lavorato sia prodotto
    internamente).
    Ciascun componente non puo essere un prodotto, cioe non puo essere composto da una ulteriore serie
    di componenti.
    I clienti dell'azienda sono a loro volta aziende, identi care da una partita IVA e da una serie di
    informazioni anagra che di base. Il database deve poter memorizzare le informazioni dei clienti e dei
    relativi ordini. Un ordine e identi cato da un numero intero progressivo, da una data di creazione,
    una data di consegna, una lista di prodotti ordinati con le relative quantita e prezzi e, in ne, il costo
    totale.

    Grazie a tutti

  2. #2
    scusa, quale sarebbe la richiesta? vorresti che facessimo il lavoro al posto tuo?

  3. #3
    Utente di HTML.it
    Registrato dal
    Jan 2013
    Messaggi
    8
    scusa...hai ragione...non avevo specificato il problema...

    Mi trovo in difficoltà nel capire come creare la distinta base di un prodotto : è un'entità o una relazione (nel diagramma E/R) ?

    Come faccio a creare una distinta base dove, tenendo il codice del prodotto e il codice del componente invariati, dare come chiave il modo e il tempo di lavorazione, e la quantità ?

    Spero di essere chiaro

    Grazie

  4. #4
    Utente di HTML.it
    Registrato dal
    Jan 2013
    Messaggi
    8
    non c'è proprio nessuno che lo sa ?

  5. #5
    Utente bannato
    Registrato dal
    Dec 2012
    Messaggi
    679
    Bhè qualche saccentone lo puoi trovare

  6. #6
    Ciao,

    Partendo dal presupposto che la bonta' di un progetto e quindi di un e/r dipende da se soddisfa le richieste di chi utilizzera' il db e quindi dipende dal fatto o meno di riuscire a rispondere nel modo migliore alle query e qui le query non ci sono... Quindi e' difficile dire se una soluzione e' migliore di un altra.
    Comunque,
    Io individuerei le seguenti entita' :

    COMPONENTE (IS- A) MATERIA PRIMA E MEZZO LAVORATO

    PRODOTTO

    CLIENTE

    ORDINE

    FORNITORE.

    individuerei almeno le seguenti relazioni :

    composto_da (PRODOTTO, COMPONENTE)
    realizza (FORNITORE, COMPONENTE)
    effettua (CLIENTE,ORDINE)
    riguarda (ORDINE,PRODOTTO)

    2 o 3 di queste relazioni sono del tipo 1:n e posso dunque essere eliminate in fase di raffinamento mettendo il riferimento delle relative tabelle nelle altre

  7. #7
    Utente di HTML.it
    Registrato dal
    Jan 2013
    Messaggi
    8
    Ciao Bomberdini

    Quello che hai scritto mi sembra appropriato, ma ho ancora alcuni dubbi.

    Prima di tutto ti riporto la seconda parte del problema :

    Progettare un database in grado di supportare le attivita dell'azienda utilizzando gli strumenti
    di progettazione concettuale e logica imparati a lezione
     Costruire un'applicazione PHP + mysql in grado di implementare le seguenti funzionalita:
    { caricamento, modi ca, aggiornamento e cancellazione delle informazioni dei prodotti, com-
    ponenti e distinte base;
    { visualizzazione dell'elenco dei prodotti con relative giacenze di magazzino;
    { per ogni prodotto visualizzazione della distinta base;
    { caricamento, modi ca, aggiornamento e cancellazione dei dati dei clienti;
    { caricamento, modi ca, aggiornamento e cancellazione degli ordini. Attenzione: nella creazione
    di un ordine e necessario controllare che i prodotti ordinati siano disponibili. Al momento
    del salvataggio di un ordine i prodotti vengono scaricati dal magazzino.
    { Una pagina di statistiche dei prodotti che consenta di visualizzare, per ogni prodotto, le
    quantita ordinate da tutti i clienti anno per anno.

    Il testo dice che un componente può comparire più volte nella distinta base, a patto che cambino quantità, modo o tempo di lavorazione. Se colleghiamo prodotto e componente questo è possibile, ma il diagramma E/R poi non si può normalizzare ( e comunque perderemo delle informazioni : tipo che la modalità di lavorazione, quantità e tempo sono dei componenti).

    Come mai inserisci l'entità fornitore ? Per me potrebbe essere superflua, comunque ci può stare

    Il mio problema principale rimane comunque la distinta base, che sembra voler essere un entità. Non riesco proprio a trovare un modo opportuno per collegarla ai prodotti e ai componenti, salvaguardando tutte le informazione e con i vincoli della quantità, del modo e del tempo di lavorazione.

  8. #8
    Si leggendo il continuo del testo forse Fornitore non serve puoi decidere tu se serve

    Cmq leggendo la definizione su wikipedia di distinta base dice :

    Una_*distinta base*_(in Inglese BOM - Bill of Materials) è l'elenco di tutti i componenti,sottassiemi, semilavorati e materie prime necessari per realizzare un prodotto.

    Proprio per questo motivo non credo sia un entita... Ma un qualcosa ricavabile incrociando i dati di varie tabelle base... Una sorta di report

  9. #9
    Utente di HTML.it
    Registrato dal
    Jan 2013
    Messaggi
    8
    Mi dici quindi di non inserirla come un'entità ma di utilizzare solamente una relazione tra i componenti e i prodotti ?

    Questo mi semplificherebbe di molto il lavoro. Però come faccio a dire che lo stesso componente può comparire più di una volta nella "relazione" con il prodotto, cambiando o quantità, o modo o tempo di lavorazione ?

    Uso un attributo (0,N) in componenti ?
    Ma il componente in se non ha un quantità, un tempo o un modo di lavorazione, ma ce li ha solamente quando viene utilizzato nella costruzione di un prodotto.

    Quindi fornirei un'informazione sbagliata inserendoli nell'entità componenti.

    Potrei metterli come attributi nella relazione, ma a quel punto non potrei inserire più di un valore tra tempo, quantità o modo.

    Probabilmente potrei realizzarlo con una relazione ternaria, ma a quel punto la "terza entità" sarebbe una cosa un po' astratta e campata in aria...

  10. #10
    Lasciandi per ora da parte le relazioni. Se supponiamo che in componente hai attributi come quantita modalita... Potresti pensare di renderli univoci... In particolare,
    Potresti rendere chiave primaria in componente:
    Idcomponente,quantita,modalita...

    Questo ti assicurerebbe che basta che cambia almeno un valore e l'engine accettera' i dati immessi...

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.