DOI QR코드

DOI QR Code

REST 서비스 패턴을 이용한 매시업 클라이언트 뷰 이동 코드 생성

Generating Mashup Client View Navigation Codes using REST Style Service Patterns

  • 이은정 (경기대학교 전자계산학과)
  • 투고 : 2010.04.01
  • 심사 : 2010.08.03
  • 발행 : 2010.10.31

초록

웹 2.0의 확산과 함께 기존의 페이지 간 이동 대신 하나의 페이지에서 여러 개의 웹서비스를 인터페이스하는 웹페이지가 많이 사용되고 있다. 이러한 클라이언트 페이지를 매시업 클라이언트라고 부르는데, 이들은 복잡하고 다양한 기능을 지원하는 제어부를 포함한다. 본 논문에서는 이동 제어의 모델 기반의 코드 생성 방법을 제시한다. 먼저 REST 서비스 패턴을 클라이언트 페이지의 뷰와 뷰 이동에 적용하는 방법을 제안하고, 각 뷰로부터 서비스 메소드 호출이나 뷰 이동이 가능한 타입 조건을 제시한다. 또한 제안된 방법을 적용하여 XForms 페이지의 코드를 자동생성하는 프로토타입 시스템을 개발하였다. 이동 설계 방법을 적용한 매시업 클라이언트 페이지 생성 시스템을 구현하였다. 개발된 자동 생성 시스템은 개발자의 관여 없이 이동 제어 기능을 포함한 클라이언트 페이지의 코드를 생성하며, 체계적인 모델과 이동 패턴에 기반하여 생성된 결과 코드가 이해하기 쉽고 간단하다. 또한 사용자가 필요한 컨트롤만을 포함하여 서비스의 개수가 많아지는 경우에도 적용할 수 있다.

As web 2.0 becomes one of the important architecture styles, more web applications adopt single page structure instead of multiple web pages and navigations between pages. A single page web application client, called a mashup client in this paper, interfaces more than one services and allows users to navigate in the page. A mashup client page includes complicated functions and has to handle various styles of services and user requirements, and therefore is usually developed manually. In this paper, we propose a model driven code generation approach for in-page navigations. We propose a page model and view navigation design approach, applying REST service architecture patterns. Then, we consider type conditions for each view to have service calls or navigation controls. Also, we developed an XForms page code generation system to demonstrate the efficiency of the proposed method. The developed system generates mashup client pages including navigation controls between services and views. This system can generate ready to use codes from service specifications, so this can help to reduce the development overhead. Moreover, our approach is based on formal model and navigation patterns so the generated result code is simple and easy to understand, and includes only the necessary controls. Therefore, the proposed approach can be more effective for the case of a large number of services.

키워드

참고문헌

  1. ECMAScript Language Specification, http://www.ecmainternational.org/publications/files/ECMA-ST/ECMA-262.pdf.
  2. A.Mesbah, A.Duersen, “An architectural style for Ajax,” WICSA2007, 2007. https://doi.org/10.1109/WICSA.2007.7
  3. A.Mesbah, “Analysis and testing of Ajax-based single-page web applications,” PhD thesis, TUDelft, 2009.
  4. Pinch, “WCF 4.0: Building WCF services with WF in Microsoft.net 4.0,” PDC 2008, 2008.
  5. IBM, “WebSphere Application Server,” http://www-01.ibm.com/software/webservers/appserv/wasproductline/
  6. Vosloo, I., Kourie, E. “Server-centric web frameworks: an overview,” ACM computing surveys, 40(2), 4:1-4:33, 2008. https://doi.org/10.1145/1348246.1348247
  7. R.T. Fielding. “Architectural Styles and the Design of Network-Based Software Architectures,” Doctoral dissertation, University of California Irvine, 2000.
  8. L.Richardson, S.Ruby, RESTful Web Services, O’Reilly Media, Inc., 2007.
  9. Erik Wilde, “What is REST?” Tutorial at ICWE 2009.
  10. Web application description language(WADL), http://www.w3.org/Submission/wadl.
  11. World-Wide Web Consortium standards including XForms, XML Schema, XPath and Cascading Style Sheets. http://www.w3.org.
  12. Apache group, “Axis web services,” http://ws.apache.org/axis/.
  13. Microsoft office online, (2007). InfoPath: 2007, http://office.microsoft.com/infopath.
  14. 이은정, “서비스 조합을 위한 XForms 기반의 모바일 사용자 인터페이스 개발”, 정보처리학회논문지D, 15-Drnjs 6호, pp.879-888, 2008.
  15. Kisub Song, Kyong-Ho Lee, “An Automated Generation of XForms Interfaces for Web Servic,” icws, pp.856-863, IEEE International Conference on Web Services (ICWS 2007), 2007 https://doi.org/10.1109/ICWS.2007.35
  16. Bozzon, A., Comai,,S., Fraternali,P., Toffetti Carughi, G., “Conceptual Modeling and Code Generation for Rich Internet Applications,” In ICWE 2006, Menlo Park, California, USA, 2006.
  17. Winckler, M., Palanque, P. “StateWebCharts : A formal description technique dedicated to navigation modelling of web applications,” DSVIS'2003, Funchal, 2003.
  18. M. Guell M., et al. “Modeling interactions and navigation in web applications,” Lecture notes in computer science, 1921, 115-127, 1996. https://doi.org/10.1007/3-540-45394-6_11
  19. May H. et al. “View integration and cooperation in databases, data warehouses and web information systems,” Lecture notes in computer science 3730, 213-49, 2005. https://doi.org/10.1007/11603412_7
  20. Garcia, J. et al., “Model-driven approach to design user interfaces for workflow information systems,” J. of Universal Computer Science, 14(19), 3160-3173, 2005. https://doi.org/10.3217/jucs-014-19-3160
  21. M.Laikorpi, P.Selonen, T.Systa, “Towards a model-driven process for designing restful web services,” ICWS '2009, pp.173-190, 2009. https://doi.org/10.1109/ICWS.2009.63
  22. S. Auer, et al., “Dbpedia: A nucleus for a web of open data,” ISWS 2008, LNCS, Vol.4825, pp.722-735. Springer Berlin, 2008.
  23. J. Yu, et al, “Understanding mashup development,” IEEE Internet computing, vol.12, issue 5, pp.44-52, 2008. https://doi.org/10.1109/MIC.2008.114
  24. R. Ennals, M.Garofalakis, “MashMaker: mashups for the masses,” Proc. SIGMOD'07, pp.1116-1118, ACM Press, Beijing, China, 2007. https://doi.org/10.1145/1247480.1247626
  25. S.Yu, J.Woodard: Innovation in the programmable web: characterizing the mashup ecosystem. ICSOC 2008, LNCS 5472, pp.136-147, 2009. https://doi.org/10.1007/978-3-642-01247-1_13
  26. J..Magazinius, et. al, “A lattice-based approach to mashup security,” ASIACCS'10, April 13-16, 2010, Beijing, China., 2010. https://doi.org/10.1145/1755688.1755691
  27. M.Mahemoff, Ajax design patterns, published by O'Reilly media Inc., 2006.
  28. L.Li, W.Chou, “Micro-Resource: A microformat framework for dual restful web services,” WEBIST 2010.
  29. E.Benson, et.al, “Sync Kit: A persistent client-side database caching toolkit for data intensive websites,” WWW 2010, North Carolina, USA, 2010. https://doi.org/10.1145/1772690.1772704
  30. A.Jhingran, “Enterprise information mashups: integrating information, simply,” VLDB 2006.

피인용 문헌

  1. Development of Efficient User Navigation Interface for Client-side Mashups vol.18D, pp.3, 2011, https://doi.org/10.3745/KIPSTD.2011.18D.3.205