“COBOL에서 벗어나는 데 비용이 얼마나 들까?“는 모든 이사회가 가장 먼저 던지는 질문이며, 솔직한 답은 코드베이스의 규모만으로 결정되지 않는다는 것입니다. 이 가이드는 영국에서 COBOL 마이그레이션 비용을 실제로 좌우하는 요소, 현실적인 예산과 일정 범위, 그리고 잘 계획된 프로젝트를 예산 초과로 바꾸는 위험을 분석합니다.
요약(TL;DR)
- 영국의 중간 규모 COBOL 마이그레이션은 일반적으로 200,000 ~ 800,000 파운드가 들고 1~2년이 소요됩니다. 전체 메인프레임 폐기는 수백만 파운드 규모로 수년에 걸칩니다
- 비용은 순수한 코드 줄 수보다 코드베이스의 복잡성, 문서화되지 않은 비즈니스 로직, 데이터 액세스 계층 재설계에 훨씬 더 크게 좌우됩니다
- 대상 언어와 마이그레이션 접근 방식의 선택은 예산을 실질적으로 바꿉니다
- 프로젝트가 초과되는 가장 흔한 이유는 범위의 과소평가이며, 특히 문서화되지 않은 비즈니스 규칙과 데이터 액세스 계층입니다
COBOL 마이그레이션 비용을 실제로 좌우하는 것
코드 줄 수는 표제 숫자이지만 그 자체만으로는 취약한 예측 지표입니다. 진짜 비용 요인은 다음과 같습니다.
규모가 아니라 복잡성. 깔끔한 배치 프로그램으로 이루어진 100,000줄 시스템은 EXEC CICS, 동적 CALL, 복잡한 REDEFINES가 빽빽한 50,000줄 시스템보다 마이그레이션 비용이 저렴합니다. 트랜잭션 처리 시스템은 같은 규모의 배치 시스템보다 비용이 더 듭니다.
문서화되지 않은 비즈니스 로직. COBOL 시스템은 외부 문서 없이 30~40년치 비즈니스 규칙이 코드에 내장되어 있는 경우가 많습니다. 그 규칙을 다시 발견하고 검증하는 작업은 종종 단일 항목으로서 가장 크고 가장 예측하기 어려운 비용 항목입니다.
데이터 액세스 계층. DB2에 대한 EXEC SQL과 VSAM 파일 처리는 자동으로 변환되는 경우가 드뭅니다. 대상 플랫폼의 데이터 액세스 기술 위에 재설계해야 하며, 이는 비즈니스 로직 발견 다음으로 가장 큰 작업 항목인 경우가 많습니다.
데이터 형식 변환. 팩 10진수(COMP-3), EBCDIC 인코딩, 고정 너비 레이아웃은 모두 명시적인 매핑과 실제 데이터를 사용한 테스트가 필요합니다.
대상 언어와 접근 방식. 이들은 예측 가능한 방식으로 예산을 움직입니다(아래에서 다룹니다).
테스트와 컷오버. 출력 동등성을 입증하는 회귀 테스트 스위트를 구축하고, 롤백을 갖춘 안전한 컷오버를 수행하는 것은, 경험이 부족한 견적이 누락하는 실질적이고 결코 사소하지 않은 작업량입니다.
참고용 비용 및 일정 범위(영국)
이 범위는 분석, 마이그레이션, 테스트, 가동 지원을 포함합니다. 지속적인 운영 비용, 교육, 프로젝트 중반에 자주 드러나는 다운스트림 통합 작업은 제외합니다.
| 시스템 규모 | 접근 방식 | 예상 비용 | 일반적 일정 |
|---|---|---|---|
| 소규모(50,000줄 미만) | 병렬 재작성 | 80,000 ~ 200,000 파운드 | 3 ~ 9개월 |
| 중규모(50,000 ~ 500,000줄) | Strangler fig | 200,000 ~ 800,000 파운드 | 12 ~ 24개월 |
| 대규모(500,000줄 이상) | 자동화 + 점진적 리팩터링 | 500,000 ~ 2,000,000 파운드 이상 | 2 ~ 4년 |
| 레거시 메인프레임 폐기 | 전체 프로그램 | 1,000,000 ~ 10,000,000 파운드 이상 | 3 ~ 5년 이상 |
이는 견적이 아니라 계획용 범위로 취급하십시오. 제대로 된 견적에는 코드 평가가 필요하며, 각 구간 내의 편차는 위의 복잡성 요인에 의해 결정됩니다.
대상 언어가 비용에 미치는 영향
대상 언어는 작업 프로필과 장기 소유 비용을 모두 바꿉니다. 대략적으로 말하면 다음과 같습니다.
- Python 은 COBOL의 절차적 스타일에 자연스럽게 대응하며 개발자 풀이 가장 크므로, 변환 비용과 장기 유지보수 비용을 낮추는 경향이 있습니다.
- C# 는 이미 .NET 및 Azure 스택을 사용하는 조직에 효율적이며, 네이티브
decimal타입이 금융 정밀도를 올바르게 맞추는 노력을 줄여줍니다. - Java 는 JVM 기반 기업에 적합합니다.
BigDecimal은 정밀도를 올바르게 처리하지만 다소 장황함을 더합니다. - Go 는 빌드와 배포가 효율적이지만, 네이티브 10진수 타입이 없어 금융 필드에 대한 검토 노력이 늘어납니다.
- Rust 는 소유권 모델이 사전 설계 노력을 더하기 때문에 어느 규모 구간에서든 상단에 가까워지는 경향이 있습니다.
COBOL 마이그레이션 개요 는 선택에 도움이 되도록 여섯 개의 대상 언어를 나란히 비교합니다.
마이그레이션 접근 방식이 비용에 미치는 영향
- 자동 변환 은 기계적 번역 노력을 줄이지만 결코 완성된 시스템을 만들어내지 못합니다. 도구가 표시하는 수작업(내장 SQL, CICS, 동적 호출, 10진 정밀도)을 위한 예산을 확보하십시오.
- 병렬 재작성 은 두 시스템이 동시에 가동되므로 전환 기간 동안 운영 비용을 대략 두 배로 늘리지만, 연속성 위험을 최소화합니다. 소규모의 미션 크리티컬 시스템에 적합합니다.
- 점진적(strangler fig ) 은 더 긴 하이브리드 기간을 대가로 비용을 시간에 걸쳐 분산하고 빅뱅 위험을 줄입니다. 영국의 대규모 엔터프라이즈 시스템에서 가장 흔한 접근 방식입니다.
대부분의 실제 프로젝트는 자동 변환과 점진적 롤아웃을 결합합니다.
예산 초과를 일으키는 위험
마이그레이션은 예측 가능한 이유로 초과됩니다. 대표적인 다섯 가지는 다음과 같습니다.
- 과소평가된 비즈니스 로직 발견. 규칙은 문서가 아니라 코드 안에 있습니다. 명시적인 발견 시간을 예산에 넣으십시오.
- 데이터 액세스 재설계. DB2와 VSAM 액세스는 자동으로 이식되지 않습니다. 별도의 작업 스트림으로 취급하십시오.
- 부적절한 회귀 테스트. 실제 데이터에 대한 출력 동등성 테스트 없이는 마이그레이션이 올바른지 입증할 수 없습니다. 마이그레이션을 시작하기 전에 테스트 스위트를 구축하십시오.
- 10진 정밀도 오류. 부동 소수점 타입에 매핑된 금융 필드는 조용히 금액을 손상시킵니다. 대상 언어의 올바른 10진 타입에 매핑하십시오.
- 컷오버 실패. 프로덕션으로의 전환은 가장 위험이 큰 순간입니다. 롤백과 대사(reconciliation)를 갖춘 상세한 컷오버 계획은 필수입니다.
정확한 견적을 얻는 방법
신뢰할 수 있는 숫자는 코드 줄 수가 아니라 코드 평가에서 나옵니다. 좋은 평가는 프로그램과 카피북을 목록화하고, EXEC SQL / EXEC CICS / 동적 호출 핫스팟을 식별하며, 비즈니스 로직 밀도를 측정하고, 데이터 액세스 표면을 매핑합니다. Mecanik COBOL 마이그레이션 서비스
는 영국 기업 대상 평가와 풀서비스 마이그레이션을 제공합니다. IBM z/OS 상의 메인프레임 자산에 대해서는 레거시 메인프레임 마이그레이션 서비스
가 코드와 함께 인프라 폐기를 담당합니다.
핵심 요점
- 영국의 중간 규모 COBOL 마이그레이션은 일반적으로 1~2년에 걸쳐 200,000 ~ 800,000 파운드가 듭니다. 메인프레임 폐기는 수백만 파운드 규모입니다.
- 복잡성, 문서화되지 않은 비즈니스 로직, 데이터 액세스 재설계가 코드 줄 수보다 비용을 훨씬 더 좌우합니다.
- 대상 언어와 마이그레이션 접근 방식은 모두 예측 가능한 방식으로 예산을 움직입니다.
- 초과는 발견, 테스트, 컷오버의 과소평가에서 비롯됩니다. 제대로 된 코드 평가가 견적의 유일하게 신뢰할 수 있는 근거입니다.
자주 묻는 질문(FAQ)
영국에서 COBOL 마이그레이션 비용은 얼마입니까? 소규모 시스템은 일반적으로 80,000 ~ 200,000 파운드, 중간 규모 시스템은 200,000 ~ 800,000 파운드, 대규모 시스템은 500,000 파운드 이상입니다. 전체 메인프레임 폐기 프로그램은 1,000,000 파운드에서 수천만 파운드에 이릅니다. 범위 내 위치를 정하는 것은 코드 줄 수가 아니라 복잡성입니다.
COBOL 마이그레이션은 얼마나 걸립니까? 소규모이고 문서화가 잘 된 시스템은 3~9개월이 걸립니다. 중간 규모 엔터프라이즈 시스템은 12~24개월이 소요됩니다. 대규모 메인프레임 프로그램은 완전 폐기까지 3~5년 이상 걸립니다.
COBOL 마이그레이션 비용은 왜 이렇게 크게 달라집니까? 복잡성이 엄청나게 다르기 때문입니다. 문서화되지 않은 비즈니스 로직, 내장 SQL과 CICS, 데이터 형식 변환, 대상 언어, 마이그레이션 접근 방식이 모두 비용을 움직입니다. 같은 줄 수의 두 시스템이 한 자릿수 규모로 차이 날 수 있습니다.
자동 변환은 비용을 줄여줍니까? 기계적 번역 노력을 줄이지만, 완성된 시스템을 만들어내는 도구는 없습니다. 도구가 수작업으로 표시하는 데이터 액세스 계층, 10진 정밀도 결정, 테스트, 컷오버에 대한 예산은 여전히 필요합니다.
COBOL 마이그레이션 초과의 가장 큰 원인은 무엇입니까? 범위의 과소평가, 특히 문서화되지 않은 비즈니스 로직과 데이터 액세스 재설계입니다. 마이그레이션을 시작하기 전에 출력 동등성을 위한 회귀 테스트 스위트를 구축하는 것이 그 위험을 통제하는 가장 효과적인 방법입니다.
댓글