하드코딩 기반 시스템의 유지 보수 비용 (Maintenance Cost of Hardcoded Systems)

하드코딩 기반 시스템의 유지 보수 비용 (Maintenance Cost of Hardcoded Systems)

1. 개요

하드코딩 기반 행동 제어 시스템의 유지 보수 비용은 시스템의 규모와 복잡도에 따라 비선형적으로 증가한다. 새로운 행동 추가, 기존 규칙 수정, 환경 변화 적응, 오류 수정 등에 소요되는 비용을 체계적으로 분석한다.

2. 유지 보수 비용의 요소

2.1 규칙 추가 비용

새로운 행동이나 조건을 추가할 때, 기존 규칙과의 상호 작용을 모두 검토하여야 한다. n개의 기존 규칙에 1개의 새 규칙을 추가할 때 검토해야 할 상호 작용 수는 O(n)이다.

2.2 규칙 수정 비용

기존 규칙을 수정하면, 해당 규칙에 의존하는 다른 규칙들이 영향을 받을 수 있다. 의존성 분석과 회귀 테스트가 필요하다.

2.3 오류 수정 비용

규칙 간 충돌이나 누락에 의한 오류를 수정하려면, 전체 규칙 집합의 일관성을 재검증하여야 한다. 복잡한 시스템에서는 한 규칙의 수정이 연쇄적으로 다른 규칙에 영향을 미치는 파급 효과(ripple effect)가 발생한다.

2.4 테스트 비용

모든 조건-행동 조합을 테스트하여야 하므로, 테스트 케이스의 수가 상태 공간에 비례한다. 완전한 테스트 커버리지는 대규모 시스템에서 현실적으로 불가능하다.

3. 비용 증가 모델

3.1 규모에 따른 비용 증가

시스템 규모규칙 수추가 비용/규칙테스트 비용총 유지 보수 비용
소규모~50낮음낮음낮음
중규모~500보통높음높음
대규모~5000높음매우 높음매우 높음

소규모 시스템에서는 유지 보수 비용이 관리 가능하나, 규모가 증가하면 비용이 초선형적(super-linearly)으로 증가한다.

3.2 시간에 따른 기술 부채

규칙의 반복적 수정과 추가는 기술 부채(technical debt)를 축적시킨다. 초기에는 빠르게 기능을 추가할 수 있으나, 시간이 경과함에 따라 수정의 어려움과 위험이 증가한다.

4. 자율 계획의 유지 보수 이점

변경 유형하드코딩 유지 보수자율 계획 유지 보수
새 행동 추가모든 관련 규칙 검토행동 정의 추가 (PDDL 액션)
새 객체 추가관련 규칙 추가도메인에 객체 타입 추가
목표 변경규칙 재설계목표 조건만 변경
환경 변화규칙 수정초기 상태 갱신

자율 계획에서는 도메인 정의(행동의 전제 조건과 효과)만 유지하면 되므로, 유지 보수 비용이 행동 수에 비례하며, 상태 조합 수에 비례하지 않는다.

5. 참고 문헌

  • Ghallab, M., Nau, D., & Traverso, P. (2016). Automated Planning and Acting. Cambridge University Press.
  • Brooks, F. P. (1995). The Mythical Man-Month. Addison-Wesley.

버전날짜변경 사항
v0.12026-04-05초안 작성