2004년 12월 3일 금요일

소방관과 프로그래머(개발자 or 시스템 관리자)

소방관과 프로그래머(개발자 or 시스템 관리자)


"왜 일정 내에 끝내지 못했죠?"
"그런 비정상적인 일은 왜 일어나는 거예요?"
"일이 왜 진행 안되죠? 일이 오히려 늘어났잖아요."


소방관과 프로그래머의 비슷한 점은 유지보수시에 스케쥴링이 어렵다는 것이다.
자신의 관할 구역에서 언제 불이 날지는 신만이 아는 것이니까.
프로그래머도 마찬가지다. 언제 어디서 문제가 튀어나올지 모른다.
멀쩡하던 프로그램이 죽고, 서버가 죽는 것은 정말 신의 뜻이다.


"그래서 도대체 언제 완성됩니까?"
소방관은 과연 언제 불을 다 끌 수 있을 까?
화재의 규모에 따라 대충 시간을 정할 수 있지만
의외의 곳에 폭발물이 숨어있거나, 불씨가 남아있다면 더 오래 걸릴 수도 있다.
프로그래머도 항상 작업을 하다보면 지뢰를 밟곤한다.


화재예방교육과 캠페인, 화재 규약에 맞는 건물 설계 등으로 사고를 줄일 수 있는 것처럼 프로그래머도 잘된 설계와 방어적 구현, QA 등을 통해 예측 불가능한 상황을 줄일 수 있다.

댓글 없음:

댓글 쓰기