초록
소프트웨어 복잡도가 증가할수록 소프트웨어 성공률은 기하급수적으로 감소하며, 반대로 실패율은 증가한다. 소프트웨어 규모 증가에 따른 실패율은 성장곡선으로 표현할 수 있다. 이 현상에 따라, 본 논문은 Gompertz 성장곡선으로 개발 성공률과 완료율을 추정하였다. 먼저, 수치적으로 제시된 $10^n$의 소프트웨어 규모를 로그값으로 변환시켜 데이터 간격을 일정하게 하였다 로그값의 소프트웨어 규모 변화에 따른 개발 성공률과 완료율의 함수관계를 유도하고자 하였다. 그러나 이 관계를 적절히 표현하는 함수를 찾지 못하였다. 따라서 본 논문에서는 개발 성공률의 역 개념인 실패율과 완료율의 역 개념인 취소율을 도입하였다. 로그값의 소프트웨어 규모 변화에 따른 개발 실패율과 취소율 관계는 성장곡선 형태를 나타내었다. 결론적으로, 개발 취소율과 실패율을 적절히 표현하는 함수로 Gompertz 성장곡선을 적용한 결과 실측 데이터를 적절히 표현할 수 있었다. 본 모델을 적용하면 특정 규모의 소프트웨어에 대한 개발 성공률과 완료율을 보다 정확히 얻을 수 있을 것이다.
As the software complexity increases, the development success rate decreases and failure rate increases exponentially. The failure rate related to the software size can be described by a growth function. Based on this phenomenon, this paper estimates the development success and completion rate using the Gompertz growth function. At first, we transformed a software size of numerically suggested $10^n$ into a logarithm and kept the data interval constantly. We tried to derive a functional relationship between the development success rate and the completion rate according to the change of logarithmic software size. However, we could not find a function which can represent this relationship. Therefore, we introduced the failure rate and the cancel rate which are inverse to the development success rate and completion rate, respectively. Then, we indicated the relation between development failure rate and cancel rate based on the change of software size, as a type of growth function. Finally, as we made the Gompertz growth function with the function which describes the cancel rate and the failure rate properly. We could express the actual data suitably. When you apply the growth function model that I suggested, you will be able to get the success rate and completion rate of particular site of software very accurately.