Skip to main content
QUICK REVIEW

[논문 리뷰] Using Students as Experimental Subjects in Software Engineering Research -- A Review and Discussion of the Evidence

Dror G. Feitelson|arXiv (Cornell University)|2015. 12. 28.
Software Engineering Research참고 문헌 184인용 수 15
한 줄 요약

이 논문은 소프트웨어 공학 연구에서 학생을 실험 참가자로 사용하는 것이 본질적으로 잘못된 것이 아니며, 적절히 맥락화되면 매우 효과적일 수 있다고 주장한다. 기존 연구를 검토한 결과, 학생 참가자는 특히 초기 단계 연구에서 통제 실험에 적합한 편이며, 그들의 성과는 전문가 자격보다 숙련도 수준과 더 강하게 관련되어 있기 때문에, 방법론적 엄밀함이 참가자 인구통계학적 특성보다 더 중요하다는 결론을 내린다.

ABSTRACT

Should students be used as experimental subjects in software engineering? Given that students are in many cases readily available and cheap it is no surprise that the vast majority of controlled experiments in software engineering use them. But they can be argued to constitute a convenience sample that may not represent the target population (typically "real" developers), especially in terms of experience and proficiency. This causes many researchers (and reviewers) to have reservations about the external validity of student-based experiments, and claim that students should not be used. Based on an extensive review of published works that have compared students to professionals, we find that picking on "students" is counterproductive for two main reasons. First, classifying experimental subjects by their status is merely a proxy for more important and meaningful classifications, such as classifying them according to their abilities, and effort should be invested in defining and using these more meaningful classifications. Second, in many cases using students is perfectly reasonable, and student subjects can be used to obtain reliable results and further the research goals. In particular, this appears to be the case when the study involves basic programming and comprehension skills, when tools or methodologies that do not require an extensive learning curve are being compared, and in the initial formative stages of large industrial research initiatives -- in other words, in many of the cases that are suitable for controlled experiments of limited scope.

연구 동기 및 목표

  • 소프트웨어 공학 연구에서 학생을 실험 참가자로 사용하는 것의 타당성과 외부 타당성 평가
  • 학생이 전문 개발자와 본질적으로 대표성이 없음을 가정하는 일반적인 인식에 도전
  • 전문가 자격보다 숙련도 수준이 더 의미 있는 분류 기준이 되어야 한다고 주장
  • 통제 실험에서 학생 참가자를 효과적으로 사용할 수 있는 시점과 방법에 대한 근거 기반 지침 제공
  • 참가자 인구통계학적 특성에 대한 집착보다 실험 설계의 방법론적 개선을 주장

제안 방법

  • 학생과 전문 소프트웨어 개발자 간의 통제 실험을 비교한 발표된 연구를 종합적으로 검토
  • 참가자 분류(학생 대비 전문가)와 숙련도 기반 분류가 실험 결과에 미치는 영향 분석
  • 초기 단계 실험 절차를 다듬기 위해 학생을 대상으로 한 피LOT 연구의 사용 평가
  • 소프트웨어 공학 실험에서의 통계적 관행 검토하며, 강력한 자료 표현과 비모수적 방법의 필요성 강조
  • 단발성 연구의 범위가 제한된 데 비해 복수의 설정, 자료, 참가자 집단에서의 복제와 방법론적 다양성을 우선시하는 프레임워크 제안
  • 외부 타당성을 높이기 위해 실제 환경과 산업 참여의 중요성 강조

실험 결과

연구 질문

  • RQ1소프트웨어 공학 연구에서 학생을 실험 참가자로 사용하는 것이 적절한 조건은 무엇인가?
  • RQ2프로그래밍 작업 및 도구 평가를 포함한 통제 실험에서 학생의 성능은 전문가와 어떻게 비교되는가?
  • RQ3숙련도 수준에 비해 전문가 자격(학생 대비 전문가)이 실험 결과의 외부 타당성에 얼마나 영향을 미치는가?
  • RQ4학생 참가자를 사용하는 실험의 신뢰성과 일반화 가능성 향상을 위한 방법론적 개선은 무엇인가?
  • RQ5학생을 대상으로 한 피LOT 연구는 어떻게 더 큰 규모의 전문 개발자 실험을 설계하고 정당화하는 데 기여하는가?

주요 결과

  • 1993년에서 2002년 사이 소프트웨어 공학 실험의 다수(87%)가 참가자로 학생을 사용하여, 외부 타당성에 대한 우려에도 불구하고 널리 수용된 것으로 나타났다.
  • 특히 기본 프로그래밍이나 학습 곡선이 낮은 도구를 다루는 초기 단계 연구에서는 학생이 실제 개발자에 대한 합리적인 대체자로 기능할 수 있다.
  • 학생과 전문가 간의 숙련도 수준에 중복이 많으며, 숙련도가 반드시 전문가 자격과 관련이 있는 것은 아니다.
  • 피LOT 연구에서 학생을 활용하면 실험 절차를 다듬고, 이후 단계에서 전문가를 참여시키는 데 더 높은 비용을 지불하는 것을 정당화할 수 있다.
  • 참가자 신분이 아니라 방법론적 엄밀함(적절한 통계 분석 및 자료 표현 포함)이 주요 고려 사항이어야 한다.
  • 참가자 인구통계학적 특성에만 집중하는 것보다 다양한 설정, 자료, 참가자 집단에서의 복제가 신뢰할 수 있는 지식 구축에 더 중요하다.

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

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

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

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