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.
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.
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.
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.
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.
|