Synchronisation modèle-code

En utilisant la synchronisation de code avec PowerAMC, vous pouvez réaliser certains aspects du processus de développement orienté modèle pour améliorer la productivité en automatisant la génération de code. Le plugin PowerAMC pour Visual Studio permet de procéder à des mises à jour bidirectionnelles instantanées des objets de modèle et du code, incluent l'automatisation des transformations et de la fusion des fichiers générés.

Vous pouvez commencer par configurer la synchronisation à l'aide de l'Assistant Synchronisation, puis poursuivre le développement, avec une répercussion automatique des changements dans le code. La synchronisation de code est disponible pour tous les modèles et diagrammes PowerAMC qui prennent en charge la génération générique, et peut donc être utilisée par exemple dans un diagramme d'états ou dans un MPM (Modèle de Processus Métiers).

  1. Créez un projet de code Visual C# ou autre vide, puis ajoutez le projet de votre modèle à la solution.
  2. Sélectionnez le modèle dans l'Explorateur de solutions, puis cliquez sur l'outil Synchroniser dans la barre d'outils (ou sélectionnez Synchroniser dans le menu contextuel) pour afficher la boîte de dialogue Synchronisation à la page Génération de code :


    Cette page permet de spécifier les types de fichier qui seront synchronisés pour la génération en avant (i.e. les changements effectués sur les objets de modèle seront répercutés immédiatement sur les fichiers de code). Les types de fichier sont organisés par cible de génération (C# 2.0 et WSDL pour .NET dans l'écran précédent), et définis dans le fichier de ressources ou l'extension de la cible.

  3. Sélectionnez les types de fichier que vous souhaitez synchroniser pour la génération.
  4. [facultatif] Sélectionnez un type de fichier, puis cliquez sur le bouton Détails pour afficher la boîte de dialogue Détails de génération (voir Utilisation des genlets pour le post-traitement de la génération personnalisée)
  5. Cliquez sur Suivant pour passer à la page Reverse engineering de la boîte de dialogue Synchronisation :


    Cette page, qui n'est disponible que pour les projets C# et Visual Basic, permet de spécifier les types de fichier qui seront synchronisés pour le reverse engineering (i.e. les changements effectués dans les fichiers de code seront répercutés immédiatement dans les objets de modèle).

  6. Sélectionnez les fichiers à synchroniser pour le reverse engineering, puis cliquez sur Suivant pour passer à la page Fichiers de la boîte de dialogue Synchronisation :


    Cette page permet de spécifier les fichiers qui seront synchronisés et où ils seront générés. Par défaut :
    • Si le modèle est situé directement dans un dossier de solution (en dehors d'un projet) ou dans un projet de modélisation, les fichiers sont générés à la racine de la solution, et les fichiers de projet sont ajoutés sous forme de projets dans l'Explorateur de solutions.

    • Si le modèle appartient à tout autre type de projet, les fichiers sont générés par défaut à la racine du projet, ou dans un autre dossier au sein du projet spécifié dans la zone Dossier racine.

    S'il existe une possibilité de conflit en raison de l'existence d'un objet ou fichier de modèle, le fichier ne sera pas sélectionné pour la génération par défaut, et la case à cocher correspondante sera surmontée d'une petite croix rouge. Pour forcer la synchronisation et spécifier qui aura la priorité, cliquez sur la case et sélectionnez Ecraser le fichier ou Ecraser le modèle dans le menu contextuel

  7. Sélectionnez les fichiers à synchroniser, puis cliquez sur Terminer.

    L'Assistant génère et marque comme synchronisés tous les fichiers spécifiés, et un enregistrement de l'état de synchronisation de tous les fichiers dans la solution est stocké dans un fichier ayant pour nom celui du projet ou de la solution et comme suffixe .pdsync.

    Remarque : Une fois que vous avez synchronisé votre modèle et vos fichiers, vous pouvez désactiver ou activer la synchronisation fichier par fichier en sélectionnant un fichier dans l'Explorateur de solution. Si le fichier est synchronisé, l'outil Synchroniser est enfoncé dans la barre d'outils de l'Explorateur de solution. Cliquez sur l'outil pour changer l'état du fichier. Si le fichier n'a pas encore été synchronisé, la fenêtre de fusion de modèle s'affiche pour vous permettre de passer en revues les changements que la synchronisation va effectuer.