説明

情報処理装置、その制御方法、その制御プログラム、および情報処理システム

【課題】ユーザーの利便性を損なうことなく必要な機能についてアプリケーションをバージョンアップすることができる情報処理装置を提供する。
【解決手段】情報処理装置は、第1のアプリケーションの機能がカスタマイズされているかを判断する種別判断手段と、第1のアプリケーションおよび第2のアプリケーションのそれぞれで、画像形成装置の各々と連携した処理が可能となるかを判断する連携処理判断手段と、第2のアプリケーションで連携した処理が可能となる画像形成装置が存在する場合、第1のアプリケーションの機能にカスタマイズされた部分があるとの種別判断手段の判断に基づいて、当該カスタマイズされた部分の機能を残存し、第2のアプリケーションの連携した処理を実行させる機能を追加する態様で第1のアプリケーションを更新する更新手段と、当該カスタマイズされた部分の機能を発揮させるように起動する起動手段とを備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像形成装置と連携した処理を実行可能な情報処理装置、その制御方法、その制御プログラム、および情報処理システムに関する。
【背景技術】
【0002】
従来から、複写(コピー)機能、読み取り(スキャナー)機能、プリンター機能等を有する複合型画像形成装置が広く普及している。この画像形成装置は、複合機としてMFP(Multi -Functional Peripherals)とも呼ばれる。また、ネットワーク上に複数の画像形成装置が存在する場合には、PC(Personal Computer)などの情報処理装置に含まれるアプリケーションで当該複数の画像形成装置を一元的に管理する方式が知られている。
【0003】
このようなアプリケーションをアップデートする際には、画像形成装置との連携処理が可能なようにアップデートする必要があり、アップデート方式には様々な技術が提案されている。
【0004】
たとえば、特開2004−42304号公報(特許文献1)には、複数の画像形成装置のプログラムのバージョンアップ時に、画像形成装置ごとに適切なプログラムにバージョンアップすることができる技術が開示されている。
【0005】
また、特開2009−230400号公報(特許文献2)には、導入するプリンタードライバのバージョンと、情報処理装置に接続して利用される装置のファームウェアのバージョンとの組み合わせが動作保証されるように、ソフトウェア、ファームウェアを更新することができる技術が開示されている。
【0006】
一方で、情報処理装置に含まれている、画像形成装置を管理するためのアプリケーション(以下、管理アプリケーションとも称す)は、一般的には画像形成装置との通信機能、アプリケーションの内部処理機能、UI(User Interface)機能とが互いに連携しているため、当該アプリケーションをアップデートする際には、全ての機能を同時にアップデートされている。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特開2004−42304号公報
【特許文献2】特開2009−230400号公報
【発明の概要】
【発明が解決しようとする課題】
【0008】
新しく管理することが必要となった画像形成装置において、従来の管理アプリケーションの通信機能や内部処理機能では当該画像形成装置と連携処理できない場合には、当該機能をアップデートする必要がある。
【0009】
しかしながら、上記のように全ての機能を同時にアップデートしてしまうと、情報処理装置にインストールされている管理アプリケーションがユーザー専用に内部処理機能やUI機能をカスタマイズしたものである場合には、当該カスタマイズ部分が消滅してしまうという問題が生じる。
【0010】
したがって、ユーザーは新しい画像形成装置と連携処理可能な管理アプリケーションにバージョンアップした後、改めて当該管理アプリケーションの機能をユーザー専用にカスタマイズする必要があった。
【0011】
本発明は、上記の問題点を解決するためになされたものであって、ユーザーの利便性を損なうことなく必要な機能についてアプリケーションをバージョンアップすることができる情報処理装置、その制御方法、その制御プログラム、および情報処理システムを提供することを目的とする。
【課題を解決するための手段】
【0012】
本発明のある局面に従うと、ネットワークに接続されている少なくとも1つの画像形成装置と連携した処理を実行するための情報処理装置が提供される。情報処理装置は、情報処理装置にインストールされており、情報処理装置に連携した処理を実行させるための第1のアプリケーションのバージョン情報に基づいて、第1のアプリケーションの機能がユーザーに対応するようにカスタマイズされたものであるか否かを判断するための種別判断手段と、第1のアプリケーションおよび情報処理装置にインストールしようとする第2のアプリケーションのそれぞれが情報処理装置に、少なくとも1つの画像形成装置の各々と連携した処理を実行させることが可能か否かを判断するための連携処理判断手段と、第2のアプリケーションによって連携した処理を実行させることが可能である画像形成装置が存在すると連携処理判断手段が判断した場合、第1のアプリケーションの機能にカスタマイズされた部分があるとの種別判断手段の判断に基づいて、第1のアプリケーションにおけるカスタマイズされた部分の機能を残存し、第2のアプリケーションの連携した処理を実行させる機能を追加する態様で第1のアプリケーションを更新するための更新手段と、第1のアプリケーションのカスタマイズされた部分の機能を発揮させるように起動するための起動手段とを備える。
【0013】
好ましくは、第1のアプリケーションおよび第2のアプリケーションは、それぞれ独立に構成された、情報処理装置にユーザーインターフェースを実現させるためのUI部と、連携した処理を情報処理装置に実行させるための処理部とを含む。カスタマイズされた部分はUI部と対応し、種別判断手段は、UI部がユーザーに対応したユーザーインターフェースを実現させるものであるか否かを判断する。
【0014】
好ましくは、種別判断手段が、第1のアプリケーションのUI部がユーザーに対応したユーザーインターフェースを実現させるものであると判断した場合、起動手段は、更新手段により更新されたアプリケーションを起動する際に、ユーザーに対応したユーザーインターフェースを実現するために、UI部に対応する機能については第1のアプリケーションを起動する。
【0015】
好ましくは、更新手段は、第1のアプリケーションまたは第2のアプリケーションのそれぞれが情報処理装置に実行させることが可能な機能と関連付けられたデータを追加、削除または上書きすることで第1のアプリケーションを更新する。
【0016】
好ましくは、第1のアプリケーションおよび第2のアプリケーションにより使用されるデータベースを格納するための記憶手段をさらに備える。種別判断手段は、第1のアプリケーションのバージョン情報を記憶手段に格納された、第1のアプリケーションと関連付けられたデータベース、またはネットワークを介して接続可能なサーバ装置から取得する。
【0017】
好ましくは、第1のアプリケーションおよび第2のアプリケーションにより使用されるデータベースを格納するための記憶手段をさらに備える。連携処理判断手段は、データベースに基づいて、第1のアプリケーションおよび第2のアプリケーションのそれぞれが情報処理装置に、少なくとも1つの画像形成装置の各々と連携した処理を実行させることが可能か否かを判断する。
【0018】
好ましくは、種別判断手段が、第1のアプリケーションのUI部がユーザーに対応したユーザーインターフェースを実現させるものであると判断した場合、ネットワークに接続された少なくとも1つの画像形成装置において、第2のアプリケーションが情報処理装置に連携した処理を実行させることが可能な第1の画像形成装置が存在するときに、第2のアプリケーションは、第1のアプリケーションと関連付けられたデータベースを参照することにより、第1のアプリケーションが情報処理装置に連携した処理を実行させることが可能な第2の画像形成装置に対する処理内容を、情報処理装置に第1の画像形成装置に対して実行させる。
【0019】
本発明の別の局面に従うと、ネットワークに接続されている少なくとも1つの画像形成装置と連携した処理を実行するための情報処理装置のコンピュータに実行させる制御プログラムが提供される。情報処理装置の制御プログラムは、情報処理装置にインストールされており、情報処理装置に連携した処理を実行させるための第1のアプリケーションのバージョン情報に基づいて、第1のアプリケーションの機能がユーザーに対応するようにカスタマイズされたものであるか否かを判断するステップと、第1のアプリケーションおよび情報処理装置にインストールしようとする第2のアプリケーションのそれぞれが情報処理装置に、少なくとも1つの画像形成装置の各々と連携した処理を実行させることが可能か否かを判断するステップと、第2のアプリケーションによって連携した処理を実行させることが可能である画像形成装置が存在する場合、第1のアプリケーションの機能にカスタマイズされた部分があるとの判断に基づいて、第1のアプリケーションにおけるカスタマイズされた部分の機能を残存し、第2のアプリケーションの連携した処理を実行させる機能を追加する態様で第1のアプリケーションを更新するステップと、第1のアプリケーションのカスタマイズされた部分の機能を発揮させるように起動する起動ステップとを実行させる。
【0020】
本発明のさらに別の局面に従うと、ネットワークに接続されている少なくとも1つの画像形成装置と連携した処理を実行するための情報処理装置の制御方法が提供される。情報処理装置の制御方法は、情報処理装置にインストールされており、情報処理装置に連携した処理を実行させるための第1のアプリケーションのバージョン情報に基づいて、第1のアプリケーションの機能がユーザーに対応するようにカスタマイズされたものであるか否かを判断するステップと、第1のアプリケーションおよび情報処理装置にインストールしようとする第2のアプリケーションのそれぞれが情報処理装置に、少なくとも1つの画像形成装置の各々と連携した処理を実行させることが可能か否かを判断するステップと、第2のアプリケーションによって連携した処理を実行させることが可能である画像形成装置が存在する場合、第1のアプリケーションの機能にカスタマイズされた部分があるとの判断に基づいて、第1のアプリケーションにおけるカスタマイズされた部分の機能を残存し、第2のアプリケーションの連携した処理を実行させる機能を追加する態様で第1のアプリケーションを更新するステップと、第1のアプリケーションのカスタマイズされた部分の機能を発揮させるように起動する起動ステップとを備える。
【0021】
本発明のさらに別の局面に従うと、ネットワークに接続されている少なくとも1つの画像形成装置、およびサーバー装置と、画像形成装置と連携した処理を実行するための情報処理装置とを備える、情報処理システムが提供される。情報処理システムは、情報処理装置にインストールされており、情報処理装置に連携した処理を実行させるための第1のアプリケーションのバージョン情報に基づいて、第1のアプリケーションの機能がユーザーに対応するようにカスタマイズされたものであるか否かを判断する種別判断手段と、第1のアプリケーションおよび情報処理装置にインストールしようとする第2のアプリケーションのそれぞれが情報処理装置に、少なくとも1つの画像形成装置の各々と連携した処理を実行させることが可能か否かを判断する連携処理判断手段と、第2のアプリケーションによって連携した処理を実行させることが可能である画像形成装置が存在するとの連携処理判断手段が判断した場合、第1のアプリケーションの機能にカスタマイズされた部分があるとの種別判断手段の判断に基づいて、第1のアプリケーションにおける当該カスタマイズされた部分の機能を残存し、第2のアプリケーションの連携した処理を実行させる機能を追加する態様で第1のアプリケーションを更新する更新手段と、第1のアプリケーションのカスタマイズされた部分の機能を発揮させるように起動する起動手段とを含む。
【発明の効果】
【0022】
以上のように、本発明によれば、ユーザーの利便性を損なうことなく必要な機能についてアプリケーションをバージョンアップすることができる。
【図面の簡単な説明】
【0023】
【図1】本発明の実施の形態に従う情報処理システムの構成を模式的に示す図である。
【図2】本発明の実施の形態に従う情報処理装置のハードウェア構成を示すブロック図である。
【図3】本発明の実施の形態に従う画像形成装置のハードウェア構成を示すブロック図である。
【図4】本発明の実施の形態に従う管理アプリケーションの各バージョンと画像形成装置との連携処理対応関係の一例を示す図である。
【図5】本発明の実施の形態に従う管理アプリケーションの内部構成の一例を示す図である。
【図6】本発明の実施の形態に従う管理アプリケーションの構成の別の一例を示す図である。
【図7】従来例の管理アプリケーションのアップデート方式について説明するための図である。
【図8】本発明の実施の形態に従う管理アプリケーションがアップデートされた構成を示す図である。
【図9】本発明の実施の形態に従う情報処理装置の主な機能構成を示すブロック図である。
【図10】本発明の実施の形態に従う情報処理装置が実行する全体の処理手順を示すフローチャートである。
【図11】本発明の実施の形態に従う管理アプリケーションのアップデート方式を特定するための処理手順を示すフローチャートである。
【図12】本発明の実施の形態に従う管理アプリケーションの起動処理手順を示すフローチャートである。
【図13】本発明の実施の形態に従う管理アプリケーションの別の起動処理手順を示すフローチャートである。
【図14】本発明の実施の形態の効果を説明するための一例を示す図である。
【図15】本発明の実施の形態の効果を説明するための一例を示す図である。
【図16】本発明の実施の形態の効果を説明するための一例を示す図である。
【発明を実施するための形態】
【0024】
以下、図面を参照しつつ、本発明の実施の形態について説明する。以下の説明では、同一の部品には同一の符号を付してある。それらの名称および機能も同じである。したがって、それらについての同一部分については、その詳細な説明は繰り返さない。
【0025】
<用語>
本明細書においては、既に情報処理装置にインストールされている管理アプリケーションを「第1のアプリケーション」とも記載する。また、上記の第1のアプリケーションよりもバージョンアップされており、一部又は全部の機能を情報処理装置にインストールしようとする管理アプリケーションを「第2のアプリケーション」とも記載する。
【0026】
また、アプリケーションを「更新する」ことを、アプリケーションを「アップデートする」とも記載する。なお、アップデート(更新)とは、アプリケーションの内容を改善、修正、機能追加することを含む概念であるとする。すなわち、第2のアプリケーションを第1のアプリケーションに上書きしてインストールすること、第2のアプリケーションの一部の機能を追加してインストールすること、第2のアプリケーションをインストールして第1のアプリケーションの一部の機能をアンインストールすることを含むものとする。
【0027】
<1.システム全体構成>
まず、本発明の実施の形態に従う情報処理システム1の全体構成について説明する。
【0028】
図1は、本発明の実施の形態に従う情報処理システム1の構成を模式的に示す図である。
【0029】
図1を参照して、情報処理システム1は、情報処理装置10と、情報処理装置10とネットワーク50を介して接続された複数の画像形成装置20A〜20C(20D〜20Fは図示しない)とサーバー装置30とを含む。なお、以下の説明においては画像形成装置20A〜20Fを代表させて画像形成装置20とも称する。
【0030】
情報処理装置10と画像形成装置20とサーバー装置30とは、ネットワーク50を介して相互にデータ通信可能に構成される。なお、ネットワーク50は、LAN(Local Area Network)やWAN(Wide Area Network)などの専用回線や、インターネットや仮想プライベートネットワーク(Virtual Private Network)などの公衆回線からなり、さらにその一部または全部が無線LANなどの無線通信回線であってもよい。
【0031】
情報処理装置10は、情報処理装置10に複数の画像形成装置20と連携処理させることができる管理アプリケーションがインストールされている。したがって、当該管理アプリケーションによって、複数の画像形成装置20の情報を一元的に管理することができる。
【0032】
情報処理装置10は、たとえば、PC(Personal Computer)であり、電子データを送受信するための通信機能、各種情報を記憶する記憶機能、各種情報の処理内容を表示する表示機能などを有する。
【0033】
画像形成装置20は、電子データを送受信するための通信機能、複数の原稿を順次搬送するための原稿搬送機能、自動で両面コピーを行なうための再搬送機能、搬送された原稿の画像を読取る画像読取機能などの複数の機能を有する公知のディジタル複合機(MFP)である。
【0034】
また、サーバー装置30は、たとえばWebサーバーからなり、Webコンテンツや情報処理装置10からの要求に応じて画像形成装置20のバージョン情報を配信したりするプログラムなどを配信するプログラム等を記憶する記憶部や、当該記憶部に記憶されたプログラム等に基づいて適宜処理を実行する処理部など、一般のサーバー装置に含まれる構成を含む。
【0035】
<2.ハードウェアの構成>
次に、情報処理システム1を構成する情報処理装置10と、画像形成装置20と、サーバー装置30のハードウェア構成について説明する。
【0036】
図2は、本発明の実施の形態に従う情報処理装置10のハードウェア構成を示すブロック図である。図3は、本発明の実施の形態に従う画像形成装置20のハードウェア構成を示すブロック図である。
【0037】
図2を参照して、情報処理装置10は、CPU(Central Processing Unit)102と、ROM(Read Only Memory)104と、RAM(Random Access Memory)106と、HDD(Hard Disk Drive)108と、通信I/F110と、入力装置112と、ディスプレイ114と、これらの各部を接続するバス116とを含む。
【0038】
CPU102は、ROM104、RAM106、HDD108などの記憶領域に記憶されているプログラムを読み出し、プログラムを順次実行することによって、情報処理装置10の各部を制御する。より詳細には、CPU102は、当該プログラムを実行することによって、後述する情報処理装置10の処理(ステップ)の各々を実現する。
【0039】
CPU102は、マイクロプロセッサー(Microprocessor)、FPGA(Field Programmable Gate Array)、ASIC(Application Specific Integrated Circuit)、DSP(Digital Signal Processor)およびその他の演算機能を有する回路のいずれであってもよい。
【0040】
ROM104は、CPU102で実行されるプログラムを予め格納し、RAM106は、CPU102のプログラム部分の実行に必要なデータを一時的に記憶する。HDD108は、比較的大容量のデータを不揮発的に格納することができ、本例においては管理アプリケーションのデータはHDD108に格納されるものとする。
【0041】
通信I/F110は、ネットワーク50に接続され、画像形成装置20とサーバー装置30と電子的にデータなどを遣り取りする。例えば、情報処理装置10にインストールされている管理アプリケーションの処理情報を画像形成装置20に送信したり、サーバー装置30から画像形成装置20の機種情報を受信したりする。
【0042】
入力装置112は、ユーザーからの指示を受け付けるものであり、例えば、キーボードやボタン等から構成され、ディスプレイ114は、管理アプリケーションの処理内容を表示したり、ユーザーからの指示に応じて処理を行なう。
【0043】
図3を参照して、画像形成装置20は、たとえば、MFPであり、各種処理を実行するためのCPU201と、ROM202と、RAM203と、HDD204と、ネットワーク50に接続された各種装置と電子的にデータなどを遣り取りするための通信I/F205と、スキャナー206と、プリンター207と、FAX208と、オペレーションパネル209とを含む。オペレーションパネル209は、タッチパネルおよび各種キー等の入力部209Aと、各種情報の表示を実行する表示部209Bとを含む。各部は、バス220を介して、互いにデータ通信可能に構成される。各部の構造や機能については、周知であるので、ここでは詳細な説明は行なわない。
【0044】
サーバー装置30は、全体として後述するような情報処理を提供できればよく、そのハードウェア構成については公知のものを採用することができる。従って、ここでは詳細な説明は行なわない。例えば、図2のような構成であっても良い。
【0045】
<3.動作概要>
次に、本実施の形態に従う情報処理装置10の動作概要について従来例と比較しながら説明する。なお、以下では主に管理アプリケーションによって実現される情報処理装置10の動作について説明する。
【0046】
(3−1.管理アプリケーションの構成)
まず、本発明の実施の形態に従う管理アプリケーションの構成について説明する。
【0047】
管理アプリケーションには、図4に示すように複数のバージョンがあり、各バージョンによって、情報処理装置10に連携処理させる(以下、単に「連携処理させる」とも称す)ことが可能な画像形成装置20の機種が予め定まっている。
【0048】
図4は、本発明の実施の形態に従う管理アプリケーションの各バージョンと画像形成装置20との連携処理対応関係の一例を示す図である。
【0049】
図4を参照すると、例えば、管理アプリケーションのVer.1.0.0(以下、アプリVer.1.0.0とも称す)では画像形成装置20A、20Bと、アプリVer.1.1.0では画像形成装置20A〜20Cと、アプリVer.1.2.0では画像形成装置20A〜20Dと、アプリVer.1.3では画像形成装置20A〜20Eと、アプリVer.2.0.0では画像形成装置20B〜20Fと連携処理させることが可能であることを示してる。また、アプリVer.1.2.1が連携処理させることが可能な機種はアプリVer.1.2.0と同様であるが、ユーザーの要望によりユーザー専用に管理アプリケーションの一部の機能がカスタマイズされている点が異なる。具体的には、管理アプリケーションのユーザーインターフェース(UI)を実現する機能を有する部分や管理アプリケーションの全体的な内部処理を行なう機能を有する部分がカスタマイズされている(画面に標準値を設定する、設定を隠す、アプリ内部の設定値を増やす、表示順番を入れ替えるなど)。
【0050】
次に、本発明の実施の形態に従う管理アプリケーションの内部構成の一例について説明する。
【0051】
図5は、本発明の実施の形態に従う管理アプリケーションの内部構成の一例を示す図である。
【0052】
管理アプリケーションの主な内部構成は、ユーザーが画像形成装置20の情報(カウンター情報、電力消費量など)を取得するために当該画像形成装置20と通信処理を行なう機能を有する部分(以下、通信ロジック部とも称す)および管理アプリケーションの全体的な内部処理を行なう機能を有する部分(以下、内部処理部とも称す)と、ユーザーが管理アプリケーションの設定や画像形成装置20の情報を確認するためのUI(User Interface)を実現するための機能を有する部分(以下、UI部とも称す)とから構成されている。例えば、内部処理部は、各種処理を実行するためのプログラムを含み、データベースとUI間の情報のやりとりを制御したり、設定したプログラムを予め定められた日時に定期的に実行したりもする。また、UI部は、HTML(HyperText Markup Language)などマークアップ言語でWebページを記述したり、それを閲覧するためのWebブラウザや、Webサーバーソフトなどを含む。
【0053】
管理アプリケーションにおける、上記の通信ロジック部および内部処理部によって画像形成装置20との連携処理が実行され、UI部が内部処理部が行なう様々な処理内容をディスプレイ114に表示させる。
【0054】
ところで、管理アプリケーションが情報処理装置10に連携処理させる画像形成装置20は、装置の種類、製造メーカー、発売時期、保有機能などによって大きく通信処理ロジック(通信プロトコル、暗号化処理、データフォーマット)が異なる。例えば、通信プロトコルは、FTP(File Transfer Protocol)、HTTP(HyperText Transfer Protocol)、HTTPS(HTTP over Secure Socket Layer)、SNMPv1(Simple Network Management Protocol Version 1)、SNMPv3、SMB(Server Message Block)、SMTP(Simple Mail Transfer Protocol)、SMTPS(SMTP over Secure Socket Layer)、およびPOP(Post Office Protocol)などのように異なる。また、暗号化処理は、SSL(Secure Socket Layer)、AES(Advanced Encryption Standard)128/196/256、DES(Data Encryption Standard)、3DES、および独自の暗号化処理などのように異なる。また、データフォーマット形式は、XML(Extensible Markup Language)、Binary(バイナリ)、ASCII(American Standard Code for Information Interchange)、および独自の形式などのように異なる。
【0055】
したがって、管理アプリケーションが画像形成装置20を管理する際には、情報処理装置10にインストールされている管理アプリケーションの通信ロジック部と画像形成装置20との間で通信処理ロジックの整合を取る必要がある。具体的には、新たに管理する画像形成装置20の通信処理ロジックや機能が新規なものである場合には、管理アプリケーションは、少なくとも当該画像形成装置20との間で情報をやりとりするための通信ロジック部と、当該情報を処理するための内部処理部とをアップデートする必要がある。
【0056】
一方で、管理アプリケーションの通信ロジック部を、内部処理部やUI部とは別に切り離して設けるように管理アプリケーションを構成する方式がある。
【0057】
図6は、本発明の実施の形態に従う管理アプリケーションの構成の別の一例を示す図である。
【0058】
図6を参照して、管理アプリケーションの主な構成は、通信ロジック部とは別に切り離された内部処理部と、UI部とから構成されている。すなわち、図6に示された管理アプリケーションとは、通信ロジック部と内部処理部とが別に構成されている点が異なる。
【0059】
このような構成とするのは、ユーザーが通信ロジック部以外のUI部および内部処理部をユーザー用にカスタマイズしてアップデートを要望する場合が多いことによる。なぜなら、管理アプリケーションで対応可能な通信処理ロジックを変更するために通信ロジック部をカスタマイズすると、画像形成装置20において当該通信処理ロジックに対応する特別なファームウェアを用意し、管理アプリケーションが管理しようとする全ての機種の画像形成装置20について当該特別なファームウェアにアップデートする必要があるためである。
【0060】
当該構成とすると、ユーザーは、画面の設定、画面デザイン、画面機能の追加、内部処理の方式などを変更したい場合には、通信ロジック部を含めた管理アプリケーション全体をアップデートする必要はなく、通信ロジック部以外の部分を変更すればよいこととなる。
【0061】
(3−2.管理アプリケーションのアップデート)
次に、本発明の実施の形態に従う管理アプリケーションのアップデート方式について従来例と比較しながら説明する。
【0062】
まず、従来例の管理アプリケーションのアップデート方式について説明する。
上述したように、新たに管理する画像形成装置20の通信処理ロジックや機能が新規なものである場合には、管理アプリケーションは、少なくとも通信ロジック部と、当該情報を処理するための内部処理部をアップデートする必要がある。
【0063】
このとき、通信ロジック部と内部処理部とUI部とは互いに連携して動作していることから、従来においては管理アプリケーションをアップデートする場合には基本的には全ての構成部分が同時にアップデートされることとなる。
【0064】
図7は、従来例の管理アプリケーションのアップデート方式について説明するための図である。
【0065】
図7を参照して、ユーザー専用に内部処理部およびUI部がカスタマイズされているアプリVer.1.2.1が情報処理装置10にインストールされているときに、画像形成装置20Bが故障などして、画像形成装置20Eを購入し新規に当該画像形成装置20Eを管理する必要が生じた場合を想定する。また、ここでは、ユーザーの要望機能は、画面デザインや画面機能の追加などのユーザー専用のユーザーインターフェース(UI)を実現するものであるとする。このとき、図4に示すようにアプリVer.1.2.1では画像形成装置20Eと連携処理させることが不可能であるため、例えばアプリVer.2.0.0にアップデートする必要がある。アプリVer.2.0.0にアップデートすると、画像形成装置20Eと連携処理させることは可能となるが、ユーザー専用のUI部や内部処理部も同時にアプリVer.2.0.0のUI部や内部処理部にアップデートされてしまうため、ユーザー専用にカスタマイズされた当該部分の機能が消滅してしまう。
【0066】
上記の従来例では、図5に示す管理アプリケーションの構成から図6に示す管理アプリケーションの構成にアップデートする例について示したが、図6に示す管理アプリケーションの構成同士でアップデートする場合であっても、新たに管理する画像形成装置20の通信処理ロジックや機能が新規なものである場合には、管理アプリケーションの通信ロジック部と内部処理部をアップデートする必要があるため、それに伴い内部処理部とUI部との連携により実現されるユーザー専用にカスタマイズされたUIが消滅する。
【0067】
次に、本発明の実施の形態に従う管理アプリケーションのアップデート方式について説明する。ここでは、図7で説明した場合と同様に、情報処理装置10にアプリVer.1.2.1がインストールされており、画像形成装置20Eとの連携処理を可能とするためにアップデートする場合を想定する。
【0068】
図8は、本発明の実施の形態に従う管理アプリケーションがアップデートされた構成を示す図である。
【0069】
図8を参照すると、アプリVer.1.2.1の構成とアプリVer.2.0.0の構成とが併存してアップデートされていることがわかる。このように構成されている管理アプリケーションでは、アプリVer.1.2.1における通信ロジック部と、内部処理部と、UI部とを残存させたまま、アプリVer.2.0.0の内部処理部および画像形成装置20Eとの通信処理ロジックの整合性をとるための通信ロジック部とを含む形態でアップデートされている。したがって、ユーザー専用のUIを実現したまま、画像形成装置20Eと連携処理させることが可能となる。
【0070】
このとき、UIとしてはアプリVer.1.2.1と同様のものとなるが、バージョンの高いアプリVer.2.0.0の内部処理部はアプリVer.1.2.1の内部処理部の処理内容を把握することができるため、アプリVer.2.0.0の内部処理部がバックグランドで動作して、アプリVer.1.2.1に対して処理内容を指示する。すなわち、ユーザーはアプリVer.1.2.1で起動し動作しているように見えるが、実際にはバックグラウンドでアプリVer.2.0.0が起動しており指示命令などを行なっている。
【0071】
(3−3.管理アプリケーションのアクセス例)
ここで、アプリVer.1.2.1が情報処理装置10に連携処理させることが可能な画像形成装置20Bに対して行なっていた処理内容を画像形成装置20Eに対して行なう場合について説明する。
【0072】
図8を再び参照して、アプリVer. 2.0.0は定期的に、アプリVer.1.2.1と関連付けられたデータベースを参照して、アプリVer.1.2.1で設定されている処理内容について確認する(図8の(1)に対応)。ここでは、定期的な時刻に画像形成装置20からカウンター情報を取得する場合を想定する。
【0073】
次に、アプリVer.2.0.0の内部処理部は、現在のアプリVer.1.2.1の動作状況に応じて所定のライブラリを読み込み、通信ロジック部に画像形成装置20Eに対してアクセスするように指示する(図8の(2)に対応)。
【0074】
次に、アプリVer.2.0.0の通信ロジック部は、カウンター情報を送信するように画像形成装置20Eに要求する(図8の(3)に対応)。
【0075】
次に、画像形成装置20Eは、当該要求に応答して要求されたカウンター情報をアプリVer.2.0.0の通信ロジック部に送信する(図8の(4)に対応)。
【0076】
次に、アプリVer.2.0.0の内部処理部は、アプリVer.1.2.1が読み込める形式に当該カウンター情報を変換する(図8の(5)に対応)。これは、UIは、アプリVer.1.2.1に対応するものであるため、当該情報をUIに反映できるように、アプリVer.1.2.1が処理できる形式に変換する必要があるためである。また、バージョンの高いアプリVer.2.0.0の内部処理部はアプリVer.1.2.1の内部処理部の処理可能な形式を把握することができるため上記の変換が可能となる。
【0077】
次に、当該変換したカウンター情報をアプリVer.1.2.1と関連付けられたデータベースに保存する(図8の(6)に対応)。これにより、アプリVer.1.2.1は、画像形成装置20Eのカウンター情報をデータベースから読み出して、UIに反映させる。
【0078】
<4.機能構成>
次に、上述のような本発明の実施の形態に従う情報処理装置10の機能構成について説明する。
【0079】
図9は、本発明の実施の形態に従う情報処理装置10の主な機能構成を示すブロック図である。図9に示す各機能ブロックは、主として、CPU102が管理アプリケーションやその他のプログラムを実行して、ROM104と、RAM106と、HDD108とを連係動作させることで実現される。すなわち、CPU102は情報処理装置10の動作全体を制御する制御部としての機能を有する。
【0080】
図9を参照して、情報処理装置10は、その機能構成として、アプリケーション情報取得部400と、MFP情報取得部402と、連携処理判断部404と、種別判断部406と、更新部408と、起動制御部410とを含む。そして、上述したように、情報処理装置10は、HDD108と、通信I/F110と、ディスプレイ114とを含む。なお、アプリケーション情報取得部400と、MFP情報取得部402と、連携処理判断部404と、種別判断部406と、更新部408と、起動制御部410は、CPU102がROM104やRAM106やHDD108に格納されている管理アプリケーションやその他のプログラムを実行して実現されるものである。
【0081】
以下、情報処理装置10が有する機能ブロックの各々について詳述する。
アプリケーション情報取得部400は、通信I/F110を介してサーバー装置30から、バージョンアップしようとする管理アプリケーションに関する情報を取得する。具体的には、当該管理アプリケーションのバージョンと、当該バージョンの管理アプリケーションが情報処理装置10に連携処理させることが可能な画像形成装置20の機種との対応関係を示す情報を取得する。
【0082】
MFP情報取得部402は、ユーザーが管理する(しようとする)画像形成装置20の機種情報をHDD108から取得する。なお、ユーザーは新たな画像形成装置20を購入等して新たに管理する場合には、当該新たな画像形成装置20の機種情報(バージョン情報など)および通信処理ロジック情報を格納することとする。なお、上記の通信処理ロジック情報がHDD108に格納されていない場合には、MFP情報取得部402は、通信I/F110を介してサーバー装置30などから取得してもよい。すなわち、MFP情報取得部402は、ユーザーが管理対象として所有する全ての画像形成装置20の機種情報および通信処理ロジック情報を取得する。
【0083】
連携処理判断部404は、既に情報処理装置10にインストールされている管理アプリケーション(第1のアプリケーション)および一部又は全部の機能をインストールしようとするバージョンアップした管理アプリケーション(第2のアプリケーション)のそれぞれが、情報処理装置10にどの画像形成装置20と連携処理させることが可能なのかを判断する。具体的には、連携処理判断部404は、MFP情報取得部402によって取得される、ユーザーが管理する全ての画像形成装置20の機種情報および通信処理ロジック情報と、HDD108に格納されている第1のアプリケーションのバージョンと当該バージョンの通信処理ロジックとの対応関係を示す情報と、アプリケーション情報取得部400によって取得される、第2のアプリケーションのバージョンと通信処理ロジックとの対応関係を示す情報とから上記の判断を行なう。
【0084】
種別判断部406は、第1のアプリケーションのバージョン情報に基づいて、第1のアプリケーションがユーザーによって特定の機能がカスタマイズされた管理アプリケーションであるか否かを判断する。例えば、アプリケーションのバージョン番号のフォーマットをVer.A.B.Cとし、カスタマイズされた管理アプリケーションではCが0以外であるといった、予め定められた規則によって判断する。
【0085】
更新部408は、第1のアプリケーションのアップデートを行なう。具体的には、連携処理判断部の判断結果と、種別判断部の判断結果とに基づいて、第2のアプリケーションを第1のアプリケーションに上書きしてインストールしたり、第2のアプリケーションの一部の機能を追加してインストールしたり、第1のアプリケーションの一部の機能をアンインストールして、第2のアプリケーションをインストールしたりする。また、更新部408は、管理アプリケーションをアップデートした場合には当該管理アプリケーションを構成するデータをHDD108に格納したりする。
【0086】
起動制御部410は、更新部408によってアップデートされた管理アプリケーションの構成に基づいて管理アプリケーションの起動を制御する。たとえば、第1のアプリケーションの内部処理部およびUI部がカスタマイズされることによりユーザー専用のUIが実現されている場合には、当該UIの機能を発揮させる(ディスプレイ114に反映させる)ように起動し、バックグラウンドで第2のアプリケーションを起動する。
【0087】
<5.動作フロー>
次に、図8に示すような情報処理装置10の動作を実現するための処理手順についてフローチャートを用いながら説明する。以下のフローチャートは、CPU102が管理アプリケーションやその他のプログラムを実行して実現されるものである。
【0088】
(5−1.概略)
図10は、本発明の実施の形態に従う情報処理装置10が実行する全体の処理手順を示すフローチャートである。ここで、情報処理装置10には第1のアプリケーションがインストールされている状態であるとする。
【0089】
図10を参照して、CPU102の制御部は、第1のアプリケーションをアップデートするか否かを判断する(ステップS2)。具体的には、アプリケーション情報取得部400が、通信I/F110を介してサーバー装置30からバージョンアップされた管理アプリケーションの情報を検知すると、アップデートすると判断する。また、CPU102の制御部は、入力装置112を介してユーザーから指示があった場合にアップデートすると判断しても良い。CPU102の制御部は、第1のアプリケーションをアップデートしないと判断した場合(ステップS2においてNO)、ステップS2の状態を維持する。
【0090】
一方、CPU102の制御部は、第1のアプリケーションをアップデートすると判断した場合(ステップS2においてYES)、MFP情報取得部402は、ユーザーが管理対象として所有する全ての画像形成装置20の機種情報および通信処理ロジック情報を取得する(ステップS4)。具体的には、MFP情報取得部402は、HDD108に格納されている第1のアプリケーションと関連付けられたデータベースおよび設定ファイルから当該情報を取得する。
【0091】
次に、連携処理判断部404は、HDD108にアクセスして第1のアプリケーションが情報処理装置10に連携処理させることが可能な画像形成装置20の情報を取得する(ステップS6)。具体的には、連携処理判断部404は、HDD108に格納されている第1のアプリケーションのバージョンと画像形成装置20の機種との対応関係を示す情報を取得する。
【0092】
次に、アプリケーション情報取得部400は、通信I/F110を介してサーバー装置30から、第2のアプリケーションが連携処理させることが可能な画像形成装置20の情報を取得する(ステップS8)。具体的には、アプリケーション情報取得部400は、第2のアプリケーションのバージョンと画像形成装置20との通信ロジックの対応関係を示す情報を取得する。
【0093】
次に、更新部408は、連携処理判断部404の判断結果と種別判断部406の判断結果とに基づくアップデート方式で、第1のアプリケーションをアップデートする(ステップS10)。なお、アップデート方式に関する処理手順についての詳細は後述する。
【0094】
次に、起動制御部410は、更新部408によってアップデートされた管理アプリケーションの構成に基づく起動方式で管理アプリケーションを起動する。なお、起動方式を特定する処理手順についての詳細は後述する。
【0095】
なお、上記のステップS2〜S6までの処理手順は一例であって、この処理手順に限定されない。例えば、ステップS2とステップS6の処理手順を入れ替えても良い。
【0096】
(5−2.アップデート方式)
次に、本発明の実施の形態に従う管理アプリケーションのアップデート方式を特定するための処理手順について説明する。以下のフローチャートは、CPU102が管理アプリケーションやその他のプログラムを実行して実現されるものである。
【0097】
図11は、本発明の実施の形態に従う管理アプリケーションのアップデート方式を特定するための処理手順を示すフローチャートである。
【0098】
図11を参照して、種別判断部406は、第1のアプリケーションはユーザー専用にカスタマイズされている管理アプリケーションか否かを判断する(ステップS100)。具体的には、種別判断部406は、HDD108に格納されている第1のアプリケーションと関連付けられたデータベースからバージョン情報を取得し、当該バージョン情報から予め定められた規則に基づきカスタマイズされているか否かを判断する。なお、種別判断部406は、当該バージョン情報をネットワーク50に接続されているサーバー装置30から取得しても良い。
【0099】
上記ステップS100で、種別判断部406が、第1のアプリケーションはカスタマイズされていないと判断すると(ステップS100においてNO)、ステップS110からの処理を実行する。一方、種別判断部406が、第1のアプリケーションはカスタマイズされていると判断すると(ステップS100においてYES)、連携処理判断部404は、第1のアプリケーションがユーザーが管理対象として所有する全ての画像形成装置20と連携処理させることが可能か否かを判断する(ステップS102)。具体的には、連携処理判断部404は、HDD108から取得した第1のアプリケーションのバージョンによって情報処理装置10と連携処理が可能となる画像形成装置20の機種情報と、MFP情報取得部402によって取得されたユーザーが管理対象として所有する画像形成装置20の機種情報とを比較することにより判断する。
【0100】
上記ステップS102で、連携処理判断部404が、第1のアプリケーションは全ての画像形成装置20と連携処理させることがであると判断すると(ステップS102においてYES)、更新部408は第1のアプリケーションをアップデートすることなく(ステップS104)、処理を終了する。一方、連携処理判断部404は、全ての画像形成装置20とは連携処理させることはできない(できない画像形成装置が存在する)と判断すると(ステップS102においてNO)、さらに当該連携処理させることができない画像形成装置20について第2のアプリケーションでは連携処理させることができるか否かを判断する(ステップS106)。具体的には、連携処理判断部404は、上述した第1のアプリケーションの場合と同様に連携処理可能な機種情報の比較により判断する。
【0101】
上記ステップS106で、連携処理判断部404が、第2のアプリケーションでも連携処理させることができないと判断すると(ステップS106においてNO)、更新部408は、第1のアプリケーションをアップデートすることなく(ステップS104)、処理を終了する。一方、連携処理判断部404が、第2のアプリケーションで連携処理させることができると判断すると(ステップS106においてYES)、更新部408は、第1のアプリケーションの機能を残存させ、第2のアプリケーションの一部の機能をインストールして(ステップS108)、処理を終了する。具体的には、第2のアプリケーションにおいて当該画像形成装置20と連携処理させることを可能とする機能のみをインストールする。なお、図6の構成のように通信ロジック部と内部処理部とを切り離している場合には、当該機能を実現するライブラリ単位でインストールする。
【0102】
次に、ステップS100で、種別判断部406が、第1のアプリケーションはカスタマイズされていないと判断した場合(ステップS100においてNO)のステップS110からの処理を説明する。
【0103】
まず、連携処理判断部404は、第2のアプリケーションがユーザーが管理対象として所有する全ての画像形成装置20と連携処理させることが可能な否かを判断する(ステップS110)。
【0104】
上記ステップS110で、連携処理判断部404が、第2のアプリケーションは全ての画像形成装置20と連携処理させることができると判断すると(ステップS110においてYES)、更新部408は第1のアプリケーションを第2のアプリケーションに上書きインストールするようにアップデートし(ステップS112)、処理を終了する。一方、連携処理判断部404は、第2のアプリケーションは、全ての画像形成装置20とは連携処理させることができないと判断すると(ステップS110においてNO)、さらに、当該連携処理させることができない画像形成装置20について第1のアプリケーションでは連携処理させることが可能な否かを判断する(ステップS114)。
【0105】
上記ステップS114で、連携処理判断部404が、第1のアプリケーションは当該画像形成装置20と連携処理させることができない判断すると(ステップS114においてNO)、更新部408は、第1のアプリケーションを第2のアプリケーションに上書きインストールするようにアップデートし(ステップS112)、処理を終了する。一方、連携処理判断部404が、第1のアプリケーションは当該画像形成装置20と連携処理させることができると判断すると(ステップS114においてYES)、更新部408は、第1のアプリケーションの一部の機能をアンインストールし、第2のアプリケーションをインストールするようにアップデートして(ステップS116)、処理を終了する。具体的には、第1のアプリケーションによって当該画像形成装置20と連携処理を可能とする機能以外の不要なファイルなどを選択してアンインストールして、第2のアプリケーションは全ての機能をインストールする。
【0106】
(5−3.起動方式)
次に、本発明の実施の形態に従う管理アプリケーションの起動処理手順について説明する。以下のフローチャートは、CPU102が管理アプリケーションやその他のプログラムを実行して実現されるものである。
【0107】
まず、更新部408が第1のアプリケーションに、第2のアプリケーションの一部の機能をインストールするようにアップデートし、第1のアプリケーションおよび第2のアプリケーションが併存している場合(上記のステップS108の場合)の当該アップデートされた管理アプリケーションの起動処理手順について説明する。
【0108】
図12は、本発明の実施の形態に従う管理アプリケーションの起動処理手順を示すフローチャートである。なお、ここでは第1のアプリケーションは連携処理させることができないが、第2のアプリケーションは連携処理させることができる画像形成装置20に対して、アップデートされた管理アプリケーションにより情報処理装置10が連携処理を実行しようとする場合について説明する。具体的には、例えば、第1のアプリケーションがアプリVer.1.2.1であり、第2のアプリケーションがVer.2.0.0であれば、画像形成装置20Eに対してアップデートされた管理アプリケーションにより情報処理装置10が連携処理を実行しようとする場合である。
【0109】
図12を参照して、起動制御部410は、アップデートされた管理アプリケーションを起動するか否かを判断する(ステップS200)。具体的には、起動制御部410は、入力装置112を介してユーザーから管理アプリケーションの起動指示があったか否かを判断する。起動制御部410は、管理アプリケーションを起動しないと判断すると(ステップS200においてNO)、ステップS200の状態を維持する。一方、起動制御部410は、管理アプリケーションを起動すると判断すると(ステップS200においてYES)、管理アプリケーションを第1のアプリケーションのUIの機能を発揮するように起動する(ステップS202)。具体的には、第1のアプリケーションのUIをディスプレイ114に反映させるように起動し、バックグラウンドで第2のアプリケーションを起動する。
【0110】
次に、起動された第2のアプリケーションは、起動された第1のアプリケーションの状態および設定情報を取得する(ステップS204)。例えば、取得する設定情報とは、第1のアプリケーションが画像形成装置20から定期的にカウンター情報を取得するように設定されていた場合に、第2のアプリケーションは、いつ、どの画像形成装置20に、どのようなカウンター情報を取得するかが設定されている情報である。
【0111】
次に、第2のアプリケーションは、第1のアプリケーションの動作が停止しているか否かを判断する(ステップS206)。これは、第2のアプリケーションと第1のアプリケーションとが併存している場合には、連動して動作するために第2のアプリケーションは第1のアプリケーションの動作状態を定期的に確認することによる。なお、当該確認は、第2のアプリケーションが第1のアプリケーションにアクセスして応答があるか否か、また、所定のオペレーションシステム(OS)で起動状況を確認させてもよい。
【0112】
上記ステップS206で、第2のアプリケーションは第1のアプリケーションの動作が停止していると判断した場合(ステップS206においてYES)、自身の動作を停止して(ステップS212)、処理を終了する。一方、第2のアプリケーションは第1のアプリケーションの動作が停止していない(動作状態である)と判断した場合(ステップS206においてNO)、第2のアプリケーションは第1のアプリケーションが連携処理させることができない画像形成装置20Eに対して処理が必要か否かを判断する(ステップS208)。具体的には、例えば、上記の取得した設定情報から、カウンター情報を取得する時間になったか否かを判断する。
【0113】
上記ステップS208で第2のアプリケーションが画像形成装置20Eに対して処理は必要ないと判断すると(ステップS208においてNO)、ステップS206からの処理を繰り返す。一方、第2のアプリケーションが画像形成装置20Eに対して処理が必要であると判断すると(ステップS208においてYES)、第2のアプリケーションは上記の設定情報に基づいて画像形成装置20Eに対する処理を実行する。具体的には、第2のアプリケーションは、画像形成装置20Eから所定の情報を取得した後、第1のアプリケーションで読み込める形式に変更後、第1のアプリケーションと関連付けられたデータベースに保存する。例えば、第2のアプリケーションは、画像形成装置20Eから「カラー印刷カウンター情報」と、「モノクロ印刷カウンター情報」、「両面印刷カウンター情報」を同時に取得できるが、第1のアプリケーションでは、「トータル印刷カウンター情報」しか読み込めない場合には、、第2のアプリケーションは、「カラー印刷カウンター情報」と「モノクロ印刷カウンター情報」とを加算して、「トータル印刷カウンター」を生成し、第2のアプリケーションと関連付けられたデータベースに保存する。また、この場合「両面印刷カウンター情報」については、第1のアプリケーションでは対応していないため、データベースに保存しない。
【0114】
次に、更新部408が第1のアプリケーションの一部の機能を残存させ、第2のアプリケーションをインストールするようにアップデートした場合(上記のステップS116の場合)の当該アップデートされた管理アプリケーションの起動処理手順について説明する。
【0115】
図13は、本発明の実施の形態に従う管理アプリケーションの別の起動処理手順を示すフローチャートである。なお、ここでは第1のアプリケーションは連携処理させることができるが、第2のアプリケーションは連携処理させることができない画像形成装置20に対して、アップデートされた管理アプリケーションにより情報処理装置10が連携処理を実行しようとする場合について説明する。具体的には、例えば、第1のアプリケーションがアプリVer.1.2.0であり、第2のアプリケーションがVer.2.0.0であれば、画像形成装置20Aに対してアップデートされた管理アプリケーションにより情報処理装置10が連携処理を実行しようとする場合である。
【0116】
図13を参照して、起動制御部410は、アップデートされた管理アプリケーションを起動するか否かを判断する(ステップS300)。起動制御部410は、管理アプリケーションを起動しないと判断すると(ステップS300においてNO)、ステップS300の状態を維持する。一方、起動制御部410は、管理アプリケーションを起動すると判断すると(ステップS300においてYES)、管理アプリケーションを第2のアプリケーションのUIの機能を発揮するように起動する(ステップS302)。具体的には、第2のアプリケーションのUIをディスプレイ114に反映させるように起動し、バックグラウンドで第1のアプリケーションを起動する。
【0117】
次に、第2のアプリケーションは、自身の動作を停止するか否かを判断する(ステップS304)。第2のアプリケーションが自身の動作を停止するか否かは、入力装置112を介してユーザーから停止指示があった場合に停止すると判断してよいし、予め設定された所定の条件を満たした場合に停止すると判断してもよい。
【0118】
上記ステップS304で、第2のアプリケーションは自身の動作を停止すると判断した場合(ステップS304においてYES)、第1のアプリケーションの動作を停止し、自身の動作を停止して(ステップS310)、処理を終了する。一方、第2のアプリケーションは自身の動作を停止しない(動作状態を続行する)と判断した場合(ステップS304においてNO)、第2のアプリケーションは自身で連携処理させることができない画像形成装置20Aに対して処理が必要か否かを判断する(ステップS306)。例えば、定期的にネットワーク50上の画像形成装置20に対してカウンター情報を取得するように設定されていた場合に、第2のアプリケーションが連携処理させることができない画像形成装置20Aからカウンター情報を取得する時間になったか否かを判断する。
【0119】
上記ステップS306で第2のアプリケーションが画像形成装置20Aに対して処理は必要ないと判断すると(ステップS306においてNO)、ステップS304からの処理を繰り返す。一方、第2のアプリケーションが画像形成装置20Aに対して処理が必要であると判断すると(ステップS306においてYES)、第1のアプリケーションに画像形成装置20Aに対して処理を実行するように指示する(ステップS308)。具体的には、第2のアプリケーションは、第1のアプリケーションに画像形成装置20Aから所定の情報を取得させた後、当該情報を第2のアプリケーションと関連付けられたデータベースに保存する。なお、第2のアプリケーションは、第1のアプリケーションの内部処理を把握できるため、第1のアプリケーションが取得した情報を自身の読み込み形式に変換して当該データベースに保存することができる。
【0120】
<6.実施の形態の効果>
次に、ユーザーが管理対象として所有する画像形成装置20の例を用いながら、上述した実施の形態の効果について説明する。
【0121】
図14は、本発明の実施の形態の効果を説明するための一例を示す図である。ここでは、第2のアプリケーションの一部の機能を追加でインストールした場合(図11のステップS108)の効果について説明する。
【0122】
図14を参照すると、第1のアプリケーションであるアプリVer.1.2.1は、ユーザー専用にカスタマイズされており(図11のステップS100においてYES)、アプリVer.1.2.1は、ユーザーが管理対象として所有する一部の画像形成装置20Eと連携処理させることができない(ステップS102においてNO)。また、第2のアプリケーションであるアプリVer.2.0.0は、画像形成装置20Eと連携処理させることが可能であるため(ステップS106においてYES)、アプリVer.2.0.0の一部の機能が追加でインストールされる(ステップS108)。
【0123】
このとき、ユーザーは、第1のアプリケーションでのユーザー専用の機能を残存させつつ、新たに画像形成装置20Eを管理することができる。なお、2重管理を防止するため、第1のアプリケーションで管理可能な画像形成装置20B〜20Dは、第2のアプリケーションでは管理されない。
【0124】
図15は、本発明の実施の形態の効果を説明するための一例を示す図である。ここでは、第1のアプリケーションの一部の機能以外をアンインストールし、第2のアプリケーションをインストールした場合(図11のステップS116)の効果について説明する。
【0125】
図15を参照すると、第1のアプリケーションであるアプリVer.1.2.0は、ユーザー専用にカスタマイズされておらず(ステップS100においてNO)、第2のアプリケーションであるアプリVer.2.0.0は、ユーザーが管理対象として所有する一部の画像形成装置20Aと連携処理させることができない(ステップS102においてNO)。しかし、アプリVer.1.2.0は画像形成装置20Aに対して連携処理させることができるため(ステップS114においてYES)、Ver.1.2.0の一部の機能以外をアンインストールし、アプリVer.2.0.0がインストールされる(ステップS116)。
【0126】
このとき、ユーザーは、第2のアプリケーションでは管理できないが第1のアプリケーションでは管理することができる画像形成装置20Aへの連携処理機能を残存させつつ、その他の機能については第2のアプリケーションにバージョンアップすることができる。なお、2重管理を防止するため、第2のアプリケーションで管理可能な画像形成装置20B、20Cは、第1のアプリケーションでは管理されない。
【0127】
図16は、本発明の実施の形態の効果を説明するための一例を示す図である。ここでは、第2のアプリケーションを上書きインストールした場合(図11のステップS112)の効果について説明する。
【0128】
図16を参照すると、第1のアプリケーションであるアプリVer.1.2.0は、ユーザー専用にカスタマイズされておらず(ステップS100においてNO)、第2のアプリケーションはユーザーが管理対象として所有する全ての画像形成装置20と連携処理させることが可能であるため(ステップS110においてYES)、第2のアプリケーションが上書きインストールされる(ステップS112)。
【0129】
このとき、図16(a)に示すように、第1のアプリケーションにより、情報処理装置10がユーザーの管理対象として所有する画像形成装置20B〜20Dと連携処理可能な場合は、ユーザーは、第2のアプリケーションにアップデートすることによってUI機能や内部処理の機能などをバージョンアップすることができる。また、図16(b)に示すように、第1のアプリケーションにより、情報処理装置10がユーザーの管理対象として所有する画像形成装置20の一部の装置(ここでは、画像形成装置20E)と連携処理できなかった場合には、第2のアプリケーションにアップデートすることによって、情報処理装置10は画像形成装置20Eと連携処理できるようになる。
【0130】
上記のように、本実施の形態によれば、第1のアプリケーションと第2のアプリケーションを併存して動作させることで、第1のアプリケーションがユーザー専用にカスタマイズされてるとき、当該第1のアプリケーションが管理できない新たな画像形成装置を管理する必要が生じた場合でも、当該カスタマイズ機能を損なうことなく、当該新たな画像形成装置を管理することが可能となる。また、サポート開発費用の削減、評価費用の削減、緊急なリリースを行なうために、管理アプリケーションの新しいバージョンにおいては、販売終了した画像形成装置は管理しないような場合でも、既存の管理アプリケーションの機能を利用して当該画像形成装置を管理することができる。
【0131】
そのため、全体的なバージョンアップを行なう従来の方式のように、ユーザーは新しい画像形成装置20と連携処理可能な管理アプリケーションにバージョンアップした後、改めて当該管理アプリケーションをカスタマイズしたりする手間を省くことができる。すなわち、ユーザーが管理対象として所有する画像形成装置に対して、既に情報処理装置にインストールされている管理アプリケーションをユーザーの利便性を損なうことなくバージョンアップすることができる。
【0132】
<7.その他の実施の形態>
なお、コンピューターを機能させて、上述のフローで説明したような制御を実行させるプログラムを提供することもできる。このようなプログラムは、コンピューターに付属するフレキシブルディスク、CD−ROM(Compact Disk-Read Only Memory)、ROM、RAMおよびメモリーカードなどの一時的でないコンピューター読取り可能な記録媒体にて記録させて、プログラム製品として提供することもできる。あるいは、コンピューターに内蔵するハードディスクなどの記録媒体にて記録させて、プログラムを提供することもできる。また、ネットワークを介したダウンロードによって、プログラムを提供することもできる。
【0133】
なお、プログラムは、コンピューターのオペレーティングシステム(OS)の一部として提供されるプログラムモジュールのうち、必要なモジュールを所定の配列で所定のタイミングで呼出して処理を実行させるものであってもよい。その場合、プログラム自体には上記モジュールが含まれずOSと協働して処理が実行される。このようなモジュールを含まないプログラムも、本発明にかかるプログラムに含まれ得る。
【0134】
また、本発明にかかるプログラムは他のプログラムの一部に組込まれて提供されるものであってもよい。その場合にも、プログラム自体には上記他のプログラムに含まれるモジュールが含まれず、他のプログラムと協働して処理が実行される。このような他のプログラムに組込まれたプログラムも、本発明にかかるプログラムに含まれ得る。
【0135】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は、上記した説明ではなく、特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【符号の説明】
【0136】
1 情報処理システム、10 情報処理装置、20 画像形成装置、30 サーバー装置、50 ネットワーク、102,201 CPU、104,202 ROM、106,203 RAM、108,204 HDD、110,205 通信I/F、112 入力装置、114 ディスプレイ、116,220 バス、206 スキャナー、207 プリンター、208 FAX、209 オペレーションパネル、209A 入力部、209B 表示部、400 アプリケーション情報取得部、402 情報取得部、404 連携処理判断部、406 種別判断部、408 更新部、410 起動制御部。

【特許請求の範囲】
【請求項1】
ネットワークに接続されている少なくとも1つの画像形成装置と連携した処理を実行するための情報処理装置であって、
前記情報処理装置にインストールされており、前記情報処理装置に前記連携した処理を実行させるための第1のアプリケーションのバージョン情報に基づいて、前記第1のアプリケーションの機能がユーザーに対応するようにカスタマイズされたものであるか否かを判断するための種別判断手段と、
前記第1のアプリケーションおよび前記情報処理装置にインストールしようとする第2のアプリケーションのそれぞれが前記情報処理装置に、前記少なくとも1つの画像形成装置の各々と連携した処理を実行させることが可能か否かを判断するための連携処理判断手段と、
前記第2のアプリケーションによって連携した処理を実行させることが可能である前記画像形成装置が存在すると前記連携処理判断手段が判断した場合、前記第1のアプリケーションの機能にカスタマイズされた部分があるとの前記種別判断手段の判断に基づいて、前記第1のアプリケーションにおける前記カスタマイズされた部分の機能を残存し、前記第2のアプリケーションの前記連携した処理を実行させる機能を追加する態様で前記第1のアプリケーションを更新するための更新手段と、
前記第1のアプリケーションの前記カスタマイズされた部分の機能を発揮させるように起動するための起動手段とを備える、情報処理装置。
【請求項2】
前記第1のアプリケーションおよび前記第2のアプリケーションは、それぞれ独立に構成された、前記情報処理装置にユーザーインターフェースを実現させるためのUI部と、前記連携した処理を前記情報処理装置に実行させるための処理部とを含み、
前記カスタマイズされた部分は前記UI部と対応し、前記種別判断手段は、前記UI部がユーザーに対応したユーザーインターフェースを実現させるものであるか否かを判断する、請求項1に記載の情報処理装置。
【請求項3】
前記種別判断手段が、前記第1のアプリケーションのUI部がユーザーに対応したユーザーインターフェースを実現させるものであると判断した場合、前記起動手段は、前記更新手段により更新されたアプリケーションを起動する際に、ユーザーに対応したユーザーインターフェースを実現するために、前記UI部に対応する機能については前記第1のアプリケーションを起動する、請求項2に記載の情報処理装置。
【請求項4】
前記更新手段は、前記第1のアプリケーションまたは前記第2のアプリケーションのそれぞれが前記情報処理装置に実行させることが可能な機能と関連付けられたデータを追加、削除または上書きすることで前記第1のアプリケーションを更新する、請求項1〜3のいずれか1項に記載の情報処理装置。
【請求項5】
前記第1のアプリケーションおよび前記第2のアプリケーションにより使用されるデータベースを格納するための記憶手段をさらに備え、
前記種別判断手段は、前記第1のアプリケーションの前記バージョン情報を前記記憶手段に格納された、前記第1のアプリケーションと関連付けられたデータベース、またはネットワークを介して接続可能なサーバ装置から取得する、請求項1〜4のいずれか1項に記載の情報処理装置。
【請求項6】
前記第1のアプリケーションおよび前記第2のアプリケーションにより使用されるデータベースを格納するための記憶手段をさらに備え、
前記連携処理判断手段は、前記データベースに基づいて、前記第1のアプリケーションおよび前記第2のアプリケーションのそれぞれが前記情報処理装置に、前記少なくとも1つの画像形成装置の各々と連携した処理を実行させることが可能か否かを判断する、請求項1〜5のいずれか1項に記載の情報処理装置。
【請求項7】
前記種別判断手段が、前記第1のアプリケーションのUI部がユーザーに対応したユーザーインターフェースを実現させるものであると判断した場合、ネットワークに接続された少なくとも1つの画像形成装置において、前記第2のアプリケーションが前記情報処理装置に連携した処理を実行させることが可能な第1の画像形成装置が存在するときに、
前記第2のアプリケーションは、前記第1のアプリケーションと関連付けられたデータベースを参照することにより、前記第1のアプリケーションが前記情報処理装置に連携した処理を実行させることが可能な第2の画像形成装置に対する処理内容を、前記情報処理装置に前記第1の画像形成装置に対して実行させる、請求項6に記載の情報処理装置。
【請求項8】
ネットワークに接続されている少なくとも1つの画像形成装置と連携した処理を実行するための情報処理装置のコンピュータに実行させる制御プログラムであって、
前記情報処理装置にインストールされており、前記情報処理装置に前記連携した処理を実行させるための第1のアプリケーションのバージョン情報に基づいて、前記第1のアプリケーションの機能がユーザーに対応するようにカスタマイズされたものであるか否かを判断するステップと、
前記第1のアプリケーションおよび前記情報処理装置にインストールしようとする第2のアプリケーションのそれぞれが前記情報処理装置に、前記少なくとも1つの画像形成装置の各々と連携した処理を実行させることが可能か否かを判断するステップと、
前記第2のアプリケーションによって連携した処理を実行させることが可能である前記画像形成装置が存在する場合、前記第1のアプリケーションの機能にカスタマイズされた部分があるとの判断に基づいて、前記第1のアプリケーションにおける前記カスタマイズされた部分の機能を残存し、前記第2のアプリケーションの前記連携した処理を実行させる機能を追加する態様で前記第1のアプリケーションを更新するステップと、
前記第1のアプリケーションの前記カスタマイズされた部分の機能を発揮させるように起動する起動ステップとを実行させる、情報処理装置の制御プログラム。
【請求項9】
ネットワークに接続されている少なくとも1つの画像形成装置と連携した処理を実行するための情報処理装置の制御方法であって、
前記情報処理装置にインストールされており、前記情報処理装置に前記連携した処理を実行させるための第1のアプリケーションのバージョン情報に基づいて、前記第1のアプリケーションの機能がユーザーに対応するようにカスタマイズされたものであるか否かを判断するステップと、
前記第1のアプリケーションおよび前記情報処理装置にインストールしようとする第2のアプリケーションのそれぞれが前記情報処理装置に、前記少なくとも1つの画像形成装置の各々と連携した処理を実行させることが可能か否かを判断するステップと、
前記第2のアプリケーションによって連携した処理を実行させることが可能である前記画像形成装置が存在する場合、前記第1のアプリケーションの機能にカスタマイズされた部分があるとの判断に基づいて、前記第1のアプリケーションにおける前記カスタマイズされた部分の機能を残存し、前記第2のアプリケーションの前記連携した処理を実行させる機能を追加する態様で前記第1のアプリケーションを更新するステップと、
前記第1のアプリケーションの前記カスタマイズされた部分の機能を発揮させるように起動する起動ステップとを備える、情報処理装置の制御方法。
【請求項10】
ネットワークに接続されている少なくとも1つの画像形成装置、およびサーバー装置と、
前記画像形成装置と連携した処理を実行するための情報処理装置とを備える、情報処理システムであって、
前記情報処理装置にインストールされており、前記情報処理装置に前記連携した処理を実行させるための第1のアプリケーションのバージョン情報に基づいて、前記第1のアプリケーションの機能がユーザーに対応するようにカスタマイズされたものであるか否かを判断する種別判断手段と、
前記第1のアプリケーションおよび前記情報処理装置にインストールしようとする第2のアプリケーションのそれぞれが前記情報処理装置に、前記少なくとも1つの画像形成装置の各々と連携した処理を実行させることが可能か否かを判断する連携処理判断手段と、
前記第2のアプリケーションによって連携した処理を実行させることが可能である前記画像形成装置が存在するとの前記連携処理判断手段が判断した場合、前記第1のアプリケーションの機能にカスタマイズされた部分があるとの前記種別判断手段の判断に基づいて、前記第1のアプリケーションにおける当該カスタマイズされた部分の機能を残存し、前記第2のアプリケーションの前記連携した処理を実行させる機能を追加する態様で前記第1のアプリケーションを更新する更新手段と、
前記第1のアプリケーションの前記カスタマイズされた部分の機能を発揮させるように起動する起動手段とを含む、情報処理システム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate


【公開番号】特開2013−101521(P2013−101521A)
【公開日】平成25年5月23日(2013.5.23)
【国際特許分類】
【出願番号】特願2011−245252(P2011−245252)
【出願日】平成23年11月9日(2011.11.9)
【出願人】(303000372)コニカミノルタビジネステクノロジーズ株式会社 (12,802)
【Fターム(参考)】