khb7840 / estimate_deadline

Personal TDD practice

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

estimate_deadline

Inspired by "The Clean Coder - A Code of Conduct for Professional Programmers, Robert C. Martin"

The object of this script is to estimate the deadline for a task (or a project) with trivariate input:

  1. "O" for most optimistic case
  2. "M" for most likely case
  3. "P" for most pessimisitic case

about PERT

Usage with source code:

#the input lengths for "o", "m", and "p" should be same
go run estimate_deadline.go -o 1,2,3 -m 2,5,7 -p 4,9,12

Output

mean and standard deviation for individual tasks & all tasks

Formula

mu = (O + 4 * M + P) / 6
std = (P - O) / 6
total_mu = sum(mu)
total_std = math.sqrt(sum(std ** 2))

Beta distribution is presumed in this formula which makes sense because the minimum duration is often more certain than the maximum.

Note

This project is one of personal practices for Test-Driven Development.

Author: Hyunbin Kim (khb7840@gmail.com)
Last edited: 2020-07-24 09:23:58

About

Personal TDD practice


Languages

Language:Go 100.0%