JP2014059718A - 情報処理装置、情報処理方法、及びプログラム - Google Patents

情報処理装置、情報処理方法、及びプログラム Download PDF

Info

Publication number
JP2014059718A
JP2014059718A JP2012204253A JP2012204253A JP2014059718A JP 2014059718 A JP2014059718 A JP 2014059718A JP 2012204253 A JP2012204253 A JP 2012204253A JP 2012204253 A JP2012204253 A JP 2012204253A JP 2014059718 A JP2014059718 A JP 2014059718A
Authority
JP
Japan
Prior art keywords
application
copy
sdk
program
processing apparatus
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2012204253A
Other languages
English (en)
Other versions
JP5991104B2 (ja
Inventor
Hideki Ohashi
英樹 大橋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Ricoh Co Ltd
Original Assignee
Ricoh Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ricoh Co Ltd filed Critical Ricoh Co Ltd
Priority to JP2012204253A priority Critical patent/JP5991104B2/ja
Priority to US14/021,012 priority patent/US9535662B2/en
Publication of JP2014059718A publication Critical patent/JP2014059718A/ja
Application granted granted Critical
Publication of JP5991104B2 publication Critical patent/JP5991104B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Facsimiles In General (AREA)
  • Stored Programmes (AREA)

Abstract

【課題】情報処理装置全体のソフトウェア開発の効率性を向上させることができる。
【解決手段】情報処理装置は、当該情報処理装置に固有のハードウェアを利用した処理に関する第一の画面の表示と、前記第一の画面を介して入力された設定情報に応じた前記処理とを当該情報処理装置に実行させる第一のプログラムを有し、前記第一のプログラムは、第二のプログラムから前記処理に関する設定情報を受け付けるインタフェースを備え、前記第二のプログラムから受け付けた設定情報に応じた前記処理を当該情報処理装置に実行させる。
【選択図】図3

Description

本発明は、情報処理装置、情報処理方法、及びプログラムに関する。
従来、例えば、複合機又は融合機と呼ばれる情報処理装置において、公開されたAPI(Application Program Interface)を有し、当該APIを用いて開発されたアプリケーション(以下、「SDK(Software Development Kit:ソフトウェア開発キット)アプリ」という。)の実行環境を提供するアプリケーションプラットフォーム(以下、「SDKプラットフォーム」という。)を備えた情報処理装置が有る(例えば、特許文献1)。
SDKプラットフォームにおいては標準のアプリケーション(以下、「標準アプリ」という。)が実現する機能と同様の機能をSDKアプリによって実現可能とするためのAPIが公開される。したがって、標準アプリとは異なる操作画面によって、標準アプリと同様の機能を利用したい(つまり、操作画面だけ標準アプリとは異なるものを使いたい)といったニーズにも応えることもできる。
しかしながら、従来、SDKプラットフォームでは、情報処理装置の出荷後においてもSDKプラットフォームのAPIを用いて、サードベンダやメーカー、又はソフトハウス等が実装及び開発した新規SDKアプリを、情報処理装置に追加搭載できるといった利点はあるものの、標準アプリが提供する機能と同様の機能を提供するAPIを公開するために、標準アプリと同様の実装が別途行われる必要が有った。そのため、SDKプラットフォームと標準アプリとの間で類似した実装が重複し、情報処理装置全体の開発作業や保守作業等において、非効率性が認められた。
なお、上記問題点は、SDKという提供形態に関わらず、公開されたAPIを用いて開発したアプリケーションにより機器に処理を実行させる形態において共通的なものである。
本発明は、上記の点に鑑みてなされたものであって、情報処理装置全体のソフトウェア開発の効率性を向上させることを目的とする。
そこで上記課題を解決するため、情報処理装置は、当該情報処理装置に固有のハードウェアを利用した処理に関する第一の画面の表示と、前記第一の画面を介して入力された設定情報に応じた前記処理とを当該情報処理装置に実行させる第一のプログラムを有し、前記第一のプログラムは、第二のプログラムから前記処理に関する設定情報を受け付けるインタフェースを備え、前記第二のプログラムから受け付けた設定情報に応じた前記処理を当該情報処理装置に実行させる。
情報処理装置全体のソフトウェア開発の効率性を向上させることができる。
本発明の実施の形態における画像形成装置のハードウェア構成例を示す図である。 本発明の実施の形態における画像形成装置のソフトウェア構成例を示す図である。 コピーアプリとSDKコピーアプリとの関係の一例を説明するための図である。 コピージョブに関して画像形成装置が実行する処理手順の一例を説明するためのシーケンス図である。 画面遷移の例を示す図である。
以下、図面に基づいて本発明の実施の形態を説明する。図1は、本発明の実施の形態における画像形成装置のハードウェア構成例を示す図である。図1において、画像形成装置10は、コントローラ11、スキャナ12、プリンタ13、モデム14、操作パネル15、ネットワークインタフェース16、及びSDカードスロット17等のハードウェアを有する。
コントローラ11は、CPU111、RAM112、ROM113、HDD114、及びNVRAM115等を有する。ROM113には、各種のプログラムやプログラムによって利用されるデータ等が記憶されている。RAM112は、プログラムをロードするための記憶領域や、ロードされたプログラムのワーク領域等として用いられる。CPU111は、RAM112にロードされたプログラムを処理することにより、各種の機能を実現する。HDD114には、プログラムやプログラムが利用する各種のデータ等が記憶される。NVRAM115には、各種の設定情報等が記憶される。
スキャナ12は、原稿より画像データを読み取るためのハードウェア(画像読取手段)である。プリンタ13は、印刷データを印刷用紙に印刷するためのハードウェア(印刷手段)である。モデム14は、電話回線に接続するためのハードウェアであり、FAX通信による画像データの送受信を実行するために用いられる。操作パネル15は、ユーザからの入力の受け付けを行うためのボタン等の入力手段や、液晶パネル等の表示手段等を備えたハードウェアである。液晶パネルは、タッチパネル機能を有していてもよい。この場合、当該液晶パネルは、入力手段の機能をも兼ねる。ネットワークインタフェース16は、LAN等のネットワーク(有線又は無線の別は問わない。)に接続するためのハードウェアである。SDカードスロット17は、SDカード80に記憶されたプログラムを読み取るために利用される。すなわち、画像形成装置10では、ROM113に記憶されたプログラムだけでなく、SDカード80に記憶されたプログラムもRAM112にロードされ、実行されうる。なお、他の記録媒体(例えば、CD−ROM又はUSB(Universal Serial Bus)メモリ等)によってSDカード80が代替されてもよい。すなわち、SDカード80の位置付けに相当する記録媒体の種類は、所定のものに限定されない。この場合、SDカードスロット17は、記録媒体の種類に応じたハードウェアによって代替されればよい。
図2は、本発明の実施の形態における画像形成装置のソフトウェア構成例を示す図である。図2において、画像形成装置10は、標準アプリ121、SDKアプリ122、SDKプラットフォーム123、コントロールサービス124、及びOS123等を有する。
標準アプリ121は、画像形成装置10に標準的に(出荷時に予め)実装されているアプリケーションプログラムの集合である。同図では、スキャンアプリ1211、印刷アプリ1212、コピーアプリ1213、及びFAXアプリ1214が例示されている。スキャンアプリ1211は、スキャナ12等を利用したスキャンジョブを実行する。印刷アプリ1212は、プリンタ13等を利用した印刷ジョブを実行する。コピーアプリ1213は、スキャナ12及びプリンタ13等を利用したコピージョブを実行する。FAXアプリ1214は、モデム14等を利用したFAXの送信ジョブ又は受信ジョブを実行する。なお、スキャナ12、プリンタ13、及びモデム14等は、画像形成装置10に固有のハードウェアの一例である。
コントロールサービス124は、各種のハードウェアリソース等を制御するための機能を上位アプリケーション等に対して提供するソフトウェアモジュール群であり、例えば、ネットワーク通信に関する機能、スキャナ12の制御機能、プリンタ13の制御機能、メモリ(RAM112、ROM113、及びNVRAM115等)の管理機能等を有する。
SDKアプリ122は、画像形成装置10の出荷後において、画像形成装置10の機能拡張を図るために追加的にインストールされるアプリケーションプログラム(又はプラグインともいう。)である。同図では、SDKアプリ122の一例として、SDKコピーアプリ1221が例示されている。SDKコピーアプリ1221は、コピーアプリ1213とは異なる操作画面によって、コピー機能を利用するために作成されたSDKアプリ122である。すなわち、SDKコピーアプリ1221は、コピーアプリ1213とは異なる操作画面を表示させ、当該操作画面を介して入力されたジョブパラメータに応じたコピージョブを、画像形成装置10に実行させる。ジョブパラメータとは、コピージョブ等のジョブに対する設定情報を構成するパラメータである。
SDKプラットフォーム123は、SDKアプリ122を開発するためのAPI(Application Program Interface)を備えると共に、SDKアプリ122の実行環境を提供する。APIの形態は、例えば、関数であってもよいし、オブジェクト指向のクラス及びクラスのメソッド等であってもよい。以下、SDKプラットフォーム123が提供するAPIを、「SDKAPI」という。例えば、SDKプラットフォーム123は、スキャン機能に関するSDKAPI、印刷機能に関するSDKAPI、コピー機能に関するSDKAPI等をSDKアプリ122に提供する。SDKAPIは公開されており、サードベンダ等によってもSDKアプリ122は開発されうる。なお、SDKプラットフォーム123は、Java(登録商標)VM(Virtual Machine)を含んでいてもよい。この場合、SDKアプリ122は、Java(登録商標)言語によって実装される。
OS123は、いわゆるOS(Operating System)である。画像形成装置10上の各ソフトウェアは、OS123上においてプロセス又はスレッドとして動作する。
続いて、コピーアプリ1213とSDKコピーアプリ1221との関係について説明する。
図3は、コピーアプリとSDKコピーアプリとの関係の一例を説明するための図である。
図3において、コピーアプリ1213は、コピーAPI1213aを有する。コピーAPI1213aは、コピーアプリ1213の機能を、他のプログラムから利用可能とするための、HTTP(HyperText Transfer Protocol)ベースのAPI(以下、「WebAPI」という。)である。コピーAPI1213aがWebAPIであることにより、コピーAPI1213aを利用する他のプログラムについて、プログラミング言語(開発言語)に関する制約を緩和することができる。例えば、コピーアプリ1213がC言語によって実装されている場合であっても、Java(登録商標)言語で実装されているプログラムから、コピーAPI1213aを容易に呼び出すことができる。また、ネットワークを介してコピーAPI1213aを呼び出すこともできる。
SDKコピーアプリ1221が、コピー機能に関するSDKAPIを呼び出すと、SDKプラットフォーム123は、当該SDKAPIに対応するコピーAPI1213aを、HTTP経由で呼び出す。すなわち、SDKプラットフォーム123において、コピーAPI1213aに対応するSDKAPIは、SDKAPIをラッピングしたAPIに相当する。したがって、コピー機能に関するSDKAPIの実装は、実質的に、コピーアプリ1213の実装と共通化されている。
なお、SDKコピーアプリ1221が、コピーAPI1213aを直接呼び出す形態が採用されてもよい。但し、SDKAPIを経由することで、SDKプラットフォーム123において、SDKコピーアプリ1221の状態を容易に把握することができる。
なお、コピーAPI1213aは、必ずしもWebAPIでなくてもよい。例えば、プログラミング言語への依存が許容されるのであれば、コピーAPI1213aは、特定のプログラミング言語に依存したAPIであってもよい。
また、スキャンアプリ1211、印刷アプリ1212、及びFAXアプリ1214等、他の標準アプリ121についても、コピーアプリ1213と同様に、当該アプリケーションに固有の機能に関するAPIが公開されてもよい。
以下、画像形成装置10が実行する処理手順について説明する。図4は、コピージョブに関して画像形成装置が実行する処理手順の一例を説明するためのシーケンス図である。なお、図4において、SDKコピーアプリ1221とSDKプラットフォーム123との間のやりとりは、SDKAPIを介して行われる。SDKプラットフォーム123とコピーアプリ1213との間のやりとりは、コピーAPI1213aを介して行われる。
ステップS101において、操作パネル15に表示されている、SDKアプリ122の一覧画面を介して、SDKコピーアプリ1221の起動指示が選択されると、SDKコピーアプリ1221は、例えば、スレッドとして起動される(S101)。SDKコピーアプリ1221は、起動に応じ、SDKコピーアプリ1221の操作画面(以下、「SDKコピー操作画面」という。)を操作パネルに表示させる。
続いて、SDKコピーアプリ1221は、ジョブ設定IDの取得をSDKプラットフォーム123に要求する(S102)。SDKプラットフォーム123は、ジョブ設定IDの取得を、コピーアプリ1213に要求する(S103)。ジョブ設定IDとは、コピーアプリ1213において、各SDKアプリから設定されるジョブパラメータを区別して管理するための識別情報である。例えば、コピージョブを実行させるSDKアプリとして、SDKコピーアプリ1221以外のSDKアプリ(以下、「SDKコピーアプリ1221B」という。)が有る場合、SDKコピーアプリ1221から受け付けたジョブパラメータと、SDKコピーアプリ1221Bから受け付けたジョブパラメータとを区別するためにコピーアプリ1213が用いる識別情報である。但し、SDKコピーアプリ1221とSDKコピーアプリ1221Bとの間で、ジョブパラメータが区別されなくても構わない場合、ジョブ設定IDは必要ではない。
コピーアプリ1213は、ジョブ設定IDを生成し、生成されたジョブ設定IDをSDKプラットフォーム123に返却する(S104)。SDKプラットフォーム123は、当該ジョブ設定IDを、SDKコピーアプリ1221に返却する(S105)。
続いて、SDKコピー操作画面を介して、コピージョブに関する一つのジョブパラメータがユーザによって入力される(S106)。すなわち、ステップS106〜S110は、一つのジョブパラメータに対する設定が行われるごとに実行される。
コピージョブに関するジョブパラメータは、例えば、コピー部数、集約、カラー設定等である。基本的に、SDKコピー操作画面において設定可能な設定項目は、コピーアプリ1213が予定している、又はコピーアプリ1213に対して設定可能な設定項目である。但し、コピーアプリ1213が予定していない設定項目が設定可能とされてもよい。この場合、当該設定項目に関する処理は、コピーアプリ1213を利用せずに完結されてもよい。例えば、コピージョブの過程でスキャンされた画像データを、所定の宛先に転送するといった機能をSDKコピーアプリ1221が有し、当該宛先を設定項目としてSDKコピー操作画面において設定可能であるとする。この場合、SDKコピーアプリ1221は、スキャンされた画像データの転送を、SDKプラットフォーム123経由ではコントロールサービス124に要求することにより、当該転送が実現されてもよい。
ユーザによるジョブパラメータの設定に応じ、SDKコピーアプリ1221は、設定されたジョブパラメータのパラメータ名、当該パラメータの値、及びジョブ設定ID等を含む、ジョブパラメータの設定要求をSDKプラットフォーム123に入力する(S107)。SDKプラットフォーム123は、当該設定要求を、コピーアプリ1213に伝達する(S108)。
コピーアプリ1213は、設定要求に含まれているジョブ設定IDに対応付けてRAM112に記憶しているジョブパラメータ群の設定状態を更新する。具体的には、設定要求に含まれているパラメータ名に係るジョブパラメータの値が、設定要求に含まれている値に更新される。すなわち、コピーアプリ1213は、ジョブパラメータの現在の設定状態を管理している。コピーアプリ1213は、また、ジョブパラメータ間の必須関係や、排他関係についても把握している。したがって、コピーアプリ1213は、必要に応じ、或るジョブパラメータの値の更新に応じて、他のジョブパラメータの値をも更新する。必須関係の一例として、ステープルが選択された場合、ソートも同時に選択されなければならないといった関係が挙げられる。排他関係の一例として、2in1集約(2ページを1面に集約)と4in1集約(4ページを1面に集約)とを同時に選択できないといった関係が挙げられる。
続いて、コピーアプリ1213は、パラメータ状態情報を、SDKプラットフォーム123に返却する(S109)。パラメータ状態情報は、ジョブパラメータごとの設定値を含む情報である。返却されるパラメータ状態情報は、前回のステップS109において返却されたパラメータ状態情報に対する差分であってもよい。例えば、ステップS108において、ステープルの設定(ステープルのON)が要求された場合、ステープルの設定と、ステープルと同時にソートも設定されたことを示すパラメータ状態情報が返却される。
または、コピージョブに関する全てのジョブパラメータに係るパラメータ状態情報であってもよい。また、差分のみのパラメータ状態情報を返却するコピーAPI1213aと、全てのパラメータ状態情報を返却するコピーAPI1213aとを用意し、いずれを必要とするかは、コピーAPI1213aの呼び出し側に選択させてもよい。
SDKコピーアプリ1221は、返却されたパラメータ状態情報に基づいて、SDKコピー操作画面の表示状態を更新する。
ジョブパラメータの設定が完了し、操作パネル15が備えるスタートキー(スタートボタン)が押下されると(S111)、SDKコピーアプリ1221は、画面遷移仕様の設定要求をSDKプラットフォーム123に入力する(S112)。画面遷移仕様とは、SDKコピーアプリ1221が表示させているSDKコピー操作画面から、コピーアプリ1213が表示させる画面への自動遷移のタイミングをいう。画面遷移仕様として、例えば、コピージョブの実行開始時、エラー発生時等のコピージョブの停止時、又は遷移しない等が指定される。ここでは、コピージョブの実行開始時が指定されたこととする。
続いて、SDKプラットフォーム123は、画面遷移仕様の設定要求を、コピーアプリ1213に伝達する(S113)。コピーアプリ1213は、画面遷移仕様を、例えば、RAM112に記憶しておく。
続いて、SDKコピーアプリ1221は、自ら(当該SDKコピーアプリ1221)のアプリIDを指定して、コピージョブの開始要求をSDKプラットフォーム123に入力する(S114)。SDKプラットフォーム123は、当該開始要求を、コピーアプリ1213に伝達する(S115)。アプリIDとは、画像形成装置10におけるアプリケーションプログラムの識別情報である。各SDKアプリ122、SDKプラットフォーム123、及び各標準アプリ121には、アプリIDが割り当てられている。
コピーアプリ1213は、コピージョブの開始要求に指定されているアプリIDを、当該開始要求元のSDKアプリ122のアプリIDとして、例えば、RAM112に記憶しておく。続いて、コピーアプリ1213は、自らのアプリIDを指定して、操作パネル15のオーナーの移行を、コントロールサービス124に要求する(S116)。操作パネル15のオーナー(以下、単に「オーナー」という。)とは、操作パネル15に対する情報の表示権限を占有する主体をいう。すなわち、本実施の形態では、同時に操作パネル15に対して情報を表示可能なアプリケーションプログラムは一つに限られる。これまでのオーナーは、SDKプラットフォーム123である。そして、画面遷移仕様として、コピージョブの実行開始時が設定されているため、コピーアプリ1213は、コピージョブの開始要求に応じ、オーナーの移行を、コントロールサービス124に要求するのである。したがって、画面遷移仕様が、ジョブ停止時又は遷移しない等、コピージョブの実行開始時ではない場合、ステップS116のタイミングでは、オーナーの移行は要求されない。
続いて、コントロールサービス124は、SDKプラットフォーム123に対して、オーナーの解放を要求する(S117)。なお、コントロールサービス124からは、各SDKアプリ122は見えず、SDKプラットフォーム123が、各標準アプリ121と同様に、一つのアプリケーションプログラムとして見える。したがって、いずれかのSDKアプリ122が操作パネル15に情報を表示させる場合、SDKプラットフォーム123がオーナーとなる。操作パネル15への表示に関するSDKアプリ122間の調停は、SDKプラットフォーム123によって行われる。
続いて、SDKプラットフォーム123は、オーナーの解放が可能な状態であれば、オーナーの解放の了解を示す応答をコントロールサービス124に返却する(S118)。続いて、コントロールサービス124は、ステップS116の移行要求に指定されたアプリIDに係るコピーアプリ1213に対して、オーナーへの移行を要求する(S119)。コピーアプリ1213は、オーナーに移行することについて了解を示す応答をコントロールサービス124に返却する(S120)。続いて、コントロールサービス124は、新たなオーナーであるコピーアプリ1213のアプリIDを指定して、オーナーの移行をコピーアプリ1213及びSDKプラットフォーム123のそれぞれに通知する(S121、S122)。
なお、操作パネル15のオーナーは、操作パネル15に対する情報の表示権限を有すると共に、操作パネル15の各種のハードキー(ボタン)の押下イベント等の通知先となる。したがって、コピーアプリ1213がオーナーに移行することで、SDKコピーアプリ1221及びSDKプラットフォーム123は、コピージョブの実行中における操作パネル15のハードキーの押下に応じた制御等を、コピーアプリ1213に委譲することができる。このことは、SDKプラットフォーム123において、斯かる制御に関する実装の必要性が低減することを意味する。
コピーアプリ1213は、自らがオーナーとなったことに応じ、コピージョブの状態を通知するための画面(以下、「ジョブ状態通知画面」という。)の表示をコントロールサービス124に要求する(S123)。コントロールサービス124は、当該要求に応じ、表示対象の画面を、SDKコピー操作画面からジョブ状態通知画面へ遷移させる。
図5は、画面遷移の例を示す図である。図5において、矢印A1は、SDKコピー操作画面500aからジョブ状態通知画面500bへの遷移例を示す。ジョブ状態通知画面500bは、コピージョブの進捗状況(読み込んだ原稿枚数やコピーした枚数等)等、コピージョブの状態を表示するための領域510b等を含む。
矢印A2は、参考までに、コピーアプリ1213の操作画面500c(以下、「標準コピー操作画面500c」という。)からジョブ状態通知画面500bへの遷移例を示す。すなわち、SDKコピーアプリ1221ではなく、コピーアプリ1213が利用対象として選択された場合、矢印A2のような画面遷移が発生する。すなわち、コピーアプリ1213は、標準コピー操作画面500cを介して入力されたジョブパラメータ(設定情報)に応じた処理(コピージョブ)を、画像形成装置10に実行させ、コピージョブの実行中に、ジョブ状態通知画面500bを表示させる。
本実施の形態では、コピーアプリ1213の操作画面500cとジョブ状態通知画面500bとは、表示されているメッセージが異なるのみで、実質的に同じ画面である。すなわち、コピーアプリ1213の操作画面500cが、ジョブ状態通知画面500bとしても利用される。但し、二つの画面が、明確に区別されて実装されてもよい。
続いて、コピーアプリ1213は、コピージョブの開始をコントロールサービス124に要求する(S124)。コントロールサービス124は、コピージョブの開始要求に応じ、スキャナ12及びプリンタ13等を制御して、コピージョブに関する処理を画像形成装置10に実行させる。
コピージョブの実行中、コントロールサービス124は、コピージョブの進捗状況の変化や異常の発生等に応じて、コピージョブの状態の変化を逐次的にコピーアプリ1213に通知する(S125−1、S125−2)。コピーアプリ1213は、コピージョブの状態の変化の通知に応じ、当該状態の変化に応じた処理を画像形成装置10に実行させる。例えば、ジョブ状態通知画面500bの表示内容が更新される。具体的には、読み込んだ原稿枚数やコピーした枚数等、領域510bの表示内容が更新される。また、紙詰まり等の異常の発生の通知を受けた場合、コピーアプリ1213は、当該異常を通知するための画面の表示を、画像形成装置10に実行させる。
コピーアプリ1213は、また、コピージョブの状態の変化を、SDKプラットフォーム123に伝達する(S126−1、S126−2)。SDKプラットフォーム123は、SDKコピーアプリ1221に対して、当該状態の変化を伝達する(S127−1、S127−2)。コピージョブの状態の変化が、SDKプラットフォーム123やSDKコピーアプリ1221に伝達されることにより、コピージョブの状態の変化に応じて、SDKコピーアプリ1221に特有の処理を、画像形成装置10に実行させることもできる。
なお、例えば、ユーザによってストップキー(ストップボタン)の押下等、強制的なコピージョブの中断指示が入力された場合、ストップキーの押下イベントは、コントロールサービス124から、オーナーであるコピーアプリ1213に通知される。この場合、コピーアプリ1213は、コピージョブを中断させるための制御を実行する。
このように、コピージョブの制御がコピーアプリ1213に委譲されることにより、コピージョブの実行中における状態の変化に応じた処理制御を、コピージョブの実装に任せることができる。このことは、斯かる実装を、SDKプラットフォーム123において行う必要性が低減することを意味する。
コピージョブの終了がコントロールサービス124から通知されると(S128)、コピーアプリ1213は、SDKプラットフォーム123のアプリIDを指定して、操作パネル15のオーナーの移行を、コントロールサービス124に要求する(S129)。コントロールサービス124は、コピーアプリ1213に対して、オーナーの解放を要求する(S130)。コピーアプリ1213は、オーナーの解放が可能な状態であれば、オーナーの解放の了解を示す応答をコントロールサービス124に返却する(S131)。
続いて、コントロールサービス124は、ステップS129の移行要求に指定されたアプリIDに係るSDKプラットフォーム123に対して、オーナーへの移行を要求する(S132)。SDKプラットフォーム123は、オーナーに移行することについて了解を示す応答をコントロールサービス124に返却する(S133)。続いて、コントロールサービス124は、新たなオーナーであるSDKプラットフォーム123のアプリIDを指定して、オーナーの移行をコピーアプリ1213及びSDKプラットフォーム123のそれぞれに通知する(S134、S135)。なお、SDKプラットフォーム123は、SDKアプリ122の中で、操作対象又は利用対象とされているSDKコピーアプリ1221に対して、操作画面の表示を要求する。SDKコピーアプリ1221は、当該要求に応じ、SDKコピー操作画面500aを、SDKプラットフォーム123及びコントロールサービス124を介して、操作パネル15に表示させる。すなわち、コピージョブの終了に応じ、ジョブ状態通知画面500bからSDKコピー操作画面500aへ、自動的に画面遷移が発生する。その結果、ユーザから見た場合、SDKコピーアプリ1221を利用対象として選択した当初の状態と同じ状態に戻る。
続いて、コピーアプリ1213は、コピージョブの終了を、SDKプラットフォーム123に通知する(S136)。SDKプラットフォーム123は、コピージョブの終了を、SDKコピーアプリ1221に通知する(S137)。
なお、上記では、コピージョブに関して説明したが、スキャンジョブ、印刷ジョブ、FAX送受信ジョブ等、他の標準アプリ121に関するジョブについても、同様の制御が行われてもよい。この場合、各標準アプリ121は、コピーアプリ1213が備えるコピーAPI1213a相当のAPIを備えていればよい。
上述したように、本実施の形態によれば、SDKアプリ122に対して実行が要求されたジョブの制御を、標準アプリ121に委譲することができる。したがって、ジョブの管理や制御に関する複雑な処理手順について、標準アプリ121及びSDKプラットフォーム123の双方において重複して実装する必要性を低減させることができる。換言すれば、斯かる実装を、標準アプリ121に集約することができる。その結果、画像形成装置10全体のソフトウェア開発の効率性を向上させることができる。
また、標準アプリ121が有する機能に関して、標準アプリ121とSDKプラットフォーム123において実装を共通化できることにより、新機能対応に関して、標準アプリ121の方がSDKアプリ122とのタイムラグの発生を解消することができる。
すなわち、例えば、画像形成装置10に対して新たなハードウェアが追加された場合、標準アプリ121は、コントロールサービス124において当該ハードウェアに対する対応が完了すれば、当該ハードウェアを利用した機能を提供するための準備が整う。一方、SDKアプリ122が当該ハードウェアを利用した機能を提供するための準備が整うためには、更に、SDKプラットフォーム123において、当該ハードウェアを利用するためのAPIに対応する実装が追加される必要がある。そのため、当該ハードウェアの機能を利用可能な標準アプリ121がリリースされてから、当該ハードウェアの機能を利用可能なSDKアプリ122がリリースされるまでにタイムラグが発生してしまうことが有った。
しかしながら、本実施の形態によれば、標準アプリ121において新機能対応が完了すれば、当該標準アプリ121にジョブの制御を委譲するSDKアプリ122においても、当該新機能対応が自動的に完了する。
なお、上記において、画像形成装置10を情報処理装置の一例として説明したが、画像形成装置10以外の情報処理装置であって、プログラムによる制御によって動作可能な情報処理装置であれば、他の情報処理装置に関して本実施の形態が適用されてもよい。例えば、PC(Personal Computer)等のコンピュータ、プロジェクタ、デジタルカメラ、携帯電話、スマートフォン、タブレット型端末、テレビ会議システム等に対して、本実施の形態が適用されてもよい。
なお、本実施の形態において、コントロールサービス124は、通知手段の一例である。
以上、本発明の実施例について詳述したが、本発明は斯かる特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
10 画像形成装置
11 コントローラ
12 スキャナ
13 プリンタ
14 モデム
15 操作パネル
16 ネットワークインタフェース
17 SDカードスロット
80 SDカード
111 CPU
112 RAM
113 ROM
114 HDD
115 NVRAM
121 標準アプリ
122 SDKアプリ
123 SDKプラットフォーム
124 コントロールサービス
125 OS
1211 スキャンアプリ
1212 印刷アプリ
1213 コピーアプリ
1214 FAXアプリ
1221 SDKコピーアプリ
特開2005−269619号公報

Claims (6)

  1. 情報処理装置であって、
    当該情報処理装置に固有のハードウェアを利用した処理に関する第一の画面の表示と、前記第一の画面を介して入力された設定情報に応じた前記処理とを当該情報処理装置に実行させる第一のプログラムを有し、
    前記第一のプログラムは、
    第二のプログラムから前記処理に関する設定情報を受け付けるインタフェースを備え、
    前記第二のプログラムから受け付けた設定情報に応じた前記処理を当該情報処理装置に実行させる情報処理装置。
  2. 前記第一のプログラムは、
    前記第二のプログラムが当該情報処理装置に表示させる第二の画面を介して入力された設定情報を、前記第二のプログラムより受け付け、当該設定情報に応じた前記処理を当該情報処理装置に実行させ、
    前記処理中に、前記第二の画面から前記処理の状態を表示させる画面への遷移を当該情報処理装置に実行させる請求項1記載の情報処理装置。
  3. 当該情報処理装置に画面を表示させている前記第一のプログラムに、前記処理中に発生した状態の変化を通知する通知手段を有し、
    前記第一のプログラムは、通知された状態の変化に応じた処理を当該情報処理装置に実行させる請求項2記載の情報処理装置。
  4. 前記第一のプログラムと前記第二のプログラムとは、異なる開発言語によって実装される請求項1乃至4いずれか一項記載の情報処理装置。
  5. 情報処理装置が実行する情報処理方法であって、
    当該情報処理装置に固有のハードウェアを利用した処理に関する第一の画面の表示と、前記第一の画面を介して入力された設定情報に応じた前記処理とを当該情報処理装置に実行させ、第二のプログラムから前記処理に関する設定情報を受け付けるインタフェースを備える第一のプログラムが、
    前記第二のプログラムから受け付けた設定情報に応じた前記処理を当該情報処理装置に実行させる情報処理方法。
  6. 情報処理装置に固有のハードウェアを利用した処理に関する第一の画面の表示と、前記第一の画面を介して入力された設定情報に応じた前記処理とを当該情報処理装置に実行させ、第二のプログラムから前記処理に関する設定情報を受け付けるインタフェースを備える第一のプログラムであって、
    前記第一のプログラムは、前記第二のプログラムから受け付けた設定情報に応じた前記処理を当該情報処理装置に実行させるプログラム。
JP2012204253A 2012-09-18 2012-09-18 情報処理装置、情報処理方法、及びプログラム Active JP5991104B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2012204253A JP5991104B2 (ja) 2012-09-18 2012-09-18 情報処理装置、情報処理方法、及びプログラム
US14/021,012 US9535662B2 (en) 2012-09-18 2013-09-09 Data processing apparatus and data processing method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012204253A JP5991104B2 (ja) 2012-09-18 2012-09-18 情報処理装置、情報処理方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2014059718A true JP2014059718A (ja) 2014-04-03
JP5991104B2 JP5991104B2 (ja) 2016-09-14

Family

ID=50275858

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012204253A Active JP5991104B2 (ja) 2012-09-18 2012-09-18 情報処理装置、情報処理方法、及びプログラム

Country Status (2)

Country Link
US (1) US9535662B2 (ja)
JP (1) JP5991104B2 (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015182303A1 (ja) * 2014-05-30 2015-12-03 京セラドキュメントソリューションズ株式会社 画像形成装置及び画像形成方法
JP2015228106A (ja) * 2014-05-30 2015-12-17 京セラドキュメントソリューションズ株式会社 画像形成装置、画像形成方法、及び制御プログラム
JP2015228573A (ja) * 2014-05-30 2015-12-17 京セラドキュメントソリューションズ株式会社 画像形成装置、画像形成方法、及び制御プログラム
JP2016009927A (ja) * 2014-06-23 2016-01-18 京セラドキュメントソリューションズ株式会社 画像形成装置、画像形成方法及び画像形成プログラム
JP2016148923A (ja) * 2015-02-10 2016-08-18 京セラドキュメントソリューションズ株式会社 画像形成装置、画像形成方法、及び画像形成プログラム
JP2017073682A (ja) * 2015-10-08 2017-04-13 株式会社リコー 機器、情報処理方法、及びプログラム
JP2018051797A (ja) * 2016-09-26 2018-04-05 富士ゼロックス株式会社 画像形成装置及びプログラム

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6379699B2 (ja) 2014-06-05 2018-08-29 株式会社リコー 情報処理装置、情報処理システム、情報処理プログラム、および情報処理方法
KR20170086891A (ko) * 2016-01-19 2017-07-27 에스프린팅솔루션 주식회사 화상형성작업의 수행을 위한 어플리케이션을 실행하는 화상형성장치 및 화상형성장치에서 화상형성작업을 수행하는 방법
US10282199B2 (en) * 2017-09-05 2019-05-07 Verizon Patent And Licensing Inc. Selecting a software development kit (SDK) of an application to be activated based on characteristics of the application
JP7059696B2 (ja) 2018-03-02 2022-04-26 株式会社リコー 機器、情報処理システム、情報処理方法及びプログラム
JP7069969B2 (ja) 2018-03-29 2022-05-18 株式会社リコー 情報処理装置、情報処理方法及び情報処理プログラム
US11790053B2 (en) 2019-03-13 2023-10-17 Ricoh Company, Ltd. Information processing system, server, non-transitory computer-readable medium, and method for controlling assignment of license
JP7417193B2 (ja) * 2020-03-04 2024-01-18 京セラドキュメントソリューションズ株式会社 電子機器およびプログラム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100037104A1 (en) * 2008-08-05 2010-02-11 Samsung Electronics Co., Ltd Image forming apparatus and method of controlling application thereof
JP2011019130A (ja) * 2009-07-09 2011-01-27 Ricoh Co Ltd 画像処理装置、表示制御方法、及び表示制御プログラム
JP2011107834A (ja) * 2009-11-13 2011-06-02 Ricoh Co Ltd 画像処理装置、仮想マシン間の動作モジュール実行制御方法、及び動作モジュール実行制御プログラム
US20110149322A1 (en) * 2009-12-23 2011-06-23 Samsung Electronics Co., Ltd Method of executing additional extended feature of image forming apparatus and image forming apparatus to perform the same
JP2012124605A (ja) * 2010-12-06 2012-06-28 Ricoh Co Ltd 画像形成装置、カスタマイズ制御方法及びカスタマイズ制御プログラム

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6639687B1 (en) * 1998-09-08 2003-10-28 International Business Machines Corporation Progress indicator for multiple actions
JP2002318692A (ja) * 2001-04-19 2002-10-31 Sony Corp インストール支援システム、インストール支援装置、インストール支援方法、インストールを支援するためのプログラムおよびそのプログラムを記録した記録媒体
JP3699412B2 (ja) 2002-03-25 2005-09-28 株式会社リコー 画像形成装置用端末エミュレータにおける拡張制御コード処理方法、その方法をコンピュータに実行させるプログラムおよび画像形成装置
US8432562B2 (en) 2004-02-17 2013-04-30 Ricoh Company, Ltd. Image processing apparatus, method, program, and computer readable recording medium for controlling operation switching and displaying at occurrence of error conditions
JP4625343B2 (ja) 2004-02-17 2011-02-02 株式会社リコー 画像形成装置、端末装置、情報処理方法、情報処理プログラム、及び記録媒体
US7802246B1 (en) * 2004-06-21 2010-09-21 Microsoft Corporation Systems and methods that facilitate software installation customization
JP4086027B2 (ja) * 2004-09-30 2008-05-14 ブラザー工業株式会社 管理システム及びプログラム
US20060132835A1 (en) * 2004-12-17 2006-06-22 Prasad Nagaraja Application interface for device driver settings
JP5013742B2 (ja) 2005-12-15 2012-08-29 株式会社リコー 通信装置、情報処理システム、アプリケーション実行方法、アプリケーション実行プログラム及び記録媒体
JP2009188940A (ja) * 2008-02-08 2009-08-20 Ricoh Co Ltd 画像処理装置、画像処理方法、及び画像処理システム
JP2009282777A (ja) 2008-05-22 2009-12-03 Hitachi Information Systems Ltd アプリケーションプログラムの提供システム及びアプリケーションプログラム
JP5444881B2 (ja) * 2009-06-26 2014-03-19 株式会社リコー 情報処理装置および情報処理システム
JP2011101142A (ja) 2009-11-05 2011-05-19 Sharp Corp 画像形成装置
JP2011123842A (ja) 2009-12-14 2011-06-23 Ricoh Co Ltd 画像形成装置、機能追加方法、及びプログラム
WO2012144006A1 (ja) * 2011-04-18 2012-10-26 キヤノン株式会社 データ処理装置、データ処理装置の制御方法、及びプログラム
JP5875448B2 (ja) * 2012-04-04 2016-03-02 キヤノン株式会社 情報処理装置、その方法及びプログラム

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100037104A1 (en) * 2008-08-05 2010-02-11 Samsung Electronics Co., Ltd Image forming apparatus and method of controlling application thereof
JP2011019130A (ja) * 2009-07-09 2011-01-27 Ricoh Co Ltd 画像処理装置、表示制御方法、及び表示制御プログラム
JP2011107834A (ja) * 2009-11-13 2011-06-02 Ricoh Co Ltd 画像処理装置、仮想マシン間の動作モジュール実行制御方法、及び動作モジュール実行制御プログラム
US20110149322A1 (en) * 2009-12-23 2011-06-23 Samsung Electronics Co., Ltd Method of executing additional extended feature of image forming apparatus and image forming apparatus to perform the same
JP2012124605A (ja) * 2010-12-06 2012-06-28 Ricoh Co Ltd 画像形成装置、カスタマイズ制御方法及びカスタマイズ制御プログラム

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2015182303A1 (ja) * 2014-05-30 2017-04-20 京セラドキュメントソリューションズ株式会社 画像形成装置及び画像形成方法
JP2015228106A (ja) * 2014-05-30 2015-12-17 京セラドキュメントソリューションズ株式会社 画像形成装置、画像形成方法、及び制御プログラム
JP2015228573A (ja) * 2014-05-30 2015-12-17 京セラドキュメントソリューションズ株式会社 画像形成装置、画像形成方法、及び制御プログラム
WO2015182303A1 (ja) * 2014-05-30 2015-12-03 京セラドキュメントソリューションズ株式会社 画像形成装置及び画像形成方法
CN106104476B (zh) * 2014-05-30 2019-08-13 京瓷办公信息系统株式会社 图像形成装置及图像形成方法
CN106104476A (zh) * 2014-05-30 2016-11-09 京瓷办公信息系统株式会社 图像形成装置及图像形成方法
US9894230B2 (en) 2014-05-30 2018-02-13 Kyocera Document Solutions Inc. Image formation device which can be expanded and image forming method for expanding an image formation device
JP2016009927A (ja) * 2014-06-23 2016-01-18 京セラドキュメントソリューションズ株式会社 画像形成装置、画像形成方法及び画像形成プログラム
JP2016148923A (ja) * 2015-02-10 2016-08-18 京セラドキュメントソリューションズ株式会社 画像形成装置、画像形成方法、及び画像形成プログラム
CN106572278A (zh) * 2015-10-08 2017-04-19 株式会社理光 设备和信息处理方法
JP2017073682A (ja) * 2015-10-08 2017-04-13 株式会社リコー 機器、情報処理方法、及びプログラム
US10503382B2 (en) 2015-10-08 2019-12-10 Ricoh Company, Ltd. Device and information processing method
JP2018051797A (ja) * 2016-09-26 2018-04-05 富士ゼロックス株式会社 画像形成装置及びプログラム

Also Published As

Publication number Publication date
US9535662B2 (en) 2017-01-03
US20140082581A1 (en) 2014-03-20
JP5991104B2 (ja) 2016-09-14

Similar Documents

Publication Publication Date Title
JP5991104B2 (ja) 情報処理装置、情報処理方法、及びプログラム
RU2666967C2 (ru) Устройство обработки информации, способ обработки информации и носитель записи
RU2652463C2 (ru) Блок оборудования, терминал обработки информации, система обработки информации, способ управления отображением и программа
JP6927276B2 (ja) 情報処理システム、情報処理装置、情報処理方法およびプログラム
JP2017005475A (ja) 画像形成装置、画像形成方法およびプログラム
JP2018106410A (ja) 画像形成装置、機能追加方法、プログラム、
JP2016218706A (ja) 情報配信システム、情報配信方法および電子機器
JP2013186536A (ja) 装置、システムおよびプログラム
JP5998849B2 (ja) 電子機器、情報処理システム、情報管理装置、情報処理方法、及び情報処理プログラム
US20140359701A1 (en) Device, information processing terminal, information processing system, display control method, and recording medium
JP2013190950A (ja) 制御装置、及び起動方法
JP6455376B2 (ja) 画像処理装置および端末装置
JP2006092182A (ja) 画像処理装置およびその制御方法および制御プログラム
US11656810B2 (en) Printing system, printing apparatus, control methods therefor, and storage medium
JP6717057B2 (ja) 情報処理装置及びプログラム
JP5636829B2 (ja) カスタマイズシステム、画像形成装置、情報処理装置及びカスタマイズプログラム
JP5337607B2 (ja) アプリ動作確認システム、端末用プログラムおよびサーバ用プログラム
JP2019164573A (ja) 表示入力装置、画像形成装置、画面表示方法およびプログラム
JP2022051794A (ja) 画像形成装置およびその制御方法
JP2014204138A (ja) 画像形成装置
JP6089794B2 (ja) 機器、情報処理システム、情報処理方法、及びプログラム
JP7346937B2 (ja) 情報処理装置、情報処理方法、プログラム、画像形成システム
JP2012010284A (ja) 処理情報管理装置、画像形成装置、及び処理情報管理プログラム
JP2016149069A (ja) 情報処理装置、情報処理システム、情報処理方法、情報処理プログラム、および記憶媒体
JP6330933B2 (ja) 機器、情報処理システム、情報処理方法、及びプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20150818

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20160413

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20160510

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160629

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20160719

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20160801

R151 Written notification of patent or utility model registration

Ref document number: 5991104

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151