DOI QR코드

DOI QR Code

Tree Component Model : Component Composition with Hybrid Message Passing

트리 컴포넌트 모델 : 하이브리드 메시지 전달을 사용한 컴포넌트 조합

  • 허제민 (경원대학교 전자계산학과) ;
  • 김지홍 (경원대학교 IT대학 소프트웨어학부)
  • Published : 2008.10.31

Abstract

Recently, the component model based on the Exogenous Connector has been proposed in which controls are separated from computation by managing the beginning and result of method calls in the connector. Although it could be loosely coupled between components, it has a problem that is a potential preponderance of element objects of the system by increasing the number of connectors and connection levels. In this paper we propose the Tree Component Model with the Hybrid Message Passing that combines direct and indirect message passing. In our model, components are wrapped by interfaces and controls are separated from computation by only using their interface references. There is a unique feature that the composition structure of components becomes the tree always. As a result of demonstration and comparison, it is found that the Tree Component Model is applicable practically and decreases objects to mediate message passing and build the system.

최근 컴포넌트 간의 약 결합을 지원하는 Exogenous 커넥터 기반의 컴포넌트 모델이 제안되었다. 이 모델은 커넥터에서 메소드 호출의 시작과 결과를 관리하여 제어와 계산을 분리한다. 하지만 컴포넌트 사이의 연결 계층과 커넥터 수가 증가 할수록 시스템을 구성하는 객체의 수가 크게 증가하는 문제점을 가지고 있다. 본 논문에서는, 직접 메시지 전달과 간접 메시지 전달이 혼합된 하이브리드 메시지 전달을 사용한 트리 컴포넌트 모델을 제안한다. 이는 컴포넌트를 인터페이스들로 랩핑하여 모든 제어가 계산과 분리되어 인터페이스 레퍼런스를 통해서만 이루어진다. 이렇게 연결된 컴포넌트 사이의 조합은 항상 트리 구조를 이루는 특징이 있다. 아울러 구현 예와 비교 평가를 통해 트리 컴포넌트 모델이 실용적으로 적용 가능하고 시스템의 구성과 메시지 전달을 중재하는 객체 수의 감소를 확인할 수 있었다.

Keywords

References

  1. C. Szyperski, D. Gruntz, and S. Murer, 'Component Software: Beyond Object-Oriented Programming,' Second Edtion, ADDISON-WESLEY, 2002
  2. X. Xiaoqin, X. Peng, L. Juanzi, and W. Kehong, “A Component Model for Designing Dynamic GUI,” Parallel and Distributed Computing, Applications and Technologies, PDCAT'2003. Proceedings of the Fourth International Conference, pp. 136-140, 2003
  3. K.-K. Lau and Z. Wang, “Software Component Models,” IEEE TRANSACTIONS ON SOFTWARE ENGINEERING, Vol.33, No.10, pp.709-724, 2007 https://doi.org/10.1109/TSE.2007.70726
  4. K.-K. Lau and Z. Wang, “A Taxonomy of Software Component Models,” Proc. 31st Euromicro Conf. Software Eng. And Advanced Applications (SEAA '05), pp.88-95, 2005 https://doi.org/10.1109/EUROMICRO.2005.8
  5. K.-K. Lau, P. Velasco Elizondo, and Z. Wang, “Exogenous Connectors for Software Components,” In: Heineman, G.T., Crnkovic, I., Schmidt, H.W., Stafford, J.A., Szyperski, C.A., Wallnau, K. (eds.) CBSE 2005. LNCS, Vol.3489, pp.90-106, Springer, Heidelberg, 2005
  6. K.-K. Lau, F. M. Taweel, V. Ukis, P. Velasco, and Z. Wang, “A Component Model for Separation of Control Flow from Computation in Component-Based Systems,” Electronic Notes in Theoretical Computer Science 163 (2006), 57-69, ScienceDirect, 2006 https://doi.org/10.1016/j.entcs.2006.07.003
  7. K.-K. Lau, and F. M. Taweel, “Towards Encapsulation Data in Component-Based Software Systems,” CBSE 2006, LNCS 4063, pp. 376-384, Springer, Heidelberg, 2006 https://doi.org/10.1007/11783565_30
  8. K.-K. Lau, L. Ling, and P. Velasco Elizondo, “Towards Composing Software Components in Both Design and Deployment Phases,” CBSE 2007, LNCS 4608, pp.274-282, Springer, Heidelberg, 2007 https://doi.org/10.1007/978-3-540-73551-9_19
  9. E. Gossett, 'Discrete Mathematics with Proof,' Prentice Hall, 2003
  10. B. Long and P. Strooper, “A Classification of Concurrency Failures in Java Components,” Parallel and Distributed Processing Symposium, Proceedings. International, 8 pp, 2003 https://doi.org/10.1109/IPDPS.2003.1213512
  11. R. Englander. 'Developing Java Beans,' O'Reilly & Associates, 1997
  12. 임윤선, 김명, 정승남, 정안모, “컴포넌트 재사용을 지원하는 컴포넌트 모델 및 프레임워크,” 한국정보과학회, 2007
  13. H. Washizaki, and Y. Fukazawa, “A Model-View Separation Structure for GUI Application Components,” Information Technology. Coding and Computing, ITCC 2005. International Conference Volume 2, pp.359-364, Vol.2, 2005
  14. E. Gamma, R. Helm, R. Johnson, and J. Vlissides, 'Design Patterns,' Addison-Wesley, 1995
  15. E. Freeman, K. Sierra, B. Bates, 'Head First Design Patterns,' O'REILLY, 2004
  16. The Swing Tutorial, 'http://java.sun.com/docs/books/tutorial/uiswing/,' Sun Microsystems, 2007
  17. K.-K. Lau, V. Ukis, “A Study of Execution Environments for Software Components,” CBSE 2007, LNCS 4608, pp. 107-123, Springer, Heidelberg, 2007 https://doi.org/10.1007/978-3-540-73551-9_8