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

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

Info

Publication number
JP2012084088A
JP2012084088A JP2010231950A JP2010231950A JP2012084088A JP 2012084088 A JP2012084088 A JP 2012084088A JP 2010231950 A JP2010231950 A JP 2010231950A JP 2010231950 A JP2010231950 A JP 2010231950A JP 2012084088 A JP2012084088 A JP 2012084088A
Authority
JP
Japan
Prior art keywords
function
module
availability
response
information processing
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
JP2010231950A
Other languages
English (en)
Other versions
JP5682220B2 (ja
Inventor
Kotaro Shibata
浩太郎 柴田
Hideteru Furukawa
英照 古川
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 JP2010231950A priority Critical patent/JP5682220B2/ja
Priority to US13/238,039 priority patent/US8745623B2/en
Priority to CN201110309737.8A priority patent/CN102591723B/zh
Publication of JP2012084088A publication Critical patent/JP2012084088A/ja
Application granted granted Critical
Publication of JP5682220B2 publication Critical patent/JP5682220B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44536Selecting among different versions

Landscapes

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

Abstract

【課題】複数の機能モジュールの組み合わせを容易に管理できる情報処理装置、情報処理方法、及び情報処理プログラムを提供する。
【解決手段】情報処理装置は、複数の機能モジュール間において、機能利用側の機能モジュール17aと機能提供側の機能モジュール17bとを連携して実行し、搭載アプリケーションの機能が実現されるソフトウェア環境を有する装置であって、機能利用側の機能モジュール17aから機能提供側の機能モジュール17bに対して、機能提供側の機能モジュール17bによる提供機能を利用可能か否かの問い合わせ要求を行う手段22と、機能提供側の機能モジュール17bから機能利用側の機能モジュール17aに対して、利用可否結果を応答する手段21と、応答された利用可否結果に基づき、機能利用側の機能モジュール17aによる提供機能の実行を制御する手段20と、を有する。
【選択図】図3

Description

本発明は、アプリケーション機能提供時に実行されるプログラムモジュールの組み合わせを管理する技術に関するものである。
現在、情報処理装置において、利用者に対し、機能を提供するアプリケーションは、小機能を実現する複数のプログラムモジュール(以下「機能モジュール」と言う)を有するソフトウェア環境となっている。つまり、アプリケーションで提供される機能は、これらの機能モジュールが連携して実行されることにより実現される。
このようなソフトウェア環境では、例えば、設計変更や仕様変更などを行う際に、変更の影響範囲によって、複数の機能モジュールを変更する必要がある。そのため、リリース済み(市場投入後)のソフトウェア環境に対して、修正後の機能モジュールを提供する場合には、バージョンに基づき、各機能モジュールの組み合わせを管理し、組み合わせ不一致による機能停止(障害発生)などを防がなければならない。
そこで、例えば、特許文献1には、機能モジュールに関するソフトウェア構成情報をデータベースに登録し、ソフトウェア構成情報に基づき、インストーラを生成し、インストールする機能モジュールの組み合わせを管理する技術が開示されている。
しかしながら、従来の方法では、特定の機能モジュールを変更する場合であっても、機能を実現する上で組み合わせが発生する他の機能モジュールにも、その変更を反映(変更した機能モジュールに対応)させる必要がある。また、ソフトウェア構成情報などを用いて、機能モジュールの組み合わせを管理する場合には、機能モジュールの組み合わせが多くなるほど、組み合わせの登録パターンが多くなる。そのため、ソフトウェア構成情報そのものの管理が煩雑化し、バージョンの整合性を取ることが困難になる。
このように、従来の方法では、ソフトウェアベンダ(機能モジュールの提供側)で行う作業が煩雑になり、これらの作業に起因した障害が発生する恐れがある。よって、ソフトウェアベンダにとって、リリース済みのソフトウェア環境に対する作業は、容易に行えることが望ましい。
本発明は上記従来技術の問題点を鑑み提案されたものであり、複数の機能モジュールの組み合わせを容易に管理できる情報処理装置、情報処理方法、及び情報処理プログラムを提供することにある。
上記目的を達成するため、本発明に係る情報処理装置は、複数の機能モジュール間において、機能利用側の機能モジュールと機能提供側の機能モジュールとを連携して実行し、搭載アプリケーションの機能が実現されるソフトウェア環境を有する情報処理装置であって、機能利用側の機能モジュールから機能提供側の機能モジュールに対して、機能提供側の機能モジュールによる提供機能を利用可能か否かの問い合わせ要求を行う機能利用可否問い合わせ手段と、機能提供側の機能モジュールから機能利用側の機能モジュールに対して、利用可否結果を応答する機能利用可否応答手段と、応答された利用可否結果に基づき、機能利用側の機能モジュールによる提供機能の実行を制御する機能実行制御手段と、を有している。
このような構成によって、本発明に係る情報処理装置は、機能利用側の機能モジュールが、機能提供側の機能モジュールに提供機能の利用可否を問い合わせ、機能提供側の機能モジュールからの応答結果に基づき、機能実行(変更前/変更後のどちらの機能を動作させるか)を制御する。
これによって、本発明に係る情報処理装置では、特定の機能モジュールを変更する場合、組み合わせが発生する他の機能モジュールに、その変更を反映(変更した機能モジュールに対応)させる必要がない。また、本発明に係る情報処理装置では、機能モジュールの組み合わせが多くなっても、ソフトウェアベンダが煩雑な作業を行わなくてよい。その結果、本発明に係る情報処理装置では、複数の機能モジュールの組み合わせを容易に管理できる。
上記目的を達成するため、本発明に係る情報処理方法は、複数の機能モジュール間において、機能利用側の機能モジュールと機能提供側の機能モジュールとを連携して実行し、搭載アプリケーションの機能が実現されるソフトウェア環境を有する情報処理装置における情報処理方法であって、機能利用側の機能モジュールから機能提供側の機能モジュールに対して、機能提供側の機能モジュールによる提供機能を利用可能か否かの問い合わせ要求を行う機能利用可否問い合わせ手順と、前記機能利用可否問い合わせ手順による要求に応じて、機能提供側の機能モジュールから機能利用側の機能モジュールに対して、利用可否結果を応答する機能利用可否応答手順と、前記機能利用可否応答手順により応答された利用可否結果に基づき、機能利用側の機能モジュールによる提供機能の実行を制御する機能実行制御手順と、を有している。
このような手順によって、本発明に係る情報処理方法は、機能利用側の機能モジュールが、機能提供側の機能モジュールに提供機能の利用可否を問い合わせ、機能提供側の機能モジュールからの応答結果に基づき、機能実行(変更前/変更後のどちらの機能を動作させるか)を制御すると言う機能モジュール間の連携動作を実現する。
これによって、本発明に係る情報処理方法では、複数の機能モジュールの組み合わせを容易に管理可能な環境を提供できる。
本発明によれば、機能提供時に連携して実行される機能モジュール間で、機能のサポート状態(新機能対応済み/未対応などの状態)を確認し合うことで、複数の機能モジュールの組み合わせを容易に管理可能な情報処理装置、情報処理方法、及び情報処理プログラムを提供することができる。
本発明の第1の実施形態に係る情報処理装置のハードウェア構成例を示す図である。 本発明の第1の実施形態に係る情報処理装置のソフトウェア構成例を示す図である。 本発明の第1の実施形態に係る情報処理機能の構成例を示す図である。 本発明の第1の実施形態に係る機能提供の基本動作例(その1)を示すシーケンス図である。 本発明の第1の実施形態に係る機能提供の基本動作例(その2)を示すシーケンス図である。 本発明の第1の実施形態に係るソフトウェア環境における機能実行処理例(その1)を示すシーケンス図である。 本発明の第1の実施形態に係るソフトウェア環境における機能実行処理例(その2)を示すシーケンス図である。
以下、本発明の好適な実施の形態(以下「実施形態」と言う)について、図面を用いて詳細に説明する。
[第1の実施形態]
<ハードウェア構成>
図1は、本実施形態に係る情報処理装置100のハードウェア構成例を示す図である。
図1に示すように、本実施形態に係る情報処理装置100は、入力装置101、表示装置102、ドライブ装置103、RAM(Random Access Memory)104、ROM(Read Only Memory)105、CPU(Central Processing Unit)106、インタフェース装置107、及びHDD(Hard Disk Drive)108などを備え、それぞれがバスBで相互に接続されている。
入力装置101は、キーボードやマウスなどを含み、情報処理装置100に各操作信号を入力するのに用いられる。表示装置102は、ディスプレイなどを含み、情報処理装置100による処理結果を表示する。
インタフェース装置107は、情報処理装置100をデータ伝送路Nに接続するインタフェースである。これにより、情報処理装置100は、インタフェース装置107を介して、画像処理装置200や他の情報処理装置100とデータ通信を行うことができる。
HDD108は、プログラムやデータを格納している不揮発性の記憶装置である。格納されるプログラムやデータには、情報処理装置全体を制御する情報処理システム(例えば「Windows(商標又は登録商標)」や「UNIX(商標又は登録商標)」などの基本ソフトウェアであるOS(Operating System))、及びシステム上において各種機能(例えば「画面カスタマイズ機能」)を提供するアプリケーションなどがある。また、HDD108は、格納しているプログラムやデータを、所定のファイルシステム及び/又はDB(Data Base)により管理している。
ドライブ装置103は、着脱可能な記録媒体103aとのインタフェースである。これにより、情報処理装置100は、ドライブ装置103を介して、記録媒体103aの読み取り及び/又は書き込みを行うことができる。記録媒体103aには、例えば、フロッピー(商標又は登録商標)ディスク、CD(Compact Disk)、及びDVD(Digital Versatile Disk)、ならびに、SDメモリカード(SD Memory Card)やUSB(Universal Serial Bus)メモリなどがある。
ROM105は、電源を切っても内部データを保持することができる不揮発性の半導体メモリ(記憶装置)である。ROM105には、情報処理装置100の起動時に実行されるBIOS(Basic Input/Output System)、情報処理システム設定、及びネットワーク設定などのプログラムやデータが格納されている。RAM104は、プログラムやデータを一時保持する揮発性の半導体メモリ(記憶装置)である。CPU106は、上記記憶装置(例えば「HDD」や「ROM」など)から、プログラムやデータをRAM上に読み出し、処理を実行することで、装置全体の制御や搭載機能を実現する処理装置である。
以上のように、本実施形態に係る情報処理装置100は、上記ハードウェア構成により、各種情報処理サービスを提供することができる。
<ソフトウェア構成>
図2は、本実施形態に係る情報処理装置100のソフトウェア構成例を示す図である。
図2に示すように、本実施形態に係る情報処理装置100は、上述した基本ソフトウェアであるOS11上に、スレッド制御部12、IPC(Inter Process Communication)13、サービス層14、API(Application Program Interface)15、及びアプリケーション16などを有するソフトウェア構成となっている。
スレッド制御部12は、ソフトウェアの実行単位(又はCPUの利用単位)であるスレッドを制御する。つまり、OS11は、マルチスレッド対応の基本ソフトウェアである。
IPC13は、プロセス間通信を制御する。IPC13は、動作中のプログラム間のデータ交換を制御する。
サービス層14は、アプリケーション16に対して、機能実現のための小機能を提供する。つまり、アプリケーション16は、これらの小機能を利用して、利用者に所定の機能を提供する。このとき、アプリケーション16は、ソフトウェアインタフェースであるAPI15を介して、サービス層14の小機能を利用する。
例えば、図2に示すサービス層14は、Websys17、DESS17(Data Encryption Security Service)、NCS(Network Control Service)17などの複数の機能モジュール17(以下総称する場合「機能モジュール17」と言う)を有している。Websys17は、情報処理装置100が有する各種項目の設定や情報を提供する小機能を実現するモジュールである。また、DESS17は、通信の暗号化やデータの暗号化などを行う小機能を実現するモジュールである。また、NCS17は、ネットワーク制御を行う小機能を実現するモジュールである。
これらの機能モジュール17〜17を利用することで、アプリケーション16は、次のような機能を利用者に提供することができる。アプリケーション16であるブラウザは、API15をコールし、Websys17に対して、ブラウザ上のGUI(Graphical User Interface)を介して受け付けた暗号化通信に係る入力情報の設定を要求する。その結果、Websys17は、受け付けた要求をDESS17に伝達する。DESS17は、NCS17に対して、暗号化通信に係る設定を要求する。これにより、NCS17は、暗号化通信に係る情報項目の記憶領域にアクセスし、項目値を指示された値(入力情報)に更新する。このように、アプリケーション16で提供される機能は、サービス層14の機能モジュール17が連携して実行されることにより実現される。
以上のように、本実施形態に係る情報処理装置100は、上記ソフトウェア構成により、各種アプリケーション機能を提供することができる。
<情報処理機能>
本実施形態に係る情報処理機能について説明する。
本実施形態に係る情報処理装置100では、機能提供時に連携して実行される機能モジュール間で、次のような処理を行う。機能利用側の機能モジュール17は、機能提供側の機能モジュール17に対して、提供機能の利用可否の問い合わせを要求する。その結果、機能提供側の機能モジュール17は、要求に応じて、利用可否の結果を応答する。これにより、機能利用側の機能モジュール17は、応答結果に基づき、機能実行(変更前/変更後のどちらの機能を動作させるか)を制御する。本実施形態に係る情報処理装置100は、このような情報処理機能を有している。
従来の機能モジュールの組み合わせを管理する方法では、ソフトウェアベンダで行う作業(リリース済みのソフトウェア環境に対する作業)が煩雑になり、これらの作業に起因した障害が発生する恐れがあった。
そこで、本実施形態に係る情報処理装置100では、機能提供時に連携して実行される機能モジュール間で、機能のサポート状態(新機能対応済み/未対応などの状態)を確認し合う仕組みとした。
これにより、本実施形態に係る情報処理装置100では、複数の機能モジュール17の組み合わせを容易に管理できる。なぜなら、本実施形態に係る情報処理装置100では、特定の機能モジュール17を変更する場合、組み合わせが発生する他の機能モジュール17に、その変更を反映(変更した機能モジュールに対応)させる必要がない。また、本実施形態に係る情報処理装置100では、機能モジュール17の組み合わせが多くなっても、ソフトウェアベンダが煩雑な作業を行わなくてよい。
以下に、本実施形態に係る情報処理機能の構成とその動作について説明する。
図3は、本実施形態に係る情報処理機能の構成例を示す図である。
図3に示すように、本実施形態に係る情報処理機能は、機能モジュール17が有している。機能モジュール17は、主に、機能実行制御部20及び機能実行部30などを有している。
機能実行制御部20は、機能モジュール17の実行を制御する機能部である。また、機能実行部30は、機能モジュール17の実行により、小機能を実現する機能部である。よって、小機能は、機能実行制御部20が、機能実行部30に対して、機能モジュール17の実行を指示することで実現される。
また、機能実行制御部20は、機能利用可否応答部21、機能利用可否問い合わせ部22、実行判定部23、利用可能段階問い合わせ部24、及び対応段階応答部25などを有している。
なお、以下の説明では、機能モジュール間における上記機能部の連携動作を分かりやすく説明するため、機能利用側(小機能の実行を要求する側)と機能提供側(要求された小機能を実行する側)とに分けて説明する。よって、機能利用側を機能モジュール17aとし、機能提供側を機能モジュール17bとする。
機能利用可否応答部21は、機能利用側に対して、小機能の利用が可能か否かを応答する機能部である。一方、機能利用可否問い合わせ部22は、機能提供側に対して、小機能の利用が可能か否かの問い合わせ要求を行う機能部である。よって、機能利用側の機能モジュール17aは、機能利用可否問い合わせ部22により、機能提供側の機能モジュール17bに対して、小機能の利用が可能か否かの問い合わせ要求を行う。その結果、機能提供側の機能モジュール17bからは、機能利用可否応答部21により、利用可否の結果が応答される。
なお、機能利用可否応答部21は、小機能の利用可否(新機能対応済み/未対応などサポート状態)の問い合わせを受け付けるためのソフトウェアインタフェースを有している。よって、機能利用可否問い合わせ部22は、上記ソフトウェアインタフェースを介して、機能利用可否応答部21への利用可否の問い合わせ要求や、機能利用可否応答部21からの利用可否結果の応答を受け付ける。
実行判定部23は、機能利用可否問い合わせ部22が受け付けた応答結果に基づき、同機能部23を有する機能モジュール17において、変更前の小機能(新機能未対応:従来機能)又は変更後の小機能(新機能)のどちらの機能を動作させるかを判定する機能部である。例えば、機能利用側の機能モジュール17aが有する実行判定部23は、機能提供側の機能モジュール17bからの応答結果が「エラー」であった場合、機能提供側が新機能未対応(新機能が未サポート状態)であり、機能モジュール17bの小機能が利用不可能であると判定する。一方、応答結果が「利用可」であった場合には、機能提供側が新機能対応済み(新機能がサポート済み状態)であり、機能モジュール17bの小機能が利用可能であると判定する。
これを受けて、機能実行制御部20は、上記判定結果に基づき、次のような機能実行制御を行う。例えば、機能利用側の機能モジュール17aが有する機能実行制御部20は、判定結果が「利用不可能」であった場合、同モジュール17aが有する機能実行部30に対して、変更前の小機能(従来機能)が動作するように実行を指示する。一方、判定結果が「利用可能」であった場合には、同モジュール17aが有する機能実行部20に対して、変更後の小機能(新機能)が動作するように実行を指示する。
このように、機能利用側の機能モジュール17aでは、機能提供側の機能モジュール17bが提供する小機能の利用可能状態に応じて、同モジュール17aの機能動作が制御される。
利用可能段階問い合わせ部24は、機能提供側に対して、新機能の利用可能な機能段階(機能利用側がどの新機能まで利用可能か)の問い合わせ要求を行う機能部である。一方、対応段階応答部25は、機能利用側に対して、利用可能な新機能の対応段階(どの段階の新機能までサポート済みであるか)を応答する機能部である。
上述したように、機能利用側の機能モジュール17aでは、機能提供側の機能モジュール17bからの応答結果から、機能提供側の小機能が新機能対応済みで利用可能であることを確認できる。しかし、機能利用側の機能モジュール17aでは、設計変更や仕様変更の履歴を考慮し、機能提供側が、どの段階の新機能まで対応済みであるかを確認しなければ、組み合わせ不一致により、機能モジュール間の連携動作に不具合が生じる恐れがある。
そこで、本実施形態に係る機能モジュール17は、各機能モジュール17に共通した定義値を用いて、対応済みの新機能を表す情報が定義された定義情報(対応済み新機能の定義値)40Dを有している。例えば、図3には、機能利用側の機能モジュール17aが、対応済みである新機能A,B,Cを表す定義値"1"(段階1),"2"(段階2),"3"(段階3)が定義された定義データ40Dを有し、一方、機能提供側の機能モジュール17bが、対応済みである新機能A,Bを表す定義値"1"(段階1),"2"(段階2)が定義された定義データ40Dを有する例が示されている。この場合、機能モジュール間では、機能利用側と機能提供側とで共通して対応済みとなっている新機能A又は新機能Bで連携動作するように機能実行を制御しなければならない。そのため、機能利用側の機能モジュール17aでは、機能提供側の機能モジュール17bとの連携動作を行う上で、機能利用側が利用可能な新機能の対応段階を確認する必要がある。
よって、機能利用側の機能モジュール17aは、利用可能段階問い合わせ部24により、機能提供側の機能モジュール17bに対して、新機能の利用可能な機能段階の問い合わせ要求を行う。その結果、機能提供側の機能モジュール17bからは、対応段階応答部25により、同モジュール17bが有する定義情報40Dが参照され、対応済みの新機能に対応する定義値が、利用可能な新機能の対応段階として応答される。これにより、機能利用側の機能モジュール17aは、機能提供側における新機能の対応段階を確認する。
なお、対応段階応答部25は、新機能の利用可能な機能段階(新機能のサポート状態)の問い合わせを受け付けるためのソフトウェアインタフェースを有している。よって、利用可能段階問い合わせ部24は、上記ソフトウェアインタフェースを介して、対応段階応答部25への利用可能段階の問い合わせ要求や、対応段階応答部25からの新機能対応段階の応答を受け付ける。なお、利用可能段階問い合わせ部24は、機能利用可否問い合わせ部22が受け付けた機能利用可否応答部21からの応答結果が「利用可能」であった場合に機能する。
実行判定部23は、利用可能段階問い合わせ部24が受け付けた応答結果に基づき、同機能部23を有する機能モジュール17において、変更後の小機能(新機能)のうち、実行可能な機能(組み合わせ一致で実行可能な新機能)を判定する。このとき、実行判定部23は、同機能部23を有する機能モジュール17の定義情報40D及び応答結果に基づき、実行可能な機能を判定する。例えば、機能利用側の機能モジュール17aが有する実行判定部23は、同モジュール17aが有する定義情報40Dに新機能C(段階3)までが定義されており、機能提供側の機能モジュール17bからの応答結果が「定義値"1","2"」であった場合、機能提供側が新機能Bまで対応済み(段階2までの新機能A,Bがサポート済み状態)であることから、新機能Bまでを実行可能な機能と判定する。また、同モジュール17aが有する定義情報40Dに新機能B(段階2)までが定義されており、機能提供側の機能モジュール17bからの応答結果が「定義値"1","2","3"」であった場合も同様である。
このように、実行判定部23では、機能利用側に定義される対応済み新機能の定義値と、機能提供側に定義される対応済み新機能の定義値(応答結果)との比較を行い、一致する最大の定義値(図中に示す例では定義値"2")を特定し、特定した定義値に基づき、実行可能な機能(図中に示す例では新機能B(段階2))を判定する。
これを受けて、機能実行制御部20は、上記判定結果に基づき、同機能部23を有する機能モジュール17において、機能の実行段階(変更後の機能をどの段階で動作させるか)を制御する。具体的には、次のような機能実行制御を行う。例えば、機能利用側の機能モジュール17aが有する機能実行制御部20は、判定結果が「新機能B(段階2)まで」であった場合、同モジュール17aが有する機能実行部30に対して、変更後の小機能(新機能)において、新機能A,B(段階1,2)までの機能が動作するように実行を指示する。
このように、機能利用側の機能モジュール17aでは、機能提供側の機能モジュール17bが提供する小機能の新機能対応状態に応じて、同モジュール17aの機能動作が制御される。
ここで、機能利用側と機能提供側との機能モジュール間で行われる機能提供時の動作例(上記各機能部の基本動作例)について、シーケンス図を用いて説明する。
《基本動作:その1》
図4は、本実施形態に係る機能提供の基本動作例(その1)を示すシーケンス図である。なお、図4には、機能利用側が新機能対応済みで、機能提供側が新機能未対応である場合の動作例が示されている。
図4に示すように、機能利用側の機能モジュール17aは、機能利用可否問い合わせ部22が、機能提供側の機能モジュール17bに対して、小機能の利用可否の問い合わせ要求を行う(ステップS101)。
機能提供側の機能モジュール17bでは、新機能未対応のため、機能利用側からの問い合わせ要求がエラーとなる。よって、機能提供側の機能モジュール17bからは、機能利用可否応答部21により、機能利用側の機能モジュール17aに対して、その旨(エラー)が応答される(ステップS102)。
これを受けて、機能利用側の機能モジュール17aでは、実行判定部23が、応答結果「エラー応答」から、機能提供側が新機能に対応していないと判断する(ステップS103)。
これにより、機能利用側の機能モジュール17aは、機能実行制御部20が、機能実行部30に対して、新機能対応前の機能で動作させる指示を出す。その結果、機能利用側の機能モジュール17aでは、機能実行部30が、同モジュール17aを新機能対応前の機能で動作させる(ステップS104)。
《基本動作:その2》
図5は、本実施形態に係る機能提供の基本動作例(その2)を示すシーケンス図である。なお、図5には、機能利用側及び機能提供側が新機能対応済みである場合の動作例が示されている。
図5に示すように、機能利用側の機能モジュール17aは、機能利用可否問い合わせ部22が、機能提供側の機能モジュール17bに対して、小機能の利用可否の問い合わせ要求を行う(ステップS201)。
機能提供側の機能モジュール17bでは、新機能対応済みのため、機能利用側からの問い合わせ要求への正常応答が可能である。よって、機能提供側の機能モジュール17bからは、機能利用可否応答部21により、機能利用側の機能モジュール17aに対して、利用可能の旨が応答される(ステップS202)。
これを受けて、機能利用側の機能モジュール17aでは、実行判定部23が、応答結果「利用可能」から、機能提供側が新機能に対応していると判断する(ステップS203)。
次に、機能利用側の機能モジュール17aは、利用可能段階問い合わせ部24が、機能提供側の機能モジュール17bに対して、新機能の利用可能な機能段階の問い合わせ要求を行う(ステップS204)。
機能提供側の機能モジュール17bでは、対応段階応答部25が、同モジュール17bが有する定義情報40Dを参照し、対応済みの新機能A,B(段階1,2)を表す定義値"1","2"を取得する(ステップS205)。よって、機能提供側の機能モジュール17bからは、対応段階応答部25により、機能利用側の機能モジュール17aに対して、利用可能な新機能の対応段階(対応済みの新機能A,Bに対応する定義値"1","2")が応答される。(ステップS206)。
これを受けて、機能利用側の機能モジュール17aでは、実行判定部23が、同モジュール17aが有する定義情報40Dを参照し、定義情報40Dの定義値"1"(段階1),"2"(段階2),"3"(段階3)と応答結果「定義値"1","2"」とから、実行可能機能が新機能B(実行段階が段階2)までと判断する(ステップS207)。このとき、実行判定部23は、定義値の比較を行い、一致する最大の定義値(定義値"2")を特定し、特定した定義値に基づき、実行可能な機能(新機能B(段階2))を判定する。よって、機能利用側の機能モジュール17aからは、機能提供側の機能モジュール17bに対して、判断した実行段階(段階2)が通知される(ステップS208)。
これにより、機能提供側の機能モジュール17bでは、機能利用側の機能モジュール17aに対して、通知の旨の了解応答を行い(ステップS209)、機能実行制御部20が、機能実行部30に対して、通知された段階の機能で動作する指示を出す。その結果、機能提供側の機能モジュール17bでは、機能実行部30が、同モジュール17bを新機能Bで動作させる(ステップS210)。
また、機能利用側の機能モジュール17aは、機能提供側の機能モジュール17bから了解応答を受け付けると、機能実行制御部20が、機能実行部30に対して、実行可能機能で動作させる指示を出す。その結果、機能利用側の機能モジュール17aでは、機能実行部30が、同モジュール17aを新機能Bで動作させる(ステップS211)。
このように、本実施形態に係る情報処理機能では、機能提供時に、機能モジュール間で、機能のサポート状態(新機能対応済み/未対応などの状態)を確認し合い、組み合わせを一致させた上で、連携して実行される。
以上のように、本実施形態に係る情報処理機能は、上記各機能部が連携動作することにより実現される。なお、本実施形態に係る情報処理機能は、情報処理装置100に搭載(インストール)されるプログラム(情報処理機能を実現するソフトウェア)が、処理装置(例えば「CPU」)により、記憶装置(例えば「HDD」など)からメモリ(RAM)上に読み出され、以下の処理が実行されることで実現される。
本実施形態に係る情報処理機能の詳細な動作(機能部群の連携動作)について、具体的なソフトウェア環境を例に、処理手順を示すシーケンス図を用いて説明する。
《新機能対応済みと新機能未対応とが混在するソフトウェア環境における機能実行処理》
図6は、本実施形態に係るソフトウェア環境における機能実行処理例(その1)を示すシーケンス図である。図6には、図2に示したサービス層14が有するWebsys17、DESS17、及びNCS17の連携により、アプリケーション16が提供するSSL(Secure Sockets Layer)暗号強度設定機能(新機能)の実行処理例が示されている。その中で、新機能対応済みの機能モジュール17は、Websys17及びDESS17である。また、Websys17は、機能利用側の機能モジュール17aであり、NCS17は、機能提供側の機能モジュール17bである。DESS17は、Websys17及びNCS17の両方の機能モジュール17と連携するため、機能利用側と機能提供側の両方にあたる。
図6に示すように、Websys17は、アプリケーション16からの要求に従って、機能利用可否問い合わせ部22により、DESS17に対して、SSL暗号強度設定機能が利用可能か否かを問い合わせる(ステップS301)。
DESS17は、新機能対応済みであることから、Websys17からの要求に従って、機能利用可否問い合わせ部22により、NCS17に対して、SSL暗号強度設定値を保持する記憶領域に参照可能か否かを問い合わせる(ステップS302)。
NCS17は、新機能未対応のため、DESS17からの問い合わせ要求がエラーとなる。よって、NCS17からは、機能利用可否応答部21により、DESS17に対して、その旨(エラー)が応答される(ステップS303)。
これを受けて、DESS17では、実行判定部23が、応答結果「エラー応答」から、NCS17が新機能に対応していないと判断する(ステップS304)。よって、DESS17からは、機能利用可否応答部21により、Websys17に対して、利用不可能の旨が応答される(ステップS305)。
このとき、DESS17は、機能実行制御部20が、機能実行部30に対して、新機能対応前の機能で動作する指示を出す。その結果、DESS17では、機能実行部30が、同モジュール17を新機能対応前(SSL暗号強度設定未対応)の機能で動作させる(ステップS306)。
一方、Websys17では、実行判定部23が、応答結果「利用不可能」から、DESS17又はNCS17が新機能に対応していないと判断する(ステップS307)。
これにより、Websys17は、機能実行制御部20が、機能実行部30に対して、新機能対応前の機能で動作させる指示を出す。その結果、Websys17では、機能実行部30が、同モジュール17を新機能対応前(SSL暗号強度設定未対応)の機能で動作させる(ステップS308)。
《新機能対応済みのソフトウェア環境における機能実行処理》
図7は、本実施形態に係るソフトウェア環境における機能実行処理例(その2)を示すシーケンス図である。図7には、図6と同様にWebsys17、DESS17、及びNCS17の連携によるSSL暗号強度設定機能(新機能)の実行処理例が示されている。図6との違いは、Websys17、DESS17、及びNCS17全てが、新機能対応済みの機能モジュール17にあたる点である。
図7に示すように、Websys17は、アプリケーション16からの要求に従って、機能利用可否問い合わせ部22により、DESS17に対して、SSL暗号強度設定機能が利用可能か否かを問い合わせる(ステップS401)。
DESS17は、新機能対応済みであることから、Websys17からの要求に従って、機能利用可否問い合わせ部22により、NCS17に対して、SSL暗号強度設定値を保持する記憶領域に参照可能か否かを問い合わせる(ステップS402)。
NCS17は、新機能対応済みであることから、DESS17からの問い合わせ要求への正常応答が可能である。よって、NCS17からは、機能利用可否応答部21により、DESS17に対して、利用可能の旨が応答される(ステップS403)。
これを受けて、DESS17では、実行判定部23が、応答結果「利用可能」から、NCS17が新機能に対応していると判断する(ステップS404)。よって、DESS17からは、機能利用可否応答部21により、Websys17に対して、利用可能の旨が応答される(ステップS405)。
これを受けて、Websys17では、実行判定部23が、応答結果「利用可能」から、DESS17及びNCS17が新機能に対応していると判断する(ステップS406)。
次に、Websys17は、利用可能段階問い合わせ部24が、DESS17に対して、対応済み新機能のうち、どこまで(どの段階)の新機能が利用可能かを問い合わせる(ステップS407)。
DESS17では、対応段階応答部25が、同モジュール17が有する定義情報40Dを参照し、「SSLプロトコルを設定可能」(段階1)と「暗号化種別を設定可能」(段階2)とを表す定義値"1","2"を取得する(ステップS408)。よって、DESS17からは、対応段階応答部25により、Websys17に対して、利用可能な新機能の対応段階(対応済みの新機能A,B対応する定義値"1","2")が応答される。(ステップS409)。
これを受けて、Websys17では、実行判定部23が、同モジュール17が有する定義情報40Dを参照し、定義情報40Dの定義値"1"(段階1),"2"(段階2),"3"(段階3)と応答結果「定義値"1","2"」とから、実行可能機能が「暗号化種別を設定可能」(実行段階が段階2)までと判断する(ステップS410)。このとき、実行判定部23は、定義値の比較を行い、一致する最大の定義値(定義値"2")を特定し、特定した定義値に基づき、実行可能な機能が、「暗号化種別を設定可能」(段階2)までと判断する。よって、Websys17からは、DESS17に対して、判断した実行段階(段階2)が通知される(ステップS411)。
これにより、DESS17では、Websys17に対して、通知の旨の了解応答を行い(ステップS412)、機能実行制御部20が、機能実行部30に対して、通知された段階の機能で動作させる指示を出す。その結果、DESS17では、機能実行部30が、同モジュール17を「暗号化種別を設定可能」な機能で動作させる(ステップS413)。
また、Websys17は、DESS17から了解応答を受け付けると、機能実行制御部20が、機能実行部30に対して、実行可能機能で動作させる指示を出す。その結果、Websys17では、機能実行部30が、同モジュール17aを「暗号化種別を設定可能」な機能で動作させる(ステップS414)。
このように、本実施形態に係る情報処理機能は、機能モジュール17が階層的に連携して実行される場合であっても、機能モジュール間で、機能のサポート状態(新機能対応済み/未対応などの状態)を順次確認し合い、組み合わせを一致させた上で、連携して実行される。
<まとめ>
以上のように、本実施形態に係る情報処理装置100によれば、機能提供時に連携して実行される機能モジュール間で、次のような処理を行う。
機能利用側の機能モジュール17aは、機能利用可否問い合わせ部22が、機能提供側の機能モジュール17bに対して、提供機能の利用可否の問い合わせを要求する。その結果、機能提供側の機能モジュール17bは、機能利用可否応答部21が、要求に応じて、利用可否の結果を応答する。
これにより、機能利用側の機能モジュール17aは、機能実行制御部20が、応答結果に基づき、機能実行(変更前/変更後のどちらの機能を動作させるか)を制御する。
これによって、本実施形態に係る情報処理装置100では、特定の機能モジュール17を変更する場合、組み合わせが発生する他の機能モジュール17に、その変更を反映(変更した機能モジュールに対応)させる必要がない。また、本実施形態に係る情報処理装置100では、機能モジュール17の組み合わせが多くなっても、ソフトウェアベンダが煩雑な作業を行わなくてよい。その結果、本実施形態に係る情報処理装置100では、複数の機能モジュール17の組み合わせを容易に管理できる。
ここまで、上記実施形態の説明を行ってきたが、上記実施形態に係る「情報処理機能」は、図を用いて説明を行った各処理手順を、動作環境(プラットフォーム)にあったプログラミング言語でコード化したプログラムが、情報処理装置100が備える処理装置(例えば「CPU」)により実行されることで実現される。
上記プログラムは、コンピュータが読み取り可能な記録媒体103aに格納することができる。これにより、例えば、上記プログラムは、ドライブ装置103を介して、情報処理装置100にインストールすることができる。また、情報処理装置100は、インタフェース装置107を備えていることから、電気通信回線を用いて上記プログラムをダウンロードし、インストールすることもできる。
また、上記実施形態では、機能モジュール17が定義情報40Dを有する例を示した。定義情報40Dは、例えば、予めヘッダファイルなどにプログラムコードとして記述しておいた定義値(例えば「Define値」)を、機能モジュール17の作成時(コンパイル時)に参照することで、モジュール内に保有できる。
最後に、上記実施形態に挙げた形状や構成に、その他の要素との組み合わせなど、ここで示した要件に、本発明が限定されるものではない。これらの点に関しては、本発明の主旨をそこなわない範囲で変更することが可能であり、その応用形態に応じて適切に定めることができる。
11 OS(基本ソフトウェア)
12 スレッド制御部
13 IPC(プロセス間通信制御部)
14 サービス層
15 API(ソフトウェアインタフェース部)
16 アプリケーション
17 機能モジュール
20 機能実行制御部
21 機能利用可否応答部
22 機能利用可否問い合わせ部
23 実行判定部
24 利用可能段階問い合わせ部
25 対応段階応答部
30 機能実行部
40D 定義情報(対応済み新機能の定義値)
100 情報処理装置
101 入力装置
102 表示装置
103 ドライブ装置(a:記録媒体)
104 RAM(揮発性の半導体メモリ)
105 ROM(不揮発性の半導体メモリ)
106 CPU(処理装置)
107 インタフェース装置(NIC:Network I/F Card)
108 HDD(不揮発性の記憶装置)
B バス
特開2007−304639号公報

Claims (8)

  1. 複数の機能モジュール間において、機能利用側の機能モジュールと機能提供側の機能モジュールとを連携して実行し、搭載アプリケーションの機能が実現されるソフトウェア環境を有する情報処理装置であって、
    機能利用側の機能モジュールから機能提供側の機能モジュールに対して、機能提供側の機能モジュールによる提供機能を機能利用側が利用可能か否かの問い合わせ要求を行う機能利用可否問い合わせ手段と、
    機能提供側の機能モジュールから機能利用側の機能モジュールに対して、利用可否結果を応答する機能利用可否応答手段と、
    応答された利用可否結果に基づき、機能利用側の機能モジュールによる提供機能の実行を制御する機能実行制御手段と、を有することを特徴とする情報処理装置。
  2. 前記機能実行制御手段は、
    前記機能利用可否応答手段から、機能利用側が利用不可能の結果が応答された場合、
    新機能対応前の従来機能が動作するように、機能利用側の機能モジュールの実行を制御し、
    一方、前記機能利用可否応答手段から、機能利用側が利用可能の結果が応答された場合、
    新機能対応後の機能が動作するように、機能利用側の機能モジュールの実行を制御することを特徴とする請求項1に記載の情報処理装置。
  3. 機能利用側の機能モジュールから機能提供側の機能モジュールに対して、機能提供側の機能モジュールによる提供機能のうち、機能利用側が利用可能な機能段階の問い合わせ要求を行う利用可能段階問い合わせ手段と、
    機能提供側の機能モジュールから機能利用側の機能モジュールに対して、機能利用側が利用可能な新機能の対応段階を応答する対応段階応答手段と、を有し、
    前記機能実行制御手段は、
    応答された利用可能な新機能の対応段階に基づき、機能利用側の機能モジュールによる提供機能の実行を制御することを特徴とする請求項1又は2に記載の情報処理装置。
  4. 前記利用可能段階問い合わせ手段は、
    前記機能利用可否応答手段から、機能利用側が利用可能の結果が応答された場合、
    機能利用側が利用可能な機能段階の問い合わせ要求を行うことを特徴とする請求項3に記載の情報処理装置。
  5. 前記機能モジュールが、
    他の機能モジュールと共通する定義値を用いて、当該モジュールで対応済みの新機能を表す情報が定義された定義情報を有し、
    前記対応段階応答手段は、
    機能提供側の機能モジュールが有する定義情報を、機能利用側が利用可能な新機能の対応段階を表す情報として応答することを特徴とする請求項3又は4に記載の情報処理装置。
  6. 前記機能実行制御手段は、
    機能利用側の機能モジュールが有する定義情報の定義値と、前記対応段階応答手段から応答された定義情報の定義値とを比較し、一致する最も値の大きい定義値を特定し、特定した定義値に対応する新機能が動作するように、機能利用側の機能モジュールの実行を制御することを特徴とする請求項5に記載の情報処理装置。
  7. 複数の機能モジュール間において、機能利用側の機能モジュールと機能提供側の機能モジュールとを連携して実行し、搭載アプリケーションの機能が実現されるソフトウェア環境を有する情報処理装置における情報処理方法であって、
    機能利用側の機能モジュールから機能提供側の機能モジュールに対して、機能提供側の機能モジュールによる提供機能を機能利用側が利用可能か否かの問い合わせ要求を行う機能利用可否問い合わせ手順と、
    前記機能利用可否問い合わせ手順による要求に応じて、機能提供側の機能モジュールから機能利用側の機能モジュールに対して、利用可否結果を応答する機能利用可否応答手順と、
    前記機能利用可否応答手順により応答された利用可否結果に基づき、機能利用側の機能モジュールによる提供機能の実行を制御する機能実行制御手順と、を有することを特徴とする情報処理方法。
  8. 複数の機能モジュール間において、機能利用側の機能モジュールと機能提供側の機能モジュールとを連携して実行し、搭載アプリケーションの機能が実現されるソフトウェア環境を有する情報処理装置における情報処理プログラムであって、
    コンピュータを、
    機能利用側の機能モジュールから機能提供側の機能モジュールに対して、機能提供側の機能モジュールによる提供機能を機能利用側が利用可能か否かの問い合わせ要求を行う機能利用可否問い合わせ手段と、
    前記機能利用可否問い合わせ手段による要求に応じて、機能提供側の機能モジュールから機能利用側の機能モジュールに対して、利用可否結果を応答する機能利用可否応答手段と、
    前記機能利用可否応答手段により応答された利用可否結果に基づき、機能利用側の機能モジュールによる提供機能の実行を制御する機能実行制御手段として機能させる情報処理プログラム。
JP2010231950A 2010-10-14 2010-10-14 情報処理装置、情報処理方法、及び情報処理プログラム Expired - Fee Related JP5682220B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2010231950A JP5682220B2 (ja) 2010-10-14 2010-10-14 情報処理装置、情報処理方法、及び情報処理プログラム
US13/238,039 US8745623B2 (en) 2010-10-14 2011-09-21 Collaboration of modules for execution of application in information processing apparatus, information processing method, and storage medium
CN201110309737.8A CN102591723B (zh) 2010-10-14 2011-10-10 信息处理设备和信息处理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2010231950A JP5682220B2 (ja) 2010-10-14 2010-10-14 情報処理装置、情報処理方法、及び情報処理プログラム

Publications (2)

Publication Number Publication Date
JP2012084088A true JP2012084088A (ja) 2012-04-26
JP5682220B2 JP5682220B2 (ja) 2015-03-11

Family

ID=45935260

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010231950A Expired - Fee Related JP5682220B2 (ja) 2010-10-14 2010-10-14 情報処理装置、情報処理方法、及び情報処理プログラム

Country Status (3)

Country Link
US (1) US8745623B2 (ja)
JP (1) JP5682220B2 (ja)
CN (1) CN102591723B (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63280332A (ja) * 1987-05-12 1988-11-17 Nec Corp プログラム間機能世代差調整方式
JPH02245929A (ja) * 1989-03-20 1990-10-01 Fujitsu Ltd 他製品プログラムとの整合性チェック方式
JPH04294443A (ja) * 1991-03-22 1992-10-19 Nec Corp 分散処理世代制御方式
JP2007041865A (ja) * 2005-08-03 2007-02-15 Canon Inc プロファイル管理システム及び方法並びにプログラム
JP2008204138A (ja) * 2007-02-20 2008-09-04 Nec Corp ソフトウェア機能管理装置、複数ソフトウェアシステム、ソフトウェア機能管理方法及びプログラム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5615400A (en) * 1993-06-30 1997-03-25 Apple Computer, Inc. System for object oriented dynamic linking based upon a catalog of registered function set or class identifiers
US5694546A (en) * 1994-05-31 1997-12-02 Reisman; Richard R. System for automatic unattended electronic information transport between a server and a client by a vendor provided transport software with a manifest list
US6353926B1 (en) * 1998-07-15 2002-03-05 Microsoft Corporation Software update notification
US7793227B2 (en) * 2003-08-12 2010-09-07 Yahoo! Inc. Method and system of providing customizable buttons
US7383305B2 (en) * 2003-10-09 2008-06-03 International Business Machines Corporation Method, system, and storage medium for providing search and reference functions for a messaging system
GB0426736D0 (en) * 2004-12-06 2005-01-12 Omnifone Ltd MyFone
JP2007304639A (ja) 2006-05-08 2007-11-22 Ricoh Co Ltd ソフトウェア管理システム、ソフトウェア管理プログラム及び記録媒体
US8713556B2 (en) * 2008-02-25 2014-04-29 Sap Ag Virtual appliance update method

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63280332A (ja) * 1987-05-12 1988-11-17 Nec Corp プログラム間機能世代差調整方式
JPH02245929A (ja) * 1989-03-20 1990-10-01 Fujitsu Ltd 他製品プログラムとの整合性チェック方式
JPH04294443A (ja) * 1991-03-22 1992-10-19 Nec Corp 分散処理世代制御方式
JP2007041865A (ja) * 2005-08-03 2007-02-15 Canon Inc プロファイル管理システム及び方法並びにプログラム
JP2008204138A (ja) * 2007-02-20 2008-09-04 Nec Corp ソフトウェア機能管理装置、複数ソフトウェアシステム、ソフトウェア機能管理方法及びプログラム

Also Published As

Publication number Publication date
JP5682220B2 (ja) 2015-03-11
US8745623B2 (en) 2014-06-03
CN102591723A (zh) 2012-07-18
US20120096464A1 (en) 2012-04-19
CN102591723B (zh) 2015-06-10

Similar Documents

Publication Publication Date Title
RU2421785C2 (ru) Автоматизированное управление драйверами устройств
JP4411076B2 (ja) ネットワーク中でファイルを配布するためのローカル化された読み込み専用記憶装置
JP4286798B2 (ja) ハードドライブにドライバファイルをインストールする方法、コンピュータ及びコンピュータ読取可能な記憶媒体
US20090328030A1 (en) Installing a management agent with a virtual machine
US20090007097A1 (en) Product install and configuration providing choice of new installation and re-use of existing installation
US8589912B2 (en) Loosely coupled product install and configuration
JP5015545B2 (ja) フェデレーション内でのソフトウェアのインストール
JP5587192B2 (ja) アプリケーションのリモートオートプロビジョニング及びリモートオートパブリケーション
JP2008524686A (ja) コンピュータ装置においてアプリケーションを保守する方法
CN103294765A (zh) 用于供应和转换虚拟设备的基于策略的方法的方法和系统
JP2009521746A (ja) プログラム実行サービスウィンドウ
WO2019056882A1 (zh) 一种跨平台部署的方法和系统
US20140059236A1 (en) Process for Peer-To-Peer Download of Software Installer
US7813964B2 (en) Click and run software purchasing
US9032541B2 (en) Information processing system, information processing apparatus, and computer-readable storage medium
US10698677B2 (en) Method and system for lifecycle management optimization
JP2021527265A (ja) 統合されたマルチプロバイダ計算プラットフォーム
US8291406B2 (en) Data imaging system and methods
JP2014178893A (ja) 連携処理装置、プログラム及びソフトウェア更新方法
JP2007323653A (ja) データ配信システム、データ配信方法及びデータ配信プログラム
JP5682220B2 (ja) 情報処理装置、情報処理方法、及び情報処理プログラム
JP2011060142A (ja) 統合管理装置、統合管理システム、統合管理方法、統合管理プログラム、及びそのプログラムを記録した記録媒体
JP2013084154A (ja) ライセンス管理プログラム及びライセンス管理システム
JP5526663B2 (ja) 情報処理装置、ソフトウェア管理システム、及びソフトウェア管理方法
JP6539701B2 (ja) 端末装置、シンクライアント変換方法およびシンクライアント変換プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20130813

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20140319

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20140408

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20140606

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: 20141216

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20141229

R151 Written notification of patent or utility model registration

Ref document number: 5682220

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151

LAPS Cancellation because of no payment of annual fees