(57)【要約】      （修正有）【課題】画像形成装置（融合機）において、ネットワーク経由での処理に係る機能の開発を容易にし、品質を確保する。【解決手段】端末装置との接続に利用される第１の機能用の第１のインターフェース手段１０と、端末装置又は自機のプロセスから共通に利用される第２の機能用の第２のインターフェース手段３０と、第１のインターフェース手段と第２のインターフェース手段との間に介在し、第１のインターフェース手段を利用して接続された端末装置が、第２の機能を利用するときに共通に利用する機能を提供する共通機能提供手段２０とを有する構成とする。【選択図】図４
2005339520.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して接続された端末装置からの要求に応じて複数のサービスを提供するサービス提供装置であって、
前記端末装置との接続に利用される第１の機能用の第１のインターフェース手段と、
前記端末装置又は自機のプロセスから共通に利用される第２の機能用の第２のインターフェース手段と、
前記第１のインターフェース手段と第２のインターフェース手段との間に介在し、前記第１のインターフェース手段を利用して接続された前記端末装置が、前記第２の機能を利用するときに共通に利用する機能を提供する共通機能提供手段と
を有することを特徴とするサービス提供装置。
【請求項２】
前記第１のインターフェース手段は、前記ネットワークを介して接続された前記端末装置が利用する通信プロトコルの違いを吸収し、
前記共通機能提供手段は、前記通信プロトコルの違いに依存せず、前記第２の機能を利用するときに共通に利用する機能を提供することを特徴とする請求項１記載のサービス提供装置。
【請求項３】
ネットワークを介して接続された端末装置からの要求に応じて複数のサービスを提供するサービス提供装置を、
前記端末装置との接続に利用される第１の機能用の第１のインターフェース手段と、
前記端末装置又は自機のプロセスから共通に利用される第２の機能用の第２のインターフェース手段と、
前記第１のインターフェース手段と第２のインターフェース手段との間に介在し、前記第１のインターフェース手段を利用して接続された前記端末装置が、前記第２の機能を利用するときに共通に利用する機能を提供する共通機能提供手段と
して機能させるためのサービス提供プログラム。
【請求項４】
前記第１のインターフェース手段は、前記ネットワークを介して接続された前記端末装置が利用する通信プロトコルの違いを吸収し、
前記共通機能提供手段は、前記通信プロトコルの違いに依存せず、前記第２の機能を利用するときに共通に利用する機能を提供することを特徴とする請求項３記載のサービス提供プログラム。
【請求項５】
請求項１乃至４何れか一項記載のサービス提供プログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項６】
ネットワークを介して接続された端末装置からの要求に応じて複数のサービスを提供するサービス提供装置のサービス提供方法であって、
前記端末装置との接続に利用される第１の機能用の第１のインターフェース手段と、
前記端末装置又は自機のプロセスから共通に利用される第２の機能用の第２のインターフェース手段と、
前記第１のインターフェース手段と第２のインターフェース手段との間に介在し、前記第２の機能を利用するときに共通に利用する機能を提供する共通機能提供手段とを有するサービス提供装置が、
前記第１のインターフェース手段を利用して前記端末装置が前記ネットワークを介して接続されると、前記共通機能提供手段が、前記第２の機能を利用するときに共通に利用する機能を前記端末装置に提供するステップを有することを特徴とするサービス提供方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、サービス提供装置、サービス提供プログラム、記録媒体及びサービス提供方法に関する。
【背景技術】
【０００２】
近年、プリンタ、コピー、ファクシミリ及びスキャナ等の各装置の機能を１つの筐体内に収納した画像形成装置（以下、融合機という）１２００が知られるようになった。この融合機１２００は、１つの筐体内に表示部、印刷部及び撮像部等を設けると共に、プリンタ、コピー、ファクシミリ及びスキャナにそれぞれ対応する４種類のアプリケーションを設け、そのアプリケーションを切り替えることより、プリンタ、コピー、ファクシミリ及びスキャナとして動作させるものである（例えば、特許文献１参照）。
【０００３】
図１は、従来の融合機１２００の機能構成図である。図１の融合機１２００は、Ｐｌｏｔｔｅｒ１２０１，Ｓｃａｎｎｅｒ１２０２，ファクシミリ等のその他のハードウェアリソース１２０３を有すると共に、アプリケーション１２４０と、コントロールサービス１２５０と、システムリソースマネージャ（ＳＲＭ）１２２３と、ＯＳ１２２１とを有する構成である。
【特許文献１】特開２００２−８２８０６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
図１に示されるように、従来の融合機１２００では、アプリケーション１２４０毎に設計を行っていたため、例えばＣｏｐｙアプリ１２１１のジョブ管理機能１３０４及びＦＡＸアプリ１２１２のジョブ管理機能１３１４、又はＣｏｐｙアプリ１２１１のＳｃａｎ機能１３０１及びＳｃａｎｎｅｒアプリ１２１３のＳｃａｎ機能１３１１など、機能レベルで同じ処理が複数のアプリケーション１２４０内に実装されていた。したがって、従来の融合機１２００では設計工数が増大し、１つのアプリケーション１２４０のコードサイズも大きくなってしまう問題があった。
【０００５】
このような問題を解決するため、融合機１２００は機能レベルでの同じ処理をＳＦ（Ｓｈａｒｅｄ  Ｆｕｎｃｔｉｏｎ）としてまとめて実装するようにしてもよい。図２は、ＳＦを実装した融合機の一例の機能構成図である。
【０００６】
図２に示される融合機１２００の機能構成は、図１に示した融合機１２００の機能構成と比べて、複数のアプリケーション１２４０内に実装されていた機能レベルでの同じ処理が、例えばプリント機能を提供するＰｒｉｎｔＳＦ４１、スキャン機能を提供するＳｃａｎＳＦ４３、ストレージ機能を提供するＳｔｏｒａｇｅＳＦ４４等のように、ＳＦとしてまとめられて実装されている。
【０００７】
図２に示される融合機１２００では、ＳＦを用いることによって、アプリケーション１２４０の１つ１つの設計工数が減少し、１つのアプリケーション１２４０のコードサイズも小さくすることができる。
【０００８】
しかしながら、図２に示される融合機１２００では、ネットワーク経由でスキャナを使ったり、ネットワーク経由でＦＡＸを使ったり、ネットワーク経由で蓄積された文書をプリントするような処理に対応しようとした場合、ＦＡＸアプリ１２１２，Ｓｃａｎｎｅｒアプリ１２１３，Ｐｒｉｎｔｅｒアプリ１２１４等に、それぞれユーザ認証やセッション管理など、ネットワーク経由での処理に係る機能を実装する必要があった。
【０００９】
上述したように、機能が重複して各アプリケーション１２４０に実装されている融合機１２００では、設計工数が増大し、１つのアプリケーション１２４０のコードサイズも大きくなってしまう問題があった。また、融合機１２００では、作成した各アプリケーション１２４０のそれぞれに対して同様のテスト項目を実施する必要があるという問題があった。また、融合機１２００では、ネットワーク経由での処理に係る機能の修正等を行う度に、同様の修正を各アプリケーション１２４０のそれぞれに対して行う必要があり、バグ等が発生する要因にもなり、品質の面においても問題があった。
【００１０】
また、従来の融合機１２００では、各種プロトコルに対応したインターフェースを提供するプロトコルインターフェース部分について、どのようなミドルウェアが存在するのかを知っていないと設計できず、また、ミドルウェアが新規に追加された場合、プロトコルインターフェース部分を再度作り直す必要があり、開発が広範囲に及び、新規の機能の追加や新規のプロトコルへの対応が困難となるという問題もあった。
【００１１】
本発明は、上記の点に鑑みなされたもので、開発が容易で、品質が確保されたサービスを提供可能な、サービス提供装置、サービス提供プログラム、記録媒体及びサービス提供方法を提供することを目的とする。
【課題を解決するための手段】
【００１２】
上記課題を解決するため、本発明は、ネットワークを介して接続された端末装置からの要求に応じて複数のサービスを提供するサービス提供装置であって、前記端末装置との接続に利用される第１の機能用の第１のインターフェース手段と、前記端末装置又は自機のプロセスから共通に利用される第２の機能用の第２のインターフェース手段と、前記第１のインターフェース手段と第２のインターフェース手段との間に介在し、前記第１のインターフェース手段を利用して接続された前記端末装置が、前記第２の機能を利用するときに共通に利用する機能を提供する共通機能提供手段とを有することを特徴とする。
【００１３】
また、上記課題を解決するための手段として、サービス提供プログラム、記録媒体及びサービス提供方法としてもよい。
【発明の効果】
【００１４】
本発明によれば、開発が容易で、品質が確保されたサービスを提供可能な、サービス提供装置を提供することができる。
【発明を実施するための最良の形態】
【００１５】
以下、本発明の実施の形態について図面に基づいて説明する。図３は、本発明に係る融合機１２００の一例の機能構成図である。
【００１６】
融合機１２００は、Ｐｌｏｔｔｅｒ１２０１と、Ｓｃａｎｎｅｒ１２０２と、ファクシミリ等のその他のハードウェアリソース１２０３を有すると共に、コントロールサービス１２５０と、ＳＲＭ１２２３と、ＯＳ１２２１とを有する。コントロールサービス１２５０は、アプリケーション１２４０からの処理要求を解釈して、ハードウェア資源の獲得要求を発生させる。ＳＲＭ１２２３は、一又は複数のハードウェア資源の管理を行い、コントロールサービス１２５０からの獲得要求を調停する。
【００１７】
コントロールサービス１２５０は、複数のサービスモジュールにより形成され、具体的には、ＳＣＳ（Ｓｙｓｔｅｍ  Ｃｏｎｔｒｏｌ  Ｓｅｒｖｉｃｅ）１２２２と、ＥＣＳ（Ｅｎｇｉｎｅ  Ｃｏｎｔｒｏｌ  Ｓｅｒｖｉｃｅ)１２２４と、ＦＣＳ（ＦＡＸ  Ｃｏｎｔｒｏｌ  Ｓｅｒｖｉｃｅ）１２２５と、ＭＣＳ（Ｍｅｍｏｒｙ  Ｃｏｎｔｒｏｌ  Ｓｅｒｖｉｃｅ）１２２６と、ＤＣＳ（Ｄｅｌｉｖｅｒｙ  Ｃｏｎｔｒｏｌ  Ｓｅｒｖｉｃｅ）１２２７と、ＵＣＳ（Ｕｓｅｒ  Ｃｏｎｔｒｏｌ  Ｓｅｒｖｉｃｅ）１２２８と、ＣＣＳ（Ｃｅｒｔｉｆｉｃａｔｉｏｎ  Ｃｏｎｔｒｏｌ  Ｓｅｒｖｉｃｅ）１２２９と、ＬＣＳ（Ｌｏｇ  Ｃｏｎｔｒｏｌ  Ｓｅｒｖｉｃｅ）１２３０と、ＮＣＳ（Ｎｅｔｗｏｒｋ  Ｃｏｎｔｒｏｌ  Ｓｅｒｖｉｃｅ）１２３１とを含む。
【００１８】
ＯＳ１２２１はＵＮＩＸ（登録商標）等のオペレーティング・システムである。ＳＲＭ１２２３は、ＳＣＳ１２２２と共にシステムの制御及びリソースの管理を行う。ＳＣＳ１２２２は、アプリ管理、操作部制御、システム画面表示、ＬＥＤ表示、リソース管理、割り込みアプリ制御等の複数の機能を行なう。ＥＣＳ１２２４は、Ｐｌｏｔｔｅｒ１２０１等のエンジン部を制御するものである。
【００１９】
ＦＣＳ１２２５は、システムコントローラの各アプリ層からＰＳＴＮ／ＩＳＤＮ網を使ったファクシミリ送受信、ＢＫＭ（バックアップＳＲＡＭ）で管理されている各種ファクシミリデータの登録／引用、ファクシミリ読み取り、ファクシミリ受信印刷、融合送受信を行うためのＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇａｒａｍ  Ｉｎｔｅｒｆａｃｅ）を提供する。
【００２０】
ＭＣＳ１２２６は、メモリ制御を行うものである。ＤＣＳ１２２７は、蓄積文書等を外部のサーバーや、ユーザのＰＣ等に転送する処理等を行う。ＵＣＳ１２２８は、ユーザ情報及び／又はユーザが所属するグループ情報の管理等を行う。ＣＣＳ１２２９は、ユーザの認証等を行う。ＬＣＳ１２３０は、ログの管理等を行う。
【００２１】
ＮＣＳ１２３１は、ネットワーク側から各プロトコルによって受信したデータを各アプリケーションに振り分けたり、アプリケーションからデータをネットワーク側に送信する際の仲介を行ったりする。
【００２２】
アプリケーション１２４０は、コピー用アプリケーションであるＣｏｐｙアプリ１２１１と、ファクシミリ用アプリケーションであるＦＡＸアプリ１２１２と、スキャナ用アプリケーションであるＳｃａｎｎｅｒアプリ１２１３と、プリンタ用のアプリケーションであるＰｒｉｎｔｅｒアプリ１２１４と、サーバープラットフォーム１００とを含む。
【００２３】
図３に示した融合機１２００の機能構成は、図２に示した融合機１２００の機能構成と比べて、複数のアプリケーション１２４０内に実装されていたネットワーク経由での処理に係る機能が、サーバープラットフォーム１００内にまとめて実装されている点が異なっている。
【００２４】
図３に示されるＳＦは、融合機１２００内の各アプリケーションから使用されるだけでなく、サーバープラットフォーム１００からも使用される。ＳＦは、搭載されているデバイスや機種、ＯＳ等に依存せず、機能単位のマクロ的な処理のインターフェースを提供するコンポーネントである。
【００２５】
なお、融合機１２００のプログラムは、融合機１２００に初めからインストールされていてもよいし、例えば記録媒体１によって融合機１２００に提供されるか、ネットワークを通じてダウンロードされるようにしてもよい。融合機１２００のＣＰＵは、プログラムに従って、処理を実行する。
【００２６】
図４は、フレームワークの全体の機能構成図である。図４に示されるように、フレームワークは、ネットワークサービス（第１の機能）として、ｈｔｔｐｄ２００と、ｆｔｐｄ（Ｆｉｌｅ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ  Ｄａｅｍｏｎ）２１０と、ｓｍｔｐｄ（Ｓｉｍｐｌｅ  Ｍａｉｌ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ  Ｄａｅｍｏｎ）２２０とを含む構成である。なお、ｈｔｔｐｄ２００と、ｆｔｐｄ２１０と、ｓｍｔｐｄ２２０とは、ＮＣＳ１２３１に含まれる。
【００２７】
また、フレームワークはＳＦ層又はサービス層（第２の機能）として、例えばプリント機能を提供するＰｒｉｎｔＳＦ４１と、ファックス機能を提供するＦＡＸＳＦ４２と、スキャン機能を提供するＳｃａｎＳＦ４３と、ストレージ機能を提供するＳｔｏｒａｇｅＳＦ４４と、ログの管理等を行うＬＣＳ１２３０と、ＳＣＳ１２２２とを含む構成である。
【００２８】
サーバープラットフォーム１００は、各種機能を提供するためのミドルウェア群を利用するためのミドルウェアインターフェース部（第２のインターフェース手段）３０と、各種プロトコルや操作シーケンスを解釈するためのプロトコルインターフェース部（第１のインターフェース手段）１０と、各種プロトコルに従って各種機能を実施する場合に共通的に利用される機能を定義した共通機能提供部（共通機能提供手段）２０とを含む。
【００２９】
プロトコルインターフェース部１０は、ネットワークから共通に利用されるインターフェースを提供する。プロトコルインターフェース部１０は、例えば、ＨＴＭＬ（ＨｙｐｅｒＴｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）を解釈するＨＴＭＬ解釈部１１と、ＵＰｎＰ（Ｕｎｉｖｅｒｓａｌ  Ｐｌｕｇ  ａｎｄ  Ｐｌａｙ）を解釈するＵＰｎＰ解釈部１２と、ＷＳ（Ｗｅｂ  Ｓｅｒｖｉｃｅ）を解釈するＷＳ解釈部１３と、カスタムＩ／Ｆを解釈するカスタムＩ／Ｆ解釈部１４とを含む。
【００３０】
また、ミドルウェアインターフェース部３０はネットワークからだけでなく、融合機１２００内部のアプリケーション１２４０やＳＦからも共通に利用されるインターフェースを提供する。ミドルウェアインターフェース部３０は、ＳＦ層又はサービス層など、機器内部のインターフェースを提供する。
【００３１】
ミドルウェアインターフェース部３０は、例えば、共通機能提供部２０とＰｒｉｎｔＳＦ４１とのインターフェースを提供するＰｒｉｎｔＳＦＩ／Ｆ３１と、共通機能提供部２０とＦＡＸＳＦ４２とのインターフェースを提供するＦＡＸＳＦＩ／Ｆ３２と、共通機能提供部２０とＳｃａｎＳＦ４３とのインターフェースを提供するＳｃａｎＳＦＩ／Ｆ３３と、共通機能提供部２０とＳｔｏｒａｇｅＳＦ４４とのインターフェースを提供するＳｔｏｒａｇｅＳＦＩ／Ｆ３４と、共通機能提供部２０とＬＣＳ１２３０とのインターフェースを提供するＪｏｂＩ／Ｆ３５と、共通機能提供部２０とＳＣＳ１２２２とのインターフェースを提供するＳｙｓｔｅｍＩ／Ｆ３６とを含む。
【００３２】
図４に示すフレームワークの機能構成とすることで、プロトコルインターフェース部１０の設計者は、プロトコルインターフェース部１０と共通機能提供部２０とのインターフェースさえ知っていればプロトコルインターフェース部１０を設計でき、ミドルウェアインターフェース部３０の設計者も、ミドルウェアインターフェース部３０と共通機能提供部２０とのインターフェースさえ知っていればミドルウェアインターフェース部３０を設計できる。
【００３３】
したがって、図４に示すフレームワークの機能構成ではプロトコルインターフェース部１０側とミドルウェアインターフェース部３０側とを独立に設計でき、また、設計等の変更の影響も御互いが受けずに済み、新規の機能の追加や、新規のプロトコルへの対応が容易に行える。
【００３４】
次に、図４に示したフレームワークをＵＰｎＰ対応プリンタに適用させた場合の、ＵＰｎＰ対応プリンタの一例の機能構成を図５に示す。図５は、フレームワークをＵＰｎＰ対応プリンタに適用させた場合の、ＵＰｎＰ対応プリンタの一例の機能構成図である。
【００３５】
図５に示されるように、ＵＰｎＰ対応プリンタは、ネットワークサービスとして、ｈｔｔｐｄ２００と、ｆｔｐｄ２１０と、ｓｍｔｐｄ２２０とを含む。
【００３６】
また、サーバープラットフォーム１００は、プロトコルインターフェース部１０と、共通機能提供部２０と、ミドルウェアインターフェース部３０とを含む。図５に示されるように、プロトコルインターフェース部１０は、ＵＰｎＰ解釈部１２を含む。また、図５に示されるように、ミドルウェアインターフェース部３０は、ＰｒｉｎｔＳＦＩ／Ｆ３１と、ＪｏｂＩ／Ｆ３５と、ＳｙｓｔｅｍＩ／Ｆ３６とを含む。また、ＵＰｎＰ対応プリンタは、ＳＦ層又はサービス層としてＰｒｉｎｔＳＦ４１と、ＬＣＳ１２３０と、ＳＣＳ１２２２とを含む。
【００３７】
図５に示されるように、図４に示したフレームワークは、ＵＰｎＰ対応プリンタに適用することもできる。なお、ＵＰｎＰ対応プリンタのプログラムは、ＵＰｎＰ対応プリンタに初めからインストールされていてもよいし、例えば記録媒体１によってＵＰｎＰ対応プリンタに提供されるか、ネットワークを通じてダウンロードされるようにしてもよい。ＵＰｎＰ対応プリンタのＣＰＵは、プログラムに従って、処理を実行する。
【００３８】
次に、図４に示したフレームワークをブラウザによる機器管理可能プリンタに適用させた場合の、ブラウザによる機器管理可能プリンタの一例の機能構成を図６に示す。図６はフレームワークをブラウザによる機器管理可能プリンタに適用させた場合の、ブラウザによる機器管理可能プリンタの一例の機能構成図である。
【００３９】
図６に示されるように、ブラウザによる機器管理可能プリンタは、ネットワークサービスとして、ｈｔｔｐｄ２００と、ｆｔｐｄ２１０と、ｓｍｔｐｄ２２０とを含む。
【００４０】
また、サーバープラットフォーム１００は、プロトコルインターフェース部１０と、共通機能提供部２０と、ミドルウェアインターフェース部３０とを含む。図６に示されるように、プロトコルインターフェース部１０は、ＨＴＭＬ解釈部１１と、ＵＰｎＰ解釈部１２とを含む。また、図６に示されるように、ミドルウェアインターフェース部３０は、ＰｒｉｎｔＳＦＩ／Ｆ３１と、ＪｏｂＩ／Ｆ３５と、ＳｙｓｔｅｍＩ／Ｆ３６とを含む。また、ブラウザによる機器管理可能プリンタは、ＳＦ層又はサービス層としてＰｒｉｎｔＳＦ４１と、ＬＣＳ１２３０と、ＳＣＳ１２２２とを含む。
【００４１】
図６に示されるように、図４に示したフレームワークは、ブラウザによる機器管理可能プリンタに適用することもできる。なお、ブラウザによる機器管理可能プリンタのプログラムは、ブラウザによる機器管理可能プリンタに初めからインストールされていてもよいし、例えば記録媒体１によってブラウザによる機器管理可能プリンタに提供されるか、ネットワークを通じてダウンロードされるようにしてもよい。ブラウザによる機器管理可能プリンタのＣＰＵは、プログラムに従って、処理を実行する。
【００４２】
次に、図４に示したフレームワークをＷｅｂサービス及びＷｅｂブラウザに対応した融合機１２００に適用させた場合の、Ｗｅｂサービス及びＷｅｂブラウザに対応した融合機１２００の一例の機能構成を図７に示す。図７は、フレームワークをＷｅｂサービス及びＷｅｂブラウザに対応した融合機に適用させた場合の、Ｗｅｂサービス及びＷｅｂブラウザに対応した融合機の一例の機能構成図である。
【００４３】
図７に示されるように、Ｗｅｂサービス及びＷｅｂブラウザに対応した融合機１２００は、ネットワークサービスとして、ｈｔｔｐｄ２００と、ｆｔｐｄ２１０と、ｓｍｔｐｄ２２０とを含む。
【００４４】
また、サーバープラットフォーム１００は、プロトコルインターフェース部１０と、共通機能提供部２０と、ミドルウェアインターフェース部３０とを含む。図７に示されるように、プロトコルインターフェース部１０は、ＨＴＭＬ解釈部１１と、ＷＳ解釈部１３とを含む。また、図７に示されるように、ミドルウェアインターフェース部３０は、ＰｒｉｎｔＳＦＩ／Ｆ３１と、ＦＡＸＳＦＩ／Ｆ３２と、ＳｃａｎＳＦＩ／Ｆ３３と、ＳｔｏｒａｇｅＳＦＩ／Ｆ３４と、ＪｏｂＩ／Ｆ３５と、ＳｙｓｔｅｍＩ／Ｆ３６とを含む。
【００４５】
また、Ｗｅｂサービス及びＷｅｂブラウザに対応した融合機１２００は、ＳＦ層又はサービス層としてＰｒｉｎｔＳＦ４１と、ＦＡＸＳＦ４２と、ＳｃａｎＳＦ４３と、ＳｔｏｒａｇｅＳＦ４４と、ＬＣＳ１２３０と、ＳＣＳ１２２２とを含む。
【００４６】
図７に示されるように、図４に示したフレームワークは、Ｗｅｂサービス及びＷｅｂブラウザに対応した融合機１２００に適用することもできる。なお、Ｗｅｂサービス及びＷｅｂブラウザに対応した融合機１２００のプログラムは、Ｗｅｂサービス及びＷｅｂブラウザに対応した融合機１２００に初めからインストールされていてもよいし、例えば記録媒体１によってＷｅｂサービス及びＷｅｂブラウザに対応した融合機１２００に提供されるか、ネットワークを通じてダウンロードされるようにしてもよい。Ｗｅｂサービス及びＷｅｂブラウザに対応した融合機１２００のＣＰＵは、プログラムに従って、処理を実行する。
【００４７】
次に、図４に示したフレームワークを専用クライアントインターフェースに対応した融合機１２００に適用させた場合の、専用クライアントインターフェースに対応した融合機１２００の一例の機能構成を図８に示す。図８は、フレームワークを専用クライアントインターフェースに対応した融合機に適用させた場合の、専用クライアントインターフェースに対応した融合機の一例の機能構成図である。
【００４８】
図８に示されるように、専用クライアントインターフェースに対応した融合機１２００は、ネットワークサービスとして、ｈｔｔｐｄ２００と、ｆｔｐｄ２１０と、ｓｍｔｐｄ２２０とを含む。
【００４９】
また、サーバープラットフォーム１００は、プロトコルインターフェース部１０と、共通機能提供部２０と、ミドルウェアインターフェース部３０と、を含む。図８に示されるように、プロトコルインターフェース部１０は、カスタムＩ／Ｆ解釈部１４を含む。また、図８に示されるように、ミドルウェアインターフェース部３０は、ＰｒｉｎｔＳＦＩ／Ｆ３１と、ＦＡＸＳＦＩ／Ｆ３２と、ＳｃａｎＳＦＩ／Ｆ３３と、ＳｔｏｒａｇｅＳＦＩ／Ｆ３４と、ＪｏｂＩ／Ｆ３５と、ＳｙｓｔｅｍＩ／Ｆ３６とを含む。
【００５０】
また、専用クライアントインターフェースに対応した融合機１２００は、ＳＦ層又はサービス層としてＰｒｉｎｔＳＦ４１と、ＦＡＸＳＦ４２と、ＳｃａｎＳＦ４３と、ＳｔｏｒａｇｅＳＦ４４と、ＬＣＳ１２３０と、ＳＣＳ１２２２とを含む。
【００５１】
図８に示されるように、図４に示したフレームワークは、専用クライアントインターフェースに対応した融合機１２００に適用することもできる。なお、専用クライアントインターフェースに対応した融合機１２００のプログラムは、専用クライアントインターフェースに対応した融合機１２００に初めからインストールされていてもよいし、例えば記録媒体１によって専用クライアントインターフェースに対応した融合機１２００に提供されるか、ネットワークを通じてダウンロードされるようにしてもよい。専用クライアントインターフェースに対応した融合機１２００のＣＰＵは、プログラムに従って、処理を実行する。
【００５２】
次に、共通化するネットワーク経由での処理に係る機能の概念を、図９から図１１を用いて説明する。図９は、印刷操作のシーケンス図（その１）である。
【００５３】
一般的に印刷を要求するクライアントは、クライアントの認証要求をネットワークを介して接続されたサーバーに送信する（シーケンスＳＱ１）。クライアントより認証要求を受信したサーバーは、認証要求に含まれる認証に係るデータ、例えば利用者名とパスワードとに基づいて認証を行う。
【００５４】
認証が成功したクライアントは、セッションの開始要求をサーバーに送信する（シーケンスＳＱ２）。サーバーは、有効なクライアントからのセッションの開始要求か否かを判定し、有効なクライアントからのセッションの開始要求であると判定すると、クライアントとのセッションを開始する。次に、クライアントは、印刷の開始要求をサーバーに送信する（シーケンスＳＱ３）。
【００５５】
サーバーは、要求に基づいて印刷を開始し、印刷が終了すると、印刷の終了通知をクライアントに送信する（シーケンスＳＱ４）。印刷の終了通知を受け取ったクライアントはセッションの終了要求をサーバーに送信する（シーケンスＳＱ５）。
【００５６】
図１０は、文書の参照のシーケンス図（その１）である。一般的に、文書の参照を要求するクライアントはクライアントの認証要求をネットワークを介して接続されたサーバーに送信する（シーケンスＳＱ１０）。クライアントより認証要求を受信したサーバーは、認証要求に含まれる認証に係るデータ、例えば利用者名とパスワードと、に基づいて、認証を行う。
【００５７】
認証が成功したクライアントは、セッションの開始要求をサーバーに送信する（シーケンスＳＱ１１）。サーバーは、有効なクライアントからのセッションの開始要求か否かを判定し、有効なクライアントからのセッションの開始要求であると判定すると、クライアントとのセッションを開始する。
【００５８】
次に、クライアントは、文書の検索開始要求をサーバーに送信する（シーケンスＳＱ１２）。サーバーは、要求に基づいて文書の検索を開始し、検索が終了すると、文書の検索結果通知をクライアントに送信する（シーケンスＳＱ１３）。文書の検索結果通知を受け取ったクライアントは、文書の取得要求をサーバーに送信する（シーケンスＳＱ１４）。クライアントは、文書を取得した後、セッションの終了要求をサーバーに送信する（シーケンスＳＱ１５）。
【００５９】
図１１は、ユーザ情報の変更の一例のシーケンス図である。一般的に、ユーザ情報の変更を要求するクライアントはクライアントの認証要求を、ネットワークを介して接続されたサーバーに送信する（シーケンスＳＱ２０）。クライアントより認証要求を受信したサーバーは、認証要求に含まれる認証に係るデータ、例えば利用者名とパスワードとに基づいて認証を行う。
【００６０】
認証が成功したクライアントは、セッションの開始要求をサーバーに送信する（シーケンスＳＱ２１）。サーバーは、有効なクライアントからのセッションの開始要求か否かを判定し、有効なクライアントからのセッションの開始要求であると判定するとクライアントとのセッションを開始する。
【００６１】
次に、クライアントはユーザ情報の変更指示をサーバーに送信する（シーケンスＳＱ２２）。ユーザ情報の変更が終了すると、クライアントはセッションの終了要求をサーバーに送信する（シーケンスＳＱ２３）。
【００６２】
図９から図１１に示したように、認証や、セッション（利用権）管理に係る処理を行っている点線で囲まれている部分は、共通化可能である。以下、サーバープラットフォーム１００の共通機能提供部２０に実装される、認証・利用権管理に係るクラス間の関係を図１２に示す。
【００６３】
図１２は、認証・利用権管理に係るクラス間の関係を示すクラス図である。図１２に示されるように、共通機能提供部２０は、サービス利用者クラスと、身分証明書クラスと、認証者名簿クラスと、利用権クラスと、利用可能者名簿クラスとを含む。
【００６４】
サービス利用者クラスは、サービスの利用者を表すクラスである。身分証明書クラスはサービス利用者の身分証明書を表すクラスである。認証者名簿クラスは認証済みのサービス利用者の名簿を表すクラスである。利用権クラスは、ある１つのサービスの利用権（セッションに相当）を表すクラスである。利用可能者名簿クラスは、各種サービスの利用可能者の名簿を表すクラスである。
【００６５】
図１３は、サーバープラットフォーム１００の機能構成図（その１）である。図１３に示されるように、共通機能提供部２０は認証・利用権管理部１１１を含む。認証・利用権管理部１１１は、サービス利用者クラスと、身分証明書クラスと、認証者名簿クラスと、利用権クラスと、利用可能者名簿クラスとを含む。図１３に示されるように、サーバープラットフォーム１００は認証及び利用権（セッション）の管理に係る機能を共通化し、共通機能提供部２０に含めることができる。
【００６６】
次に、共通化するネットワーク経由での処理に係る機能の概念の他の例を、図１４及び図１５を用いて説明する。図１４は、文書の参照のシーケンス図（その２）である。
【００６７】
図１０のシーケンスＳＱ１２に示したように、文書の参照を要求するクライアントは文書の検索開始要求をサーバーに送信する（シーケンスＳＱ３０）。文書の検索開始要求を受信したサーバーは、文書の検索開始要求に含まれる情報に基づいて、検索パラメータを作成する（シーケンスＳＱ３１）。続いてサーバーは、作成した検索パラメータをＳｔｏｒａｇｅＳＦ４４に渡して検索処理の依頼を行う（シーケンスＳＱ３２）。
【００６８】
ＳｔｏｒａｇｅＳＦ４４は、渡された検索パラメータに基づいて文書の検索を行い、検索結果をサーバーに通知する（シーケンスＳＱ３３）。サーバーは、ＳｔｏｒａｇｅＳＦ４４より受け取った検索結果を、クライアントに通知する（シーケンスＳＱ３４）。
【００６９】
検索結果を受け取ったクライアントは、例えば指定した文書の取得要求をサーバーに送信する（シーケンスＳＱ３５）。サーバーは、例えば指定された文書の取得要求をＳｔｏｒａｇｅＳＦ４４に渡す（シーケンスＳＱ３６）。
【００７０】
図１５は、ユーザ情報の参照の一例のシーケンス図である。ユーザ情報の参照を要求するクライアントは、ユーザ情報の検索開始要求をサーバーに送信する（シーケンスＳＱ４０）。ユーザ情報の検索開始要求を受信したサーバーは、ユーザ情報の検索開始要求に含まれる情報に基づいて、検索パラメータを作成する（シーケンスＳＱ４１）。続いてサーバーは、作成した検索パラメータをＵＣＳ１２２８に渡して検索処理の依頼を行う（シーケンスＳＱ４２）。
【００７１】
ＵＣＳ１２２８は、渡された検索パラメータに基づいて、ユーザ情報の検索を行い、検索結果を、サーバーに通知する（シーケンスＳＱ４３）。サーバーは、ＵＣＳ１２２８より受け取った検索結果を、クライアントに通知する（シーケンスＳＱ４４）。検索結果を受け取ったクライアントは、例えば指定したユーザ情報の取得要求をサーバーに送信する（シーケンスＳＱ４５）。サーバーは、例えば指定されたユーザ情報の取得要求をＵＣＳ１２２８に渡す（シーケンスＳＱ４６）。
【００７２】
図１４及び図１５に示したように、情報（又はデータ）の参照に係る処理を行っている点線で囲まれている部分は、共通化可能である。以下、サーバープラットフォーム１００の共通機能提供部２０に実装される参照に係るクラス間の関係の一例を図１６に示す。
【００７３】
図１６は、参照に係るクラス間の関係を示すクラス図（その１）である。なお、図１６は、検索した結果をそのまま参照するモデルを表している。図１６に示されるように、共通機能提供部２０は、目録クラスと、参照データクラスと、データ保管庫クラスと、利用権クラスとを含む。
【００７４】
目録クラスは、機器内の情報の検索結果を記入する用紙を表すクラスである。参照データクラスは、目録に記入されている、参照対象となるデータを表すクラスである。データ保管庫クラスは、機器内のデータを保管してあるところを表すクラスである。なお、利用権クラスは、上述したように、ある１つのサービスの利用権（セッションに相当）を表すクラスである。
【００７５】
図１７は、参照に係るクラス間の関係を示すクラス図（その２）である。なお、図１７は、検索した結果に対して、参照するものを選択するモデルを表している。図１７に示されるように、共通機能提供部２０は、情報参照依頼書クラスと、参照データクラスと、データ保管庫クラスと、利用権クラスと、を含む。
【００７６】
情報参照依頼書クラスは、機器内の情報参照の依頼書を表すクラスである。なお、参照データクラスは、上述したように、目録に記入されている、参照対象となるデータを表すクラスである。また、データ保管庫クラスは、上述したように、機器内のデータを保管してあるところを表すクラスである。また、利用権クラスは、上述したように、ある１つのサービスの利用権（セッションに相当）を表すクラスである。なお、以下では説明の簡略化のため、共通機能提供部２０には、図１６に示されるようなクラスが実装されているものとして説明する。
【００７７】
図１８は、サーバープラットフォーム１００の機能構成図（その２）である。図１８に示されるように、共通機能提供部２０は、認証・利用権管理部１１１と、参照部１１２と、を含む。認証・利用権管理部１１１は、利用権クラスを含む。また、参照部１１２は、目録クラスと、参照データクラスと、データ保管庫クラスとを含む。図１８に示されるように、サーバープラットフォーム１００は機器内のデータ（又は情報）の参照に係る機能を共通化し、共通機能提供部２０に含めることができる。
【００７８】
次に、共通化するネットワーク経由での処理に係る機能の概念の他の例を、図１９及び図２０を用いて説明する。
【００７９】
図１９は、文書情報の設定の一例のシーケンス図である。文書情報の変更を要求するクライアントは文書情報の変更要求をサーバーに送信する（シーケンスＳＱ５０）。文書情報の変更要求を受信したサーバーは、文書情報の変更要求に含まれる情報に基づいて変更パラメータを作成する（シーケンスＳＱ５１）。続いてサーバーは、作成した変更パラメータをＳｔｏｒａｇｅＳＦ４４に渡して変更処理の依頼を行う（シーケンスＳＱ５２）。
【００８０】
図２０はユーザ情報の設定の一例のシーケンス図である。ユーザ情報の変更を要求するクライアントはユーザ情報の変更要求をサーバーに送信する（シーケンスＳＱ６０）。ユーザ情報の変更要求を受信したサーバーは、ユーザ情報の変更要求に含まれる情報に基づいて、変更パラメータを作成する（シーケンスＳＱ６１）。続いてサーバーは、作成した変更パラメータをＵＣＳ１２２８に渡して変更処理の依頼を行う（シーケンスＳＱ６２）。
【００８１】
図１９及び図２０に示したように、情報（又はデータ）の設定に係る処理を行っている点線で囲まれている部分は、共通化可能である。以下、サーバープラットフォーム１００の共通機能提供部２０に実装される設定に係るクラス間の関係を図２１に示す。
【００８２】
図２１は、設定に係るクラス間の関係を示すクラス図である。図２１に示されるように共通機能提供部２０は、情報設定依頼書クラスと、登録データクラスと、情報設定サービスクラスと、利用権クラスとを含む。
【００８３】
情報設定依頼書クラスは、機器内の情報設定の依頼書を表すクラスである。登録データクラスは、設定時、機器内に登録するデータを表すクラスである。情報設定サービスクラスは、機器内の情報の設定を行うサービスを表すクラスである。利用権クラスは、上述したように、ある１つのサービスの利用権（セッションに相当）を表すクラスである。
【００８４】
次に、情報設定依頼書クラスの情報設定依頼書オブジェクトの状態遷移を、図２２に示す。図２２は、情報設定依頼書の一例の状態遷移図である。
【００８５】
情報設定依頼書オブジェクトは、クライアントからの情報設定要求イベントがあると依頼中の状態になる。情報設定依頼書オブジェクトは、ＳＦからの受け付け不可通知イベントがあると、依頼中の状態から依頼失敗の状態になって終了状態となる。また、情報設定依頼書オブジェクトはＳＦからの受け付け完了通知イベントがあると、依頼中の状態から依頼済みの状態になって終了状態となる。
【００８６】
図２３は、サーバープラットフォーム１００の機能構成図（その３）である。図２３に示されるように、共通機能提供部２０は、認証・利用権管理部１１１と、設定部１１３とを含む。認証・利用権管理部１１１は、利用権クラスを含む。また、設定部１１３は、情報設定依頼書クラスと、登録データクラスと、情報設定サービスクラスとを含む。図２３に示されるように、サーバープラットフォーム１００は機器内の情報（又はデータ）の設定に係る機能を共通化し、共通機能提供部２０に含めることができる。
【００８７】
次に、共通化するネットワーク経由での処理に係る機能の概念の他の例を、図２４及び図２５を用いて説明する。図２４は、印刷操作のシーケンス図（その２）である。
【００８８】
図９のシーケンスＳＱ３に示したように、印刷の開始を要求するクライアントは、印刷の開始要求をサーバーに送信する（シーケンスＳＱ７０）。印刷の開始要求を受信したサーバーは、印刷の開始要求に含まれる情報に基づいて、印刷パラメータを作成する（シーケンスＳＱ７１）。続いてサーバーは、作成した印刷パラメータをＰｒｉｎｔＳＦ４１に渡して印刷処理の依頼を行う（シーケンスＳＱ７２）。ＰｒｉｎｔＳＦ４１は、渡された印刷パラメータに基づいて、印刷処理を行い、印刷結果を、サーバーに通知する（シーケンスＳＱ７３）。
【００８９】
図２５は、スキャナ操作の一例のシーケンス図である。スキャンの開始を要求するクライアントは、スキャンの開始要求をサーバーに送信する（シーケンスＳＱ８０）。スキャンの開始要求を受信したサーバーは、スキャンの開始要求に含まれる情報に基づいて、スキャンパラメータを作成する（シーケンスＳＱ８１）。
【００９０】
続いてサーバーは、作成したスキャンパラメータをＳｃａｎＳＦ４３に渡してスキャン処理の依頼を行う（シーケンスＳＱ８２）。ＳｃａｎＳＦ４３は、渡されたスキャンパラメータに基づいて、スキャン処理を行い、スキャン結果を、サーバーに通知する（シーケンスＳＱ８３）。
【００９１】
図２４及び図２５に示したように、操作に係る処理を行っている点線で囲まれている部分は、共通化可能である。以下、サーバープラットフォーム１００の共通機能提供部２０に実装される操作に係るクラス間の関係を図２６に示す。図２６は、操作に係るクラス間の関係を示すクラス図である。
【００９２】
図２６に示されるように、共通機能提供部２０は、ジョブ操作依頼書クラスと、操作対象クラスと、ジョブ操作実施サービスクラスと、利用権クラスとを含む。ジョブ操作依頼書クラスは、ジョブ実施のための依頼書を表すクラスである。なお、ここで、ジョブとは完了までに時間がかかり、完了通知がＳＦ層から別途通知されるものとする。操作対象クラスは、ジョブ操作の対象物を表すクラスである。ジョブ操作実施サービスクラスは、機器内の、ジョブ操作を行うサービスを表すクラスである。なお、利用権クラスは、上述したように、ある１つのサービスの利用権（セッションに相当）を表すクラスである。
【００９３】
次に、ジョブ操作依頼書クラスのジョブ操作依頼書オブジェクトの状態遷移を、図２７に示す。図２７は、ジョブ操作依頼書の一例の状態遷移図である。
【００９４】
ジョブ操作依頼書オブジェクトは、クライアントからのジョブ操作要求イベントがあると、依頼中の状態になる。ジョブ操作依頼書オブジェクトは、ＳＦからの受け付け不可通知イベントがあると、依頼中の状態から依頼失敗の状態になって終了状態となる。
【００９５】
また、ジョブ操作依頼書オブジェクトは、ＳＦからの受け付け完了通知イベントがあると、依頼中の状態から実行中の状態になる。ジョブ操作依頼書オブジェクトは、ＳＦからの実行失敗通知イベントがあると、実行中の状態から実行失敗の状態になって終了状態となる。また、ジョブ操作依頼書オブジェクトは、ＳＦからの実行完了通知イベントがあると、実行中の状態から実行済みの状態になって終了状態となる。
【００９６】
図２８は、サーバープラットフォーム１００の機能構成図（その４）である。図２８に示されるように、共通機能提供部２０は、認証・利用権管理部１１１と、ジョブ操作部１１４とを含む。認証・利用権管理部１１１は、利用権クラスを含む。また、ジョブ操作部１１４は、ジョブ操作依頼書クラスと、操作対象クラスと、ジョブ操作実施サービスクラスとを含む。図２８に示されるように、ジョブに対する操作に係る機能を共通化し、共通機能提供部２０に含めることができる。
【００９７】
図２９は、サーバープラットフォーム１００の全体の機能構成図である。図２９に示されるように、共通機能提供部２０は、認証・利用権管理部１１１と、参照部１１２と、設定部１１３と、ジョブ操作部１１４とを含む。
【００９８】
認証・利用権管理部１１１は、サービス利用者クラスと、身分証明書クラスと、認証者名簿クラスと、利用権クラスと、利用可能者名簿クラスとを含む。参照部１１２は、目録クラスと、参照データクラスと、データ保管庫クラスとを含む。設定部１１３は、情報設定依頼書クラスと、登録データクラスと、情報設定サービスクラスとを含む。また、ジョブ操作部１１４はジョブ操作依頼書クラスと、操作対象クラスと、ジョブ操作実施サービスクラスとを含む。
【００９９】
図２９に示されるように、ネットワーク経由での処理に係る機能を、共通化し、共通機能提供部２０にまとめることができる。このようにネットワーク経由での処理に係る機能を共通化することによって、設計工数を減少させ、１つのアプリケーションのコードサイズも小さくすることができる。また、共通機能提供部２０の評価を行ってしまえば、同じ仕様、同じ品質のサービスを各アプリで使用することが可能となり、品質の確保も可能となる。
【０１００】
図３０は、ＳＦとサーバープラットフォームとの連携を示す図（その１）である。図３０に示されるように、サーバープラットフォーム１００の共通機能提供部２０のジョブ操作部１１４には、ジョブ操作依頼書クラスと、操作対象クラスと、ジョブ操作実施サービスクラスとが実装されている。
【０１０１】
ミドルウェアインターフェース部３０のＰｒｉｎｔＳＦＩ／Ｆ３１に実装されている印刷サービスクラスは、ジョブ操作実施サービスクラスを継承している。また、ミドルウェアインターフェース部３０のＰｒｉｎｔＳＦＩ／Ｆ３１に実装されている印刷文書クラスは操作対象クラスを継承している。例えばジョブ操作実施サービスクラスの操作実行メソッドがコールされると、印刷サービスクラスの印刷実行メソッドがコールされ、ＰｒｉｎｔＳＦ４１が実行される。
【０１０２】
図３１はＳＦとサーバープラットフォームとの連携を示す図（その２）である。図３１に示されるように、サーバープラットフォーム１００の共通機能提供部２０の参照部１１２には目録クラスと、参照データクラスと、データ保管庫クラスとが実装されている。ミドルウェアインターフェース部３０のＳｔｏｒａｇｅＳＦＩ／Ｆ３４に実装されている文書保管サービスクラスは、データ保管庫クラスを継承している。ミドルウェアインターフェース部３０のＳｔｏｒａｇｅＳＦＩ／Ｆ３４に実装されている保管文書クラスは参照データクラスを継承している。例えばデータ保管庫クラスのメソッドがコールされると、文書保管サービスクラスのメソッドがコールされ、ＳｔｏｒａｇｅＳＦ３４が実行される。
【０１０３】
図３２は、ＳＦ層とサービス層とのインターフェースの違いを示す図である。図３２に示されるように、ＳＦ層のｓｅａｒｃｈＤｏｃｕｍｅｎｔメソッドに対応して、サービス層には、ＧｅｔＦｉｌｅＬｉｓｔメソッドと、ＯｐｅｎＦｉｌｅメソッドと、ＧｅｔＦｉｌｅＩｎｆｏメソッドと、ＣｌｏｓｅＦｉｌｅメソッドと、が実装されている。
【０１０４】
また、ＳＦ層のｃｈａｎｇｅＤｏｃｕｍｅｎｔメソッドに対応して、サービス層には、ＯｐｅｎＦｉｌｅメソッドと、ＷｒｉｔｅＦｉｌｅメソッドと、ＣｌｏｓｅＦｉｌｅメソッドと、が実装されている。
【０１０５】
また、ＳＦ層のｓｃａｎＤｏｃｕｍｅｎｔメソッドに対応して、サービス層には、ＣｈｅｃｋＳｃａｎＰａｒａｍメソッドと、ＳｔａｒｔＳｃａｎメソッドと、ＥｎｄＳｃａｎメソッドと、ＣｒｅａｔｅＦｉｌｅメソッドと、が実装されている。
【０１０６】
また、ＳＦ層のｐｒｉｎｔＤｏｃｕｍｅｎｔメソッドに対応して、サービス層には、ＣｒｅａｔｅＰｒｉｎｔＤａｔａメソッドと、ＳｔａｒｔＰｒｉｎｔメソッドと、ＤｅｌｅｔｅＰｒｉｎｔＤａｔａメソッドと、が実装されている。
【０１０７】
また、ＳＦ層のｐｒｉｎｔＳｔｏｒｅｄＤｏｃｕｍｅｎｔメソッドに対応して、サービス層には、ＯｐｅｎＦｉｌｅメソッドと、ＧｅｔＦｉｌｅＩｎｆｏメソッドと、ＣｌｏｓｅＦｉｌｅメソッドと、ＣｈｅｃｋＰｒｉｎｔＰａｒａｍメソッドと、ＳｔａｒｔＰｒｉｎｔメソッドと、ＥｎｄＰｒｉｎｔメソッドと、が実装されている。
【０１０８】
ＳＦ層のメソッドは、処理単位がＤｏｃｕｍｅｎｔであり、ユーザよりの処理単位かつ表現形式となっている。一方、サービス層のメソッドは処理単位がＦｉｌｅであり、機械よりの処理単位かつ表現形式となっている。
【０１０９】
次に、サーバープラットフォーム１００の共通機能提供部２０に実装されるクラス間の全体の関係の一例を、図３３に示す。図３３は、全体のクラス間の関係を示すクラス図である。なお、図３３では、ジョブ操作の一例として、文書操作を例としてクラスを示している。
【０１１０】
図３３に示されるように、サービス利用者クラスは、属性値として、身分証明書と、身分審査状態とを含み、メソッドとして、身元確認メソッドと、利用権取得メソッドと、利用権返却メソッドとを含む。認証者名簿クラスは、属性値として登録者数を含み、メソッドとして身元照会メソッドを含む。身分証明書クラスは、属性値として、利用者名と、パスワードと、を含む。
【０１１１】
また、利用権クラスは、属性値として、利用可能機能と、有効期限と、発行状態と、を含み、メソッドとして、取得メソッドと、返却メソッドと、有効期限延長メソッドと、利用権審査メソッドと、サービス実行依頼メソッドと、文書操作要求メソッドと、文書操作結果通知メソッドと、情報設定要求メソッドと、目録作成要求メソッドと、データ参照要求メソッドとを含む。
【０１１２】
また、利用可能者名簿クラスは、属性として、登録者数を含み、メソッドとして、権限審査メソッドを含む。また、目録クラスは、属性値として、検索条件と、検索状態とを含み、メソッドとして、目録作成メソッドと、記入メソッドと、データ参照メソッドとを含む。
【０１１３】
また、参照データクラスは、属性値として、データ種別と、データ内容と、データ参照状態とを含み、メソッドとして、参照メソッドを含む。また、データ保管庫クラスは、属性値として、保管データ種別を含み、メソッドとして、記入開始メソッドと、詳細情報取得メソッドとを含む。
【０１１４】
また、情報設定依頼書クラスは、属性値として、設定情報種別と、依頼結果と、設定依頼状態とを含み、メソッドとして、情報設定依頼メソッドを含む。また、登録データクラスは、属性として、データ種類と、データ内容とを含む。また、情報設定サービスクラスは、属性として、情報設定項目を含み、メソッドとして、情報設定メソッドを含む。
【０１１５】
また、ジョブ操作依頼書クラスは、属性値として、操作種別と、操作パラメータと、操作結果と、操作依頼状態とを含み、メソッドして、操作実行依頼メソッドと、操作完了通知メソッドとを含む。
【０１１６】
また、文書クラスは、属性値として、識別子と、保管場所とを含む。また、文書操作実施サービスクラスは、属性値として、担当操作を含み、メソッドとして、操作開始メソッドと、操作完了メソッドとを含む。また、サービス保管庫クラスは、属性値としてサービス数を含み、メソッドとして、サービス一覧取得メソッドと、担当サービス決定メソッドと、サービス詳細情報取得メソッドとを含む。
【０１１７】
図２９では、共通機能提供部２０を認証・利用権管理部１１１と、参照部１１２と、設定部１１３と、ジョブ操作部１１４とで構成していたが、図３４に示すように、単一の構造とすることもできる。図３４は、単一の構造とした場合の共通機能提供部２０を表すクラス図である。
【０１１８】
図３４に示されるように、共通機能提供部２０はサービス利用者クラスと、身分証明書クラスと、認証者名簿クラスと、利用権クラスと、利用可能者名簿クラスと、依頼書クラスと、サービスクラスとを含む。
【０１１９】
サービス利用者クラスは、サービスの利用者を表すクラスである。身分証明書クラスはサービス利用者の身分証明書を表すクラスである。認証者名簿クラスは認証済みのサービス利用者の名簿を表すクラスである。利用権クラスは、ある１つのサービスの利用権（セッションに相当）を表すクラスである。利用可能者名簿クラスは、各種サービスの利用可能者の名簿を表すクラスである。サービスクラスは、サービス利用者が利用可能なサービスを表すクラスである。依頼書クラスは、処理の依頼書を表すクラスである。
【０１２０】
次に、共通化するネットワーク経由での処理に係る機能の概念を説明する。図３５は要求・応答系操作を表す一例のフローチャートである。一般的に処理を要求するクライアントは、ステップＳ１に進み、処理要求をネットワークを介して接続されたサーバーに送信する。クライアントより処理要求を受けたサーバーは、ステップＳ２に進み、後述する図４０に示すような属性を持つ依頼書の作成を行う。さらに、サーバーはステップＳ３に進み、利用権限チェックを行う。
【０１２１】
利用権限チェックがＯＫであれば（Ｓ３においてＯＫ）、サーバーはステップＳ４に進んで処理要求に対応した処理依頼を行う。ステップＳ５に進み、サーバーはステップＳ２で作成した依頼書を破棄する。ステップＳ６に進み、サーバーはクライアントに結果応答を行う。
【０１２２】
なお、利用権限チェックがＮＧであれば（Ｓ３においてＮＧ）、サーバーはステップＳ７に進み、ステップＳ２で作成した依頼書を破棄する。ステップＳ８に進み、サーバーはクライアントに結果応答を行う。利用権限チェックがＯＫのときのコラボレーション図は図３６のようになる。
【０１２３】
図３７はジョブ系操作を表す一例のフローチャートである。一般的に処理を要求するクライアントは、ステップＳ１１に進み、処理要求をサーバーに送信する。クライアントより処理要求を受けたサーバーは、ステップＳ１２に進み、依頼書の作成を行う。さらに、サーバーはステップＳ１３に進み、利用権限チェックを行う。
【０１２４】
利用権限チェックがＯＫであれば（Ｓ１３においてＯＫ）、サーバーはステップＳ１４に進んで処理要求に対応した処理依頼を行う。ステップＳ１５に進み、サーバーはジョブ系操作であるか否かを判定する。ジョブ系操作でなければ（Ｓ１５においてＮＯ）、サーバーはステップＳ１６に進み、依頼書を破棄する。そして、ステップＳ８に進み、サーバーはクライアントに結果応答を行う。
【０１２５】
なお、利用権限チェックがＮＧであれば（Ｓ１３においてＮＧ）、サーバーはステップＳ１８に進み、ステップＳ１２で作成した依頼書を破棄する。ステップＳ１９に進み、サーバーはクライアントに結果応答を行う。
【０１２６】
一方、ジョブ系操作であれば（Ｓ１５においてＹＥＳ）、サーバーはステップＳ２０に進み、クライアントに結果応答を行う。サーバーは、処理終了通知があるまでステップＳ２１の処理を繰り返し行う（Ｓ２１においてＮＯ）。そして、処理終了通知があると（Ｓ２１においてＹＥＳ）、サーバーはステップＳ２２に進み、ステップＳ２で作成した依頼書を破棄する。ジョブ系操作のときのコラボレーション図は図３８のようになる。
【０１２７】
図３９は、サーバープラットフォーム１００の全体の機能構成図である。図３９に示されるように、共通機能提供部２０は、単一の構造とすることができる。サーバープラットフォーム１００の共通機能提供部２０に実装されるクラス間の全体の関係の一例は、図４０に示すようになる。
【０１２８】
以下、図２９に示したようなサーバープラットフォーム１００を有する図４に示したようなフレームワークを、プリンタや、融合機１２００以外に適用させた場合の例を、図４１から図４４を用いて説明する。なお、図４１から図４４に示した各種デーモンは一例であって、一部のデーモンが含まれていない構成や他のデーモンが含まれている構成であってもよい。
【０１２９】
初めに、フレームワークを、ＡＶ（Ａｕｄｉｏ  Ｖｉｓｕａｌ）機器に適用させた場合の、ＡＶ機器の一例の機能構成を、図４１に示す。図４１は、フレームワークをＡＶ機器に適用させた場合の、ＡＶ機器の一例の機能構成図である。図４１に示されるように、ＡＶ機器は、ネットワークサービスとして、ｈｔｔｐｄ２００と、ｆｔｐｄ２１０と、ｓｍｔｐｄ２２０と、を含む。
【０１３０】
また、サーバープラットフォーム１００は、プロトコルインターフェース部１０と、共通機能提供部２０と、ミドルウェアインターフェース部３０と、を含む。図４１に示されるように、プロトコルインターフェース部１０は、ＨＴＭＬ解釈部１１と、ＵＰｎＰ解釈部１２と、ＷＳ解釈部１３と、カスタムＩ／Ｆ解釈部１４と、を含む。また、図４１に示されるように、ミドルウェアインターフェース部３０は、画像ＳＦＩ／Ｆ５１と、音声ＳＦＩ／Ｆ５２と、ＴＶＳＦＩ／Ｆ５３と、ＳｔｏｒａｇｅＳＦＩ／Ｆ５４と、電話ＳＦＩ／Ｆ５５と、ＳｙｓｔｅｍＩ／Ｆ５６と、を含む。
【０１３１】
また、ＡＶ機器は、ＳＦ層又はサービス層として、画像機能を提供する画像ＳＦ６１と、音声機能を提供する音声ＳＦ６２と、ＴＶ機能を提供するＴＶＳＦ６３と、Ｓｔｏｒａｇｅ機能を提供するＳｔｏｒａｇｅＳＦ６４と、電話機能を提供する電話ＳＦ６５と、ＡＶ機器のシステムの制御に係る機能を提供するＳＣＳ６６と、を含む。
【０１３２】
図４１に示されるように、図２９に示したようなサーバープラットフォーム１００を有する図４に示したようなフレームワークを、ＡＶ機器に適用することもできる。なお、ＡＶ機器のプログラムは、ＡＶ機器に初めからインストールされていてもよいし、例えば記録媒体１によってＡＶ機器に提供されるか、ネットワークを通じてダウンロードされるようにしてもよい。ＡＶ機器のＣＰＵは、プログラムに従って、処理を実行する。
【０１３３】
以下、フレームワークを、調理機器に適用させた場合の、調理機器の一例の機能構成を、図４２に示す。図４２は、フレームワークを調理機器に適用させた場合の、調理機器の一例の機能構成図である。
【０１３４】
図４２に示されるように、調理機器は、ネットワークサービスとして、ｈｔｔｐｄ２００と、ｆｔｐｄ２１０と、ｓｍｔｐｄ２２０と、を含む。
【０１３５】
また、サーバープラットフォーム１００は、プロトコルインターフェース部１０と、共通機能提供部２０と、ミドルウェアインターフェース部３０と、を含む。図４２に示されるように、プロトコルインターフェース部１０は、ＨＴＭＬ解釈部１１と、ＵＰｎＰ解釈部１２と、ＷＳ解釈部１３と、カスタムＩ／Ｆ解釈部１４と、を含む。また、図４２に示されるように、ミドルウェアインターフェース部３０は、加熱ＳＦＩ／Ｆ７１と、冷却ＳＦＩ／Ｆ７２と、炊飯ＳＦＩ／Ｆ７３と、解凍ＳＦＩ／Ｆ７４と、ＳｙｓｔｅｍＩ／Ｆ７５と、を含む。
【０１３６】
また、調理機器は、ＳＦ層又はサービス層として、加熱機能を提供する加熱ＳＦ８１と、冷却機能を提供する冷却ＳＦ８２と、炊飯機能を提供する炊飯ＳＦ８３と、解凍機能を提供する解凍ＳＦ８４と、調理機器のシステムの制御に係る機能を提供するＳＣＳ８５と、を含む。
【０１３７】
図４２に示されるように、図２９に示したようなサーバープラットフォーム１００を有する図４に示したようなフレームワークを、調理機器に適用することもできる。なお、調理機器のプログラムは、調理機器に初めからインストールされていてもよいし、例えば記録媒体１によって調理機器に提供されるか、ネットワークを通じてダウンロードされるようにしてもよい。調理機器のＣＰＵは、プログラムに従って、処理を実行する。
【０１３８】
以下、フレームワークを、エアコンに適用させた場合の、エアコンの一例の機能構成を、図４３に示す。図４３は、フレームワークをエアコンに適用させた場合の、エアコンの一例の機能構成図である。
【０１３９】
図４３に示されるように、エアコンは、ネットワークサービスとして、ｈｔｔｐｄ２００と、ｆｔｐｄ２１０と、ｓｍｔｐｄ２２０と、を含む。
【０１４０】
また、サーバープラットフォーム１００は、プロトコルインターフェース部１０と、共通機能提供部２０と、ミドルウェアインターフェース部３０と、を含む。図４３に示されるように、プロトコルインターフェース部１０は、ＨＴＭＬ解釈部１１と、ＵＰｎＰ解釈部１２と、ＷＳ解釈部１３と、カスタムＩ／Ｆ解釈部１４と、を含む。また、図４３に示されるように、ミドルウェアインターフェース部３０は、暖房ＳＦＩ／Ｆ９１と、冷房ＳＦＩ／Ｆ９２と、除湿ＳＦＩ／Ｆ９３と、保湿ＳＦＩ／Ｆ９４と、除菌ＳＦＩ／Ｆ９５と、ＳｙｓｔｅｍＩ／Ｆ９６と、を含む。
【０１４１】
また、エアコンは、ＳＦ層又はサービス層として、暖房機能を提供する暖房ＳＦ１４１と、冷房機能を提供する冷房ＳＦ１４２と、除湿機能を提供する除湿ＳＦ１４３と、保湿機能を提供する保湿ＳＦ１４４と、除菌機能を提供する除菌ＳＦ１４５と、エアコンのシステムの制御に係る機能を提供するＳＣＳ１４６と、を含む。
【０１４２】
図４３に示されるように、図２９に示したようなサーバープラットフォーム１００を有する図４に示したようなフレームワークを、エアコンに適用することもできる。なお、エアコンのプログラムは、エアコンに初めからインストールされていてもよいし、例えば記録媒体１によってエアコンに提供されるか、ネットワークを通じてダウンロードされるようにしてもよい。エアコンのＣＰＵは、プログラムに従って、処理を実行する。
【０１４３】
以下、フレームワークを、洗濯機に適用させた場合の、洗濯機の一例の機能構成を、図４４に示す。図４４は、フレームワークを洗濯機に適用させた場合の、洗濯機の一例の機能構成図である。
【０１４４】
図４４に示されるように、洗濯機は、ネットワークサービスとして、ｈｔｔｐｄ２００と、ｆｔｐｄ２１０と、ｓｍｔｐｄ２２０と、を含む。
【０１４５】
また、サーバープラットフォーム１００は、プロトコルインターフェース部１０と、共通機能提供部２０と、ミドルウェアインターフェース部３０と、を含む。図４４に示されるように、プロトコルインターフェース部１０は、ＨＴＭＬ解釈部１１と、ＵＰｎＰ解釈部１２と、ＷＳ解釈部１３と、カスタムＩ／Ｆ解釈部１４と、を含む。また、図４４に示されるように、ミドルウェアインターフェース部３０は、給水ＳＦＩ／Ｆ１２１と、洗濯ＳＦＩ／Ｆ１２２と、脱水ＳＦＩ／Ｆ１２３と、乾燥ＳＦＩ／Ｆ１２４と、除菌ＳＦＩ／Ｆ１２５と、ＳｙｓｔｅｍＩ／Ｆ１２６と、を含む。
【０１４６】
また、洗濯機は、ＳＦ層又はサービス層として、給水機能を提供する給水ＳＦ１３１と、洗濯機能を提供する洗濯ＳＦ１３２と、脱水機能を提供する脱水ＳＦ１３３と、乾燥機能を提供する乾燥ＳＦ１３４と、除菌機能を提供する除菌ＳＦ１３５と、洗濯機のシステムの制御に係る機能を提供するＳＣＳ１３６と、を含む。
【０１４７】
図４４に示されるように、図２９に示したようなサーバープラットフォーム１００を有する図４に示したようなフレームワークを、洗濯機に適用することもできる。なお、洗濯機のプログラムは、洗濯機に初めからインストールされていてもよいし、例えば記録媒体１によって洗濯機に提供されるか、ネットワークを通じてダウンロードされるようにしてもよい。洗濯機のＣＰＵは、プログラムに従って、処理を実行する。
【０１４８】
上述の如く、本発明によれば開発が容易で、品質が確保されたサービスを提供可能な、サービス提供装置、サービス提供プログラム、記録媒体及びサービス提供方法を提供することができる。
【０１４９】
以上、本発明の好ましい実施例について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【図面の簡単な説明】
【０１５０】
【図１】従来の融合機の機能構成図である。
【図２】ＳＦを実装した融合機の一例の機能構成図である。
【図３】本発明に係る融合機の一例の機能構成図である。
【図４】フレームワークの全体の機能構成図である。
【図５】フレームワークをＵＰｎＰ対応プリンタに適用させた場合の、ＵＰｎＰ対応プリンタの一例の機能構成図である。
【図６】フレームワークをブラウザによる機器管理可能プリンタに適用させた場合の、ブラウザによる機器管理可能プリンタの一例の機能構成図である。
【図７】フレームワークをＷｅｂサービス及びＷｅｂブラウザに対応した融合機に適用させた場合の、Ｗｅｂサービス及びＷｅｂブラウザに対応した融合機の一例の機能構成図である。
【図８】フレームワークを専用クライアントインターフェースに対応した融合機に適用させた場合の、専用クライアントインターフェースに対応した融合機の一例の機能構成図である。
【図９】印刷操作のシーケンス図（その１）である。
【図１０】文書の参照のシーケンス図（その１）である。
【図１１】ユーザ情報の変更の一例のシーケンス図である。
【図１２】認証・利用権管理に係るクラス間の関係を示すクラス図である。
【図１３】サーバープラットフォームの機能構成図（その１）である。
【図１４】文書の参照のシーケンス図（その２）である。
【図１５】ユーザ情報の参照の一例のシーケンス図である。
【図１６】参照に係るクラス間の関係を示すクラス図（その１）である。
【図１７】参照に係るクラス間の関係を示すクラス図（その２）である。
【図１８】サーバープラットフォームの機能構成図（その２）である。
【図１９】文書情報の設定の一例のシーケンス図である。
【図２０】ユーザ情報の設定の一例のシーケンス図である。
【図２１】設定に係るクラス間の関係を示すクラス図である。
【図２２】情報設定依頼書の一例の状態遷移図である。
【図２３】サーバープラットフォームの機能構成図（その３）である。
【図２４】印刷操作のシーケンス図（その２）である。
【図２５】スキャナ操作の一例のシーケンス図である。
【図２６】操作に係るクラス間の関係を示すクラス図である。
【図２７】ジョブ操作依頼書の一例の状態遷移図である。
【図２８】サーバープラットフォームの機能構成図（その４）である。
【図２９】サーバープラットフォームの全体の機能構成図である。
【図３０】ＳＦとサーバープラットフォームとの連携を示す図（その１）である。
【図３１】ＳＦと、サーバープラットフォームと、の連携を示す図（その２）である。
【図３２】ＳＦ層とサービス層とのインターフェースの違いを示す図である。
【図３３】全体のクラス間の関係を示すクラス図である。
【図３４】単一の構造とした場合の共通機能提供部を表すクラス図である。
【図３５】要求・応答系操作を表す一例のフローチャートである。
【図３６】利用権限チェックがＯＫのときのコラボレーション図である。
【図３７】ジョブ系操作を表す一例のフローチャートである。
【図３８】ジョブ系操作のときのコラボレーション図である。
【図３９】サーバープラットフォームの全体の機能構成図である。
【図４０】全体のクラス間の関係を示すクラス図である。
【図４１】フレームワークをＡＶ機器に適用させた場合の、ＡＶ機器の一例の機能構成図である。
【図４２】フレームワークを調理機器に適用させた場合の、調理機器の一例の機能構成図である。
【図４３】フレームワークをエアコンに適用させた場合の、エアコンの一例の機能構成図である。
【図４４】フレームワークを洗濯機に適用させた場合の、洗濯機の一例の機能構成図である。
【符号の説明】
【０１５１】
１０    プロトコルインターフェース部
１１    ＨＴＭＬ解釈部
１２    ＵＰｎＰ解釈部
１３    ＷＳ解釈部
１４    カスタムＩ／Ｆ解釈部
２０    共通機能提供部
３０    ミドルウェアインターフェース部
３１    ＰｒｉｎｔＳＦＩ／Ｆ
３２    ＦＡＸＳＦＩ／Ｆ
３３    ＳｃａｎＳＦＩ／Ｆ
３４    ＳｔｏｒａｇｅＳＦＩ／Ｆ
３５    ＪｏｂＳＦＩ／Ｆ
３６    ＳｙｓｔｅｍＩ／Ｆ
４１    ＰｒｉｎｔＳＦ
４２    ＦＡＸＳＦ
４３    ＳｃａｎＳＦ
４４    ＳｔｏｒａｇｅＳＦ
１００    サーバープラットフォーム
１１１    認証・利用権管理部
１１２    参照部
１１３    設定部
１１４    ジョブ操作部
２００    ｈｔｔｐｄ
２１０    ｆｔｐｄ
２２０    ｓｍｔｐｄ
１２００    融合機
１２３０    ＬＣＳ
１２２２    ＳＣＳ
【図１】
2005339520.tif 000003
【図２】
2005339520.tif 000004
【図３】
2005339520.tif 000005
【図４】
2005339520.tif 000006
【図５】
2005339520.tif 000007
【図６】
2005339520.tif 000008
【図７】
2005339520.tif 000009
【図８】
2005339520.tif 000010
【図９】
2005339520.tif 000011
【図１０】
2005339520.tif 000012
【図１１】
2005339520.tif 000013
【図１２】
2005339520.tif 000014
【図１３】
2005339520.tif 000015
【図１４】
2005339520.tif 000016
【図１５】
2005339520.tif 000017
【図１６】
2005339520.tif 000018
【図１７】
2005339520.tif 000019
【図１８】
2005339520.tif 000020
【図１９】
2005339520.tif 000021
【図２０】
2005339520.tif 000022
【図２１】
2005339520.tif 000023
【図２２】
2005339520.tif 000024
【図２３】
2005339520.tif 000025
【図２４】
2005339520.tif 000026
【図２５】
2005339520.tif 000027
【図２６】
2005339520.tif 000028
【図２７】
2005339520.tif 000029
【図２８】
2005339520.tif 000030
【図２９】
2005339520.tif 000031
【図３０】
2005339520.tif 000032
【図３１】
2005339520.tif 000033
【図３２】
2005339520.tif 000034
【図３３】
2005339520.tif 000035
【図３４】
2005339520.tif 000036
【図３５】
2005339520.tif 000037
【図３６】
2005339520.tif 000038
【図３７】
2005339520.tif 000039
【図３８】
2005339520.tif 000040
【図３９】
2005339520.tif 000041
【図４０】
2005339520.tif 000042
【図４１】
2005339520.tif 000043
【図４２】
2005339520.tif 000044
【図４３】
2005339520.tif 000045
【図４４】
2005339520.tif 000046