Automated Recommendation of Related Model Elements for Domain Models

  • Henning Agt-RickauerEmail author
  • Ralf-Detlef Kutsche
  • Harald Sack
Conference paper
Part of the Communications in Computer and Information Science book series (CCIS, volume 991)


Domain modeling is an important activity in the early stages of software projects to achieve a common understanding of the problem area among project participants. Domain models describe concepts and relationships of respective application fields using a modeling language and domain-specific terms. Creating these models requires software engineers to have detailed domain knowledge and expertise in model-driven development. Collecting domain knowledge is a time-consuming manual process that is rarely supported in current modeling environments. In this paper, we describe an approach that supports domain modeling through formalized knowledge sources and information extraction from text. On the one hand, domain-specific terms and their relationships are automatically queried from existing knowledge bases. On the other hand, as these knowledge bases are not extensive enough, we have constructed a large network of semantically related terms from natural language data sets containing millions of one-word and multi-word terms and their quantified relationships. Both approaches are integrated into a domain model recommender system that provides context-aware suggestions of model elements for virtually every possible domain. We report on the experience of using the recommendations in various industrial and research environments.


Domain modeling Recommender system Semantic network Information extraction Knowledge-based modeling 



This work is partially supported by the Federal Ministry of Education and Research under grant number 01UG1632B.


  1. 1.
    Whittle, J., Hutchinson, J., Rouncefield, M.: The state of practice in model-driven engineering. IEEE Softw. 31, 79–85 (2014)CrossRefGoogle Scholar
  2. 2.
    Evans, E.: Domain-driven Design: Tackling Complexity in the Heart of Software. Addison-Wesley Professional, Boston (2004)Google Scholar
  3. 3.
    Fowler, M.: Domain-Specific Languages. Pearson Education, Boston (2010)Google Scholar
  4. 4.
    Atkinson, C., Kühne, T.: Reducing accidental complexity in domain models. Softw. Syst. Model. 7, 345–359 (2008)CrossRefGoogle Scholar
  5. 5.
    Segura, Á.M., Pescador, A., de Lara, J., Wimmer, M.: An extensible meta-modelling assistant. In: 2016 IEEE 20th International Enterprise Distributed Object Computing Conference (EDOC), pp. 1–10. IEEE (2016)Google Scholar
  6. 6.
    Kuhn, A.: On recommending meaningful names in source and UML. In: Proceedings of the 2nd International Workshop on Recommendation Systems for Software Engineering, pp. 50–51. ACM (2010)Google Scholar
  7. 7.
    Mylopoulos, J., Borgida, A., Jarke, M., Koubarakis, M.: Telos: representing knowledge about information systems. ACM Trans. Inf. Syst. (TOIS) 8, 325–362 (1990)CrossRefGoogle Scholar
  8. 8.
    Störrle, H.: Structuring very large domain models: experiences from industrial MDSD projects. In: Proceedings of the Fourth European Conference on Software Architecture: Companion Volume, pp. 49–54. ACM (2010)Google Scholar
  9. 9.
    Reinhartz-Berger, I.: Towards automatization of domain modeling. Data Knowl. Eng. 69, 491–515 (2010)CrossRefGoogle Scholar
  10. 10.
    Frank, U.: Multi-perspective enterprise modeling: foundational concepts, prospects and future research challenges. Softw. Syst. Model. 13, 941–962 (2014)CrossRefGoogle Scholar
  11. 11.
    Reinhartz-Berger, I., Cohen, S., Bettin, J., Clark, T., Sturm, A.: Domain engineering. Springer, Heidelberg (2013). Scholar
  12. 12.
    Frank, U.: Domain-specific modeling languages: requirements analysis and design guidelines. In: Reinhartz-Berger, I., Sturm, A., Clark, T., Cohen, S., Bettin, J. (eds.) Domain Engineering, pp. 133–157. Springer, Heidelberg (2013). Scholar
  13. 13.
    Ionita, D., Wieringa, R., Bullee, J.-W., Vasenev, A.: Tangible modelling to elicit domain knowledge: an experiment and focus group. In: Johannesson, P., Lee, M.L., Liddle, S.W., Opdahl, A.L., López, Ó.P. (eds.) ER 2015. LNCS, vol. 9381, pp. 558–565. Springer, Cham (2015). Scholar
  14. 14.
    Banko, M., Cafarella, M.J., Soderland, S., Broadhead, M., Etzioni, O.: Open information extraction from the web. IJCAI 7, 2670–2676 (2007)Google Scholar
  15. 15.
    Agt-Rickauer, H., Kutsche, R., Sack, H.: Domore - a recommender system for domain modeling. In: Proceedings of the 6th International Conference on Model-Driven Engineering and Software Development, MODELSWARD 2018, Funchal, Madeira, Portugal, 22–24 January 2018, pp. 71–82 (2018)Google Scholar
  16. 16.
    Colace, F., De Santo, M., Greco, L., Amato, F., Moscato, V., Picariello, A.: Terminological ontology learning and population using latent dirichlet allocation. J. Vis. Lang. Comput. 25, 818–826 (2014)CrossRefGoogle Scholar
  17. 17.
    Reggio, G., Leotta, M., Ricca, F.: Who knows/uses what of the UML: a personal opinion survey. In: Dingel, J., Schulte, W., Ramos, I., Abrahão, S., Insfran, E. (eds.) MODELS 2014. LNCS, vol. 8767, pp. 149–165. Springer, Cham (2014). Scholar
  18. 18.
    Hutchinson, J., Whittle, J., Rouncefield, M.: Model-driven engineering practices in industry: social, organizational and managerial factors that lead to success or failure. Sci. Comput. Program. 89, 144–161 (2014)CrossRefGoogle Scholar
  19. 19.
    Fellbaum, C.: WordNet : An Electronic Lexical Database. The MIT Press, Cambridge (1998)CrossRefGoogle Scholar
  20. 20.
    Navigli, R., Ponzetto, S.P.: Babelnet:the automatic construction, evaluation and application of a wide-coverage multilingual semantic network. Artif. Intell. 193, 217–250 (2012)MathSciNetCrossRefGoogle Scholar
  21. 21.
    Lenat, D.B.: Cyc: a large-scale investment in knowledge infrastructure. Commun. ACM 38, 33–38 (1995)CrossRefGoogle Scholar
  22. 22.
    Speer, R., Havasi, C.: Representing general relational knowledge in ConceptNet 5. In: Proceedings of the Eight International Conference on Language Resources and Evaluation (LREC 2012), Istanbul, Turkey (2012)Google Scholar
  23. 23.
    Wiederhold, G.: Mediators in the architecture of future information systems. Computer 25, 38–49 (1992)CrossRefGoogle Scholar
  24. 24.
    Miles, A., Bechhofer, S.: SKOS simple knowledge organization system reference. W3C recommendation, W3C, 18 2009Google Scholar
  25. 25.
    McCrae, J., et al.: Interchanging lexical resources on the semantic web. Lang. Resour. Eval. 46, 701–719 (2012)CrossRefGoogle Scholar
  26. 26.
    Banko, M.: Open Information Extraction for the Web. PhD thesis, University of Washington (2009)Google Scholar
  27. 27.
    Turney, P.D., Pantel, P.: From frequency to meaning: vector space models of semantics. J. Artif. Int. Res. 37, 141–188 (2010)MathSciNetzbMATHGoogle Scholar
  28. 28.
    Michel, J.B., et al.: Quantitative analysis of culture using millions of digitized books. Science 331, 176–182 (2011)CrossRefGoogle Scholar
  29. 29.
    Williams, S.: An analysis of pos tag patterns in ontology identifiers and labels. Technical report, Technical Report TR2013/02, Department of Computing, The Open University, UK (2013)Google Scholar
  30. 30.
    Agt, H., Kutsche, R.-D.: Automated construction of a large semantic network of related terms for domain-specific modeling. In: Salinesi, C., Norrie, M.C., Pastor, Ó. (eds.) CAiSE 2013. LNCS, vol. 7908, pp. 610–625. Springer, Heidelberg (2013). Scholar
  31. 31.
    Henderson-Sellers, B., Gonzalez-Perez, C., Eriksson, O., Ågerfalk, P.J., Walkerden, G.: Software modelling languages: a wish list. In: 7th IEEE/ACM International Workshop on Modeling in Software Engineering, MiSE 2015, Florence, Italy, 16–17 May 2015, pp. 72–77 (2015)Google Scholar
  32. 32.
    Atkinson, C., Kühne, T.: In defence of deep modelling. Inf. Softw. Technol. 64, 36–51 (2015)CrossRefGoogle Scholar
  33. 33.
    Storey, V.C.: Understanding semantic relationships. VLDB J. 2, 455–488 (1993)CrossRefGoogle Scholar
  34. 34.
    Maroto García, N., Alcina, A.: Formal description of conceptual relationships with a view to implementing them in the ontology editor protég. Terminol. Int. J. Theor. Appl. Issues Spec. Commun. 15, 232–257 (2009)Google Scholar
  35. 35.
    Chaffin, R., Herrmann, D.J.: The similarity and diversity of semantic relations. Mem. Cogn. 12, 134–141 (1984)CrossRefGoogle Scholar
  36. 36.
    Olivé, A.: Conceptual Modeling of Information Systems. Springer, New York (2007)zbMATHGoogle Scholar
  37. 37.
    Guizzardi, G.: Ontological foundations for structural conceptual models. CTIT, Centre for Telematics and Information Technology (2005)Google Scholar
  38. 38.
    Almeida, M., Souza, R., Fonseca, F.: Semantics in the semantic web: a critical evaluation. Knowl. Organ. 38, 187–203 (2011)CrossRefGoogle Scholar
  39. 39.
    Huang, C.: Ontology and the Lexicon: A Natural Language Processing Perspective. Cambridge University Press, Cambridge (2010)CrossRefGoogle Scholar
  40. 40.
    Church, K.W., Hanks, P.: Word association norms, mutual information, and lexicography. Comput. Linguist. 16, 22–29 (1990)Google Scholar
  41. 41.
    Milajevs, D., Sadrzadeh, M., Purver, M.: Robust co-occurrence quantification for lexical distributional semantics. In: ACL 2016, vol. 58 (2016)Google Scholar
  42. 42.
    Agt, H., Kutsche, R.D., Natho, N., Li, Y.: The bizware research project. In: 15th International Conference on Model Driven Engineering Languages and Systems-Exhibition Track, MODELS (2012)Google Scholar
  43. 43.
    Agt-Rickauer, H., Waitelonis, J., Tietz, T., Sack, H.: Data integration for the media value chain. In: International Semantic Web Conference (Posters & Demos) (2016)Google Scholar
  44. 44.
    Hebig, R., Quang, T.H., Chaudron, M.R., Robles, G., Fernandez, M.A.: The quest for open source projects that use UML: mining github. In: Proceedings of the ACM/IEEE 19th International Conference on Model Driven Engineering Languages and Systems, pp. 173–183. ACM (2016)Google Scholar
  45. 45.
    France, R.B., Bieman, J.M., Mandalaparty, S.P., Cheng, B.H., Jensen, A.: Repository for model driven development (remodd). In: 2012 34th International Conference on Software Engineering (ICSE), pp. 1471–1472. IEEE (2012)Google Scholar
  46. 46.
    Lucrédio, D., Fortes, R.P.M., Whittle, J.: Moogle: a metamodel-based model search engine. Softw. Syst. Model. 11, 183–208 (2012)CrossRefGoogle Scholar
  47. 47.
    Hessellund, A., Czarnecki, K., Wąsowski, A.: Guided development with multiple domain-specific languages. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds.) MODELS 2007. LNCS, vol. 4735, pp. 46–60. Springer, Heidelberg (2007). Scholar
  48. 48.
    Dyck, A., Ganser, A., Lichter, H.: On designing recommenders for graphical domain modeling environments. In: 2014 2nd International Conference on Model-Driven Engineering and Software Development (MODELSWARD), pp. 291–299. IEEE (2014)Google Scholar
  49. 49.
    Kühne, T.: Unifying explanatory and constructive modeling: towards removing the gulf between ontologies and conceptual models. In: Proceedings of the ACM/IEEE 19th International Conference on Model Driven Engineering Languages and Systems, pp. 95–102. ACM (2016)Google Scholar
  50. 50.
    Walter, T., Parreiras, F.S., Staab, S.: An ontology-based framework for domain-specific modeling. Softw. Syst. Model. 13, 1–26 (2014)CrossRefGoogle Scholar
  51. 51.
    Ojamaa, A., Haav, H.-M., Penjam, J.: Semi-automated generation of DSL meta models from formal domain ontologies. In: Bellatreche, L., Manolopoulos, Y. (eds.) MEDI 2015. LNCS, vol. 9344, pp. 3–15. Springer, Cham (2015). Scholar
  52. 52.
    Tairas, R., Mernik, M., Gray, J.: Using ontologies in the domain analysis of domain-specific languages. In: Chaudron, M.R.V. (ed.) MODELS 2008. LNCS, vol. 5421, pp. 332–342. Springer, Heidelberg (2009). Scholar

Copyright information

© Springer Nature Switzerland AG 2019

Authors and Affiliations

  • Henning Agt-Rickauer
    • 1
    Email author
  • Ralf-Detlef Kutsche
    • 2
  • Harald Sack
    • 3
  1. 1.Hasso Plattner Institute for IT Systems EngineeringUniversity of PotsdamPotsdamGermany
  2. 2.Database Systems and Information Management GroupTechnische Universität BerlinBerlinGermany
  3. 3.FIZ Karlsruhe, Karlsruhe Institute of Technology (KIT)KarlsruheGermany

Personalised recommendations