DOI QR코드

DOI QR Code

A Study on Conversion Between UML and Source Code Based on RTT(Round-Trip Translator)

RTT(Round-Trip Translator) 기반의 UML과 소스코드 변환에 대한 연구

  • 김지용 (숭실대학교 융합소프트웨어학과) ;
  • 조한주 (숭실대학교 소프트웨어학부) ;
  • 김영종 (숭실대학교 소프트웨어학부)
  • Received : 2019.01.14
  • Accepted : 2019.07.13
  • Published : 2019.09.30

Abstract

s programming education becomes more important in recent years, it is necessary to learn how the source code written by students reflects Object-Oriented(OO) concepts. We present a tool called the Round-Trip Translator(RTT) that transforms the Unified Modeling Language(UML) class diagram and Java source code to provide a web-based environment that provides real-time synchronization of UML and source code. RTT was created by improving existing RTE and is a tool for students who are learning OO concepts to understand how their UML or source code reflects the concepts that user intended. This study compares the efficiency and user- friendliness of RTT with the existing Round-Trip Engineering-based tools. The results show that students have improved understanding of OO concepts through UML and source code translation by using the RTT. We also found out that students were satisfied with the use of the RTT, which provides more efficient and convenient user interface than the existing tools.

최근 프로그래밍 교육이 중요해짐에 따라, 객체지향 프로그래밍에 있어 작성한 소스코드가 어떻게 객체지향 개념을 반영하고 있는지를 분석하는 것은 중요하다. 본 논문에서는 UML과 소스코드의 실시간 동기화를 제공하는 웹 기반 환경에서 객체지향 개념을 분석 및 학습하기 위해 Unified Modeling Language(UML) 클래스 다이어그램과 자바 소스코드를 상호 변환하는 Round-Trip Translator(RTT)를 제안한다. RTT는 기존 Round-Trip Engineering(RTE)기반 도구를 개선시켜 구현 하였으며 작성된 UML 혹은 소스코드가 어떻게 객체지향 개념을 반영하는 지에 대한 이해도를 높이기 위한 도구이다. 본 논문은 기존 RTE 기반 도구와 RTT의 효율성과 사용자의 편의성을 비교한 결과 UML과 소스코드 상호 변환을 통해 객체지향에 대한 이해도가 향상되었음을 보여준다. 우리는 또한 학생들이 기존 도구보다 더 효율적이고 편리한 사용자 인터페이스를 제공하는 RTT 사용에 만족한다는 사실을 알아냈다.

Keywords

References

  1. Hettel, Thomas, Michael Lawley, and Kerry Raymond, "Model synchronisation: Definitions for round-trip engineering," International Conference on Theory and Practice of Model Transformations, Springer, Berlin, Heidelberg, 2008.
  2. M. Sivasakthi, and R. Rajendran, "Learning difficulties of 'object-oriented programming paradigm using Java': students' perspective," Indian Journal of Science and Technology, Vol.4, No.8, pp.983-985, 2011. https://doi.org/10.17485/ijst/2011/v4i8.9
  3. Myers, Brad A., "User interface software tools," ACM Transactions on Computer-Human Interaction (TOCHI), Vol.2, No.1, pp.64-103, 1995 https://doi.org/10.1145/200968.200971
  4. Mackay, Daniel, James Noble, and Robert Biddle, "A lightweight web-based case tool for UML class diagrams," Proceedings of the Fourth Australasian User Interface Conference on User Interfaces 2003-Volume 18. Australian Computer Society, Inc., 2003.
  5. Galitz, Wilbert O., "The essential guide to user interface design: an introduction to GUI design principles and techniques," John Wiley & Sons, 2007.
  6. Everett N. Mckay, "UI is Communication : How to Design intuitive, user-centered interfaces by focusing on effective communication," San Francisco, CA: Morgan Kaufmann Publishers, 21-22.