Skip to main content
QUICK REVIEW

[논문 리뷰] Searching publications on software testing

C.A. Middelburg|arXiv (Cornell University)|2010. 08. 16.
Software Testing and Debugging Techniques참고 문헌 38인용 수 17
한 줄 요약

이 논문은 산업 현장에서 실시되는 소프트웨어 테스팅의 형식화를 조사하며, 핵심 실용적 개념—조건 하에서 코드를 실행하고, 영향을 관찰하며, 결과를 평가하는 것—을 포괄하는 기존 이론이나 형식화가 존재하지 않음을 발견한다. 이는 심각한 격차를 드러내며, 수십 년에 걸친 연구에도 불구하고 소프트웨어 테스팅은 다른 분석 방법과 구별되는 엄밀한 이론적 기초를 갖추지 못했고, 다른 분석 방법이 가능할 경우 테스팅이 왜 바람직한지에 대한 근거 없는 이론적 근거도 존재하지 않는다.

ABSTRACT

This note concerns a search for publications in which the pragmatic concept of a test as conducted in the practice of software testing is formalized, a theory about software testing based on such a formalization is presented or it is demonstrated on the basis of such a theory that there are solid grounds to test software in cases where in principle other forms of analysis could be used. This note reports on the way in which the search has been carried out and the main outcomes of the search. The message of the note is that the fundamentals of software testing are not yet complete in some respects.

연구 동기 및 목표

  • 문헌에서 소프트웨어 테스팅의 실용적 개념을 형식화한 버전이 존재하는지 확인하는 것.
  • 소프트웨어 테스팅 이론이 실질적 테스트 과정을 바탕으로 탄탄한 이해를 바탕으로 수립되었는지 평가하는 것.
  • 기타 분석 방법이 사용 가능한 경우에도 소프트웨어 테스팅을 선호할 수 있는 이론적으로 탄탄한 근거가 존재하는지 조사하는 것.
  • 수십 년에 걸친 실무와 연구에도 불구하고 소프트웨어 테스팅의 핵심 개념이 개념적으로 개발되지 못한 이유를 규명하는 것.

제안 방법

  • Google 학술 검색, ACM 디지털 라이브러리, IEEE Xplore, SpringerLink, ScienceDirect, DBLP, 그리고 컴퓨터 과학 문헌 목록 컬렉션을 활용한 체계적 검색을 수행하였다.
  • 1951년 이후 5년 간격으로 검색을 수행하며, '프로그램 테스팅'과 '소프트웨어 테스팅'을 전문 검색어로 사용하여 역사적 커버리지를 확보하였다.
  • 기초가 되는 및 관련 있는 논문을 식별하기 위해 인용 네트워크를 추적하였으며, 더 이상 새로운 관련 논문이 발견되지 않을 때까지 이 과정을 반복하였다.
  • 전체 텍스트 검색 결과를 저널 컬렉션 및 문헌 목록에서의 대상별 검색 결과와 비교하여 완전성을 확보하였다.
  • 논문을 분석하여 테스트 개념의 형식화 여부 및 다른 분석 방법 대비 테스팅을 선호할 이론적 근거가 존재하는지 확인하였다.
  • 기존 이론들이 테스팅에서 코드 실행과 영향 관찰의 핵심적 역할을 인정하고 있는지 평가하였다.

실험 결과

연구 질문

  • RQ1코드 실행, 조건 설정, 영향 관찰, 평가를 포함하는 실용적 소프트웨어 테스트 개념을 공식적으로 정의하는 전자적 가용 문헌이 존재하는가?
  • RQ2기존의 소프트웨어 테스팅 이론들이 다른 소프트웨어 분석 방식과 구별되는 탄탄한 이론적 기초를 제공하는가?
  • RQ3기타 분석 기법이 사용 가능한 경우에도 소프트웨어 테스팅을 선호할 이론적으로 탄탄한 근거가 존재하는가?
  • RQ4테스팅의 핵심 특성인 실행 및 영향 관찰이 왜 이론적 모델에서 항상 생략되는가?

주요 결과

  • 전자적으로 가용한 논문 중에서 코드 실행, 조건 설정, 영향 관찰, 평가를 포함하는 실용적 소프트웨어 테스트 개념을 공식적으로 정의한 것은 존재하지 않는다.
  • 기존의 소프트웨어 테스팅 이론들은 실무에서 핵심적인 요소로 간주되는 실행 및 관찰의 요소를 포함하지도 않았다.
  • 테스팅이 코드를 실행하고 결과를 관찰한다는 기초 개념은 이론적 발전 과정에서 체계적으로 忽略되고 있으며, 심지어 이 개념을 인정하는 것처럼 보이는 이론들마저도 마찬가지이다.
  • 기타 분석 방법이 사용 가능한 경우에도 소프트웨어 테스팅을 선호할 근거 없는 이론적 근거가 존재하지 않는다.
  • 정적 또는 형식적 분석과 다른 형태의 소프트웨어 테스팅을 구별하는 공식 이론이 문헌에 존재하지 않는다.
  • ITU의 권고안 Z.500은 테스팅을 깊이 있게 다루는 유일한 문서 중 하나이지만, 이 개념을 형식화하지는 않았다.

더 나은 연구,지금 바로 시작하세요

논문 읽기부터 검토까지, 연구 시간을 획기적으로 줄여보세요.

카드 등록 없음 · 무료 플랜 제공

이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.