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