Comment : créer des diagrammes de couche à partir d'artefacts

Dans Visual Studio Ultimate, utilisez des diagrammes de couche pour visualiser l'architecture de haut niveau de votre système et pour vous assurer que le code demeure conforme à la conception. Pour effectuer cette tâche, organisez et associez les artefacts d'une solution Visual Studio en groupes logiques et abstraits appelés couches. Ces couches décrivent les tâches principales que les artefacts exécutent ou bien les principaux composants de votre système.

Les flèches situées entre deux couches représentent des dépendances, qui indiquent si les couches peuvent utiliser les fonctionnalités présentes dans d'autres couches. Pour appliquer des contraintes architecturales au code, décrivez les dépendances prévues sur le diagramme, puis validez le code par rapport au diagramme. En utilisant les diagrammes de couche de cette manière, vous pouvez simplifier la compréhension, la mise à jour, la réutilisation et la gestion du code.

Éléments des diagrammes de couche

Pour plus d'informations sur les diagrammes de couche, consultez les rubriques suivantes :

Dans cette rubrique

  • Création d'un diagramme de couche.

  • Création de couches à partir d'artefacts existants.

  • Gestion des liens entre les couches et les artefacts.

  • Ingénierie à rebours des dépendances existantes.

  • Mise à jour du diagramme de couche pour afficher la conception prévue.

  • Modification de l'apparence des éléments sur le diagramme.

Créer un diagramme de couche

Les diagrammes de couche doivent être créés au sein d'un projet de modélisation. Vous pouvez ajouter un nouveau diagramme de couche à un projet de modélisation existant, ou bien créer une modélisation dans votre solution pour le nouveau diagramme de couche.

Pour ajouter un nouveau diagramme de couche à un projet de modélisation

  1. Dans le menu Architecture, cliquez sur Nouveau diagramme.

  2. Sous Modèles, cliquez sur Diagramme de couche.

  3. Attribuez un nom au diagramme.

  4. Dans Ajouter au projet de modélisation, recherchez et sélectionnez un projet de modélisation existant dans votre solution.

    ou

    Cliquez sur Créer un nouveau projet de modélisation pour ajouter un nouveau projet de modélisation à la solution.

    Notes

    Le diagramme de couche doit être présent dans un projet de modélisation. Toutefois, vous pouvez le lier à des artefacts situés n'importe où dans la solution.

Vous pouvez également copier un diagramme de couche existant au sein d'un même projet de modélisation.

Notes

En revanche, vous ne pouvez pas ajouter, glisser-déposer ni copier un diagramme de couche existant d'un projet de modélisation à l'autre, ou bien vers un autre emplacement de la solution. Un diagramme de couche copié de cette façon aura les mêmes références que le diagramme d'origine, même si vous le modifiez. Cela entraînera un mauvais fonctionnement de la validation de couche et pourra provoquer d'autres problèmes, tels que des éléments manquants, ou bien provoquer des erreurs lors de la tentative d'ouverture du diagramme.

Pour copier un diagramme de couche, procédez aux étapes suivantes :

Pour copier un diagramme de couche existant

  1. Ajoutez un nouveau diagramme de couche au projet de modélisation.

  2. Copiez les éléments depuis le diagramme de couche source vers le nouveau diagramme de couche.

Création de couches à partir d'artefacts

Vous pouvez créer des couches à partir des artefacts d'une solution Visual Studio, tels que des projets, des fichiers de code, des espaces de noms, des classes et des méthodes. Cela crée automatiquement des liens entre ces couches et les artefacts, qui sont inclus dans le processus de validation de couche. Vous pouvez également lier les couches à certains genres d'artefacts qui ne prennent pas en charge la validation de couche. Par exemple, vous avez la possibilité de lier les couches à des fichiers, tels que des documents Word ou des présentations PowerPoint. Cela se révèle utile pour l'association d'une couche à des spécifications ou à des plans. Pour voir si un artefact lié prend en charge la validation, ouvrez l'Explorateur de couches, puis regardez la propriété Prend en charge la validation de l'artefact. Pour plus d'informations, consultez Gestion des liens vers les artefacts.

Chaque couche apparaît sur le diagramme sous la forme d'un rectangle et peut contenir des couches imbriquées qui décrivent davantage de tâches détaillées. Pour plus d'informations sur la façon de disposer des modèles en couches, consultez le site Web Patterns & Practices.

Le nombre indiqué sur une couche représente le nombre d'artefacts liés à cette couche. Toutefois, à la lecture de ce nombre, souvenez-vous de ce qui suit :

  • Si une couche est liée à un artefact contenant d'autres artefacts, mais n'est pas directement liée à ces autres artefacts, le nombre représentera uniquement les artefacts auxquels elle est directement liée. Toutefois, les autres artefacts sont inclus dans l'analyse pendant la validation de couche.

    Par exemple, si une couche est liée à un espace de noms unique, le nombre d'artefacts liés est égal à 1, même si l'espace de noms contient des classes. Si la couche a également des liens vers chaque classe de l'espace de noms, le nombre comprendra les classes liées.

  • Si une couche contient d'autres couches liées à des artefacts, la couche du conteneur est également liée à ces artefacts, même si le nombre indiqué sur la couche du conteneur ne comprend pas ces artefacts.

Lorsque vous créez un diagramme de couche, vous pouvez créer des graphiques de dépendance pour vous aider à explorer et à comprendre le code. Ces graphiques peuvent vous aider à explorer les clusters, les modèles, les couches naturelles et les dépendances du code. Il est ainsi plus facile d'assigner des artefacts aux couches. Vous pouvez également utiliser le navigateur de l'architecture pour explorer des espaces de noms et des classes, qui correspondent souvent aux couches existantes. Vous pouvez utiliser ensuite des diagrammes de couche pour vous aider à mettre à jour le code.

Pour plus d'informations, consultez les rubriques suivantes :

Utilisez les tâches suivantes pour créer des couches :

Pour

Procédez comme suit

Créer une couche pour un artefact unique

  1. Faites glisser l'artefact sur le diagramme de couche de chacune des sources suivantes :

  2. Renommez la couche pour refléter les responsabilités du code ou des artefacts associés.

Créer une couche unique pour tous les artefacts sélectionnés

Faites glisser en même temps tous les artefacts vers le diagramme de couche.

Une couche qui est liée à tous les artefacts s'affiche sur le diagramme.

Créer une couche pour chaque artefact sélectionné

Appuyez sur la touche MAJ et maintenez-la enfoncée tout en faisant glisser tous les artefacts vers le diagramme de couche en même temps.

RemarqueRemarque
Si vous utilisez la touche MAJ pour sélectionner une plage d'éléments, relâchez la touche après avoir sélectionné les artefacts.Appuyez de nouveau sur celle-ci et maintenez-la enfoncée lorsque vous faites glisser les artefacts vers le diagramme.

Une couche s'affiche sur le diagramme pour chaque artefact, auquel elle est liée.

Ajouter un artefact à une couche

Faites glisser l'artefact vers la couche.

Créer une couche non liée

Dans la Boîte à outils, développez la section Diagramme de couche, puis faites glisser un élément Couche vers le diagramme de couche.

Pour ajouter plusieurs couches, double-cliquez sur l'outil. Lorsque vous avez terminé, cliquez sur l'outil Pointeur ou appuyez sur la touche Échap.

- ou -

Cliquez avec le bouton droit sur le diagramme de couche, pointez sur Ajouter, puis cliquez sur Couche.

Créer des couches imbriquées

Faites glisser une couche existante sur une autre couche.

- ou -

Cliquez avec le bouton droit sur une couche, pointez sur Ajouter, puis cliquez sur Couche.

Créer une nouvelle couche qui contient deux ou plusieurs couches existantes

Sélectionnez les couches, cliquez avec le bouton droit sur une couche sélectionnée, puis cliquez sur Groupe.

Modifier la couleur d'une couche

Affectez la couleur voulue à sa propriété Couleur.

Spécifier que les artefacts associés à une couche ne doivent pas appartenir aux espaces de noms spécifiés

Tapez les espaces de noms dans la propriété Forbidden Namespaces (Espaces de noms interdits) de la couche. Utilisez un point-virgule (;) pour séparer les espaces de noms.

Spécifier que les artefacts associés à une couche ne peuvent pas dépendre des espaces de noms spécifiés

Tapez les espaces de noms dans la propriété Forbidden Namespace Dependencies (Dépendances d'espaces de noms interdits) de la couche. Utilisez un point-virgule (;) pour séparer les espaces de noms.

Spécifier que les artefacts associés à une couche doivent appartenir à un des espaces de noms spécifiés

Tapez l'espace de noms dans la propriété Required Namespaces (Espace de noms requis) de la couche. Utilisez un point-virgule (;) pour séparer les espaces de noms.

Gestion des liens entre les couches et les artefacts

  1. Sur le diagramme de couche, cliquez avec le bouton droit sur une couche, puis cliquez sur Afficher les liens.

    L'Explorateur de couches affiche les liens d'artefact correspondant à la couche sélectionnée.

  2. Utilisez les tâches suivantes pour gérer ces liens :

Pour

Dans l'Explorateur de couches

Supprimer le lien entre la couche et un artefact

Cliquez avec le bouton droit sur le lien d'artefact, puis cliquez sur Supprimer.

Déplacer le lien d'une couche vers une autre

Faites glisser le lien d'artefact vers une couche existante sur le diagramme.

- ou -

  1. Cliquez avec le bouton droit sur le lien d'artefact, puis cliquez sur Couper.

  2. Sur le diagramme de couche, cliquez avec le bouton droit sur la couche, puis cliquez sur Coller.

Copier le lien d'une couche vers une autre

  1. Cliquez avec le bouton droit sur le lien d'artefact, puis cliquez sur Copier.

  2. Sur le diagramme de couche, cliquez avec le bouton droit sur la couche, puis cliquez sur Coller.

Créer une nouvelle couche à partir d'un lien d'artefact existant

Faites glisser le lien d'artefact vers une zone vide sur le diagramme.

Vérifiez qu'un artefact lié prend en charge la validation par rapport au diagramme de couche.

Recherchez le lien d'artefact dans la colonne Prend en charge la validation.

Ingénierie à rebours des dépendances existantes

Une dépendance existe chaque fois qu'un artefact associé à une couche comporte une référence à un artefact associé à une autre couche. Par exemple, une classe dans une couche déclare une variable qui a une classe dans une autre couche. Vous pouvez effectuer une ingénierie à rebours des dépendances existantes pour les artefacts liés aux couches sur le diagramme.

Notes

Les dépendances ne peuvent pas faire l'objet d'une ingénierie à rebours pour certains genres d'artefacts. Par exemple, aucune dépendance ne fera l'objet d'une ingénierie à rebours depuis ou vers une couche qui est liée à un fichier texte. Pour identifier les artefacts ayant des dépendances qui peuvent faire l'objet d'une ingénierie à rebours, cliquez avec le bouton droit sur une ou plusieurs couches, puis cliquez sur Afficher les liens. Dans l'Explorateur de couches, examinez la colonne Prend en charge la validation. Les dépendances des artefacts pour lesquels cette colonne affiche la valeur False ne feront pas l'objet d'une ingénierie à rebours.

Pour effectuer une ingénierie à rebours des dépendances existantes entre les couches

  • Sélectionnez une ou plusieurs couches, cliquez avec le bouton droit sur une couche sélectionnée, puis cliquez sur Générer des dépendances.

En général, des dépendances qui ne devraient pas exister s'affichent. Vous pouvez modifier ces dépendances pour les ajuster à la conception prévue.

Mise à jour du diagramme pour afficher la conception prévue

Pour afficher les modifications que vous envisagez d'effectuer ou l'architecture voulue, mettez à jour le diagramme de couche.

Pour

Exécuter ces étapes

Supprimer une dépendance qui ne doit pas exister

Cliquez sur la dépendance, puis appuyez sur SUPPR.

Changer ou restreindre la direction d'une dépendance

Définissez sa propriété Direction.

Créer de nouvelles dépendances

Utilisez les outils Dépendance et Dépendance bidirectionnelle.

Pour dessiner plusieurs dépendances, double-cliquez sur l'outil. Lorsque vous avez terminé, cliquez sur l'outil Pointeur ou appuyez sur la touche Échap.

Spécifier que les artefacts associés à une couche ne peuvent pas dépendre des espaces de noms spécifiés

Tapez les espaces de noms dans la propriété Forbidden Namespace Dependencies (Dépendances d'espaces de noms interdits) de la couche. Utilisez un point-virgule (;) pour séparer les espaces de noms.

Spécifier que les artefacts associés à une couche ne doivent pas appartenir aux espaces de noms spécifiés

Tapez les espaces de noms dans la propriété Forbidden Namespaces (Espaces de noms interdits) de la couche. Utilisez un point-virgule (;) pour séparer les espaces de noms.

Spécifier que les artefacts associés à une couche doivent appartenir à un des espaces de noms spécifiés

Tapez l'espace de noms dans la propriété Required Namespaces (Espace de noms requis) de la couche. Utilisez un point-virgule (;) pour séparer les espaces de noms.

Modification de l'apparence des éléments sur le diagramme

Pour vous aider à identifier des couches et des dépendances, ou à les examiner avec les membres de l'équipe, modifiez l'apparence et la disposition du diagramme comme suit :

  • Modifiez les tailles, formes et positions des couches.

  • Modifiez les couleurs des couches et des dépendances.

    1. Sélectionnez les couches ou les dépendances.

    2. Cliquez avec le bouton droit sur les couches ou les dépendances sélectionnées, puis cliquez sur Propriétés.

    3. Dans la fenêtre Propriétés, modifiez la propriété Couleur.

Voir aussi

Concepts

Visualisation du code existant