June 15, 2014
June 15, 2014
June 18, 2014
Software Engineering Constituent Committee
24.1157.1 - 24.1157.11
Teaching Basic Class Diagram Notation with UMLGrader UMLGrader is a tool designed to help students learn the basics of drawingUniﬁed Modeling Language (UML) class diagrams. In our experience, studentsstruggle with using the appropriate notation for generalization and association aswell as with assigning association roles and multiplicities. The classic solution isto assign problems and grade the resulting diagrams, but grading such diagrams islabor intensive and so students may not get feedback in a timely manner. UML-Grader attempts to automate the grading process so that students can receive moretimely feedback on how to use the notation. To set up an assignment with UMLGrader, the instructor writes up a sys-tem description using relatively tight constraints such as “a library contains manybooks, where books can be either novels or reference works.” The instructor alsogenerates a target class diagram using expected class and role names reﬂecting theproblem description. Alternative names for certain entities may be provided to al-low for slight variations. The student then uses a tool such as Rational Rose orRhapsody to create a domain model and submits it to UMLGrader. UMLGraderthen compares the student’s diagram against the target, giving the student feed-back on missing or extra classes, attributes, methods, and relationships in a formthat points the student at how to ﬁx the model without speciﬁcally telling the stu-dent what needs to be changed. The student then corrects the errors, iterating untilthere are no signiﬁcant differences between the submitted and target diagrams. The authors have used UMLGrader for several semesters to teach UML classdiagram notation to software engineering and computer science students at thesophomore and junior levels. This paper describes UMLGrader in more detailand presents experimental results from using the tool in two classes. After re-ceiving instruction on UML class notation, students were given a quiz in whichthey modeled a simple domain. The students were then exposed to UMLGrader,and a similar modeling problem was placed on an exam. We document signiﬁcantimprovements in performance, suggesting that UMLGrader does help studentslearn UML class notation. We then discuss possible additional studies which tocompare this method of teaching UML notation against alternatives.
Hasker, R. W., & Shi, Y. (2014, June), Teaching Basic Class Diagram Notation with UMLGrader Paper presented at 2014 ASEE Annual Conference & Exposition, Indianapolis, Indiana. 10.18260/1-2--23090
ASEE holds the copyright on this document. It may be read by the public free of charge. Authors may archive their work on personal websites or in institutional repositories with the following citation: © 2014 American Society for Engineering Education. Other scholars may excerpt or quote from these materials with the same citation. When excerpting or quoting from Conference Proceedings, authors should, in addition to noting the ASEE copyright, list all the original authors and their institutions and name the host city of the conference. - Last updated April 1, 2015