The last months I’ve been working on the Entity Relation Diagram Creator plug-in for the XRM ToolBox. At this moment the plug-in is functioning well and some new ideas start to cross my mind. E.g. a much more advanced way of creating an initial layout of the entities within a solution.
The entity layouting algorythm has had a couple of iterations. Going from a simple grid based layout in which the grid row height is determined by the largest entity, to a flexible grid based layout in which the grid row height is variable per column of expanded and collapsed entities.
For smaller solutions the layouting is fine, however if you generate an Entity Relation Diagram for large solutions such as the “Default Solution”, you end up with a grid of hundreds of entities.
From there on it can be hard to drag the entities to an easy to handle layout.
Then the following idea popped up, what if during the initial generation of the Entity Relation Diagram I determine what the hotspots are in the diagram. And then create a layout based on the hotspots.
A hotspot is in my eyes an entity that has relationships with many other entities. Based on the number of inter entity relationships, I can create an ordered list from hotspot to cold, from there on I could render a grid layout like the example below.
However I forsee the following problems when it comes to related entities that are used in multiple hotspots:
As you can see a lot of questions that need to be answered. Can you help me? What should I do?
For now I’m stuck…Your ideas are more than welcome!