DOI QR코드

DOI QR Code

적응형 소프트웨어를 위한 프로덕트 라인 아키텍처 개발

Product-Line Architecture Development for Self-Adaptive Software

  • 예은숙 (부산대학교 컴퓨터공학과) ;
  • 염근혁 (부산대학교 정보컴퓨터공학부) ;
  • 문미경 (동서대학교 컴퓨터정보공학부)
  • 발행 : 2008.06.30

초록

최근의 유비쿼터스 컴퓨팅 환경에서 요구되는 새로운 패러다임의 소프트웨어인 적응형 소프트웨어는 외부 환경 즉 문맥의 변화를 인식하고 자신의 운영 상태를 평가하여 스스로 동작행위를 바꾸는 능력을 가진 소프트웨어이다. 적응형 소프트웨어를 개발하기 위해서는 문맥에 대한 분석 및 설계와 더불어 동적인 문맥에 따라 적절히 대응할 수 있는 소프트웨어의 구조 및 행위를 설계하는 과정이 필요하다. 이것은 일반적인 소프트웨어보다 소프트웨어가 적응해야 하는 상황을 모델링 하는 기술이 필요하기 때문에 더 많은 노력이 필요하다. 본 논문에서는 재사용을 통해 개발의 효율성을 높이고자 적응형 소프트웨어를 위한 프로덕트 라인 아키텍처와 아키텍처 산출물의 템플릿을 제안한다. 아키텍처 산출물들은 프로덕트 라인의 공통성과 가변성을 명시적으로 표현하여 체계적인 핵심자산의 재사용 활동을 지원한다.

In the latest intelligent computing environments, the self-adaptive software, as new software paradigm, which modifies its own behavior in response to changes in its operating environment is needed. To develop the self-adaptive software, it is necessary to analyze and design the context of software as well as the structure and the behavior of software. We need more efforts for self-adaptive software development than for traditional software development because we need more activities and technologies like context modeling and adaptation to develop the self-adaptive software. In this paper, we present the product line architecture for self-adaptive software and templates of artifacts to improve the efficiency of development through a reuse methodology. The artifacts of the architecture support the systematic reuse activities of core assets by expressing the commonality and variability of product line.

키워드

참고문헌

  1. Atkinson, C. et al., Component-based product line engineering with UML. Addison-Wesley, London, New York, 2002
  2. Self Adaptive Software, DARPA, BAA 98-12, Proposer Information Pamphlet, 1997
  3. Clements, P., Garlan, D., Little, R., Nord, R., and Stafford, J., Documenting software architectures: views and beyond, Addison-Wesley, September 2002
  4. IEEE, IEEE Recommended Practice for Architectural Description of Software-Intensive Systems. Institute of Electrical and Electronics Engineers, Sept. 2000. IEEE Std 1471-2000
  5. 문미경, “소프트웨어 프로덕트 라인에서 가변성 분석을 통한 요구사항 및 아키텍처 개발,” 부산대학교 컴퓨터공학과 박사학위 논문, 2005
  6. Pohl, K., Bockle, G., and van der Linden, F., Software Product Line Engineering: Foundations, Principles, and Techniques, Springer, 2005
  7. Dey, A. K. and Abowd, G. D., “Towards a Better Understanding of Context and Context-Awareness," Technical Report, GIT-GVU-99-22, College of Computing Georgia Institute of Technology, 1999
  8. Kang, K.C., 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, No.1, 1998, pp.143-168(26) https://doi.org/10.1023/A:1018980625587
  9. 문미경, 염근혁, “소프트웨어 프로덕트 라인에서 가변성 분석을 통한 도메인 아키텍처 개발 방법,” 정보과학회논문지: 소프트웨어 및 응용 제34권 제4호, 2007, pp.328-341
  10. Laddaga, R., Robertson, P., and Shrobe, H. E., “Probabilistic dispatch, dynamic domain architecture, and self-adaptive software,” Self-Adaptive Software, pp.227-237. Springer-Verlag, 2003
  11. Garlan, D., Cheng, S.-W., Huang, A.-C., Schmerl, B., and Steenkiste, P., “Rainbow: Architecture-Based Self-Adaptation with Reusable Infrastructure,” IEEE Computer Vol.37 No. 10, october 2004, pp.46-54 https://doi.org/10.1109/MC.2004.175
  12. Hallsteinsen, F. J., Stav, S., Eliassen, E., Lund, F., Gjorven, K. E., “Using architecture models for runtime adaptability,” IEEE Software, March-April 2006 Vol.23, pp.62-70 https://doi.org/10.1109/MS.2006.61