Hi,
This is great! I particularly liked the hovering.
There are a couple of things that would be great to be extended:
- The cells with no dependency are not particularly relevant, and they should appear transparent. Hovering can still remain.
- The order has to be improved. To this end, take a look at the DSM work of Jannik. At the end, he extracted the algorithm in separate packages:
Gofer new
smalltalkhubUser: 'Moose' project: 'DSM';
package: 'Moose-Algos-Dsm'
package: 'Moose-Dsm-Core';
package: 'Moose-Dsm-Example';
package: 'Moose-Dsm-Famix';
load
The code does not seem to work anymore in Moose 6.0, but it would be great to salvage at least the basics and add that into Moose-Algos (which ideally would become a prerequisite for Roassal :)).
- We also need the cyclic information. Actually, adding cycles would be probably enough as an ordering. In Moose-Algos, we have the MalTarjan algorithm which is also the one used as a basis by the old DSM implementation of Jannik. You can see an example of it in:
MooseGroup>>cyclesToAll: aBlockOrUnarySymbol
This one allows you to have something like:
aGroupOfClasses cyclesToAll: #clientClasses
and you will get Collections of cyclic groups.
- Once we have cyclic information, this has to appear on the diagram, and ideally it should be clickable to be able to dive into a cycle.
What do you think?
Cheers,
Doru