Pegaを使用したリリース管理
組織は、アプリケーション機能を競合他社よりも早くエンドユーザーや顧客にリリースする経済的なメリットを認識しています。新しいアプリケーション機能を継続的にエンドユーザーに提供することで、組織は市場での競争力を高めることができます。多くの組織では、ソフトウェアデリバリーのライフサイクルを簡素化するためにDevOps アプローチを導入しています。
Pegaビジネスアーキテクトとして、Pega DevOpsメソドロジーとCI/CDパイプラインを総合的に理解することで、プロジェクトの開発、テスト、デリバリーを通じてスプリントの計画と優先順位付けを理解できます。
DevOps
DevOpsは開発、品質管理、および業務スタッフのコラボレーションで、高品質なソフトウェアを自動化されたアジャイルな方法でエンドユーザーに提供できます。DevOpsは、アプリケーション開発と運用の動作を橋渡しして、品質と効率性を損なうことなく、製品化までの時間を短縮する一連の業界のプラクティスです。アプリケーションデベロッパーとビジネスオーナーが顧客ニーズに迅速に対応し、すばやくフィードバックサイクルを作り出し、最終的にビジネス価値の実現を促進することを可能にします。
DevOpsメソドロジーは、 人材、プロセス、およびテクノロジーという3つのコンポーネントでイノベーションを推進します。
次の画像と説明文の番号を照らし合わせて、DevOpsを構成する3つのコンポーネントについて確認してください。
- 人材:DevOpsはコラボレーションの文化を奨励し、開発チーム、品質管理チーム、業務チーム間の責任を共有することで、誰もが組織のソフトウェアデリバリープロセスに付加価値を与えることになります。
- プロセス:DevOpsでは、アプリケーションの開発からテスト、デプロイまでの流れを迅速化する自動化プロセスが推奨されています。
- テクノロジー:DevOpsでは、デプロイメントパイプラインを構築するモデル駆動型かつオープンなソリューションが推奨されています。
次の問題に答えて、理解度をチェックしましょう。
継続的な統合とデリバリー
継続的な統合とデリバリー(CI/CD)パイプラインは、アプリケーションの開発からテスト、稼働システムへのデプロイまでの流れを迅速化するための自動プロセスです。
次の画像と説明文の番号を照らし合わせて、パイプラインの各ステージでのテスト結果に関するフィードバックを開発チームにどのように提供するか確認してください。
- Continuous Integrationループ:Continuous Integrationループでは、チームは毎日ビルドプロセスで共有リポジトリに変更を継続的に統合します。
- Continuous Deliveryループ:Continuous Deliveryループでは、チームはリリースフェーズ中に常に出荷する準備ができています。
- Continuous Deploymentループ:Continuous Deploymentループでは、チームはリリースフェーズで継続的に製品を統合し、出荷します。
継続的な統合
継続的な統合では、アプリケーションデベロッパーがソース環境に対する変更を頻繁にチェックし、自動ビルドプロセスを使用してそれらの変更が自動的に検証されるようにします。継続的な統合により、サイクルの早い段階で問題を特定し、ピンポイントで解決できます。
「Ready to Share」ステップでは、新しく導入された変更が、既存のアプリケーションとうまく機能することを確認するためにテストを実行します。「Integrate Changes」ステップでは、新しい変更が開発リポジトリに公開される前に、必要なすべての重要なテストが実行され、常に最新の状態に保たれるようにします。
継続的なデリバリー
継続的なデリバリーでは、アプリケーションに対する変更が厳格な自動化された回帰テストを通じて実行されます。変更がステージング環境にデプロイされ、そこでさらにテストが実行されて、アプリケーションが本番環境にデプロイできる状態になっていることが確認されます。
「Ready to Accept」ステップでは、テストを実行して、アプリケーションが合格基準を満たしていることを確認します。Ready to Deployステップでは、アプリケーションがデプロイ可能な状態になっていることを確認するのに必要なすべてのパフォーマンステスト、スケールテスト、互換性テストを実行します。Deployステップでは、本番前環境での検証と本番へのデプロイを行い、必要に応じてロールバックする可能性を考慮してデプロイ後テストを実行します。
Pega CI/CDパイプライン
Pega Platform™ツールや一般的なサードパーティツールを使用して、DevOpsを導入します。Pegaリポジトリを使用してソフトウェアを保存およびテストする継続的な統合および継続的なデリバリー(CI/CD)パイプラインと、ジョブを開始してソフトウェアで操作を実行するJenkinsなどのサードパーティ製オートメーションサーバーを設定できます。
パイプラインのあらゆるステージでさまざまな確認事項が発生します。これらの質問は、開発者中心の質問と顧客中心の質問の2つのカテゴリーに分類されます。
次の画像と説明文の番号を照らし合わせて、パイプラインに関する質問を確認してください。
- 開発者中心の確認事項:変更を共有する準備ができており、他の開発者の変更とも連携性がありますか。
- Ready to Share:デベロッパーとして、変更を他のデベロッパーと共有する準備はできていますか。新しい機能が機能し、重要な既存の機能が引き続き機能することを確認します。
- Integrate Changes:統合されたすべての変更が連携していますか。複数の開発者からの変更を統合した後も、すべての重要な機能は機能しますか。
- 顧客中心の確認事項:新しい変更を加えたアプリケーションは、顧客が設計および期待したとおりに機能し、顧客がすぐに使用できるようになっていますか。
- Ready to Accept:アプリケーションのすべての承認基準に合致していますか。このステージでは通常、アプリケーションが機能の正常性を確認するために回帰テストを実施します。
- Ready to Deploy:このアプリケーションはデプロイメントの準備はできていますか。最終フェーズでは、完全に検証されたアプリケーションが本番環境にデプロイされます。通常、本番環境での検証が行われます。
DevOpsテクノロジー
Pega PlatformのDevOpsへのアプローチは、他のソリューションでも利用できます。Deployment Managerを使って、DevOpsの取り組みを開始できます。また、後でサードパーティ製ツールも統合することができます。
Deployment Manager
すばやく開始したい人のために、Pega PlatformはパイプラインマネージャーツールであるDeployment Managerを提供しています。これは、Pegaアプリケーションをテストしてデプロイするための標準的な方法です。これにより、DevOpsワークフローを自動化するために必要なPega Platformのすべての機能が公開されています。
Deployment Managerを使って、Pegaアプリケーションの継続的な統合とデリバリー(CI/CD)ワークフローをPega Platform内から設定、実行します。標準化されたデプロイメントプロセスを作成して、サードパーティ製ツールを使用せずに予測可能な高品質のリリースを展開できます。Deployment Managerを使用すると、ブランチのマージ、アプリケーションのパッケージング、アプリケーションの異なる環境への昇格など、CI/CDワークフローを完全に自動化できます。
Deployment Managerのアクセス
Deployment Managerにアクセスするには、Pega Marketplaceからダウンロードしてインストールします。Deployment Managerは、スタンドアロン機能としてアクセスするように設定でき、またAdmin StudioまたはApp Studioでアクセスするように設定することもできます。
次の図は、すべてのパイプラインにすばやくアクセスできるDeployment Managerダッシュボードを示しています。開発のさまざまなステージの複数のアプリケーションを表示しています。
App StudioでのDeployment Managerの設定
変更を公開する前に、Deployment ManagerとApp Studioを適切に設定して統合する必要があります。これらの統合ステップにより、候補となる環境とオーケストレーター間の通信が可能になり、デプロイメントパイプラインのシームレスな公開が実現します。
Deployment Managerを使用することで、アプリケーションごとにパイプラインを設定できます。このパイプラインでは、アプリケーションを異なる環境に移動させます。Deployment ManagerをApp Studio環境に統合すると、システムはApp Studioを通じて特定のアプリケーションのパイプラインを公開します(Settings > Versions)。アプリケーション設計者は、変更内容を上位環境に公開できるため、システム管理者が手動でアプリケーションをプロモートしたり、設定したりする必要がなくなります。
サードパーティ製ツール
すでにDevOpsプラクティスが導入されている場合、DevOpsをサードパーティツールと統合できます。Pega Platformでは、必要なすべてのフックやサービスと共にオープンプラットフォームが提供され、JenkinsやMicrosoft Azure DevOpsなど、一般的なサードパーティ製ツールを使用したオープンDevOpsインテグレーションもサポートされています。オープンDevOps統合によって、サードパーティ製ツールを使用して分岐を自動化し、デプロイメントパイプラインを構築できます。
次の問題に答えて、理解度をチェックしましょう。