Part III 프로세스
CHAPTER 15 폐기
모든 시스템은 나이를 먹습니다.
소프트웨어는 디지털 자산이라서 물리적인 비트들 자체가 늙지 않는다.
이주를 순차적으로 시켜서 낡은 시스템을 완전히 걷어내는 과정은 폐기라 한다
폐기시키는 이유
기본전재는 코드는 자산이 아니라 부채다 라는 기본 전재에서 시작함
코드가 부채가 아니라 자산이면 폐기 시킬이유가 어디 있을까?
코드는 자체는 가치를 창출하지 않는다 가치를 만들어내는 건 바로 기능
사용자 요구사항에 부합하는 기능은 자산이다
폐기대상을 신중하게 선택한 다음 집중해서 빠르게 완료하는게 중요
폐기는 왜 그리 어려운가?
하이럼의 법칙에 의해 시스템은 사용자 수가 늘수록 설계자가 예상하지 못한 전에 본 적 없는 방식으로 이용될 가능성이 높음
되니깐 쓰는 기능과 함께 이를 잘 활용하던 수많은 사용자까지 한꺼번에 떼어내어버린다
옛시스템에 대한 애착이 의외의 저항이 될수 도 있다
정치라는 관문도 통과 신기능 개발이 지연된다면 폐기시키는 편이 오히려 이득임을 이해관계자들에게 납득시키기가 더욱 어렵다
- 설계 단계에서의 폐기
- 내 제품의 고객이 잠재적인 대체품으로 이주하기가 얼마나 쉬울까?
- 내 시스템을 한 부분씩 점진적으로 교체하려면 어떻게 해야 할까?