Estendere modelli e diagrammi UML

 

Per la documentazione più recente di Visual Studio 2017 RC, vedere Documentazione di Visual Studio 2017 RC.

In questo argomento sono riepilogati i diversi modi in cui è possibile estendere gli strumenti di modellazione UML di Visual Studio. Per individuare le versioni di Visual Studio che supportano i singoli tipi di modello e strumenti, vedere Supporto della versione per gli strumenti di architettura e modellazione

Nello scenario di esempio seguente Fabrikam progetta e installa sistemi di gestione bagagli in aeroporto. I progetti di diversi aeroporti presentano molte analogie in termini di attrezzatura di base e software che la controlla. Vi sono però anche molti fattori che variano notevolmente, come la configurazione dei nastri trasportatori, i banchi del check-in, i contenitori di stoccaggio e altre apparecchiature per la gestione dei bagagli.

All'inizio di un nuovo progetto, il team di Fabrikam crea un modello UML per discutere dei requisiti internamente e con il cliente. Vengono usati i diagrammi di attività per rappresentare il flusso dei bagagli, con nodi oggetto che rappresentano le singole attrezzature. Il modello UML non rappresenta direttamente il codice del sistema.

Il team degli strumenti di Fabrikam appronta una serie di miglioramenti per i team di sviluppo. Nelle sezioni seguenti sono descritti i tipi diversi di estensione che è possibile definire. È possibile combinare tra loro molte di queste tecniche in un'unica estensione di Visual Studio.

Per altre informazioni, guardare questo video: Collegamento a videoSerie sulle procedure MSDN: Strumenti ed estendibilità ULM.

I profili consentono di definire gli stereotipi e le proprietà aggiuntive negli elementi UML.

Gli sviluppatori di strumenti di Fabrikam definiscono gli stereotipi nei nodi oggetto dei diagrammi di attività, ad esempio "nastro trasportatore" e "banco check-in". Quando un membro del team crea uno schema per la gestione bagagli usando un diagramma di attività, può impostare gli stereotipi per indicare il tipo di attrezzatura rappresentato da ciascun nodo. Gli sviluppatori di strumenti definiscono le proprietà aggiuntive in alcuni stereotipi, in modo da consentire agli utenti di registrare valori come la capacità di un nastro trasportatore e il lato operativo del banco check-in.

Per altre informazioni, vedere Define a profile to extend UML.

Un elemento della casella degli strumenti personalizzata crea un elemento o un gruppo di elementi da un prototipo definito in un diagramma. È possibile ad esempio creare uno strumento che consente di creare casi di utilizzo in un determinato colore o stereotipo oppure un gruppo di classi e associazioni che rappresenta uno schema progettuale. È possibile aggiungere questi elementi della casella degli strumenti nelle estensioni di Visual Studio e distribuirli ad altri utenti.

Per altre informazioni, vedere Define a custom modeling toolbox item.

È possibile definire regole per assicurarsi che un modello UML sia conforme ai vincoli specificati.

Gli sviluppatori di strumenti di Fabrikam definiscono regole per evitare ai membri del team di commettere semplici errori nei modelli di gestione dei bagagli. Ad esempio, un banco del check-in non può essere connesso direttamente al contenitore di stoccaggio, ma tra essi deve esserci almeno un nastro trasportatore.

Per altre informazioni, vedere Definire vincoli di convalida per i modelli UML.

È possibile definire i comandi che gli utenti possono richiamare facendo clic con il pulsante destro del mouse sugli elementi in un diagramma UML. I comandi possono aggiornare il modello e i diagrammi o eseguire altre operazioni in Visual Studio.

Fabrikam definisce i comandi di menu per automatizzare le operazioni eseguite più di frequente, ad esempio creare un banco del check-in e connetterlo a un nastro trasportatore selezionato o ridisporre un diagramma in base alle regole di layout della società.

Vedere Definire un comando di menu in un diagramma di modellazione.

È possibile definire i comandi che gli utenti avviano facendo doppio clic su un elemento del diagramma o trascinando un diagramma o un elemento nel diagramma È possibile definire i comandi per la gestione di elementi trascinati da altri diagrammi UML, da altre parti di Visual Studio, da altre applicazioni o da Esplora risorse (o Esplora file).

I membri del team di Fabrikam possono associare un file, ad esempio una specifica, a qualsiasi elemento del modello trascinandolo dal desktop di Windows. Gli sviluppatori di strumenti hanno definito uno stereotipo che fornisce a qualsiasi elemento una proprietà del percorso del file e un movimento che imposta lo stereotipo e il percorso del file quando viene rilasciato un file su un elemento.

Per altre informazioni, vedere Definire un gestore modelli in un diagramma di modellazione.

È possibile scrivere codice che risponda alle modifiche apportate al modello, sia per modifiche determinate da azioni dell'utente che da altro codice programma.

Gli sviluppatori di Fabrikam creano un codice che imposta automaticamente il colore di un elemento dipendente dal relativo stereotipo. Questo consente agli utenti di distinguere più facilmente i diversi ruoli svolti dagli elementi nei modelli.

Per altre informazioni, vedere How to: Respond to Changes in a UML Model.

Il bus di modelli consente di accedere a un diagramma o un modello da un altro diagramma o da un'altra estensione Visual Studio. Consente anche di distribuire le informazioni su più modelli, in modo tale che più persone possano lavorare contemporaneamente sul modello combinato.

Fabrikam usa gli elementi nei diagrammi di attività per rappresentare l'attrezzatura per la gestione dei bagagli. Ogni apparecchiatura può avere una specifica più dettagliata in un altro diagramma, che può trovarsi in un altro modello. I vincoli di convalida nel diagramma di flusso dei bagagli possono recuperare le proprietà rilevanti dell'attrezzatura da altri diagrammi. I riferimenti agli altri diagrammi vengono archiviati in proprietà aggiuntive definite negli stereotipi.

Per altre informazioni, vedere Integrate UML models with other models and tools.

Da un modello è possibile generare codice programma, script, configurazioni, documenti, nuovi modelli o altri elementi.

Nei sistemi per la gestione dei bagagli progettati da Fabrikam, gran parte del codice programma è lo stesso per tutti i progetti. L'aspetto variabile principale è il piano del flusso dei bagagli nell'aeroporto. Quando il team di progettazione ha maturato esperienza con i primi progetti, gli sviluppatori di strumenti creano un modello che genera, a partire dal modello del flusso di bagagli, gran parte del codice programma variabile e altri file, ad esempio i documenti utente. In questo modo, il tempo di sviluppo e il tasso di errore in ogni nuovo progetto si riducono sensibilmente.

Per altre informazioni, vedere Generate files from a UML model.

È possibile collegare elementi di lavoro agli elementi del modello e accedere agli elementi collegati a livello di codice.

Gli sviluppatori di strumenti di Fabrikam scrivono uno strumento che genera una pianificazione del lavoro per ogni progetto di aeroporto. Gli elementi di lavoro nella pianificazione sono collegati agli elementi del modello.

Per altre informazioni, vedere Define a work item link handler.

È possibile creare applicazioni autonome ed estensioni di Visual Studio che possono caricare modelli UML.

Gli sviluppatori di Fabrikam creano uno strumento che legge un modello e genera report dello stato di avanzamento del lavoro su ogni elemento del modello.

Per altre informazioni, vedere Read a UML model in program code.

Se si usa spesso un particolare tipo di modello, può essere utile creare un linguaggio specifico di dominio. Questa operazione può soddisfare le esigenze aziendali in modo migliore rispetto a un modello UML, ma richiede maggiori interventi a livello di compilazione e manutenzione. Per altre informazioni, vedere Modeling SDK per Visual Studio - linguaggi specifici di dominio.

CategoriaCollegamenti
VideoCollegamento a video Serie sulle procedure MSDN: Strumenti ed estendibilità ULM

 Collegamento a video Channel 9: UML con Visual Studio
Forum- Visual Studio Visualization and Modeling Tools
- Visual Studio Visualization and Modeling SDK (strumenti DSL)
BlogBlog di Visual Studi ALM + Team Foundation Server
Articoli e pubblicazioni tecnicheMSDN Architecture Center

Create models for your app
API Reference for UML Modeling Extensibility

Mostra: