Estimation

최완식·2023년 6월 15일
0

Clean Coder

목록 보기
10/14
post-thumbnail

우리가 가장 못하는 행위인 추정에 대해 알아보자.

추정

  • 가장 단순하면서도 가장 두려운 행위다.
  • 큰 사업가치가 추정에 따라 좌지우지된다.
  • 사업부와 개발자를 벌어지게 만드는 제 1요소이다.
  • 불신감의 원인은 대부분 추정이다.
  • 저자는 자신이 잘못된 추정을 하고 만취에서 울었던 경험을 공유한다.

추정이란 무엇인가?

  • 문제는 추정을 다른 방향에서 바라본다는 것이다.
  • 사업부: 약속
  • 개발자: 어림짐작

약속

  • 약속은 꼭 지켜야 한다.
  • 특정 날짜까지 해내겠다고 했다면 끝내야 한다.
  • 프로는 달성할 수 있는 사실을 알지 못하면 약속하지 않는다.
  • 내 약속에 기반해 다른 사람들은 계획을 짠다.

추정하기

  • 추정은 어림짐작이다.
  • 추정이 빗나가는 일은 불명예가 아니다.
  • 추정에는 특별한 기술이 없다.
  • 추정은 확률 분포다.

엉겹결에 해버린 약속

  • 3일에 할 확률이 높다고 했다.
  • 최악의 6, 7일도 걸릴 수 있다 했다.
  • 여기서 사업부는 그럼 6일까지는 넘지지 않게 노력해줄 수 있냐고 한다.
  • 이는 곧 6일의 약속을 해달라는 말이다.

업무 추정

  • 추정에 사용하는 자원 중 가장 중요한 자원은 주변 사람들이다.
  • 내가 못보는 것을 볼 수 있기 때문이다.

광대역 델파이

날아다니는 손가락

  • 모두가 앉는다.
  • 한번에 하나의 업무에 대해서 토론한다.
  • 참석자들은 업무에 소요될 시간에 대해 0-5까지 숫자를 정한다.
  • 해당 숫자가 일치하면 다음으로 넘어간다.
  • 그렇지 않으면 계속 반복한다. (?)
  • 3, 4 정도면 합의지만, 4, 1의 경우 이야기가 필요하다.

플래닝 포커

  • 날라다니느 손가락과 비슷하다.
  • 다만 카드를 사용한다는 점만 다르다.
  • 해당 카드 구성은 0-5가 아닌 피보나치 수열을 사용하는 경우도 있다.

관계 추정

  • 업무 카드를 모두 둔다.
  • 추정 시간 (1, 2, 3, 5, 8...)이 표형태로 화이트 보드에 적혀있다.
  • 참여자들은 카드를 해당 시간 앞으로 옮긴다.
  • 다른 참여자들은 표 위에 올려진 카드를 보고, 추정이 잘못되었다 생각되면 옮겨도 무방하다.
  • n회 이상 옮겨진 카드의 경우 토론을 위해 옆으로 빼둔다.
  • 일정 시간이 지난 후 토론을 시작한다.

큰 수의 법칙

  • 추정에는 오류가 가득하다.
  • 그렇기에 이를 작은 업무로 쪼개고 최종적으로 큰 업무의 추정값을 구하면 보다 정확해진다.

결론

  • 프로 개발자는 사업부가 계획을 짜는 데 쓰도록 실용적인 추정값을 전달해야 한다.
  • 지킬 수 없는 약속은 하지 않는다.
  • 약속을 할 때는 확실한 숫자를 제공하고 이를 지킨다.
  • 추정은 동료들과 함께 한다.

Reference

profile
Goal, Plan, Execute.

0개의 댓글