アプリケーションのバージョニング
Pega Platform™では、以下の2つの方式でアプリケーションの新しいバージョンを作成できます。
- ロックアンドロール
- スキミング
どちらの方式でも、前のバージョンのアプリケーションは保持されます。 あるバージョニング方式を実際に使用した時点で、新しいリリースサイクルが始まります。 メジャーバージョン、マイナーバージョン、パッチバージョンは、それぞれリリースサイクルを表します。 どちらの方式を採用した場合でも、最上位のバージョンがリストされ、デフォルトでルールセットを上位のバージョンにロールすることが提示されます。
ヒント: ロックアンドロールやスキミングを実行する場合は、アプリケーションの構造を理解する必要があります。
アプリケーションのバージョニングを使用して、現在と過去のアプリケーション構成を区別します。 ルールレゾリューションでは、現在のメジャールールセットのすべてのマイナーバージョンとパッチバージョンを検証できます。 アプリケーションコンポーネントには、アプリケーションで使用されるルールとデータタイプを含むアプリケーションルールセットスタックがあります。 アプリケーションのバージョニングを行うには、アプリケーションのルールセットをバージョニングする必要があります。
アプリケーションのバージョニング方式の選択
選択する方式は、以下のアプリケーションの変更のタイプによって異なります。
- ロックアンドロールは、漸進的なパッチバージョンに適しています。
- スキミングは、マイナーバージョンとメジャーバージョンに適しています。
プリプロセスのベストプラクティスとして、新しいバージョンのルールがチェックインされていることを確認することが推奨されます。 チェックアウトされたルールのルックアップは、Checked Out Rulesページから実行できます。 もう1つのベストプラクティスは、ルールセットの最上位バージョン以外をロックすることが推奨されます。
以下のインタラクションで理解度をチェックしてください。
ロックアンドロール
小さな変更やパッチには、ロックアンドロール方式を採用します。 アプリケーションのパッチとマイナーな更新には、通常、ルールの更新が含まれます。 ロックアンドロールを使用する場合は、新しい空のルールセットのバージョンを作成してから構成を更新し、必要なルールだけをその新しいルールセットバージョンにコピーします。 ロックアンドロール方式の詳細については、「Locking and rolling ruleset versions」を参照してください。
ルールセットのより新しいバージョンのルールがルールセットの以前のバージョンのルールよりも優先されます。 新しいバージョン番号、およびアプリケーションレコードとアクセスグループを更新してルールセットのバージョンを反映させるかどうかを指定します。
補足: マイナーバージョンとメジャーバージョンでは、アプリケーションレコードとアクセスグループを更新する必要があります。 パッチでは通常、更新する必要はありません。
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のホットフィックスを引き続き使用できます。
スキミング
スキミングとは、ルールの最新バージョンを、ルールセットの新しいバージョンとして保存するプロセスです。 スキミングは、主に完了済みのルールに適用され、アプリケーションのパフォーマンスが向上します。 システムは、ルールレゾリューションに利用できないルールをフィルタリングします。 スキミングすることで、ルールレゾリューションがシンプルになり、アプリケーションの異なるバージョンに引き継ぐルールデータを最小限に抑えることができます。
主要なスキミングは主要なパッチに対応しています。 マイナーなスキミングはマイナーなパッチに対応しています。
マイナースキミングでは、ルールは上位のマイナーバージョンに保存され、メジャースキミングでは、ルールは上位のメジャーバージョンに保存されます。
ルールの可用性ステータスにより、ルールが新しいルールセットに保存されるかどうかが決まります。 次の表では、スキミング中に新しいルールセットに保存されるルールを定義しています。
スキミングタイプ/ルールの可用性 | Available | Not Available | Final | Withdrawn | Blocked |
---|---|---|---|---|---|
メジャー | はい | いいえ | はい | いいえ | はい |
マイナー | はい | いいえ | はい | はい | はい |
ブロックされたルールは、他のルールセットのルールをブロックできるため、ブロックされたルールは引き継がれます。 ブロッキング関係を維持します。
スキミングで重要なのは、メジャーバージョンから開始してすべてのマイナー番号とパッチ番号を新しいバージョンにスキミングすること、または、あるマイナーバージョンから開始してそこから新しいバージョンにスキミングすることです。
Pegaはスキミングウィザードを用意しています。 指定されたルールセット内の各ルールインスタンスについて、ウィザードでは最新バージョンが特定され、指定された番号のコピーが作成されます。
スキミングウィザードを開き、Dev Studioのヘッダーで、Configure > System > Refactor > Rulesetsを選択して、Refactor Rulesets Utilitiesランディングページを開きます。 Refactor Rulesets Utilitiesランディングページで Skim a RuleSetをクリックし、スキミングウィザードを開きます。 ルールセットのスキミングに関する詳細については、「Rule skimming for higher ruleset versions」を参照してください。
補足: スキミングでは、選択したメジャーバージョンのルールのみがコピーされます。 たとえば、02-01-01を03-01-01にスキミングすると、バージョン01-01-01のルールは無視されます。
スキミングを実行するには、zipMoveSkim権限が必要です。 Pegaでは、zipMoveSkimを含むデフォルトロールをシステムアーキテクトに割り当てます。 「SysAdm4」は、システムアーキテクトのデフォルトのシステムロールで、zipMoveSkim権限が含まれています。 アプリケーションが本番に移行すると、「SysAdm4」ロールは「Administrator」ロールになります。
スキミングを実行するには、zipMoveSkim権限が必要です。 Pegaでは、zipMoveSkimを含むデフォルトロールをシステムアーキテクトに割り当てます。 「SysAdm4」は、システムアーキテクトのデフォルトのシステムロールで、zipMoveSkim権限が含まれています。 アプリケーションが本番に移行すると、「SysAdm4」ロールは「Administrator」ロールになります。
以下のインタラクションで理解度をチェックしてください。
ルールセットのセキュリティー
プロジェクトに参加するすべての開発者に、必ずしもアプリケーションのすべての部分を担当するために必要なスキルがあるとは限りません。 特定のルールセットへのアクセスを制限するには、ルールセットのセキュリティー情報を更新します。 たとえば、アプリケーションのアクセス管理部分をSSAまたはLSAに制限する必要がある場合があります。
アプリケーションのルールセットレコードの「Security」タブでパスワードを設定し、どのユーザーもルールセットとルールセットバージョンを追加または更新することを禁止します。
補足: ルールセットフォームの「Security」タブの記入方法に関する詳細については、「Defining the security of a ruleset」を参照してください。
このトピックは、下記のモジュールにも含まれています。
If you are having problems with your training, please review the Pega Academy Support FAQs.