DOI QR코드

DOI QR Code

클래스 다이어그램 이미지의 자동 분류에 관한 연구

A Study on Automatic Classification of Class Diagram Images

  • 김동관 (목포해양대학교 해양컴퓨터공학과)
  • Kim, Dong Kwan (Department of Computer Engineering, Mokpo National Maritime University)
  • 투고 : 2022.02.11
  • 심사 : 2022.03.20
  • 발행 : 2022.03.28

초록

UML(Unified Modeling Language) 클래스 다이어그램은 시스템의 정적인 측면을 표현하며 분석 및 설계부터 문서화, 테스팅까지 사용된다. 클래스 다이어그램을 이용한 모델링이 소프트웨어 개발에 있어 필수적이지만, 경험이 많지 않은 모델러에게 쉽지 않은 작업이다. 도메인 카테고리별로 분류된 클래스 다이어그램 데이터 세트가 제공된다면, 모델링 작업의 생산성을 높일 수 있을 것이다. 본 논문은 클래스 다이어그램 이미지 데이터를 구축하기 위한 자동 분류 기술을 제공한다. 추가 정보 없이 단지 UML 클래스 다이어그램 이미지를 식별하고 도메인 카테고리에 따라 자동 분류한다. 먼저, 웹상에서 수집된 이미지들이 UML 클래스 다이어그램 이미지인지 여부를 판단한다. 그리고, 식별된 클래스 다이어그램 이미지에서 클래스 이름을 추출하여 도메인 카테고리에 따라 분류한다. 제안된 분류 모델은 정밀도, 재현율, F1점수, 정확도에서 각각 100.00%, 95.59%, 97.74%, 97.77%를 달성했으며, 카테고리별 분류에 대한 정확도는 81.1%와 95.2% 사이에 분포한다. 해당 실험에 사용된 클래스 다이어그램 이미지 개수가 충분히 크지 않지만, 도출된 실험 결과는 제안된 자동 분류 방식이 고려할 만한 가치가 있음을 나타낸다.

UML class diagrams are used to visualize the static aspects of a software system and are involved from analysis and design to documentation and testing. Software modeling using class diagrams is essential for software development, but it may be not an easy activity for inexperienced modelers. The modeling productivity could be improved with a dataset of class diagrams which are classified by domain categories. To this end, this paper provides a classification method for a dataset of class diagram images. First, real class diagrams are selected from collected images. Then, class names are extracted from the real class diagram images and the class diagram images are classified according to domain categories. The proposed classification model has achieved 100.00%, 95.59%, 97.74%, and 97.77% in precision, recall, F1-score, and accuracy, respectively. The accuracy scores for the domain categorization are distributed between 81.1% and 95.2%. Although the number of class diagram images in the experiment is not large enough, the experimental results indicate that it is worth considering the proposed approach to class diagram image classification.

키워드

과제정보

This research was supported by Basic Science Research Program through the National Research Foundation of Korea (NRF) funded by the Ministry of Education (2021R1I1A3056172).

참고문헌

  1. Unified Modeling Language (UML). (2022) https://www.uml.org/
  2. B. Gosala, S. R. Chowdhuri, J. Singh, M. Gupta. & A. Mishra. (2021). Automatic Classification of UML Class Diagrams Using Deep Learning Technique: Convolutional Neural Network. Applied Sciences 11(9). DOI : 10.3390/app11094267
  3. S. Shcherban, P. Liang, Z. Li & C. Yang. (2021). Multiclass Classification of Four Types of UML Diagrams from Images Using Deep Learning. In Proceedings of the 33rd International Conference on Software Engineering and Knowledge Engineering (SEKE 2021). DOI : 10.18293/SEKE2021-185
  4. V. Moreno, G. Genova, M. Alejandres, & A. Fraga. (2020). Automatic Classification of Web Images as UML Static Diagrams Using Machine Learning Techniques. Applied Sciences, 10(7). DOI : 10.3390/app10072406
  5. J. K. Nurminen1, K. Rainio, J. Numminen, T. Syrjanen, N. Paganus & K. Honkoila. (2019). Object Detection in Design Diagrams with Machine learning. Progress in Computer Recognition Systems CORES 2019. Advances in Intelligent Systems and Computing. DOI : 10.1007/978-3-030-19738-4_4
  6. S. W. Munialo, G. M. Muketha & K. K. Omieno. (2020). Automated Feature Extraction from UML Images to Measure SOA Size. International Journal of Recent Technology and Engineering (IJRTE). 9(2). DOI : 10.35940/ijrte.B4131.079220
  7. ResNet50. (2022). https://pytorch.org/hub/pytorch_vision_resnet/
  8. K. Mangaroliya & H. Patel. (2020). Classification of Reverse-Engineered Class Diagram and Forward-Engineered Class Diagram using Machine Learning. arXiv:2011.07313.
  9. G. Robles, T. Ho-Quang, R. Hebig, M. R. V. Chaudron & A. Fernandez. (2017). An extensive dataset of UML models in GitHub. In Proceedings of the 14th International Conference on Mining Software Repositories (MSR), IEEE. DOI : 10.1109/MSR.2017.48
  10. R. Hebig, T. H. Quang, M. R.V. Chaudron, G. Robles & M. A. Fernandez. (2016). The Quest for Open Source Projects that use UML Mining GitHub. In Proceedings of the ACM/IEEE 19th International Conference on Model Driven Engineering Languages and Systems. DOI : 10.1145/2976767.2976778
  11. YOLOv5. (2022). https://pytorch.org/hub/ultralytics_yolov5/
  12. UML Specification 2.5.1. (2022). https://www.omg.org/spec/UML/
  13. EasyOCR. (2022). https://github.com/JaidedAI/EasyOCR
  14. Gensim. (2022). https://radimrehurek.com/gensim/index.html