[유머] 왜 소프트웨어 개발은 예상보다 2~3배 더 오래 걸리는가?
Quora에 올라온 답변을 번역 및 재구성한 글입니다.
해운대에 사는 친구를 만나러 갈 겸 속초에서 부산까지 도보 여행을 가기로 했다. 지도를 켜서 동해안을 따라 길을 그려봤다.
대략 400km 정도다. 한시간에 4km를 걷는다고 했을때 총 100시간이 걸리고, 하루에 10시간 정도 걸을 수 있으니 총 10일이 걸릴 것으로 예상한다. 지도에도 이렇게 나오니 더욱 자신있게 친구한테 전화해서 다음주 일요일 밤에 도착할 예정이니 해운대 최고의 횟집을 예약해놓으라고 한다. 너무 기대된다!
흥미진진한 여행을 기대하며 다음날 일찍 일어났다. 동행하는 친구와 함께 가방을 메고 나섰다. 첫 날의 종착지를 정하기 위해 지도를 꺼냈다. 앗..
동해안이라고 방심했는데 자세히보니 해안선이 생각보다 엄청 구불구불하다. 하루에 40km를 가야하는데 이대로라면 겨우 양양까지 밖에 못갈거 같다. 400km가 아니라 500km짜리 여행이 될 것 같다. 친구한테 다시 전화해서 저녁 약속을 화요일로 미룬다. 일정은 현실적으로 잡아야하니까. 친구는 잠깐 실망하지만 오랜만에 만날 생각에 들떠있다. 속초에서 부산까지 12일이면 여전히 나쁘지 않다.
일정의 부담을 덜고나서 드디어 여행을 시작한다. 두시간이 지나 이제 겨우 속초 시내를 벗어났는데 이게 무슨 일이야? 눈 앞에 펼쳐진 길을 보고 놀란다.
한시간에 4km를 꾸준히 걷는 것이 힘들다는걸 깨닫는다. 모래 사장, 바다, 계단, 곶과 만이 즐비하다. 한시간에 2km 밖에 걷지 못하고 있다. 지금 속도대로 라면 하루에 20시간 걷던가, 친구와의 약속을 일주일 더 미뤄야할 판이다. 그래, 적당히 타협을 하자. 하루에 12시간 걷는 대신 친구와 약속은 주말로 미루기로 한다. 친구는 조금 짜증을 냈지만, 어쩔수 없지. 그때 보기로 한다.
힘들게 12시간을 걸은 후 주문진의 한 해수욕장에 야영하기로 한다. 젠장, 바람이 너무 많이 불어서 텐트를 치는게 너무 어렵다. 결국 자정이 다 돼서야 겨우 잠에 든다. 이정도 쯤이야. 심기일전하여 내일 속도를 높여보기로 한다.
늦잠을 자버리고 온몸이 욱씬 거리는 상태로 오전 10시에 일어난다. 🤬 18! 오늘 12시간을 걷는건 무리다. 오늘 10시간 걷고 내일 14시간을 걷자. 짐을 싸서 출발한다.
묵묵히 두어 시간을 걸었을까, 친구가 절뚝거리기 시작했다. 제길, 물집이 잡혔다. 지금 물집을 해결하고 가야한다. 우리는 문제가 더 커지기 전에 싹을 제거하는 팀이니까. 45분 동안 내륙에 있는 시내까지 달려 약국에서 연고와 밴드를 사서 돌아온 후 친구를 응급처치 해준다. 나는 벌써 기진맥진하고, 해는 지고 있다. 오늘은 여기서 마무리하기로 한다. 오늘은 6km만 걸은 채로 잠을 청한다. 하지만 오늘 기력을 회복했으니 앞으로 괜찮을거다. 오늘 못한건 내일 메꾸자.
다음날 일어나서 발바닥에 붕대를 감고 다시 길에 오른다. 길목을 돌아서니 장관이 펼쳐진다. 아니 이게 뭐지?
망할, 지도에는 이런게 안나왔다. 하는 수 없이 내륙으로 3km 들어가 철조망이 쳐진 산 속 군 부대를 빙 둘러가다가 길을 두번 잃고 다시 해안가로 돌아오니 정오가 다 됐다. 고작 1km 전진했는데 하루의 절반이 지나 갔다. 약속 날짜를 또 미룰순 없다. 결국 계획대로 가기 위해 자정까지 걷는다.
춥고 안개 낀 날씨에 밤잠을 설친 친구는 아침부터 깨질듯한 두통과 고열에 시달린다. 여행할 채비를 할 수 있느냐 친구에게 묻는다. ‘제정신이냐 미친놈아. 3일 동안 쉬지도 못하고 추위를 참아가며 걸었는데!’ 오늘은 쉬면서 회복하는 수 밖에 없다. 하루 쉬었으니 내일부터는 하루에 14시간씩 걸을 체력이 있겠지. 몇 일만 하면 되니까 힘내자! 할 수 있다!
다음날 축 처진 채로 일어나 지도를 본다.
이럴수가, 열흘짜리 여행에 5일차 아침인데 아직 강원도도 못 벗어났다! 터무니 없는 상황이다. 다시 한번 정확히 일정을 산정해보자. 친구한테 욕 좀 더 먹겠지만 진짜 마지막으로 현실적인 목표를 세워보자.
친구가 말하길, “나흘 동안 40km를 왔는데 해운대까지 최소 600km인거 같으니 최소 60일이고, 좀 더 보수적으로 잡으면 70일 정도일거 같다.” 나는 말했다. “그럴리가 없다. 나도 직접 해본적은 없지만 속초에서 해운대까지 70일이 걸리는건 진짜 말이 안된다. 기다리고 있는 친구한테 추석 쯤 도착한다고 하면 비웃겠지!””
내가 이어 말했다. “하루에 16시간 걷기로 다짐하면 해낼수 있다! 힘들겠지만 이제부터 크런치 모드다. 참고 받아들여!” 친구가 맞받아친다. “친구한테 일요일까지 도착하겠다고 한건 너야 인마! 너가 실수한거 때문에 내가 죽게 생겼어!”
우리 사이에 긴장감 가득찬 침묵이 지속된다. 차마 해운대 사는 친구에게 전화를 하지 못했다. 이성을 찾은 친구가 좀 더 합리적인 계획에 동의를 하고 나면 내일쯤 전화를 해봐야겠다.
다음날 아침, 우리는 비바람이 그칠 때까지 텐트에 머문다. 짐을 챙겨 오전 10시에 길을 나선다. 근육통과 새로 생긴 물집을 참아가며. 누구도 어제 밤의 말다툼은 언급하지 않는다. 그러다가 멍청이 친구가 물병을 놓고 오는 바람에 다시 30분을 왔던 길로 돌아가게 되자 정신줄을 놓고 윽박지른다.
휴지가 다 떨어져서 다음 들르는 동네에서는 잊지 않고 구매해야한다고 할일 목록에 적어 논다. 골짜기를 넘어가니 장마로 불어난 강이 육교를 집어삼켰다. 순간 참을 수 없는 설사가 밀려오는걸 느낀다…
Tags: software development estimation