(57)【要約】【課題】ユーザに対して、プログラム導入作業における各作業工程の情報を提示し適切な導入作業を支援可能なプログラム導入支援装置、プログラム導入支援システム、表示制御方法、表示制御プログラム、及びそのプログラムを記録した記録媒体を提供する。【解決手段】プログラム導入支援装置１００は、所定のデータ伝送路Ｎを介して、１又は複数の機器２００が接続される装置であって、機器２００へのプログラム導入作業における各作業工程で実行されるプログラム導入処理を制御する制御手段２３と、ユーザからの実行要求及び／又は要求に応じて制御手段２３により実行されたプログラム導入処理の実行結果に基づき、作業工程に応じた表示画面Ｗを生成する生成手段２１２と、生成手段２１２による更新要求に従って、当該装置が備える表示装置１０２の表示画面を更新する更新手段２１３と、を有している。【選択図】図４
2011060237.tif 000002
【特許請求の範囲】
【請求項１】
所定のデータ伝送路を介して、１又は複数の機器が接続されるプログラム導入支援装置であって、
前記機器へのプログラム導入作業における各作業工程で実行されるプログラム導入処理を制御する制御手段と、
ユーザからの実行要求及び／又は要求に応じて前記制御手段により実行されたプログラム導入処理の実行結果に基づき、作業工程に応じた表示画面を生成する生成手段と、
前記生成手段による更新要求に従って、当該装置が備える表示装置の表示画面を更新する更新手段と、を有することを特徴とするプログラム導入支援装置。
【請求項２】
前記表示画面を構成する１又は複数の画面部品を保持する保持手段を有し、
前記生成手段は、
ユーザからの実行要求及び／又は要求に応じて前記制御手段により実行されたプログラム導入処理の実行結果に基づき、前記保持手段が保持する画面部品を用いて、作業工程に応じた情報をユーザに提示する表示画面を生成することを特徴とする請求項１に記載のプログラム導入支援装置。
【請求項３】
前記生成手段は、
ユーザからの実行要求及び／又は要求に応じて前記制御手段により実行されたプログラム導入処理の実行結果に基づき、作業工程において実行される処理の動作設定を要求する設定画面を生成することを特徴とする請求項１又は２に記載のプログラム導入支援装置。
【請求項４】
前記生成手段は、
要求に応じて前記制御手段により実行されたプログラム導入処理の実行結果に基づき、作業工程における処理結果の確認を促す確認画面、作業工程における処理状況を通知する通知画面、及び／又は作業工程における処理の完了を通知する通知画面を生成することを特徴とする請求項１ないし３のいずれか一項に記載のプログラム導入支援装置。
【請求項５】
前記制御手段は、
前記機器へのプログラム導入作業における各作業工程で実行されるインストール及びアクティベーション処理の実行を制御し、
前記生成手段は、
ユーザから受け付けたインストール及びアクティベーション実行要求及び／又は要求に応じて前記制御手段により実行されたインストール及びアクティベーション処理の実行結果に基づき、インストール及びアクティベーション作業の各作業工程に応じた表示画面を生成することを特徴とする請求項１ないし４のいずれか一項に記載のプログラム導入支援装置。
【請求項６】
前記制御手段は、
前記機器へのプログラム導入作業における各作業工程で実行されるアンインストール及びディアクティベーション処理の実行を制御し、
前記生成手段は、
ユーザから受け付けたアンインストール及びディアクティベーション実行要求及び／又は要求に応じて前記制御手段により実行されたアンインストール及びディアクティベーション処理の実行結果に基づき、アンインストール及びディアクティベーション作業の各作業工程に応じた表示画面を生成することを特徴とする請求項１ないし５のいずれか一項に記載のプログラム導入支援装置。
【請求項７】
前記生成手段は、
要求されたプログラム導入作業の作業工程及び各作業工程の進捗状況に関する情報を提示する作業工程情報欄と、作業工程において実行されるプログラム導入処理に関する情報を提示するプログラム導入処理情報欄とを有する表示画面を生成することを特徴とする請求項１ないし６のいずれか一項に記載のプログラム導入支援装置。
【請求項８】
１又は複数の機器と、前記機器へのプログラム導入処理を行うプログラム導入支援装置とが、所定のデータ伝送路を介して接続されるプログラム導入支援システムであって、
前記プログラム導入装置から前記機器に対して実施するプログラム導入作業における各作業工程で実行されるプログラム導入処理を制御する制御手段と、
ユーザからの実行要求及び／又は要求に応じて前記制御手段により実行されたプログラム導入処理の実行結果に基づき、作業工程に応じた表示画面を生成する生成手段と、
前記生成手段による更新要求に従って、前記プログラム導入支援装置が備える表示装置の表示画面を更新する更新手段と、を有することを特徴とするプログラム導入支援システム。
【請求項９】
所定のデータ伝送路を介して、１又は複数の機器が接続されるプログラム導入支援装置における表示制御方法であって、
前記機器へのプログラム導入作業における各作業工程で実行されるプログラム導入処理を制御する制御手順と、
ユーザからの実行要求及び／又は要求に応じて前記制御手順により実行されたプログラム導入処理の実行結果に基づき、作業工程に応じた表示画面を生成する生成手順と、
前記生成手順による更新要求に従って、前記プログラム導入支援装置が備える表示装置の表示画面を更新する更新手順と、を有することを特徴とする表示制御方法。
【請求項１０】
所定のデータ伝送路を介して、１又は複数の機器が接続されるプログラム導入支援装置における表示制御プログラムであって、
コンピュータを、
前記機器へのプログラム導入作業における各作業工程で実行されるプログラム導入処理を制御する制御手段と、
ユーザからの実行要求及び／又は要求に応じて前記制御手段により実行されたプログラム導入処理の実行結果に基づき、作業工程に応じた表示画面を生成する生成手段と、
前記生成手段による更新要求に従って、前記コンピュータが備える表示装置の表示画面を更新する更新手段として機能させる表示制御プログラム。
【請求項１１】
請求項１０に記載のプログラムを記憶した、コンピュータが読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラムをインストール及び／又はアンインストールするプログラム導入支援装置、プログラム導入支援システムに関し、特に、所定のデータ伝送路を介して接続される複数の機器に対して行うプログラム導入支援時の表示画面を制御する技術に関するものである。
【背景技術】
【０００２】
近年では、主に複合機又は融合機（ＭＦＰ：Multifunction Peripheral）と呼ばれる画像処理装置において、その出荷後に新たなプログラムの開発や開発したプログラムのインストールが可能とされているものがある。斯かるプログラムのインストールや当該プログラムを利用するためのライセンスを、プログラムの実体と分離してユーザの利用形態に合わせて提供することができればユーザにとって便宜であるばかりでなく、プログラムを販売する側にとってもビジネスチャンスの拡大を期待できる。
【０００３】
例えば、特許文献１には、複数の機器に対するアプリケーションのライセンスの設定を効率的に行うための技術が開示されている。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、プログラムとライセンスとが分離して配布されることにより、画像処理装置に対するプログラムの導入手順が複雑化しているという問題がある。すなわち、ユーザは、プログラムの実体を入手し、インストールするだけでは、当該プログラムを利用することはできず、プログラムの利用に対するライセンスを獲得するための作業が必要とされる。
【０００５】
このようなことから、例えば、導入対象の画像処理装置が多いと、ユーザに多大な作業負荷をかけることになる。規模の大きいオフィス環境では、数百台と言った多くの画像処理装置が導入されているところもあり、これらの機器に対してプログラムを導入する場合は、一括して行えた方がよい。また、一括して行う場合、ユーザは、プログラム導入の進捗状況や導入結果などの導入作業に係る各種情報を知りたい。
【０００６】
本発明は上記従来技術の問題点を鑑み提案されたものであり、その目的とするところは、ユーザに対して、プログラム導入作業における各作業工程の情報を提示し適切な導入作業を支援することができるプログラム導入支援装置、プログラム導入支援システム、プログラム導入支援方法、プログラム導入支援プログラム、及びそのプログラムを記録した記録媒体を提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するため、本発明に係るプログラム導入支援装置は、所定のデータ伝送路を介して、１又は複数の機器が接続されるプログラム導入支援装置であって、前記機器へのプログラム導入作業における各作業工程で実行されるプログラム導入処理を制御する制御手段と、ユーザからの実行要求及び／又は要求に応じて前記制御手段により実行されたプログラム導入処理の実行結果に基づき、作業工程に応じた表示画面を生成する生成手段と、前記生成手段による更新要求に従って、当該装置が備える表示装置の表示画面を更新する更新手段と、を有している。
【０００８】
また、上記目的を達成するため、本発明に係るプログラム導入支援装置は、前記表示画面を構成する１又は複数の画面部品を保持する保持手段を有し、前記生成手段が、ユーザからの実行要求及び／又は要求に応じて前記制御手段により実行されたプログラム導入処理の実行結果に基づき、前記保持手段が保持する画面部品を用いて、作業工程に応じた情報をユーザに提示する表示画面を生成してもよい。
【０００９】
このような構成によって、本発明に係るプログラム導入支援装置は、表示画面（ＧＵＩ：Graphical User Interface）を介して受け付けた実行要求を、プログラム導入処理を制御する機能部に伝達する。プログラム導入支援装置は、表示画面を構成する画面部品（Graphic Parts）を保持しており、受け付けた実行要求及び／又は要求により実行されるプログラム導入処理の実行結果に基づき、画面部品を用いて、作業工程に応じた情報（処理状況や処理完了）を提示する表示画面を生成し、画面を更新する。
【００１０】
これによって、本発明に係るプログラム導入支援装置は、ユーザに対して、進捗状況や実行結果などのプログラム導入処理に係る情報を、実施される作業工程の中で（適切なタイミング）で提示できる。その結果、ユーザの導入作業を適切に支援することができる。
【００１１】
上記目的を達成するため、本発明に係るプログラム導入支援システムは、１又は複数の機器と、前記機器へのプログラム導入処理を行うプログラム導入支援装置とが、所定のデータ伝送路を介して接続されるプログラム導入支援システムであって、前記プログラム導入装置から前記機器に対して実施するプログラム導入作業における各作業工程で実行されるプログラム導入処理を制御する制御手段と、ユーザからの実行要求及び／又は要求に応じて前記制御手段により実行されたプログラム導入処理の実行結果に基づき、作業工程に応じた表示画面を生成する生成手段と、前記生成手段による更新要求に従って、前記プログラム導入支援装置が備える表示装置の表示画面を更新する更新手段と、を有している。
【００１２】
上記目的を達成するため、本発明に係る表示制御方法は、所定のデータ伝送路を介して、１又は複数の機器が接続されるプログラム導入支援装置における表示制御方法であって、前記機器へのプログラム導入作業における各作業工程で実行されるプログラム導入処理を制御する制御手順と、ユーザからの実行要求及び／又は要求に応じて前記制御手順により実行されたプログラム導入処理の実行結果に基づき、作業工程に応じた表示画面を生成する生成手順と、前記生成手順による更新要求に従って、前記プログラム導入支援装置が備える表示装置の表示画面を更新する更新手順と、を有している。
【００１３】
このような手順によって、本発明に係る表示制御方法は、ユーザからの実行要求及び／又は要求により実行されたプログラム導入処理の実行結果に基づき、作業工程に応じた表示画面を生成し、画面更新すると言う動作を実現する。
【００１４】
これによって、本発明に係る表示制御方法は、ユーザに対して、プログラム導入作業における各作業工程の情報を提示し適切な導入作業を支援することが可能な環境を提供できる。
【発明の効果】
【００１５】
本発明によれば、ユーザからの実行要求及び／又は要求により実行されたプログラム導入処理の実行結果に基づき、作業工程に応じた表示画面を生成し、画面更新することで、ユーザに対して、プログラム導入作業における各作業工程の情報を提示し適切な導入作業を支援可能なプログラム導入支援装置、プログラム導入支援システム、表示制御方法、表示制御プログラム、及びそのプログラムを記録した記録媒体を提供することができる。
【図面の簡単な説明】
【００１６】
【図１】本発明の第１の実施形態に係るプログラム導入支援システムの構成例を示す図である。
【図２】本発明の第１の実施形態に係るプログラム導入支援装置のハードウェア構成例を示す図である。
【図３】本発明の第１の実施形態に係るプログラム導入支援機能の構成例を示す図である。
【図４】本発明の第１の実施形態に係る表示制御機能の構成例を示す図である。
【図５】本発明の第１の実施形態に係るインストール及びアクティベーションの処理手順例を示すシーケンス図である。
【図６】本発明の第１の実施形態に係る管理ツールの起動画面例を示す図である。
【図７】本発明の第１の実施形態に係るプロダクトキーの入力画面例を示す図である。
【図８】本発明の第１の実施形態に係るライセンスの確認画面例を示す図である。
【図９】本発明の第１の実施形態に係るインストール機器の選択画面例を示す図である。
【図１０】本発明の第１の実施形態に係る機器情報取得の通知画面例を示す図である。
【図１１】本発明の第１の実施形態に係るダウンロード状況の通知画面例を示す図である。
【図１２】本発明の第１の実施形態に係るインストール完了の通知画面例を示す図である。
【図１３】本発明の第１の実施形態に係るアンインストール及びディアクティベーションの処理手順例を示すシーケンス図である。
【図１４】本発明の第１の実施形態に係るプロダクトキーの選択画面例を示す図である。
【図１５】本発明の第１の実施形態に係るアンインストールプログラムの選択画面例を示す図である。
【図１６】本発明の第１の実施形態に係るアンインストール機器の選択画面例を示す図である。
【図１７】本発明の第１の実施形態に係るアンインストール状況の通知画面例を示す図である。
【図１８】本発明の第１の実施形態に係るアンインストール完了の通知画面例を示す図である。
【発明を実施するための形態】
【００１７】
以下、本発明の好適な実施の形態（以下「実施形態」と言う）について、図面を用いて詳細に説明する。
【００１８】
［第１の実施形態］
＜システム構成＞
本実施形態に係るプログラム導入支援システムについて説明する。
【００１９】
図１は、本実施形態に係るプログラム導入支援システム１の構成例を示す図である。
図１のプログラム導入支援システム１において、ユーザ環境Ｅ１は、機器２００１〜２００ｎ（以降「機器２００」と総称する）を導入しているユーザ（顧客）のシステム環境である。例えば、ユーザ環境Ｅ１は、企業又はオフィスなどに相当する。ユーザ環境Ｅ１において、１又は複数の機器２００及びプログラム導入支援装置１００は、ＬＡＮ（Local Area Network）などの内部ネットワークＮ（有線又は無線の別は問わない）を介して接続されている。機器２００は、例えば、印刷、スキャン、コピー、及びファクス送受信などの複数の機能を実現する画像処理装置であり、電子機器の一例である。機器２００は、機能を実現するための１又は複数のプログラム及びデータを含むコンポーネントを追加又は更新することで機能拡張が行える。
【００２０】
プログラム導入支援装置１００は、ユーザ環境Ｅ１における機器２００において動作するコンポーネントや当該コンポーネントのライセンス（利用権限）の取得及び導入などを一括して行うＰＣ（Personal Computer）であり、情報処理装置の一例である。なお、ユーザ環境Ｅ１は、ユーザ数（企業又はオフィス単位のユーザ数）に応じて複数存在しうる。
【００２１】
一方、メーカー環境Ｅ２は、機器２００に追加されるコンポーネントの販売者側のシステム環境である。例えば、メーカー環境Ｅ２は、機器２００のメーカーによって運営される。メーカー環境Ｅ２は、ライセンスサーバ３００及びコンポーネントサーバ４００などを有する。
【００２２】
ライセンスサーバ３００は、ユーザによって購入されたコンポーネントのライセンスを管理するライセンス管理装置である。コンポーネントサーバ４００は、コンポーネントの実体（１又は複数のプログラム）を管理するプログラム管理装置である。
【００２３】
なお、ユーザ環境Ｅ１とメーカー環境Ｅ２とは、インターネットなどの外部ネットワークＩを介して接続されている。
【００２４】
このようなシステム構成により、プログラム導入支援システム１は、多くの機器２００が導入されたユーザ環境Ｅ１であっても、プログラム導入支援装置１００を介して、機器２００へのプログラム導入やライセンス取得を一括して行える。
【００２５】
＜ハードウェア構成＞
次に、上記プログラム導入支援装置１００のハードウェア構成について説明する。
【００２６】
図２は、本実施形態に係るプログラム導入支援装置１００のハードウェア構成例を示す図である。
図２に示すように、プログラム導入支援装置１００は、入力装置１０１、表示装置１０２、ドライブ装置１０３、ＲＡＭ（Random Access Memory）１０４、ＲＯＭ（Read Only Memory）１０５、ＣＰＵ（Central Processing Unit）１０６、インタフェース装置１０７、及びＨＤＤ（Hard Disk Drive）１０８などを備え、それぞれがバスＢで相互に接続されている。
【００２７】
入力装置１０１は、キーボード及びマウスなどを含み、プログラム導入支援装置１００に各操作信号を入力するのに用いられる。表示装置１０２は、ディスプレイなどを含み、プログラム導入支援装置１００による処理結果（例えば「処理状況」や「実行結果」に係る情報）などを表示する。
【００２８】
インタフェース装置１０７は、プログラム導入支援装置１００を所定のデータ伝送路（内部／外部ネットワーク）に接続するインタフェースである。よって、プログラム導入支援装置１００は、インタフェース装置１０７を介して、機器２００、ライセンスサーバ３００、及びコンポーネントサーバ３００とデータ通信を行うことができる。
【００２９】
ＨＤＤ１０８は、各種プログラム及びデータを格納している不揮発性の記憶装置である。格納されるプログラム及びデータには、例えば、プログラム導入支援装置１００全体を制御する情報処理システム（例えば「Ｗｉｎｄｏｗｓ（登録商標）」や「ＵＮＩＸ（登録商標）」などの基本ソフトウェアであるＯＳ（Operating System））、及び情報処理システム上において各種機能（例えば「プログラム導入支援機能」）を提供するアプリケーションなどがある。また、ＨＤＤ１０８は、格納している上記プログラム及びデータを、所定のファイルシステム及び／又はＤＢ（Data Base）により管理している。
【００３０】
ドライブ装置１０３は、着脱可能な記録媒体１０３ａとのインタフェースである。これにより、プログラム導入支援装置１００は、ドライブ装置１０３を介して、記録媒体１０３ａの読み取り及び／又は書き込みを行うことができる。
【００３１】
ＲＯＭ１０５は、電源を切っても内部データを保持することができる不揮発性の半導体メモリ（記憶装置）である。ＲＯＭ１０５には、プログラム導入支援装置１００が起動されるときに実行されるＢＩＯＳ（Basic Input/Output System）や、プログラム導入支援装置１００のシステム設定及びネットワーク関連設定などのデータが格納されている。
【００３２】
ＲＡＭ１０４は、上記各種記憶装置から読み出されたプログラム及びデータを一時保持する揮発性の半導体メモリ（記憶装置）である。ＣＰＵ１０６は、上記ＲＡＭ１０４上に読み出したプログラムを実行することにより、プログラム導入支援装置１００の全体制御及び各種搭載機能の動作を実現する。
【００３３】
このようなハードウェア構成により、プログラム導入支援装置１００は、例えば、ＨＤＤ１０８からＲＡＭ１０４上に読み出したプログラム（搭載機能を実現するソフトウェア部品）をＣＰＵ１０６により実行し、搭載機能を実現することができる。
【００３４】
なお、プログラム導入支援装置１００は、上記ハードウェア構成からも分かるように、ＰＣなどの情報処理装置と略同一の構成をしている。
【００３５】
＜プログラム導入支援機能＞
本実施形態に係るプログラム導入支援機能について説明する。
【００３６】
図３は、本実施形態に係るプログラム導入支援機能の構成例を示す図である。
図３に示すように、プログラム導入支援装置１００は、主なソフトウェア構成として、管理ツール２０を有している。
【００３７】
管理ツール２０は、上述したように、機器２００において動作するコンポーネントや当該コンポーネントのライセンスの取得及び導入などを一括して行う機能、すなわちプログラム導入支援機能を実現するソフトウェアである。
【００３８】
プログラム導入支援装置１００は、起動された上記管理ツール２０により、複数の機器２００に対して、例えば次のような処理を行う。
【００３９】
プログラム導入支援装置１００は、コンポーネントサーバ４００から、プロダクトキーＰＫに対応するコンポーネント（導入するプログラム群）ＣＭＰを取得する。このとき用いられるプロダクトキーＰＫとは、商用ソフトウェアに付属しているパッケージごとに固有の情報である。プロダクトキーＰＫは、メーカー側での登録ユーザの管理に用いられるほか、不正コピー防止のために、インストール時に入力を要求し、適切なプロダクトキーＰＫが入力できなければインストールできないようになっている。よって、プログラム導入支援装置１００では、管理ツール２０にユーザから適切なプロダクトキーＰＫが入力された場合に、コンポーネントＣＭＰが取得できる。
【００４０】
また、プログラム導入支援装置１００は、ライセンスサーバ３００に対して、導入対象として特定した複数の機器２００のライセンス認証を要求する。このとき、プログラム導入支援装置１００は、ユーザから入力されたプロダクトキーＰＫ及び機器２００から取得した機器情報をライセンスサーバ３００に送信し、各機器２００のライセンス認証を要求する。その結果、ライセンスサーバ３００からは、プロダクトキーＰＫ及び機器情報に基づき、機器２００ごとのライセンスが発行される。
【００４１】
これにより、プログラム導入支援装置１００は、導入対象として特定した複数の機器２００に対して、インストール及びアクティベーションを開始する。
【００４２】
管理ツール２０は、このようなプログラム導入処理を行うため、主なプログラム導入支援機能として、ＵＩ制御部２１、情報取得部２２、及びプログラム導入制御部２３を有している。
【００４３】
ＵＩ制御部２１は、管理ツール２０に対しての実行要求などを受け付けるＧＵＩや、プログラム導入作業における各作業工程の情報提示を制御する機能部である。つまり、ＵＩ制御部２１は、導入作業を適切に支援するために、プログラム導入時の表示画面（プログラム導入支援装置１００が備える表示装置１０２の画面）を制御する。ＵＩ制御部２１の詳細については、表示制御機能において後述する。
【００４４】
情報取得部２２は、プログラム導入時に必要な各種情報を、機器２００やライセンスサーバ３００から取得する機能部である。例えば、情報取得部２２は、ライセンス認証で必要な機器情報（例えば「機体番号」）を機器２００から取得する。また、情報取得部２２は、プロダクトキーＰＫに基づき利用可能なコンポーネントＣＭＰを特定する上で必要なパッケージ情報をライセンスサーバ３００から取得する。パッケージとは、本実施形態に係るコンポーネントＣＭＰが市場で流通する場合の単位であり、パッケージ情報とは、流通単位でのコンポーネントＣＭＰに係る情報である。
【００４５】
プログラム導入制御部２３は、コンポーネントＣＭＰやライセンスの取得及び導入などのプログラム導入作業における各作業工程で実行される処理（以下「プログラム導入処理」と言う）を制御する機能部である。プログラム導入制御部２３は、上記各機能部と連係し、プログラム導入の一括処理を実現する。例えば、プログラム導入制御部２３は、ＵＩ制御部２１により受け付けたユーザからの実行要求に従って、作業工程ごとのプログラム導入処理を制御し、要求により実行された処理の結果（実行結果）を、ＵＩ制御部２１に渡す。また、プログラム導入制御部２３は、情報取得部２２による取得情報に基づき、プログラム導入処理を実行する。
【００４６】
《表示制御機能》
本実施形態に係るプログラム導入支援機能では、上記管理ツール２０により、次のような表示制御機能を実現している。
【００４７】
管理ツール２０は、ＵＩ制御部２１により、表示画面（ＧＵＩ）を介して受け付けた実行要求をプログラム導入制御部２３に伝達する。管理ツール２０は、表示画面を構成する画面部品を保持しており、ＵＩ制御部２１により、受け付けた実行要求及び／又は要求により実行されるプログラム導入処理の実行結果に基づき、画面部品を用いて、作業工程に応じた情報（処理状況や処理完了）を提示する表示画面を生成し、画面を更新する。管理ツール２０は、このような表示制御機能を有している。
【００４８】
機器２００に対するプログラム導入作業は、プログラムとライセンスとが分離して配布されることにより、複雑化している。このようなことから、導入対象の機器２００が多い場合には、ユーザに多大な作業負荷をかけることになる。そのため、プログラム導入処理は、複数の機器２００に対して一括して行えた方がよい。また、一括して行う場合、ユーザは、プログラム導入の進捗状況や実行結果などの導入作業に係る各種情報を知りたい。
【００４９】
そこで、本実施形態に係る表示制御機能では、ユーザからの実行要求及び／又は要求により実行されたプログラム導入処理の実行結果に基づき、作業工程に応じた表示画面を生成し、画面更新する。
【００５０】
これによって、本実施形態に係るプログラム導入支援機能では、ユーザに対して、進捗状況や実行結果などのプログラム導入処理に係る情報を、実施される作業工程の中で（適切なタイミング）で提示でき、ユーザの導入作業を適切に支援することができる。
【００５１】
以下に、上記表示制御機能の構成とその動作について説明する。
図４は、本実施形態に係る表示制御機能の構成例を示す図である。
図４に示すように、表示制御機能は、イベント受付部２１１、画面生成部２１２、画面部品保持部２１３、及び画面更新部２１４を有している。このうち、イベント受付部２１１、画面生成部２１２、及び画面更新部２１４は、ＵＩ制御部２１が有する機能部である。
【００５２】
イベント受付部２１１は、表示画面のＧＵＩを介したユーザの操作イベント受付や、プログラム導入制御部２３と各種実行イベントのやり取りなどを行う機能部である。イベント受付部２１１が受け付ける操作イベントＥＶＮには、例えば、作業工程におけるプログラム導入処理の実行要求や動作設定などがある。また、イベント受付部２１１がプログラム導入制御部２３とやり取りする実行イベントには、例えば、上記ユーザから受け付けた実行要求の伝達や要求により実行されたプログラム導入処理の処理結果（実行結果）などがある。つまり、プログラム導入制御部２３では、イベント受付部２１１から伝達された実行要求に従って、プログラム導入処理が実行され、その実行結果がイベント受付部２１１へと渡される。
【００５３】
画面生成部２１２は、１又は複数の画面部品を用いて、プログラム導入時の作業工程に応じた表示画面を生成する機能部である。画面部品は、画面部品保持部２１３により保持されている。画面部品保持部２１３が保持する画面部品には、例えば、文字（「表示情報の文字列」など）、図形（「選択領域」、「入力領域」、及び「選択ボタン」など）、画像（「背景画像」など）などがある。画面部品保持部２１３は、例えば、プログラム導入支援装置１００が備える記憶装置（例えば「ＨＤＤ」）の所定の記憶領域にあたる。画面部品は、管理ツール２０のソフトウェアがプログラム導入支援装置１００にインストールされたときに、記憶領域に格納され保持される。画面生成部２１２は、表示画面生成時に画面部品保持部２１３を参照し、表示画面を構成するのに必要な画面部品を取得する。
【００５４】
また、画面生成部２１２は、イベント受付部２１１により受け付けた実行要求及び／又は要求により実行されたプログラム導入処理の実行結果に基づき、表示画面を生成し、画面更新部２１４に対して表示画面の更新を要求する。画面更新部２１４は、画面生成部２１２から要求に従って、現在表示されている画面を更新する。
【００５５】
画面生成部２１２は、次のような表示画面を生成する。
画面生成部２１２は、管理ツール２０が起動されると、プログラム導入支援に係るサービスの開始を通知する起動画面を生成する。
【００５６】
また、画面生成部２１２は、イベント受付部２１１から実行要求を受け付けると、要求により実行されるプログラム導入処理に関する情報を提示する画面を生成する。例えば、画像更新部２１４は、作業工程の実施要求を受け付けると、作業工程で実行されるプログラム導入処理が動作設定を必要とする処理であった場合、その動作設定を要求する設定画面を生成する。
【００５７】
また、画面生成部２１２は、イベント受付部２１１からプログラム導入処理の実行結果を受け取ると、実行中のプログラム導入処理に関する情報を提示する画面を生成する。例えば、画面生成部２１２は、実行結果を受け取ると、プログラム導入処理の処理状況を通知する通知画面又はプログラム導入処理の実行結果を確認する確認画面を生成する。また、画面生成部２１２は、処理完了を受け取ると、プログラム導入処理の完了を通知する通知画面を生成する。
【００５８】
このように、表示制御機能では、画面生成部２１２により、ユーザに対して、進捗状況や実行結果などのプログラム導入処理に係る情報を、実施される作業工程の中で提示する。つまり、表示制御機能は、ＵＩ制御部２１が有する画面生成部２１２とプログラム導入制御部２３とが連係動作することで、導入作業を支援する上で必要な情報（ユーザが所望する情報）を適切なタイミングで提示することができる。
【００５９】
このように、本実施形態に係る表示制御機能は、上記各機能部が連係動作することにより実現される。
【００６０】
次に、表示制御機能の詳細な動作（機能部群の連係動作）について、プログラム導入処理の手順を示すシーケンス図を用いて説明する。
【００６１】
プログラム導入支援における表示制御機能は、プログラム導入支援装置１００に搭載（インストール）されるプログラム（表示制御機能に係るソフトウェア部品）が、ＣＰＵ１０６により、格納先（例えば「ＲＯＭ」）からＲＡＭ１０４上に読み出され、以下の処理が実行されることで実現される。
【００６２】
本実施形態に係るプログラム導入処理には、主に「インストール及びアクティベーション処理」と、「アンインストール及びディアクティベーション処理」とに大別される。以降では、上記各処理を順に説明するとともに、これらの処理に連係して動作する表示制御処理について説明する。
【００６３】
《インストール及びアクティベーション処理》
図５は、本実施形態に係るインストール及びアクティベーションの処理手順例を示すシーケンス図である。同図において、機器２００のユーザは、販売パッケージに係るいずれかの商品を購入し、当該商品のプロダクトキーＰＫを入手済みであるとする。ここで言う「販売パッケージ」とは、コンポーネントの流通単位である。販売パッケージは、複数で流通する場合もある。
【００６４】
また、プロダクトキーＰＫは、商品が購入されるごとに一意に発行される（又は割り当てられる）識別子（固有の情報）である。プロダクトキーＰＫは、商品に含まれる販売パッケージに対するライセンス（利用権限）を識別する情報（ライセンス識別子）として、また、商品の正当な購入者であることを証明するための情報として用いられる。なお、本実施形態において、プロダクトＩＤとプロダクトキーＰＫとは明確に区別される。すなわち、プロダクトＩＤは、製品としての販売パッケージの異同を区別するものであるのに対し、プロダクトキーＰＫは、商品の購入という行為を区別するためのものである。したがって、同一のプロダクトＩＤに対し、商品の購入のたびに異なるプロダクトキーＰＫが発行される。
【００６５】
なお、商品の購入の形態は所定のものに限定されない。店頭における取引によって購入されてもよいし、電子的な取引によって（例えば「Ｗｅｂサイトを利用して」）購入されてもよい。前者の場合、プロダクトキーＰＫは、販売パッケージが記録されたＣＤ（Compact Disk）などに貼付されているのが一般的であろう。後者の場合、商品を購入したＷｅｂサイトにおいて、購入確定時にＷｅｂページ上にプロダクトキーＰＫが表示されてもよいし、電子メールによってプロダクトキーＰＫが通知されてもよい。図５では、ユーザが、購入した商品に係る販売パッケージに関するインストール及びアクティベーション（ライセンスの取得）を、プログラム導入支援装置１００を利用して、各機器２００に対して行う場面を想定する。
【００６６】
以下にインストール及びアクティベーション処理の中で動作する表示制御処理について説明する。
【００６７】
プログラム導入支援装置１００では、管理ツール２０が起動されると、ＵＩ制御部２１の画面生成部２１２により、例えば、図６に示すような起動画面が表示装置１０２に表示される。
【００６８】
図６は、本実施形態に係る管理ツール２０の起動画面例を示す図である。
図６には、管理ツール２０がユーザに対して提供するプログラム導入を支援する各種サービスを選択可能な起動画面Ｗ１の例が示されている。
【００６９】
起動画面Ｗ１は、主に、管理ツール２０を説明するコメント欄と、上記各種サービスを選択可能な選択領域ＳＲ１とを有している。同図に示す画面例では、選択領域ＳＲ１から「新規ソフトウェアの追加」、「ライセンスの更新」、及び「その他」などのサービスが選択可能である。ここで言う「その他」のサービスには、例えば、無償アップデート、アンインストール（ソフトウェアの削除）、及び結果情報取得などがある。
【００７０】
ＵＩ制御部２１では、画面生成部２１２が、画面部品保持部２１３で保持する画面部品を参照し、上記起動画面Ｗ１を生成する。例えば、画面生成部２１２は、コメント欄に表示する文字「アプリケーションの説明」や、選択領域ＳＲ１に表示する文字「サービスの選択メニュー」などの各画面部品を用いて、上記起動画面Ｗ１を生成する。その結果、画面更新部２１４が、画面更新の要求に従って、表示装置１０２の表示画面を起動画面Ｗ１へと更新する。
【００７１】
プログラム導入支援装置１００は、このような起動画面Ｗ１を介して、ユーザが所望するサービスの動作要求、すなわちプログラム導入の作業要求を操作イベントＥＶＮとして受け付ける。なお、以降には、起動画面Ｗ１を介して、「新規ソフトウェアの追加」が選択された場合の処理手順について、図５を用いて説明する。
【００７２】
ＵＩ制御部２１は、起動画面Ｗ１を介して販売パッケージのインストール開始指示の入力（操作イベント）を、イベント受付部２１１で受け付けると、画面生成部２１２により、プロダクトキー入力画面を表示装置１０２に表示させる（Ｓ１０１）。
【００７３】
図７は、本実施形態に係るプロダクトキーＰＫの入力画面例を示す図である。
図７には、管理ツール２０がインストールする販売パッケージ（コンポーネント）に対応するプロダクトキーＰＫの入力をユーザに要求する入力画面（設定画面）Ｗ２の例が示されている。
【００７４】
入力画面Ｗ２は、主に、要求されたプログラム導入作業の作業工程及び各作業工程の進捗状況（進行状況）に関する情報を提示する作業工程情報欄Ｒ２１と、作業工程において実行されるプログラム導入処理に関する情報を提示するプログラム導入処理情報欄Ｒ２２とを有している。同図に示す画面例では、作業工程情報欄Ｒ２１に、「プロダクトキーの入力」の工程に作業が進んでいることを示す進捗状況が表示されている。また、プログラム導入処理情報欄Ｒ２２には、プロダクトキーＰＫの入力作業を促す情報が表示されている。また、プログラム導入処理情報欄Ｒ２２のテキストボックスＴ１によりプロダクトキーＰＫが入力可能である。また、プログラム導入処理情報欄Ｒ２２では、［前回値参照］ボタンＢ１を押下することで、入力対象のプロダクトキーＰＫがファイル指定（インポート）可能である。
【００７５】
ＵＩ制御部２１では、イベント受付部２１１で、インストール開始指示を受け付けると、画面生成部２１２が、画面部品保持部２１３で保持する画面部品を参照し、上記入力画面Ｗ２を生成する。例えば、画面生成部２１２は、作業工程情報欄Ｒ２１に表示する工程項目文字「プロダクトキーの入力」や、プログラム導入処理情報欄Ｒ２２に表示するテキストボックスＴ１及び［前回値参照］ボタンＢ１などの各画面部品を用いて、上記入力画面Ｗ２を生成する。その結果、画面更新部２１４が、画面更新の要求に従って、表示装置１０２の表示画面を起動画面Ｗ１から入力画面Ｗ２へと更新する。
【００７６】
ＵＩ制御部２１は、入力画面Ｗ２の［次へ］ボタンＢ２が押下されることで、プロダクトキーＰＫの入力を受け付ける。
【００７７】
図５の説明に戻る。ＵＩ制御部２１は、インストール対象の販売パッケージ（以下「カレント販売パッケージ」と言う）のプロダクトキーＰＫが入力画面Ｗ２を介して入力されると（Ｓ１０２）、入力されたプロダクトキーＰＫをプログラム導入制御部２３へ渡す。
【００７８】
プログラム導入制御部２３は、情報取得部２２に対して当該プロダクトキーに係るパッケージ情報の取得を要求する。その結果、情報取得部２２は、プロダクトキーＰＫを指定して当該プロダクトキーに係るパッケージ情報の取得要求をライセンスサーバ３００に送信する（Ｓ１０３）。
【００７９】
ライセンスサーバ３００は、パッケージ情報の取得要求の受信に応じ、当該取得要求において指定されているプロダクトキーＰＫの有効性を判定する。例えば、ライセンスサーバ３００では、ライセンス管理テーブルを参照し、プロダクトキーＰＫの有効性を判定する。
【００８０】
ライセンス管理テーブルは、販売パッケージに関して発行されるライセンスごとに管理番号（レコード識別子）、プロダクトキーＰＫ、プロダクトＩＤ、機体番号（機器識別子）、ステータス（ライセンス状態情報）、ライセンス形態（契約形態情報）、ライセンス有効期間、ライセンス有効期限、及びライセンス発行日などの項目を有する。これらの項目のうち、管理番号、プロダクトキー、プロダクトＩＤ、ステータス、ライセンス形態、及びライセンス有効期間は、商品が購入された際にライセンス管理テーブルに記録される。一方、機体番号、ライセンス有効期限、及びライセンス発行日は、ライセンスの発行（すなわちライセンスファイルの発行）に応じて記録される。また、ライセンスの発行に応じて、ステータスの値も更新される。
【００８１】
ライセンスサーバ３００では、次のようにプロダクトキーＰＫの有効性を判定する。例えば、ライセンスサーバ３００は、受信されたプロダクトキーＰＫを含むレコードがライセンス管理テーブルに登録されており、当該プロダクトキーを含むレコードのステータスが「チェックアウト」でなく、かつ、当該プロダクトキーを含むレコードのライセンス有効期限が現時点を超えていない場合（ライセンス有効期限の値が登録されていない場合も含む）、当該プロダクトキーは有効であると判定する。一方、それ以外の場合は、当該プロダクトキーは無効であると判定する。
【００８２】
当該プロダクトキーは無効であると判定された場合には、プロダクトキーＰＫが無効であることを示すエラー情報をプログラム導入支援装置１００に返信する。この場合、プログラム導入支援装置１００は、受信したエラー情報がプログラム導入制御部２３からＵＩ制御部２１へと渡される。これにより、ＵＩ制御部２１は、画面生成部２１２により、イベント受付部２１１を介して受け付けたエラー情報に基づき表示画面を生成し、画面更新部２１４により、表示装置１０２の表示画面を更新する。このようにして、インストール作業を中止する。
【００８３】
また、当該プロダクトキーが有効であると判定された場合には、受信されたプロダクトキーに係るレコードに記録されている情報（パッケージ情報）をプログラム導入支援装置１００に返信する（Ｓ１０４）。したがって、パッケージ情報には、少なくとも当該プロダクトキーに関連付けられているプロダクトＩＤ（すなわちカレント販売パッケージのプロダクトＩＤ）が含まれている。また、当該プロダクトキーがグループライセンス又はボリュームライセンスに係るものである場合、複数のプロダクトＩＤ（複数のレコード）に係る情報がパッケージ情報に含まれる。
【００８４】
プログラム導入支援装置１００は、受信したパッケージ情報がプログラム導入制御部２３からＵＩ制御部２１へと渡される。
【００８５】
ＵＩ制御部２１は、イベント受付部２１１を介して受け付けたパッケージ情報を含む確認画面を表示装置１０２に表示させ、カレント販売パッケージの内容及びそのライセンスの内容をユーザに確認させる（Ｓ１０５）。
【００８６】
図８は、本実施形態に係るライセンスの確認画面例を示す図である。
図８には、管理ツール２０がライセンスの内容をユーザに確認させる確認画面Ｗ３の例が示されている。
【００８７】
確認画面Ｗ３は、入力画面Ｗ２と同様に、作業工程情報欄Ｒ３１と、プログラム導入処理情報欄Ｒ３２とを有している。同図に示す画面例では、作業工程情報欄Ｒ３１に、「プロダクトキーの入力」が終了し、「追加ソフトウェア確認」の工程に作業が進んでいることを示す進捗状況が表示されている。また、プログラム導入処理情報欄Ｒ３２には、カレント販売パッケージの内容確認を促す情報、及びカレント販売パッケージの内容「パッケージ名」、「プロダクトキー」、及び「ベンダー名」と、そのライセンスの内容「ライセンス種別」及び「ライセンス数」とを確認する情報が表示されている。ここで言う「ライセンス種別」には、例えば、通常ライセンス、ボリュームライセンス、グループライセンス、時限ライセンス、及びトライアルライセンスなどがある。また、「ライセンス数」は、残ライセンス数及び総ライセンス数が表示される。
【００８８】
ＵＩ制御部２１では、イベント受付部２１１で、プログラム導入制御部２３から情報取得部２２による情報取得処理結果（パッケージ情報取得の実行結果）を受け付けると、画面生成部２１２が、画面部品保持部２１３で保持する画面部品を参照し、上記確認画面Ｗ３を生成する。例えば、画面生成部２１２は、作業工程情報欄Ｒ３１に表示する工程項目文字「追加ソフトウェア確認」や、プログラム導入処理情報欄Ｒ３２に表示する項目文字「パッケージ名」、「プロダクトキー」、「ベンダー名」、「ライセンス種別」、及び「ライセンス数」などの各画面部品を用いて、上記確認画面Ｗ３を生成する。このとき、画面生成部２１２は、情報取得部２２により取得されたパッケージ情報を、プログラム導入制御部２３からイベント受付部２１１を介して受け取り、上記プログラム導入処理情報欄Ｒ３２の各項目値（表示内容）を生成する。
【００８９】
その結果、画面更新部２１４が、画面更新の要求に従って、表示装置１０２の表示画面を入力画面Ｗ２から確認画面Ｗ３へと更新する。
【００９０】
ＵＩ制御部２１は、確認画面Ｗ３の［次へ］ボタンＢ３が押下されることで、内容確認された旨（インストール作業継続指示）を受け付ける。
【００９１】
図５の説明に戻る。ＵＩ制御部２１は、起動画面Ｗ３を介してインストール作業継続指示の入力（操作イベント）を、イベント受付部２１１で受け付けると、画面生成部２１２により、機器２００の一覧を含む選択画面を表示装置１０２に表示させ、カレント販売パッケージをインストールする機器２００をユーザに選択させる（Ｓ１０６）。
【００９２】
図９は、本実施形態に係るインストール機器の選択画面例を示す図である。
図９には、管理ツール２０がインストールする機器２００をユーザに選択させる選択画面（設定画面）Ｗ４の例が示されている。
【００９３】
選択画面Ｗ４は、確認画面Ｗ３と同様に、作業工程情報欄Ｒ４１と、プログラム導入処理情報欄Ｒ４２とを有している。同図に示す画面例では、作業工程情報欄Ｒ４１に、「追加ソフトウェア確認」が終了し、「インストール機器の選択」の工程に作業が進んでいることを示す進捗状況が表示されている。また、プログラム導入処理情報欄Ｒ４２には、インストール対象機器の選択を要求する情報、及びインストールするカレント販売パッケージの内容「追加ソフトウェア（パッケージ名）」と、そのライセンスの内容「ライセンス数」とを確認する情報が表示されている。なお、ここで表示される「ライセンス数」は、情報取得部２２によるパッケージ情報取得処理（ステップＳ１０３、Ｓ１０４）の実行結果に基づく情報である。つまり、残ライセンス数及び総ライセンス数がパッケージ情報から得た値となる。
【００９４】
さらに、プログラム導入処理情報欄Ｒ４２では、機器２００の「アドレス」、「モデル名」、「設置場所」、及び「コメント」などの項目を有する機器一覧が選択領域ＳＬ４として表示され、インストール対象とする機器２００が選択可能である。なお、選択領域ＳＬ４では、予めそのＩＰアドレス及びホスト名などが、プログラム導入支援装置１００が備える記憶装置（例えば「ＨＤＤ」）に記憶されている機器２００（機器情報が記憶されている機器）が表示対象とされる。または、情報取得部２２が、ブロードキャストなどを内部ネットワークＮ上に発行することにより、内部ネットワークＮに接続されている機器２００を動的に検索し、検索された機器２００のホスト名などを表示させてもよい。
【００９５】
プログラム導入処理情報欄Ｒ４２では、選択領域ＳＬ４のチェックボックス（□）を押下する（□→■）ことで、インストール対象の機器２００が選択可能である。また、プログラム導入処理情報欄Ｒ４２では、［全選択］ボタンを押下することで、選択領域ＳＬ４に表示される全ての機器２００が選択可能である。一方、［全選択解除］ボタンを押下することで、機器選択の全てが解除可能である。さらに、プログラム導入処理情報欄Ｒ４２では、［参照］ボタンを押下することで、インストール対象の機器２００がファイル指定可能である。また、プログラム導入処理情報欄Ｒ４２では、選択領域ＳＬ４において、複数の機器２００をインストール先として選択することも可能である。
【００９６】
ＵＩ制御部２１では、イベント受付部２１１で、インストール作業継続指示（操作イベント）を受け付けると、画面生成部２１２が、画面部品保持部２１３で保持する画面部品を参照し、上記選択画面Ｗ４を生成する。例えば、画面生成部２１２は、作業工程情報欄Ｒ４１に表示する工程項目文字「インストール機器の選択」や、プログラム導入処理情報欄Ｒ４２に表示する項目文字「追加ソフトウェア（パッケージ名）」、「ライセンス数」、及び「機器一覧」や、選択領域ＳＬ４、［全選択］ボタン、及び［全選択解除］ボタンなどの各画面部品を用いて、上記選択画面Ｗ４を生成する。このとき、画面生成部２１２は、情報取得部２２により取得されたパッケージ情報を、プログラム導入制御部２３からイベント受付部２１１を介して受け取り、上記プログラム導入処理情報欄Ｒ４２の各項目値（表示内容）を生成する。また、画面生成部２１２は、記録された機器情報に基づき、上記選択領域ＳＬ４の各項目（表示内容）を生成する。
【００９７】
その結果、画面更新部２１４が、画面更新の要求に従って、表示装置１０２の表示画面を確認画面Ｗ３から選択画面Ｗ４へと更新する。なお、上記プログラム導入処理情報欄Ｒ４２には、項目文字「機器一覧」の項目値として機器選択数が表示される。この機器選択数は、上記画面生成及び画面更新処理により、ユーザの選択数に応じて更新される。
【００９８】
ＵＩ制御部２１は、選択画面Ｗ４の［次へ］ボタンＢ４が押下されることで、インストール対象機器の指定要求を受け付ける。
【００９９】
プログラム導入支援装置１００は、受け取ったインストール対象機器の選択情報をＵＩ制御部２１からプログラム導入制御部２３へと渡す。
【０１００】
図５の説明に戻る。プログラム導入制御部２３は、上記選択情報に基づき、情報取得部２２に対してインストール対象の機器情報の取得を要求する。その結果、情報取得部２２は、インストール対象として選択された各機器２００に対して機器情報の取得要求を送信する（Ｓ１０７）。
【０１０１】
機器情報の取得要求を受信した各機器２００は、インストール情報管理テーブルに記録されている情報を取得し、取得された情報と当該機器の機体番号とを含む情報を機器情報としてプログラム導入支援装置１００に返信する（Ｓ１０８）。
【０１０２】
インストール情報管理テーブルには、当該機器にインストールされている販売パッケージ又はファームウェアごとに、プロダクトＩＤ（販売パッケージに属する機能パッケージのプロダクトＩＤ一覧）、バージョン、機能パッケージのプロダクトＩＤ、アクティベーションフラグ（アクティベーションの有無）、及び有効期限などが登録されている。インストール情報管理テーブルの内容は、後述される販売パッケージのインストール時に登録される。なお、ステップＳ１０８において返信される機器情報には、インストール情報管理テーブルに登録されている全ての情報が含められる。
【０１０３】
プログラム導入支援装置１００では、ステップＳ１０８において、各機器２００から上記機器情報を取得中に、ＵＩ制御部２１により、その旨をユーザに通知する通知画面を表示装置１０２に表示する。
【０１０４】
図１０は、本実施形態に係る機器情報取得の通知画面例を示す図である。
図１０には、管理ツール２０が機器２００から機器情報を取得している旨を通知する通知画面Ｗ５の例が示されている。
【０１０５】
ＵＩ制御部２１は、画面生成部２１２により、イベント受付部２１１を介して、プログラム導入制御部２３から受け取った情報取得部２２の取得状況（実行結果）に基づき、通知画面を生成する。
【０１０６】
その結果、画面更新部２１４が、画面更新の要求に従って、表示装置１０２の表示画面を更新する。
【０１０７】
これにより、プログラム導入支援装置１００は、ユーザに対して、インストール対象の機器２００から機器情報を取得する処理の進捗状況を通知することができる。
【０１０８】
なお、通知画面Ｗ５では、［キャンセル］ボタンが押下されることで、機器情報の取得処理が中止可能である。
【０１０９】
図５の説明に戻る。続くステップＳ１０９は、機器情報が取得された（選択画面で選択された）機器２００ごとに実行されるループ処理である。ループ処理において処理対象とされる機器２００を以下、「カレント機器」という。
【０１１０】
プログラム導入支援装置１００は、プログラム導入制御部２３により、カレント機器の機器情報と、取得したパッケージ情報とを含む妥当性検証要求をコンポーネントサーバ４００に送信する（Ｓ１０９−１）。ここで言う「妥当性」とは、カレント販売パッケージに含まれる機能パッケージをカレント機器にインストールすることの妥当性である。コンポーネントサーバ４００は、妥当性検証要求の受信に応じ、カレント機器への機能パッケージのインストール妥当性を検証する。例えば、コンポーネントサーバ４００では、依存関係管理テーブルを参照し、インストールの妥当性を判定する。
【０１１１】
依存関係管理テーブルは、機能パッケージごとに当該機能パッケージのプロダクトＩＤ、及び当該機能パッケージが依存する（当該機能パッケージの依存先の）機能パッケージ又はファームウェアのプロダクトＩＤが登録されている。
【０１１２】
コンポーネントサーバ４００では、次のようにインストールの妥当性を判定する。例えば、コンポーネントサーバ４００は、まず、妥当性の検証において、カレントパッケージに属する機能パッケージのプロダクトＩＤの一覧をパッケージ管理テーブルより取得する。パッケージ管理テーブルには、販売パッケージごとに、プロダクトＩＤ、バージョン、及び機能パッケージのプロダクトＩＤなどが登録されている。続いて、コンポーネントサーバ４００は、取得された各機能パッケージのプロダクトＩＤと依存関係管理テーブルとに基づき、当該機能パッケージが依存する機能パッケージ又はファームウェア（以下「依存先パッケージ」と言う）を特定する。
【０１１３】
依存先パッケージがある場合には、当該依存先パッケージのプロダクトＩＤが機器情報に含まれているか否かを判定する。全ての依存先パッケージのプロダクトＩＤが機器情報に含まれている場合には、妥当性はあると判定する。機器情報に含まれていない依存先パッケージ（以下「未解決パッケージ」と言う）が少なくとも一つ存在する場合には、妥当性はないと判定する。なお、一つの機能パッケージに対して依存先パッケージは複数存在しうる。また、依存関係の探索は、再帰的に行われる。
【０１１４】
続いて、コンポーネントサーバ４００は、妥当性の検証結果をプログラム導入支援装置１００に返信する（Ｓ１０９−２）。妥当性がないと判定された場合、検証結果には、未解決パッケージのプロダクトＩＤが含まれる。
【０１１５】
続いて、プログラム導入支援装置１００は、プログラム導入制御部２３により、カレント販売パッケージのプロダクトＩＤを指定してダウンロード要求をコンポーネントサーバ４００に送信する（Ｓ１０９−３）。
【０１１６】
コンポーネントサーバ４００は、指定されたプロダクトＩＤに対応する販売パッケージを、当該装置が備える記憶装置（例えば「ＨＤＤ」）から取得し、取得した販売パッケージをプログラム導入支援装置１００に返信する（Ｓ１０９−４）。カレント販売パッケージが複数の場合、ダウンロード（Ｓ１０９−３、Ｓ１０９−４）は複数回繰り返される。また、ステップＳ１０９−２において妥当性がない旨の検証結果が受信された場合、未解決パッケージに関してもダウンロードが実行される。なお、カレントパッケージが複数である場合とは、例えば、ステップＳ１０１において入力されたプロダクトキーＰＫがグループライセンスに係るものである場合や、複数のプロダクトキーＰＫが入力された場合などである。
【０１１７】
続いて、プログラム導入支援装置１００は、プログラム導入制御部２３により、ステップＳ１０１において入力されたプロダクトキーＰＫと、カレント販売パッケージのプロダクトＩＤと、カレント機器の機体番号とを指定して、ライセンスの使用要求（ライセンスの使用要求）をライセンスサーバ３００に送信する（Ｓ１０９−５）。
【０１１８】
ライセンスサーバ３００は、ライセンスの使用要求に含まれている情報及びライセンス管理テーブルに基づいてライセンスファイルを生成し、生成されたラインセンスファイルをプログラム導入支援装置１００に返信する（Ｓ１０９−６）。
【０１１９】
ライセンスファイルは、プロダクトＩＤ（利用が許可された販売パッケージのプロダクトＩＤ）、機体番号（利用が許可された機器の機体番号）、及び有効期限（ライセンスの有効期限）を含む。
【０１２０】
なお、プログラム導入支援装置１００では、ステップＳ１０９−３、Ｓ１０９−４の処理（販売パッケージのダウンロード）に成功した場合、プログラム導入制御部２３によりステップＳ１０９―５を実行する。すなわち、プログラム導入制御部２３は、販売パッケージが正常に取得できなかった場合、ライセンスファイルの取得は行わない。なぜなら、販売パッケージが取得できない場合には、当該販売パッケージのインストールができないからである。それにも拘わらず当該販売パッケージに係るライセンスファイルが取得されてしまうと、実際には利用していない販売パッケージについてライセンスの使用が開始されたこととされてしまい、ユーザに不利益を及ぼすことから、処理を行わないことでそれを防止する。
【０１２１】
続いて、プログラム導入支援装置１００は、プログラム導入制御部２３により、ステップＳ１０９−４において未解決パッケージが取得されている場合、当該未解決依存パッケージをカレント機器に送信し、当該未解決パッケージのインストールをカレント機器に要求する（Ｓ１０９−７）。その結果、カレント機器では、未解決パッケージがインストールされ、当該未解決パッケージの情報（例えば「プロダクトＩＤ」）がインストール情報管理テーブルに記録される。
【０１２２】
続いて、プログラム導入支援装置１００は、プログラム導入制御部２３により、未解決パッケージのインストール結果をカレント機器に問い合わせる（Ｓ１０９−８）。当該問い合わせ（ポーリング）は、カレント機器においてインストールが完了し、インストール結果が返信されるまで繰り返される。
【０１２３】
先に未解決パッケージをインストールさせるのは、依存先のコンポーネントＣＭＰがインストールされていないことによる、販売パッケージのインストールの失敗を回避するためである。
【０１２４】
続いて、プログラム導入支援装置１００は、プログラム導入制御部２３により、ステップＳ１０９−４において取得されている販売パッケージ（カレント販売パッケージ）、及びステップＳ１０９−６において取得されているライセンスファイルをカレント機器に送信し、当該販売パッケージのインストール及びアクティベーションをカレント機器に要求する（Ｓ１０９−９）。その結果、カレント機器では、当該販売パッケージがインストールされ、当該販売パッケージの情報（例えば「プロダクトＩＤ」）がインストール情報管理テーブルに記録される。また、カレント機器では、ライセンスファイルが所定の記憶領域に記録される。
【０１２５】
続いて、プログラム導入支援装置１００は、プログラム導入制御部２３により、販売パッケージのインストール結果をカレント機器に問い合わせる（Ｓ１０９−１０）。当該問い合わせ（ポーリング）は、カレント機器においてインストールが完了し、インストール結果が返信されるまで繰り返される。
【０１２６】
図１１は、本実施形態に係るダウンロード状況の通知画面例を示す図である。
上記インストール及びアクティベーション処理（ステップＳ１０９−９）が行われている間、プログラム導入支援装置１００は、管理ツール２０により、処理状況をユーザに通知する。
【０１２７】
図１１には、管理ツール２０がカレント機器にカレント販売パッケージ（コンポーネント）をダウンロードしている旨を通知する通知画面Ｗ６の例が示されている。
【０１２８】
通知画面Ｗ６は、選択画面Ｗ４と同様に、作業工程情報欄Ｒ６１と、プログラム導入処理情報欄Ｒ６２とを有している。同図に示す画面例では、作業工程情報欄Ｒ６１に、「インストール機器の選択」が終了し、「ソフトウェアのダウンロード」の工程に作業が進んでいることを示す進捗状況が表示されている。また、プログラム導入処理情報欄Ｒ６２には、ダウンロードするカレント販売パッケージの内容確認を促す情報、及びダウンロードするカレント販売パッケージの内容「追加ソフトウェア（パッケージ名）」と、そのライセンスの内容「ライセンス数」とを確認する情報が表示されている。なお、ここで表示される「ライセンス数」は、プログラム導入制御部２３によるライセンス認証処理（ステップＳ１０９−５、Ｓ１０９−６）の実行結果に基づく情報である。つまり、残ライセンス数及び総ライセンス数が認証結果に応じた値となっている。
【０１２９】
さらに、プログラム導入処理情報欄Ｒ６２では、カレント機器の「状態」、「アドレス」、「モデル名」、「設置場所」、及び「コメント」などの項目を有する機器一覧がダウンロード状況通知領域Ｒ６２１として表示されている。例えば、同図に示す画面例では、ダウンロード状況通知領域Ｒ６２１の「状態」項目に、［正常終了］、［エラー］、［処理中］などのカレント機器におけるソフトウェアのダウンロード状況（送受信処理状況）が表示されている。
【０１３０】
ＵＩ制御部２１では、イベント受付部２１１で、プログラム導入制御部２３から情報取得部２２による情報取得処理結果（機器情報取得の実行結果）を受け付けると、画面生成部２１２が、画面部品保持部２１３で保持する画面部品を参照し、上記通知画面Ｗ６を生成する。例えば、画面生成部２１２は、作業工程情報欄Ｒ６１に表示する工程項目文字「ソフトウェアのダウンロード」や、プログラム導入処理情報欄Ｒ６２に表示する項目文字「追加ソフトウェア（パッケージ名）」、「ライセンス数」、及び「機器一覧」や、ダウンロード状況通知領域Ｒ６２１などの各画面部品を用いて、上記通知画面Ｗ６を生成する。このとき、画面生成部２１２は、情報取得部２２により取得されたパッケージ情報を、プログラム導入制御部２３からイベント受付部２１１を介して受け取り、上記プログラム導入処理情報欄Ｒ６２の各項目値（表示内容）を生成する。また、画面生成部２１２は、記録された機器情報に基づき、上記ダウンロード状況通知領域Ｒ６２１の各項目値（表示内容）を生成する。
【０１３１】
その結果、画面更新部２１４が、画面更新の要求に従って、表示装置１０２の表示画面を通知画面Ｗ５から通知画面Ｗ６へと更新する。なお、上記ダウンロード状況通知領域Ｒ６２１の「状態」項目の値は、上記画面生成及び画面更新処理により、プログラム導入制御部２３によるダウンロード処理の実行結果に応じて更新される。
【０１３２】
これにより、プログラム導入支援装置１００は、ユーザに対して、カレント機器におけるプログラムダウンロード処理の進捗状況を通知することができる。
【０１３３】
ＵＩ制御部２１は、通知画面Ｗ６の［次へ］ボタンＢ６が押下されることで、インストール及びアクティベーションの実行要求を受け付ける。
【０１３４】
プログラム導入支援装置１００は、受け付けたインストール及びアクティベーションの実行要求をＵＩ制御部２１からプログラム導入制御部２３へと渡す。これにより、インストール及びアクティベーション処理が継続される。
【０１３５】
図１２は、本実施形態に係るインストール完了の通知画面例を示す図である。
継続して上記インストール及びアクティベーション処理が行われると、プログラム導入支援装置１００は、管理ツール２０により、処理結果をユーザに通知する。
【０１３６】
図１２には、管理ツール２０がカレント機器に販売パッケージ（コンポーネント）をインストールした結果（アクティベーションした結果を含む）を通知する通知画面Ｗ７の例が示されている。
【０１３７】
通知画面Ｗ７は、通知画面Ｗ６と同様に、作業工程情報欄Ｒ７１と、プログラム導入処理情報欄Ｒ７２とを有している。同図に示す画面例では、作業工程情報欄Ｒ７１に、「インストール／ライセンス登録」が終了したことを示す進捗状況が表示されている。また、プログラム導入処理情報欄Ｒ７２には、インストール結果（アクティベーション結果を含む）の内容確認を促す情報、及びインストールしたカレント販売パッケージの内容「追加ソフトウェア（パッケージ名）」と、そのライセンスの内容「ライセンス数」とを確認する情報が表示されている。
【０１３８】
さらに、プログラム導入処理情報欄Ｒ７２では、カレント機器の「状態」、「アドレス」、「モデル名」、「設置場所」、及び「コメント」などの項目を有する機器一覧がインストール結果通知領域Ｒ７２１として表示されている。例えば、同図に示す画面例では、インストール結果通知領域Ｒ７２１の「状態」項目に、［完了］、［エラー］などのカレント機器におけるソフトウェアのインストール結果が表示されている。
【０１３９】
ＵＩ制御部２１では、イベント受付部２１１で、プログラム導入制御部２３からインストール結果（インストール及びアクティベーション処理の実行結果）を受け取ると、画面生成部２１２が、画面部品保持部２１３で保持する画面部品を参照し、上記通知画面Ｗ７を生成する。例えば、画面生成部２１２は、作業工程情報欄Ｒ７１に表示する工程項目文字「インストール・ライセンス登録」や、プログラム導入処理情報欄Ｒ７２に表示する項目文字「追加ソフトウェア（パッケージ名）」、「ライセンス数」、及び「機器一覧」や、インストール結果通知領域Ｒ７２１などの各画面部品を用いて、上記通知画面Ｗ７を生成する。なお、画面生成部２１２では、前作業工程で表示した通知画面Ｗ６の生成と同様に、上記プログラム導入処理情報欄Ｒ７２の各項目値（表示内容）を生成する。また、画面生成部２１２は、プログラム導入制御部２３によるインストール結果に基づき、インストール結果通知領域Ｒ７２１の「状態」項目の表示内容を生成する。
【０１４０】
その結果、画面更新部２１４が、画面更新の要求に従って、表示装置１０２の表示画面を通知画面Ｗ６から通知画面Ｗ７へと更新する。
【０１４１】
これにより、プログラム導入支援装置１００は、ユーザに対して、カレント機器におけるインストール及びアクティベーション処理の実行結果を通知することができる。
【０１４２】
ＵＩ制御部２１は、通知画面Ｗ７の［完了］ボタンＢ７が押下されることで、プログラム導入作業の終了要求を受け付ける。
【０１４３】
プログラム導入支援装置１００は、受け付けたプログラム導入作業の終了要求をＵＩ制御部２１からプログラム導入制御部２３へと渡す。これにより、プログラム導入作業が終了する。
【０１４４】
《アンインストール及びディアクティベーション処理》
図１３は、本実施形態に係るアンインストール及びディアクティベーションの処理手順例を示すシーケンス図である。
【０１４５】
次にアンインストール及びディアクティベーション処理の中で動作する表示制御処理について説明する。
【０１４６】
プログラム導入支援装置１００では、管理ツール２０が起動されると、起動画面Ｗ１が表示装置１０２に表示される。
【０１４７】
プログラム導入支援装置１００は、このような起動画面Ｗ１を介して、ユーザが所望するサービスの動作要求、すなわちプログラム導入の作業要求を操作イベントＥＶＮとして受け付ける。なお、以降には、起動画面Ｗ１を介して、「アンインストール」が選択された場合の処理手順について、図１３を用いて説明する。
【０１４８】
ＵＩ制御部２１は、起動画面Ｗ１を介して販売パッケージのアンインストール開始指示の入力（操作イベント）を、イベント受付部２１１で受け付けると、画面生成部２１２により、アンインストール対象であるプロダクトキーＰＫの選択画面を表示装置１０２に表示させる。
【０１４９】
図１４は、本実施形態に係るプロダクトキーＰＫの選択画面例を示す図である。
図１４には、管理ツール２０がアンインストール対象であるプロダクトキーＰＫをユーザに選択させる選択画面（設定画面）Ｗ８の例が示されている。
【０１５０】
選択画面Ｗ８は、機器２００やプロダクトキーＰＫなどの一覧を表示する一覧情報欄Ｒ８を有している。同図に示す画面例では、一覧情報欄Ｒ８に、アンインストール対象のプロダクトキー選択を要求する情報が表示されている。
【０１５１】
さらに、一覧情報欄Ｒ８には、インストールした販売パッケージの「ソフトウェア名（及びバージョン）」、「プロダクトキー」、「ライセンス形態」、「残ライセンス数／総ライセンス数」、「有効期限」、及び「最新更新日時」などの項目を有するプロダクトキー一覧が選択領域ＳＬ８として表示され、１又は複数のプロダクトキーＰＫがアンインストール対象として選択可能である。
【０１５２】
ＵＩ制御部２１では、イベント受付部２１１で、アンインストール開始指示（操作イベント）を受け付けると、画面生成部２１２が、画面部品保持部２１３で保持する画面部品を参照し、上記選択画面Ｗ８を生成する。例えば、画面生成部２１２は、一覧情報欄Ｒ８に表示する文字「プロダクトキー一覧」や選択領域ＳＬ８などの各画面部品を用いて、上記選択画面Ｗ８を生成する。このとき、画面生成部２１２は、インストール及びアクティベーション処理において、機器２００に問い合わせを行った際の記録情報（一時的に保持されている実行結果データ）などに基づき、上記選択領域ＳＬ８の各項目値（表示内容）を生成する。
【０１５３】
その結果、画面更新部２１４が、画面更新の要求に従って、表示装置１０２の表示画面を起動画面Ｗ１から選択画面Ｗ８へと更新する。
【０１５４】
図１３の説明に戻る。ＵＩ制御部２１は、アンインストール対象の販売パッケージ（以下「カレント販売パッケージ」と言う）のプロダクトキーＰＫが選択画面Ｗ８を介して選択されると（Ｓ２０１）、選択されたプロダクトキーＰＫをプログラム導入制御部２３へ渡す。
【０１５５】
プログラム導入制御部２３は、情報取得部２２に対して当該プロダクトキーに係るパッケージ情報の取得を要求する。その結果、情報取得部２２は、プロダクトキーＰＫを指定して当該プロダクトキーに係るパッケージ情報の取得要求をライセンスサーバ３００に送信する（Ｓ２０２）。
【０１５６】
続いて、ライセンスサーバ３００は、受信されたプロダクトキーＰＫに係るレコードに記録されている情報（パッケージ情報）をプログラム導入支援装置１００に返信する（Ｓ２０３）。当該プロダクトキーがグループライセンスに係るものである場合、複数の販売パッケージに関するパッケージ情報が返信される。
【０１５７】
当該プロダクトキーがグループライセンスに係るものである場合、すなわち、複数の販売パッケージに関するパッケージ情報が受信された場合、プログラム導入支援装置１００は、ＵＩ制御部２１により、当該販売パッケージの一覧情報を含む販売パッケージ選択画面を表示装置１０２に表示させ、アンインストール対象とする販売パッケージをユーザに選択させる（Ｓ２０４）。以下、選択された販売パッケージを「カレント販売パッケージ」という。
【０１５８】
図１５は、本実施形態に係るアンインストールプログラムの選択画面例を示す図である。
図１５には、管理ツール２０がアンインストール対象であるカレント販売パッケージをユーザに選択させる選択画面（設定画面）Ｗ９の例が示されている。
【０１５９】
選択画面Ｗ９は、現在実行中の作業を示すプログラム導入処理情報欄Ｒ９を有している。同図に示す画面例では、プログラム導入処理情報欄Ｒ９に、アンインストール対象の販売パッケージ（コンポーネント）選択を要求する情報が表示されている。
【０１６０】
さらに、プログラム導入処理情報欄Ｒ９には、インストールした販売パッケージの「ソフトウェア名（及びバージョン）」項目を有するソフトウェア一覧が選択領域ＳＬ９として表示され、１又は複数の販売パッケージ（コンポーネント）がアンインストール対象として選択可能である。
【０１６１】
ＵＩ制御部２１では、イベント受付部２１１で、プログラム導入制御部２３から情報取得部２２による情報取得処理結果（パッケージ情報取得の実行結果）を受け付けると、画面生成部２１２が、画面部品保持部２１３で保持する画面部品を参照し、上記選択画面Ｗ９を生成する。例えば、画面生成部２１２は、プログラム導入処理情報欄Ｒ９に表示する文字「ソフトウェア一覧」や選択領域Ｒ９などの各画面部品を用いて、上記選択画面Ｗ９を生成する。このとき、画面生成部２１２は、インストール及びアクティベーション処理において、機器２００に問い合わせを行った際の記録情報（一時的に保持されているデータ）などに基づき、上記選択領域ＳＬ９の各項目値（表示内容）を生成する。
【０１６２】
その結果、画面更新部２１４が、画面更新の要求に従って、表示装置１０２の表示画面を選択画面Ｗ８から選択画面Ｗ９へと更新する。
【０１６３】
ＵＩ制御部２１は、選択画面Ｗ９の［次へ］ボタンＢ９が押下されることで、アンインストール対象である販売パッケージの指定要求（アンインストール作業の継続指示）を受け付ける。これにより、ＵＩ制御部２１は、カレント販売パッケージの選択情報をプログラム導入制御部２３へ渡す。
【０１６４】
また、ＵＩ制御部２１は、選択画面Ｗ９を介してアンインストール作業継続指示の入力（操作イベント）を、イベント受付部２１１で受け付けると、画面生成部２１２により、機器２００の一覧を含む選択画面を表示装置１０２に表示させ、アンインストール対象である機器２００をユーザに選択させる。
【０１６５】
図１６は、本実施形態に係るアンインストール機器の選択画面例を示す図である。
図１６には、管理ツール２０がアンインストールする機器２００をユーザに選択させる選択画面（設定画面）Ｗ１０の例が示されている。
【０１６６】
選択画面Ｗ１０は、選択画面Ｗ９と同様に、プログラム導入処理情報欄Ｒ１０を有している。同図に示す画面例では、プログラム導入処理情報欄Ｒ１０に、アンインストール対象機器の選択を要求する情報、及びアンインストールするカレント販売パッケージの内容「ソフトウェア（パッケージ名）」と、そのライセンスの内容「ライセンス数」とを確認する情報が表示されている。
【０１６７】
さらに、プログラム導入処理情報欄Ｒ１０では、機器２００の「アドレス」、「モデル名」、「機番」、及び「設置場所」などの項目を有する機器一覧が選択領域ＳＬ１０として表示され、アンインストール対象とする機器２００が選択可能である。
【０１６８】
プログラム導入処理情報欄Ｒ１０では、選択領域ＳＬ１０のチェックボックス（□）を押下する（□→■）ことで、アンインストール対象の機器２００が選択可能である。また、プログラム導入処理情報欄Ｒ１０では、［全選択］ボタンを押下することで、選択領域ＳＬ１０に表示される全ての機器２００が選択可能である。一方、［全選択解除］ボタンを押下することで、機器選択の全てが解除可能である。また、プログラム導入処理情報欄Ｒ１０では、選択領域ＳＬ１０において、複数の機器２００をアンインストール先として選択することも可能である。
【０１６９】
ＵＩ制御部２１では、イベント受付部２１１で、アンインストール作業継続指示（操作イベント）を受け付けると、画面生成部２１２が、画面部品保持部２１３で保持する画面部品を参照し、上記選択画面Ｗ１０を生成する。例えば、画面生成部２１２は、プログラム導入処理情報欄Ｒ１０に表示する項目文字「ソフトウェア（パッケージ名）」及び「ライセンス数」や、選択領域ＳＬ１０、［全選択］ボタン、及び［全選択解除］ボタンなどの各画面部品を用いて、上記選択画面Ｗ１０を生成する。このとき、画面生成部２１２は、選択画面Ｗ９を介して取得したカレント販売パッケージの選択情報に基づき、上記プログラム導入処理情報欄Ｒ１０の各項目値（表示内容）を生成する。また、画面生成部２１２は、インストール及びアクティベーション処理において、機器２００に問い合わせを行った際の記録情報（一時的に保持されている実行結果データ）などに基づき、上記選択領域ＳＬ１０の各項目値（表示内容）を生成する。
【０１７０】
その結果、画面更新部２１４が、画面更新の要求に従って、表示装置１０２の表示画面を選択画面Ｗ９から選択画面Ｗ１０へと更新する。
【０１７１】
ＵＩ制御部２１は、選択画面Ｗ１０の［次へ］ボタンＢ１０が押下されることで、アンインストール対象機器の指定要求を受け付ける。
【０１７２】
プログラム導入支援装置１００は、受け付けたアンインストール対象機器の選択情報をＵＩ制御部２１からプログラム導入制御部２３へと渡す。
【０１７３】
図１３の説明に戻る。プログラム導入制御部２３は、上記選択情報に基づき、情報取得部２２に対してアンインストール対象の機器情報の取得を要求する。その結果、情報取得部２２は、アンインストール対象として選択された各機器２００に対して機器情報の取得要求を送信する（Ｓ２０５）。
【０１７４】
機器情報の取得要求を受信した各機器２００は、インストール情報管理テーブルに記録されている情報を取得し、取得された情報と当該機器の機体番号とを含む情報を機器情報としてプログラム導入支援装置１００に返信する（Ｓ２０６）。
【０１７５】
続いて、プログラム導入支援装置１００は、プログラム導入制御部２３により、ステップＳ２０３において取得されたパッケージ情報を、ステップＳ２０６で各機器２００から取得された機器情報と照合し、当該パッケージ情報に係る販売パッケージがインストールされている機器２００を判定する（Ｓ２０７）。具体的には、当該パッケージ情報に含まれているプロダクトＩＤ（販売パッケージのプロダクトＩＤ）を含む機器情報に係る機器２００が、当該販売パッケージのインストールされている機器２００（すなわち販売パッケージのアンインストール対象機器）であると判定される。
【０１７６】
続くステップＳ２０８は、販売パッケージのアンインストール先の機器２００ごとに実行されるループ処理である。ループ処理において処理対象とされる機器２００を以下、「カレント機器」という。
【０１７７】
プログラム導入支援装置１００は、プログラム導入制御部２３により、カレント販売パッケージのプロダクトＩＤを指定して、ディアクティベート要求（ライセンスファイルの削除要求）をカレント機器に送信する（Ｓ２０８−１）。カレント機器は、当該要求に応じ、指定されたプロダクトＩＤに係るライセンスファイル９０を削除する。
【０１７８】
続いて、プログラム導入支援装置１００は、プログラム導入制御部２３により、ライセンスファイル９０の削除処理の結果をカレント機器に問い合わせる（Ｓ２０８−２）。当該問い合わせ（ポーリング）は、カレント機器においてライセンスファイル９０の削除処理が完了し、当該削除処理の処理結果が返信されるまで繰り返される。
【０１７９】
続いて、プログラム導入支援装置１００は、プログラム導入制御部２３により、カレント販売パッケージのプロダクトＩＤを指定して、アンインストール要求（販売パッケージの削除要求）をカレント機器に送信する（Ｓ２０８−３）。カレント機器は、当該要求に応じ、指定されたプロダクトＩＤに係る販売パッケージをアンインストール（削除）する。
【０１８０】
続いて、プログラム導入支援装置１００は、プログラム導入制御部２３により、カレント販売パッケージのアンインストール結果をカレント機器に問い合わせる（Ｓ２０８−４）。当該問い合わせ（ポーリング）は、カレント機器においてアンインストールが完了し、インストール結果が返信されるまで繰り返される。
【０１８１】
ステップＳ２０８が、販売パッケージのアンインストールの対象とされた全ての機器２００について実行された後、プログラム導入支援装置１００は、プログラム導入制御部２３により、カレント販売パッケージのプロダクトＩＤと、当該全ての機器２００の機体番号とを指定してディアクティベート要求（ライセンスの解放要求）をライセンスサーバ３００に送信する（Ｓ２０９）。
【０１８２】
ライセンスサーバ３００は、ライセンス管理テーブルにおいて、指定されたプロダクトＩＤ及び機体番号に係るレコードのステータスを「チェックアウト」から「チェックイン」に変更する。すなわち、当該ライセンスは使用されていないことを示す情報がライセンス管理テーブルに記録される。なお、ディアクティベーションは、ステータスが「チェックアウト」のライセンスに関して実行可能である。したがって、対象となるレコードのステータスが「チェックアウト」でない場合、ライセンスサーバ３００は、ディアクティベートは失敗したと判断する。
【０１８３】
続いて、ライセンスサーバ３００は、ディアクティベーション処理結果（処理の成否）を機器２００に返信する（Ｓ２１０）。
【０１８４】
図１７は、本実施形態に係るアンインストール状況の通知画面例を示す図である。
上記アンインストール処理（ステップＳ２０８−３、Ｓ２０８−４）が行われている間、プログラム導入支援装置１００は、管理ツール２０により、処理状況をユーザに通知する。
【０１８５】
図１７には、管理ツール２０がカレント機器のカレント販売パッケージ（コンポーネント）をアンインストールしている旨を通知する通知画面Ｗ１１の例が示されている。
【０１８６】
通知画面Ｗ１１は、選択画面Ｗ１０と同様に、プログラム導入処理情報欄Ｒ１１を有している。同図に示す画面例では、プログラム導入処理情報欄Ｒ１１に、アンインストール対象であるカレント販売パッケージの内容確認を促す情報、及びアンインストールするカレント販売パッケージの内容「ソフトウェア（パッケージ名）」と、そのライセンスの内容「ライセンス数」とを確認する情報が表示されている。なお、ここで表示される「ライセンス数」は、インストール及びアクティベーション処理において、機器２００に問い合わせを行った際の記録情報（一時的に保持されているデータ）などに基づく情報である。つまり、残ライセンス数が最新の値（現在値）となっている。
【０１８７】
さらに、プログラム導入処理情報欄Ｒ１１では、カレント機器の「状態」、「アドレス」、「モデル名」、「機番」、及び「設置場所」などの項目を有する機器一覧がアンインストール状況通知領域Ｒ１１１として表示されている。例えば、同図に示す画面例では、アンインストール状況通知領域Ｒ１１１の「状態」項目に、［正常終了］、［エラー］、［処理中］などのカレント機器におけるソフトウェアのアンインストール状況が表示されている。
【０１８８】
ＵＩ制御部２１では、イベント受付部２１１で、プログラム導入制御部２３から情報取得部２２による情報取得処理結果（機器情報取得の実行結果）を受け付けると、画面生成部２１２が、画面部品保持部２１３で保持する画面部品を参照し、上記通知画面Ｗ１１を生成する。例えば、画面生成部２１２は、プログラム導入処理情報欄Ｒ１１に表示する項目文字「ソフトウェア（パッケージ名）」、「ライセンス数」、及び「機器一覧」や、アンインストール状況通知領域Ｒ１１１などの各画面部品を用いて、上記通知画面Ｗ１１を生成する。なお、画面生成部２１２では、前作業工程で表示した選択画面Ｗ１０の生成と同様に、上記プログラム導入処理情報欄Ｒ１１の各項目値（表示内容）を生成する。
【０１８９】
その結果、画面更新部２１４が、画面更新の要求に従って、表示装置１０２の表示画面を選択画面Ｗ１０から通知画面Ｗ１１へと更新する。なお、上記アンインストール状況通知領域Ｒ１１１の「状態」項目の値は、上記画面生成及び画面更新処理により、プログラム導入制御部２３によるアンインストール及びディアクティベーション処理の実行結果に応じて更新される。
【０１９０】
これにより、プログラム導入支援装置１００は、ユーザに対して、カレント機器におけるアンインストール処理の進捗状況を通知することができる。
【０１９１】
ＵＩ制御部２１は、通知画面Ｗ１１の［次へ］ボタンＢ１１が押下されることで、アンインストール及びディアクティベーション処理の継続指示を受け付ける。
【０１９２】
プログラム導入支援装置１００は、受け付けたアンインストール及びディアクティベーション処理の継続指示をＵＩ制御部２１からプログラム導入制御部２３へと渡す。これにより、アンインストール及びディアクティベーション処理が継続される。
【０１９３】
図１８は、本実施形態に係るアンインストール完了の通知画面例を示す図である。
継続して上記アンインストール及びディアクティベーション処理が行われると、プログラム導入支援装置１００は、管理ツール２０により、処理結果をユーザに通知する。
【０１９４】
図１８には、管理ツール２０がカレント機器から販売パッケージ（コンポーネント）をアンインストールした結果（ディアクティベーションした結果を含む）を通知する通知画面Ｗ１２の例が示されている。
【０１９５】
通知画面Ｗ１２は、通知画面Ｗ１１と同様に、プログラム導入処理情報欄Ｒ１２を有している。同図に示す画面例では、プログラム導入処理情報欄Ｒ１２に、アンインストール結果（ディアクティベーション結果を含む）の内容確認を促す情報、及びアンインストールしたカレント販売パッケージの内容「ソフトウェア（パッケージ名）」と、そのライセンスの内容「ライセンス数」とを確認する情報が表示されている。
【０１９６】
さらに、プログラム導入処理情報欄Ｒ１２では、カレント機器の「状態」、「アドレス」、「モデル名」、「機番」、及び「設置場所」などの項目を有する機器一覧がアンインストール結果通知領域Ｒ１２１として表示されている。例えば、同図に示す画面例では、アンインストール結果通知領域Ｒ１２１の「状態」項目に、［完了］、［エラー］などのカレント機器におけるソフトウェアのアンインストール結果が表示されている。
【０１９７】
ＵＩ制御部２１では、イベント受付部２１１で、プログラム導入制御部２３からアンインストール結果（アンインストール及びディアクティベーション処理の実行結果）を受け取ると、画面生成部２１２が、画面部品保持部２１３で保持する画面部品を参照し、上記通知画面Ｗ１２を生成する。例えば、画面生成部２１２は、プログラム導入処理情報欄Ｒ１２に表示する項目文字「ソフトウェア（パッケージ名）」、「ライセンス数」、及び「機器一覧」や、アンインストール結果通知領域Ｒ１２１などの各画面部品を用いて、上記通知画面Ｗ１２を生成する。なお、画面生成部２１２では、前作業工程で表示した通知画面Ｗ１１の生成と同様に、上記プログラム導入処理情報欄Ｒ１２の各項目値（表示内容）を生成する。また、画面生成部２１２は、プログラム導入制御部２３によるアンインストール結果に基づき、アンインストール結果通知領域Ｒ１２１の「状態」項目の表示内容を生成する。
【０１９８】
その結果、画面更新部２１４が、画面更新の要求に従って、表示装置１０２の表示画面を通知画面Ｗ１１から通知画面Ｗ１２へと更新する。
【０１９９】
これにより、プログラム導入支援装置１００は、ユーザに対して、カレント機器におけるアンインストール及びディアクティベーション処理の実行結果を通知することができる。
【０２００】
ＵＩ制御部２１は、通知画面Ｗ１２の［完了］ボタンＢ１２が押下されることで、プログラム導入作業の終了要求を受け付ける。
【０２０１】
プログラム導入支援装置１００は、受け付けたプログラム導入作業の終了要求をＵＩ制御部２１からプログラム導入制御部２３へと渡す。これにより、プログラム導入作業が終了する。
【０２０２】
＜まとめ＞
以上のように、本実施形態に係るプログラム導入支援装置１００によれば、プログラム導入支援機能を実現する管理ツール２０により、次のような表示制御機能を行っている。
【０２０３】
管理ツール２０は、ＵＩ制御部２１により、表示画面（ＧＵＩ）Ｗを介して受け付けた実行要求をプログラム導入制御部２３に伝達する。管理ツール２０は、表示画面Ｗを構成する画面部品を保持しており、ＵＩ制御部２１により、受け付けた実行要求及び／又は要求により実行されたプログラム導入処理の実行結果に基づき、画面部品を用いて、作業工程に応じた情報（処理状況や処理完了）を提示する表示画面Ｗを生成し、画面を更新する。
【０２０４】
すなわち、プログラム導入支援装置１００は、ユーザからの実行要求及び／又は要求により実行されたプログラム導入処理の実行結果に基づき、作業工程に応じた表示画面Ｗを生成し、画面更新する。
【０２０５】
これによって、本実施形態に係るプログラム導入支援装置１００では、ユーザに対して、進捗状況や実行結果などのプログラム導入処理に係る情報を、実施される作業工程の中で（適切なタイミング）で提示でき、ユーザの導入作業を適切に支援することができる。
【０２０６】
ここまで、上記実施形態の説明を行ってきたが、上記実施形態に係るプログラム導入支援機能が有する「表示制御機能」は、図を用いて説明を行った各処理手順を、プログラム導入支援装置１００の動作環境（プラットフォーム）にあったプログラミング言語でコード化したプログラムが、ＣＰＵ１０６により実行されることで実現される。
【０２０７】
上記プログラムは、コンピュータが読み取り可能な記録媒体１０３ａに格納することができる。上記記録媒体１０３ａには、例えば、フロッピー（登録商標）ディスク、ＣＤ（Compact Disk）、及びＤＶＤ（Digital Versatile Disk）などがある。また、プログラム導入支援装置１００が外部記憶Ｉ／Ｆ（非図示）を備えていれば、上記プログラムは、例えば、ＳＤメモリカード（SD Memory Card）及びＵＳＢ（Universal Serial Bus）メモリなど記録媒体に格納されていてもよい。
【０２０８】
よって、上記プログラムは、上記記録媒体１０３ａに記憶させることで、記録媒体１０３ａを読み取り可能なドライブ装置１０３を介してプログラム導入支援装置１００にインストールすることができる。また、プログラム導入支援装置１００は、インタフェース装置１０７を備えていることから、インターネットなどの電気通信回線を用いて上記プログラムをダウンロードし、インストールすることもできる。
【０２０９】
最後に、上記実施形態に挙げた形状や構成に、その他の要素との組み合わせなど、ここで示した要件に、本発明が限定されるものではない。これらの点に関しては、本発明の主旨をそこなわない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。
【符号の説明】
【０２１０】
１      プログラム導入支援システム
２０    管理ツール
２１    ＵＩ制御部
２１１  イベント受付部
２１２  画面生成部
２１３  画面部品保持部
２１４  画面更新部
２２    情報取得部
２３    プログラム導入制御部
１００  プログラム導入支援装置（情報処理装置）
１０１  入力装置
１０２  表示装置
１０３  ドライブ装置（ａ：記録媒体）
１０４  ＲＡＭ（揮発性の半導体メモリ）
１０５  ＲＯＭ（不揮発性の半導体メモリ）
１０６  ＣＰＵ（中央処理装置）
１０７  インタフェース装置（ＮＩＣ：Network I/F Card）
１０８  ＨＤＤ（不揮発性の記憶装置）
２００  機器（画像処理装置）
３００  ライセンスサーバ（情報処理装置）
４００  コンポーネントサーバ（情報処理装置）
Ｂ      バス
Ｉ      外部ネットワーク（インターネット）
Ｎ      内部ネットワーク（ＬＡＮ）
ＣＭＰ  コンポーネント（プログラム群）
ＰＫ    プロダクトキー
【先行技術文献】
【特許文献】
【０２１１】
【特許文献１】特開２００８−２４３１７９号公報
【図１】
2011060237.tif 000003
【図２】
2011060237.tif 000004
【図３】
2011060237.tif 000005
【図４】
2011060237.tif 000006
【図５】
2011060237.tif 000007
【図６】
2011060237.tif 000008
【図７】
2011060237.tif 000009
【図８】
2011060237.tif 000010
【図９】
2011060237.tif 000011
【図１０】
2011060237.tif 000012
【図１１】
2011060237.tif 000013
【図１２】
2011060237.tif 000014
【図１３】
2011060237.tif 000015
【図１４】
2011060237.tif 000016
【図１５】
2011060237.tif 000017
【図１６】
2011060237.tif 000018
【図１７】
2011060237.tif 000019
【図１８】
2011060237.tif 000020