martin-fleck / cra-ttc2016

The Class Responsibility Assignment Case for the Transformation Tool Contest 2016
3 stars 1 forks source link

Filip Krikava evaluation of UML-RSDS #22

Open fikovnik opened 8 years ago

fikovnik commented 8 years ago

The solution is based on a genetic algorithm with a preprocessing step that moves isolated features into a single class. It was interesting to see how a GA is implemented in UML-RSDS.

The results seems to be quite good. I find the OCL expressions a bit hard to follow, but overall the solution is quite compact. Althought, it would be nice to clarify which part of the Controller.java had to be written manually and which had been generated. Furthermore, how much effort was involved in putting the whole solution together (converting EMF models into UML-RSDS, etc). Especially the work with EMF model is not detailed and I could not run it on additional models I have prepared which is a pity.

I wonder how much does the the preprocessing gain in the overall result - I mean if it is not there what would be the final index?

It is not clear which number one should use for the iterations when launching the solution. This seems to be important as it does affect the performance. Perhaps I missed something, but on SHARE I did not find the way how to actually launch the tool itself.

minor comments:

EvaluationSheet-UML-RSDS.xlsx

sobhz commented 8 years ago

All of Controller.java is generated from the UML-RSDS specification (except for a special version of the XMI generator). Mapping Ecore to UML class diagrams is quite simple - the classes and features are mapped automatically, but the user has to manually improve the visual layout. XMI files are mapped automatically to UML-RSDS model data files by the umlrsds tool.

The pre-processing could be discarded but then the GA needs significantly more iterations to produce good results.

Yes, execution times are the complete transformation times - about 90% of this is the GA as the pre and post-processing times are minimal. These are times on a Windows 7 laptop (25% of an Intel i3 processor, 2.53 GHz). SHARE seems quite similar.