추정 기법-개요

Estimation 입력 데이터가 불완전하거나 불확실하거나 불안정 할 수 있더라도 어떤 목적으로 사용할 수있는 값인 추정 또는 근사를 찾는 프로세스입니다.

추정은 특정 시스템이나 제품을 구축하는 데 소요되는 비용, 노력, 자원 및 시간을 결정합니다. 추정은-

  • 과거 데이터 / 과거 경험
  • 사용 가능한 문서 / 지식
  • Assumptions
  • 확인 된 위험

소프트웨어 프로젝트 추정의 네 가지 기본 단계는 다음과 같습니다.

  • 개발 제품의 크기를 추정하십시오.
  • 사람-월 또는 사람-시간으로 노력을 추정하십시오.
  • 달력 달의 일정을 추정하십시오.
  • 합의 된 통화로 프로젝트 비용을 추정합니다.

추정에 대한 관찰

  • 추정은 프로젝트에서 일회성 작업 일 필요는 없습니다. 그것은 동안 일어날 수 있습니다-

    • 프로젝트 획득.
    • 프로젝트 계획.
    • 필요에 따라 프로젝트 실행.
  • 추정 프로세스가 시작되기 전에 프로젝트 범위를 이해해야합니다. 과거 프로젝트 데이터가 있으면 도움이 될 것입니다.

  • 프로젝트 메트릭은 양적 추정을 생성하기위한 역사적 관점과 귀중한 입력을 제공 할 수 있습니다.

  • 계획을 수립하려면 기술 관리자와 소프트웨어 팀이 책임과 책임으로 이어지기 때문에 초기 약속을해야합니다.

  • 과거의 경험이 큰 도움이 될 수 있습니다.

  • 최소 두 가지 추정 기법을 사용하여 추정값에 도달하고 결과 값을 조정하십시오. 추정 조정에 대해 알아 보려면 다음 섹션의 분해 기법을 참조하십시오.

  • 계획은 반복적이어야하며 시간이 지남에 따라 조정이 가능하고 자세한 내용이 알려 져야합니다.

일반적인 프로젝트 추정 접근법

널리 사용되는 프로젝트 추정 접근법은 다음과 같습니다. Decomposition Technique. 분해 기술은 분할 및 정복 접근 방식을 취합니다. 크기, 노력 및 비용 추정은 프로젝트를 주요 기능 또는 관련 소프트웨어 엔지니어링 활동으로 분할하여 단계적으로 수행됩니다.

Step 1 − 구축 할 소프트웨어의 범위를 이해합니다.

Step 2 − 소프트웨어 크기 추정치를 생성합니다.

  • 범위 설명으로 시작하십시오.

  • 소프트웨어를 각각 개별적으로 추정 할 수있는 함수로 분해합니다.

  • 각 함수의 크기를 계산하십시오.

  • 기본 생산성 메트릭에 크기 값을 적용하여 노력과 비용 추정치를 도출하십시오.

  • 함수 추정치를 결합하여 전체 프로젝트에 대한 전체 추정치를 생성합니다.

Step 3− 노력과 비용의 추정치를 생성합니다. 프로젝트를 관련 소프트웨어 엔지니어링 활동으로 나누면 노력과 비용 추정치를 얻을 수 있습니다.

  • 프로젝트를 완료하기 위해 수행해야하는 일련의 활동을 식별합니다.

  • 활동을 측정 가능한 작업으로 나눕니다.

  • 각 작업을 완료하는 데 필요한 노력 (직접 시간 / 일)을 추정합니다.

  • 활동에 대한 추정치를 생성하기 위해 활동 작업의 노력 추정치를 결합합니다.

  • 데이터베이스에서 각 활동에 대한 비용 단위 (예 : 비용 / 단위 작업량)를 얻습니다.

  • 각 활동에 대한 총 노력과 비용을 계산합니다.

  • 각 활동에 대한 노력과 비용 견적을 결합하여 전체 프로젝트에 대한 전체 노력과 비용 견적을 산출합니다.

Step 4− 추정치 조정 : 3 단계의 결과 값을 2 단계에서 얻은 값과 비교합니다. 두 추정치 세트가 모두 일치하면 수치의 신뢰성이 높은 것입니다. 그렇지 않고 광범위하게 다른 추정이 발생하면 다음 여부에 대한 추가 조사를 수행하십시오.

  • 프로젝트의 범위가 적절하게 이해되지 않았거나 잘못 해석되었습니다.

  • 기능 및 / 또는 활동 분석이 정확하지 않습니다.

  • 추정 기술에 사용 된 과거 데이터는 응용 프로그램에 부적절하거나 오래되었거나 잘못 적용되었습니다.

Step 5 − 차이의 원인을 파악한 다음 추정치를 조정합니다.

추정 정확도

정확성은 무언가가 현실에 얼마나 가까운지를 나타냅니다. 추정치를 생성 할 때마다 모든 사람들은 수치가 현실에 얼마나 가까운 지 알고 싶어합니다. 생성 당시의 데이터를 고려할 때 모든 추정치는 최대한 정확해야합니다. 물론 숫자에 대한 잘못된 확신을 불러 일으키는 방식으로 추정치를 제시하고 싶지는 않습니다.

추정의 정확성에 영향을 미치는 중요한 요소는 다음과 같습니다.

  • 모든 추정치 입력 데이터의 정확성입니다.

  • 추정 계산의 정확성.

  • 모델을 보정하는 데 사용 된 과거 데이터 또는 산업 데이터가 추정하는 프로젝트와 얼마나 일치하는지.

  • 조직의 소프트웨어 개발 프로세스에 대한 예측 가능성.

  • 제품 요구 사항과 소프트웨어 엔지니어링 노력을 지원하는 환경의 안정성.

  • 실제 프로젝트가 신중하게 계획, 모니터링 및 제어되었는지 여부와 예상치 못한 지연을 초래 한 큰 놀라움이 발생하지 않았습니다.

다음은 신뢰할 수있는 추정치를 얻기위한 몇 가지 지침입니다.

  • 이미 완료된 유사한 프로젝트를 기준으로 추정합니다.
  • 비교적 간단한 분해 기술을 사용하여 프로젝트 비용 및 노력 추정치를 생성합니다.
  • 소프트웨어 비용 및 노력 추정을 위해 하나 이상의 경험적 추정 모델을 사용합니다.

이 장의 추정 지침 섹션을 참조하십시오.

정확성을 보장하려면 항상 최소 두 가지 기술을 사용하여 추정하고 결과를 비교하는 것이 좋습니다.

추정 문제

종종 프로젝트 관리자는 크기를 예측하기 위해 일정을 건너 뛰는 예측에 의존합니다. 이는 최고 경영진이나 마케팅 팀이 정한 일정 때문일 수 있습니다. 그러나 이유가 무엇이든 이것이 수행되면 이후 단계에서 범위 변경을 수용 할 일정을 추정하기가 어려울 것입니다.

추정하는 동안 특정 가정을 할 수 있습니다. 일부는 여전히 추정 시트에 가정을 문서화하지 않기 때문에 이러한 모든 가정을 추정 시트에 기록하는 것이 중요합니다.

좋은 추정치조차도 내재 된 가정, 위험 및 불확실성을 가지고 있지만 종종 정확한 것처럼 취급됩니다.

추정치를 표현하는 가장 좋은 방법은 가능한 결과의 범위를 지정하는 것입니다. 예를 들어 프로젝트가 특정 날짜에 완료되거나 고정 된 번호로 완료 될 것이라고 말하는 대신 5 ~ 7 개월이 소요될 것입니다. 개월. 확정 된 날짜를 지정하는 것과 동일하므로 너무 좁은 범위를 지정하지 않도록주의하십시오.

  • 수반되는 확률 값으로 불확실성을 포함 할 수도 있습니다. 예를 들어, 프로젝트가 정해진 날짜 또는 그 이전에 완료 될 확률이 90 %입니다.

  • 조직은 정확한 프로젝트 데이터를 수집하지 않습니다. 추정의 정확성은 과거 데이터에 따라 다르므로 문제가 될 수 있습니다.

  • 모든 프로젝트에 대해 필요한 기능을 포함하고 품질 출력을 생성 할 수있는 가능한 가장 짧은 일정이 있습니다. 관리 및 / 또는 클라이언트의 일정 제약이있는 경우 제공 할 범위 및 기능에 대해 협상 할 수 있습니다.

  • 일정 초과를 방지하기 위해 범위 크립 처리에 대해 클라이언트와 동의합니다.

  • 최종 추정치에서 우발성을 수용하지 못하면 문제가 발생합니다. 예 : 회의, 조직 행사.

  • 리소스 사용률은 80 % 미만으로 간주해야합니다. 이는 자원이 시간의 80 % 동안 만 생산적이기 때문입니다. 80 % 이상의 사용률로 자원을 할당하면 미끄러짐이 발생할 수 있습니다.

추정 지침

프로젝트를 평가하는 동안 다음 지침을 염두에 두어야합니다.

  • 평가하는 동안 다른 사람들의 경험을 물어보십시오. 또한 자신의 경험을 작업에 넣으십시오.

  • 리소스가 시간의 80 % 만 생산적이라고 가정합니다. 따라서 추정하는 동안 리소스 사용률을 80 % 미만으로 취하십시오.

  • 여러 프로젝트에서 작업하는 리소스는 작업을 전환하는 데 시간이 걸리기 때문에 작업을 완료하는 데 더 오래 걸립니다.

  • 예상치에 관리 시간을 포함하십시오.

  • 문제 해결, 회의 및 기타 예기치 않은 이벤트에 대비하여 항상 우발적 인 상황에 대비하십시오.

  • 적절한 프로젝트 추정을 할 수 있도록 충분한 시간을 허용하십시오. 급한 추정치는 부정확하고 위험성이 높은 추정치입니다. 대규모 개발 프로젝트의 경우 추정 단계는 실제로 미니 프로젝트로 간주되어야합니다.

  • 가능하면 조직의 유사한 과거 프로젝트에서 문서화 된 데이터를 사용하십시오. 가장 정확한 추정치를 얻을 수 있습니다. 조직에서 기록 데이터를 보관하지 않은 경우 지금 수집을 시작하는 것이 좋습니다.

  • 작업을 수행 할 사람이 아닌 다른 사람들이 준비한 추정치가 덜 정확하므로 개발자 기반 추정치를 사용하십시오.

  • 여러 사람을 사용하여 여러 가지 추정 기법을 추정하고 사용합니다.

  • 추정치를 조정하십시오. 추정치 간의 수렴 또는 산포를 관찰하십시오. Convergence는 좋은 추정치를 얻었다는 것을 의미합니다. Wideband-Delphi 기술은 정확하고 편향되지 않은 추정치를 생성하기위한 목적으로 사람들 그룹을 사용하여 추정치를 수집하고 논의하는 데 사용할 수 있습니다.

  • 수명주기 동안 프로젝트를 여러 번 재평가합니다.