Sometimes you really want to cut through a code-base to discover all the functions that can get called in response to a specific function being invoked, with all the other code removed from the picture. Or you might be coming at it bottom up – when you change a particular function, what is the subset… Read more »
Posts Categorized: Restructure101
So you just opened a Repository project, edited the Architecture diagrams, only to discover that there is no way to save your edits! What is going on here?! Our project model is somewhat convoluted – there is a sort of logic behind it, but it can be a nightmare if you dare to deviate from how… Read more »
If architectural drift is addressed before monolithic code tangles have formed, the higher-level components can be disentangled by relatively low cost/risk relocation of classes between components. Otherwise more invasive class-level surgery is needed – this is possible with Restructure101, but this tutorial focuses on the simpler situation.
The purpose of this exercise was to use Restructure101 to solve tangles in JUnit version 4.8.2.
Levelized Structure Maps (LSM) are a new, intuitive way to visualize and manipulate software systems. Using LSM, large-scale refactoring to remove dependency tangles and other over-complexity, becomes second nature. LSM are the core of Restructure101. Items in the LSM are levelized into rows, or levels, so that every item depends on at least one item on… Read more »
The name-map is a feature that most users will not require. But, there are certain use cases where its use can be invaluable. For example: If you have a large volume of class to class transformations, you may notice the client reaction time becoming slow. To workaround this use the Java name-map, as it can… Read more »