Developing Models for Software Design
Modeling diagrams help you understand, clarify, and communicate ideas about your code and the user requirements that your software system must support. For example, to describe and communicate user requirements, you can use Unified Modeling Language (UML) use case, activity, class, and sequence diagrams. To describe and communicate the functionality of your system, you can use UML component, class, activity, and sequence diagrams.
See Channel 9 Video: Improve architecture through modeling.
You can create the following UML diagrams in this release:
Diagram |
Shows |
---|---|
Flow of work between actions and participants in a business process |
|
Components of a system, their interfaces, ports, and relationships |
|
Types that are used to store and exchange data in the system and their relationships |
|
Sequences of interactions between objects, components, systems, or actors |
|
User goals and tasks that a system supports |
To visualize the architecture of a system or existing code, create the following diagrams:
Diagram |
Shows |
---|---|
High-level architecture of the system |
|
Dependency graphs |
Dependencies and other relationships in existing code |
Code-generated class diagrams |
Types and their relationships in .NET code |
Code-generated sequence diagrams |
Sequences of method calls in .NET code |
Common Tasks
Topic |
Task |
---|---|
Create models and add diagrams. |
|
Draw diagrams to edit the model. |
|
Import UML elements from sequence diagrams, class diagrams, and use case diagrams as XMI 2.1 files that are exported from other modeling tools. |
|
Create packages to divide a model into units that different team members can work on. |
|
Generate C# code from class diagrams to start your implementation. |
|
Customize model elements using stereotypes, to extend the standard UML model elements for specific purposes. |
|
Create links between model elements and work items to help you track tasks, test cases, bugs, requirements, issues, or other kinds of work that are associated with specific parts of your model. |
|
Save your model and diagrams so that you can share them with other users, including those who do not use Visual Studio Ultimate. |
Related Tasks
Topic |
Task |
---|---|
Create dependency graphs, sequence diagrams, and layer diagrams to review and explore unfamiliar code. |
|
Use models to clarify and communicate the users' needs. |
|
Use models to describe the overall structure and behavior of your system and to make sure that it meets the users' needs. |
|
Make sure that your software stays consistent with your users' needs and the overall architecture of your system. |
|
Use models to help you understand and change your system during its development. |
|
Organize models in a large or medium project. |
External Resources
Category |
Links |
---|---|
Forums |
|
Blogs |
|
Technical Articles and Journals |
The Architecture Journal - Issue 23: Architecture Modeling and Processes |
Other Sites |