RPG 현대화란 무엇인가요?

By David Zax

RPG 현대화의 정의

RPG 현대화란, IBM의 미드레인지 컴퓨터에서 실행되는 노후화된 업무용 소프트웨어', 즉 RPG(Report Program Generator) 언어로 작성된 프로그램을 업데이트하여, 기존 코드를 폐기하고 처음부터 다시 시작하지 않고도 최신 시스템과 연동할 수 있게 하고, 점점 줄어드는 프로그래머 인력 상황에서도 지속적으로 운영될 수 있도록 하는 작업을 말합니다.

이러한 애플리케이션은 원래 AS/400 플랫폼에서 실행되었던 OS/400 운영 체제의 후속 버전인 IBM® i에서 실행됩니다.

RPG를 현대화하려면 사용자 인터페이스 업데이트, 코드 정리, 최신 언어로 변환, API를 통해 다른 소프트웨어에 연결, 클라우드로 이동 등의 작업을 수행해야 합니다. 어떤 접근 방식을 취하든 궁극적인 목표는 여전히 작동하는 소프트웨어를 보존하면서 최신 상태로 유지하는 것입니다. 이러한 작업은 애플리케이션 현대화레거시 코드 마이그레이션이라는 더 넓은 범주에 속합니다.

RPG란 무엇인가요?

RPG는 여전히 일상적으로 사용되는 가장 오래된 프로그래밍 언어 중 하나입니다. IBM은 1959년 IBM® 1401 컴퓨터를 위해 RPG를 개발했는데, 당시 펀치카드 처리 방식을 대체하고 비즈니스 보고서를 생성하는 데 사용되었습니다. 저자 Nick Litten이 저서 'A Brief History of the IBM RPG Programming Language'에서 설명했듯이, 이것이 RPG라는 이름의 유래입니다. RPG는 수십 년 동안 은행, 보험사, 제조업체 및 소매업체의 급여, 재고 및 인보이스 발행을 처리해 왔습니다.

이 언어는 수년에 걸쳐 발전해 왔습니다. 1960년대와 1970년대 버전인 RPG II는 프로그래머가 고정된 열에 코드를 입력하고 내장된 처리 루프에 의존하는 등 다소 엄격했습니다. 1979년 System/38과 함께 도입된 RPG III에는 프로그래머가 기대했던 조건부 테스트, 루프 및 재사용 가능한 서브루틴과 같은 구조화된 빌딩 블록이 추가되었습니다. Wikipedia에 따르면 IBM은 1988년 AS/400이 출시될 때 이를 RPG/400으로 리브랜딩했습니다.

1990년대 중반에 출시된 RPG IV는 IBM i 시스템에서 사용되는 최신 버전의 RPG입니다. RPG IV는 IBM의 Integrated Language Environment의 일부가 되었으며, 이를 통해 RPG가 COBOL 및 C와 같은 다른 비즈니스 언어와 함께 더 쉽게 작동할 수 있게 되었습니다. 그 이후로 IBM은 RPG를 기존의 엄격한 열 기반 형식에서 벗어나 꾸준히 현대화해 왔습니다. RPGLE 또는 ILE RPG라고도 불리는 오늘날의 RPG는 수십 년 전의 RPG보다 훨씬 더 평범한 현대식 코드처럼 보이는 자유 형식 스타일로 작성할 수 있습니다.

RPG 현대화에 대한 접근 방식

'현대 RPG'란 정확히 무엇일까요? RPG 애플리케이션 현대화 작업(종종 IBM i 현대화라는 광범위한기치 아래 그룹화되는 작업)은 외관적일 수도 있고 심층적일 수도 있습니다.

외관적인 측면에서는 사용자 인터페이스를 현대화합니다. 즉 텍스트 전용 '그린 스크린'(기존 IBM i 애플리케이션의 녹색 바탕에 검은색 터미널 디스플레이)을 웹 또는 모바일 인터페이스로 교체하고 기본 로직은 그대로 유지합니다. 이는 종종 가장 빠르고 눈에 띄는 개선 사항입니다. 비슷한 접근 방식은 RPG를 그대로 유지하면서 비즈니스 로직을 웹 서비스, 즉 최신 애플리케이션이 이전 코드의 기능과 데이터를 호출할 수 있도록 하는 API로 래핑하는 것입니다.

더 심층적인 접근 방식은 코드 리팩터링입니다. Litten에 따르면 고정 형식 RPG를 자유 형식으로 변환하고, 대규모 프로그램을 더 작은 모듈로 나누고, 오래된 데이터베이스 정의를 SQL로 대체하여 코드의 기능을 변경하지 않고 코드 구조를 개선합니다. IBM의 AI 코딩 에이전트인 IBM® Bob은 이 작업을 지원하기 위해 IBM i 관련 지식을 통해 확장할 수 있습니다.

지금 수행해야 하는 이유: 기술 절벽

이 작업이 시급해진 가장 중요한 이유는 기술 관련 문제라기보다는 사람 관련 문제이기 때문입니다. 이러한 시스템을 구축한 프로그래머는 은퇴하고 있으며, RPG는 대학에서 가르치는 경우가 거의 없어 대체 코더의 공급이 줄어들고 있습니다. ASNA의 한 소식통에 따르면, 'RPG 프로그래밍은 사라져가는 기술이며, 2025년에는 RPG 프로그래머의 평균 연령이 70세가 될 것'이라고 합니다. Fortra의 2026년 IBM i 마켓플레이스 설문조사에 따르면, 320명의 응답자 대부분이 IBM i 기술 부족을 업계의 최우선 관심사로 꼽았으며, 이는 9년 만에 처음 있는 일로 사이버 보안 문제를 제치고 주요 관심사로 떠올랐습니다.

IBM 기업가치연구소(IBV)2023년 연구에 따르면, 애플리케이션 현대화에 대한 산업 전반의 연구에 따르면, 경영진의 83%가 애플리케이션과 데이터 현대화를 전략의 핵심이라고 평가한 반면, 필요한 많은 시스템을 실제로 현대화했다고 답한 사람은 27%에 불과했습니다. 많은 기업에서 이러한 애플리케이션의 미래를 보장하는 것이 디지털 혁신의 핵심 부분이 되었습니다.

AI 아카데미

애플리케이션 현대화에 AI 활용

생성형 AI로 생산성을 높이고 규정 준수 위험을 줄이며 업데이트를 간소화하여 애플리케이션 현대화 여정을 혁신하는 방법에 대해 알아보세요.

AI 도구가 RPG 현대화에 도움이 될 수 있나요?

RPG 현대화를 수행하는 소규모 산업이 존재합니다. 예를 들어, Fresche Solutions는 기존 프로그램들이 서로 연결되는 방식을 파악하고 숨겨진 비즈니스 규칙을 추출하는 도구인 X-Analysis를 개발합니다. Profound Logic은 웹 지원 RPG와 Node.js로의 자동화된 코드 변환에 중점을 두고 있으며, IT Jungle에 따르면 2019년 Idera에 인수된 LANSA는 RPG와 공존하는 새로운 애플리케이션을 구축하기 위한 로우코드 도구를 제공합니다. IBM은 또한 널리 사용되는 VS 코드 편집기를 확장을 통해 RPG 워크벤치로 바꾸는 인기 있는 오픈 소스 확장 프로그램인 Code for IBM i를 비롯한 자체 개발자 도구를 제공합니다.

코딩과 마찬가지로 AI 기반 도구는 점점 더 중요한 역할을 하고 있습니다. 2024년 초까지만 해도 AI 모델은 RPG를 읽는 데 어려움을 겪었는데, 이는 (IT Jungle의 설명처럼 더 일반적인 COBOL과는 달리) 해당 독점 언어의 학습 데이터가 부족했기 때문입니다. 하지만 2025년 말에는 상황이 바뀌었습니다. IBM은 Project Bob으로 대응했습니다. Project Bob은 watsonx Code Assistant for i로 처음 소개되었다가 이후 완전한 에이전트 코딩 플랫폼으로 재탄생했습니다. Bob은 변환된 코드의 자동화된 테스트를 포함하여 RPG 및 기타 언어를 설명, 변환 및 테스트할 수 있습니다. 8만 명의 IBM 직원이 Bob을 사용했으며, 설문조사에 참가한 사용자들은 Bob이 직원 생산성을 45% 향상했다고 보고했습니다.

작성자

David Zax

Staff Writer

IBM Think

관련 솔루션
AI 코딩 에이전트

IBM Bob를 활용하여 AI 기반 애플리케이션 현대화, 신속한 개발 및 더욱 효율적인 소프트웨어 제공을 실현하고 팀이 더 빠르게 혁신할 수 있도록 지원하세요.

AI 코딩 에이전트 살펴보기
메인프레임 애플리케이션 현대화 솔루션

생성형 AI를 활용하여 애플리케이션 현대화를 간소화하고 개발팀이 혁신을 가속화하며 생산성을 높이고 복잡성을 줄일 수 있도록 지원하세요.

메인프레임 애플리케이션 현대화 솔루션 살펴보기
애플리케이션 현대화 서비스

지능형 AI 현대화로 레거시 시스템을 새롭게 혁신하세요.

애플리케이션 현대화 서비스 살펴보기
다음 단계 안내

생성형 AI와 고급 자동화를 활용하여 기업 환경에 최적화된 코드를 더 빠르게 생성하세요. Bob 모델은 개발자의 역량을 보완하여 개발 및 현대화 작업을 간소화하고 자동화합니다.

  1. IBM Bob 알아보기
  2. 메인프레임 애플리케이션 현대화 솔루션 살펴보기