Skip to main content
Log in

Automated, interactive, and traceable domain modelling empowered by artificial intelligence

  • Theme Section Paper
  • Published:
Software and Systems Modeling Aims and scope Submit manuscript

Abstract

Model-Based Software Engineering provides various modelling formalisms for capturing the structural, behavioral, configuration, and intentional aspects of software systems. One of the most widely used kinds of models—domain models—are used during requirements analysis or the early stages of design to capture the domain concepts and relationships in the form of class diagrams. Modellers perform domain modelling to transform the problem descriptions that express informal requirements in natural language to domain models, which are more concise and analyzable. However, this manual practice of domain modelling is laborious and time-consuming. Existing approaches, which aim to assist modellers by automating or semi-automating the construction of domain models from problem descriptions, fail to address three non-trivial aspects of automated domain modelling. First, automatically extracted domain models from existing approaches are not accurate enough to be used directly or with minor modifications for software development or teaching purposes. Second, existing approaches do not support modeller-system interactions beyond providing recommendations. Finally, existing approaches do not facilitate the modellers to learn the rationale behind the modelling decisions taken by an extractor system. Therefore, in this paper, we extend our previous work to facilitate bot-modeller interactions. We propose an algorithm to discover alternative configurations during bot-modeller interactions. Our bot uses this algorithm to find alternative configurations and then present these configurations in the form of suggestions to modellers. Our bot then updates the domain model in response to the acceptance of these suggestions by a modeller. Furthermore, we evaluate the bot for its effectiveness and performance for the test problem descriptions. Our bot achieves median F1 scores of 86%, 91%, and 90% in the Found Configurations, Offered Suggestions, and Updated Domain Models categories, respectively. We also show that the median time taken by our bot to find alternative configurations is 55.5ms for the problem descriptions which are similar to the test problem descriptions in terms of model size and complexity. Finally, we conduct a pilot user study to assess the benefits and limitations of our bot and present the lessons learned from our study in preparation for a large-scale user study.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Institutional subscriptions

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7

Similar content being viewed by others

Notes

  1. https://en.wikipedia.org/wiki/Linear_discriminant_analysis.

  2. https://en.wikipedia.org/wiki/Logistic_regression.

  3. https://en.wikipedia.org/wiki/Bidirectional_recurrent_neural_networks.

  4. https://spacy.io/.

  5. https://rasa.com/.

  6. Python 3.6.12—https://www.python.org/.

  7. React 17.0.1—https://reactjs.org/.

  8. Neo4j 4.1.10—https://neo4j.com/.

  9. RASA 2.1.3—https://rasa.com/.

  10. spaCy 2.3.5—https://spacy.io/.

  11. Django 2.2.7—https://www.djangoproject.com/.

  12. GOJS 2.1.35—https://gojs.net/latest/index.html.

  13. https://en.wikipedia.org/wiki/Precision_and_recall.

  14. https://en.wikipedia.org/wiki/Precision_and_recall.

  15. https://en.wikipedia.org/wiki/F-score.

  16. https://rijul5.github.io/Domain-Modelling-Bot/.

References

  1. Anquetil, N., Kulesza, U., Mitschke, R., Moreira, A., Royer, J.C., Rummler, A., Sousa, A.: A model-driven traceability framework for software product lines. Softw. Syst. Model. 9(4), 427–451 (2010). https://doi.org/10.1007/s10270-009-0120-9

    Article  Google Scholar 

  2. Arora, C., Sabetzadeh, M., Briand, L., Zimmer, F.: Extracting domain models from natural-language requirements: Approach and industrial evaluation. In: Proceedings of the ACM/IEEE 19th International Conference on Model Driven Engineering Languages and Systems, MODELS ’16, p. 250-260. Association for Computing Machinery, New York, NY, USA (2016). https://doi.org/10.1145/2976767.2976769

  3. Ben Charrada, E., Caspar, D., Jeanneret, C., Glinz, M.: Towards a benchmark for traceability. In: Proceedings of the 12th International Workshop on Principles of Software Evolution and the 7th Annual ERCIM Workshop on Software Evolution, IWPSE-EVOL ’11, p. 21–30. Association for Computing Machinery, New York, NY, USA (2011). https://doi.org/10.1145/2024445.2024451

  4. Bencomo, N., Garcia Paucar, L.H.: RaM: causally-connected and requirements-aware runtime models using Bayesian learning. In: 2019 ACM/IEEE 22nd International Conference on Model Driven Engineering Languages and Systems (MODELS), pp. 216–226 (2019). https://doi.org/10.1109/MODELS.2019.00005

  5. Bousse, E., Mayerhofer, T., Combemale, B., Baudry, B.: A generative approach to define rich domain-specific trace metamodels. In: 11th European Conference on Modelling Foundations and Applications (ECMFA). L’Aquila, Italy (2015). https://hal.inria.fr/hal-01154225

  6. Burgueño, L., Clarisó, R., Gérard, S., Li, S., Cabot, J.: An nlp-based architecture for the autocompletion of partial domain models. In: La Rosa, M., Sadiq, S., Teniente, E. (eds.) Advanced Information Systems Engineering, pp. 91–106. Springer International Publishing, Cham (2021)

    Chapter  Google Scholar 

  7. Burgueño, L., Cabot, J., Gérard, S.: An LSTM-based neural network architecture for model transformations. In: 2019 ACM/IEEE 22nd International Conference on Model Driven Engineering Languages and Systems (MODELS), pp. 294–299 (2019). https://doi.org/10.1109/MODELS.2019.00013

  8. Cerqueira, T.G.O., Ramalho, F., Marinho, L.B.: A content-based approach for recommending UML sequence diagrams. In: Gou, J. (ed.) The 28th International Conference on Software Engineering and Knowledge Engineering, SEKE 2016, Redwood City, San Francisco Bay, USA, July 1–3, 2016, pp. 644–649. KSI Research Inc. and Knowledge Systems Institute Graduate School (2016). https://doi.org/10.18293/SEKE2016-147

  9. Chen, X., Hosking, J., Grundy, J.: A combination approach for enhancing automated traceability: (nier track). In: 2011 33rd International Conference on Software Engineering (ICSE), pp. 912–915 (2011). https://doi.org/10.1145/1985793.1985943

  10. Chen, X., Hosking, J., Grundy, J., Amor, R.: Development of robust traceability benchmarks. In: 2013 22nd Australian Software Engineering Conference, pp. 145–154 (2013). https://doi.org/10.1109/ASWEC.2013.26

  11. Cleland-Huang, J., Czauderna, A., Dekhtyar, A., Gotel, O., Hayes, J.H., Keenan, E., Leach, G., Maletic, J., Poshyvanyk, D., Shin, Y., Zisman, A., Antoniol, G., Berenbach, B., Egyed, A., Maeder, P.: Grand challenges, benchmarks, and tracelab: Developing infrastructure for the software traceability research community. In: Proceedings of the 6th International Workshop on Traceability in Emerging Forms of Software Engineering, TEFSE ’11, p. 17-23. Association for Computing Machinery, New York, NY, USA (2011). https://doi.org/10.1145/1987856.1987861

  12. Cleland-Huang, J., Hayes, J.H., Domel, J.M.: Model-based traceability. In: 2009 ICSE Workshop on Traceability in Emerging Forms of Software Engineering, pp. 6–10 (2009). https://doi.org/10.1109/TEFSE.2009.5069575

  13. Elkamel, A., Gzara, M., Ben-Abdallah, H.: An UML class recommender system for software design. In: 2016 IEEE/ACS 13th International Conference of Computer Systems and Applications (AICCSA), pp. 1–8 (2016). https://doi.org/10.1109/AICCSA.2016.7945659

  14. Fawcett, T.: An introduction to roc analysis. Pattern Recogn. Lett. 27(8), 861–874 (2006). https://doi.org/10.1016/j.patrec.2005.10.010

    Article  MathSciNet  Google Scholar 

  15. Gotel, O., Cleland-Huang, J., Hayes, J.H., Zisman, A., Egyed, A., Grünbacher, P., Dekhtyar, A., Antoniol, G., Maletic, J., Mäder, P.: Traceability Fundamentals, pp. 3–22. Springer London, London (2012). https://doi.org/10.1007/978-1-4471-2239-5_1

  16. Hochreiter, S., Schmidhuber, J.: Long short-term memory. Neural Comput. 9(8), 1735–1780 (1997). https://doi.org/10.1162/neco.1997.9.8.1735

    Article  Google Scholar 

  17. Houmb, S.H., Islam, S., Knauss, E., Jürjens, J., Schneider, K.: Eliciting security requirements and tracing them to design: an integration of common criteria, heuristics, and UMLsec. Requirements Eng. 15(1), 63–93 (2010). https://doi.org/10.1007/s00766-009-0093-9

    Article  Google Scholar 

  18. Hübner, P., Paech, B.: Interaction-based creation and maintenance of continuously usable trace links between requirements and source code. Empir. Softw. Eng. 25(5), 4350–4377 (2020). https://doi.org/10.1007/s10664-020-09831-w

    Article  Google Scholar 

  19. Ibrahim, M., Ahmad, R.: Class diagram extraction from textual requirements using natural language processing (NLP) techniques. In: 2010 Second International Conference on Computer Research and Development, pp. 200–204 (2010). https://doi.org/10.1109/ICCRD.2010.71

  20. Jyothilakshmi, M.S., Samuel, P.: Domain ontology based class diagram generation from functional requirements. In: 2012 12th International Conference on Intelligent Systems Design and Applications (ISDA), pp. 380–385 (2012). https://doi.org/10.1109/ISDA.2012.6416568

  21. Kassab, M., Ormandjieva, O., Daneva, M.: A traceability metamodel for change management of non-functional requirements. In: 2008 Sixth International Conference on Software Engineering Research, Management and Applications, pp. 245–254 (2008). https://doi.org/10.1109/SERA.2008.37

  22. Landhäußer, M., Körner, S.J., Tichy, W.F.: From requirements to UML models and back: how automatic processing of text can support requirements engineering. Software Qual. J. (2014). https://doi.org/10.1007/s11219-013-9210-6

    Article  Google Scholar 

  23. Lucrédio, D., Fortes, M., R.P., Whittle, J.: MOOGLE: a metamodel-based model search engine. Softw. Syst. Model. 11(2), 183–208 (2012)

  24. Mader, P., Gotel, O., Philippow, I.: Getting back to basics: promoting the use of a traceability information model in practice. In: 2009 ICSE Workshop on Traceability in Emerging Forms of Software Engineering, pp. 21–25 (2009). https://doi.org/10.1109/TEFSE.2009.5069578

  25. Maro, S., Steghofer, J., Knauss, E., Horkof, J., Kasauli, R., Wohlrab, R., Korsgaard, J., Wartenberg, F., Strom, N., Alexandersson, R.: Managing traceability information models: not such a simple task after all? IEEE Software. https://doi.org/10.1109/MS.2020.3020651

  26. Miller, G.A.: Wordnet: A lexical database for english. Commun. ACM 38(11), 39–41 (1995). https://doi.org/10.1145/219717.219748

    Article  Google Scholar 

  27. Miller, G.A.: WordNet: An electronic lexical database. MIT press (1998). https://wordnet.princeton.edu/

  28. Montes, A., Pacheco, H., Estrada, H., Pastor, O.: Conceptual model generation from requirements model: A natural language processing approach. In: International Conference on Application of Natural Language to Information Systems, pp. 325–326. Springer (2008)

  29. Mora Segura, A., 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 (2016). https://doi.org/10.1109/EDOC.2016.7579377

  30. Mussbacher, G., Combemale, B., Kienzle, J., Abrahão, S., Ali, H., Bencomo, N., Búr, M., Burgueño, L., Engels, G., Jeanjean, P., et al.: Opportunities in intelligent modeling assistance. Softw. Syst. Model. 19(5), 1045–1053 (2020). https://doi.org/10.1007/s10270-020-00814-5

    Article  Google Scholar 

  31. Pennington, J., Socher, R., Manning, C.: GloVe: Global vectors for word representation. In: Proceedings of the 2014 Conference on Empirical Methods in Natural Language Processing (EMNLP), pp. 1532–1543. Association for Computational Linguistics, Doha, Qatar (2014). 10.3115/v1/D14-1162. https://aclanthology.org/D14-1162

  32. Pinheiro, F., Goguen, J.: An object-oriented tool for tracing requirements. In: Proceedings of the Second International Conference on Requirements Engineering, pp. 219– (1996). https://doi.org/10.1109/ICRE.1996.491449

  33. Pérez-Soler, S., Guerra, E., de Lara, J.: Collaborative modeling and group decision making using chatbots in social networks. IEEE Softw. 35(6), 48–54 (2018). https://doi.org/10.1109/MS.2018.290101511

    Article  Google Scholar 

  34. Pérez-Soler, S., Guerra, E., de Lara, J., Jurado, F.: The rise of the (modelling) bots: towards assisted modelling via social networks. In: 2017 32nd IEEE/ACM International Conference on Automated Software Engineering (ASE), pp. 723–728 (2017). https://doi.org/10.1109/ASE.2017.8115683

  35. Robeer, M., Lucassen, G., van der Werf, J.M.E.M., Dalpiaz, F., Brinkkemper, S.: Automated extraction of conceptual models from user stories via NLP. In: 2016 IEEE 24th International Requirements Engineering Conference (RE), pp. 196–205 (2016). https://doi.org/10.1109/RE.2016.40

  36. Saini, R., Mussbacher, G., Guo, J.L., Kienzle, J.: A neural network based approach to domain modelling relationships and patterns recognition. In: 2020 IEEE Tenth International Model-Driven Requirements Engineering (MoDRE), pp. 78–82 (2020). https://doi.org/10.1109/MoDRE51215.2020.00016

  37. Saini, R., Mussbacher, G., Guo, J.L., Kienzle, J.: Towards queryable and traceable domain models. In: 2020 IEEE 28th International Requirements Engineering Conference (RE), pp. 334–339 (2020). https://doi.org/10.1109/RE48521.2020.00044

  38. Saini, R., Mussbacher, G., Guo, J.L., Kienzle, J.: Automated traceability for domain modelling decisions empowered by artificial intelligence. In: 2021 IEEE 29th International Requirements Engineering Conference (RE) (to be published) (2021)

  39. Saini, R., Mussbacher, G., Guo, J.L.C., Kienzle, J.: Teaching modelling literacy: An artificial intelligence approach. In: MODELS 2019 Companion, pp. 714–719 (2019). https://doi.org/10.1109/MODELS-C.2019.00108

  40. Saini, R., Mussbacher, G., Guo, J.L.C., Kienzle, J.: DomoBOT: A bot for automated and interactive domain modelling. In: Proceedings of the 23rd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems: Companion Proceedings, MODELS ’20. Association for Computing Machinery, New York, NY, USA (2020). https://doi.org/10.1145/3417990.3421385

  41. Salih Dawood, O., Sahraoui, A.E.K.: From Requirements Engineering to UML using Natural Language Processing—Survey Study. Eur. J. Ind. Eng. 2, 44–50 (2017)

  42. Sardinha, A., Yu, Y., Niu, N., Rashid, A.: EA-Tracer: identifying traceability links between code aspects and early aspects. In: Proceedings of the 27th Annual ACM Symposium on Applied Computing, SAC ’12, pp. 1035–1042. Association for Computing Machinery, New York, NY, USA (2012). https://doi.org/10.1145/2245276.2231938

  43. Savary-Leblanc, M.: Improving MBSE tools UX with AI-empowered software assistants. In: 2019 ACM/IEEE 22nd International Conference on Model Driven Engineering Languages and Systems Companion (MODELS-C), pp. 648–652 (2019). https://doi.org/10.1109/MODELS-C.2019.00099

  44. Schisterman, E.F., Perkins, N.J., Liu, A., Bondell, H.: Optimal cut-point and its corresponding youden index to discriminate individuals using pooled blood samples. Epidemiology pp. 73–81 (2005). https://doi.org/10.1097/01.ede.0000147512.81966.ba

  45. Schlutter, A., Vogelsang, A.: Knowledge representation of requirements documents using natural language processing. In: K. Schmid, P. Spoletini, E.B. Charrada, Y. Chisik, F. Dalpiaz, A. Ferrari, P. Forbrig, X. Franch, M. Kirikova, N.H. Madhavji, C. Palomares, J. Ralyté, M. Sabetzadeh, P. Sawyer, D. van der Linden, A. Zamansky (eds.) Joint Proceedings of REFSQ-2018 Workshops, Doctoral Symposium, Live Studies Track, and Poster Track co-located with the 23rd International Conference on Requirements Engineering: Foundation for Software Quality (REFSQ 2018), Utrecht, The Netherlands, March 19, 2018, CEUR Workshop Proceedings, vol. 2075. CEUR-WS.org (2018). http://ceur-ws.org/Vol-2075/NLP4RE_paper9.pdf

  46. Schöttle, M., Thimmegowda, N., Alam, O., Kienzle, J., Mussbacher, G.: Feature modelling and traceability for concern-driven software development with touchCORE. In: Companion Proceedings of the 14th International Conference on Modularity, MODULARITY Companion 2015, p. 11-14. Association for Computing Machinery, New York, NY, USA (2015). https://doi.org/10.1145/2735386.2735922

  47. Sharma, R., Srivastava, P.K., Biswas, K.K.: From natural language requirements to UML class diagrams. In: 2015 IEEE Second International Workshop on Artificial Intelligence for Requirements Engineering (AIRE), pp. 1–8 (2015). https://doi.org/10.1109/AIRE.2015.7337625

  48. Stirewalt, R.E.K., Deng, M., Cheng, B.H.C.: UML formalization is a traceability problem. In: Proceedings of the 3rd International Workshop on Traceability in Emerging Forms of Software Engineering, TEFSE ’05, p. 31-36. Association for Computing Machinery, New York, NY, USA (2005). https://doi.org/10.1145/1107656.1107664

  49. Youden, W.J.: Index for rating diagnostic tests. Cancer 3(1), 32–35 (1950)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Rijul Saini.

Additional information

Communicated by L. Burgueño, J. Cabot, M. Wimmer & S. Zschaler.

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Saini, R., Mussbacher, G., Guo, J.L.C. et al. Automated, interactive, and traceable domain modelling empowered by artificial intelligence. Softw Syst Model 21, 1015–1045 (2022). https://doi.org/10.1007/s10270-021-00942-6

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-021-00942-6

Keywords

Navigation