A Practical Techniquefor Designing Product Line Architecture

프로덕트라인 아키텍쳐의 실용적 설계기법

  • Published : 2005.03.01

Abstract

Product Line Engineering (PLE) has been widely accepted as a representative software reuse methodology by using core assets. Product line architecture (PLA) is a key element of core assets. However, current research works on designing PLA do not provide sufficient and detailed guidelines of defining PLA and reflecting variability in the architecture. In this paper, we present a reference model of PLA and propose a process to design PLA with detailed instructions. Especially architectural variability is codified by describing decision model depending variation points and traced through PLA activities. The proposed process would make it feasible to apply PLE to practice areas.

프로덕트라인 공학은 여러 어플리케이션들이 공유할 수 있는 핵심자산을 사용하는 대표적인 소프트웨어 재사용 방법으로 넓게 수용되고 있다. 프로덕트라인 공학의 핵심자산의 중요한 구성요소로 프로덕트라인 아키텍쳐(Product Line Architecture, PLA)가 있다. 그러나 PLA에 대한 대부분의 연구는 재사용 자산으로서 공통성 및 가변성(C&V)에 대한 표현 및 설계에 대한 상세한 지침이 미비하다. 본 논문에서는 PLA 의 선계 프로세스와 상세 수준의 지침을 제안한다. 특히 PLA 가변성의 체계적인 정의를 위해 가변점의 종류에 대한 PLA 의사결정 모델(Decision Model)을 제시한다. 제안된 프로세스와 PLA가변성 정의로 프로덕트라인 공학의 효율적인 실무적 접근을 예상할 수 있다.

Keywords

References

  1. Bosch, J. Design and Use of Software Architectures, Addison-Wesley, 2000
  2. Bass, L., Clements, P., Kazman, R., Software Architecture in Practice, Addison-Wesley, 2003
  3. Bayer, J., flege, O., and Gacek, C., 'Creating Product Line Architectures,' proceeding of IW-SAPF-3, LNCS 1951, Springer-Verlag Berlin Heidelberg, 2000 https://doi.org/10.1007/b78902
  4. Kang, K. et. al., 'FORM: A Feature-Oriented Reuse Method with Domain-Specific Reference Architectures,' Annals of Software Engineering, 5, 1998, pp. 143-168 https://doi.org/10.1023/A:1018980625587
  5. Kang, K., Lee, J., and Donohoe, P., 'Feature-Oriented Product Line Engineering,' IEEE Software, Vol. 9, No.4, Jul./Aug. 2002, pp. 58-65 https://doi.org/10.1109/MS.2002.1020288
  6. 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 Technical Research Center of Finland, ESPOO 2002, 2002
  7. Ceron, R., Arciniegas, J., Ruiz, J., Cuenas, J., Bermejo, J., and Capilla, R., 'Architectureal Modeling in Product Family Context,' proceeding of EWAS, LNCS 3047, Springer-Verlag Berlin Heidelberg, 2004 https://doi.org/10.1007/b97879
  8. Thiel, S., 'On the Definition of a Framework for an Architecting Process,' proceeding of PFE-4, LNCS 2290, Springer-Verlag Berlin Heidelberg, 2002
  9. Thiel, S., and Hein, A., 'Systematic Integration of Variability into Product Line Architecture Design,' proceeding of SPLC2, LNCS 2379, Springer-Verlag Berlin Heidelberg, 2002
  10. Joachim, B., et.al., 'PuLSE: A Methodology to Develop Software Product Lines,' The Symposium on Software Reusability'99, Los Angeles, May 1999 https://doi.org/10.1145/303008.303063
  11. Obbink, H. et al., 'COPA: A Component-Oriented Platform Architecting Method for Families of Software-Intensive Electric Products,' Tutorial for the First Software Product Line Conference (SPLC1), Aug. 2000
  12. Atkinson, C., et al., Component-based Product Line Engineering with UML, Addison Wesley, 2001
  13. IEEE Recommended Practice for Architectural Description of Software-Intensive Systems (IEEE Standard P1471); IEEE Architecture Working Group (AWG); 2000
  14. Clements, P., et al., Documenting Software Architectures Views and Beyond, Addison-Wesley, 2003
  15. Perry, D., 'Generic Architecture Descriptions for Product Lines,' proceeding of ARES, LNCS 1429, Springer-Verlag Berlin Heidelberg, 1998
  16. America, P., et al., 'Scenario-Based Decision Making for Architectural Variability in Product Families,' proceeding of SPLC 2004, LNCS 3154, Springer-Verlag Berlin Heidelberg, 2004 https://doi.org/10.1007/b100081
  17. 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
  18. Lauesen, S., Software Requirements Styles and Techniques, Addison-Wesley, 2002
  19. McGovern J., et al., A Practical Guide to Enterprise Architecture, Prentice Hall, 2003
  20. Garlan, D., Allen, R., Ockerbloom, J., 'Exploiting Style in Architectural Design Environments,' Proceedings of SIGSOFT'94, Foundations of Software Engineering, pp. 175-188, 1994 https://doi.org/10.1145/193173.195404
  21. Woods, E., 'Experiences Using Viewpoints for Information Systems Architecture: An Industrial Experience Report,' proceeding of EWSA 2004, LNCS 3047, Springer-Verlag Berlin Heidelberg, 2004 https://doi.org/10.1007/b97879
  22. Gomma, H., Designing Software Product Lines with UML from Use Cases to Pattern-based Software Architectures, Addison-Wesley, 2004
  23. Kim, S. and Chang, S., 'A Systematic Method to Identify Component,' Proceedings of APSEC 2004, Nov., 2004 https://doi.org/10.1109/APSEC.2004.11