더북(TheBook)

소프트웨어 제품을 개발하는 중간 규모 조직의 사례로 설계 부채를 이해해 보자. 조직은 다른 조직과 경쟁하려고 시장에 더 빨리, 더 저렴하게 새로운 제품을 출시하기로 한다. 조직의 이런 결정이 소프트웨어 개발 프로세스에는 어떤 영향을 미칠까? 조직의 소프트웨어 개발자도 역시 더 빨리 기능을 구현해야만 한다. 이런 상황에서 개발자는 설계 결정의 영향을 적절히 평가할 만한 시간이 없다. 결국 시간이 지나면서 개별적이고 한정된 설계 결정의 집합이 해당 소프트웨어 제품의 구조적 품질을 떨어뜨려 설계 부채를 축적하는 데 영향을 미친다.

제품을 한 번만 개발하여 유지보수를 할 필요가 없다면 구조적 품질은 문제되지 않을 것이다. 하지만 대다수 제품은 오랫동안 시장에 존재하므로 개발과 유지보수 기간이 길다. 이때 형편없는 소프트웨어의 구조적 품질은 소프트웨어를 이해하고 유지보수 하는 데 시간과 노력만 가중시킨다. 이는 궁극적으로 조직에 손해를 입힌다. 그렇기에 조직이 소프트웨어의 구조적 품질을 감시하고 문제를 해소하는 일은 매우 중요하다. 소프트웨어에서 현재의 구조적 품질 문제를 해소하려고 미래에 투자하는 작업이 있는데, 대상은 바로 설계 부채다.

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