2013-05-17 11 views
9

Se avete mai lavorato con il metamodello di UML, è stata riordinata conoscono i concetti di sindacati e sottoinsiemi - Per quanto mi risulta:UML metamodello: derivato, l'unione derivati ​​e sottoinsiemi

  • attributi e le associazioni di un elemento/classe contrassegnato come "unione derivata" non può essere utilizzato direttamente. In sottoclassi più specifiche, è possibile trovare sottoinsiemi che possono essere utilizzati, a condizione che non siano contrassegnati come unioni derivate.
  • "deriva" (senza unione) gli attributi e le associazioni hanno anche sottoinsiemi nelle classi più specifiche, ma a differenza di sopra si possono usare direttamente, senza dover cercare sottoinsiemi nelle classi più specifiche

Le mie domande:

  1. Ha senso o sono sulla pista sbagliata qui?
  2. Qual è il significato della "/" (barra) che è possibile trovare di fronte ad alcuni attributi/associazioni , che dispongono di sottoinsiemi in classi figlio? E.g./generico: classificatore [*]

risposta

4

Una proprietà unione è una proprietà costituita da più proprietà. Puoi capire l'unione solo quando combini tutti i sottoinsiemi. Una lista è quasi per definizione un'unione. Quasi, perché potrebbe essere non inizializzato.

Un'unione derivata è una proprietà che richiede una raccolta specifica di sottoinsiemi. Non vorrei parlare dell'accesso diretto a loro, ma di quanto siano diretti a comprenderli. Hai bisogno di tutte le informazioni prima di poter dare un'interpretazione.

La differenza tra i due che un'unione derivata richiede un sottoinsieme specifico e un'unione potrebbe avere un sottoinsieme e potrebbe avere sottoinsiemi diversi in contesti diversi. Un esempio molto semplice sono i campi di un modulo. Tutti i campi obbligatori mostrano la definizione di unione derivata. Tutti gli altri campi fanno parte dell'unione completa.

Le unioni derivate possono contenere unioni derivate nei rispettivi sottoinsiemi. Dirige la creazione di classi e le loro istanze, non le rende impossibili.

Tutte le funzionalità derivate richiedono che siano note altre funzionalità. La temperatura può essere letta direttamente, ma per sapere se qualcuno ha la febbre richiede più conoscenza, come l'ora del giorno, il luogo di raccolta delle informazioni, ecc.

La barra implica che si sta derivando.