제품계열공학에서 어플리케이션 생성을 위한 체계적인 프로세스

A Systematic Process for Generating Applications in Product Line Engineering

  • 장치원 (숭실대학교 컴퓨터공학과) ;
  • 장수호 (숭실대학교 컴퓨터공학과) ;
  • 김수동 (숭실대학교 컴퓨터공학과)
  • 발행 : 2005.08.01

초록

제품계열공학(Product Line Engineering, PLE)은 핵심자산(Core Asset) 개발과정과 어플리케이션공학(Application Engineering, AE)과정으로 구성된다. 핵심자산 개발과정은 한 도메인에 속한 여러 어플리케이션들의 공통적인 휘쳐(Feature)를 핵심자산으로 모델링하고, 이를 재사용할 수 있도록 구체화하는 작업이다 어플리케이션 공학 과정은 핵심자산을 각 어플리케이션의 요구사항에 맞게 인스턴스화(Instantiation)하여 어플리케이션을 효과적으로 개발하는 작업이다. 기존의 PLE 기법들은 핵심자산개발에 크게 치중되어 있고, AE 과정의 연구는 상대적으로 미흡한 실정이다. 특히, AE 과정의 실용화를 위해서는 중요한 활동인 인스턴스화하는 실용적 절차와 기법이 미비하다. PLE의 넓은 산업계의 적용을 위해서는 체계적이며 실용적인 수준의 AE 프로세스, 작업 지침, 산출물의 연구가 요구된다. 본 논문에서는 AE의 실용적 프로세스를 제안하고. 프로세스의 각 활동에 대한 상세 지침을 제시하며. 활동에 따른 산출물 제시한다. 또한 사례 연구를 통하여 제시되는 프로세스에 논리성과 실용성을 검증한다.

Product Line Engineering (PLE) consists of two phases; Core Assets Development and Application Engineering. The core asset development is to model common features of members in a domain and to develop them. The application engineering is to effectively generate an application by instantiating the core asset. Today, PLE research mainly focuses on developing core assets, whereas activities and instructions for application engineering are weakly defined. Moreover, instructions of application engineering are not enough to be practically applied. To widely apply PLE to industry, researches on systematic and practical methods such as instantiation processes, instructions, and artifacts are needed. In this paper, we propose a practical PLE process, instructions, and artifacts about each activity. And then, we also present a case study to show applicability and practicality of the process proposed in this paper.

키워드

참고문헌

  1. Deelstra, S., Sinnema, M., and Bosch, J., 'A Product Derivation Framework for Software Product Families,' Proceedings of PFE2003, LNCS 3014, Springer, pp. 473-484, 2004 https://doi.org/10.1007/b97155
  2. Bayer, J. et al., 'PuLSE: A Methodology to Develop Software Product Lines,' Proceeding of Symposium on Software Reusability '99, May 1999
  3. Atkinson, C., et aI., Component-based Product Line Engineering with UML, Addison Wesley, 2001
  4. Clements, P., et aI., Documenting Software Architectures Views and Beyond, 2003
  5. Gomma, H., Designing Software Product Lines with UML from Use Cass to Pattern-Based Software Architectures, Addsion-Wesley, 2004
  6. 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
  7. Matinlassi, M., Niemela. E.. and Dobrica, L., 'Quality-driven architecture design and quality analysis method : A revolutionary initiation approach to a product line architecture,' VTT publication 456, VTT Technical Research Center of Finland, ESPOO2002, 2002
  8. Kang, K., Kim, S., Lee, J., Kim, K., Shin, E. and Huh, M., 'FORM: A Feature-Oriented Reuse Method with Domain-Specific Reference Architectures,' Annals of Software Engineering, vol.5, p.143- p.168, 1998
  9. Anastasopoulos, M., Bayer, J., Flege, O., and Gacek, C., A Process for Product Line Architecture Creation and Evaluation PuLSE-DSSA-version 2.0, Technical Report, No. 038.00/E, IESE, June 2000
  10. Pressman, R., Software engineering: A Practitioner's Approach, Mc Graw Hill, 2001