더북(TheBook)

1.3 기술 부채가 미치는 영향

소프트웨어 실무자가 기술 부채를 인지하고 통제하에 두는 것이 왜 중요할까? 이를 이해하려면 기술 부채의 구성 요소부터 살펴봐야 한다. 기술 부채는 원금(꼼수나 지름길)에서 비롯되며, 이를 상환하지 않으면 이자가 누적된다. 이자는 원래 복리로 불어나기 때문에 무시하거나 뒤로 미루면 시간이 지날수록 부채만 늘어난다. 따라서 기술 부채를 심각한 문제로 만드는 장본인은 이자다.

그렇다면 기술 부채에서 왜 이자는 복리일까? 주된 이유인 소프트웨어에 가해지는 새로운 변경이 부채에 허덕이는 설계 구조와 뒤섞여 향후 부채를 늘리기 때문이다. 게다가 부채를 상환하지 않고 그대로 두면 변경하는 동안 개발자가 ‘꼼수’를 부리도록 유혹하거나 심지어 강요까지 하므로 부채 상태는 더욱 악화된다.

짐 하이스미스[45]는 변경 비용CoC, Cost of Change이 기술 부채에 따라 달라지는 추이를 기술했다. 제대로 유지되는 시스템의 실제 변경 비용은 거의 최적에 가깝다. 하지만 기술 부채가 늘어나면서 실제 변경 비용 역시도 늘어난다. 앞서 언급했듯이 극단적인 경우에는 변경 비용이 기하급수적으로 늘어나 ‘기술 파산’으로 치닫는다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.