Guida al tool: Generazione di elementi da un modello utilizzando Rational Rose
Questa guida al tool descrive la capacità di Rational Rose di generare elementi sorgente da un modello Rose, consentendo alle persone che effettuano le implementazioni di creare e aggiornare il sorgente in base alla progettazione documentata in Rose.
Strumento: Rational Rose
Relazioni
Descrizione principale

Panoramica

Attraverso i componenti aggiuntivi del linguaggio, Rational Rose consente agli sviluppatori di generare codice direttamente da un modello di progettazione. Mentre si sviluppa la progettazione, coloro che implementano il prodotto possono effettuare il round-trip del codice (sincronizzazione dei progetti con il codice) in un processo iterativo di generazione del codice da un modello, aggiornando il sorgente ed effettuando il reverse engineering sulle modifiche per riportarle al modello di progettazione.  

I seguenti componenti aggiuntivi di Rational Rose forniscono funzioni di generazione del codice:

Visual C++

Rational Rose Visual C++ consente di generare il codice sorgente Visual C++ da classi e componenti presenti nel modello Rose. Le sue funzioni comprendono:

  • Il round-trip engineering di modelli e del codice Visual C++
  • La completa generazioni di costrutti comuni di linguaggio Visual C++, quali relazioni, typedef, enum, mappe message/object/COM, costruttori e distruttori 
  • Supporto basato su dialoghi per il codice di modellazione e di generazione per gli elementi Visual C++
  • Controllo della sintassi
  • Modalità di autosincronizzazione per l'aggiornamento automatico del codice o del modello quando viene modificato 
  • Capacità di estendere e personalizzare la generazione di codice attraverso le librerie delle interfacce COM, ATL e MFC
  • Integrazione con Visual Studio di Microsoft, compresi i file IDL
  • Supporto per le classi delle maschere Visual C++ e i pattern di codice specificato dall'utente

 Visual Basic

Poiché è strettamente integrato con l'ambiente Microsoft Visual Basic 6.0, il componente aggiuntivo di supporto al linguaggio Visual Basic di Rational Rose consente di generare codice sorgente Visual Basic da componenti e classi e di visualizzare il codice esistente in UML nel modello Rose. I tool estensibili e personalizzabili, basati su dialoghi, guidano l'utente nel processo di generazione del codice da un modello Rose e nel processo di aggiornamento del codice quando viene modificato.

Le funzioni comprendono:

  • Creazione e la specifica di nuove classi Visual Basic nel modello Rose con l'aiuto della procedura guidata della classe
  • Creazione di membri nella classe e la specifica dei dettagli di implementazione sulla classe e i relativi membri nel tool di supporto ai modelli (Model Assistant)
  • Anteprima del codice da generare per ciascun membro di ciascuna classe
  • Sviluppo di classi nei componenti con l'aiuto del tool di assegnazione dei componenti (Component Assignment)
  • Completa generazione di costrutti comuni del linguaggio Visual Basic, quali costanti, istruzioni Declare e Event, dichiarazioni Enum e Type, procedure Get, Let e Set, classi di raccolta definite dall'utente dai componenti presenti nel modello nei corrispondenti progetti dei sorgenti con l'aiuto del tool di aggiornamento codice (Code Update).
  • Modalità di sincronizzazione per l'aggiornamento degli elementi di progetto del codice sorgente quando vengono eliminati gli elementi dei modelli 
  • Capacità di personalizzare ed estendere la generazione di codice utilizzando le maschere di codice di Visual Studio e VBScript
  • Capacità di automatizzare ed estendere il round-trip engineering utilizzando VSRTE SDK

ANSI C++

Rose ANSI C+ è il componente aggiuntivo C++ per Rational Rose. Questo componente aggiuntivo fornisce:

  • Supporto per l'evoluzione del modello dall'analisi alla progettazione
  • Supporto per il linguaggio C++ senza limitazioni al compilatore C++ di un singolo fornitore
  • Generazione di codice sorgente C++ da un modello
  • Round-trip engineering che sincronizza modelli e genera codice C++ tra più iterazioni
  • Modifiche, apportate al codice, che vengono riportate al modello durante il reverse engineering
  • Progettazione, modellazione e visualizzazione di tutti i costrutti C++ comprese classi, maschere, spazi nomi ereditarietà e funzioni di membri di classe
  • Supporto per ampi framework
  • Generazione di codice controllato dall'utente mediante pattern di costruttori, decostruttori e membri di classi predefiniti.
  • Meccanismo dei fogli di stile che consente la formattazione personalizzata di codice generato

Rose J (Java) 

Rational Rose J consente di generare codice sorgente Java dalle classi e i componenti presenti nel modello Rose. Le sue funzioni comprendono: 

  • Generazione completa di costrutti comuni al linguaggio Java, quali relazioni di importazioni, estensioni, implementazioni e lanci e costruttori e inizializzatori.
  • Controllo della sintassi
  • Generazione di tag Javadoc
  • Supporto basato su dialoghi per la modellazione e la generazione di codice per JavaBean e Servlet Enterprise, compresi i file di archivio JAR e WAR per lo sviluppo di elementi J2EE (Java 2 Enterprise Edition)
  • Modalità di autosincronizzazione per l'aggiornamento automatico del codice quando viene modificato un modello
  • Capacità di estendere e personalizzare la generazione di codice attraverso l'interfaccia Java XFE
  • Integrazione con VisualAge di IBM per Java 
  • Supporto dell'editor integrato per l'esplorazione e la modifica di codice sorgente Java
  • Framework Java per l'aggiunta di classi API ad un modello

CORBA 

Rational Rose CORBA consente di generare codice IDL conforme a CORBA dalle classi e dai componenti presenti nel modello Rose. Le sue funzioni comprendono:

  • Completa generazione di costrutti comuni di IDL CORBA, quali const, enum, struct, union, typedef, exception, value, fixed, e interface, come definito nella specifica di CORBA 2.3
  • Generazione di tipi nativi, simili ai tipi fondamentali CORBA, per consentire agli utenti di specificare tipi dipendenti dal linguaggio di programmazione per essere utilizzati da adattatori di oggetti
  • Controllo della sintassi
  • Supporto dell'editor integrato per l'esplorazione e la modifica di codice sorgente IDL
  • Capacità di round-trip engineering che sincronizza modelli e genera sorgente IDL tra più iterazioni

XML DTD 

Il componente aggiuntivo DTD XML di Rational Rose fornisce la visualizzazione, la modellazione e i tool per i documenti XML che utilizzano DTD (Document Type Definition).   Per un modello DTD XML valido, è possibile utilizzare la funzione forward engineering per creare nuovi DTD XML.

Mediante la modellazione dei DTD XML, è possibile visualizzare la struttura del documento per vedere quali definizioni di elementi modificare o eliminare. Poiché probabilmente non si lavora in una situazione isolata, è possibile condividere il modello DTD XML con i membri del team di sviluppo per verificare di aver acquisito i requisiti dei documenti XML.  

Il programma di controllo sintassi DTD XML di Rational Rose rileva errori nel modello DTD XML in modo da consentire l'effettuazione di correzioni prima che venga implementato il DTD.

Per supportare la mappatura da XML a UML, Rational Rose estende UML con gli stereotipi per elementi XML, elenchi attributi elementi, entità e notazioni. Gli stereotipi o i valori con tag rappresentano simboli dell'operatore XML, elenchi di sequenze, elenchi di scelte e una molteplicità di attributi di elementi.