제품 라인에서 컴포넌트 구조를 활용한 컴포넌트 스펙 방법

Approach to Specify a Component using Component Structure in Product Lines

  • 조혜경 (포항공과대학교 컴퓨터공학과)
  • Published : 2006.03.01

Abstract

제품 라인은 재사용을 위한 연구 방법으로 널리 인식되어 왔다. 제품 라인에서 대표적인 중요 자산은 소프트웨어 컴포넌트이다. 그러나, 제품 라인에 대한 많은 관심에 비해 제품 라인에서 컴포넌트 구조 및 스펙에 대한 연구는 아직 미흡하다. 본 논문은 제품 라인에서 가변성(variability)을 반영한 컴포넌트 구조와 컴포넌트 스펙 방법을 제시한다. 본 논문은 FORM(Feature-Oriented Reuse Method)을 기반으로 제품 라인 컴포넌트의 정적 및 동적 구조, 제품 라인 컴포넌트의 행동 및 동시성 정보를 기술한다. 제품 라인 컴포넌트 스펙에 대한 각 정보는 블랙박스(black-box)와 화이트박스(white-box) 형태로 구분되어 기술되며 각 스펙 정보는 BNF로 정형화된다. 그 스펙들이 제품 라인 컴포넌트의 많은 서로 다른 특징의 충분한 고려를 통해 기술되기 때문에 본 논문은 제품 라인에서 컴포넌트의 손쉬운 개발을 돕고 제품라인 공학 방법론의 적용 방법을 잘 이해하도록 돕는다.

Product line is nowadays well known as a representative method for reuse. In the product line, important assets are components. Although enough concerns were given of the product line, it was not accomplished to structure and specify a product-line component with variability. This paper presents an approach to specify components in the product line. The approach describes the static and dynamic structure of a product-line component and explains the behavior and concurrency of the component. The component information is separately described in the black-box and white-box using the Feature-Oriented Reuse Method(FORM). This research also formalizes the data on a component specification in the form of BNF. The specification is described through careful consideration for many different characteristics of the product-line component, so this paper helps to easily develop the components in the product line and to well comprehend how to apply a method for the product line.

Keywords

References

  1. Kang, K., Kim, S., Lee, J., Kim, K. et aI., 'FORM: A Feature-Oriented Reuse Method with domain-specific reference architectures,' Annals of Software Engineering, vol. 5, pp. 143-168, 1998 https://doi.org/10.1023/A:1018980625587
  2. Chastek, G., Donohoe, P. and McGregor, J. D., A Study of Product Production in Software Product Lines, Technical Note, CMU/SEI-2004-TN-012, p. 5, 2004
  3. D'Souza, D.F. and Wills, A.C., Objects, Components and Frameworks with UML, Addison-Wesley, 1998
  4. Atkinson, C. et al., Component-Based Product Line Engineering with UML, Addison-Wesley, 2001
  5. Brown, A.W. and Barn, B., 'Enterprise-scale CBD: building complex computer systems from components,' Sterling Software, STEP '99, 1999 https://doi.org/10.1109/STEP.1999.798482
  6. Dias, M.S. and Vieira, M.E.R., 'Software architecture analysis based on statechart semantics,' IWSSD'00, IEEE, 2000 https://doi.org/10.1109/IWSSD.2000.891134
  7. Beugnard, A., Jezequel, J.M., Plouzeau, N. et aI., 'Making components contract aware,' Computer 32 (7), IEEE, pp. 38-45, 1999 https://doi.org/10.1109/2.774917
  8. Fettke, P. and Loos, P., 'Specification of business components,' LNCS 2591, Springer-Verlag, pp. 62-75, 2003
  9. Albani, A., Keiblinger, A., Turowski, K. et al., 'Domain based identification and modelling of business component applications,' LNCS 2798, Springer-Verlag, pp. 30-45, 2003
  10. Bachmann, F., Bass, L., Buhman, C. et aI., Volume II: Technical Concepts of Component-Based Software Engineering, Technical Report, CMU/SEI2000-TR-008, 2000
  11. Taulavuori, A., Component Documentation in The Context of Software Product Lines, VTT Publications 484, VTT Electronics, Espoo, 2002
  12. Taulavuori, A., Niemel, E. et aI., 'Component document - a key issue in software product lines,' Information and Software Technology 46, VTT Electronics, pp. 535-546, 2004 https://doi.org/10.1016/j.infsof.2003.10.004
  13. Ommering, R.V., 'Building product populations with software components,' ICSE'02, pp. 255-265, 2002 https://doi.org/10.1145/581339.581373
  14. Sharp, D., 'Exploiting object technology to support product variability,' Proceedings of 18th Digital Avionics Systems Conference, IEEE, 1999 https://doi.org/10.1109/DASC.1999.863671
  15. Anastasopoulos, M. and Gacek, C., 'Implementing product line variabilities,' ECOOP, ACM, pp. 109-117, 2001 https://doi.org/10.1145/375212.375269
  16. Myllymaki, T., Variability Management in Software Product Lines, Technical Report of Software Systems Laboratory, Tampere University of Technology, pp. 23-26, 2001
  17. Lamsweerde, A.V., 'Formal specification: a road-map,' ICSE'00, pp. 147-159, 2000 https://doi.org/10.1145/336512.336546
  18. Matinlassi, M., Niemela, E. and Dobrica, L., Quality-driven Architecture Design and Quality Analysis Method, VTT Electronics, http://www.inf.vtt.fi/pdf/pu blications/2002/P456.pdf, 2002
  19. America, P., Obbink, H., Muller, J. and Ommering, R.V., 'COPA: A Component-Oriented Platform Architecting method for families of software intensive electronic products,' SPLC1, http://www.extra. research.philips.com/sae/copa/copa_tutorial.pdf, 2000
  20. Jayaratna, N., Understanding and Evaluating Methodologies : NIMSAD : A Systematic Framework. McGrawHill, London, 1994
  21. Matinlassi, M., Comparison of Software Product Line Architecture Design Methods: COPA, FAST, FORM, KobrA and QADA, VTT Electronics, ICSE, 2004