Visualizing Existing Code
When you have to modify an existing software system, Visual Studio Ultimate can help you visualize and understand the organization, relationships, and behavior of the code. Before you make changes to that code, use Visual Studio Ultimate to explore how those changes will affect the code and help you assess the work and risks that result from those changes.
For example, to examine the existing relationships and patterns in the code, you can generate dependency graphs. To communicate the intended architecture of your system, create layer diagrams. You can then use these diagrams to keep the code consistent with the design. To understand how the code implements a method, generate sequence diagrams. To explore the structure of existing classes, create class diagrams. To model and communicate different aspects of the system, draw Unified Modeling Language (UML) diagrams. For example, you can model a system's components, types, interactions, and processes.
These tools can also help you communicate more easily with the people involved with your project. For example, you can use UML class diagrams to create a common glossary for discussing the system with project stakeholders, users, and team members.
You can extend capabilities for this release by downloading and installing feature packs when they are available. For more information, see Visual Studio Feature Packs.
Explore code relationships:
Generate dependency graphs or other graphs to see relationships in the code.
Find existing code:
Use Architecture Explorer to find and explore source code in a Visual Studio solution or compiled code.
Explore code interactions:
Generate sequence diagrams from code to understand its interactions.
Explore code structure:
Create class diagrams to examine the structure of classes in the project.
Describe the high-level design of the system and validate code against this design:
Create layer diagrams to describe the high-level design of the system and its dependencies. Validate the code against this design to ensure that it remains consistent with the design.
Communicate the user requirements and system design:
Model the user requirements and architecture of your software system by drawing the following UML diagrams: activity, component, class, sequence, and use case.
Technical Articles and Journals