アプリケーションのコンポーネントの CICS® バンドルに変更を加えるときは、CICS バンドル、アプリケーション、およびアプリケーション・バインディングのバージョンを更新し、新しいバージョンをプラットフォームにデプロイします。
アプリケーションに関係するすべてのプロジェクト (ターゲット・プラットフォームのプラットフォーム・プロジェクトを含む) が CICS Explorer® のローカル・ワークスペースに存在することを確認してください。 CICS Explorer は、アプリケーション・プロジェクトおよびアプリケーション・バインディング・プロジェクトを妥当性検査するために、プラットフォーム・プロジェクトを必要とします。
アプリケーションを更新するには、アプリケーション・プロジェクトおよびアプリケーション・バインディング・プロジェクトを編集する必要があります。プロジェクトを前のバージョンに復元できるようにするバージョン管理されたバックアップ・システムがない場合、以下の指示で説明されているように既存のプロジェクトを直接編集する代わりに、それらのプロジェクトを別のプロジェクトにコピーしてから新規コピーを編集することをお勧めします。
アプリケーションがこれらのリソースだけを使用する場合、アプリケーションの複数バージョンを同時に同じプラットフォームにインストールして、選択できるようにすることができます。 マルチバージョン管理がサポートされていないリソースをアプリケーションが使用する場合、新しいバージョンをインストールする前に、アプリケーションの既存バージョンを使用不可にして破棄する必要があります。 あるいは、前のバージョンのアプリケーションでインストールされているリソースと競合しないよう、マルチバージョン管理がサポートされていないリソースの名前を変更することもできます。
新規バージョンをインストールするためにアプリケーションを使用不可にする必要がある場合、ユーザーがそれを選択できなくなる期間が発生します。それは、CICSplex のインストール済み APPLCTN リソースを使用不可にして破棄するために旧バージョンのアプリケーションを選択不可にしたときから、新規 APPLDEF リソース定義をインストールし、新規バージョンのアプリケーションを使用可能にし、それを選択可能にするときまでの期間です。 安全に更新を実行できる時間を設けるか、更新を実行する間、そのアプリケーションのユーザーのために代替ソリューションを用意してください。
アプリケーションの各種バージョンを管理するには、バージョン管理を使用します。 各 CICS バンドル、アプリケーション・バンドル、およびアプリケーション・バインディングには、それらを一意的に識別するために ID とバージョン情報があります。バージョンでは、メジャー、マイナー、およびマイクロという識別子を使用して、変更の重要性を示したり、バンドル間の依存関係を管理したりできます。 この概念はセマンティック・バージョン管理 と呼ばれるもので、OSGi Alliance に由来します。 これは Java™ パッケージに焦点を合わせたものですが、同じ原則をバンドル一般に適用して使用することができます。
セマンティック・バージョン管理は、以前のバージョンのバンドルに対する互換性や非互換性があるかどうかを示すために、バージョンのメジャー/マイナー/マイクロの部分を増やす方法を提供します。 例えば、バグ修正はバージョンのマイクロ部分を増やし、互換性のある変更はバージョンのマイナー部分を増やし、互換性のない変更はバージョンのメジャー部分を増やすといった方法です。 セマンティック・バージョン管理について詳しくは、Semantic Versioning Technical Whitepaperを参照してください。
CICS 環境での更新をデプロイおよび管理するために、CICS バンドル、アプリケーション・バンドル、およびアプリケーション・バインディングにバージョン管理ポリシーを適用する必要があります。 アプリケーション用の CICS バンドルの新しいバージョンをデプロイするときには、アプリケーション・バンドルの既存のバージョンを使用することはできません。また、アプリケーション・バインディングの既存のバージョンをアプリケーション・バンドルの新しいバージョンとともに使用することはできません。 アプリケーションの CICS バンドルを更新した場合は、必ずアプリケーション・バンドルとアプリケーション・バインディングのバージョンを更新する必要があります。
セマンティック・バージョン管理の原則に従ってアプリケーションのバージョンを変更するときは、新しいバージョンは、アプリケーションに組み込まれる CICS バンドルでの最も大きい変更を反映する必要があります。例えば、アプリケーションの 1 つの CICS バンドルをバージョン 1.0.1 からバージョン 1.0.2 に変更 (これはマイクロ・バージョン変更) し、アプリケーションの別の CICS バンドルをバージョン 1.2.0 からバージョン 1.3.0 に変更 (これはマイナー・バージョン変更) するとします。これら 2 つの CICS バンドルを含むアプリケーション・バンドルには、マイナー・バージョン変更を含める必要があります。つまり、アプリケーションの前のバージョンが 2.5.1 だった場合、バージョン 2.6.0 に変更する必要があります。
アプリケーションの新しいバージョンがプラットフォームにデプロイされます。 新しいバージョンのアプリケーションに組み込まれた CICS バンドルが適切な CICS 領域にインストールされ、CICS バンドル内で定義されているリソースが CICS 領域に動的に作成されます。
新しいバージョンのアプリケーションを選択可能にすると、CICS は呼び出し元がそのアプリケーション入り口点 (PROGRAM リソースまたは URIMAP リソース) を介してアプリケーション・バージョンにアクセスすることを許可します。 マルチバージョン管理がサポートされているアプリケーションで複数のバージョンを選択できる場合、呼び出し元では、選択可能な最新のアプリケーション・バージョンにアクセスすることもできますし、EXEC CICS INVOKE APPLICATION コマンドを使用して任意の選択可能なアプリケーション・バージョンを指定することもできます。