Entry Date:
September 16, 2003

Natural Sketch Recognition in UML Class Diagrams


Sketching is a natural and integral part of software design. Software developers use sketching to aid in the brainstorming of ideas, visualizing programming organization and understanding of requirements. Unfortunately when it comes to coding the system, the drawings are left behind. We see natural sketch recognition as a way to bridge that gap.

We created a natural sketch recognition environment for UML (Unified Modeling Language). The system differs from graffiti-based approaches to this task, in that it recognizes objects by how they look, not by how they were drawn. Our goal is a system where the user can sketch UML diagrams on a tablet or whiteboard in the same way they would on paper, but the diagrams would then be recognized by the computer.

We have selected UML diagrams because they are a de facto standard for depicting software applications. Within UML we focused on class diagrams, first because of their central role in describing program structure, and second because many of the symbols used in class diagrams are quite similar, and hence they offer an interesting challenge for sketch recognition.