Guida al tool: Progettazione e modellazione di database utilizzando Rational Rose Data Modeler
Questa guida al tool descrive il modo in cui creare un modello dati utilizzando Rational Rose Data Modeler. Inoltre, questa guida al tool fornisce informazioni su come generare uno nuovo DDL oppure uno schema database dal modello dati di Rose e come effettuare il reverse engineering (costruzione di modelli a partire da un codice esistente) di un database per creare un modello dati.
Strumento: Rational Rose
Relazioni
Elementi correlati
Descrizione principale

Panoramica

Le funzioni di Rational Rose Data Modeler consentono al progettista database e allo sviluppatore software di sviluppare il progetto dell'applicazione e del database utilizzando lo stesso tool. In qualità di progettista database oppure di sviluppatore, è possibile utilizzare Rational Rose Data Modeler per creare modelli di database e progettarli, e per integrare l'applicazione di cui si dispone e il database. 

Rational Rose Data Modeler utilizza o crea tre tipi di modelli: un modello oggetto, un modello dati e un modello di memorizzazione dati facoltativo. Un modello oggetto rappresenta classi, il loro comportamento e le relazioni tra classi. Il modello "oggetto" di Rational Rose Data Modeler in genere corrisponde al prodotto di lavoro Modello di progettazione di RUP. Il diagramma di classe di Rose rappresenta una vista di un modello oggetto. Un modello dati  rappresenta la struttura del database, così come implementato dall'azienda.  Il modello di memorizzazione di dati facoltativi rappresenta la struttura di memorizzazione fisica del database.   Il "modello dati" e il "modello di memorizzazione dati" di Rational Rose Data Modeler in genere corrispondono al prodotto di lavoro Modello dati di RUP.

È possibile creare un modello del progetto fisico del database trasformando le classi permanenti, presenti nel modello oggetto, in tabelle, presenti in un modello dati.  Le classi permanenti devono essere assegnate ad un componente ed essere collocate nello stesso pacchetto logico.   Un altro modo per creare un modello del progetto di database fisico è quello di effettuare il reverse engineering di uno schema database esistente oppure uno script DDL.

Utilizzando le opzioni di trasformazione di Rose Data Modeler, è possibile integrare la progettazione database e l'applicazione. Le opzioni di trasformazione associano elementi, contenuti in un modello oggetto, per creare un modello dati oppure trasformano elementi, contenuti in un modello dati, allo scopo di creare un modello oggetto. Per creare un modello oggetto, è necessario comprendere i concetti OOAD (Object-Oriented Analysis and Design) e l'UML (Unified Modeling Language). Per la creazione di un modello dati occorre comprendere la progettazione dei database relazionali. Rose Data Modeler utilizza la terminologia dei database e gli stereotipi UML per rappresentare elementi di database.
 

Modalità d'uso del tool

  1. Sviluppo di un modello dati logico (facoltativo)
  2. Sviluppo di progettazione di un database fisico
  3. Analisi dei risultati

Oltre alle operazioni descritte qui sopra, questa guida ai tool fornisce anche informazioni sui seguenti argomenti aggiuntivi relativi alla creazione e gestione del modello dati in Rational Rose.

Consultare la sezione   icona della guida Guida introduttiva degli argomenti della guida in linea di Rose Data Modeler per un panoramica sulla progettazione e modellazione dei database utilizzando Rational Rose Data Modeler. 

1. Sviluppo di un modello dati logico (facoltativo)

È possibile che per alcuni progetti occorra creare un modello "logico" idealizzato di una progettazione di database che acquisisca una vista, indipendente dall'applicazione, delle entità dati logiche della chiave e delle loro relazioni.   È possibile ritenere questo "modello dati logico" come se fosse un tipo di "analisi" del modello, simile al Prodotto di lavoro: Modello di analisi, da poter utilizzare nello sviluppo della progettazione di un'applicazione.    Si noti che il modello dati logico viene incluso nel Prodotto di lavoro: Modello dati e non viene considerato un prodotto di lavoro RUP separato.  

Il modello dati logico può essere creato utilizzando le funzioni di Rational Rose Data Modeler per la creazione di un nuovo modello di dati con i diagrammi dei modelli dati. In Rational Rose Data Modeler, il modello dati logico verrà racchiuso in un pacchetto di schemi separato nella vista logica di Rational Rose.   Consultare i seguenti argomenti della guida in linea per informazioni sulla creazione di un modello dati:

  • icona della guida Creazione di un modello dati
  • icona della guida Creazione di uno schema
  • icona della guida Utilizzo dei diagrammi del modello dati.

Lo sviluppo di un modello dati logico idealizzato è facoltativo, basato sulle esigenze specifiche del progetto.   I progetti possono scegliere di sviluppare il modello dati attraverso l'utilizzo delle funzioni di trasformazione di un oggetto in tabella di Rational Rose Data Modeler, invece di costruire il modello separatamente.  

2. Sviluppo di progettazione di un database fisico

La progettazione database fisica consiste nella progettazione di tabelle dettagliate del database creato utilizzando i diagrammi di modelli dati nella vista logica.   Il progetto di database fisico può essere rappresentato come un "modello dati fisico"  che comprende anche gli elementi del modello per le viste del database, gli indici, i vincoli, le procedure memorizzate e altri elementi, come descritto nell'argomento della guida in linea icona della guida Elementi del modello dati.   Questo modello dati fisico non viene considerato come un prodotto di lavoro separato, ma come parte del Prodotto di lavoro: Modello dati è può essere proseguito in uno o più pacchetti di schemi nella vista logica di Rational Rose.  

Gli elementi del modello di progettazione database fisico iniziale possono essere creati inizialmente in uno dei seguenti modi:

  • Utilizzare le funzioni di trasformazione di oggetto in tabella di Rational Rose Data Modeler per creare un insieme di tabelle iniziali.
  • Reverse engineering di uno schema di database esistente oppure uno script DDL (consultare   icona della guida Reverse engineering di un database oppure di un file DDL)
  • Sviluppare un modello dati fisico iniziale attraverso l'evoluzione della progettazione database logica, contenuta in un modello dati logico facoltativo.

Le successive operazioni indicate in questa guida al tool riguardano l'approccio all'avvio della progettazione del database fisico con l'utilizzo della trasformazioni di oggetto in tabella. Consultare icona della guida l'argomento della guida in linea Trasformazione di un modello oggetto in un modello dati per informazioni relative ai prerequisiti necessari all'utilizzo della funzione di trasformazione di oggetto in tabella.

Creazione di domini

La creazione di domini implementa i tipi di dati definiti dall'utente, che possono essere utilizzati attraverso un modello dati allo scopo di applicare gli standard di progettazione database. Consultare il seguente argomenti della guida in linea   icona della guida Utilizzo dei domini per una panoramica sul tipo di domini e sul loro utilizzo.   Quando nel modello di dati viene creato prima un pacchetto di schemi, Rational Rose Data Modeler crea anche un pacchetto dei tipi di dati globali nella vista logica, utilizzata per memorizzare i pacchetti dei domini e i domini. Fare riferimento ai seguenti argomenti della guida in linea di Rational Rose Data Modeler per ulteriori informazioni sulla creazione dei domini.

  • icona della guida Domini
  • icona della guida Creazione di un pacchetto di domini
  • icona della guida Creazione di un dominio

Creazione di elementi di progettazione database fisici iniziali

Con Rational Rose Data Modeler è possibile trasformare le classi e le relazioni che intercorrono tra loro nel modello oggetto, in modo da creare relazioni tra tabelle e modello dati nel modello dati. Consultare l'argomento della guida in linea di Rational Rose Data Modeler icona della guida Trasformazione dell'associazione di elementi del modello oggetto per ulteriori informazioni su come gli elementi del modello oggetto vengono trasformati negli elementi del modello dati.

 Prima di trasformare un modello oggetto in un modello dati, effettuare le seguenti operazioni:

  • Impostazione dello stato delle classi su permanente.
  • Assegnazione delle classi ad un componente che utilizzi il linguaggio Java, Visual Basic oppure Analysis.
  • Raggruppamento delle classi nello stesso pacchetto logico.

Le specifiche operazioni di trasformazione vengono descritte nell'argomento della guida in linea di Rational Rose Data Modeler icona della guida Trasformazione di un modello oggetto in un modello dati. Gli elementi del modello oggetto si trasformano in quelli del modello dati utilizzando le mappature del tipo di dati specifiche per il DBMS specificato. Una volta completata la trasformazione, è possibile creare i diagrammi del modello dati per sviluppare la progettazione database fisica in dettaglio.   Consultare icona della guida Creazione dei diagrammi del modello dati per ulteriori informazioni.

È possibile modificare le tabelle e/o creare tabelle aggiuntive e relazioni nel modello dati. Fare riferimento ai seguenti argomenti per ulteriori informazioni sulla creazione di tabelle e relazioni.

  • icona della guida Tabelle e icona della guida Creazione delle tabelle
  • icona della guida Colonne e icona della guida Creazione di una colonna
  • icona della guida Relazioni e icona della guida Creazione delle relazioni

Definizione delle tabelle di riferimento

Creare le tabelle di riferimento come necessario per la gestione di qualsiasi elemento di dati statico nel database.  Per informazioni sulla creazione di tabelle e relazioni, consultare l'elenco degli argomenti sulle tabelle e relazioni nelle istruzioni precedentemente riportate di questa guida al tool.

Creazione di vincoli di chiavi primarie e univoche

Definire i vincoli di chiavi primarie e univoche per identificare le righe di informazioni in una tabella.  Per informazioni sulla creazione e l'utilizzo di vincoli di chiavi primarie e univoche consultare i seguenti argomenti della guida in linea di Rose Data Modeler:

  • icona della guida Vincoli di chiavi
  • icona della guida Creazione di un vincolo di chiavi
  • icona della guida Creazione di chiavi (primarie e univoche)

Definizione di regole di rafforzamento dati e di integrità referenziale

Definizione di regole di integrità referenziale per assicurarsi che gli aggiornamenti al database vengono gestiti in modo appropriato.   Rational Rose Data Modeler supporta DRI (Declarative Referential Integrity) e i trigger RI (Referential Integrity) generati dal sistema.   Consultare gli argomenti della guida in linea per informazioni su

  • icona della guida Integrità referenziale
  • icona della guida Definizione di integrità referenziale

Applicare i vincoli di controllo per applicare le regole aziendali nel modello dati.   Rational Rose Data Modeler consente di assegnare i vincoli di controllo ad una colonna, ad un dominio o ad una tabella.   I seguenti argomenti della guida in linea forniscono ulteriori informazioni sulla creazione e l'utilizzo di vincoli di controllo.

  • icona della guida Vincoli di controllo
  • icona della guida Creazione di vincoli di controllo
  • icona della guida Applicazione delle regole aziendali

I vincoli di chiavi esterne sono un altro importante aspetto dell'applicazione dei dati e dell'integrità referenziale.   È possibile realizzare i vincoli di chiavi esterne mediante una relazione tra tabelle.  Quando si crea una relazione, la chiave primaria della tabella parent viene migrata alla tabella child come chiave esterna. Consultare i seguenti argomenti della guida in linea per ulteriori informazioni sulla creazione dei vincoli di chiave icona della guida Vincoli di chiavi e icona della guida Migrazione di chiavi.

Denormalizzazione della progettazione database per il miglioramento delle prestazioni

Per migliorare le prestazioni, ogni tanto è possibile che si desideri memorizzare oggetti che vengono richiamati insieme nella stessa tabella.  Tale tecnica viene denominata denormalizzazione.  Per rappresentare questa tecnica nel modello dati, unificare le colonne univoche di due tabelle in una sola, e poi eliminare la seconda tabella.   Per ulteriori informazioni sulla denormalizzazione e l'ottimizzazione, consultare i seguenti argomenti della guida in linea di Rational Rose Data Modeler:

  • icona della guida Denormalizzazione del modello dati
  • icona della guida Ottimizzazione del modello dati

Ottimizzazione dell'accesso dati

Un'ulteriore tecnica di ottimizzazione è quella di utilizzare l'indicizzazione delle colonne allo scopo di accedere ai dati delle tabelle in modo più efficiente. Consultare i seguenti argomenti per informazioni sulla creazione di indici nel modello dati.

  • icona della guida Indici
  • icona della guida Creazione di un indice
  • icona della guida Ottimizzazione del modello dati

Inoltre, è possibile definire le viste per migliorare l'accesso dati.  È possibile utilizzare le viste per creare una tabella virtuale, composta da colonne di una o più tabelle e/o altre viste, alle quali l'applicazione accede con frequenza. I seguenti argomenti della guida in linea di Rational Rose Data Modeler forniscono informazioni dettagliate sulla creazione di viste e relazioni tra viste e tabelle del modello:

  • icona della guida Viste e icona della guida Creazione di viste
  • icona della guida Utilizzo delle viste
  • icona della guida Dipendenze e  icona della guida Utilizzo delle dipendenze tra viste

Definizione delle caratteristiche della memoria

Modellare la memorizzazione fisica dei dati creazione del modello di memorizzazione di dati. Un modello di memorizzazione di dati è formato da un database, che contiene uno o più tablespace.  Questo "modelli di memorizzazione dati" viene considerato parte del modello dati fisico, che viene incluso nel Prodotto di lavoro: modello dati in RUP, e non è un prodotto di lavoro separato.   Il modello di memorizzazione dati è contenuto nella vista Componente di tutto il modello Rose.

Un tablespace è un elemento di memorizzazione logica, che memorizza i dati della tabella. È possibile assegnare una o più tabelle al tablespace e distribuire i dati della tabella tra uno o più contenitori. Un contenitore è una periferica di memorizzazione fisica, quale un disco, un file o una directory. Ciascun contenitore viene segmentato in aree o pagine e misurato in kilobyte.  Consultare un elenco di argomenti nelle seguenti sezioni della guida in linea di Rose Data Modeler per ulteriori informazioni sui database e i tablespace.

  • icona della guida Modellazione della memorizzazione dati
  • icona della guida Creazione di un modello di memorizzazione dati

Inoltre, queste sezioni della guida comprendono argomenti che forniscono informazioni sugli elementi del modello di memorizzazione dati, specifici dei DBMS (Database Management System) supportati da Rational Rose Data Modeler.

Progettazione delle procedure memorizzate come necessario per la distribuzione del comportamento delle classi al database

Definire le procedure memorizzate per supportare una memorizzazione e richiamo efficiente delle informazioni nel database. Esaminare le operazioni delle classi di progettazione, utilizzate per creare le tabelle iniziali per procedure memorizzate candidate.   Le procedure memorizzate possono essere implementate come procedure o funzioni.  Per ulteriori informazioni su come creare procedure memorizzate nel modello dati, consultare i seguenti argomenti della guida in linea di Rational Rose Data Modeler:

  • icona della guida Procedure memorizzate
  • icona della guida Creazione di procedure memorizzate
  • icona della guida Utilizzo di procedure memorizzate

È inoltre possibile definire trigger come necessario per controllare e gestire ulteriormente le modifiche apportate alle informazioni contenute nelle tabelle. Consultare i seguenti argomenti della guida in linea per ulteriori informazioni sulla creazione di trigger nel modello dati:

  • icona della guida Personalizzazione di trigger
  • icona della guida Creazione di trigger personalizzati
  • icona della guida Utilizzo di trigger personalizzati

3. Analisi dei risultati

Analizzare i risultati della progettazione database nel Modello dati per rilevare se questa è coerente con la progettazione dell'applicazione nel modello di progettazione e con la complessiva struttura dell'architettura dell'applicazione.  Consultare l'Elenco di controllo: modello dati per consultare alcuni argomenti specifici.

Argomenti aggiuntivi

Questa sezione della guida al tool descrive alcuni elementi aggiuntivi relativi al roundtrip engineering nonché alla gestione del modello dati e del database.

Forward engineering del modello dati

Quando una progettazione database dettagliata (compresa la progettazione della memorizzazione dati) è stata sviluppata sufficientemente nel modello dati, è possibile utilizzare la procedura guidata per forward engineering di Rose Data Modeler per generare un DDL oppure uno schema database dal diagramma del modello dati. La procedura guidata per forward engineering legge lo schema nel modello dati e genera uno script DDL per il DBMS specificato nella procedura guidata. Nella procedura guidata è possibile scegliere di eseguire uno script DDL per generare uno schema database.

Nella procedura guidata del forward engineering, selezionare le opzioni per generare:

  • Tabelle
  • Indici
  • Trigger
  • Procedure memorizzate
  • Viste
  • Tablespace
  • Nomi completi. Vengono utilizzati per indicare il nome schema nei nomi tabella.
  • Identificatori tra apici per tabelle, colonne e schema necessari alla localizzazione con DBCS (Double Byte Character Set)
  • Istruzioni di cancellazione SQL per sovrascrivere gli script DDL, gli elementi di database oppure i commenti

Occorre accertarsi che sia stata stabilita la connettività appropriata del database per abilitare l'attivazione del processo di forward engineering.   Consultare i seguenti argomenti della guida in linea di Rational Rose Data Modeler per ulteriori informazioni su forward engineering:

  • icona della guida Forward engineering di un DDL oppure un Database (informazioni sul processo di forward engineering
  • icona della guida Inoltro della progettazione ad un DDL o un Database (istruzioni specifiche per l'esecuzione della procedura guidata di forward engineering)

Consultare l'elenco degli argomenti DBMS (Database Management System) nella sezione icona della guida Riferimento della guida in linea di Rational Rose Data Modeler per avere informazioni specifiche sulla mappatura dei tipi di dati, sulle connessioni di database e su altri argomenti relativi al forward engineering del modello dati ad un DBMS di destinazione specifico.  

Gestione del modello dati

Una volta che è stato effettuato il forward engineening di un modello dati per la creazione di un database, è possibile utilizzare la procedura guidata per il confronto e la sincronizzazione di Rational Rose Data Modeler in modo da mantenere la coerenza del modello dati con il database implementato.  

Quando si sincronizza un modello dati con un database implementato, occorre accertarsi che sia stata stabilita la connettività appropriata del database in modo da consentire il funzionamento del processo di confronto e sincronizzazione.   Consultare i seguenti argomenti della guida in linea di Rational Rose Data Modeler per ulteriori informazioni sul confronto e sincronizzazione del modello dati.

  • icona della guida Confronto e sincronizzazione del modello dati  (informazioni sul processo di confronto e sincronizzazione)
  • icona della guida Confronto di uno schema con un database o un file DDL proveniente da un database oppure un file DDL (operazioni specifiche per l'esecuzione la procedura guidata per il confronto e sincronizzazione)

Consultare l'elenco degli argomenti DBMS (Database Management System) nella sezione icona della guida Riferimento della guida in linea di Rational Rose Data Modeler per avere informazioni specifiche sulla mappatura dei tipi di dati, sulle connessioni di database e su altri argomenti relativi al confronto e sincronizzazione del modello dati ad un DBMS di destinazione specifico.  

Fare riferimento anche all'argomento della guida in linea di Rational Rose Data Modeler icona della guida Modifica dei modelli dati per avere informazioni sui ruoli specifici per apportare modifiche agli elementi dei modelli dati.

Reverse engineering del modello dati da uno script DDL ad uno schema di database

Utilizzare la procedura guidata per reverse engineering di Rational Rose Data Modeler per generare un modello di dati da uno schema di database oppure un file DDL. La procedura guidata per reverse engineering legge lo schema di database oppure il file DDL e crea un diagramma del modello dati che comprende tutte le entità degli identificatori citati. In base al DBMS, la procedura guidata per reverse engineering di Rose Data Modeler modella tabelle,  relazioni tra tabelle, procedure memorizzate, indici e trigger nel diagramma del modello dati.

Quando si sincronizza un modello dati con un database implementato, occorre accertarsi che sia stata stabilita la connettività appropriata del database in modo da consentire il funzionamento del processo di reverse engineering.  Consultare i seguenti argomenti della guida in linea di Rational Rose Data Modeler per ulteriori informazioni sul reverse engineering:

  • icona della guida Reverse engineering di un database o DDL (informazioni sul processo di reverse engineering)
  • icona della guida Reverse engineering di un database o file DDL (operazioni specifiche per l'esecuzione della procedura guidata per reverse engineering)

Consultare l'elenco di argomenti DBMS (Database Management System) nella sezione icona della guida Riferimento della guida in linea di Rational Rose Data Modeler per informazioni specifiche sulla mappatura dei tipi di dati, le connessioni di database ed altri argomenti correlati al reverse engineering del modello dati da un DBMS specifico. 

Dopo il reverse engineering del database o DDL, è possibile anche trasformare le tabelle, presenti nel modello dati generato dal processo di reverse engineering, nelle classi del modello oggetto (modello progettazione). Consultare i seguenti argomenti per ulteriori informazioni sul processo di trasformazione da tabella a oggetto.

  • icona della guida Trasformazione di un modello dati ad un modello oggetto (informazioni sul processo trasformazione)
  • icona della guida Trasformazione del modello dati in un modello dati (operazioni specifiche per l'esecuzione della trasformazione)
  • icona della guida Trasformazione della mappatura di elementi dei modelli dati (mappatura degli elementi dei modelli dati con gli elementi dei modelli oggetti)