A UML Profile for Specifying Component Design as MDA/PIM

컴포넌트 설계를 MDA/PIM으로 명세하기 위한 UML프로파일

  • Published : 2005.03.01

Abstract

Component Based Development (CBD) is appealing as a technology to improve the productivity of software development through component reuse. Model Driven Architecture (MDA) is a new development paradigm which automatically generates application by transforming design models incrementally. Since both reusability of CBD and model transformation of MDA increase software productivity. integration of two technologies is desirable. To enable this technology integration, we need to devise a UML profile for specifying component design as a PIM. In this paper, we first define a meta-model for components, and propose a UML profile which is used to specify elements of component design as PIM. Since the proposed profile is based on Meta Object Facility (MOF) from which is MDA is derived, it is consistent and compatible with existing MDA methods and tools.

컴포넌트 기반 개발(CBD) 기술은 컴포넌트 재사용을 통해 S/W 개발 생산성을 높이는 기술로 각광을 받고 있다. 모델기반 아키텍처 (Model Driven Architecture, MDA)는 설계 모델을 점진적으로 변환하여 S/W를 자동으로 생성하는 새로운 개발 방식이다[1]. CBD기술은 재사용을 통하여, MDA 기술은 모델 변환을 통하여 S/W 개발 생산성을 높이므로, 이 두 기술의 접목은 SW 재사용과 자동 생산의 두 가지 장점을 모두 이룰 수 있다. 이를 위해서는 설계된 컴포넌트를 MDA의 플랫폼 독립적 모델 (PIM)로 명세하여야 하며, UML 확장 장치 즉 CBD용 UML 프로파일이 요구된다. 본 논문에서는 명세할 컴포넌트의 구성요소를 메타 모델로 정의하고, 각 구성요소를 PIM으로 명세하기 위한 컴포넌트용 UML 프로파일을 제안한다. 이 프로파일은 컴포넌트 명세를 위한 스테레오 타입, 구문(Syntactic), 의미 (Semantic), 규약(Contract) 및 표기법으로 이구어진다. 제안된 프로파일은 MDA 표준 규약의 기반인 Meta Object Facility (MOF)를 확장 적용한 것이므로 여러 MDA 기법과 도구들과 호환을 제공한다. 제안된 프로파일을 적용하면 CBD와 MDA의 고유 기능과 장점을 접목하여 높은 개발 생산성, 이식성, 상호 운용성, 및 유지보수성을 가질 수 있다.

Keywords

References

  1. OMG, MDA Guide Version 1.0.1, omg/2003-06-01, June 2003
  2. Heineman, G. and Councill, W., Component-Based Software Engineering, Addison Wesley, 2001
  3. Frankel, D., Model Driven Architecture TM: Applying $MDA^{TM}$ to Enterprise Computing, Wiley, 2003
  4. Flater, D., 'Impact of Model-Driven Architecutre,' In Proceedings of the 35th Hawaii International Conference on System Sciences, January 2002 https://doi.org/10.1109/HICSS.2002.994500
  5. Kleppe, A., Warmer, J. and Bast, W., MDA Explained, Addison-Wesley, 2003
  6. JCP, $UML^{TM}$ Profile For EJB_Draft, Java Community Process. 2001
  7. OMG, $UML^{TM}$ Profile for CORBA Specification V1.0, Nov. 2000
  8. OMG, UML Profile for EDOC V1.0, http://www.omg.org/technology/documents/formal/edoc.htm, 2004
  9. OMG, UML Profile for Enterprise Collaboration Architecture (ECA) V1.0, 2004
  10. OMG, Metamodel and UML Profile for Java and EJB V1.0, 2004
  11. OMG, Flow Composition Model (FCM) V1.0, 2004
  12. OMG, UML Profile for Patterns V1.0, 2004
  13. OMG, UML Profile for ECA V1.0, 2004
  14. OMG, UML Profile for Meta Object Facility V1.0, 2004
  15. OMG, UML Profile for Relationships V1.0, 2004
  16. Fontoura, M., Pree, W., and Rumpe, B., 'UML-F: A Modeling Language for Object-Oriented Frameworks,' Proceedings of 14th European Conference on Object Oriented Programming (ECOOP 2000), Lecture Notes in Computer Science 1850, 2000
  17. Exertier, D., Lnaglois, B., and Roux, X., 'PIM Definition and Description,' Proceedings of 1st European Workshop, Model-Driven Architecture with Emphasis on Industrial Applications(MDA-IA 2004), 2004
  18. 허진선, 김수동, '컴포넌트 참조 모델의 기술적 비교평가', 한국정보과학회, 제31권, 제6호, 2004
  19. Atkinson, C., et al., Component-based Product Line Engineering with UML, Addison-Wesley, 2001
  20. Geyer, L. and Becker, M., 'On the Influence of Variabilities on the Application-Engineering Process of a Product Family,' Proceedings of Software Product Line Conference (SPLC) 2002, Lecture Notes in Computer Science 2379, 2002
  21. Kim, S., Her, J., and Chang, S., 'A Formal View of Variability in Component-Based Development,' Journal of Information and Software Technology (IST), To Appear, 2005
  22. Choi, S., et al., 'A Systematic Methodology for Developing Component Frameworks,' Lecture Notes in Computer Science 2984, Proceedings of the 7th Fundamental Approaches to Software Engineering Conference, 2004 https://doi.org/10.1007/b95935
  23. OMG, Unified Modeling Language: Superstructure version 2.0, ptc/03-08-02, 2003
  24. Rumbaugh, J., Jacobson, I., and Booch, G., The Unified Modeling Language Reference Manual, Second Edition, Addison-Wesley, 2004
  25. Cheesman, J. and Daniels, J., UML Components, Addison- Wesley, 2001
  26. 민현기, 김수동, 'EJB 기반의 효율적인 설계 패턴 및 엔터프라이즈 아키텍처 설계 기법', 한국정보과학회, 제30권, 제11호, 2003
  27. Roman, E., Mastering Enterprise $JavaBeans^{TM}$ and the $Java^{TM}$2 Platform, Enterprise Edition, WILEY, 1999
  28. Bachman, F. and Bass, L., Volume II: Technical Concepts of Component-Based Software Engineering, CMU/SEI-2000-TR-008, May 2000
  29. Deprince, W. and Hofmeister, C., 'Usage Polices for Components,' Proceedings of the 6th lCSE Workshop on CBSE, 2003