Prodotto di lavoro: Modellazione di dati
Questo artefatto descrive le rappresentazioni logiche e fisiche dei dati permanenti utilizzati dall'applicazione. Nei casi in cui l'applicazione utilizza un sistema RDBMS (Relational Database Management System), il modello di dati può includere anche gli elementi di modello per le procedure memorizzate, trigger, vincoli, ecc. che definiscono l'interazione dei componenti dell'applicazione con RDBMS.
Scopo

Il Modello di dati viene utilizzato per descrivere la struttura logica e fisica delle informazioni permanenti gestite dal sistema. Il modello di dati può essere inizialmente creato mediante il reverse engineering di memorizzazioni di dati permanenti esistenti (database) o da un insieme di Classi di progettazione nel Modello di progettazione.

Il modello di dati è necessario ogni volta che il meccanismo di memorizzazione permanente si basa su una tecnologia non object-oriented.  Il modello di dati è necessario specificatamente quando la struttura dei dati permanenti non può essere derivata automaticamente e meccanicamente dalla struttura delle classi permanenti nel modello di progettazione. Viene utilizzato per definire la mappatura fra le classi di progettazione permanenti e le strutture di dati permanenti, e per definire le strutture stesse dei dati permanenti.

La tabella delle proprietà riportata di seguito descrive gli elementi del modello di dati.  Le definizioni delle proprietà del modello incluse nella tabella sono congruenti con il profilo Modellazione dati per la versione 1.3 della specifica UML (Unified Modeling Language).  Gli elementi del profilo di modellazione dati per UML versione 1.4 non sono stati ancora definiti.

Relazioni
RuoliResponsabile: Modificato da:
Input inObbligatorio:
  • Nessuno
Facoltativo: Esterno:
  • Nessuno
Output di
Proprietà
Facoltativo
PianificatoYes
Personalizzazione
Opzioni di rappresentazione

Rappresentazione UML: Un pacchetto stereotipato come <<modello>>.

Il modello di dati potrebbe avere le seguenti proprietà

Nome proprietà

Descrizione breve

Rappresentazione UML

Introduzione Una descrizione testuale che serve come breve introduzione al modello. Valore con tag del tipo "testo breve".
Pacchetti I pacchetti utilizzati per gli scopi di raggruppamento organizzativi. Posseduta tramite ciò che l'associazione "rappresenta", o ripetutamente tramite ciò che è posseduto da parte dell'aggregazione.
Tabelle Le tabelle nei modelli di dati, posseduti dai pacchetti. Classi, stereotipate come «Tabella».
Rapporto Associazione semplice tra le tabelle nel modello. Associazione, stereotipata come «Non identificazione»
Rapporto forte Rapporto di aggregazione composto tra le tabelle nel modello. Associazione, stereotipata come «Identificazione»
Dipendenza (Vista a tabella) Dipendenza tra Tabelle, Viste e altri elementi di modello Dipendenza, stereotipata come «Derivazione» per i rapporti di dipendenza tra Tabelle e Vista
Colonna I valori di dati delle tabelle. Attributo, stereotipato come «Colonna».
Dominio Un tipo di dati definito dall'utente. Classe, stereotipata come «Dominio».
Vista Una tabella virtuale, composta di colonne da una o più tabelle. Classe, stereotipata come «Vista».
Diagrammi I diagrammi nel modello, posseduto dai pacchetti. Diagrammi di classe che rappresentano le Tabelle e i loro rapporti e i Diagrammi di componente che rappresentano la realizzazione delle Tabelle nel modello in componenti degli Spazi di tabelle e componenti Database.
Indice Strutture di accesso dati utilizzate per velocizzare l'accesso insieme ai percorsi specificati. Operazione, stereotipata come «Indice».
Trigger Funzionamento attivato dall'evento associato alle tabelle. Operazione, stereotipata come «Trigger».
Vincolo di controllo Una regola di convalida su una colonna o tabella. Può consistere in un intervallo di valori validi o di calcoli. Operazione, stereotipata come «Controllo».
Vincolo unico Indica che i dati in una colonna o insieme di colonne devono essere unici. Operazione, stereotipata come «Unica».
Pacchetto di procedura archiviato Una classe utilizzata come "contenitore" per le operazioni di procedura archiviata Classe, stereotipata come «SP_Container»
Procedura archiviata  Funzionamento richiamato in modo esplicito, associato con le tabelle o con il modello per intero. Operazione, stereotipata come «SP».
Schema  Contenitore per elementi del modello di dati che rappresenta la struttura generale del database. Utilizzato per la gestione della sicurezza e per la proprietà delle tabelle. Pacchetto stereotipato come «Schema».
Database Elemento del modello che rappresenta il database fisico Componente, stereotipato come «Database»
Tablespace Unità di memoria fisica in un database Componente, stereotipato come «Tablespace»

Per i progetti che hanno pochi dati di persistenza, o hanno una trasformazione semplice dal progetto alle classi al meccanismo di persistenza, potrebbe non essere necessario un modello di dati separato.   Per i progetti che utilizzano un RDBMS per la persistenza, il modello di dati potrebbe essere adattato alle semantiche delle specifiche del database sottostante, che potrebbe variare un poco tra i RDMBS.

Ulteriori informazioni