
アプリケーションのバージョニング
Pegaでは、次の2つの方式でアプリケーションの新しいバージョンを作成できます。 どちらの方式でも、前のバージョンのアプリケーションは保持されます。アプリケーションのバージョニングは、アプリケーションの現在と過去の構成を区別するための方法です。 ルールレゾリューションでは、現在のメジャールールセットのすべてのマイナーバージョンとパッチバージョンが検証されます。
アプリケーションコンポーネントには、アプリケーションのルールセットスタックがあり、アプリケーションで使用されるルールとデータタイプが含まれています。 アプリケーションのバージョニングを行うには、そのアプリケーションのルールセットをバージョニングする必要があります。
バージョニング方式には、ロックアンドロールとスキミングがあります。 あるバージョニング方式を実際に使用した時点で、新しいリリースサイクルが始まります。 メジャーバージョン、マイナーバージョン、パッチバージョンは、それぞれリリースサイクルを表します。 どちらの方式を採用した場合でも、最上位のバージョンがリストされ、デフォルトでルールセットを上位のバージョンにロールすることが提示されます。
ヒント: ロックアンドロールやスキミングを実行するユーザーは、アプリケーションの構造を理解する必要があります。
アプリケーションのバージョニング方式の選択
選択する方式は、アプリケーションの変更のタイプによって異なります。 ロックアンドロールは、漸進的なパッチバージョンに最適です。 スキミングは、マイナーバージョンとメジャーバージョンに適しています。
プリプロセスのベストプラクティスとして、新しいバージョンのルールがチェックインされていることを確認します。 チェックアウトされたルールのルックアップは、「Checked Out Rules」ページから実行できます。 追加のベストプラクティスとして、ルールセットの最上位バージョン以外をロックします。
次の問題に答えて、理解度をチェックしましょう。
ロックアンドロール
小さな変更やパッチには、ロックアンドロール方式を採用します。 アプリケーションのパッチとマイナーな更新には、通常、ルールの更新が含まれます。 ロックアンドロールを使用する場合は、新しい空のルールセットのバージョンを作成してから構成を更新し、必要なルールだけをその新しいルールセットバージョンにコピーします。
ルールセットの上位バージョンのルールがルールセットの下位バージョンのルールよりも優先されます。 新しいバージョン番号、およびアプリケーションレコードとアクセスグループを更新してルールセットのバージョンを反映させるかどうかを指定します。
補足: マイナーバージョンとメジャーバージョンでは、アプリケーションレコードとアクセスグループを更新する必要があります。 パッチでは通常、更新する必要はありません。
01-01-01を01-01-02にロールする場合、ルールレゾリューションのプロセスは01-01-02から開始し、前のパッチバージョンである01-01-01までさかのぼってルールがルックアップされます。 ルールがいずれかのバージョンにあれば、Pega Platformはそのルールを見つけて完了できます。 たとえば、01-03-05を01-03-06にロールし、次に01-03-06バージョンで一部のルールを更新した場合でも、更新されなかった残りのルールは引き続き01-03-05バージョンから実行されます。
補足: 前述の例では、HRAppsInt、TGB、TGBInt の各ルールセットの記述に、以前のバージョン番号が反映されます。 ロックアンドロールウィザードを使用する際には、ルールセットの説明を確認し、混乱が発生しないよう、必要に応じて説明を更新します。
次のインタラクションは、システムアーキテクト(SA)がアプリケーションのバージョニングをどのように行うかを示しています。 ロックアンドロールウィザードで空のルールセットを作成し、SAが適切なルールを追加して新しいバージョンを構成します。
次の問題に答えて、理解度をチェックしましょう。
ヒント: 本番環境にもデプロイする場合は、ベストプラクティスとしてホットフィックス用のスペースを確保しておきます(例:バージョン01-01-01から01-01-05への移行)。 こうしておくことで、バージョン01-01-02~01-01-04は、必要に応じてホットフィックスに使用できます。
スキミング
スキミングとは、ルールの最上位のバージョンを、新しいより上位のルールセットバージョンに保存するプロセスです。 スキミングは主に完了済みのルールに適用され、ルールレゾリューションに利用できないルールがシステムによってフィルタリングされるため、アプリケーションのパフォーマンスが向上します。 スキミングすることで、ルールレゾリューションがシンプルになり、アプリケーションの異なるバージョンに引き継ぐルールデータを最小限に抑えることができます。 スキミングには、マイナーとメジャーの2つのタイプがあります。 スキミングタイプは更新タイプ(メジャーまたはマイナー/パッチ)に対応しています。
マイナースキミングでは、ルールは上位のマイナーバージョンに保存され、メジャースキミングでは、ルールは上位のメジャーバージョンに保存されます。
ルールの可用性ステータスにより、ルールが引き継がれるかどうかが決まります。 この表では、スキミングで引き継がれるルールを定義しています。
スキミングタイプ/ルールの可用性 | 使用可能 | 使用不可 | 最終 | 取り消し | ブロック済み |
---|---|---|---|---|---|
メジャー | はい | いいえ | はい | いいえ | はい |
マイナー | はい | いいえ | はい | はい | はい |
ブロックされたルールは、他のルールセットのルールをブロックできるため、ブロックされたルールは引き継がれます。 ブロッキング関係は維持する必要があります。
スキミングで重要なのは、メジャーバージョンから開始してすべてのマイナー番号とパッチ番号を新しいバージョンにスキミングすること、または、あるマイナーバージョンから開始してそこから新しいバージョンにスキミングすることです。
Pegaはスキミングウィザードを用意しています。 指定されたルールセット内の各ルールインスタンスについて、ウィザードでは最も番号の大きいバージョンが特定され、指定された番号のコピーが作成されます。
スキミングウィザードを開くには、Dev Studioのヘッダーで、Configure > System > Refactor > Rulesetsをクリックして、「Refactor Rulesets Utilities」ランディングページを開きます。 「Refactor Rulesets Utilities」ランディングページで Skim a RuleSetをクリックし、スキミングウィザードを開きます。
スキミングの詳細については、Communityの記事「Creating higher ruleset versions by skimming rules」を参照してください。
補足: スキミングでは、選択したメジャーバージョンのルールのみがコピーされます。 たとえば、02-01-01を03-01-01にスキミングすると、バージョン01-01-01のルールは無視されます。
スキミングを実行するには、zipMoveSkim権限が必要です。 Pegaでは、zipMoveSkimを含むデフォルトロールをシステムアーキテクトに割り当てます。 「SysAdm4」は、システムアーキテクトのデフォルトのシステムロールで、zipMoveSkim権限が含まれています。 アプリケーションが本番に移行すると、「SysAdm4」ロールは「Administrator」ロールになります。
スキミングを実行するには、zipMoveSkim権限が必要です。 Pegaでは、zipMoveSkimを含むデフォルトロールをシステムアーキテクトに割り当てます。 「SysAdm4」は、システムアーキテクトのデフォルトのシステムロールで、zipMoveSkim権限が含まれています。 アプリケーションが本番に移行すると、「SysAdm4」ロールは「Administrator」ロールになります。
次の問題に答えて、理解度をチェックしましょう。
トレーニングを実施中に問題が発生した場合は、Pega Academy Support FAQsをご確認ください。