Architectural control rules are a set of rules that you can define to notify you when unwanted dependencies between components are introduced into a code base during development.
In the development process, the code reaches a level of maturity where architects, designers, and developers are satisfied with the way that dependencies are organized in the code and with the way the different components communicate with each other. However, later in the release cycle, it becomes problematic when dependencies between certain components, packages, or generally any new dependency is not acceptable.
You can use architectural control templates to create rules to notify you when such structure violations occur. These templates define a set of rules that preserve the way the dependencies currently exist in the code and produce findings if an unwanted dependency is introduced. These rules operate on the level of classes and packages.
To view a description of each template, on the Preferences page, click New Rule. In the New Code Review Rule wizard, click an architectural template. The description appears at the bottom of the list.
After you create architectural control rules, you run the Structural Analysis code review.