Using machine learning to evaluate the layout quality of UML class diagrams

Publicerad

Typ

Examensarbete för masterexamen

Program

Modellbyggare

Tidskriftstitel

ISSN

Volymtitel

Utgivare

Sammanfattning

The Unified Modeling Language (UML) is the standard way of visualizing the design of software systems using diagrams. It is important that the layout of a UML diagram is of high quality so that it is easy for a human to comprehend. Evaluation of layout quality is hard and is often done through time and resource consuming user studies. This work uses a big data set of UML class diagrams to utilize the power of machine learning for creating an automatic evaluator of layout quality, and for finding the particular features of diagrams that have the highest impact on the layout quality. Diagram features, inspired by layout aesthetics commonly mentioned in literature, that may affect layout quality were extracted using image processing. To establish a ground truth for the layout quality of the diagram data set, all diagrams were manually labeled with their perceived layout quality. The features and labels were provided to different machine learning algorithms to train on gaining information from. The best performing machine learning approach was using a random forest, which gave a correlation of 0.66 and a relative absolute error of 72.47%. This indicates that it was able to successfully gain important information from the features about how to evaluate layout quality. The two most impactful features for evaluating layout quality were found to be the length of the longest line and orthogonal placement of rectangles. The layout quality evaluator that was created can be useful for efficiently comparing different kinds of diagram layouts, for example layouts created by different algorithms to see which algorithm performs better. The findings regarding the most important layout aesthetics can be useful for indicating what aesthetics to prioritize when constructing layouts and layout algorithms.

Beskrivning

Ämne/nyckelord

UML, machine learning, image processing, layout quality

Citation

Arkitekt (konstruktör)

Geografisk plats

Byggnad (typ)

Byggår

Modelltyp

Skala

Teknik / material

Index

item.page.endorsement

item.page.review

item.page.supplemented

item.page.referenced