Validate your system during development
Visual Studio can help keep your software consistent with the users' requirements and with the architecture of your system.
To see which versions of Visual Studio support each of these features, see Version support for architecture and modeling tools.
Use the following tasks to validate your software.
Make sure your model is consistent:
Depending on the way your project uses and interprets models, it might be useful to disallow some combinations of elements. For example, you could restrict UML classes so that they always have .NET-compliant names. You can define constraints like these in Visual Studio extensions.
Make sure your software meets the users' requirements:
You can use requirements and architectural models to help you organize the tests of your system and its components. This practice helps ensure that you test the requirements that are important to the users and other stakeholders, and it helps you update the tests quickly when the requirements change.
Make sure that your software remains consistent with the intended design of your system:
Layer diagrams describe the intended dependencies between the components of your application. During development, you can verify that the actual dependencies in the code conform to the intended design.
Technical Articles and Journals