{'fraction_non_alphanumeric': 0.01971326164874552, 'fraction_numerical': 0.005376344086021506, 'mean_word_length': 5.393129770992366, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
What is the Meaning of My Model? - Self-Review Support Environment based on Natural Language Translation from Learners' Software Structural Models

In general, college students enrolled in computer science courses are provided some software design classes and exercises. In a cross-reviewing learning/exercise environment, however, beginners often cannot provide useful feedback and viewpoints to others. One of the reasons for this is that beginners are not confident in their understanding of the software design models. These learners should be encouraged by strengthening their understanding of the models. In this research, we propose a self-review supporting environment that provides learners with feedback generated by translating their Unified Modeling Language (UML) class diagrams into natural language descriptions. This enables beginners to recognize discrepancies between what they would like to describe in their class diagrams and what they actually describe in their class diagrams by comparing them in natural language. We designed three types of templates to make learners aware of the discrepancies. Moreover, we performed an experiment to evaluate whether the feedback produced by translating a learner's model into natural language can support the learner to detect errors in the model themselves, and whether this feedback can support the learner to correct errors in the model themselves. The results of the experiment indicated that the subjects detected errors in their class diagrams with 89.2% accuracy and detected 47.3% of all errors in their diagrams. Furthermore, the subjects corrected the errors they correctly detected with 78.6% accuracy.