A Component Composition Testing Technique in CBSD

CBSD에서의 컴포넌트 조립 테스트 기법

  • 윤회진 (이화여자대학교 대학원 컴퓨터학과) ;
  • 최병주 (이화여자대학교 컴퓨터학과)
  • Published : 2002.10.01

Abstract

An application in Component-Based Software Development (CBSD) is built by 'composing'two kinds of components; One is a component that is made by current developer himself, and the other is a component that is from other developments. We define the former as a 'White-box component' and the latter as a 'Black-box component.' The error from the composition can be said to be caused by interactions of Black-box components and White-box components. This paper proposes a new testing technique for composition errors, and applies the technique to Enterprise Java Beans component architecture. Our technique selects test cases by injecting a fault only into the specific parts of a White-box component. This specific parts for injecting a fault are selected by analyzing composition patterns, and lead to make our test cases have a good effectiveness. We show the effectiveness of our test cases through an experiment. Moreover, we also mention an automation tool for our technique.

컴포넌트 기반 소프트웨어 개발(Component-Based Software Development : CBSD)로 만들어진 소프트웨어는 현재 개발자에 의해 새로 만들어진 컴포넌트들과 재사용되는 컴포넌트들의 '조립'으로 이루어진다. 본 논문에서는 이들을 각각 화이트박스 컴포넌트와 블랙박스 컴포넌트로 정의한다. 따라서 컴포넌트 조림에 의한 오류는 소프트웨어를 이루는 블랙박스 컴포넌트들과 화이트박스 컴포넌트들의 상호작용에 의해 발생한다. 본 논문은 이러한 조립 오류들을 테스트하는 방법을 제안하고, 엔터프라이즈 자바빈즈 아키텍쳐에서의 컴포넌트 조립 테스트에 적용한다. 본 기법은 화이트박스 컴포넌트의 특정 영역에만 오류를 삽입하여 테스트 케이스를 선정한다. 오류가 삽입되는 특정 영역은 컴포넌트 조립의 패턴들을 분석하석 선정되며, 이는 본 기법의 테스트 케이스가 높은 효율성을 갖도록 한다. 본 논문에서는 테스트 케이스의 효율성을 실험을 통해 평가하며, 나아가 컴포넌트 조립 테스트 기법의 자동화 방안을 제안한다.

Keywords

References

  1. Marcio E. Delamaro, Jose C. Maldonado, and Aditya P. Mathur, 'Interface Mutation: An Approach for Integration Testing,' IEEE Trans. on Software Engineering, Vol. 27, No. 3, pp.228-247, Mar. 2001 https://doi.org/10.1109/32.910859
  2. R.A.DeMillo, R.J.Lipton, and F.G.Sayward, 'Hints on Test Data Selection : Help for the Practicing Programmer,' IEEE Computer, Vol. 11, No. 4, pp. 34-41, Apr 1978 https://doi.org/10.1109/C-M.1978.218136
  3. Aditia P.Mathur and W.Eric Wong. 1993. Comparing the Fault Detection Effectiveness of Mutation and Data Flow Testing: An Empirical Study, SERC-TR-146-P, Dec.29
  4. A.Jefferson Offutt. 1992. Investigations of the Software Testing Coupling Effect. ACM Trans. on Software Engineering and Methodology, 1(1): 5-20, Jan https://doi.org/10.1145/125489.125473
  5. Monica Pawlan, 'Writing Enterprise Application with JavaTM 2 Platform, Enterprise Edition,' at URL : http://developer.java.sun.com/developer/onlineTraining/J2EE/Intro/
  6. Hoijin Yoon and Byoungju Choi, 'Inter-class Test Technique between Black-box-class and White-box-class for Component customization Failures,' Asia-Pacific Software Engineering Conference, page162-165, Japan, Dec 8-10, 1999 https://doi.org/10.1109/APSEC.1999.809597
  7. Hoijin Yoon and Byoungju Choi, 'Component Customization Testing Technique Using Fault Injection Technique and Mutation Test Criteria,' i${\pm}$Proceeding on Mutation2000, Oct. 2000, USA