< Indietro | Avanti >

Lezione 5: Creazione e perfezionamento delle dichiarazioni di associazione richieste dalla dichiarazione di associazione operazione-a-operazione

Questa lezione spiega come creare le dichiarazioni di associazione richieste dalla dichiarazione di associazione operazione-e-operazione per trasformare gli elementi in un'operazione. Ad esempio, verrà creata una dichiarazione di associazione che trasforma i parametri nel modello di origine in parametri nel modello di destinazione; verrà inoltre creata una dichiarazione di associazione che definisce come trasformare i tipi primitivi nel modello di origine in tipi primitivi nel modello di destinazione. In questa lezione, verranno anche create le regole di associazione per la dichiarazione di associazione operazione-a-operazione, che richiamano le dichiarazioni di associazione create in questa lezione.
La seguente tabella contiene le dichiarazioni di associazione e le regole di associazione che verranno create in questa lezione:
Dichiarazione di associazione Tipo di oggetto di input e di output Attributi associati Tipo di regola di associazione Descrizione della regola di associazione
Primitive2Primitive Tipo primitive UML name spostamento Crea un tipo primitive nell'elemento la cui associazione secondaria richiama la dichiarazione di associazione Primitive2Primitive
Parameter2Parameter Parametro UML name, visibility spostamento Crea un parametro nell'elemento la cui associazione secondaria richiama la dichiarazione di associazione Parameter2Parameter; il parametro generato ha lo stesso nome e visibilità del parametro nell'elemento di input di origine
type associazione secondaria Per ciascun tipo nell'elemento la cui associazione secondaria richiama la dichiarazione di associazione, i risultati sono:
  • Se il parametro è di tipo primitive, questa regola richiama la dichiarazione di associazione Primitive2Primitive
  • Se il parametro è di classe type, questa regola richiama le dichiarazioni di associazione Class2Class e Class2Interface
Operation2Operation Operazione UML name, visibility spostamento Crea un'operazione nell'elemento la cui associazione secondaria richiama la dichiarazione di associazione Operation2Operation; l'operazione generata ha lo stesso nome e visibilità dell'operazione nell'elemento di input di origine
ownedParameter associazione secondaria Per ciascun parametro nell'operazione, questa associazione secondaria richiama la dichiarazione di associazione Parameter2Parameter

In questa esercitazione, la dichiarazione di associazione Paramater2Parameter richiama la dichiarazione di associazione Primitive2Primitive per creare parametri di tipo primitive.

Per creare la dichiarazione di associazione tipo-primitivo-a-tipo-primitivo nel modello di associazione:

  1. Se non è aperta, nella vista Esplora pacchetti, nella cartella model, fare doppio clic sul file Generalize_Classes.mapping.
  2. Nell'editor di associazione trasformazioni, nella sezione Root di associazione, fare clic con il tasto destro del mouse su Generalizza_Classi; quindi fare clic su Crea associazione.
  3. Nella finestra Nuova associazione, nel campo Nome associazione, immettere Primitive2Primitive come nome dell'associazione, quindi fare clic su OK. L'associazione viene visualizzata nella vista Struttura, e viene aperta nella sezione Root di associazione nell'area editor.

Aggiunta di oggetti di input e di output alla dichiarazione di associazione Primitive2Primitive

Dopo aver creato la dichiarazione di associazione Primitive2Primitive, è necessario aggiungervi un oggetto di input e un oggetto di output. In questa lezione, viene specificato un tipo primitive UML come oggetto di input e di output.

Per aggiungere un oggetto di input e un oggetto di output alla dichiarazione di associazione Primitive2Primitive:

  1. Fare clic sull'icona Aggiungi un oggetto di input, l'icona più a sinistra sulla barra degli strumenti che si sta modificando.
  2. Nella finestra Aggiunta input, nel riquadro Elemento, espandere uml, fare clic su Tipo primitive, quindi su OK.
  3. Fare clic sull'icona Aggiungi un oggetto di output, la seconda icona da sinistra nella barra degli strumenti dell'associazione che si sta modificando.
  4. Nella finestra Aggiunta output, nel riquadro Elemento, espandere uml, fare clic su Tipo primitive, quindi su OK.
  5. Fare clic su File > Salva.
È adesso possibile definire una regola di associazione tra l'attributo name degli oggetti di input e di output PrimitiveType.

Definizione delle regole di associazione tra gli attributi degli oggetti di input e di output del tipo primitive

Per questa lezione, creare una regola di associazione spostamento che crea un tipo primitive nel modello di destinazione. Il tipo primitive generato avrà lo stesso nome del tipo primitive nel modello di input; questa procedura è simile alla creazione di una copia del tipo primitive.

Per definire una regola di associazione spostamento che definisce una relazione tra l'attributo name degli oggetti di input e di output del tipo primitive:

  1. Nell'area editor, nell'oggetto di input del tipo primitive, fare clic sull'attributo name.
  2. Trascinare la maniglia dell'attributo name sull'attributo name nell'oggetto di output.
  3. Fare clic su File > Salva.
È adesso possibile creare una dichiarazione di associazione parametro-a-parametro.

Creazione di una dichiarazione di associazione parametro-a-parametro

Questa sezione spiega come creare una dichiarazione di associazione che specifica un parametro UML sia come oggetto di input che di output. Questa dichiarazione di associazione parametro-a-parametro, contiene regole di associazione che, quando si esegue la trasformazione generata, creano un parametro nel modello di destinazione i cui attributi name, visibility e type sono gli stessi del parametro nell'elemento la cui associazione secondaria richiama questa dichiarazione di associazione. In questa esercitazione, l'associazione Operation2Operation contiene una regola di associazione secondaria che richiama questa dichiarazione di associazione.

Per creare una dichiarazione di associazione parametro-a-parametro:

  1. Se non è aperta, nella vista Esplora pacchetti, nella cartella model, fare doppio clic sul file Generalize_Classes.mapping.
  2. Nell'editor di associazione trasformazioni, nella sezione Root di associazione, fare clic con il tasto destro del mouse su Generalizza_Classi; quindi fare clic su Crea associazione.
  3. Nella finestra Nuova associazione, nel campo Nome associazione, immettere Parameter2Parameter e fare clic su OK. L'associazione viene visualizzata nella vista Struttura e viene aperta nell'area editor nella sezione Root di associazione.

Aggiunta di oggetti di input e di output alla dichiarazione di associazione Parameter2Parameter

Dopo aver creato la dichiarazione di associazione, è necessario aggiungervi un oggetto di input e un oggetto di output. In questa lezione, viene specificato un parametro UML come oggetto di input e di output.

Per aggiungere un oggetto di input e un oggetto di output alla dichiarazione di associazione parametro-a-parametro:

  1. Fare clic sull'icona Aggiungi un oggetto di input, l'icona più a sinistra sulla barra degli strumenti che si sta modificando.
  2. Nella finestra Aggiunta input, nel riquadro Elemento, espandere uml, fare clic su Parametro, quindi su OK.
  3. Fare clic sull'icona Aggiungi un oggetto di output, la seconda icona da sinistra nella barra degli strumenti dell'associazione che si sta modificando.
  4. Nella finestra Aggiunta output, nel riquadro Elemento, espandere uml, fare clic su Parametro, quindi su OK.
  5. Fare clic su File > Salva.
È adesso possibile definire le regole di associazione tra gli attributi degli oggetti di input e di output del parametro

Definizione di regole di associazione della dichiarazione di associazione Parameter2Parameter

Dopo aver aggiunto gli oggetti di input e di output alla dichiarazione di associazione, sarà possibile definire le regole di associazione tra gli attributi.

In questa sezione, verranno create regole di associazione secondaria e una regola di associazione di spostamento che, durante l'esecuzione della trasformazione generata, creeranno un parametro nel modello di destinazione i cui attributi name, visibility e type sono gli stessi del parametro in un elemento del modello di origine. In questa esercitazione, l'associazione Operation2Operation richiama questa dichiarazione di associazione.

Per definire le regole di associazione nella dichiarazione di associazione Parameter2Parameter:

  1. Creare una regola di associazione di spostamento tra l'attributo name dell'oggetto di input e di output:
    1. Nell'area editor, nell'oggetto di input del parametro, fare clic sull'attributo name.
    2. Trascinare la maniglia dell'attributo name sull'attributo name nell'oggetto di output.
  2. Ripetere i punti 1a e 1b, ma sostituire name con visibility.
  3. Creare una regola di associazione secondaria tra l'attributo type dell'oggetto di input e di output:
    1. Nell'area editor, nell'oggetto di input del parametro, fare clic sull'attributo type.
    2. Trascinare la maniglia dell'attributo type sull'attributo type nell'oggetto di output. Poiché questo attributo è un tipo complesso, per impostazione predefinita viene creata un'associazione secondaria.
    3. Se la vista Proprietà non è aperta, nell'area editor, fare clic con il tasto destro del mouse sul nuovo elemento Associazione secondaria; quindi fare clic su Mostra in proprietà.
    4. Nella vista Proprietà, nella scheda Dettagli, nell'elenco Associazione, selezionare Primitive2Primitive.
    Questa regola di associazione genera codice che richiama il trasformatore Primitive2Primitive quando viene rilevato un parametro primitive nel modello di origine. Se il parametro nel modello di origine non è di tipo type, il parametro non verrà trasformato nel modello di destinazione.
  4. Ripetere i punti 3a, 3b e 3c, quindi procedere come segue:
    • Nella vista Proprietà, nella scheda Dettagli, nell'elenco Associazione, selezionare Class2Class.
    Questa regola di associazione secondaria genera codice che crea un parametro di tipo class in un elemento nel modello di destinazione, se il parametro di origine è di tipo class.
  5. Ripetere i punti 3a, 3b e 3c, quindi procedere come segue:
    • Nella vista Proprietà, nella scheda Dettagli, nell'elenco Associazione, selezionare Class2Interface.
    Questa regola di associazione secondaria crea un parametro di tipo interface in un elemento nel modello di destinazione, se il parametro di origine è di tipo class.
  6. Fare clic su File > Salva.
È adesso possibile definire le regole di associazione nella dichiarazione di associazione creata nella Lezione 3: Creazione e perfezionamento della dichiarazione di associazione classe-a-classe.

Definizione di regole di associazione della dichiarazione di associazione Operation2Operation

La Lezione 3: Creazione e perfezionamento della dichiarazione di associazione classe-a-classe spiegava come creare una dichiarazione di associazione operazione-a-operazione. In questa sezione, verranno create le regole di associazione in questa dichiarazione di associazione. Quando si esegue la trasformazione generata, queste regole di associazione creano un'operazione nel modello di destinazione i cui attributi name e visibility e i parametri sono gli stessi dell'operazione nel modello di origine. In questa esercitazione, le dichiarazioni di associazione Class2Class e Class2Interface richiamano questa dichiarazione di associazione.

Per definire le regole di associazione nella dichiarazione di associazione Operation2Operation:

  1. Se non è aperta, nella vista Esplora pacchetti, nella cartella model, fare doppio clic sul file Generalize_Classes.mapping.
  2. Nella vista Struttura, fare clic sulla dichiarazione di associazione Operation2Operation.
  3. Creare una regola di associazione di spostamento tra l'attributo name dell'oggetto di input e di output:
    1. Nell'area editor, nell'oggetto di input dell'operazione, fare clic sull'attributo name.
    2. Trascinare la maniglia dell'attributo name sull'attributo name nell'oggetto di output.
  4. Ripetere i punti 3a e 3b, ma sostituire name con visibility.
  5. Creare una regola di associazione secondaria tra l'attributo ownedParameter dell'oggetto di input e di output:
    1. Nell'area editor, nell'oggetto di input dell'operazione, fare clic sull'attributo ownedParameter.
    2. Trascinare la maniglia dell'attributo ownedParameter sull'attributo ownedParameter nell'oggetto di output. Poiché questo attributo è una raccolta, per impostazione predefinita viene creata un'associazione secondaria.
    3. Se la vista Proprietà non è aperta, nell'area editor, fare clic con il tasto destro del mouse sul nuovo elemento Associazione secondaria; quindi fare clic su Mostra in proprietà.
    4. Nella vista Proprietà, nella scheda Dettagli, nell'elenco Associazione, selezionare Parameter2Parameter.
  6. Fare clic su File > Salva.
Nella lezione successiva, verrà creata una dichiarazione di associazione package-a-package.
< Indietro | Avanti >

Feedback