Diagramas de dependencia: referenciaDependency Diagrams: Reference

En Visual Studio, puede usar un diagrama de dependencia para visualizar la arquitectura lógica de alto nivel del sistema.In Visual Studio, you can use a dependency diagram to visualize the high-level, logical architecture of your system. Un diagrama de dependencia organiza los artefactos físicos en el sistema en grupos lógicos y abstractos denominados capas.A dependency diagram organizes the physical artifacts in your system into logical, abstract groups called layers. Estas capas describen las tareas principales que realizan los artefactos o los componentes principales del sistema.These layers describe major tasks that the artifacts perform or the major components of your system. Cada capa también puede contener capas anidadas que describen tareas más detalladas.Each layer can also contain nested layers that describe more detailed tasks.

Para ver qué versiones de Visual Studio admiten esta característica, vea Compatibilidad de versiones con las herramientas de arquitectura y modelado.To see which versions of Visual Studio support this feature, see Version support for architecture and modeling tools.

Se pueden especificar las dependencias planeadas o existentes entre las capas.You can specify the intended or existing dependencies between layers. Estas dependencias, que se representan como flechas, indican qué capas pueden usar o usan actualmente la funcionalidad representada por otras capas.These dependencies, which are represented as arrows, indicate which layers can use or currently use the functionality represented by other layers. El sistema se organizan en capas que se describen los distintos roles y funciones, un diagrama de dependencia puede ayudar a que sea más fácil para que pueda entender y mantener el código.By organizing your system into layers that describe distinct roles and functions, a dependency diagram can help make it easier for you to understand, reuse, and maintain your code.

Utilizar un diagrama de dependencia para ayudarle a realizar las tareas siguientes:Use a dependency diagram to help you perform the following tasks:

  • Comunicar la arquitectura lógica existente o planeada del sistema.Communicate the existing or intended logical architecture of your system.

  • Detectar conflictos entre el código existente y la arquitectura planeada.Discover conflicts between your existing code and the intended architecture.

  • Visualizar el impacto de los cambios en la arquitectura planeada al refactorizar, actualizar o desarrollar el sistema.Visualize the impact of changes on the intended architecture when you refactor, update, or evolve your system.

  • Reforzar la arquitectura planeada durante el desarrollo y el mantenimiento del código incluyendo la validación en las operaciones de protección y compilación.Reinforce the intended architecture during the development and maintenance of your code by including validation with your check-in and build operations.

En este tema se describe los elementos que puede usar en un diagrama de dependencia.This topic describes the elements that you can use on a dependency diagram. Para obtener más información acerca de cómo crear y dibujar diagramas de dependencia, vea diagramas de dependencia: directrices.For more detailed information about how to create and draw dependency diagrams, see Dependency Diagrams: Guidelines. Para obtener más información acerca de los patrones de capas, visite la sitio Patterns & Practices.For more information about layering patterns, visit the Patterns & Practices site.

Leer diagramas de dependenciaReading dependency diagrams

Elementos de diagramas de dependencia

La tabla siguiente describen los elementos que puede usar en un diagrama de dependencia.The following table describes the elements that you can use on a dependency diagram.

FormaShape ElementElement DescripciónDescription
11 CapaLayer Grupo lógico de artefactos físicos del sistema.A logical group of physical artifacts in your system. Estos artefactos pueden ser espacios de nombres, proyectos, clases, métodos, etc.These artifacts can be namespaces, projects, classes, methods, and so on.

Para ver los artefactos que están vinculados a una capa, abra el menú contextual de la capa y, a continuación, elija ver vínculos para abrir Explorador de capas.To see the artifacts that are linked to a layer, open the shortcut menu for the layer, and then choose View Links to open Layer Explorer.

Para obtener más información, consulte Explorador de capas.For more information, see Layer Explorer.

- Prohibido Namespace dependencias -especifica qué artefactos asociados a esta capa no pueden depender de los espacios de nombres especificados.- Forbidden Namespace Dependencies - Specifies that artifacts associated with this layer cannot depend on the specified namespaces.
- Prohibido espacios de nombres -especifica qué artefactos asociados a esta capa no deben pertenecer a los espacios de nombres especificados.- Forbidden Namespaces - Specifies that artifacts associated with this layer must not belong to the specified namespaces.
- Requiere los espacios de nombres -especifica qué artefactos asociados a esta capa deben pertenecer a uno de los espacios de nombres especificados.- Required Namespaces - Specifies that artifacts associated with this layer must belong to one of the specified namespaces.
22 DependenciaDependency Indica que una capa puede usar la funcionalidad de otra capa, pero no viceversa.Indicates that one layer can use the functionality in another layer, but not vice versa.

- Dirección -especifica la dirección de la dependencia.- Direction - Specifies the direction of the dependency.
33 Dependencia bidireccionalBidirectional Dependency Indica que una capa puede usar la funcionalidad de otra capa, y viceversa.Indicates that one layer can use the functionality in another layer, and vice versa.

- Dirección -especifica la dirección de la dependencia.- Direction - Specifies the direction of the dependency.
44 ComentarioComment Use esta opción para agregar notas generales al diagrama o elementos del diagrama.Use to add general notes to the diagram or elements on the diagram.
55 Vínculo de comentarioComment Link Se usa para vincular comentarios a elementos del diagrama.Use to link comments to elements on the diagram.

Explorador de capasLayer Explorer

Puede vincular cada capa a artefactos de la solución, como proyectos, clases, espacios de nombres, archivos de proyecto y otros elementos del software.You can link each layer to artifacts in your solution, such as projects, classes, namespaces, project files, and other parts of your software. El número de una capa muestra el número de artefactos vinculados a ella.The number on a layer shows the number of artifacts that are linked to the layer. Sin embargo, cuando lea el número de artefactos de una capa, recuerde lo siguiente:However, when reading the number of artifacts on a layer, remember the following:

  • Si una capa se vincula a un artefacto que contiene otros artefactos, pero no se vincula directamente a estos otros artefactos, el número incluye únicamente el artefacto vinculado.If a layer links to an artifact that contains other artifacts, but the layer does not link directly to the other artifacts, then the number includes only the linked artifact. Sin embargo, los demás artefactos se incluyen para el análisis durante la validación de capas.However, the other artifacts are included for analysis during layer validation.

    Por ejemplo, si una capa está vinculada a un solo espacio de nombres, el número de artefactos vinculados es 1, aunque el espacio de nombres contenga clases.For example, if a layer is linked to a single namespace, then the number of linked artifacts is 1, even if the namespace contains classes. Si la capa tiene también vínculos a cada clase del espacio de nombres, el número incluirá las clases vinculadas.If the layer also has links to each class in the namespace, then the number will include the linked classes.

  • Si una capa contiene otras que están vinculadas a artefactos, la capa contenedora también está vinculada a esos artefactos, incluso aunque el número de la capa contenedora no los incluya.If a layer contains other layers that are linked to artifacts, then the container layer is also linked to those artifacts, even though the number on the container layer does not include those artifacts.

Para obtener más información sobre cómo vincular capas y artefactos, vea:For more information about linking layers and artifacts, see:

Para examinar los artefactos vinculadosTo examine the linked artifacts

  • En el diagrama de dependencia, abra el menú contextual para una o varias capas y, a continuación, elija ver vínculos.On the dependency diagram, open the shortcut menu for one or more layers, and then choose View Links.

    Explorador de capas se abre y muestra los artefactos que están vinculados a las capas seleccionadas.Layer Explorer opens and shows the artifacts that are linked to the selected layers. Explorador de capas tiene una columna que muestra cada una de las propiedades de los vínculos de artefacto.Layer Explorer has a column that shows each of the properties of the artifact links.

    Nota

    Si no ve todas estas propiedades, expanda el Explorador de capas ventana.If you cannot see all of these properties, expand the Layer Explorer window.

    Columna en el Explorador de capasColumn in Layer Explorer DescripciónDescription
    CategoríasCategories Tipo de artefacto, como una clase, espacio de nombres, archivo de código fuente, etcéteraThe kind of artifact, such as a class, namespace, source file, and so on
    CapaLayer Capa que se vincula al artefactoThe layer that links to the artifact
    Admite la validaciónSupports Validation Si True, a continuación, el proceso de validación de capas puede comprobar que el proyecto se ajusta a las dependencias a o desde este elemento.If True, then the layer validation process can verify that the project conforms to dependencies to or from this element.

    Si False, a continuación, el vínculo no participa en el proceso de validación de capas.If False, then the link does not participate in the layer validation process.

    Para obtener más información, consulte diagramas de dependencia: directrices.For more information, see Dependency Diagrams: Guidelines.
    IdentificadorIdentifier Referencia al artefacto vinculadoThe reference to the linked artifact

Vea tambiénSee Also