(57)【特許請求の範囲】
【請求項１】
外部から所定の機能に対応するソフトウェアのインストールデータのダウンロードを行ってインストールする手段と、
前記機能をアクティベートするためライセンス管理システムからライセンスファイルを取得する手段と、
前記ライセンス管理システムからライセンスファイルを取得した場合に、当該ライセンスファイルに対応するライセンスについて自己の情報処理装置が取得元であることを管理する手段と、
前記ライセンスファイルの有無とは別に、前記機能のライセンスの有無を管理する手段と、
情報処理装置間でライセンスの取得元の情報処理装置を特定する情報を伴ってライセンスの移動を行い、該当する前記機能のライセンスの有無を更新する手段と、
自己の情報処理装置に存在するライセンスについて、当該ライセンスについて自己の情報処理装置が取得元である場合に限り、前記ライセンス管理システムとの通信を許容する手段と
を備えたことを特徴とする情報処理装置。
【請求項２】
請求項１に記載の情報処理装置において、
取得した前記ライセンスファイルを複製する手段
を備え、
複製したライセンスファイルを他の情報処理装置へ提供する
ことを特徴とする情報処理装置。
【請求項３】
請求項２に記載の情報処理装置において、
自己の情報処理装置が保持する前記ライセンスファイルが、自己の情報処理装置が外部から取得したものか、他の情報処理装置から提供されたものかを判断する手段
を備えたことを特徴とする情報処理装置。
【請求項４】
請求項２に記載の情報処理装置において、
複製した前記ライセンスファイルを提供した他の情報処理装置を判断する手段
を備えたことを特徴とする情報処理装置。
【請求項５】
請求項２に記載の情報処理装置において、
前記インストールデータを複製する手段
を備え、
複製したインストールデータを他の情報処理装置へ提供する
ことを特徴とする情報処理装置。
【請求項６】
請求項５に記載の情報処理装置において、
ライセンスの移動対象となる情報処理装置でライセンスファイルおよびインストールデータを保持していれば、ライセンスファイルおよびインストールデータの複製／転送は行わず、該当機能のライセンスを示す情報のみを転送する
ことを特徴とする情報処理装置。
【請求項７】
請求項６に記載の情報処理装置において、
該当機能のライセンスを移動後、ライセンスをアクティベートする場合には、ライセンスファイルに記載される有効期限ではなく、移動元となる情報処理装置の有効期限を適用させる
ことを特徴とする情報処理装置。
【請求項８】
請求項１乃至７のいずれか一項に記載の情報処理装置において、
自己の情報処理装置が外部からライセンスファイルを取得しておらず、自己の情報処理装置が保持するライセンスファイルは他の情報処理装置から提供されている場合、
ライセンスファイルに含まれる利用期限によって自動で外部と通信を行うライセンスファイル更新処理のタイミングが到来した場合には、当該処理を実行しない
ことを特徴とする情報処理装置。
【請求項９】
請求項１乃至７のいずれか一項に記載の情報処理装置において、
自己の情報処理装置が外部からライセンスファイルを取得している場合、
ライセンスファイルに含まれる利用期限によって自動で外部と通信を行うライセンスファイル更新処理のタイミングが到来した場合には、自己の情報処理装置のライセンスファイル更新だけでなく、更新前のライセンスファイルを複製して提供した他の情報処理装置に対して、新しいライセンスファイルを提供し、ライセンス更新を促す
ことを特徴とする情報処理装置。
【請求項１０】
請求項１乃至７のいずれか一項に記載の情報処理装置において、
自己の情報処理装置が外部からライセンスファイルを取得しておらず、自己の情報処理装置が保持するライセンスファイルは他の情報処理装置から提供され、かつ機能のライセンスを保有している場合、
ライセンスファイルに含まれる利用期限によって自動で外部と通信を行うライセンスファイル返却処理のタイミングが到来した場合には、ライセンスファイルを外部に返却するのではなく、ライセンスファイルを外部から取得した情報処理装置に対して返却する
ことを特徴とする情報処理装置。
【請求項１１】
請求項１乃至７のいずれか一項に記載の情報処理装置において、
自己の情報処理装置が外部からライセンスファイルを取得しておらず、自己の情報処理装置が保持するライセンスファイルは他の情報処理装置から提供され、かつ機能のライセンスを保有している場合、
インストールされた機能を削除する際には、ライセンスファイルを外部に返却するのではなく、本ライセンスファイルを外部から取得した情報処理装置に対して返却を実施してから機能削除を実行する
ことを特徴とする情報処理装置。
【請求項１２】
請求項１乃至７のいずれか一項に記載の情報処理装置において、
自己の情報処理装置が外部からライセンスファイルを取得しておらず、自己の情報処理装置が保持するライセンスファイルは他の情報処理装置から提供されている場合、
インストールされた機能を削除する際には、ライセンスファイルを外部から取得した情報処理装置が保有しているライセンスファイルを複製して提供した先の情報処理装置の情報から自己の情報処理装置の情報を削除させる
ことを特徴とする情報処理装置。
【請求項１３】
請求項１乃至７のいずれか一項に記載の情報処理装置において、
自己の情報処理装置が外部からライセンスファイルを取得していなく、自己の情報処理装置が保持するライセンスファイルは他の情報処理装置から提供されている場合、
ライセンスファイルを手動更新する際には、ライセンスファイルを外部から取得した情報処理装置に対してライセンス更新要求し、当該情報処理装置から提供されたライセンスファイルを用いてライセンス更新を行う
ことを特徴とする情報処理装置。
【請求項１４】
請求項１乃至７のいずれか一項に記載の情報処理装置において、
自己の情報処理装置が外部からライセンスファイルを取得していなく、自己の情報処理装置が保持するライセンスファイルは他の情報処理装置から提供されている場合、
ライセンスファイルを手動更新する場合、ライセンス更新を実行させない
ことを特徴とする情報処理装置。
【請求項１５】
請求項１乃至７のいずれか一項に記載の情報処理装置において、
自己の情報処理装置が外部からライセンスファイルを取得している場合、
自己の情報処理装置が手動ライセンス更新要求を受けた際、またはライセンスファイルを複製し提供した他の情報処理装置からのライセンス更新要求があった場合に、外部と通信してライセンス更新を行い、更新前ライセンスファイルを複製し提供した他の情報処理装置に対して新しいライセンスファイルを提供し、ライセンス更新を促す
ことを特徴とする情報処理装置。
【請求項１６】
請求項１乃至７のいずれか一項に記載の情報処理装置において、
自己の情報処理装置が外部からライセンスファイルを取得しておらず、自己の情報処理装置が保持するライセンスファイルは他の情報処理装置から提供され、かつ機能のライセンスを保有している場合、
インストールされた機能のライセンスを返却する際には、ライセンスファイルを外部に返却するのではなく、本ライセンスファイルを外部から取得した情報処理装置に対して返却を実施してからディアクティベート処理を実行する
ことを特徴とする情報処理装置。
【請求項１７】
請求項１乃至７のいずれか一項に記載の情報処理装置において、
自己の情報処理装置が外部からライセンスファイルを取得しており、ライセンスファイルを複製し提供した先として情報処理装置が存在していて、かつライセンスがない場合、
自己の情報処理装置に対して機能削除を要求された際には、機能削除を実行させない
ことを特徴とする情報処理装置。
【請求項１８】
請求項１乃至７のいずれか一項に記載の情報処理装置において、
自己の情報処理装置が外部からライセンスファイルを取得しており、ライセンスファイルを複製し提供した先として情報処理装置が存在していて、かつライセンスがない場合、
自己の情報処理装置に対して機能削除を要求された際には、ライセンスファイルを複製し提供した先から現在ライセンスを保有している情報処理装置に対して、ライセンスを自己の情報処理装置に対して返却させてから削除処理を行う
ことを特徴とする情報処理装置。
【請求項１９】
情報処理装置が実行する方法であって、
外部から所定の機能に対応するソフトウェアのインストールデータのダウンロードを行ってインストールする工程と、
前記機能をアクティベートするためライセンス管理システムからライセンスファイルを取得する工程と、
前記ライセンス管理システムからライセンスファイルを取得した場合に、当該ライセンスファイルに対応するライセンスについて自己の情報処理装置が取得元であることを管理する工程と、
前記ライセンスファイルの有無とは別に、前記機能のライセンスの有無を管理する工程と、
情報処理装置間でライセンスの取得元の情報処理装置を特定する情報を伴ってライセンスの移動を行い、該当する前記機能のライセンスの有無を更新する工程と、
自己の情報処理装置に存在するライセンスについて、当該ライセンスについて自己の情報処理装置が取得元である場合に限り、前記ライセンス管理システムとの通信を許容する工程と
を備えたことを特徴とする情報処理方法。
【請求項２０】
請求項１９に記載の情報処理方法をコンピュータに実行させる情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＰＣ（Personal Computer）、複写機等の各種の機器（情報処理装置）で使用されるソフトウェアのライセンス（利用権利）の管理技術に関する。
【背景技術】
【０００２】
従来、ＰＣだけでなく複写機等を含む各種の機器にソフトウェアをインストールする場合に、ライセンス管理システムが用いられる。ライセンス管理システムはサーバとして、ソフトウェアのインストール時もしくはインストール後のライセンス取得時に各機器からアクセスされ、インストール対象となる機器固有の情報と引き替えにライセンスを発行することになる。これにより各機器ではソフトウェアが利用可能になり、また、ライセンス管理システムではインストール対象となる機器以外でのソフトウェアの不正利用を防止することができる。
【０００３】
ところで、ライセンス取得済の機器から別の機器にライセンスを移動したい場合がある。従来のライセンス管理システムでは大別して２つのタイプが存在する。
【０００４】
第１のタイプは、ライセンス取得済みの機器から、別の機器にライセンスを移したい場合に、ライセンス取得済みの機器からライセンスの返却を行い、別の機器で改めてソフトウェアの導入（インストール、ライセンス取得）を行うものである。
【０００５】
第２のタイプは、ライセンス取得済みの機器（Ａ）からライセンス返却をしないで、別の機器（Ｂ）からライセンス取得する場合に、ライセンス管理システムにおいて元の機器（Ａ）のライセンスを無効化し、別の機器（Ｂ）にライセンスを与えるものである。
【０００６】
特許文献１には、ソフトウェアの不正利用を防止しながら、ソフトウェアのライセンス情報を転送する目的で、機器にインストールするソフトウェアのライセンスを管理するシステムにおいて、他の機器に発行済みのライセンスがある場合、同ソフトウェアの導入を許可する要請が別の機器から入力された際に、ソフトウェアの導入許可（ライセンス発行）を行うと同時に、既に発行済みのライセンスを持つ機器に対して該当ソフトウェアの利用を禁止して、ライセンス情報を新機器に引き継がせるための技術が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上述したライセンス管理システムを用いる場合、ライセンス取得時には不正利用の防止を含め、正当なユーザかどうかを判断する上で、英数字１０数桁程度のライセンスキーといったものをユーザに入力させる必要がある。
【０００８】
従って、ライセンス取得済の機器から別の機器にライセンスを移動する場合には、第１、第２のタイプのいずれにおいても、ライセンスキーを知っている（覚えているか、手元にライセンスキー情報がある）という前提が必要である。ライセンスキーは以前のライセンス取得時に用いたものであるため、ライセンス取得済の機器の管理者が管理している場合が多いが、忘れてしまっている場合もあり、その場合にはライセンスキーを再取得する必要がある。また、ライセンスキーを知っている場合であっても、ライセンス取得済の機器とライセンス移動先の機器とが離れている場合、両方の機器で操作しなければならず、煩雑であった。この場合、各機器の付近にいる第三者に操作を依頼することも可能であるが、ライセンスキーの情報まで伝える必要があり、煩雑であった。
【０００９】
本発明は上記の従来の問題点に鑑み提案されたものであり、その目的とするところは、ライセンス管理システムでソフトウェアのライセンスが管理されている各機器間で、導入済のソフトウェアのライセンスを、ライセンスキーを必要とせずに、ユーザに負荷を与えることなく、簡単に他の機器に移動することのできる情報処理装置を提供することにある。
【課題を解決するための手段】
【００１０】
上記の課題を解決するため、開示の形態にあっては、外部から所定の機能に対応するソフトウェアのインストールデータのダウンロードを行ってインストールする手段と、前記機能をアクティベートするためライセンス管理システムからライセンスファイルを取得する手段と、前記ライセンス管理システムからライセンスファイルを取得した場合に、当該ライセンスファイルに対応するライセンスについて自己の情報処理装置が取得元であることを管理する手段と、前記ライセンスファイルの有無とは別に、前記機能のライセンスの有無を管理する手段と、情報処理装置間でライセンスの取得元の情報処理装置を特定する情報を伴ってライセンスの移動を行い、該当する前記機能のライセンスの有無を更新する手段と、自己の情報処理装置に存在するライセンスについて、当該ライセンスについて自己の情報処理装置が取得元である場合に限り、前記ライセンス管理システムとの通信を許容する手段とを備える。
【発明の効果】
【００１１】
本発明の情報処理装置にあっては、ライセンス管理システムでソフトウェアのライセンスが管理されている各機器間で、導入済のソフトウェアのライセンスを、ライセンスキーを必要とせずに、ユーザに負荷を与えることなく、簡単に他の機器に移動することができる。
【図面の簡単な説明】
【００１２】
【図１】本発明の一実施形態にかかる画像形成装置の構成例を示す図である。
【図２】ライセンス移動管理部が持つ情報の例を示す図である。
【図３】新規インストール／アクティベート時の処理例を示すフローチャートである。
【図４】ライセンスの移動先機器（要求元）から移動元機器（要求先）へ移動対象となる機能／ライセンスを選択するまでの処理例を示す図である。
【図５】ライセンス移動実行時の移動先機器（要求元）における処理例を示すフローチャートである。
【図６】ライセンス移動実行時の移動元機器（要求先）における処理例を示すフローチャートである。
【図７】ライセンス移動の具体的処理例を示す図（その１）である。
【図８】ライセンス移動の具体的処理例を示す図（その２）である。
【図９】ライセンス移動の具体的処理例を示す図（その３）である。
【発明を実施するための形態】
【００１３】
以下、本発明の好適な実施形態につき説明する。
【００１４】
＜構成＞
図１は本発明の一実施形態にかかる画像形成装置１の構成例を示す図である。
【００１５】
図１において、画像形成装置１は、システムバス１０１を介して接続された、システム制御部１０２と表示部１０３と操作部１０４と外部通信部１０５とジョブ管理部１０６と画像メモリ部１０７と画像加工部１０８と印刷部１０９とインストール管理部１１０とライセンスファイル管理部１１１とライセンス移動管理部１１２とを備えている。
【００１６】
システムバス１０１は、画像形成装置１を構成する複数の装置（ユニット）を結ぶ経路である。
【００１７】
システム制御部１０２は、ＣＰＵ（Central Processing Unit）等により構成され、不揮発メモリに記憶されているプログラムをワークエリア（ＲＡＭ等）に展開し、当該プログラムに従い各部を制御する。
【００１８】
表示部１０３は、システム制御部１０２から指示される表示データに基づき、画面上に各種表示を行う。
【００１９】
操作部１０４は、各種機能キー等を備えたキーボードにより構成され、押下されたキーの押下信号をシステム制御部１０２に伝える。
【００２０】
外部通信部１０５は、外部に設けられたライセンス管理システム（サーバ）等と通信する。外部としては、ライセンス管理システムの他に、コンポーネントサーバやメモリデバイス（ＳＤカード等）が含まれる。
【００２１】
ジョブ管理部１０６は、印刷ジョブ等のジョブのスケジューリングを行う。
【００２２】
画像メモリ部１０７は、画像データや印刷データ等が格納される。
【００２３】
画像加工部１０８は、入力された画像データに対し、拡大縮小、回転等の画像処理を施し、画像処理した画像データを印刷部１０９に出力する。
【００２４】
印刷部１０９は、感光ドラム、トナー、給紙部、排紙部等を備える。印刷部１０９は、システム制御部１０２からの印刷指示に従い、印刷用紙を給紙部から搬送し、画像加工部１０８から入力された画像データに対応する画像を感光ドラムに感光させてトナーで現像し、感光ドラムから印刷用紙にトナーを転写して定着させ、印刷用紙を排紙部から排紙する。
【００２５】
インストール管理部１１０は、画像形成装置１にインストールされたソフトウェアの構成情報を管理する。
【００２６】
ライセンスファイル管理部１１１は、外部通信部１０５を用いてライセンス管理システムよりダウンロードしたライセンスファイルを管理し、ライセンスファイル情報を用いてライセンス更新、自動ライセンス返却等の判断を実施する。
【００２７】
ライセンス移動管理部１１２は、ライセンスファイルの移動に伴う情報を管理し、ライセンス操作に伴う対応を他機器と連動して実施する。ライセンス操作としては、他機器からの機能／ライセンスの問い合わせを行い、機能／ライセンスの移動（転送）の制御を行う。また、他機器（ライセンス移動経路の機器が対象）のディアクティベート／アクティベート（自動／手動問わず）の制御を行う。
【００２８】
図２はライセンス移動管理部１１２が持つ情報（ライセンス移動管理情報）の例を示す図であり、該当機能識別子（プロダクトＩＤ）、該当ライセンス識別子（ライセンスＩＤ）、ライセンス本家機器、ライセンス複製機器、ライセンス保有を含んでいる。ライセンス本家機器、ライセンス複製機器、ライセンス保有は、既存機器には存在しない新規の情報となる。
【００２９】
該当機能識別子（プロダクトＩＤ）
機器に導入する機能（ソフトウェア）を識別する情報である。デバイス間でライセンス移動する場合に移動先（操作元）となる機器にユーザはいるが、欲しい機能／ライセンスを予め知っているとは限らないため、移動先（操作元）から、各機器に対して機能一覧を取得する際に、この情報を参照することで移動可能な機能／ライセンスを知らせることができる。
【００３０】
該当ライセンス識別子（ライセンスＩＤ）
ライセンス管理システムから機能導入時にライセンスファイルを取得するが、ライセンスファイルの実体を保持しているのはライセンスファイル管理部１１１であり、ライセンスファイル有無とは別にライセンス（権利）があるか否かの情報を保持する上でライセンスファイルと紐づけるための情報である。
【００３１】
ライセンス本家機器
ライセンス管理システムを介さないで機器間で機能／ライセンス移動を行うが、移動後にライセンス形態によっては自動ライセンス更新、自動ディアクティベート（ライセンス返却）、または手動でディアクティベート／その後アクティベートなども考えられ、ライセンス管理システムとの通信が発生することになる。しかしながら、ライセンス管理システムとしては、該当ライセンス発行時には該当機器との通信時に機器を特定する情報（例えばシリアルＮｏ）を取得しており、発行したライセンスと紐づけて管理していることが多い。そのため、前述したようにライセンス移動した機器全てからのアクセス時に、ライセンス管理システムが管理しているライセンスと紐づけている機器以外からのアクセスが行われることは望ましくない。ライセンスと機器を紐づけて管理しているライセンス管理システムではＮＧ処理となるが、紐づけていない場合には先にアクセスした機器のライセンス操作が反映され、各機器（ライセンス移動経路）と齟齬が生じる可能性がある。よって、これらを避けるため、また、ライセンス管理システムに特にライセンス移動における対応を必要とさせないために、ライセンス管理システムとアクセスするのは該当ライセンスを一番初めに取得した機器（これを本家と呼ぶ）のみとする。よって、本家がアクセスする分にはサーバ管理のライセンスと機器特定情報にも矛盾が発生することがない。
【００３２】
本情報は該当ライセンス初回取得機器のみ、ライセンス本家となり、その後ライセンス移動した経路となる機器すべては本家とはならないことを示している。ここでは、ライセンス本家か否か（Ｙｅｓ  ｏｒ  Ｎｏ）ではなく、本家はどの機器かを示している。これは、移動した経路の機器（既に他機器にライセンスを奪われている）に対して手動でライセンス取得を行おうとした場合に、本家ではないので操作ＮＧとするがなぜＮＧなのかをライセンスが移動され保有していないからだけでなく、ライセンス管理システムとアクセスできる機器を教えるためでもある。
【００３３】
ライセンス複製機器
ライセンス管理システムを介さないで機器間で機能／ライセンス移動を行うが、移動後にライセンス形態によっては自動ライセンス更新、自動ディアクティベート（ライセンス返却）などライセンスファイルの更新／削除などが必要になるケースが存在する。この場合、「ライセンス本家機器」の部分で説明したように、ライセンス管理システムと通信するのは本家のみとするため、本家が移動経路（ライセンスが移動していくと複製されたライセンスファイルが各機器に保持されていく）のライセンスの更新／削除といった対応をつかさどる必要がある。そのためにライセンス移動経路となった（ライセンス複製したものを保持している）機器全てを把握する必要があるため、本情報を用いることになる。
【００３４】
ライセンス保有
機能／ライセンスを移動する場合、ライセンスファイルを複製し移動先に提供するが、このままではライセンス管理システムが預かり知らないところで、不正利用（サーバ発行済ライセンス数増加）となってしまう。そのため、ライセンス複製して機能／ライセンスが移動する場合に移動元となる機器においてはライセンス保有していない、つまりライセンスを移動したということで保有有無に関して、「Ｎｏ」といった情報を持つことで不正利用を防止する。なお、ライセンス保有は「Ｙｅｓ」で示す。
【００３５】
＜動作／ライセンス移動＞
図３は新規インストール／アクティベート時の処理例を示すフローチャートであり、通常のソフトウェアインストール後のライセンス取得、いわゆるアクティベート時の処理である。なお、所定の機能を実現するソフトウェアをインストールしただけでは機能が有効とはならず、アクティベートすることにより有効となる。また、アクティベートした後にディアクティベートして無効とすることもできる。
【００３６】
ステップＳ１０１において、ユーザが該当機能利用のためライセンス取得するために画面上でライセンスキーを入力してアクティベート実行を開始すると、ステップＳ１０２では、ライセンス管理システムに接続し、ライセンス管理システムにおいてライセンスキーの正当性を確認する。
【００３７】
ステップＳ１０３では、接続エラーもしくはライセンスキー不正などのエラー判定となったか否かで処理を分岐する。エラー判定となった場合、ステップＳ１０８でエラー処理を行い、ステップＳ１０９で異常系によりアクティベートを完了する。
【００３８】
エラー判定とならなかった場合、ライセンスキーの正当性が確認され、ステップＳ１０４では、ライセンス管理システムからライセンスファイルを取得する。ライセンスファイルには、ライセンス種別、利用期限等が格納されている。
【００３９】
ステップＳ１０５では、取得したライセンスファイルを用いて機能を利用可能とするための処理を行う。ライセンスファイルに含まれる利用期限に応じて機能が利用可となる。
【００４０】
ステップＳ１０６では、ライセンス移動管理部１１２にて本フローでライセンス取得し機能利用可となった情報を管理する。そのため該当機能を示すＩＤ、そしてライセンスファイルを示すＩＤと、ライセンス本家情報に自機の情報を設定し、ライセンス保有に関してもライセンスを取得しているという情報を設定する。ライセンス複製に関しては本フロー時においては何も設定されない。こちらは他機器に機能のライセンスを移動させる際に更新されるためである。これにより、ステップＳ１０７で機能利用可能となってアクティベートを完了する。
【００４１】
図４はライセンスの移動先機器（要求元）から移動元機器（要求先）へ移動対象となる機能／ライセンスを選択するまでの処理例を示す図である。
【００４２】
先ず、ステップＳ２０１では、要求元となる機器Ｄからネットワーク接続されている機器（Ａ、Ｂ、Ｃ、・・）に対して機能一覧を問い合わせる。
【００４３】
問い合わせを受けた各機器は、自機に対してインストールされた機能についての情報を機器Ｄに返し、機器ＤはステップＳ２０２でこれを取得する。もちろん各機器としてファームウェアやインストール／アンインストールといった抜き差しの対象とならないものや、ライセンス移動を想定しない機能に関しては問い合わせ結果として返す必要はない。
【００４４】
各機器からの問い合わせ結果を受け、ステップＳ２０３で機器Ｄは画面表示を行う。ユーザが興味ある機能もしくは必要な機能をステップＳ２０４で選択すると詳細画面となる。詳細画面においては単に各機能を示す情報（名前、機能概要等）だけでなく、「機器の設置場所」「機能利用頻度」「自由記述欄のコメント（「移動させないで」等が設定されていることも想定される）」等、どの機器から移動させるかという判断材料となりえる情報も対象となる。
【００４５】
これら詳細情報から、ステップＳ２０５でユーザによってどの機器から機能／ライセンスファイルならびにライセンスを移動するかを選択させ、移動実行の指示が行われる。
【００４６】
図５はライセンス移動実行時の移動先機器（要求元）における処理例を示すフローチャートである。
【００４７】
ステップＳ３０１で機能／ライセンス移動対象の選択が行われて処理が開始すると、ステップＳ３０２では、機能／ライセンス移動を要求先に伝える前に、自機の状態を確認する。移動元機器に対して機能／ライセンス移動を要求する際に、自機にて該当機能がインストールされていてライセンスだけがない状態と、機能自体存在しない場合とがあるためである。
【００４８】
機能自体存在しない場合、ステップＳ３０３では、移動元へ機能／ライセンス移動要求する際、該当機能が未インストール、もしくはバージョンに差がありインストールデータが必要となる場合として、インストールデータについても要求対象とする。
【００４９】
ステップＳ３０４では、機能／ライセンスの移動を要求するが、ステップＳ３０３でインストールデータが必要となった場合には、インストールデータについても要求する。
【００５０】
ステップＳ３０５では、該当機能のライセンスに基づく転送データを受信する。
【００５１】
ステップＳ３０６では、転送データの受信においてエラーがなかったか判断し、エラーがなかった場合、ステップＳ３０７では、該当機能が未インストールか否か判断する。
【００５２】
該当機能が未インストールの場合（該当機能も転送要求した場合）、ステップＳ３０８では、受信したインストールデータを用いてインストール処理を実行する。もちろん、バージョン差異でインストールデータを必要とした場合には内部的には更新処理が実施されることとなる。ステップＳ３０９でインストール時のエラーが判定されなければ、インストールを行わなかった場合の処理に合流する。
【００５３】
ステップＳ３１０では、アクティベート処理として、ライセンスファイルを用いて該当機能を利用可能状態とする。また移動元と同じく通常のアクティベート処理と違い、機能／ライセンスを機器間で移動させるためライセンス管理システムとの通信は行わない。
【００５４】
ステップＳ３１１では、自機がライセンス本家であるか否か判断し、自機がライセンス本家でない場合、ステップＳ３１２でライセンス移動管理部１１２にて該当情報を更新する。すなわち、「ライセンス保有」情報はライセンスをもっている状態とされ、「ライセンス本家機器」情報に関してはどの機器が本家となっているかを示す情報が記載される。また「ライセンス複製機器」情報に関しては、ライセンス本家以外は未使用であるため空欄となる。
【００５５】
自機がライセンス本家である場合とは、ライセンス本家として外部システムに基づいてアクティベートを行い機能利用可能状態にあったが、その後に他機器から該当機能のライセンス移動を要求され、自機のライセンスを無効化し、他機器へライセンスを移動させたあと、再度自機が現機能のライセンスを持つ機器からライセンスを取り戻した場合が該当する。
【００５６】
自機がライセンス本家である場合、ステップＳ３１３では、ライセンス移動管理部１１２にて該当情報を更新する。すなわち、「ライセンス保有」情報はライセンスをもっている状態とし、「ライセンス本家機器」情報に関しては自機が本家とわかるので更新処理は行われない。また、「ライセンス複製機器」情報に関しては、ライセンス本家を複製した経路として記載する必要がないため、更新処理は行われない。これにより、ステップＳ３１４では、機能／ライセンス移動の対応を完了する。
【００５７】
転送データ受信または受信後の解析（もしくはインストール等）でエラーがある場合には、ステップＳ３１５のエラー処理において、再度データ転送を要求する、もしくはライセンス移動失敗とすることが考えられる。また、転送データに不備がなく、インストール処理、ならびにアクティベート処理時のエラーの場合には、自機で閉じているためリカバリー処理を行う。しかしながら、リカバリー実施後もエラーとなってしまう場合にはライセンス移動しても機能が使えない状態となるので、ライセンスを移動元に返却するなどして機器間でライセンス移動管理部で扱う情報に齟齬がないようにロールバックを行う。
【００５８】
なお、本フローでは必要に応じてインストールデータ、そしてライセンスファイルのデータ受信をしているが、機器間で機能利用のライセンスの移動を何度も行うと各機器においてインストール済み、ライセンスファイル保持という状態になり得る。この場合には要求先へは機能利用のためのライセンスのみ移動を要求することで実現できる。受信データとしては、ライセンス移動のための管理に必要な情報（「ライセンス本家機器」、「有効期限」（事実上本家における有効期限。ライセンスファイルの有効期限ではない））のみとなる。
【００５９】
なお、「ライセンス複製機器」情報に関しては、本家以外の機器から他機器へ移動時に本家機器へ伝えるため、ライセンス移動要求先の受信データとして必要はない。また、「ライセンス保有」情報に関してもライセンス移動時においてライセンス保有となるので情報として提供する必要はない。ただし、ロールバックなど各機器で整合を取るときには情報として知らせることも必要になる。
【００６０】
図６はライセンス移動実行時の移動元機器（要求先）における処理例を示すフローチャートである。
【００６１】
ステップＳ４０１で機能／ライセンス移動要求が行われて処理が開始すると、ステップＳ４０２では、先ずライセンス移動要求を受け付け可能か判断する。これは既にライセンスファイルはあり、以前はライセンスをもっていたが既に他の機器にライセンスを移動させた後かもしれなく、この場合にはライセンスを移動することはできないため要求を受け付け可能かという事前判断となる。
【００６２】
ライセンス移動要求受付可の場合、ステップＳ４０３では、機能／ライセンスの移動が実行可能かどうかを判断する。これは要求されたライセンスに基づく機能が、実行中または実行待機中（予約を含む）の場合などは機能／ライセンスを移動できないためである。
【００６３】
ライセンス移動実行可の場合、ステップＳ４０４では、該当機能のディアクティベート処理として機能を使えない状態にする。通常のディアクティベート処理ではライセンス管理システムにライセンスを返却するが、機能／ライセンスの移動要求の場合においては、機器間で機能／ライセンス移動を実現するため、ライセンス管理システムにライセンスの返却は行わない。ここではライセンス返却を行わずディアクティベート処理としてライセンスに紐づく機能の無効化処理を行う。
【００６４】
ステップＳ４０５では、自機がライセンス本家かどうかをライセンス移動管理部１１２の情報で確認する。
【００６５】
自機がライセンス本家の場合、ステップＳ４０６では、ライセンス移動管理部１１２にて「ライセンス複製機器」情報に移動先機器の情報を追加する。また、「ライセンス保有」情報をライセンスを保有していないという情報に更新する。
【００６６】
自機がライセンス本家ではない場合、ステップＳ４０７では、ライセンス移動管理部１１２にて「ライセンス保有」情報を保有していないという情報に更新する。本家ではないため「ライセンス複製機器」情報は扱わない。
【００６７】
ステップＳ４０８では、ライセンス本家となる機器へライセンスを他の機器に移動したという情報を通知する。この通知を受けたライセンス本家となる機器は、自身のライセンス移動管理部１１２における「ライセンス複製機器」情報に、通知された機器の情報を追加する。
【００６８】
ステップＳ４０９では、移動においてライセンスファイルのみでよいのか、機能自体のインストールデータも必要かの判断を行う。どちらのパターンかについては本フローの最初の要求時に含まれるものとする。
【００６９】
インストールデータも移動対象としている場合、ステップＳ４１０では、該当機能を示すインストールデータ、つまりリリース形態となっている販売パッケージ（ＰＫＧ）のデータを複製する。
【００７０】
ステップＳ４１１では、複製したインストールデータを要求元となる機器へ転送する。ステップＳ４１２でエラーが判定されなければ、ライセンスだけの場合の処理に合流する。
【００７１】
ステップＳ４１３では、該当機能に紐づくライセンスファイルを複製する。
【００７２】
ステップＳ４１４では、複製したライセンスファイルを要求元となる機器へ転送する。ライセンスファイルの複製／転送については、複製／転送の限界値（例えば、１０回まで）を定めて制限したり、同じフロア内の機器だけ（フロア設置情報が必要になる）とかに制限したりすることができる。
【００７３】
ステップＳ４１５でエラーが判定されなければ、ステップＳ４１６で、機能／ライセンス移動要求の対応を完了する。
【００７４】
ステップＳ４１７のエラー処理において、ステップＳ４０２／４０３といった要求受付段階（実行前）では、要求を実行できないことを要求元へ伝えるのみだが、その後のデータ転送時のエラーなどでは、ライセンス移動管理部１１２の情報を更新してしまっているので、更新前の状態にロールバックする。エラー処理の後にステップＳ４１８で機能／ライセンス移動要求の対応をＮＧ処理として完了する。
【００７５】
なお、データ転送時のエラーなどにおいて要求元にも自機でロールバックしたことを伝え、万が一に機器間で整合がとれていないことを防ぐため、要求元に対してロールバックを促す。
【００７６】
回線断など接続できずに、要求元へ伝達できない場合には何度かリトライ処理を行うが、一向に整合処理についての通知ができない場合には、整合がとれない可能性があるため本機能のライセンスを一時無効化することも考えられる。この場合にはユーザに画面表示、メール通知などの手段を用いてライセンスを一時無効化した理由を伝え、復旧を促す。その後要求元との整合のための通知ができ、整合に問題がなければ無効化を解除することで互いの機器にて要求前の状態へロールバックができたことになる。要求元のロールバックにおいては未完了状態の一部受信済データなどは破棄する。
【００７７】
なお、本フローでは必要に応じてインストールデータ、そしてライセンスファイルのデータ複製、転送をしているが、機器間で機能利用のライセンスの移動を何度も行うと各機器においてインストール済み、ライセンスファイル保持という状態になり得る。この場合には要求元へは機能利用のためのライセンスのみ移動を提供することで実現できる。転送データとしてはライセンス移動のための管理に必要な情報（「ライセンス本家」、「有効期限」（事実上の本家における有効期限。ライセンスファイルの有効期限ではない））のみとなる。ライセンスファイルの有効期限（例えば、＋３ヶ月）だと移動ごとにどんどん機器として有効期限がのびてしまい、本家が最初にアクティベートした有効期限に従う必要があるため、本家の有効期限を適用（つまり要求先の有効期限適用）する。
【００７８】
なお、「ライセンス複製機器」情報に関しては本家以外の機器から他機器へ移動時に本家機器へ伝えるため、ライセンス提供時に提供先へ知らせる必要はない。また、ライセンス保有に関してもライセンス移動時においてライセンス保有しないという状態となるので情報として提供する必要はない。ただし、ロールバックなど各機器で整合を取るときには情報として知らせることも必要になる。
【００７９】
図７〜図９はライセンス移動の具体的処理例を示す図であり、ライセンス移動を複数機器（３台）で行ったときのライセンス移動管理情報の状態を示した図である。
【００８０】
図７は当初の状態を示しており、機器Ａは本家として機能Ｚを最初に導入した機器、機器Ｂはメモリデバイス経由で機能Ｚをインストール済だが未アクティベートの機器、機器Ｃはプラグインが全く追加されていない機器を想定している。プロダクトＩＤ「１２３」のプラグインを説明上、機能Ｚと呼ぶ。ライセンスファイルが有効な機器は太線で囲ってある。
【００８１】
図８ではライセンス本家となる機器Ａから機器Ｂにライセンスが移動する際の状態、図９では機器Ｂから機器Ｃにライセンスが移動する状態を示している。
【００８２】
＜動作／プラグイン操作＞
以下、ライセンス移動に基づき各機器で発生する各状態におけるプラグイン操作時の振る舞いについて説明する。なお、以下の説明で「自動ライセンス更新」とは、ライセンスの有効期限（移動先では本家の有効期限となる）が近づくとライセンス形態によってライセンス管理システムと通信し、新しいライセンスの取得を行い自動ライセンス更新を行う技術のことである。自動ライセンス更新とは別に、ユーザの任意のタイミングでライセンス更新することを「手動ライセンス更新」と呼んでいる。
【００８３】
また、以下の処理においては、最初に「本家かどうか」を確認して自機が本家と確認するという共通ロジックがある。
【００８４】
＊＊ライセンス本家の場合＊＊
［機器構成：ライセンス無、複製無（インストール後未アクティベート）の場合］
●操作：手動ライセンス更新の場合
（１）「ライセンス保有」情報を見るが、保有していない。しかし、「ライセンス複製機器」情報を見ても、複製先がいないため他にライセンスを移動しているわけではないと判断する。
（２）サーバ経由となる通常のライセンス更新を実施して更新ライセンスファイルを取得する。
【００８５】
●操作：自動ライセンス更新の場合
（１）サーバ経由となる通常のライセンス更新を実施する。
（２）「ライセンス保有」情報を見ると保有していないが、「ライセンス複製機器」情報を見てもライセンスを移動したわけではないので、更新ファイルの提供は必要ないとわかり、他機器への連動操作は必要とされない。
【００８６】
●操作：ディアクティベート（ライセンス返却）の場合
（１）「ライセンス複製機器」情報を見ると、複製先がいないため他にライセンスを移動しているわけではないと判断する。そして、「ライセンス保有」情報を見るとライセンスを保有していない、つまりインストール後にアクティベートしていないとわかる。
（２）そもそもライセンスを取得していないため操作不要といった旨を表示する。
【００８７】
●操作：削除（機能削除）の場合
（１）「ライセンス複製機器」情報を見ると、複製先がいないため他にライセンスを移動しているわけではないと判断する。そして、「ライセンス保有」情報を見るとライセンスを保有していない、つまりインストール後にアクティベートしていないとわかる。
（２）該当機能の削除を実行する。
（３）ライセンス移動管理情報も削除する。
【００８８】
［機器構成：ライセンス無、複製有（アクティベート後、ライセンス移動）の場合］
●操作：手動ライセンス更新の場合
（１）「ライセンス保有」情報を見るが、保有していない。そして、「ライセンス複製機器」情報を見ると、複製先が存在するためライセンスを移動したと判断する。
（パターンＡ）
（２）ライセンスを本機に移動してから実行してくださいと促し、要求はエラーとする。
（パターンＢ）
（２）ライセンスはないがサーバ経由の通常のライセンス更新を実施し、ライセンスファイルを更新する。ただし、ライセンスは無しのままであるため、もちろんアクティベート（有効化）はしない。また、複製先の各機器に対して更新ライセンスファイルを転送し、ライセンス更新のトリガをかける。
（３）上記（２）の複製先がすべて完了するまで実行する。つながらない等あれば定期的にリトライ処理を繰り返す。
【００８９】
●操作：自動ライセンス更新の場合
（１）サーバ経由となる通常のライセンス更新を実施する。
（２）「ライセンス保有」情報を見ると保有していないが、「ライセンス複製機器」情報見るとライセンスを移動したことがわかる。
（３）更新ライセンスファイルを複製して、各機器に対して更新ライセンスファイルを転送し、ライセンス更新のトリガをかける。
（４）上記（３）の複製先がすべて完了するまで実行する。つながらない等あれば定期的にリトライ処理を繰り返す。
【００９０】
●操作：ディアクティベート（ライセンス返却）の場合
（１）「ライセンス保有」情報を見るが、保有していない。そして、「ライセンス複製機器」情報を見ると、複製先が存在するためライセンスを移動したと判断する。
（パターンＡ）
（２）本機ではライセンスを他機器に移動しているため。ライセンスを本機に移動してから実行してくださいと促し、要求はエラーとする。
（パターンＢ）
（２）ユーザ操作を優先とする考えで「ライセンス複製機器」情報から現ライセンス保有機器を特定（自身でわかる、もしくは複製機器に対してライセンス保有問い合わせを行うことでも可）し、該当ライセンスを自分へ移動させる（ライセンスを取り戻す）。
（３）上記（２）で自機にライセンスが戻ったことで、サーバと通信してライセンスを返却する。（（２）で取り戻せない場合にはエラー処理となる。）
本家がライセンスをサーバに返却したため、このときすべての機器でライセンスファイルはあるが、ライセンスはどこにもない状態となる。この状態で本家が削除を受け付けた場合、ライセンスが他機器にあるのか、返却したかについては他機器に問い合わせてもライセンスがなく、自分も保有していない場合にライセンスをサーバ返却したと判断が可能である。
【００９１】
●操作：削除（機能削除）の場合
（１）「ライセンス保有」情報を見るが、保有していない。そして、「ライセンス複製機器」情報を見ると、複製先が存在するためライセンスを移動したと判断する。
（パターンＡ）
（２）本機ではライセンスを他機器に移動しているため、ライセンスを本機に移動させた上でサーバへのライセンス返却（ディアクティベート）を実行してから削除してくださいと促し、要求はエラーとする。
（パターンＢ）
（２）ユーザ操作を優先とする考えで「ライセンス複製機器」情報から現ライセンス保有機器を特定（自身でわかる、もしくは複製機器に対してライセンス保有問い合わせを行うことでも可）し、該当ライセンスを自分へ移動させる（ライセンスを取り戻す）。
（３）上記（２）で自機にライセンスが戻ったことで、サーバと通信してライセンスを返却する。（（２）で取り戻せない場合にはエラー処理となる。）
（４）該当機能の削除を実行する。
（パターンＢ内、削除後パターン１）
（５）ライセンス複製先に対してもライセンスが既にないため、各機器にある機能は使えずリソースの無駄となるため該当機能・ライセンスファイルの削除を促す。
（６）上記（５）がすべて完了できるまで定期的に繰り返す。
（７）上記（６）が完了したらライセンス移動管理部にて該当情報を削除する。
（パターンＢ内、削除後パターン２）
（４）後にライセンス移動管理情報も削除してフロー終了する（つまり他機器への削除要求をしない）。
【００９２】
つまり、本家がいなくなりライセンスファイルを持つ分家のみとなってしまい、自動ライセンス更新等、本家トリガが必要になるが対応できなくなるということになる。これは分家から問い合わせがあったときにライセンス移動管理情報が見つからないことで削除されたと判断できるため、その旨の情報を分家に問い合わせ結果とすることで分家の判断ロジック内（例えば該当機能削除）で対応する。
【００９３】
［機器構成：ライセンス有、複製無（インストール後アクティベート）の場合］
●操作：手動ライセンス更新の場合
（１）「ライセンス保有」情報を見るとライセンスは所有している。また、「ライセンス複製機器」情報を見るが、複製先がいないため他にライセンスを移動しているわけではないと判断する。
（２）サーバ経由となる通常のライセンス更新を実施して更新ライセンスファイル取得する。
【００９４】
●操作：自動ライセンス更新の場合
（１）サーバ経由となる通常のライセンス更新を実施する。
（２）ライセンス保有を見ると保有していることがわかり、かつ「ライセンス複製機器」情報を見てもライセンスを移動したわけではないので、更新ファイルの提供は必要ないとわかり、他機器への連動操作は必要とされない。
【００９５】
●操作：ディアクティベート（ライセンス返却）の場合
（１）「ライセンス複製機器」情報を見ると、複製先がいないため他にライセンスを移動しているわけではないと判断する。そして、「ライセンス保有」情報を見るとライセンスを保有していることがわかり、通常のディアクティベート処理のケースと判断できる。
（２）通常のディアクティベート処理を行いライセンスをサーバに返却する。
本家がライセンスをサーバに返却したため、この状態で本家が削除を受け付けた場合、ライセンスが他機器にも移動していないため、返却したと判断が可能である。
【００９６】
●操作：削除（機能削除）の場合
（１）「ライセンス複製機器」情報を見ると、複製先がいないため他にライセンスを移動しているわけではないと判断する。そして、「ライセンス保有」情報を見るとライセンスを保有していることがわかり、通常のディアクティベート処理が実行可能と判断できる。
（２）通常のディアクティベート処理を行い、先ずライセンスをサーバに返却する。
（３）該当機能の削除を実行する。
【００９７】
［機器構成：ライセンス有、複製有（アクティベート後、ライセンス移動し  再度ライセンスを取り戻したとき）の場合］
●操作：手動ライセンス更新の場合
（１）「ライセンス保有」情報を見るとライセンスは所有している。また、「ライセンス複製機器」情報を見ると、複製先が存在するためライセンスを移動して複製ライセンスファイルが他にも出回っていると判断する。
（２）サーバ経由の通常のライセンス更新を実施し、ライセンスファイルを更新する。また、複製先の各機器に対して更新ライセンスファイルを転送し、ライセンス更新のトリガをかける。
（３）上記（２）の複製先がすべて完了するまで実行する。つながらない等あれば定期的にリトライ処理を繰り返す。
【００９８】
●操作：自動ライセンス更新の場合
（１）サーバ経由となる通常のライセンス更新を実施する。
（２）「ライセンス保有」情報を見るとライセンスは所有している。しかし、「ライセンス複製機器」情報を見ると、複製先が存在するためライセンスを移動して複製ライセンスファイルが他にも出回っていると判断する。
（３）更新ライセンスファイルを複製して、各機器に対して更新ライセンスファイルを転送し、ライセンス更新のトリガをかける。
（４）上記（３）の複製先がすべて完了するまで実行する。つながらない等あれば定期的にリトライ処理を繰り返す。
【００９９】
●操作：ディアクティベート（ライセンス返却）の場合
（１）「ライセンス保有」情報を見るとライセンスは所有している。しかし、「ライセンス複製機器」情報を見ると、複製先が存在するためライセンスを移動して複製ライセンスファイルが他にも出回っていると判断する。
（２）通常のディアクティベート処理を行いライセンスをサーバに返却する。
【０１００】
本家がライセンスをサーバに返却したため、このときすべての機器でライセンスファイルはあるが、ライセンスはどこにもない状態となる。この状態で本家が削除を受け付けた場合、ライセンスが他機器にあるのか、返却したかについては他機器に問い合わせてもライセンスがなく、自分も保有していない場合にライセンスをサーバ返却したと判断が可能である。
【０１０１】
●操作：削除（機能削除）の場合
（１）「ライセンス保有」情報を見るとライセンスは所有している。しかし、「ライセンス複製機器」情報を見ると、複製先が存在するためライセンスを移動して複製ライセンスファイルが他にも出回っていると判断する。
（２）通常のディアクティベート処理を行いライセンスをサーバ返却する。
（３）該当機能の削除を実行する。
（削除後パターン１）
（４）ライセンス複製先に対してもライセンスが既にないため、各機器にある機能は使えずリソースの無駄となるため該当機能・ライセンスファイルの削除を促す。
（５）上記（４）がすべて完了できるまで定期的に繰り返す
（６）上記（５）が完了したらライセンス移動管理部にて該当情報を削除する。
（削除後パターン２）
（３）後にライセンス移動管理情報も削除してフロー終了する（つまり他機器への削除要求をしない）。
【０１０２】
つまり、本家がいなくなりライセンスファイルを持つ分家のみとなってしまい、自動ライセンス更新等、本家トリガが必要になるが対応できなくなるということになる。これは分家から問い合わせがあったときにライセンス移動管理情報が見つからないことで削除されたと判断できるため、その旨の情報を分家に問い合わせ結果とすることで分家の判断ロジック内で対応する。
【０１０３】
＊＊ライセンス本家でない場合＊＊
［機器構成：ライセンスファイル有、ライセンス無し（自機移動後、再移動でライセンスは他機器へ）の場合］
●操作：手動ライセンス更新の場合
（１）本家かどうかを判断して、本家でないとわかる。
（パターンＡ）
（２）本家ではないのでエラーとする。なお、本家の機器で実行してくださいと促す。（本家で手動ライセンス更新後に他機器へも展開されるパターン想定）
（パターンＢ）
（２）本家ではないのでサーバアクセスさせないため、本家に対してライセンス更新要求があった旨を伝え、本家でライセンス更新を委譲する。（本家で手動ライセンス更新後に他機器へも展開されるパターン想定）
（３）本家から更新されたライセンスファイルが転送され更新依頼を受け、受信ライセンスファイルをもとに更新処理（サーバアクセスせず）を行い、新しい有効期限が適用されることで実行完了となる。
なお、（２）でＮＧ（本家で失敗、アクセスできず等）の場合にはエラー処理となる。
【０１０４】
●操作：自動ライセンス更新の場合
（１）本家かどうかを判断して、本家でないとわかる。
（２）自動ライセンス更新を行わない（スキップする）。本家ではないのでサーバアクセスさせないためである。
（３）本家の自動更新完了を待つ（本家で自動ライセンス更新後に他機器へも展開されるパターン）。
（４）本家から更新されたライセンスファイルと更新依頼がくるので、更新処理（サーバアクセスせず）を行い、新しい有効期限が適用されることで実行完了となる。
本家から有効期限すぎるまで応答がなかった場合には自動ディアクティベートとなるが、本機器構成では既にライセンスないためスキップされる。
【０１０５】
●操作：ディアクティベート（ライセンス返却）の場合
（１）本家かどうかを判断して、本家でないとわかる。
（２）ライセンスがあるかないか確認するがライセンスがないため他機器へ移動したことがわかる。
（３）そもそもライセンスを取得していないため操作不要といった旨を表示する。
【０１０６】
●操作：削除（機能削除）の場合
（１）本家かどうかを判断して、本家でないとわかる。
（２）ライセンスがあるかないか確認するがライセンスがないため他機器へ移動したことがわかる。
（３）削除を実行する。
なお、本家に対して自機にて削除するため本家のライセンス複製情報から自機の情報を削除するように依頼する。（ライセンスファイルも削除されるので本家と連動する必要がなくなるため）
（パターンＡ）
本家への複製情報修正が完了した上で削除が実行できることとする。
（パターンＢ）
削除実行した上で、完了後に本家への複製情報修正依頼を行う。ただし、ライセンス移動管理情報は既にライセンスファイル、該当機能ともに削除しているので、これは本家の依頼と本家対応が完了するまで繰り替えすバックグラウンドジョブとして扱う必要がある。よって、定期的に本家に対して複製情報修正を完了するまで依頼することになる。万が一、複製情報依頼が完了する前に、タイミングとして本家がライセンス更新等で自機に対してライセンス更新等の操作促しがきた場合には、ライセンス移動管理情報は既に削除済みのため必要ない旨の結果を返し、かつここで該当複製情報から自機を消すように依頼する。
【０１０７】
［機器構成：ライセンスファイル有、ライセンス有の場合］
●操作：手動ライセンス更新の場合
機器構成：ライセンスファイル有、ライセンス無し（自機移動後、再移動でライセンスは他機器へ）の場合の操作：手動ライセンス更新と同じ。
【０１０８】
●操作：自動ライセンス更新の場合
機器構成：ライセンスファイル有、ライセンス無し（自機移動後、再移動でライセンスは他機器へ）の場合の操作：自動ライセンス更新と同じ。
【０１０９】
●操作：ディアクティベート（ライセンス返却）の場合
（１）本家かどうかを判断して、本家でないとわかる。
（２）ライセンスがあるかないか確認するがライセンスを保有していることがわかる。
（パターンＡ）
（３）サーバと通信してライセンスを返却するのは本家でなければならないといった表示（本家にライセンスを移動後にライセンス返却してくださいといった旨）を行い、ＮＧ結果を表示する。
（パターンＢ）
（３）本機から機能を返却することを行うが、ライセンスをサーバに返却するのは本家としているため、自機からサーバではなく本家に対してライセンスを返却する（自機としての返却処理を実行）。なお、本機のライセンスを本家に返した旨の表示を行い、サーバに返却するには本家からディアクティベートしてくださいと伝える。（サーバへの返却は本家操作が必要）
（パターンＣ）
（３）本機から機能を返却することを行うが、ライセンスをサーバに返却するのは本家としているため、自機からサーバではなく本家に対してライセンスを返却し、かつ本家に対してサーバにライセンスを返却する要求があったことを伝え、本家にライセンスを帰したあとに本家でディアクティベート処理をしてもらう。
【０１１０】
本家でのディアクティベート処理完了通知を自機が受け、サーバにライセンスを返却した旨を伝える。（本家にディアクティベート処理を依頼してフローを終えてもよい。この場合は本家にてサーバへのライセンス返却を依頼しましたとだけ表示して、フローとしても分家としては完了となり、あとは本家でのディアクティベートが実行され、接続断等で失敗しても本家のリトライ処理で完了させればよい。）
●操作：削除（機能削除）の場合
（１）本家かどうかを判断して、本家でないとわかる。
（２）ライセンスがあるかないか確認するがライセンスを保有していることがわかる。
（３）削除前にライセンスを返却する。（分家にてライセンス保有時のライセンス返却パターン）
（ライセンス返却パターンＡの場合）
（４）削除前にライセンス返却が必要で、ライセンス返却には本家に一度ライセンスを移す必要があるといった表示を行い、エラーとする。
（ライセンス返却パターンＢの場合）
（４）ライセンスを本家に帰すことが完了したら、削除を実行する。なお、削除時にはライセンス移動管理情報も含まれるので、本家に対して、本家が持つ複製情報から自機の情報を消すように依頼する。削除時における本家への複製情報修正に関しては、「ライセンスファイル有、ライセンスなしの構成での削除の説明欄」を参照。
（ライセンス返却パターンＣの場合）
なし。自機にて該当機能削除要求に伴い、ライセンスを本家に返却（前述パターンＢ）してから、削除することを要求範囲とする。分家におけるライセンス移動後の機能の削除で、本家にライセンスを移動にとどめ、本家からさらにサーバへライセンス返却といったことは削除要求では範囲外とする。
【０１１１】
＜総括＞
以上説明したように、本実施形態によれば、機器間で機能／ライセンスを移動する仕組みとして、ライセンス管理システムから提供されるライセンスファイルの有無とは別に、新規にライセンスの有無といった情報を管理するので、導入済のソフトウェアのライセンスを、ライセンスキーを必要とせずに、ユーザに負荷を与えることなく、簡単に他の機器に移動することができる。また、ライセンス管理システムが発行したライセンス数以上の利用を防ぐことが可能であり、不正利用を防止することができる。
【０１１２】
以上、本発明の好適な実施の形態により本発明を説明した。ここでは特定の具体例を示して本発明を説明したが、特許請求の範囲に定義された本発明の広範な趣旨および範囲から逸脱することなく、これら具体例に様々な修正および変更を加えることができることは明らかである。すなわち、具体例の詳細および添付の図面により本発明が限定されるものと解釈してはならない。
【符号の説明】
【０１１３】
１          画像形成装置
１０１      システムバス
１０２      システム制御部
１０３      表示部
１０４      操作部
１０５      外部通信部
１０６      ジョブ管理部
１０７      画像メモリ部
１０８      画像加工部
１０９      印刷部
１１０      インストール管理部
１１１      ライセンスファイル管理部
１１２      ライセンス移動管理部
【先行技術文献】
【特許文献】
【０１１４】
【特許文献１】特開２００６‐０１８４０２号公報
【図１】
0005545037.tif 000002
【図２】
0005545037.tif 000003
【図３】
0005545037.tif 000004
【図４】
0005545037.tif 000005
【図５】
0005545037.tif 000006
【図６】
0005545037.tif 000007
【図７】
0005545037.tif 000008
【図８】
0005545037.tif 000009
【図９】
0005545037.tif 000010