CAS2UML: A Sketch to Code Dataset
Listen to the summary
Uses a voice available on your device
Audio options
On this page 4 sections
Related concepts 1 concepts
Key Takeaways
- Addresses the lack of large-scale benchmarks for converting hand-drawn UML sketches into executable code.
- Provides 557 verified sketch-to-PlantUML pairs covering both class and activity diagrams.
- Ensures data quality through manual inspection, syntax validation, and visual rendering checks.
- Uses a multi-model LLM workflow to generate high-fidelity reference PlantUML specifications.
Summary & Methodology Analysis
The researchers addressed a gap in existing datasets by building the CAS2UML benchmark. The pipeline begins by selecting reference diagrams from the Piucco and Lindholmen datasets. They employed an LLM-assisted workflow using ChatGPT, Claude Sonnet, and Gemini Flash to generate initial PlantUML specifications for these references. To ensure accuracy, the team manually inspected the code, verified structural integrity by rendering diagrams via PlantText, and validated the syntax using the PlantUML JAR with a syntax flag. The resulting validated code was then paired with hand-drawn sketches collected from various media, including tablets and paper. The dataset was organized and reviewed using a custom Gradio-based tool to confirm the mapping between the sketches and the code.
Interactive System Flowchart
Cross-Examination & FAQs
A deeper dive clarifying mechanics, constraints, and baseline evaluations.
Q1. What is the primary contribution of this paper?
The authors developed CAS2UML, a dataset providing 557 hand-drawn UML sketches paired with validated, machine-readable PlantUML code.
Q2. Why is this dataset useful for developers?
It provides a large-scale benchmark to evaluate automated approaches that convert hand-drawn diagrams into digital UML models.
Q3. What types of diagrams does the dataset cover?
The dataset includes both class diagrams and activity diagrams.
Q4. Which specific tools were used to build the reference models?
The authors used ChatGPT, Claude Sonnet, and Gemini Flash as part of an LLM-assisted workflow to generate the initial PlantUML code.
Q5. How did the researchers verify the quality of the generated code?
They manually inspected the code, rendered diagrams using PlantText to verify structural matches against references, and performed syntax validation using the PlantUML JAR.
Q6. Is the dataset compatible with XMI export?
Only the class diagrams are serialized into XMI format; the paper notes that PlantUML does not support XMI export for activity diagrams.
Q7. What were the source datasets for the reference diagrams?
Class diagram references were taken from the Piucco 2024 dataset, and activity diagram references were taken from the Lindholmen dataset.
Q8. Did the authors use StarUML in their methodology?
The paper lists StarUML in the models or datasets section, but does not provide specific details on its role in the methodology.
Q9. What is the total size of the CAS2UML dataset?
The dataset contains 557 total hand-drawn UML diagram pairs.