5 SUMMARY AND OUTLOOK
The results of this study show that model recom-
menders are new grounds. This is best illustrated
by the about eighty percent of the participants almost
equally split into two groups; who want a model rec-
ommender and who do not know. Other than that, the
results are significant in three major respects.
First, there are several alternative UIs that suggest
different triggering, user interaction, and displaying
recommendations. Most of which are reasonable and
applicable in different circumstances. Most impor-
tantly, the size of recommended models might serve
as a deal breaker if they should be displayed in an
overlay manner. Moreover, changing the type of the
model could change reasoning on alternative UIs.
Second, there seem to be different needs of what
items are recommended. In class diagrams, we
have seen desires for recommendations of classes, at-
tributes, or complex models. E.g., design patterns
were asked for and we are currently investigating on
that. Similarly, a model recommender should not be
limited to a one back-end. Hence, different recom-
mendation algorithms, each of which implementing
another algorithm, need common grounds.
Finally, not only model libraries (e.g., (Ganser and
Lichter, 2013)) are requested as data sources for rec-
ommendations. In project environments, lots of ar-
tifacts are created and could serve as inputs for pro-
ducing recommendations; e.g., a requirements docu-
ment. We can use it to help producing recommen-
dations since this can play the role of a user profile
in terms of collaborative recommender system. Yet,
we are aware of self contradicting requirements spec-
ifications. Moreover, the recommender system might
be used in diverse modeling tools. There is, therefore,
need for multiple recommendation contexts.
All in all, this leads to the need of a flexible and
generic architecture. This can bolster research by of-
fering three options for extensions, namely various
UIs, algorithms, and contexts. Our realization of this
can be found here (Dyck et al., 2014).
REFERENCES
Al Tair, H., Zemerly, M. J., and Al-Qutayri, M. (2012).
Architecture for Context-Aware Pro-Active Recom-
mender System. International Journal Multimedia
and Image Processing, 2(1/2):125–133.
Bennett, J. and Lanning, S. (2007). The Netflix Prize. In
Proceedings of KDD cup and workshop.
Bobkowska, A. and Reszke, K. (2005). Usability of UML
Modeling Tools. In Conference on Software Engineer-
ing: Evolution and Emerging Technologies.
Bollen, D., Knijnenburg, B. P., Willemsen, M. C., and
Graus, M. (2010). Understanding choice overload in
recommender systems. In ACM conference on Rec-
ommender Systems, RecSys ’10, USA. ACM.
Bruch, M. (2008). Towards Control-flow Aware Code Rec-
ommender Systems. In 3rd International Doctoral
Symposium on Empirical Software Engineering 2008.
Bruch, M. (2012). IDE 2.0: Leveraging the Wisdom of the
Software Engineering Crowds. PhD thesis.
Dyck, A., Ganser, A., and Lichter, H. (2014). A framework
for model recommenders – requirements, architecture
and tool support. In Modelsward 2014, PT.
Eclipse (2012). Code Recommenders.
http://www.eclipse.org/recommenders/.
EMFBoard (2012). EMF Forum: An “intelligent” autocom-
plete function for Ecore diagram editors.
Felfernig, A., Gordea, S., Jannach, D., Teppan, E., and
Zanker, M. (2007). A Short Survey of Recommen-
dation Technologies in Travel and Tourism. OEGAI
Journal, 25(7):17–22.
Ganser, A. and Lichter, H. (2013). Engineering model
recommender foundations - from class completion to
model recommendations. In Modelsward 2013, ESP.
Happel, H.-J. and Maalej, W. (2008). Potentials and Chal-
lenges of Recommendation Systems for Software De-
velopment. In International Workshop on Recommen-
dation Systems for Software Engineering.
Hummel, O., Janjic, W., and Atkinson, C. (2008). Code
Conjurer: Pulling Reusable Software out of Thin Air.
IEEE Software.
Linden, G., Smith, B., and York, J. (2003). Amazon.com
recommendations: item-to-item collaborative filter-
ing. Internet Computing, IEEE, 7(1):76–80.
Lucr
´
edio, D., De M Fortes, R., and Whittle, J. (2008).
MOOGLE: A Model Search Engine. In Model Driven
Engineering Languages and Systems, LNCS.
Puerta Melguizo, M. C., Boves, L., Deshpande, A., and
Ramos, O. M. n. (2007). A Proactive Recommenda-
tion System for Writing: Helping Without Disrupting.
In European Conference on Cognitive Ergonomics.
ReMMoD (2012). http://www.cs.colostate.edu/remodd/v1/.
Resnick, P. and Varian, H. R. (1997). Recommender Sys-
tems. Communications of the ACM, 40(3):56–58.
Robillard, M., Walker, R., and Zimmermann, T. (2010).
Recommendation Systems for Software Engineering.
In IEEE Software, volume 27, pages 80–86.
Schafer, J. B., Konstan, J., and Riedi, J. (1999). Recom-
mender Systems in E-Commerce. In ACM Conference
on Electronic Commerce.
SnipMatch (2012). http://www.snipmatch.com/.
Systems, A. R. (2009). http://recsys.acm.org/2009/.
Weimer, M., Karatzoglou, A., and Bruch, M. (2009). Max-
imum Margin Matrix Factorization for Code Recom-
mendation. In ACM conference on Recommender sys-
tems, RecSys ’09, New York, NY, USA. ACM.
OnDesigningRecommendersforGraphicalDomainModelingEnvironments
299