Headway Software - The Structure GuysSitemap
About us
Contact us
Structure101 > Features > Define architecture > Discover structure, define architecture

Discover structure, define architecture

The diagram editor in the Structure101 Client is an ideal "sandbox" for discovering how your code-base is structured and how it might be better architected.

For example, you can ask Structure101 to create a high-level architecture diagram for you from the current code-base. This shows you the top-level layering, and any violations (dependencies that break the layering). To find out what package "struts2" depends on within package "dispatcher" you can click on the "+" for more detail.struts layering and violations
This shows that the violation is due to a dependency from package "struts2" to package "dispacher.controller".struts dependency violation details

Expanding both these packages shows the class-to-class dependencies causing the problem.

struts class-to-class dependency violation details

In this case, we can repair the architecture violation by moving class Dispatcher to the struts2 package at the indicated level.

fix the dependency violation

Moving this one class to a new package has removed the cyclic (upward) dependency and we can collapse the top level cells to see the cleaned up architecture.

prefactoring dependecy violations in struts
Structure101 gives you a list of moved items that you can export as a task list, and/or apply as transformations to your Stucture101 model.a cleaner struts architecture

 

 




©Headway Software 1999-2008Legal