(57)【要約】【課題】アプリケーションの登録処理に関する過去の経験を生かしながら今回のインストール処理がきるようにする。【解決手段】登録済のアプリケーションをアンインストールする際には、その理由を登録ログに記録する（Ｓ４０〜Ｓ４８）。次のアプリケーション登録時には、同種のアプリケーションを以前にアンインストールしたことがあるか否かを登録ログを検索して判定する（Ｓ８０）。以前にアンインストールしたことがある場合には（Ｓ８０−ＹＥＳ）、その削除理由をユーザに通知し（Ｓ８５）、この通知に基づくユーザ指示に従って以後の処理を実行する（Ｓ８６）。【選択図】図３
2007293737.tif 000002
【特許請求の範囲】
【請求項１】
電子機器に組み込まれるソフトウェア資源を管理する登録管理方法であって、
前記ソフトウェア資源の登録処理を実行する際には、当該登録処理の履歴を前記ソフトウェア資源と対応付けて所定の記憶媒体に保存しておき、
次のソフトウェア資源の登録処理を実行する際には、当該次のソフトウェア資源と同種のソフトウェア資源についての履歴が前記記憶媒体に保存されているか否かを判定し、
前記次のソフトウェア資源と同種のソフトウェア資源についての履歴が前記記憶媒体に保存されている場合には、その履歴の情報をユーザに通知し、
この通知に基づく前記ユーザの指示に従って、前記登録処理に関係する以後の処理を実行する
ことを特徴とする登録管理方法。
【請求項２】
自身に組み込まれるソフトウェア資源を管理する登録管理機能を備えた電子機器であって、
前記ソフトウェア資源の登録処理の履歴を前記ソフトウェア資源と対応付けて保存するアプリケーション情報保存部と、
前記ソフトウェア資源についての履歴が前記アプリケーション情報保存部に保存されているか否かを判定する登録情報判定部と、
前記アプリケーション情報保存部に保存されている履歴の情報をユーザに通知する通知制御部と、
前記通知制御部による通知に基づく前記ユーザの指示を受け付ける指示受付部と
を備え、
次のソフトウェア資源の登録処理を実行する際に、前記次のソフトウェア資源と同種のソフトウェア資源についての履歴が前記アプリケーション情報保存部に保存されていると前記登録情報判定部が判定したときには、前記通知制御部によりその履歴の情報をユーザに通知するとともに、この通知に基づく前記指示受付部が受け付けたユーザの指示に従って、前記登録処理に関係する以後の処理を実行する
ことを特徴とする電子機器。
【請求項３】
前記アプリケーション情報保存部は、前記登録処理の履歴として、前記ソフトウェア資源を組み込む際に生じた障害に関する情報を保存し、
前記通知制御部は、前記次のソフトウェア資源と同種のソフトウェア資源についての前記障害に関する情報が前記アプリケーション情報保存部に保存されていると前記登録情報判定部が判定したときには、その障害に関する情報をユーザに通知する
ことを特徴とする請求項２に記載の電子機器。
【請求項４】
前記障害を解消しつつ登録処理を継続した際には、前記アプリケーション情報保存部は、前記登録処理の履歴として、前記ソフトウェア資源を組み込む際に生じた障害の解消方法を保存し、
前記通知制御部は、前記次のソフトウェア資源と同種のソフトウェア資源についての前記障害の解消方法が前記アプリケーション情報保存部に保存されていると前記登録情報判定部が判定したときには、その解消方法をユーザに通知する
ことを特徴とする請求項３に記載の電子機器。
【請求項５】
前記アプリケーション情報保存部は、前記登録処理の履歴として、前記ソフトウェア資源を削除した際の削除理由を保存し、
前記通知制御部は、前記次のソフトウェア資源と同種のソフトウェア資源についての前記削除理由が前記アプリケーション情報保存部に保存されていると前記登録情報判定部が判定したときには、その削除理由をユーザに通知する
ことを特徴とする請求項２に記載の電子機器。
【請求項６】
電子機器に組み込まれるソフトウェア資源を管理する登録管理処理をコンピュータを用いて行なうためのプログラムであって、
前記コンピュータを、
前記ソフトウェア資源についての登録処理の履歴が所定の記憶媒体に保存されているか否かを判定する登録情報判定部と、
前記記憶媒体に保存されている履歴の情報をユーザに通知する通知制御部と、
前記通知制御部による通知に基づく前記ユーザの指示を受け付ける指示受付部と、
次のソフトウェア資源の登録処理を実行する際に、前記次のソフトウェア資源と同種のソフトウェア資源についての履歴が前記記憶媒体に保存されていると前記登録情報判定部が判定したときには、前記通知制御部によりその履歴の情報をユーザに通知するとともに、この通知に基づく前記指示受付部が受け付けたユーザの指示に従って、前記登録処理に関係する以後の処理を実行するように制御する登録処理制御部と
として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ソフトウェア資源の登録管理方法、電子機器、およびプログラムに関する。より詳細には、電子機器に組み込まれるソフトウェア資源を管理する登録管理方法であって、プリケーション・プログラム・ファイルなどのソフトウェア資源をユーザの使用する装置にインストール（登録／アップデートを含む）やアンインストール（削除）する場合における制御の仕組みに関する。
【背景技術】
【０００２】
情報処理技術の発展した今日、様々な装置において、アプリケーション・プログラム・ファイルなどのソフトウェア資源をユーザの使用する装置にインストール（組込み／アップデートを含む）して使用し、また、所定の条件に合致したものや不要になったものをアンインストール（削除）することが行なわれている（たとえば特許文献１〜６を参照）。
【０００３】
【特許文献１】特開２００３−２４１９２８号公報
【特許文献２】特開２００５−０４４０００号公報
【特許文献３】特開平１１−０８５５７８号公報
【特許文献４】特開２００１−０５１８３５号公報
【特許文献５】特開２００１−３５６９１２号公報
【特許文献６】特開２００４−１２７２８１号公報
【０００４】
たとえば、特許文献１には、サーバからクライアント装置上に必要な機能分だけアプリケーションをインストールするとともに、アプリケーションの使用に関する課金処理に当たり、使用期限や使用回数制限に基づいて自動的にアンインストールするとともに、そのアンインストールに応じて課金処理を調整する仕組みが開示されている。
【０００５】
また、特許文献２には、クライアント装置上のアプリケーションの使用状況をサーバ装置で監視し、その使用状況に基づいて、使用頻度が「低」のアプリケーションを自動でアンインストールする仕組みが開示されている。
【０００６】
また、特許文献３には、ファイルごとに削除条件を設定して、その削除条件を監視し、削除条件に成立したファイルを自動的にアンインストールする仕組みが開示されている。
【０００７】
また、特許文献４には、アプリケーション・モジュールがターゲット・メディア上で正常に機能しているかどうかを判別し、正常に機能しなかった場合には、そのアプリケーション・モジュールを自動的にアンインストールする仕組みが開示されている。たとえば、問題のあるバージョンにアプリケーションがアップグレードされてしまった場合、自動的にアンインストールする。
【０００８】
このように、特許文献１〜４には、何らかのアプリケーションが、期間限定付きや使用回数や頻度や削除条件などの条件付きでインストールされ、使用期間が過ぎたり使用回数や頻度などの設定条件に合致したりしたときや、何らかのアプリケーションのインストールにより障害の発生が発生した場合、などの各種のアンインストール条件に合致した場合には、そのアプリケーションを自動的にアンインストールしている。
【発明の開示】
【発明が解決しようとする課題】
【０００９】
しかしながら、特許文献１〜４に記載の仕組みのように、アプリケーションなどのソフトウェア資源を、アンインストール条件に合致したときに自動的にアンインストールしてしまうと、そのアプリケーションが自動的にアンインストールされたときにどのような理由でアンインストールされたのかをユーザは知ることができなかった。
【００１０】
このため、自動的にアンインストールされたアプリケーションを、そのアンインストール理由を知らないまま、再びインストール処理を実行しようとすることになってしまい、そのままでは、アンインストール条件に再度合致することで、同様の自動アンインストールが再度起こってしまう。事実上、無駄なインストール処理を繰り返してしまうことになる。
【００１１】
たとえば、次回のインストール時に、前回と同じ期間限定や使用回数を設定してインストールすると、また同じようにして、使用期間が過ぎたり使用回数や頻度などの条件に合致するようになると、再度、アンインストールされてしまい、同じようなことを知らず知らずに繰り返してしまうことになり、使い勝手が悪い。
【００１２】
また、問題のあるバージョンにアプリケーションをアップグレードしたことを理由に自動的にアンインストールしたにも拘わらず、再度、その不具合を生じるバージョンにアップグレードしてしまう不都合を防止することができず、再度、その不具合を生じるバージョンのものを自動でアンインストールしなければならず、やはり、同じようなことを知らず知らずに繰り返してしまうことになり、使い勝手が悪い。
【００１３】
また、インストール処理過程で障害が発生し、インストール処理を中断してしまったときに、同じアプリケーションを再度インストールしようとしたときには、同様の障害のため、再度、インストール処理を中断してしまうということになり、インストール作業の無駄が生じてしまう。
【００１４】
また、インストール処理過程で障害が発生したが、その障害の解除方法を探索しながら最終的にはインストール処理を完結させた場合に、そのアプリケーションをバージョンアップしようとしたときには、同様の障害のため、バージョンアップ処理が一時中断してしまい、同様にして、その障害の解除方法を再度探索し直しながらバージョンアップ処理を完結させなければならず、インストール作業の一例であるバージョンアップ作業の効率が悪いという問題もある。
【００１５】
また、同じベンダーのワープロ（ワードプロセッサ）、表計算、データベース、プレゼンテーションなどの同属（同族）アプリケーションでは、たとえば、ワープロソフトのインストール処理過程で障害が発生したが、その障害の解除方法を探索しながら最終的にはインストール処理を完結させた場合に、別の同属アプリケーション（たとえば表計算ソフト）をインストールしようとしたときには、同様の障害のため、インストール処理が一時中断してしまい、同様にして、その障害の解除方法を再度探索し直しながらインストール処理を完結させなければならず、同属ソフトのインストール作業の効率が悪いという問題もある。
【００１６】
一方、たとえば、特許文献５には、インストールやアップデートやアンインストールなどのアプリケーションの登録処理の状態の評価基準を設定しておくことにより、それぞれの処理において想定外の処理が行なわれないようにする仕組みが開示されている。また、評価基準が失敗を示す場合には、以降の処理を停止するとともに失敗の原因をユーザに通知する仕組みも開示されている。
【００１７】
この特許文献５に記載の仕組みによれば、評価条件に基づいて各ファイルのインストール状態を評価し、評価結果が、アプリケーション登録処理（インストール、アップデート、アンインストール）の失敗を示す場合は、以降の処理を停止するとともに失敗原因をユーザに通知するので、ユーザマシンのメモリに対して無駄な処理が行なわれないと言った利点が得られる。
【００１８】
しかしながら、その失敗原因の通知は、その回のアプリケーション登録処理についてのみ関係するものであり、再度の登録処理時には、前回の失敗の経験が活かされない。たとえば、インストールに失敗したアプリケーションを、同じ条件で再度インストールしようとすると、評価結果がインストールの失敗を示す状態になり、以降の処理が停止されるとともに同様の失敗原因が再度ユーザに通知されるに過ぎず、前回の失敗の経験が生かされることが無い。
【００１９】
また、特許文献６には、装置で使用されるアプリケーションに関するアプリケーション情報（バージョンチェックやリソースチェックなど）に基づいて、インストールしようとするアプリケーションのインストール可否を判断し、インストール可能なアプリケーションをオペレーションパネル上に表示して選択を受け付けるようにするとともに、インストール不可のアプリケーションに対しては、インストール不可の理由をユーザに通知する仕組みが開示されている。
【００２０】
この特許文献６に記載の仕組みによれば、インストール可能なアプリケーションをオペレーションパネル上に表示させることによって、何らかの理由でインストールできないアプリケーションがインストールされようとすることを回避することができるし、インストール不可の理由を知ることで、たとえば、ある機器が複合機に装着されていないためにインストール不可であった場合には、その機器を装着するといった対応をとることが可能となる。
【００２１】
しかしながら、その通知は、特許文献５に記載の仕組みと同様に、その回のアプリケーション登録処理についてのみ関係するものであり、再度の登録処理時には、前回のインストール不可の経験が活かされない。たとえば、インストール不可のアプリケーションを、同じ条件で再度インストールしようとすると、インストール不可の旨が再度ユーザに通知されるに過ぎず、前回のインストール不可の経験が生かされることが無い。
【００２２】
このように、従来のアプリケーション登録処理（インストール、アップデート、アンインストール）の仕組みでは、次回の登録処理時には、前回の登録処理時の経験が全く活かされてないのが実情であり、そのために、無駄な重複処理を繰り返さなければならないといった問題がある。
【００２３】
本発明は、上記事情に鑑みてなされたものであり、過去のアプリケーション登録時の処理過程で起きた経験を今回の登録処理時に活かすことのできる仕組みを提供することを目的とする。
【課題を解決するための手段】
【００２４】
本発明に係る仕組みにおいては、先ず、アプリケーションのインストール、アップデート、アンインストールなどの、ソフトウェア資源の登録処理を実行する際には、その登録処理の履歴をソフトウェア資源と対応付けて所定の記憶媒体に保存しておく。
【００２５】
たとえば、ソフトウェア資源を組み込む際に生じた障害に関する情報や、障害を解消しつつ登録処理を継続した際に取った障害の解消方法や、ソフトウェア資源を削除した際の削除理由を登録履歴として保存するのがよい。
【００２６】
そして、次のソフトウェア資源の登録処理（特にインストール処理）を実行する際には、そのインストール処理に先立って、この次のソフトウェア資源と同種のソフトウェア資源についての履歴が記憶媒体に保存されているか否かを判定し、次のソフトウェア資源と同種のソフトウェア資源についての履歴が記憶媒体に保存されている場合には、その履歴の情報をユーザに通知する。そして、この通知に基づくユーザの指示に従って、登録処理に関係する以後の処理を実行するようにする。
【００２７】
今回インストールしようとしているアプリケーションと関係する過去の登録履歴を参照しながら、たとえば、そのままインストールを継続することもできるし、インストール条件やアンインストール条件を変えてからインストールを再開させることもできるし、インストールを中止（中断）することもできる。
【００２８】
つまり、あるアプリケーションのインストール処理が要求されたときには、直ちにインストール処理を実行するのではなく、今回インストールしようとしているアプリケーションに関係する同種のアプリケーションが以前に登録処理されていたか否かを登録履歴に基づいて判定し、登録履歴が存在する場合には、その登録履歴の情報をユーザに通知し、その通知に基づくユーザ指示に従って以後の処理を行なうようにした。要するに、今回インストールしようとしているアプリケーションに関係する過去の登録履歴を参照して登録処理を実行するのである。
【００２９】
なお、本発明に係る仕組みは、電子計算機（コンピュータ）を用いてソフトウェアで実現することもでき、このためのプログラムやこのプログラムを格納した記録媒体を発明として抽出することも可能である。プログラムは、コンピュータ読取り可能な記憶媒体に格納されて提供されてもよいし、有線あるいは無線による通信手段を介した配信により提供されてもよい。
【発明の効果】
【００３０】
本発明によれば、今回インストールしようとしているアプリケーションに関係する過去の登録履歴を参照して登録処理を実行するようにしたので、その過去の経験を生かして、登録処理を実行できるようになる。
【００３１】
たとえば、前回のインストール時の障害を参照することで、今回のインストール時に生じ得る障害を予測することができ、それを考慮した対処をしながらインストール処理を実行することができる。
【００３２】
また、障害を解消しつつ登録処理を継続した際に取った障害の解消方法を参照することで、今回のインストール時には、事前に、その解消方法を取ってからインストール処理を開始することで、スムーズなインストール処理を実現することができる。
【００３３】
また、アプリケーションの削除理由を参照することで、不要なアプリケーションを誤ってインストールすることや問題のあるアプリケーションをインストールすることを未然に防ぐことができる。
【発明を実施するための最良の形態】
【００３４】
以下、図面を参照して本発明の実施形態について詳細に説明する。
【００３５】
＜電子機器の構成例＞
図１は、本実施形態のソフトウェア資源登録管理機能に対応した電子機器の一構成例を示す機能ブロック図である。なお、電子機器１００としては、プリンタ、複写機、ＦＡＸ装置、携帯電話、デジタルカメラ、パーソナルコンピュータ、ＣＤ（コンパクトディスク）レコーダ、ＤＶＤレコーダ、ＭＤレコーダなど、何れのものであってもよい。
【００３６】
本実施形態の電子機器１００は、各種の機能部の一部を、ハードウェア処理回路により構成することに限らず、その機能を実現するプログラムコードに基づき電子計算機（コンピュータ）と同様の仕組みを用いてソフトウェア的に実現することが可能に構成されている。
【００３７】
ソフトウェアにより所定の処理（特に本実施形態ではソフトウェア資源登録管理処理）を実行させる仕組みとすることで、ハードウェア処理回路で構成される各機能要素の一部を取り外した構成にすることができ、またハードウェアの変更を伴うことなく、処理手順などを容易に変更できる利点を享受できるようになる。これに対して、ハードウェア処理回路で行なうことで、高速化を図ったアクセラレータシステムを構築することができるようになる。アクセラレータシステムは、処理が複雑であっても、処理速度の低下を防ぐことができ、高いスループットを得ることができる。
【００３８】
電子計算機と同様の仕組みで、ソフトウェア資源登録管理処理機能をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ（組込マイコンなど）、あるいは、ＣＰＵ（Central Processing Unit ）、論理回路、読出専用の記憶部であるＲＯＭ（Read Only Memory）、随時書込みおよび読出しが可能であるとともに揮発性の記憶部の一例であるＲＡＭ（Random Access Memory）、あるいは不揮発性の記憶部の一例であるＲＡＭ（ＮＶＲＡＭと記述する）を始めとする記憶装置などの機能を１つのチップ上に搭載して所望のシステムを実現するＳＯＣ（System On a Chip：システムオンチップ）、または、各種のプログラムをインストールすることで各種の機能を実行することが可能な構成で、記録媒体からインストールされる。
【００３９】
記録媒体は、コンピュータのハードウェア資源に備えられている読取装置に対して、プログラムの記述内容に応じて、磁気、光、電気などのエネルギの状態変化を引き起こして、それに対応する信号の形式で、読取装置にプログラムの記述内容を伝達できるものである。
【００４０】
たとえば、コンピュータとは別に、ユーザにプログラムを提供するために配布される、プログラムが記録されている磁気ディスク（フレキシブルディスクＦＤを含む）、光ディスク（ＣＤ−ＲＯＭ（Compact Disc-Read Only Memory ）、ＤＶＤ（Digital Versatile Disc）を含む）、光磁気ディスク（ＭＤ（Mini Disc ）を含む）、または半導体メモリなどよりなるパッケージメディア（可搬型の記憶媒体）により構成されるだけでなく、コンピュータに予め組み込まれた状態でユーザに提供される、プログラムが記録されているＲＯＭやハードディスクなどで構成されてもよい。
【００４１】
また、ソフトウェアを構成するプログラムは、記録媒体を用いずに、記録媒体を介して提供されることに限らず、有線あるいは無線などの通信網を介して提供されてもよい。
【００４２】
たとえば、ソフトウェア資源登録管理処理機能を実現するソフトウェアのプログラムコードを記録した記憶媒体を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ（またはＣＰＵやＭＰＵ）が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、ハードウェア処理回路にて構成する場合と同様の効果は達成される。この場合、記憶媒体から読み出されたプログラムコード自体がソフトウェア資源登録管理処理機能を実現する。
【００４３】
また、コンピュータが読み出したプログラムコードを実行することでソフトウェア資源登録管理処理機能が実現されるだけでなく、プログラムコードの指示に基づき、コンピュータ上で稼働しているＯＳ（Operating Systems ；基本ソフト）などが実際の処理の一部または全部を行ない、その処理によりソフトウェア資源登録管理処理機能が実現される場合であってもよい。
【００４４】
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部または全部を行ない、その処理によってソフトウェア資源登録管理処理機能が実現される場合であってもよい。
【００４５】
なお、ソフトウェア資源登録管理処理機能を実現するプログラムコードを記述したファイルとしてプログラムが提供されるが、この場合、一括のプログラムファイルとして提供されることに限らず、コンピュータで構成されるシステムのハードウェア構成に応じて、個別のプログラムモジュールとして提供されてもよい。
【００４６】
たとえば、コンピュータシステムとして構成される電子機器１００は、装置全体の動作を制御するシステム制御部１０２を備える。本実施形態のシステム制御部１０２は、装置全体の動作を制御する機能だけでなく、当該電子機器１００で使用される各種アプリケーションソフトウェアの登録処理（インストール／アップデート／アンインストール）を管理する機能も備えている。
【００４７】
具体的には、システム制御部１０２は、コントローラ部（制御部）１０４と、図示したハードディスク装置（ＨＤＤ）１１８あるいは光／磁気ディスク装置１１９や、図示を割愛した、フレキシブルディスク（ＦＤ）ドライブ、ＣＤ−ＲＯＭ（Compact Disk ROM）ドライブ、半導体メモリコントローラなどの、所定の記憶媒体からデータを読み出したり記録したりするための記録・読取制御部１０６とを有する。
【００４８】
コントローラ部１０４は、ＣＰＵ１１２、読出専用の記憶部であるＲＯＭ１１３、随時書込みおよび読出しが可能であるとともに揮発性の記憶部の一例であるＲＡＭ１１５、および不揮発性の記憶部の一例であるＲＡＭ（ＮＶＲＡＭと記述する）１１６を有する。
【００４９】
なお、上記において“揮発性の記憶部”とは、装置の電源がオフされた場合には、記憶内容を消滅してしまう形態の記憶部を意味する。一方、“不揮発性の記憶部”とは、装置のメイン電源がオフされた場合でも、記憶内容を保持し続ける形態の記憶部を意味する。記憶内容を保持し続けることができるものであればよく、半導体製のメモリ素子自体が不揮発性を有するものに限らず、バックアップ電源を備えることで、揮発性のメモリ素子を“不揮発性”を呈するように構成するものであってもよい。
【００５０】
また、半導体製のメモリ素子により構成することに限らず、磁気ディスクや光ディスクなどの媒体を利用して構成してもよい。たとえば、ハードディスク装置１１８や光／磁気ディスク装置１１９を不揮発性の記憶部として利用できる。また、ＣＤ−ＲＯＭなどの記録媒体から情報を読み出す構成を採ることでも不揮発性の記憶部として利用できる。
【００５１】
また、コンピュータシステムと同様の仕組みで構成された電子機器１００は、装置の操作指示を受け付けるなどのユーザインタフェースをなす機能部としての指示受付部１５２と、操作時のガイダンス画面（操作メニュー）や装置の動作状態や処理結果などの所定の情報をユーザに提示する表示出力部１５４と、各機能部との間のインタフェース機能をなすインタフェース部（ＩＦ部）１９０とを有する。
【００５２】
インタフェース部１９０としては、処理データ（画像データを含む）や制御データの転送経路であるシステムバス１９１の他、たとえば、操作パネル部１９２ａおよび操作キー部１９２ｂを具備したユーザインタフェース部１９２や、プロトコル制御を実行しネットワークとのインタフェース機能をなす通信インタフェース部１９４や、その他の外部デバイスとのインタフェース機能をなすデバイスインタフェース部を有する。
【００５３】
通信インタフェース部１９４は、ＬＡＮ（Local Area Network）やＷＡＮ（Wide Area Network ）などの有線形態のネットワーク１４２を制御するネットワークコントローラや、公衆回線網（たとえば電話回線）などを通じ、コンピュータ同士でデータをやり取りするときに利用するモデム１４４などの通信制御機能を持つ。なお、ネットワーク１４２は、有線形態のものに限らず、無線形態のネットワーク１４６であってもよい。
【００５４】
デバイスインタフェース部は、後述するように、各種のデバイス装置をコントロールする。
【００５５】
指示受付部１５２としては、たとえば、ユーザインタフェース部１９２の操作キー部１９２ｂを利用することができる。あるいは、キーボード１５２ａやマウス１５２ｂなどを利用することもできる。
【００５６】
ユーザインタフェース部１９２やキーボード１５２ａやマウス１５２ｂは、図示を割愛するが、キーボード１５２ａからのキー入力およびマウス１５２ｂといったポインティングデバイスからの入力を制御するそれぞれに応じたデバイスインタフェース部を介してシステムバス１９１に接続される。
【００５７】
表示出力部１５４は、表示制御部と表示装置とを備える。表示装置としては、たとえば、ユーザインタフェース部１９２の操作パネル部１９２ａを利用することができる。あるいは、ＣＲＴ（Cathode Ray Tube；陰極線管）やＬＣＤ（Liquid Crystal Display；液晶）などでなるその他のディスプレイ部１５４ａを利用することもできる。
【００５８】
たとえば、表示制御部が、操作パネル部１９２ａやディスプレイ部１５４ａ上に、ガイダンス情報や記録・読取制御部１０６が各種の媒体から取り込んだ情報の一覧などを表示させる。また、各種の情報を操作者に通知する際の表示デバイスとしても利用される。なお、表示面上にタッチパネルを有するディスプレイ部１５４ａとすることで指先やペンなどで所定の情報を入力する指示受付部１５２を構成することもできる。
【００５９】
また、電子機器１００には、前述の各機能部の他にも、装置機能に応じた特有の機能部も設けられる。一例として、印刷出力機能や複写機能などを備えた画像形成装置として電子機器１００を構築する場合であれば、画像データの圧縮伸張処理や加工などの処理を実行する画像処理部１８０や、原稿画像を読み取る画像読取部１８２や、画像情報を印刷出力してユーザに提示する構成とするべく、画像読取部１８２が読み取った画像や通信インタフェース部１９４を介して取得した印刷データなどに基づき、所定の出力媒体（たとえば印刷用紙）に画像を出力する画像記録部（画像形成部）１８４を設けることもできる。
【００６０】
画像読取部１８２や画像記録部１８４は、インタフェース部１９０をなすデバイスインタフェース部としてのスキャナインタフェース部１９６やプリンタインタフェース部１９７を介してシステムバス１９１に接続される。
【００６１】
なお、これらの他にも、たとえば、音声情報を発するオーディオデバイス１８８が、音声信号の入出力を制御するオーディオインタフェース部１９８を介してシステムバス１９１に接続される。
【００６２】
また、ＵＳＢ（Universal Serial Bus）規格に準拠したＵＳＢメモリなどのＵＳＢデバイス１８９が、ＵＳＢデバイス１８９との間のデータ入出力を制御するＵＳＢインタフェース部１９９を介してシステムバス１９１に接続される。
【００６３】
画像処理部１８０、画像読取部１８２、画像記録部１８４、オーディオデバイス１８８、ＵＳＢデバイス１８９などの各種のデバイスは、それらに応じたアプリケーションプログラムとコントローラ部１０４による全体を制御するアプリケーションプログラム（オペレーティングシステム用のソフトウェアなど）との連携（協調動作）によって、コピー、プリンタ、スキャナ、ファクシミリなどの画像形成処理に関わる各種のサービスを提供するように構築される。
【００６４】
これら各デバイス用の各アプリケーションは、アプリケーションごとに、追加（インストール）、仕様変更（バージョンアップやバグ修正などの同一バージョン内での微小変更）、または削除（アンインストール）することができし、アプリケーションを構成するモジュールごとにも、追加、仕様変更、あるいは削除することができる。
【００６５】
また、本実施形態の特有の機能要素として、コントローラ部１０４は、アプリケーション登録管理テーブルの情報に基づいてアプリケーションの登録可否を判定する登録情報判定部１７２と、登録情報判定部１７２の判定結果やアプリケーション登録管理テーブルとして保存されている同種アプリケーションの過去の登録処理履歴を表示情報もしくは音声情報でユーザに通知する通知制御部１７４とを具備したアプリケーション登録管理部１７０を備えている。
【００６６】
コントローラ部１０４は、ソフトウェア資源の登録処理を実行する際に、今回インストールしようとしているソフトウェア資源と同種のソフトウェア資源についての履歴がアプリケーション情報保存部１６０に保存されていると登録情報判定部１７２が判定したときには、通知制御部１７４によりその履歴の情報をユーザに通知するとともに、この通知に基づく指示受付部１５２が受け付けたユーザの指示に従って、インストール処理に関係する以後の処理を実行するように制御する登録処理制御部の機能を備えている。
【００６７】
なお、登録情報判定部１７２や通知制御部１７４を具備したアプリケーション登録管理部１７０の機能や、これらを含むコントローラ部１０４の機能は、ソフトウェアで実現することができる。
【００６８】
ここで、同種アプリケーションとは、今回のインストール処理に供されるアプリケーションに対して、バージョンおよびバージョン内での改訂版（仕様）が全く同一のアプリケーションに限らず、バージョンアップのものや、同一バージョン内でのバグ修正や改良のためのアップデート（マイナーチェンジ／Build ）のものや、同じベンダーのワープロ（ワードプロセッサ）、表計算、データベース、プレゼンテーションなどの同属（同族）アプリケーションなどを含むものである。
【００６９】
要するに、過去のインストール処理において起きた障害やアンインストール条件が、同様にして適用される可能性のあるものは、全て、同種アプリケーションに含まれるものとする。
【００７０】
なお、登録可否の判定処理そのものは、たとえば、特許文献５に記載の仕組みのようにアプリケーション登録処理の評価条件に基づいたり、特許文献６に記載の仕組みのように装置で使用されるアプリケーションに関するアプリケーション情報に基づいたりするなど、これらのインストール判定基準をアプリケーション登録管理テーブルとして登録しておき、このアプリケーション登録管理テーブル（評価条件やアプリケーション情報）に基づいて判定すればよい。ここでは、その具体的な説明は割愛する。
【００７１】
ただし、本実施形態の登録処理（インストール／アップデート／アンインストール）時の特有の手順として、要求された登録処理が、問題なくインストール可能なものであるのか、それとも、インストール処理に障害を生じ得るものであるのかを、アプリケーション登録管理テーブルに登録されている同種アプリケーションの登録履歴をも参照して判定する点に特徴を有する。
【００７２】
アプリケーション登録管理テーブルの登録情報に基づいて、インストール／アップデート／アンインストール対象のファイルの過去のインストール履歴を評価し、この評価結果に基づいて、インストール／アップデート／アンインストールが要求されたアプリケーションファイルのインストール可否を判定して、問題なくインストール可能なものはそのままインストールするし、インストール処理に障害を生じ得ることが、アプリケーション登録管理テーブルに登録されている同種アプリケーションの登録履歴から推定される場合には、その登録履歴の内容をユーザに通知することで、インストール処理に纏わる不具合を事前に防止し、また無駄な作業を割愛できるようにする。
【００７３】
アプリケーション登録管理テーブルの情報を参照してインストール処理を制御するので、インストール／アップデート／アンインストールに先立つユーザの事前確認や、インストール／アップデート／アンインストールに伴うユーザの操作が基本的には不要であり、作業時間が短縮されるとともに、人為的なミスに起因する多重インストールやデータ消失などの種々の問題発生を回避できる。
【００７４】
加えて、通知された登録履歴の内容に基づいて、前回のアプリケーションインストール時の処理過程で起きた経験を今回のインストール処理時に反映させることで、より適正なインストール処理を継続させることができる。たとえば、無駄なアンインストールが再度生じることがないように、期限条件や回数条件などのアプリケーション削除に関係する条件を調整できる。
【００７５】
また、登録履歴の内容から、インストール処理を完結させることができないことが推測される場合には、事前にその旨を通知すれば、無駄なインストール処理を行なわなくても済むようになる。
【００７６】
また、登録履歴の内容から、インストール処理を完結するまでに発生し得る障害を解消するための手法を事前に通知するようにすれば、バージョンアップ時や再インストール時や同じベンダーの同属アプリケーションの登録時にスムーズにインストール処理を実行することができる。
【００７７】
このような構成において、ＣＰＵ１１２は、システムバス１９１を介してシステム全体の制御を行なう。ＲＯＭ１１３は、ＣＰＵ１１２が使用する制御プログラムを含む各種固定データを格納する。ＲＡＭ１１５は、ＳＲＡＭ（Static Random Access Memory ）などで構成され、プログラム制御変数や各種処理のためのデータなどを格納し、また、所定のアプリケーションプログラムに従って演算して得たデータや外部から取得したデータなどを一時的に格納する領域を含んでおり、ＣＰＵ１１２がデータ処理などを行なう際に、ワークメモリなどの用途に使用される。
【００７８】
ＮＶＲＡＭ１１６は、制御パラメータや処理されたデータなどを記憶しておくものであり、バックアップされる。特に、本実施形態の構成では、アプリケーション登録管理テーブルを保存するアプリケーション情報保存部１６０の機能をなすようになっている。
【００７９】
このような構成の電子機器１００において、たとえば、ソフトウェア資源登録管理処理機能をコンピュータに実行させるプログラムは、ＣＤ−ＲＯＭなどの記録媒体を通じて配布される。あるいは、このプログラムは、ＣＤ−ＲＯＭではなくＦＤに格納されてもよい。また、ＭＯドライブを設け、ＭＯに前記プログラムを格納してもよく、またフラッシュメモリなどの不揮発性の半導体メモリカードなど、その他の記録媒体にプログラムを格納してもよい。さらに、他のサーバなどからインターネットなどのネットワークを経由してプログラムをダウンロードして取得したり、あるいは更新したりしてもよい。
【００８０】
なおプログラムを提供するための記録媒体としては、ＦＤやＣＤ−ＲＯＭなどの他にも、ＤＶＤなどの光学記録媒体、ＭＤなどの磁気記録媒体、ＰＤなどの光磁気記録媒体、テープ媒体、磁気記録媒体、ＩＣカードやミニチュアカードなどの半導体メモリを用いることができる。記録媒体の一例としてのＦＤやＣＤ−ＲＯＭなどには、ソフトウェア資源登録管理処理機能を実現する際の、一部または全ての機能を格納することができる。
【００８１】
また、ハードディスク装置１１８や光／磁気ファイルなどの記憶装置は、プログラムや各種のアプリケーション、フォントデータやユーザファイルといったユーザデータや制御管理データを保持したり、自装置で取得したデータや外部から取得したデータなどを大量に一時的に格納したりする領域を含んでおり、入出力インタフェース機能をなす記録・読取制御部１０６によりデータの読出しや書込みが制御される。
【００８２】
このような構成により、所定の指令にて、ソフトウェア資源登録管理処理機能を実行するプログラムが記憶されているＣＤ−ＲＯＭなどの読取可能な記録媒体からＲＡＭ１１５にソフトウェア資源登録管理処理プログラムがインストールされ、また指示受付部１５２を介した操作者による指令や自動処理にてソフトウェア資源登録管理処理プログラムが起動される。
【００８３】
ＣＰＵ１１２は、このソフトウェア資源登録管理処理プログラムに従って後述するソフトウェア資源登録管理処理方法に伴う処理を施し、処理結果をＲＡＭ１１５やハードディスク装置１１８などの記憶装置に格納し、必要により操作パネル部、あるいはＣＲＴやＬＣＤなどの表示装置に情報提示出力する。ソフトウェア資源登録管理処理方法を実行するプログラムが記録した記録媒体を用いることにより、既存のシステムを変えることなく、ソフトウェア資源登録管理処理システムを汎用的に構築することができる。
【００８４】
なお、このようなコンピュータを用いた構成に限らず、各機能部の処理をなす専用のハードウェアの組合せにより、ソフトウェア資源登録管理処理機能を実行することを可能とする電子機器１００を構成することもできる。
【００８５】
＜処理手順；第１実施形態＞
図２は、電子機器１００についてのソフトウェア資源登録管理機能に着目した処理の第１実施形態を説明する図である。ここで、図２は、ソフトウェア資源登録管理機能を実現する第１実施形態の処理手順の一例を示すフローチャートである。
【００８６】
この第１実施形態は、インストール処理時に発生した障害の履歴と、その障害を解消しながら処理を継続させていったときには、そのときに取られた解消方法を登録履歴としてアプリケーション登録管理テーブル（フローチャートでは登録ログと記す）に保存しておき、次回の同種アプリケーションの登録処理時に、そのアプリケーション登録管理テーブルの登録履歴を参照して登録処理を実行する点に特徴を有する。
【００８７】
たとえば、アプリケーション登録管理部１７０は、同種アプリケーションの中のあるアプリケーションについて初めてのインストール要求を受け付けると（Ｓ１０）、先ず登録情報判定部１７２は、そのアプリケーションが登録可能であるかどうかをアプリケーション登録管理テーブルの評価条件やアプリケーション情報に基づいて判定する（Ｓ１１）。この点は、特許文献５，６に記載の仕組みと同様である。
【００８８】
そして、何らの障害もなく登録が可能である場合には（Ｓ１２−ＹＥＳ）、アプリケーション登録管理部１７０は、そのアプリケーションプログラムを構成する１番目のモジュールをインストールし（Ｓ１４）、また、そのモジュールの登録履歴をアプリケーション登録管理テーブルとしてアプリケーション情報保存部１６０に記録する（Ｓ１６）。そして、全てのモジュールについても、障害が発生しない限り、モジュールごとに、同様に処理する（Ｓ２８）。
【００８９】
一方、登録情報判定部１７２が、評価条件で失敗に該当する、あるいはアプリケーション情報上登録不可と判定する場合には、その障害を除去しての登録処理の継続は不可能であるので（Ｓ１２−ＹＥＳ，Ｓ１８−ＮＯ）、アプリケーション登録管理部１７０は、インストール処理を中断し（Ｓ２０）、また、その障害理由をアプリケーション登録管理テーブルとしてアプリケーション情報保存部１６０に記録する（Ｓ２２）。
【００９０】
また、アプリケーション登録管理部１７０は、評価条件やアプリケーション情報上では登録可能であると登録情報判定部１７２が判定すれば登録処理を継続するが、登録情報判定部１７２が、その途中で別の障害が発生したことを検知した場合において、その障害を除去しての登録処理の継続が不可能であると判定した場合にも（Ｓ１２−ＹＥＳ，Ｓ１８−ＮＯ）、インストール処理を中断し（Ｓ２０）、また、その障害理由をアプリケーション登録管理テーブルに記録する（Ｓ２２）。
【００９１】
他方、アプリケーション登録管理部１７０は、評価条件やアプリケーション情報上で登録可能であると登録情報判定部１７２が判定したことに基づいて登録処理を継続した場合に、登録情報判定部１７２が、その途中で別の障害が発生したと判定した場合において、その障害を除去しての登録処理の継続が可能であると判定した場合には（Ｓ１２−ＹＥＳ，Ｓ１８−ＹＥＳ）、その障害を除去（解除）してインストール処理を実行し（Ｓ２４）、また、その障害理由およびそのときに取った障害解除方法をアプリケーション登録管理テーブルに記録する（Ｓ２６）。そして、全てのモジュールについても、モジュールごとに、同様に処理する（Ｓ２８）。
【００９２】
このような手順を踏むことで、アプリケーション登録管理テーブルとして、たとえば、インストールされる過程の経歴が、モジュールごとに記録されていく。
【００９３】
なお、アプリケーションを区別するべく、同一アプリケーションの全モジュールを纏めて、１つの識別子が付与される。この識別子は、アプリケーションを一意に識別することのできるものであればよく、たとえば、アプリケーションＩＤ（IDentification）やアプリケーション名が典型例である。また、アプリケーションに付けられる識別子は、アプリケーションの作成元がユニークになるようにつけてもよいし、アプリケーションを構成するファイルのチェックサムを識別子としてもよい。なお、識別子の他に、たとえばベンダー名や、登録日時や、バージョン情報や、その他の設定情報を、属性情報として付与してもよい。
【００９４】
また、前述から分かるように、モジュールごとに記録されるインストール過程の履歴は、インストールに成功したかのか失敗したのかの情報と、失敗した場合には、その失敗理由（障害理由）、また失敗した場合に障害を解除して処理を継続させた場合には、その障害解除方法を含む。失敗理由は、評価条件やアプリケーション情報の側面からのインストール処理中断の他に、別の要因による障害も含む。
【００９５】
次に、アプリケーション登録管理部１７０は、さらに、アプリケーションのインストール要求を受け付けると（Ｓ６０）、先ず、登録情報判定部１７２は、アプリケーション登録管理テーブルを探索し（Ｓ６２）、インストールを希望されたアプリケーションと同種アプリケーションの登録履歴があるか否かを判定する（Ｓ８０）。
【００９６】
なお、アプリケーション登録管理テーブルに記録されているアプリケーションの登録履歴がこれからインストールしようとするアプリケーションと同種のものであるか否かは、アプリケーションに付けられた識別子と、ベンダー名やバージョン情報などの属性情報を比較することによって判定すればよい。
【００９７】
アプリケーション登録管理部１７０は、同種アプリケーションの登録履歴が存在しないと登録情報判定部１７２が判定した場合は（Ｓ８０−ＮＯ）、別の種類のアプリケーションの中のあるアプリケーションについて初めてのインストール要求であると判断し、前述のステップＳ１０〜Ｓ２８の手順に従って、インストール処理を継続する（Ｓ８２）。
【００９８】
一方、アプリケーション登録管理部１７０は、同種アプリケーションの登録履歴が存在すると登録情報判定部１７２が判定した場合には（Ｓ８０−ＹＥＳ）、アプリケーション情報保存部１６０が保存しているアプリケーション登録管理テーブルに記録されている登録履歴の内容を読み出して、通知制御部１７４を介してユーザに通知する（Ｓ８４）。
【００９９】
この通知を受けたユーザは、その通知に従って、そのまま登録を継続するか、条件を変更してから登録を継続するか、あるいは登録を中止するかを決め、指示受付部１５２を介して決定内容を入力する。
【０１００】
アプリケーション登録管理部１７０は、指示受付部１５２を介してユーザ決定を受け付けると、その指示内容に従って登録処理を実行する（Ｓ８６）。
【０１０１】
こうすることで、同種アプリケーションを過去にインストールしようとしたことがある場合、実際のインストール処理に先立って、その同種アプリケーションのインストール処理に関連する登録履歴情報を参照することができ、その登録履歴情報を元に、今回のアプリケーションのインストール処理を調整することができるようになるので、より適正な登録処理を実行することができる。その結果として、ユーザにとっての装置の利便性を向上させることができる。
【０１０２】
たとえば、あるアプリケーションがインストールされたときに、そのアプリケーションを識別するための情報とインストールされた過程で生じた障害発生の事実やその障害理由をアプリケーション登録管理テーブルに登録履歴として記録しておく。
【０１０３】
そして、同じアプリケーションが再度インストールされるときに、アプリケーション登録管理テーブルの登録履歴を検索し、インストールされるアプリケーションが今までにインストールされようとしたことがあるか否かを判断する。インストールされるアプリケーションが今までにインストールもアンインストールもされていないことが分かった場合には、自動的にそのアプリケーションをインストールする。
【０１０４】
一方、インストールされるアプリケーションが今までにインストール処理された経歴のあることが分かった場合には、その旨をユーザに通知する。こうすることで、今回のインストール処理が不適切で、前回と同様の障害が発生することになる可能性のあることをユーザに事前に知らしめることができる。
【０１０５】
ここで、特許文献５，６に記載の仕組みでは、インストール可能であるか否かを判定し、インストール不可の場合には、登録処理を中断するとともに、その旨をユーザに通知するようにしており、一見すると、似通った仕組みである。
【０１０６】
しかしながら、特許文献５，６に記載の仕組みでは、過去の同種アプリケーションの登録履歴を参照することなく、専ら今回登録しようとしているアプリケーションそのものの予め設定されているインストール条件の側面からインストールの可否を判定しているので、インストール可能と判定されると、過去にインストールに失敗しているにも拘わらず、登録処理を実行してしまう。このとき、実際には、評価基準以外やアプリケーション情報以外の原因で何らかの障害が起こり、前回と同様に、登録処理を完結させることができないということが起こり得る。
【０１０７】
つまり、特許文献５，６に記載の仕組みでは、過去に、インストール不可能と判定されずに登録処理を開始したにも拘わらず、インストール処理過程で障害が発生し、インストール処理を中断してしまったとしても、同じアプリケーションを再度インストールしようとしたときには、やはり、インストール不可能と判定されることはなく、登録処理を開始してしまい、同様の障害のため、再度、インストール処理を中断してしまうということになり、インストール作業の無駄が生じてしまうのである。
【０１０８】
これに対して、第１実施形態の処理手順の場合、このような障害を契機とした登録失敗となるものについても、登録処理の履歴を残しておいて、その登録履歴に基づいて、事前に、処理を完結させ得るか否かを通知できる点で相違がある。
【０１０９】
たとえば、評価条件やアプリケーション情報の側面からはインストール処理に成功し得る場合であっても、事前に提示された登録履歴情報の内容からは、別の障害を理由として、その同種アプリケーションの登録処理を完結させることができないことが分かれば（推測できれば）、登録処理を強制的に中断させることで、無駄な登録処理を継続し無くても済むのである。
【０１１０】
また、過去のインストール処理過程で、障害が発生したが、その障害の解除方法を探索しながら最終的にはインストール処理を完結させた場合、その障害の履歴と解除方法とを対応付けて、登録履歴としてアプリケーション登録管理テーブルに保存しておく。
【０１１１】
この後、そのアプリケーションを登録（バージョンアップや再インストールや同属アプリケーションの登録）しようとしたときには、登録履歴に基づいて、障害発生の可能性とその解除方法とを事前にユーザに通知することで、障害発生前に障害原因を解除しながら登録処理を完結させていくことができ、スムーズに処理を実行できるので、作業効率を改善することができるのである。
【０１１２】
＜処理手順；第２実施形態＞
図３は、電子機器１００についてのソフトウェア資源登録管理機能に着目した処理の第２実施形態を説明する図である。ここで、図３は、ソフトウェア資源登録管理機能を実現する第２実施形態の処理手順の一例を示すフローチャートである。
【０１１３】
この第２実施形態は、アンインストール履歴を登録履歴としてアプリケーション登録管理テーブル（フローチャートでは登録ログと記す）に保存しておき、次回の同種アプリケーションの登録処理時に、そのアプリケーション登録管理テーブルのアンインストール履歴（登録履歴の一例）を参照して登録処理を実行する点に特徴を有する。
【０１１４】
先ず、第１実施形態のステップＳ１０〜Ｓ２８の手順に従って、あるアプリケーションがインストールされたものとする。このインストール時には、必要に応じて、そのアプリケーションの自動アンインストール条件を設定しておくことができる。
【０１１５】
ここで、「アンインストール条件」は、たとえば、使用期限、使用回数制限、使用頻度、削除条件、正常に機能しているか否か（特許文献１〜４を参照）などが代表例であるが、この他にも、たとえば、インストール時に障害が発生した場合や、問題のあるバージョンのものをインストールした場合も、アプリケーションのアンインストール条件に含む。
【０１１６】
これらの自動アンインストール条件が設定されたときには、その自動アンインストール条件をアプリケーション登録管理テーブルに登録しておく（Ｓ３０）。
【０１１７】
この状態で、アプリケーション登録管理部１７０は、既にインストールされているアプリケーションのアンインストール要求を受け付けると（Ｓ４０）、先ず、そのアプリケーションのアンインストール要求が、所定のアンインストール条件に合致したことを契機とする自動アンインストールであるのか、それとも、ユーザからの指示によるものであるのかを判定する（Ｓ４２）。
【０１１８】
自動アンインストールを実行する場合には（Ｓ４２−ＹＥＳ）、その自動アンインストールする理由、すなわちアンインストール条件を検知し（Ｓ４４）、アプリケーションを自動的にアンインストールするとともに、そのアンインストール理由（登録履歴の一例である）を、アプリケーション登録管理テーブルとしてアプリケーション情報保存部１６０に記録する（Ｓ４８）。
【０１１９】
一方、ユーザからの指示による手動アンインストールであるときには、アンインストールする理由の入力をユーザに求めた後（Ｓ４６）、ユーザ指示に従ってアプリケーションをアンインストールするとともに、ユーザより指示受付部１５２を介して入力された手動アンインストール理由（登録履歴の一例である）を、アプリケーション登録管理テーブルとしてアプリケーション情報保存部１６０に記録する（Ｓ４８）。
【０１２０】
なお、手動アンインストールのユーザによる入力は、キーボード１５２ａを利用したテキスト入力の他、予め理由をメニュー設定してリスト形式で表示出力部１５４に提示し、そのメニューリストの中からキーボード１５２ａやマウス１５２ｂなどで選択するようにしてもよい。
【０１２１】
つまり、自動でアンインストールされるときには検知された自動アンインストール条件を自動的に登録ログに記録するし、また、手動でアンインストールされるときには、手動でその理由を記録するなど、自動や手動に関わらず、何らかの理由で、インストール済のアプリケーションがアンインストールされるときには、そのアンインストール理由をアプリケーションごとに登録ログに記録していくのである。
【０１２２】
このような手順を踏むことで、アプリケーション登録管理テーブルとして、たとえば、アプリケーションの識別子と対応付けられて、アンインストールされた理由が登録履歴の一種として、アプリケーションごとに記録されていく。なお、アプリケーションの識別子やその他の属性情報に関しては第１実施形態と同様である。
【０１２３】
この後、アプリケーション登録管理部１７０は、同種のアプリケーションのインストール要求を受け付けたときは、アプリケーション登録管理テーブルに記録されている、その同種アプリケーションの削除履歴、すなわち、同種のアプリケーションが以前はどのような理由でアンインストールされたのかを、通知制御部１７４を介してユーザに通知する。
【０１２４】
具体的には、アプリケーション登録管理部１７０は、あるアプリケーションのインストール要求を受け付けると（Ｓ６０）、先ず、登録情報判定部１７２は、アプリケーション登録管理テーブルを探索し（Ｓ６２）、インストールを希望されたアプリケーションと同種のアプリケーションの登録履歴があるか否かを判定する（Ｓ８０）。
【０１２５】
なお、アプリケーション登録管理テーブルに記録されているアプリケーションの登録履歴がこれからインストールしようとするアプリケーションと同種のものであるか否かは、アプリケーションに付けられた識別子と、ベンダー名やバージョン情報などの属性情報を比較することによって判定すればよい。
【０１２６】
アプリケーション登録管理部１７０は、同種アプリケーションの登録履歴が存在しないと登録情報判定部１７２が判定した場合は（Ｓ８０−ＮＯ）、別の種類のアプリケーションの中のあるアプリケーションについて初めてのインストール要求であると判断し、前述のステップＳ１０〜Ｓ２８の手順に従って、インストール処理を継続する（Ｓ８２）。
【０１２７】
一方、アプリケーション登録管理部１７０は、同種アプリケーションの登録履歴が存在すると登録情報判定部１７２が判定した場合には（Ｓ８０−ＹＥＳ）、アプリケーション情報保存部１６０が保存しているアプリケーション登録管理テーブルに記録されている登録履歴の内容の内、少なくとも以前の削除理由を読み出して、通知制御部１７４を介してユーザに通知する（Ｓ８５）。
【０１２８】
この通知を受けたユーザは、その通知に従って、そのまま登録を継続するか、条件を変更してから登録を継続するか、あるいは登録を中止するかを決め、指示受付部１５２を介して決定内容を入力する。
【０１２９】
アプリケーション登録管理部１７０は、指示受付部１５２を介してユーザ決定を受け付けると、その指示内容に従って登録処理を実行する（Ｓ８６）。
【０１３０】
たとえば、前回は不要なアプリケーションであるためにアンインストールしていたことが登録ログに基づく通知から分かり、今回も前回と同様に、不要なアプリケーションであると判断すれば、その不要なアプリケーションを誤ってインストールすることを未然に防止することができる。また、前回は問題のあるアプリケーションであるためにアンインストールしていたことが登録ログに基づく通知から分かれば、その問題のあるアプリケーションを再度インストールすることを未然に防止することができる。
【０１３１】
このように、第２実施形態の処理手順によれば、同種アプリケーションを過去にアンインストールしたことがある場合、今回のインストール処理に先立って、その同種アプリケーションのアンインストール処理に関連する登録履歴情報を参照することができ、その登録履歴情報情報（特にアンインストールに関するもの）を元に、今回のアプリケーションのインストール処理を調整することができるようになるので、より適正な登録処理を実行することができる。その結果として、ユーザにとっての装置の利便性を向上させることができる。
【０１３２】
たとえば、アプリケーションがアンインストールされたときに、そのアプリケーションを識別するための情報とアンインストールされた理由（削除理由）をアプリケーション登録管理テーブルに登録履歴として記録しておく。
【０１３３】
そして、同じアプリケーションが再度インストールされるときに、アプリケーション登録管理テーブルの登録履歴を検索し、インストールされるアプリケーションが今までにアンインストールされたか否かを判断する。インストールされるアプリケーションが今までにインストールもアンインストールもされていないことが分かった場合には、自動的にそのアプリケーションをインストールする。
【０１３４】
一方、インストールされるアプリケーションが今までにアンインストールされていたことが分かった場合には、その旨をユーザに通知する。こうすることで、今回のインストール処理が不適切で、再度アンインストールすることになる可能性のあることをユーザに事前に知らしめることができるのである。
【０１３５】
ここで、特許文献５，６に記載の仕組みでは、インストール可能であるか否かを判定し、インストール不可の場合には、登録処理を中断するとともに、その旨をユーザに通知するようにしており、一見すると、似通った仕組みである。
【０１３６】
しかしながら、特許文献５，６に記載の仕組みでは、過去の同種アプリケーションの登録履歴（本例では特に以前のアンインストール理由）を参照することなく、専ら今回登録しようとしているアプリケーションそのものの予め設定されているインストール条件の側面からインストールの可否を判定して、不要なアプリケーショを誤ってインストールすることや問題のあるアプリケーションをインストールすることを防止するようにしているに過ぎず、過去のアンインストールの経験は、全く活かされていないのである。
【０１３７】
これに対して、この第２実施形態の処理手順によれば、インストールしようとしているアプリケーションが、過去に、どのような理由でアンインストールされたことがあるのかを事前に知ることができるので、今回のインストール時には、その過去の経験を踏まえて、インストール処理を実行できる利点がある。
【０１３８】
たとえば、インストール時に障害が発生し自動的にアンインストールされたアプリケーションであることが事前に通知されるので、それを知らないまま再びインストールするようなことを防止することができる。また、問題のあるバージョンのものをインストールしたために自動的にアンインストールされたアプリケーションであることが事前に通知されるので、それを知らないままアプリケーションをアップグレードしてしまうようなことを防止することができる。
【０１３９】
また、付加的な効果として、特許文献１に記載のように、自動アンインストール条件と課金処理（割引条件を含む）とを関連付ける場合、課金条件との関係で、今回インストールする場合の自動アンインストール条件の選択を調整することもできる。すなわち、アプリケーションをインストールする前にユーザに課金方法の選択に関する示唆を与えることができる利点がある。
【０１４０】
なお、このときは、アプリケーション登録管理部１７０は、自動アンインストール条件と課金処理との関係を示したメニューリストを表示出力部１５４に提示し、そのメニューリストの中からキーボード１５２ａやマウス１５２ｂなどで選択するようにしてもよい。
【０１４１】
たとえば、前回は、期限設定や使用回数制限を設定してインストールとしていたために、自動アンインストール条件に合致したときに自動でアンインストールされたことが分かり、今回は、そのような条件設定をより緩くする、あるいは望まないときには、前回と異なる条件を設定してインストールすることができるので、自動でアンインストールされてしまうことに原因とする再インストールの度合いを少なくすることができる。
【図面の簡単な説明】
【０１４２】
【図１】本実施形態のソフトウェア資源登録管理機能に対応した電子機器の一構成例を示す機能ブロック図である。
【図２】ソフトウェア資源登録管理機能を実現する第１実施形態の処理手順の一例を示すフローチャートである。
【図３】ソフトウェア資源登録管理機能を実現する第２実施形態の処理手順の一例を示すフローチャートである。
【符号の説明】
【０１４３】
１００…電子機器、１０２…システム制御部、１０４…コントローラ部、１０６…記録・読取制御部、１５２…指示受付部、１５４…表示出力部、１６０…アプリケーション情報保存部、１７０…アプリケーション登録管理部、１７２…登録情報判定部、１７４…通知制御部
【図１】
2007293737.tif 000003
【図２】
2007293737.tif 000004
【図３】
2007293737.tif 000005