[In preview] Public Preview: Azure Migrate – GitHub Copilot Modernization integration for at scale code assessments
개요
Azure Migrate와 GitHub Copilot Modernization 통합(현재 공개 미리 보기 상태)은 대규모 코드 평가를 넘어, 실제 코드 수정 실행 단계의 간극을 해소하는 데 초점을 맞춘 도구입니다.
주요 내용
* 통합의 실제 기능: Azure Migrate의 포트폴리오 수준 탐색 및 AppCat 호환성 분석 결과와 GitHub Copilot Modernization의 문맥 인지 코드 분석을 공유 워크플로우에서 통합하여 코드 인사이트를 제공합니다. .NET 및 Java 애플리케이션 스택을 대상으로 하며, 엔지니어에게 인프라 신호와 AI 보조 수정 컨텍스트를 함께 제공하는 공유 인터페이스를 제공합니다.
* 올바른 사고 모델: 구조화된 평가 도구(AppCat, DMA, Azure Migrate)는 권위 있고 감사 가능한 확장 가능한 준비 신호를 생성하는 반면, GitHub Copilot Modernization은 확률적이고 문맥에 의존적인 인사이트를 제공합니다. 이 둘은 경쟁 관계가 아닌 파이프라인 내 순차적인 단계로, 구조화된 도구는 진실의 근원을 제공하고 Copilot은 엔지니어가 이를 신속하게 실행하도록 돕습니다.
* 실질적인 처리량 증가 시나리오:
* 레거시 문서 부족: AppCat에서 복잡성이 높다고 분류된 애플리케이션의 문서 부족 또는 오래된 문서를 Copilot이 빠르게 보완합니다.
* 식별된 패턴 변환: 동기식 I/O를 비동기식으로 변환하는 등의 알려진 수정 패턴을 Copilot이 생성하여 엔지니어는 각 인스턴스에 대한 평가 및 적용을 담당합니다.
* 트리아지 가속: AppCat에서 플래그가 지정된 패턴이 특정 애플리케이션 컨텍스트에서 실제로 문제가 되지 않는 경우, Copilot이 코드의 기능을 설명하여 엔지니어가 신속하게 트리아지하고 위임할 수 있도록 돕습니다.
* 컨텍스트 창 문제: LLM의 컨텍스트 창 제한으로 인해 대규모 코드베이스 분석 시 분석이 분편화됩니다. GitHub Copilot은 단편적으로 분석하며, Azure Migrate의 종속성 그래프를 네이티브로 인식하지 못하므로, 이를 명시적으로 컨텍스트에 제공해야 합니다.
* 보안 고려 사항: 레거시 코드베이스에는 민감한 정보가 포함될 수 있으므로, AI 분석 전에 반드시 비밀 스캐닝 및 데이터 분류를 수행해야 합니다. 또한, 기업 수준의 GitHub Copilot Enterprise를 최소 기준으로 사용하고 조직의 데이터 처리 설정을 확인해야 합니다.
* 올바른 레이어링 방법:
1. 전체 포트폴리오에 대한 구조화된 평가(AppCat, DMA, Azure Migrate)를 먼저 실행합니다.
2. AI 유입 전에 비밀 스캐닝 및 데이터 분류를 수행하고, 결과를 먼저 수정합니다.
3. 단일 애플리케이션 또는 모듈과 같이 범위를 명확하게 제한하여 Copilot 분석을 수행합니다.
4. Copilot을 코드 문서화, 패턴 변환, 코드 이해 가속화에 사용하며, 모든 커밋에는 사람이 개입합니다.
5. Copilot 보조 수정 후, 수정된 코드베이스에 대해 AppCat 또는 관련 평가 도구를 다시 실행하여 원래 평가 신호와 비교 검증합니다.
시사점
Azure Migrate와 GitHub Copilot Modernization 통합은 평가 단계가 아닌 코드 수정 실행 단계의 생산성을 향상시키는 데 중점을 두며, 올바른 순서와 범위로 활용될 때 대규모 마이그레이션 프로젝트의 실행 시간을 단축할 수 있습니다.
댓글
GitHub Discussions