Amazon Web Services 한국 블로그

AWS Transform 지속적 현대화 기능 미리보기: 자율적인 기술 부채 분석 및 해결

지속적이고 자율적인 기술 부채 분석 및 대규모 해결을 위한 AWS Transform의 새로운 기능인 AWS Transform – 지속적 현대화(평가판)를 오늘 발표합니다.

AWS Transform은 이미 기업이 데이터 센터 외부로 마이그레이션하고, 메인프레임 및 Windows 애플리케이션을 현대화하고, Java 버전 업그레이드/더 이상 사용되지 않는 프레임워크 교체/수명이 다하기 전 AWS Lambda 런타임 업데이트 등의 획일적인 소프트웨어 유지 관리 작업을 처리할 수 있도록 지원합니다. 이 새로운 경험은 이러한 기반 위에 구축되었습니다. 고객은 수천 개의 리포지토리에서 코드베이스의 상태, 우선순위가 지정된 결과, 수정 작업을 수행하는 pull 요청을 완벽하게 파악할 수 있습니다.

엔지니어링 조직은 일반적으로 IT 예산의 최대 30%를 소비합니다. 고객들은 종속성 문제를 탐지하는 도구, 취약성을 식별하는 도구, 코드 품질을 검사하는 도구 등 여러 개별 도구를 조합하여 사용하고 있습니다. 하지만 기술 부채를 대규모로 지속적으로 탐지하고 우선순위를 정하고 해결할 수 있는 기존 도구는 없습니다. 그 때문에 앱마다 서로 다른 수작업이 발생하여 엔지니어링 업무 역량이 소모됩니다. 리더들은 결국 실제 상황을 뒤따르는 자기 보고식 팀 상태 정보에 의존하게 되며, 이는 회귀 문제를 가리게 됩니다. AI 기반 개발은 상황을 더욱 악화시킵니다. 즉, 코딩 에이전트가 변화의 속도를 가속화함에 따라 기술 부채는 개발자가 감당할 수 있는 속도보다 빠르게 누적됩니다. 고객에게는 기술 부채를 지속적으로, 자율적으로, 대규모로 감지하고, 우선순위를 정하고, 해결할 수 있는 기능이 필요합니다.

지속적 분석
AWS Transform의 이 새로운 기능은 구성 가능한 기준에 따라 코드 리포지토리를 자동으로 스캔하고 몇 주가 아닌 몇 시간 만에 결과를 생성하여 가시성 문제를 해결합니다. 기본 제공 기능만으로도 AWS Transform – 지속적 현대화 기능은 지원 종료된 종속 기능, 사용 중단된 프레임워크, 기타 일반적인 기술 부채의 원인을 탐지하기 위한 정책을 제공합니다. 또한 승인된 라이브러리, 내부 코딩 표준, 플랫폼 팀이 이미 시행하고 있는 기술 부채 정책 등, 조직에 맞는 자체 수정 패턴을 사용하여 이를 확대할 수 있습니다. 예를 들어 팀에서 내부 라이브러리를 더 이상 사용하지 않거나 특정 로깅 패턴을 선호하는 경우, 이를 정책으로 코드화하여 모든 리포지토리에서 지속적으로 실행할 수 있습니다.

주기적인 수작업과 달리, 지속적 분석은 코드에서 직접 근거를 제공합니다. 리포지토리가 기준에 못 미치면, 팀에서 어떤 방식으로 문제를 해결했는지에 관계없이 어떤 구성 요소가 얼마나 기준에 미달하는지 즉시 알 수 있습니다. 따라서 상태를 확인하고 수동으로 규정 준수를 추적하지 않고도, 플랫폼 팀이 기술 부채 상황을 항상 최신 상태로 확인할 수 있습니다.

대규모 자율 방식 문제 해결
조사 결과를 식별하고 우선순위를 지정하면, 영향을 받는 리포지토리에 대한 pull 요청을 자동으로 생성하는 자율 수정 작업을 구성할 수 있습니다. 이 새로운 AWS Transform 기능은 Java 버전 업그레이드, SDK 마이그레이션, 라이브러리 업데이트와 같은 일반적인 시나리오에 대해 즉시 사용 가능한 문제 해결 변환을 지원합니다. 조직별 패턴에 대한 사용자 지정 변환을 생성할 수도 있습니다.

수정 작업을 시작하면, 지속적 현대화 기능이 영향을 받는 각 리포지토리에 대해 pull 요청을 생성하고, 해당 리포지토리를 담당하는 팀에 다음과 같은 메시지의 알림을 보냅니다. “이 리포지토리는 조직의 이 종속성에 대한 기준에 부합하지 않습니다. 다음은 이 문제를 해결하는 PR입니다.” 팀은 PR을 검토 및 병합하거나 자체 접근 방식을 사용하여 수정하도록 선택할 수 있습니다. 어떤 방법을 사용하든 지속적 분석은 수정 사항이 적용되면 이를 감지하여 수동 확인 없이 정확한 정보를 제공합니다.

AWS Transform – 지속적 현대화는 AWS Security Agent와 통합되여 소스 코드 수준에서 보안 취약성을 탐지하고 해결하므로, 보안 조사 결과가 다른 기술 부채와 마찬가지로 우선순위가 정해진 목록 및 pull 요청 워크플로에 반영됩니다.

직접 사용해 보기
시작하기 위해 AWS Transform 웹 애플리케이션으로 이동했습니다. 대시보드에서 조직의 리포지토리에 대한 개요, 그리고 구성한 기준에 따른 현재 상태를 확인할 수 있습니다.

먼저, 소스 제어 시스템을 연결하고 지정한 정책에 대한 분석을 시작했습니다. 몇 시간 만에, 리포지토리 전반에서 어떤 부분이 얼마나 기준에 못 미치는지 알 수 있는 분석 결과가 반환되었습니다. 심각도, 영향을 받는 파일 수, 탐지된 특정 기술 부채 패턴을 확인할 수 있었습니다.

여기에서 우선순위가 높은 결과 그룹을 선택하고, 개선 캠페인을 시작했습니다. AWS Transform – 지속적 현대화를 통해 영향을 받는 각 리포지토리에 대한 pull 요청이 생성되었습니다. 캠페인의 진행 상황을 실시간으로 모니터링하여 어떤 PR이 생성되고 어떤 PR이 병합되었는지, 어떤 리포지토리가 다시 규정 준수 상태로 복귀되었는지 확인할 수 있었습니다.

이미지 1: 연결된 모든 리포지토리의 기술 부채 조사 결과에 대한 포트폴리오 개요를 보여주는 AWS Transform – 지속적 현대화 대시보드

이미지 2: 심각도, 범주 및 리포지토리별로 개별 기술 부채 항목이 사용 가능한 수정 옵션과 함께 나열되어 있는 세부 조사 결과

이미지 3: 지속적 현대화 기능에서 분석을 위해 추적하는 GitHub 및 로컬 환경의 연결된 리포지토리를 보여주는 소스 보기

더 빠른 현대화 방법
이러한 기능은 코드 현대화에 대한 두 가지 고유한 접근 방식을 지원합니다. 지속적 모드에서는 지속적 현대화를 통해, 변화하는 기준에 맞추어 코드베이스를 최신 상태로 유지할 수 있습니다. 이는 조직 전반에 걸쳐 라이브러리를 업그레이드하고, 보안 패치를 적용하고, 코딩 표준을 적용하는 일상적인 작업이라고 생각하면 됩니다.

한 프레임워크에서 다른 프레임워크로 마이그레이션하거나 수백 개의 애플리케이션에서 주요 런타임 버전을 업그레이드하는 등의 대규모 현대화 프로젝트의 경우, 타겟팅된 프로젝트 기반 현대화를 지원하는 캠페인 모드를 사용할 수 있습니다. AWS Transform custom은 이러한 대규모 작업을 위한 유연한 프리미티브를 계속 제공합니다. AWS Transform – 지속적 현대화는 플랫폼 팀이 일상적으로 관리하는 대량 반복 작업을 위해 특별히 구축되었습니다.

정식 출시
AWS Transform – 지속적 현대화(평가판)은 지금 사용할 수 있습니다. AWS Transform 웹 애플리케이션, AWS Transform Kero 파워 또는 기존 코딩 에이전트와의 통합을 위한 MCP 및 기술을 통해 사용을 시작할 수 있습니다. 자세히 알아보려면 AWS Transform 설명서를 참조하세요.