경험적 조사

경험적 조사는 도구, 기술 또는 방법에 대한 과학적 조사를 포함합니다. 이 조사는 주로 다음 4 가지 원칙을 포함합니다.

  • 조사 기술 선택
  • 가설 진술
  • 변수에 대한 통제력 유지
  • 조사를 의미있게 만들기

조사 기법 선택

소프트웨어 엔지니어링에서 경험적 조사의 주요 구성 요소는 다음과 같습니다.

  • Survey
  • 사례 연구
  • 공식 실험

서베이

설문 조사는 관계와 결과를 문서화하기 위해 상황에 대한 후 향적 연구입니다. 항상 이벤트가 발생한 후에 수행됩니다. 예를 들어, 소프트웨어 엔지니어링에서 설문 조사를 수행하여 사용자가 특정 방법, 도구 또는 기술에 반응하여 추세 나 관계를 결정하는 방법을 결정할 수 있습니다.

이 경우 우리는 당면한 상황을 통제 할 수 없습니다. 상황을 기록하고 비슷한 상황과 비교할 수 있습니다.

사례 연구

활동의 결과에 영향을 미칠 수있는 주요 요인을 식별 한 다음 해당 활동 (입력, 제약, 자원 및 출력)을 문서화하는 연구 기법입니다.

공식 실험

활동에 대한 엄격하게 통제 된 조사이며 주요 요인을 식별하고 조작하여 결과에 미치는 영향을 문서화합니다.

다음 지침에 따라 특정 조사 방법을 선택할 수 있습니다.

  • 활동이 이미 발생한 경우 설문 조사 또는 사례 연구를 수행 할 수 있습니다. 아직 발생하지 않은 경우 사례 연구 또는 공식 실험을 선택할 수 있습니다.

  • 결과에 영향을 줄 수있는 변수에 대한 높은 수준의 제어가 있다면 실험을 사용할 수 있습니다. 변수를 제어 할 수없는 경우 사례 연구가 선호되는 기술입니다.

  • 더 높은 수준에서 복제가 불가능하면 실험이 불가능합니다.

  • 복제 비용이 낮 으면 실험을 고려할 수 있습니다.

가설 설명

특정 조사 기법의 결정을 높이기 위해 연구의 목표를 테스트하려는 가설로 표현해야합니다. 가설은 프로그래머가 탐색하려는 동작을 설명한다고 생각하는 잠정적 인 이론 또는 가정입니다.

변수에 대한 제어 유지

가설을 말한 후, 그 진실에 영향을 미치는 다양한 변수와 우리가 얼마나 많은 통제력을 가지고 있는지 결정해야합니다. 이는 실험과 사례 연구 사이의 주요 차별 요소가 행동에 영향을 미치는 변수에 대한 통제 정도이기 때문에 필수적입니다.

프로젝트를 특성화하고 평가 결과에 영향을 미칠 수있는 요인 인 상태 변수를 사용하여 공식 실험에서 제어 상황과 실험 상황을 구분합니다. 대조군과 실험을 구별 할 수 없다면 사례 연구 기법이 선호 될 것입니다.

예를 들어 프로그래밍 언어의 변경이 프로젝트의 생산성에 영향을 미칠 수 있는지 여부를 확인하려면 언어가 상태 변수가됩니다. 현재 Ada로 대체하려는 FORTRAN을 사용하고 있다고 가정합니다. 그러면 FORTRAN이 제어 언어가되고 Ada가 실험적 언어가됩니다.

조사를 의미있게 만들기

실험 결과는 일반적으로 사례 연구 또는 설문 조사보다 일반화 가능합니다. 사례 연구 또는 설문 조사의 결과는 일반적으로 특정 조직에만 적용 할 수 있습니다. 다음 요점은 다양한 질문에 답하는 이러한 기술의 효율성을 입증합니다.

일치하는 이론과 관습적인 지혜

사례 연구 또는 설문 조사를 사용하여 단일 조직에서 기존의 통념과 기타 많은 표준, 방법 또는 도구의 효과와 유용성을 준수 할 수 있습니다. 그러나 공식적인 실험은 주장이 일반적으로 사실 인 상황을 조사 할 수 있습니다.

관계 탐구

자원과 소프트웨어 제품의 다양한 속성 간의 관계는 사례 연구 또는 설문 조사를 통해 제안 될 수 있습니다.

예를 들어, 완료된 프로젝트를 조사한 결과 특정 언어로 작성된 소프트웨어가 다른 언어로 작성된 소프트웨어보다 결함이 적다는 것을 알 수 있습니다.

이러한 관계를 이해하고 확인하는 것은 향후 프로젝트의 성공에 필수적입니다. 이러한 각 관계는 가설로 표현할 수 있으며 관계가 유지되는 정도를 테스트하기 위해 공식적인 실험을 설계 할 수 있습니다. 일반적으로 특정 속성의 값은 다른 속성을 일정하게 유지하거나 제어하여 관찰합니다.

모델의 정확성 평가

모델은 일반적으로 활동의 결과를 예측하거나 방법 또는 도구의 사용을 안내하는 데 사용됩니다. 예측이 종종 결과에 영향을 미치기 때문에 실험이나 사례 연구를 설계 할 때 특히 어려운 문제를 제시합니다. 프로젝트 관리자는 종종 예측을 완료 목표로 전환합니다. 이 효과는 비용 및 일정 모델을 사용할 때 일반적입니다.

신뢰성 모델과 같은 일부 모델은 소프트웨어가 현장에서 사용할 준비가 될 때까지 평균 고장 시간으로 측정 된 신뢰성을 평가할 수 없기 때문에 결과에 영향을 미치지 않습니다.

측정 검증

속성 값을 캡처하는 소프트웨어 측정 방법이 많이 있습니다. 따라서 주어진 측정 값이 캡처해야하는 속성의 변경 사항을 반영하는지 여부를 테스트하기 위해 연구를 수행해야합니다. 하나의 측정 값을 다른 측정 값과 상관시켜 유효성 검사를 수행합니다. 영향 요인에 대한 직접적이고 유효한 측정이기도 한 두 번째 측정을 유효성 검사에 사용해야합니다. 이러한 측정은 항상 사용 가능하거나 측정하기 쉬운 것은 아닙니다. 또한 사용 된 측정은 측정되는 요소에 대한 인간의 개념을 따라야합니다.