Hi,
For preparing my teaching course I would have love to have simple class hierarchy visualisations or even better, real UML representations. Unfortunately, the UML like diagram from the Moose panel is not zoomable. It is by default in light grey saying that it is harder to read. It contains all the attributes and all the methods so it is difficult to put it in a single readable picture. Please make the experiment with the Famix-Core classes. I was not able to do easily a class hierarchy with the name of the classes. After more than one hour, I gave up. So it could be good, if we can have: - a class hierarchy with only the names of the classes in boxes or not - a class hierarchy with only attributes - a class hierarchy with only methods - the existing "UML" representation - a real metamodel representation. Not as a system complexity representation, but as a real UML representation meaning with inheritance AND associations (those can be deduce from pragmas and now with the new MooseQuery API, we get all the methods to do it).
It should be possible to easily specify which classes we want to represent.
It seems to me the minimum vital to do real analyses.
In my course, I wanted to show I extended FAMIX for SQL purpose. It was so complex (because I don’t want not all FAMIX entity, but just the one from which the SQL classes inherit and without the methods) that once again I gave up.
I don’t have enough time to better look for. But anyway, I find it sad that it is so hard even for people knowing (a bit) Moose of not being able to do that.
Cheers, Anne
Since I've made this video yesterday for my benefactors, I might as well share it here
https://www.youtube.com/watch?v=CGEhhOxV1eU
now this is still far from done, however I do use FAMIX to represent the model (I have of course extended it, because FAMIX has no notion of multiplicities etc.), but in principle it should be able to visualize some subset of the FAMIX model.
If you want to look at it yourself, you can download ready-to-use image (based on Moose 6) here https://ci.inria.fr/pharo-contribution/job/DynaCASE/lastSuccessfulBuild/PHAR...
So maybe we can come up with something that you could use?
Of course many of the requirements you have can be achieved directly in Roassal, for example try running this
~~~~~~~~~~~~~~~~~~~~~~ | b | b := RTUMLClassBuilder new.
b instanceVariables: #instVarNames. "show attributes" "b instanceVariables: #()." "hide attributes"
b methodselector: #selector. "b methodsNames: #methods." "show methods" b methodsNames: #(). "hide methods" b attributeselector: #yourself.
"all black, you can even have varying colors --- look at RTUMLExample>>examplecolored" b attributeShape color: Color black. b methodShape color: Color black. b classNameShape color: Color black. b lineShape color: Color black. b boxShape borderColor: Color black.
b addObjects: (TREvent withAllSubclasses ). b layout tree.
b build. ^b view ~~~~~~~~~~~~~~~~~~~~~~~~~
Peter
On Tue, Oct 27, 2015 at 11:30 AM, Anne Etien anne.etien@univ-lille1.fr wrote:
Hi,
For preparing my teaching course I would have love to have simple class hierarchy visualisations or even better, real UML representations. Unfortunately, the UML like diagram from the Moose panel is not zoomable. It is by default in light grey saying that it is harder to read. It contains all the attributes and all the methods so it is difficult to put it in a single readable picture. Please make the experiment with the Famix-Core classes. I was not able to do easily a class hierarchy with the name of the classes. After more than one hour, I gave up. So it could be good, if we can have:
- a class hierarchy with only the names of the classes in boxes or not
- a class hierarchy with only attributes
- a class hierarchy with only methods
- the existing "UML" representation
- a real metamodel representation. Not as a system complexity
representation, but as a real UML representation meaning with inheritance AND associations (those can be deduce from pragmas and now with the new MooseQuery API, we get all the methods to do it).
It should be possible to easily specify which classes we want to represent.
It seems to me the minimum vital to do real analyses.
In my course, I wanted to show I extended FAMIX for SQL purpose. It was so complex (because I don’t want not all FAMIX entity, but just the one from which the SQL classes inherit and without the methods) that once again I gave up.
I don’t have enough time to better look for. But anyway, I find it sad that it is so hard even for people knowing (a bit) Moose of not being able to do that.
Cheers, Anne
Moose-dev mailing list Moose-dev@list.inf.unibe.ch https://www.list.inf.unibe.ch/listinfo/moose-dev
Thanks, Peter.
Do you also have an algorithm laying out your UML diagrams?
@Anne: the script of Peter should pretty much address your concerns. Is there anything else missing?
Cheers, Doru
On Tue, Oct 27, 2015 at 11:54 AM, Peter Uhnák i.uhnak@gmail.com wrote:
Since I've made this video yesterday for my benefactors, I might as well share it here
https://www.youtube.com/watch?v=CGEhhOxV1eU
now this is still far from done, however I do use FAMIX to represent the model (I have of course extended it, because FAMIX has no notion of multiplicities etc.), but in principle it should be able to visualize some subset of the FAMIX model.
If you want to look at it yourself, you can download ready-to-use image (based on Moose 6) here https://ci.inria.fr/pharo-contribution/job/DynaCASE/lastSuccessfulBuild/PHAR...
So maybe we can come up with something that you could use?
Of course many of the requirements you have can be achieved directly in Roassal, for example try running this
| b | b := RTUMLClassBuilder new. b instanceVariables: #instVarNames. "show attributes" "b instanceVariables: #()." "hide attributes" b methodselector: #selector. "b methodsNames: #methods." "show methods" b methodsNames: #(). "hide methods" b attributeselector: #yourself. "all black, you can even have varying colors --- look at RTUMLExample>>examplecolored" b attributeShape color: Color black. b methodShape color: Color black. b classNameShape color: Color black. b lineShape color: Color black. b boxShape borderColor: Color black. b addObjects: (TREvent withAllSubclasses ). b layout tree. b build. ^b view
Peter
On Tue, Oct 27, 2015 at 11:30 AM, Anne Etien anne.etien@univ-lille1.fr wrote:
Hi,
For preparing my teaching course I would have love to have simple class hierarchy visualisations or even better, real UML representations. Unfortunately, the UML like diagram from the Moose panel is not zoomable. It is by default in light grey saying that it is harder to read. It contains all the attributes and all the methods so it is difficult to put it in a single readable picture. Please make the experiment with the Famix-Core classes. I was not able to do easily a class hierarchy with the name of the classes. After more than one hour, I gave up. So it could be good, if we can have:
- a class hierarchy with only the names of the classes in boxes or not
- a class hierarchy with only attributes
- a class hierarchy with only methods
- the existing "UML" representation
- a real metamodel representation. Not as a system complexity
representation, but as a real UML representation meaning with inheritance AND associations (those can be deduce from pragmas and now with the new MooseQuery API, we get all the methods to do it).
It should be possible to easily specify which classes we want to represent.
It seems to me the minimum vital to do real analyses.
In my course, I wanted to show I extended FAMIX for SQL purpose. It was so complex (because I don’t want not all FAMIX entity, but just the one from which the SQL classes inherit and without the methods) that once again I gave up.
I don’t have enough time to better look for. But anyway, I find it sad that it is so hard even for people knowing (a bit) Moose of not being able to do that.
Cheers, Anne
Moose-dev mailing list Moose-dev@list.inf.unibe.ch https://www.list.inf.unibe.ch/listinfo/moose-dev
Moose-dev mailing list Moose-dev@list.inf.unibe.ch https://www.list.inf.unibe.ch/listinfo/moose-dev
Hi Peter,
I finally tried your script and it works. Super!! Thanks.
Cheers, Anne Le 27 oct. 2015 à 11:54, Peter Uhnák i.uhnak@gmail.com a écrit :
Since I've made this video yesterday for my benefactors, I might as well share it here
https://www.youtube.com/watch?v=CGEhhOxV1eU
now this is still far from done, however I do use FAMIX to represent the model (I have of course extended it, because FAMIX has no notion of multiplicities etc.), but in principle it should be able to visualize some subset of the FAMIX model.
If you want to look at it yourself, you can download ready-to-use image (based on Moose 6) here https://ci.inria.fr/pharo-contribution/job/DynaCASE/lastSuccessfulBuild/PHAR...
So maybe we can come up with something that you could use?
Of course many of the requirements you have can be achieved directly in Roassal, for example try running this
| b | b := RTUMLClassBuilder new. b instanceVariables: #instVarNames. "show attributes" "b instanceVariables: #()." "hide attributes" b methodselector: #selector. "b methodsNames: #methods." "show methods" b methodsNames: #(). "hide methods" b attributeselector: #yourself. "all black, you can even have varying colors --- look at RTUMLExample>>examplecolored" b attributeShape color: Color black. b methodShape color: Color black. b classNameShape color: Color black. b lineShape color: Color black. b boxShape borderColor: Color black. b addObjects: (TREvent withAllSubclasses ). b layout tree. b build. ^b view
Peter
On Tue, Oct 27, 2015 at 11:30 AM, Anne Etien anne.etien@univ-lille1.fr wrote: Hi,
For preparing my teaching course I would have love to have simple class hierarchy visualisations or even better, real UML representations. Unfortunately, the UML like diagram from the Moose panel is not zoomable. It is by default in light grey saying that it is harder to read. It contains all the attributes and all the methods so it is difficult to put it in a single readable picture. Please make the experiment with the Famix-Core classes. I was not able to do easily a class hierarchy with the name of the classes. After more than one hour, I gave up. So it could be good, if we can have:
- a class hierarchy with only the names of the classes in boxes or not
- a class hierarchy with only attributes
- a class hierarchy with only methods
- the existing "UML" representation
- a real metamodel representation. Not as a system complexity representation, but as a real UML representation meaning with inheritance AND associations (those can be deduce from pragmas and now with the new MooseQuery API, we get all the methods to do it).
It should be possible to easily specify which classes we want to represent.
It seems to me the minimum vital to do real analyses.
In my course, I wanted to show I extended FAMIX for SQL purpose. It was so complex (because I don’t want not all FAMIX entity, but just the one from which the SQL classes inherit and without the methods) that once again I gave up.
I don’t have enough time to better look for. But anyway, I find it sad that it is so hard even for people knowing (a bit) Moose of not being able to do that.
Cheers, Anne
Moose-dev mailing list Moose-dev@list.inf.unibe.ch https://www.list.inf.unibe.ch/listinfo/moose-dev
Moose-dev mailing list Moose-dev@list.inf.unibe.ch https://www.list.inf.unibe.ch/listinfo/moose-dev
Hi,
On Tue, Oct 27, 2015 at 11:30 AM, Anne Etien anne.etien@univ-lille1.fr wrote:
Hi,
For preparing my teaching course I would have love to have simple class hierarchy visualisations or even better, real UML representations. Unfortunately, the UML like diagram from the Moose panel is not zoomable.
There is a bug in the rendering of actions in the main window.
It is by default in light grey saying that it is harder to read. It contains all the attributes and all the methods so it is difficult to put it in a single readable picture. Please make the experiment with the Famix-Core classes. I was not able to do easily a class hierarchy with the name of the classes. After more than one hour, I gave up. So it could be good, if we can have:
- a class hierarchy with only the names of the classes in boxes or not
- a class hierarchy with only attributes
- a class hierarchy with only methods
- the existing "UML" representation
- a real metamodel representation. Not as a system complexity
representation, but as a real UML representation meaning with inheritance AND associations (those can be deduce from pragmas and now with the new MooseQuery API, we get all the methods to do it).
The associations are represented as first class in Fame, but the reason we do not show them is that we do not have a layout that supports such associations.
It should be possible to easily specify which classes we want to represent.
It seems to me the minimum vital to do real analyses.
In my course, I wanted to show I extended FAMIX for SQL purpose. It was so
complex (because I don’t want not all FAMIX entity, but just the one from which the SQL classes inherit and without the methods) that once again I gave up.
You can do it programatically. Take a look at MooseFameView>>viewFamixCore to see how to show a selection of the classes from the default meta-model.
I think that for what you want, you should exhibit this
I don’t have enough time to better look for. But anyway, I find it sad that it is so hard even for people knowing (a bit) Moose of not being able to do that.
I am sad that you are sad. Sadness can be conducive for meditation, but it typically is not particularly promising for generating action :). So, let's snap out of our sadness and focus on what should be done next.
Cheers, Doru
Cheers, Anne
Moose-dev mailing list Moose-dev@list.inf.unibe.ch https://www.list.inf.unibe.ch/listinfo/moose-dev
For preparing my teaching course I would have love to have simple class hierarchy visualisations or even better, real UML representations. Unfortunately, the UML like diagram from the Moose panel is not zoomable.
There is a bug in the rendering of actions in the main window.
Yes, but I cannot figure out what it is. I have simply refactored GLMRoassal2Presentation>>defaultActions I believe the behavior should be the same. Can you have a look at it?
Cheers, Alexandre
The bug is in Glamour as it seems.
For example:
GLMWrapper new with: [ :w | w show: [ :a | a roassal2 *title: 'With title it works';* initializeView: [ RTMondrian new ]; painting: [ :view | view nodes: (1 to: 10) ] ] ]; openOn: 42
If the bolded line is there, you get the actions, if not, they are not.
Doru
On Wed, Oct 28, 2015 at 1:04 PM, Alexandre Bergel alexandre.bergel@me.com wrote:
For preparing my teaching course I would have love to have simple class
hierarchy visualisations or even better, real UML representations. Unfortunately, the UML like diagram from the Moose panel is not zoomable.
There is a bug in the rendering of actions in the main window.
Yes, but I cannot figure out what it is. I have simply refactored GLMRoassal2Presentation>>defaultActions I believe the behavior should be the same. Can you have a look at it?
Cheers, Alexandre
Moose-dev mailing list Moose-dev@list.inf.unibe.ch https://www.list.inf.unibe.ch/listinfo/moose-dev
Do you also have an algorithm laying out your UML diagrams?
Not yet. Next month I should have something custom-tailored for class diagrams...
Peter
On Wed, Oct 28, 2015 at 1:09 PM, Tudor Girba tudor@tudorgirba.com wrote:
The bug is in Glamour as it seems.
For example:
GLMWrapper new with: [ :w | w show: [ :a | a roassal2 *title: 'With title it works';* initializeView: [ RTMondrian new ]; painting: [ :view | view nodes: (1 to: 10) ] ] ]; openOn: 42
If the bolded line is there, you get the actions, if not, they are not.
Doru
On Wed, Oct 28, 2015 at 1:04 PM, Alexandre Bergel <alexandre.bergel@me.com
wrote:
For preparing my teaching course I would have love to have simple class
hierarchy visualisations or even better, real UML representations. Unfortunately, the UML like diagram from the Moose panel is not zoomable.
There is a bug in the rendering of actions in the main window.
Yes, but I cannot figure out what it is. I have simply refactored GLMRoassal2Presentation>>defaultActions I believe the behavior should be the same. Can you have a look at it?
Cheers, Alexandre
Moose-dev mailing list Moose-dev@list.inf.unibe.ch https://www.list.inf.unibe.ch/listinfo/moose-dev
-- www.tudorgirba.com
"Every thing has its own flow"
Moose-dev mailing list Moose-dev@list.inf.unibe.ch https://www.list.inf.unibe.ch/listinfo/moose-dev
That would be a great addition.
Doru
On Wed, Oct 28, 2015 at 2:05 PM, Peter Uhnák i.uhnak@gmail.com wrote:
Do you also have an algorithm laying out your UML diagrams?
Not yet. Next month I should have something custom-tailored for class diagrams...
Peter
On Wed, Oct 28, 2015 at 1:09 PM, Tudor Girba tudor@tudorgirba.com wrote:
The bug is in Glamour as it seems.
For example:
GLMWrapper new with: [ :w | w show: [ :a | a roassal2 *title: 'With title it works';* initializeView: [ RTMondrian new ]; painting: [ :view | view nodes: (1 to: 10) ] ] ]; openOn: 42
If the bolded line is there, you get the actions, if not, they are not.
Doru
On Wed, Oct 28, 2015 at 1:04 PM, Alexandre Bergel < alexandre.bergel@me.com> wrote:
For preparing my teaching course I would have love to have simple class
hierarchy visualisations or even better, real UML representations. Unfortunately, the UML like diagram from the Moose panel is not zoomable.
There is a bug in the rendering of actions in the main window.
Yes, but I cannot figure out what it is. I have simply refactored GLMRoassal2Presentation>>defaultActions I believe the behavior should be the same. Can you have a look at it?
Cheers, Alexandre
Moose-dev mailing list Moose-dev@list.inf.unibe.ch https://www.list.inf.unibe.ch/listinfo/moose-dev
-- www.tudorgirba.com
"Every thing has its own flow"
Moose-dev mailing list Moose-dev@list.inf.unibe.ch https://www.list.inf.unibe.ch/listinfo/moose-dev
Moose-dev mailing list Moose-dev@list.inf.unibe.ch https://www.list.inf.unibe.ch/listinfo/moose-dev
Indeed, that is one bug. Another bug is:
Inspecting the following gives me _working_ actions (e.g., I can do zoom in / out): RTMondrian new nodes: (1 to: 10); yourself
When I execute:
GLMWrapper new with: [ :w | w show: [ :a | a roassal2 title: 'With title it works'; initializeView: [ RTMondrian new ]; painting: [ :view | view nodes: (1 to: 10) ] ] ]; openOn: 42
The actions do not work :-( I cannot see why.
Alexandre
Le 28 oct. 2015 à 12:58, Tudor Girba tudor@tudorgirba.com a écrit :
Hi,
On Tue, Oct 27, 2015 at 11:30 AM, Anne Etien anne.etien@univ-lille1.fr wrote: Hi,
For preparing my teaching course I would have love to have simple class hierarchy visualisations or even better, real UML representations. Unfortunately, the UML like diagram from the Moose panel is not zoomable.
There is a bug in the rendering of actions in the main window.
It is by default in light grey saying that it is harder to read. It contains all the attributes and all the methods so it is difficult to put it in a single readable picture. Please make the experiment with the Famix-Core classes. I was not able to do easily a class hierarchy with the name of the classes. After more than one hour, I gave up. So it could be good, if we can have:
- a class hierarchy with only the names of the classes in boxes or not
- a class hierarchy with only attributes
- a class hierarchy with only methods
- the existing "UML" representation
- a real metamodel representation. Not as a system complexity representation, but as a real UML representation meaning with inheritance AND associations (those can be deduce from pragmas and now with the new MooseQuery API, we get all the methods to do it).
The associations are represented as first class in Fame, but the reason we do not show them is that we do not have a layout that supports such associations.
I will try to do it, when I will have a bit more time.
It should be possible to easily specify which classes we want to represent. It seems to me the minimum vital to do real analyses. In my course, I wanted to show I extended FAMIX for SQL purpose. It was so complex (because I don’t want not all FAMIX entity, but just the one from which the SQL classes inherit and without the methods) that once again I gave up.
You can do it programatically. Take a look at MooseFameView>>viewFamixCore to see how to show a selection of the classes from the default meta-model.
I think that for what you want, you should exhibit this
I didn’t know that. That’s interesting. I did what I wanted with Peter's script.
I don’t have enough time to better look for. But anyway, I find it sad that it is so hard even for people knowing (a bit) Moose of not being able to do that.
I am sad that you are sad. Sadness can be conducive for meditation, but it typically is not particularly promising for generating action :). So, let's snap out of our sadness and focus on what should be done next.
Don’t worry, I can’t stop using Moose, it is my day to day research tool. In the past I was sad seeing MooseChef, I did MooseQuery. So don’t worry, when I will find time, I probably will arrange that. And by the way, sometimes it is good to say that you are sad because the community is so great that there is always someone with a response to you to make you happy ;o)
Cheers, Anne
Cheers, Doru
Cheers, Anne
Moose-dev mailing list Moose-dev@list.inf.unibe.ch https://www.list.inf.unibe.ch/listinfo/moose-dev
-- www.tudorgirba.com
"Every thing has its own flow" _______________________________________________ Moose-dev mailing list Moose-dev@list.inf.unibe.ch https://www.list.inf.unibe.ch/listinfo/moose-dev