アプリケーションのバージョニング
Pega Platform™では、以下の2つの方式でアプリケーションの新しいバージョンを作成できます。
- ロックアンドロール
- スキミング
どちらの方式でも、前のバージョンのアプリケーションは保持されます。 あるバージョニング方式を実際に使用した時点で、新しいリリースサイクルが始まります。メジャーバージョン、マイナーバージョン、パッチバージョンは、それぞれリリースサイクルを表します。どちらの方式を採用した場合でも、最上位のバージョンがリストされ、デフォルトでルールセットを上位のバージョンにロールすることが提示されます。
アプリケーションのバージョニングを使用して、現在と過去のアプリケーション構成を区別します。アプリケーションのバージョニングを行うには、アプリケーションのルールセットをバージョニングする必要があります。 ルールレゾリューションの間に、Pega Platformが、現在のメジャールールセットのすべてのマイナーバージョンとパッチバージョンのルールを確認します。 アプリケーションコンポーネントには、アプリケーションで使用されるルールとデータタイプを含むアプリケーションルールセットスタックがあります。
アプリケーションのバージョニング方式の選択
選択する方式は、以下のアプリケーションの変更のタイプによって異なります。
- ロックアンドロールは、漸進的なパッチバージョンに適しています。
- スキミングは、マイナーバージョンとメジャーバージョンに適しています。
プリプロセスのベストプラクティスとして、新しいバージョンのルールがチェックインされていることを確認することが推奨されます。チェックアウトされたルールのルックアップは、Checked Out Rulesページから実行できます。もう1つのベストプラクティスは、ルールセットの最上位バージョン以外をロックすることが推奨されます。
次の問題に答えて、理解度をチェックしましょう。
ロックアンドロール
小さな変更やパッチには、ロックアンドロール方式を採用します。 アプリケーションのパッチとマイナーな更新には、通常、ルールの更新が含まれます。ロックアンドロールを使用する場合は、新しい空のルールセットのバージョンを作成してから構成を更新し、適切なルールだけをその新しいルールセットバージョンにコピーします。
ルールセットのより新しいバージョンのルールがルールセットの以前のバージョンのルールよりも優先されます。新しいバージョン番号、およびアプリケーションレコードとアクセスグループを更新してルールセットのバージョンを反映させるかどうかを指定します。 マイナーバージョンとメジャーバージョンでは、アプリケーションレコードとアクセスグループを更新する必要があります。パッチでは通常、更新する必要はありません。
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が適切なルールを追加して新しいバージョンを構成します。
次の問題に答えて、理解度をチェックしましょう。
スキミング
スキミングとは、ルールの最新バージョンを、ルールセットの新しいバージョンとして保存するプロセスです。スキミングは、主に完了済みのルールに適用され、アプリケーションのパフォーマンスが向上します。システムは、ルールレゾリューションに利用できないルールをフィルタリングします。スキミングすることで、ルールレゾリューションがシンプルになり、アプリケーションの異なるバージョンに引き継ぐルールデータを最小限に抑えることができます。
主要なスキミングは主要なパッチに対応しています。マイナーなスキミングはマイナーなパッチに対応しています。マイナースキミングでは、ルールは上位のマイナーバージョンに保存され、メジャースキミングでは、ルールは上位のメジャーバージョンに保存されます。
あるアプリケーションには、ルールA、B、Cを含むルールセット01-01-01があります。このアプリケーションには、ルールBを更新したルールセット01-01-02もあります。01-01-01から01-02-01へのマイナースキミングを実行する場合、ルールセット01-02-01には、下図のように、ルールA(01-01-01)、ルールB(01-01-02)、ルールC(01-01-01)が含まれます。
ルールの可用性ステータスにより、ルールが新しいルールセットに保存されるかどうかが決まります。 次の表では、スキミング中に新しいルールセットに保存されるルールを定義しています。
| スキミングタイプ/ルールの可用性 | Available | Not Available | Final | Withdrawn | Blocked |
|---|---|---|---|---|---|
| メジャー | はい | いいえ | はい | いいえ | はい |
| マイナー | はい | いいえ | はい | はい | はい |
ブロックされたルールは、他のルールセットのルールをブロックできるため、ブロックされたルールは引き継がれます。ブロッキング関係を維持します。
スキミングで重要なのは、メジャーバージョンから開始してすべてのマイナー番号とパッチ番号を新しいバージョンにスキミングすること、または、あるマイナーバージョンから開始してそこから新しいバージョンにスキミングすることです。
Pegaはスキミングウィザードを用意しています。指定されたルールセット内の各ルールインスタンスについて、ウィザードでは最新バージョンが特定され、指定された番号のコピーが作成されます。
スキミングウィザードを開き、Dev Studioのヘッダーで、Configure > System > Refactor > Rulesetsを選択して、Refactor Rulesets Utilitiesランディングページを開きます。Refactor Rulesets Utilitiesランディングページで Skim a Rulesetをクリックし、スキミングウィザードを開きます。スキミングウィザードは下図のように表示されます。
スキミングでは、選択したメジャーバージョンのルールのみがコピーされます。たとえば、02-01-01を03-01-01にスキミングすると、バージョン01-01-01のルールは無視されます。
次の問題に答えて、理解度をチェックしましょう。
ルールセットのセキュリティ
プロジェクトに参加するすべての開発者に、必ずしもアプリケーションのすべての部分を担当するために必要なスキルがあるとは限りません。特定のルールセットへのアクセスを制限するには、ルールセットのセキュリティ情報を更新します。たとえば、アプリケーションのアクセス管理部分をSSAまたはLSAに制限する必要がある場合があります。
アプリケーションのルールセットレコードの「Security」タブでパスワードを設定し、どのユーザーもルールセットとルールセットバージョンを追加または更新することを禁止します。 次の図は、Securityタブを示しています。
次の問題に答えて、理解度をチェックしましょう。