애플리케이션 수명 주기 관리(ALM)는 에이전트의 수명 주기를 관장하는 프로세스, 인력, 도구들의 집합입니다. 초기 아이디어와 요구 사항 수집에서 시작하여 개발, 테스트, 배포, 지속적인 유지 관리, 그리고 최종 퇴역까지 이어집니다. 그 결과 효율성이 향상되고 에이전트를 예측 가능하며 반복 가능한 방식으로 배포할 수 있습니다.
ALM은 어떤 이점이 있나요?
건강한 ALM의 주요 이점은 다음과 같습니다.
- 신뢰할 수 있는 릴리스: 오류 위험을 줄이고 일관된 배포를 보장합니다.
- 거버넌스 및 컴플라이언스: 조직의 정책과 보안 기준 준수를 지원합니다.
- 확장성과 재사용: 프로세스를 재구성할 필요 없이 솔루션을 확장할 수 있도록 합니다.
- 속도와 품질: 빠른 배포와 높은 품질 기준의 균형을 맞춥니다.
- 비즈니스 연속성: 업데이트 중 다운타임과 중단을 최소화합니다.
- 팀 협업: 개발자, 테스터 및 운영팀 간 협업을 강화합니다.
- 엔드투엔드 원칙: 애플리케이션 수명 주기의 모든 단계에 체계성을 부여합니다.
Power Platform ALM 모범 사례 적용
Copilot Studio는 Power Platform과 동일한 기반 위에 구축되어 애플리케이션 수명 주기 관리 측면에서 다양한 옵션을 제공합니다. 따라서 두 플랫폼 모두 몇 가지 공통된 지침을 따릅니다.
- 환경 전략을 정의하여 제작자가 안전하고 경량이며 사용자 수가 적은 환경에서 구축할 수 있도록 하고, 검증된 가이드라인을 따라 에이전트를 테스트 및 프로덕션 환경에 배포하고 사용을 확장할 수 있도록 합니다.
- 솔루션을 컨테이너로 활용하여 아티팩트와 사용자 지정 항목을 환경 간에 이동하세요.
- 환경 변수를 환경별 설정에 맞게 적용하고, 환경별 연결 및 자격 증명에 대한 연결 참조를 설정하세요.
- 노코드 및 프로 개발 방식 모두에 대해 연속 통합 및 지속적인 업데이트(CI/CD) 배포 옵션(파이프라인, Azure DevOps, 또는 GitHub 연동)을 구현하세요.
- 기본 Git 통합으로 소스 제어를 활성화하세요.
환경 구성 및 보안
효율적인 ALM 전략에는 최소한 개발, 테스트, 프로덕션의 세 가지 환경이 포함됩니다. 개발자는 개발 환경에서 에이전트를 변경한 후 테스트 환경으로 승격합니다. 테스터가 버그를 발견하면 개발자가 개발 환경에서 이를 수정하고 에이전트를 다시 승격시킵니다. 테스트를 통과하면 에이전트가 프로덕션 환경에 배포됩니다.
프로덕션 환경을 프로덕션 유형 환경으로 구성합니다. 개발 및 테스트를 포함한 다른 모든 환경은 샌드박스 유형으로 구성하세요.
구성원에게만 접근을 제한하는 Entra 보안 그룹을 적용하여 모든 환경을 보호하세요.
ALM의 황금률을 따르세요
이 규칙들을 사용하여 일관되고 신뢰할 수 있는 애플리케이션 수명 주기 관리 프로세스를 보장하세요.
- 개발 환경 밖에서 사용자 지정하지 마세요.
- 항상 솔루션 내에서 작업하세요.
- 사용자 지정 게시자와 접두사를 사용하세요.
- 독립적으로 구성 요소를 배포해야 할 때만 별도의 솔루션을 만드세요.
- 환경 간에 달라지는 설정과 비밀에는 환경 변수를 사용하세요.
- 개발 환경을 설정하는 경우가 아니라면 솔루션을 관리형으로 내보내고 배포하세요.
- 소스 제어와 자동화된 배포를 위해 ALM 자동화를 고려하세요.
Copilot Studio별 ALM 고려 사항을 검토하세요
Copilot Studio에는 솔루션 인식이 되지 않는 몇 가지 특정 항목이 포함되어 있습니다. 이 항목들은 일반적인 솔루션 배포 과정을 따르지 않으며, 후속 환경에서 배포 후 단계가 필요합니다.
- Azure 애플리케이션 Insights 설정
- 수동 인증 설정
- Direct Line / 웹 채널 보안 설정
- 배포된 채널
- 공유(다른 제작자 또는 최종 사용자와)
재사용 가능한 구성 요소 컬렉션 만들기
구성 요소 컬렉션은 재사용 가능한 에이전트 구성 요소 집합입니다. 이 구성 요소에는 토픽, 지식, 액션 및 엔터티가 포함됩니다. 구성 요소 컬렉션의 주요 장점은 이를 환경 내 여러 에이전트 간에 공유할 수 있다는 점입니다.
솔루션을 사용하여 구성 요소 컬렉션을 내보내고 가져올 수도 있습니다. 이 접근법은 ALM 시나리오를 지원하기 위해 여러 환경 간에 콘텐츠를 이동할 수 있게 합니다. 여러 팀이 서로 다른 환경에서 독립적인 릴리스 주기로 에이전트의 일부를 개발할 수 있습니다.
이 이미지는 여러 환경에서 ALM을 지원하기 위해 구성 요소 컬렉션이 어떻게 구성되는지를 보여줍니다. 네 가지 환경이 표시됩니다.
- IT 및 HR DEV 환경
- Contoso DEV 환경
- Contoso TEST 환경
- Contoso PROD 환경
각 환경에는 여러 환경에서 재사용하고 참조할 수 있는 에이전트와 컬렉션이 포함되어 있습니다.
목적
- 에이전트 구성 요소(토픽, 동작, 지식)를 여러 환경에서 재사용할 수 있게 합니다.
- 모듈식 개발과 독립적인 릴리스 주기를 허용하여 ALM 시나리오를 지원합니다.
- 컬렉션을 공유하고 솔루션을 내보내거나 가져오는 방식으로 여러 팀 간의 협업을 촉진합니다.
작업
- IT와 HR을 위한 구성 요소 컬렉션(예: IT 주제, HR 액션)을 만듭니다.
- 이 컬렉션들을 참조하는 에이전트(예: Contoso 에이전트)를 개발합니다.
- ALM 도구를 구현하여 DEV, TEST, PROD 환경 간에 컬렉션을 이동시키기 위한 솔루션을 내보내고 가져옵니다.
- 버전 관리: 모든 변경 사항이 버전으로 관리되고 문서화되었는지 확인합니다.
각 환경별 주요 사례
-
IT 및 HR DEV 환경
- 토픽, 작업, 지식을 포함한 IT 컬렉션과 HR 컬렉션을 관리하세요.
- 이 환경에서 해당 컬렉션을 변경한 후 상위 환경에 배포하세요.
-
Contoso DEV 환경
- Contoso 토픽, 작업, 지식을 참조하여 Contoso 에이전트를 구성하세요.
- IT 및 HR 컬렉션을 DEV 환경과 동일한 버전으로 통합하세요.
- 이 환경을 이용해 에이전트 구성 요소의 개발 및 초기 통합을 진행하세요.
-
Contoso TEST 환경
- 테스트를 위해 Contoso 에이전트를 배포하세요.
- DEV 환경과 동일한 버전으로 IT 및 HR 컬렉션을 가져오세요.
- 프로덕션 릴리스 전 검증 및 QA를 위해 이 환경을 사용하세요.
-
Contoso PROD 환경
- Contoso 에이전트의 최종 배포입니다.
- IT Collection v1.0, HR Collection v1.0 등과 같은 안정적인 버전의 컬렉션을 가져오세요.
- 프로덕션 릴리스 전 검증 및 QA를 위해 이 환경을 사용하세요.
모범 사례
- 중복 대신 재사용: 에이전트와 환경 간에 컬렉션을 공유합니다.
- 버전 관리: 일관성과 롤백을 위해 버전을 추적합니다.
- 모듈러 설계: 유연성을 위해 IT와 인사 구성 요소를 분리합니다.
- 독립적인 릴리스 주기: 다른 환경에 영향을 주지 않고 업데이트할 수 있습니다.
에이전트 배포를 위한 ALM 자동화 도구 선택
Copilot Studio는 에이전트 배포를 위한 다양한 ALM 자동화 도구를 지원합니다. 각 옵션은 서로 다른 기능을 제공하며 각기 다른 사용자를 대상으로 합니다.
- Azure DevOps: 고급 CI/CD 및 소스 제어 기능을 포함한 ALM 관리를 위한 엔터프라이즈급 솔루션입니다.
- Power Platform용 GitHub Actions: GitHub 플랫폼을 사용하는 개발자 및 관리자를 위해 ALM 관련 작업을 자동화합니다.
- Power Platform의 배포 파이프라인(Copilot Studio용): 시민 개발자가 Power Platform에 내장된 배포 파이프라인을 사용하여 배포를 간소화합니다.
다음 표에서는 사용 가능한 ALM 도구에 대한 상세한 비교를 제공합니다.
| 기능 또는 이점 | Azure DevOps | Power Platform용 GitHub Actions | Copilot Studio용 Power Platform 파이프라인 |
|---|---|---|---|
| 적합한 대상 | 완전한 ALM 제어가 필요한 엔터프라이즈 팀 | 여러 환경을 관리하는 개발/관리자 팀 | 시민 개발자의 역량을 강화하는 조직들 |
| 주요 기능 |
|
|
|
| 복잡성 설정 | 높음(구성 및 전문 지식 필요) | 보통(GitHub 설정 및 스크립트 필요) | 낮음(몇 분 만에 설정 가능) |
테스팅 전략 수립
배포 전 에이전트 테스트는 Copilot Studio의 ALM 전략에서 중요한 부분입니다. 에이전트를 위한 테스트 전략 설계에서 자세히 알아보세요.
다음 단계
사용량 추적, 준수 유지, 환경의 용량 확보 방법을 점검하여 솔루션을 대규모로 운영할 준비를 하세요.