An Aspect-Oriented Slicing Technique Tracing Crosscutting Concern

횡단관심사 추적을 위한 관점지향 슬라이싱 기법

  • 박종각 (전라북도교육청 과학정보교육과) ;
  • 박옥자 (숭실대학교 정보미디어기술연구소) ;
  • 유철중 (전북대학교 응용시스템공학부(정보공학))
  • Published : 2008.12.15

Abstract

Aspect-Oriented Software Development(AOSD) is the software development methodology that classifies concerns of the system and identifies crosscutting concerns and organizes aspect class, and AOSD has emerged as an important user-oriented software development methodology with high maintainability. However, most of related studies worked on identification and specification and coding of crosscutting concerns. And there have been few studies on slicing technique for tracing method of specified crosscutting concerns. Therefore, this paper proposes slicing technique based on AOSD that identifies and specifies crosscutting concerns through interactive analysis between use cases; also, suggests slicing technique which improves traceability centering on identified crosscutting concerns; applies the aspect-oriented slicing technique to Learning Management System(LMS) for case-study. LMS is a cyber educational system that demands a lot of functional changes and expansion, so it is effective to apply AOSD with high maintainability in developing LMS; and shows the results that compared with related studies by comparing six elements.

관점지향 소프트웨어 개발방법(AOSD)은 시스템을 관심사별로 분류하고 횡단관심사를 식별하여 애스팩트 클래스로 구성함으로써 높은 유지보수성이 요구되는 사용자 중심의 시스템 설계를 위한 중요한 소프트웨어 개발방법으로 부각되고 있다. 그러나 기존의 관점지향 소프트웨어 개발방법에 대한 연구들은 횡단관심사의 식별과 명세에 대한 연구들과 애스팩트 클래스를 중심으로 하는 시스템 구현에 대한 연구들이 대부분이며, 식별된 횡단관심사의 추적 방법에 대한 연구들은 매우 미흡하였다. 따라서 본 연구에서는 AOSD를 기반으로 시스템 모델링 단계에서의 횡단관심사 추적을 위한 관점지향 슬라이싱 기법을 제안하였다. 유스 케이스들 간의 상호작용 분석을 통해 횡단관심사를 식별하여 명세한 후 식별된 횡단관심사 추적을 위한 슬라이싱 기법을 제시하였으며, 사례연구를 위해 학습관리시스템(LMS)에 이 기법을 적용하였다. LMS는 시스템 기능의 잦은 변경 및 확장 요구가 많은 사이버교육 시스템으로 이 시스템의 개발에 유지보수성을 높이는 AOSD를 적용하는 것은 매우 효과적인 방법이다. 그리고 마지막으로 기존 연구와의 비교분석 결과를 제시하였다.

Keywords

References

  1. Ivar, Jacobson., Pan-Wei, Ng., "Aspect-Oriented Software Development with Use Case," Addison Wesley, 2005
  2. Georgia, S., Sergio, S., Paulo, B., Jaelson, C., "Separation of Crosscutting Concerns from Requirements to Design," Aspect-Oriented Requirements Engineering and Architecture Design Workshop, pp. 93-102, 2004
  3. Ishio T., Kusumoto S., and Inoue K., "Program Slicing Tool for Effective Software Evolution Using Aspect-Oriented Technique," IWPSE Proceedings of the 6th International Workshop on Principles of Software Evolution, pp. 3-12, 2003
  4. Jong-Kack P., Dae-Gon K., Cheol-Jung Y., Ok-Bae J., "Applying Aspect-Oriented Software Development Methodology in Learning Management System," APIS 2007, Proceeding of the 6th International Symposium, pp. 55-58, 2007
  5. Elisa, B., Siobhan, C., "Finding Aspects In Requirements with Theme/Doc," Aspect-Oriented Requirements Engineering and Architecture Design Workshop, pp. 15-22, 2004
  6. Balasubramaniam Ramesh, and Matthias Jarke., "Toward Reference Models for Requirements Traceability," IEEE Transactions on Software Engineering, Vol. 27, No. 1, pp. 58-93, 2001 https://doi.org/10.1109/32.895989
  7. Bedir, T., Ana, M., "Aspect-Oriented Requirements Engineering and Architecture Design," Aspect- Oriented Requirements Engineering and Architecture Design Workshop, pp. 4-14, 2004
  8. 박옥자, 유철중, 장옥배, "프로그램 개발 및 유지 보수를 지원하는 횡단관심사 명세 기법", 한국정보과학회 논문지 제34권 제9호, pp. 773-784, 2007
  9. Isabel, B., Ana, M., "Integrating the NFR Framework in a RE Model," Aspect-Oriented Requirements Engineering and Architecture Design Workshop, pp. 27-32, 2004
  10. Jianjun Zhao, "Slicing Aspect-Oriented Software," IWPC Proceedings of the 10th International Workshop on Program Comprehension, pp. 251-260, 2002
  11. 정인상, 윤광식, 이완권, 권용래, "명세 기반 프로 그램 슬라이싱 기법과 응용", 한국정보과학회 논문지 제29권 제8호, pp. 529-542, 2002
  12. Ivar, Jacobson., "Use Cases and Aspects-Working Seamlessly Together," In Journal of Object Technology, Vol.2. No.4. pp. 7-28, 2003