5 Whys
-
문제가 발생하면 근본 원인 찾아라.Programmer/Programming 2017. 3. 6. 22:10
문제가 발생하면 근본 원인 찾아라. 근본 원인을 찾지 않고 성급하게 해결하는 것은 나쁘다.대표적인 사례가 핵(hack)이다. 핵은 원인을 고치지 않고 드러나는 문제만을 처리한다. 근본 원인 파악 없이 방어 코드로 해결한다. [표면적인 문제만 해결하려는 우리들의 모습] 자동차의 시동을 두세번 시도해야 비로서 작동하는 문제가 있다고 가정해보자. 핵를 쓰는 엔지니어는 시동 걸릴 때까지 자동으로 반복해주는 기능을 추가한다. 여러 가능성이 있는 원인을 조사하지 않고 표면적인 문제만을 처리하였다.그러나, 이러한 방식은 문제를 감추었을 뿐 근본이 해결되었는지 알 수 없다. 숨겨진 문제가 언제 드러날지 누구도 알 수 없다. 게다가, 이렇게 원인이 해결 안 된 문제들이 숨겨지면서 누적된다는 것이 더 심각하다. 시동이 잘..
-
5 WhysLeader/Developer Leading 2012. 12. 20. 11:01
가능성 있는 원인의 진짜 원인을 찾아가는 과정이다. 원인의 원인을 5회 반복하면서 찾아간다. 첫번째 문제에 대한 원인을 생각한다. 이 원인의 원인을 찾아간다. 물론 이 방법을 10회, 20회 반복해도 되지만, 5회면 충분하다고 한다. 이와 같은 방법을 사용하면 드러나지 않은 가정이나 논리적인 함정을 피할 수 있다. 5번째 (또는 마지막) 원인을 찾았으면, 이것이 해결이 가능한지 조사한다. 해결할 수 없으면 다른 대안을 찾는다. 예를 들어보자. 문제 데몬이 기동되지 않는다. 해결 과정 왜? - 데몬의 설정 파일을 열지 못한다. 왜? - 설정 파일의 스토리지가 마운트되지 못한다. 왜? - 해당 스토리지가 깨졌다. 왜? - 해당 스토리지가 노후되었다. 즉, 보증 기간이 지났다. 왜? - 해당 스토리지의 보증 ..