Author Archives: Chris Chedgey

Splitting a module based on usage by other modules

This is a scenario that I’ve been asked about by several Structure101 users. module C is used by 2 other modules A and B, and we’d like to split module C into 4 modules based on how classes are used … Read More

Finding superfluous C/C++ #includes

Unnecessary #include statements can increase build times, make code harder to understand, and make restructuring more difficult. It is trivial to find these with Structure101 Studio, so you can remove them from the code, or from the model prior to … Read More

Introducing Structure101 Workspace

Our new IDE-resident product Structure101 Workspace includes some of the visualization and specification concepts from Structure101 Studio, but in a simpler and entirely new combination that is specifically designed for programmers. The visualization is similar to the Studio LSM – in … Read More

Why cycles explode complexity

Software developers and architects would instinctively avoid cyclic dependencies given the choice – we’d never consciously create an architecture which was a ball of mud. For instance we’d be more inclined to aim for something like this … rather than … Read More

Why does the violation count change when I collapse a cell on a Structure101 Architecture Diagram?

This will happen when there is one or more violations contained within the scope of the cell you are collapsing. For example you might have this situation: And the violations count is show as 3(4) in the Diagrams list: (i.e. … Read More

Rediscovering Modularity in Switzerland

I will be giving my talk to .NET user groups in Switzerland next week, in Bern, Luzern and Zurich. Tuesday May 14 in Berne. Register with Xing, or fill in the contact form on the Berne .NET user group site. … Read More

How to create a killer call graph for impact analysis

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 … Read More

Fear the Ubergeek

Ubergeek is a strange and wonderful creature. He possesses supernatural powers for retaining vast swathes of detail in his head at one time. This makes him designed for coding, a priceless gem when you need to get version 1 of … Read More

Restructure101 version 2 released

For Restructure101 version 2 (press release) we rolled in a load of feature requests that came back from users of version 1. A lot of these were around making the existing functionality more accessible. Others make version 1 use-cases much … Read More

The value of codebase structure

Most experienced engineers would accept that there are attributes of a code base under the heading of “structure” or “architecture”, that make a substantial difference to the ease of development. However, since there is some cost to improving these attributes, … Read More