사용자 인터페이스를 위한 MVP기반의 XML 언어

An MVP-based XML Language for User Interfaces

  • 발행 : 2002.12.01

초록

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.

키워드

참고문헌

  1. MacIntyre F., Estep K.W., Sieburth J. M., 'Cost of user-friendly programming,' in Journal of Forth Application and Research, 6(2), pp.103-115, 1990
  2. Rosenberg, D., 'Cost-benefit analysis for corporate user interfaces standards: What price to pay for a consistent look and feel,' in Coordinating user interfaces for consistency, New York Academic Press, pp.21-34, 1989
  3. Payne S.J., Green T.R.G., 'Task-action Grammars: A model of the mental representation of task languages,' in Human Computer Interaction, Vol. 2, pp.93-133, 1986 https://doi.org/10.1207/s15327051hci0202_1
  4. Ben Shneiderrnan, Designing the User Interface Strategies for Effective Human-Computer Interaction, Addison Wesley, 1998
  5. XML, http://www.w3.org/xml/
  6. XML Schema, http://www.w3.org/XML/Schema/
  7. Simple Object Access Protocol, http://www.w3org/TR/SOAP/
  8. G. Badros, 'JavaML: A markup language for Java source code,' in Computer Networks, Vol. 33, pp. 159-177, June, 2000 https://doi.org/10.1016/S1389-1286(00)00037-2
  9. Mozilla.org, 'Introduction to a XUL (XML-based User Interface Language) Document,' available at http://www.mozilla.org/xpfe/xptoolkit/xulintro.html
  10. Abrams, M., Phanouriou, C., Batongbacal, A. L., Williams, S. M., Shuster, jE; 'UIML: An Appliance-Independent XML User Interface Language,' WWW8 Conf., May, 1999, available at http://www.harmonia.com/resources/papers/
  11. Sumanth Lingam, 'DIML for Voice Interfaces,' UIML Europe 2001 Conf., Mar., 2001, available at http://www.harmonia.com/resources/papers/
  12. Marc Abrams, 'Device-Independent Authoring with UIML,' W3C Workshop on Web Device Independent Authoring, Oct, 2000, available at http://www.harmonia.com/resources/papers/
  13. Andy Bower, Blair McGlashan, 'Twisting the triad,' tutorial paper for ESUG 2000, available at http://www.object-arts.com/Papers/
  14. Mozilla.org, http://mozilla.org/
  15. Krasner G., Pope S., 'A cookbook for using the MVC user interface paradigm in Smalltalk'. in JOOP, 1(3), pp.26-49, 1988
  16. JOOP v.1 no.3 A cookbook for using the MVC user interface paradigm in Smalltalk Krasner G.;Pope S.