|
| 1 | +# Introduction |
| 2 | +This is a research project that aims to integrate automated UML assessment into Meitrex. The system will incorporate Hylimo to enable the creation and submission of UML assignments. Student solutions will then be automatically evaluated based on reference solutions provided by tutors. |
| 3 | + |
| 4 | +**What is HyLiMo?** Hylimo is a hybrid diagramming tool that enables users to create and edit diagrams, such as UML diagrams, by using a combination of textual code (a domain-specific language) and a graphical editor. Changes made to either the code or the visual representation are automatically synchronised, ensuring both views always remain consistent. |
| 5 | +This paper consists of: |
| 6 | +- *Requirements* |
| 7 | +- Architecture and Decisions |
| 8 | +- HyLiMo Integration |
| 9 | +- Automated UML Assessment |
| 10 | +- Evaluation |
| 11 | +- Functionalities (Developres + Lecturer Guide) |
| 12 | +- Future Work |
| 13 | + |
| 14 | +# Requirements |
| 15 | +Based on the objectives of this research project, the following section defines the high-level requirements for integrating automated UML assessment into Meitrex using HyLiMo. |
| 16 | + |
| 17 | + |
| 18 | +- Creating a UML assessment (Task and Solution) |
| 19 | +- Working on a UML assessment |
| 20 | +- Saving a UML assessment solution |
| 21 | +- Submitting a UML assessment |
| 22 | +- Redoing a UML assessment (if possible) |
| 23 | +- Evaluate a UML diagram |
| 24 | +- View Submitted UML Assessment |
| 25 | +- Lecturer Views and Manages Student Submissions |
| 26 | + |
| 27 | +For Use Cases checkout: https://docs.google.com/document/d/1zKl2Vpk7k4WUOQumee5xeIibMjcerCa-Pp7XphvoagM/edit?tab=t.0 |
| 28 | + |
| 29 | + |
| 30 | +# Architecture and Decisions |
| 31 | + |
| 32 | +## Systemarchitecture |
| 33 | +Show MEITREX + HyLiMo System Context --> Component Diagrams |
| 34 | + |
| 35 | + |
| 36 | + |
| 37 | +## Domain Model |
| 38 | +The diagram shows the domain model for the UML assignment. An UmlExercise is the task created by the tutor. For each exercise, a student has a UmlStudentSubmission, which contains all their attempts. Each submission can include multiple solutions (UmlStudentSolution). Every solution contains a UML diagram and can receive feedback with points and comments. |
| 39 | + |
| 40 | + |
| 41 | + |
| 42 | + |
| 43 | +## HyLiMo Integration |
| 44 | +One of the main tasks was the integration of HyLiMo into MEITREX. First, all required components had to be identified. The needed HyLiMo code was originally built using Vite. This code served as the basis for the migration into our Next.js (React) project. As part of this process, the application had to be adapted and converted from the Vite setup to the Next.js architecture. |
| 45 | +- TBD: HyLiMo Architektur Diagram |
| 46 | + |
| 47 | + |
| 48 | +## Automated UML Assessment |
| 49 | +The second major task was the automatic evaluation of UML diagrams based on the tutor’s solution. |
| 50 | + |
| 51 | +The sequence diagram illustrates, in a simplified manner, how a student’s UML solution is processed and evaluated across the system. First, the student creates and submits a UML diagram in the frontend, which then transforms the diagram code into a structured semantic model. This model is sent to the backend, where the UmlEvaluationService delegates the evaluation. The backend interacts with a large language model (LLM) in two steps: it first performs an analysis by comparing the student’s semantic model with the tutor’s reference model, and then conducts a grading step that generates points and textual feedback based on the analysis results. Finally, the computed feedback is returned through the backend to the frontend and presented to the student |
| 52 | + |
| 53 | + |
| 54 | + |
| 55 | + |
| 56 | +### Semantic Model (Sequence Diagram) ??? |
| 57 | +TBD |
| 58 | + |
| 59 | +### Prompt Engineering |
| 60 | +TBD |
| 61 | + |
| 62 | +# Evaluation |
| 63 | +## Goals |
| 64 | +The goal of this evaluation is to assess how accurately the automated UML assessment system can replicate human grading. In particular, we investigate whether the system can produce scores comparable to lecturer evaluations and how different large language models influence the assessment quality. |
| 65 | +## Setup |
| 66 | +For the evaluation, we used the UML diagrams that students had submitted in previous lecture assignments. These were originally graded by by human lecturers. |
| 67 | + |
| 68 | + |
| 69 | +To enable automated processing, the student models were converted into Hylimo code. We used tutor-provided submissions that achieved full marks as reference solutions, representing correct and complete UML models. |
| 70 | + |
| 71 | + |
| 72 | +## Methodology |
| 73 | +An evaluation script was developed to automatically assess the converted UML models against the reference tutor solutions. In addition, multiple large language models were tested to compare their performance in grading UML diagrams. Each submission was evaluated five times to account for variance in the grading results. |
| 74 | + |
| 75 | + |
| 76 | +## Metrics |
| 77 | +The evaluation is based on the following metrics: |
| 78 | +Agreement between automated scores and lecturer grades |
| 79 | +Performance differences between the tested LLMs |
| 80 | +... |
| 81 | +## Result |
| 82 | +TBD |
| 83 | + |
| 84 | + |
| 85 | +# Functionalities |
| 86 | +## User Guide for Lecturer |
| 87 | +### Introduction |
| 88 | +Tutors can create and provide model solutions for UML assignments within Hylimo. Student submissions are then automatically evaluated against the tutor solution. |
| 89 | +For more information about HyLiMo check out: https://hylimo.github.io/docs/docs.html |
| 90 | + |
| 91 | + |
| 92 | +#### Functionalities |
| 93 | +#### Create UML assignment |
| 94 | +UML assignments can be created in the same way as other assignments |
| 95 | + |
| 96 | + |
| 97 | + |
| 98 | +When selecting 'UML Assignment', a pop-up window opens where the assignment can be created. |
| 99 | + |
| 100 | + |
| 101 | + |
| 102 | +In the pop-up window, similar to other assignments, the metadata can be filled in. Below that, the UML-specific fields are available. |
| 103 | + |
| 104 | + |
| 105 | + |
| 106 | +The UML Assignment creator includes a rich text editor where the task description can be written. In addition, grading criteria can be defined to support the LLM-based evaluation of the diagram. |
| 107 | +In the settings, you can set the total number of points and the passing threshold, as well as choose whether the model solution should be displayed. The tutor can also provide a HyLiMo reference solution, which is then used as the basis for the LLM’s evaluation. |
| 108 | + |
| 109 | +#### Modify UML assignment |
| 110 | +#### UML Assignment Overview |
| 111 | + |
| 112 | + |
| 113 | +## User Guide for Student |
| 114 | +### Introduction |
| 115 | +For UML assignments, students complete tasks within Hylimo by creating their own UML models. Their submissions are automatically evaluated, allowing them to receive feedback. |
| 116 | +For more information about HyLiMo check out: https://hylimo.github.io/docs/docs.html |
| 117 | + |
| 118 | + |
| 119 | +#### Functionalities |
| 120 | +#### Work on UML Assessment |
0 commit comments