초록
XML을 이용한 사용자 인터페이스 개발은 플랫폼과 프로그래밍 언어에 독립적이며, 사용자가 배우기 쉽고, 사용하기 쉬운 장점을 가지고 있다. 그러나, 현재까지 개발된 XML 기반 사용자 인터페이스 언어들은 정형화된 모델을 사용하지 않고 있으며, 사용자 인터페이스와 내부 로직의 결합 및 이벤트 처리 부분이 미약한 단점을 가지고 있다. 이러한 문제점을 해결하기 위해서 본 논문에서는 MVP(Model-View-Presenter) 모델을 확장한 EMVP (Extended MVP)를 제시하고, EMVP를 기반으로 사용자 인터페이스를 개발할 수 있는 새로운 XML 응용프로그램인 XUIML을 소개한다. XUIML은 EMVP를 기반으로 인터페이스 형태, 이벤트 처리, 데이타 흐름, 인터페이스와 내부 로직의 결합을 기술할 수 있는 방법을 제공한다 XUIML 시스템은 텍스트 편집기와 그래픽 편집기 및 XUIML을 자바와 C# 코드로 변환할 수 있는 변환기를 제공한다. 한편, XUIML의 그래픽 편집기는 직접 조작 방식을 지원하기 때문에 GUI 디자인 도구와 같은 높은 생산성을 얻을 수 있다.
It is advantageous to use XML in developing user interfaces, since XML is independent from platforms and languages and it is easy to learn and use. The existing XML-based languages do not adopt formal model, and they are developed in ad hoc manner. Moreover, they provide limited facilities to handle user events, and combine user interface components with internal logics. In this paper, we introduce an extended MVP (EMVP) model, which is extended from MVP (Model-View-Presenter), and XUIML, which is a new XML application based on the EMVP to support user interface. XUIML provides useful methods to build user interface, including methods to describe actions on user events, data flows between objects, and internal logics. The XUIML system provides two style editors - text editor and graphic editor. It also provides two code generators. One generates Java source, and the other generate C# code from XUIML document. The XUIML graphic editor allows users to manipulate XML elements directly, and we can gain high productivity with the graphic editor.