AUTOMATED UML MODEL COMPARISON FOR QUALITY ASSURANCE IN SOFTWARE ENGINEERING EDUCATION

Florea Stefan, Alexandra Suzana Cernian, Anca Daniela Ioniţă · eLearning and Software for Education · 2013

Quality assurance in educational institutions should include mechanisms for detecting any student's attempt to cheat at his or her written assessments. Due to an increasing number of incidents, it is necessary to define holistic approaches at institutional levels, where management, culture and infrastructure should be taken into account. For this purpose, universities generally use tools for detecting plagiarism, based on comparing text and grammatical style, as well as searching for similar materials available on the Internet. Apart from general systems for detecting plagiarism, each discipline may require specific electronic aids for identifying similarities between assessment results. The paper considers the case of Software Engineering and, more specifically, Object-Oriented Modeling. It proposes solutions for automatically comparison of models conforming to the Unified Modeling Language, based on the following requirements: - Define methods for comparing all types of diagrams; - Develop a system that stores students' models; - Create tools that check a new project upon all the previous submissions, in order to detect similarities; - Eliminate false positive results; - Introduce the facility to detect synonyms at the level of modeling element names, using a Romanian language dictionary; - Define metrics for the similarity degree; - Validate the methods and tools in the classroom. The UML diagrams are supposed to be represented with the open source platform StarUML; then, they are exported to XML format for being interpreted and analyzed in comparison with the models of the central repository; one also checks for synonyms in naming modeling elements like classes, attributes, operations, actors, activities, states, components, nodes etc. The similarity score is computed with a dedicated algorithm, which takes into account weighted UML elements, UML relations, and semantics synonymy aspects.

Read the paper · More papers on PaperTik