Panoramica
Le seguenti operazioni vengono effettuate in questa guida al tool:
Ulteriori informazioni sul tool
Come parte del supporto per Model
Driven Development e Model Driven Architecture, il tool fornisce le capacità per spostarsi dal modello al codice
mediante l'utilizzo di trasformazioni. L'approccio principale è basato su una combinazione di mappature del tipo
(classi del modello d'origine, relativi attributi, operazioni, relazioni) e di contrassegni di modello d'origine,
definiti nel profilo. La ragione di questo metodo combinato è che nella maggior parte dei casi il modello d'origine non
contiene sufficienti informazioni per guidare la trasformazione. L'Architetto deve aggiungere 'contrassegni' specifici
che consentono alla trasformazione di avere luogo. Per ulteriori informazioni, fare riferimento a Meccanismi di analisi.
A seconda del profilo applicato i clienti dei meccanismi di analisi dovranno essere conseguentemente 'contrassegnati',
utilizzando lo stereotipo corretto. Per ulteriori informazioni, vedere Applicazione di trasformazioni.
Nota: anche se non si pianifica di utilizzare le trasformazioni automatizzate, si troverà utile l'utilizzo di profili
per 'contrassegnare' il modello. Basate sul profilo definito, queste informazioni, aggiunte ad un modello, possono
comprendere stereotipi, proprietà e vincoli. Definendo i profili appropriati, utilizzandoli in modo corretto e
comunicandone il significato, è possibile aggiungere un'alta precisione ai modelli col risultato di trasformazioni più
efficaci (senza tenere conto se la trasformazione sia automatizzata o eseguita manualmente).
Le operazioni principali da seguire nella creazione di un profilo comprendono:
-
Creazione di un progetto di profilo
-
Aggiunta di stereotipi
-
Utilizzo delle estensioni per collegare gli stereotipi agli elementi UML
-
Verifica con l'applicazione del profilo ad un progetto
-
Documentazione
-
Imballaggio come un plugin
-
Distribuzione mediante RAS
Lo strumento consente di individuare i clienti per ogni meccanismo e di documentare queste informazioni:
-
Individuazione di clienti facendo clic sul tasto destro nel meccanismo e utilizzare Filtri > Mostra elementi
correlati
-
Utilizzo di un diagramma degli argomenti. Vedere:
Diagrammi degli argomenti
-
Utilizzo di un diagramma di navigazione. Vedere:
Diagrammi di navigazione
-
Utilizzo di <<pacchetti>> di prospettiva per fornire una vista dei meccanismi utilizzati.
-
Utilizzo di <<pacchetti>> di struttura per fornire una vista del funzionamento interno dei meccanismi.
All'interno del pacchetto di struttura del meccanismo di analisi, i clienti vengono illustrati nel diagramma di
utilizzo del cliente, dove questi hanno una dipendenza dalla classe di meccanismo di analisi Come parte dello
stesso pacchetto di struttura, creare un componente di profilo per ogni profilo di caratteristiche necessario. Per
documentare i profili d'uso, utilizzare la Scheda di documentazione nella Vista delle proprietà della classe.
Raggruppare i clienti sulla base dell'utilizzo dei profili delle caratteristiche e illustrare le relazioni tra i
clienti e le classi di profilo in un diagramma di utilizzo del profilo.
Il repository RAS è un buon luogo per raggruppare i potenziali candidati da riutilizzare, specialmente i pattern.
Inoltre, un asset RAS può essere un modello che fornisce una rappresentazione del Meccanismo di implementazione.
Sarebbe dunque possibile memorizzare le rappresentazioni di modello dei meccanismi di implementazione in un repository
RAS condivisa e fare in modo che il team esegua una query di questo repository come richiesto.
Vedere: Asset
RAS e Asset
di pattern RAS.
Nota: alcune funzionalità del tool menzionate in questa sezione non sono supportate in RSM.
Se si sceglie un approccio Model Driven Development, questa operazione viene eseguita con l'aiuto delle capacità di
trasformazione. Esistono due tipi di trasformazioni: transform e pattern. Un transform è "una trasformazione
ottimizzata per l'elaborazione batch, principalmente in metamodelli, modelli e livelli di astrazione". Un pattern
rappresenta un tipo speciale di trasformazione, "ottimizzata per un'elaborazione a piccoli pezzi e interattiva
principalmente in un singolo metamodello e all'interno dello stesso livello di astrazione, spesso all'interno dello
stesso modello". Vedere i concetti relativi a Model
Driven Development e Model Driven Architecture e Meccanismi di
analisi.
Potrebbe risultare che vi sono molti meccanismi di implementazione adatti a realizzare il meccanismo di progettazione.
Un fattore aggiuntivo da prendere in considerazione nell'attuare la selezione è se il meccanismo di implementazione può
essere realizzato mediante una trasformazione. Inoltre, prestare attenzione ai meccanismi di implementazione riutilizzati
spesso nei progetti di sviluppo. Questi sono buoni candidati all'automazione mediante pattern e trasformazioni. Come parte
delle analisi e per automatizzare la mappatura tra il progetto e il meccanismo di implementazione sarà necessario calcolare
il ritorno sull'investimento necessario per l'automatizzazione.
A seconda del profilo applicato al modello, molti transform sono disponibili "fuori dalla scatola". Per gli utenti più
avanzati, il tool fornisce una struttura per creare trasformazioni personalizzate. Vedere Applicazione di pattern e Applicazione di
trasformazioni.
In un ambiente di sviluppo più centrato sul codice, alcune di queste mappature potrebbero essere rilevate partendo dal
codice esistente mediante le capacità di rilevamento di pattern e anti-pattern, che fanno parte del supporto relativo
ad Analisi strutturale. Vedere le linee guida Rilevamento, analisi e controllo strutturale.
Una volta identificati i meccanismi, creare un Diagramma di mappatura dei meccanismi dell'architettura.
I meccanismi sono elementi del modello di progettazione (quali il Pacchetto di progettazione, la Classe di
progettazione, ed il Sottosistema di progettazione) che possono essere rappresentati nel Modello di progettazione come
parte dei rispettivi compiti di progettazione.Vedere Identificazione degli elementi di progettazione per le linee guida
della creazione degli elementi del modello Progettazione. Si noti che un pattern si adatta bene alla documentazione di
un meccanismo di progettazione e di implementazione, poiché consente ai clienti del meccanismo di espandere il pattern
e di generare la maggior parte della progettazione e del codice richiesti. Vedere: Authoring di pattern e Imballaggio di asset da
riutilizzare .
Altre opzioni per la documentazione dei meccanismi includono:
-
Utilizzo di note sui diagrammi
-
Diagrammi aggiuntivi che specifichino gli aspetti statici e dinamici del meccanismo
-
Utilizzo di vincoli
-
Utilizzo di profili
-
Distribuzione dei meccanismi di modelli come asset RAS (utilizzare il meccanismo di imballaggio RAS per conservare
la documentazione riguardo l'asset in aggiunta allo stesso).
Un ulteriore aspetto da considerare nella documentazione è la definizione delle regole di codice che possono essere
utilizzate per stabilire il modo in cui il meccanismo deve essere utilizzato. Una volta definite le linee guida,
utilizzare Revisione del codice per automatizzare l'applicazione delle linee guida, in modo da assicurare la coerenza
al modello di utilizzo specificato.
Esercitazioni:
-
Applicazione
di un pattern
-
Creazione di un
pattern
Esempi:
-
Asset RAS -
Asset RAS da importare/esportare
-
Pattern -
Modello UML semplice
|