Concetto: Modellazione dati concettuale
Il modello dati concettuale descrive le importanti entità e le relative relazioni per esaminare i concetti dominio con i portatori d'interesse del progetto che definiscono l'ambito del problema da essere sottoposto alla soluzione del sistema.
Relazioni
Descrizione principale

Introduzione

Come definito in  [NBG01], la modellazione dati concettuale rappresenta lo stadio iniziale di sviluppo della progettazione dei dati e della memoria dati permanenti per il sistema. In molti casi, i dati permanenti per il sistema vengono gestiti da un sistema RDBMS (relational database management system). Le entità di business e di sistema identificate ad un livello concettuale dai modelli di business e dai requisiti di sistema saranno elaborate mediante le attività di analisi e di progettazione del caso d'uso e del database in progettazioni dettagliate della tabella fisica che poi saranno implementate nel sistema RDBMS.  Si noti che il modello dati concettuale discusso in questo documento non è un prodotto di lavoro separato. Invece, si tratta di una vista composta di informazioni, contenute nei prodotti di lavoro delle discipline di modellazione di business, di requisiti e di analisi e progettazione, attinente allo sviluppo del Modello dati

Il modello dati si sviluppa tipicamente attraverso i seguenti tre stadi generali:

  • Concettuale-Questo stadio riguarda l'identificazione, ad un livello elevato, delle entità di sistema e di business chiave e delle relazioni associate che definiscono l'ambito del problema da essere sottoposto al sistema. Queste entità di sistema e di business chiave sono definite utilizzando gli elementi di modellazione del profilo UML per la modellazione business inclusi nel modello analisi di business e negli elementi modello classe di analisi del modello di analisi.
  • Logico-Questo stadio riguarda il perfezionamennto, ad un livello elevato, delle entità di sistema e di business concettuali in entità logiche più dettagliate. Queste entità logiche e le relazioni associate possono essere facoltativamente definite in un modello dati logico utilizzando gli elementi di modellazione del profilo UML per la progettazione di database come descritto in Linea guida: Modello dati. Il modello dati logico facoltativo fa parte del Prodotto di lavoro: Modello dati e non un prodotto i lavoro RUP separato.
  • Fisico- Questo stadio riguarda la trasformazione delle progettazioni della classe logica in progettazioni ottimizzate della tabella database fisica. Lo stadio fisico include anche la mappatura delle progettazioni della tabella database con i tablespace e con il componente database nella progettazione della memoria del database.

Le attività associate alla progettazione del database attraversano l'intero ciclo di vita dello sviluppo software e le attività iniziali di progettazione del database possono essere avviate durante la fase di inizio.  Per progetti che utilizzano la modellazione di business per descrivere il contesto commerciale dell'applicazione, la progettazione del database può essere avviata ad un livello concettuale con l'identificazione degli attori e dei casi d'uso di business nel modello caso d'uso di business e dei dipendenti e delle entità di business nel modello analisi di business.  Per i progetti che non utilizzano la modellazione di business, la progettazione del database potrebbe essere avviata al livello concettuale con l'identificazione degli attori e dei casi d'uso del sistema nel modello caso d'uso e delle Classi di analisi nel Modello di analisi dalle realizzazioni del caso d'uso.

La figura riportata di seguito mostra la serie di elementi del modello dati concettuale che risiede nei modelli di business, nei modelli di requisiti e nel modello di analisi.

Il diagramma è descritto nel contenuto.

Le seguenti sezioni descrivono gli elementi nei modelli di business, nel modello caso d'uso e modello di analisi che possono essere utilizzati per definire il modello dati concettuale iniziale per dati permanenti nel sistema.

Elementi di modellazione dati concettuale

Modelli di business

Modello caso d'uso di business

Il modello caso d'uso di business è composto da attori di business e da casi d'uso di business. I casi d'uso di business rappresentano i processi di business chiave utilizzati per definire il contesto del sistema da sviluppare. Gli attori di business rappresentano le entità esterne chiave che interagiscono con il business mediante i casi d'uso di business. La figura riportata di seguito mostra un modello caso d'uso di business di esempio molto semplice per un'applicazione di asta in linea.



Il diagramma è descritto nel contenuto.

Come entità di importanza rispetto al problema dello spazio per il sistema, gli attori di business sono entità candidate al modello dati concettuale.  Nell'esempio riportato sopra, gli attori di business Acquirente e Venditore sono entità candidate per le quali l'applicazione di asta in linea deve memorizzare le informazioni.

Modello analisi di business

Il modello analisi di business contiene le classe che modellano le entità di business e i dipendenti identificati dall'analisi del flusso di lavoro nel caso d'uso di business. I dipendenti rappresentano le risorse lavorative che eseguono le azioni richieste per portare avanti quel flusso di lavoro.  Le entità di business sono "elementi" che i dipendenti utilizzano o producono durante il flusso di lavoro. In molti casi, le entità di business rappresentano tipi di informazioni che il sistema deve memorizzare in modo permanente. 

La figura riportata di seguito mostra un diagramma sequenza di esempio che descrive i dipendenti e le entità di business di uno scenario del caso d'uso di business intitolato "Fornisci asta in linea" per la gestione di un'asta.

Il diagramma è descritto nel contenuto.

In questo esempio semplificato, l'oggetto Auction Manager (gestore aste) rappresenta un ruolo di dipendente che probabilmente sarà eseguito dallo stesso sistema di gestione dell'asta in linea.  Gli oggetti Auction (asta) e Auction Item (articolo asta) sono entità di business utilizzate o prodotte dal dipendente Auction Manager che rappresenta in qualità di agente gli attori di business Venditore e Acquirente.  Da una prospettiva di progettazione del database, le entità di business Auction e Auction Item sono entità candidate al modello dati concettuale. 

Requisiti e modelli di analisi

Per progetti che non eseguono la modellazione di business, i requisiti (caso d'uso di sistema) e i modelli di analisi contengono elementi del modello che possono essere utilizzati per sviluppare un modello dati concettuale iniziale.  Per progetti che utilizzano la modellazione di business, le entità e le relazioni di business identificate nei modelli analisi di business sono perfezionate e dettagliate nel modello di analisi delle classi entità.  

Modello caso d'uso di sistema

Il modello caso d'uso di sistema contiene gli attori ed i casi d'uso di sistema che definiscono le principali interazioni degli utenti con il sistema. I casi d'uso di sistema definiscono i requisiti funzionali per il sistema.

Da una prospettiva di modellazione dati concettuale, gli attori di sistema rappresentano delle entità esterne al sistema per le quali il sistema dovrebbe memorizzare le informazioni permanenti. Ciò è importante nei casi in cui l'attore è un sistema esterno che fornisce dati e/o riceve dati dal sistema che si sta sviluppando.  Gli attori di sistema possono derivare dagli attori di business nel modello caso d'uso di business e dai dipendenti nel modello analisi di business. 

La figura riportata di seguito illustra il modello caso d'uso di busines per il sistema di asta in linea. In questo modello, gli attori di business Acquirente e Venditore sono adesso derivati da uno generico attore di business utente. Un nuovo attore di sistema denominato Credit Service Bureau è stato aggiunto per giustificare la necessità di elaborare i pagamenti attraverso un'entità esterna. Questo nuovo attore di sistema è un'altra entità candidata al modello dati concettuale.



Il diagramma è descritto nel contenuto.



Modello di analisi

Il modello di analisi contiene le classi di analisi identificate nelle realizzazioni del caso d'uso per i casi d'uso di sistema. I tipi di classi di analisi che sono di primario interesse da una prospettiva di modellazione dati concettuale sono le classi di analisi entità. Come definito nella sezione Linea guida: Classi di analisi, le classi di analisi entità rappresentano le informazioni gestite dal sistema che vanno memorizzate in modo permanente.  Le classi di analisi entità e le relazioni associate formano la base del modello dati iniziale per l'applicazione. 

Le classi di analisi entità concettuali nel modello di analisi possono essere perfezionate e dettagliate nelle classi di progettazioni permanenti logiche del modello di progettazione. Queste classi di progettazione rappresentano le tabelle candidate al modello dati. Gli attributi delle classi sono le colonne candidate alle tabelle e rappresentano anche le chiavi candidate. Consultare Linea guida: Database relazionali Forward engineering per una descrizione su come gli elementi nel modello di progettazione possono essere associati agli elementi del modello dati.