Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JP5437270B2 - 下位互換性の無いサーババージョンをクライアント/サーバコンピューティング環境に展開するための方法およびシステム - Google Patents
[go: Go Back, main page]

JP5437270B2 - 下位互換性の無いサーババージョンをクライアント/サーバコンピューティング環境に展開するための方法およびシステム - Google Patents

下位互換性の無いサーババージョンをクライアント/サーバコンピューティング環境に展開するための方法およびシステム Download PDF

Info

Publication number
JP5437270B2
JP5437270B2 JP2010542632A JP2010542632A JP5437270B2 JP 5437270 B2 JP5437270 B2 JP 5437270B2 JP 2010542632 A JP2010542632 A JP 2010542632A JP 2010542632 A JP2010542632 A JP 2010542632A JP 5437270 B2 JP5437270 B2 JP 5437270B2
Authority
JP
Japan
Prior art keywords
client
version
server
application
software program
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.)
Expired - Fee Related
Application number
JP2010542632A
Other languages
English (en)
Other versions
JP2011510388A5 (ja
JP2011510388A (ja
Inventor
コールデセス,ジョエル
モンベル,ステファン
ドール,ピエール
テン,クリストフ
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.)
Amadeus SAS
Original Assignee
Amadeus SAS
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 Amadeus SAS filed Critical Amadeus SAS
Publication of JP2011510388A publication Critical patent/JP2011510388A/ja
Publication of JP2011510388A5 publication Critical patent/JP2011510388A5/ja
Application granted granted Critical
Publication of JP5437270B2 publication Critical patent/JP5437270B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • G06F9/4856Task life-cycle, e.g. stopping, restarting, resuming execution resumption being on a different machine, e.g. task migration, virtual machine migration
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized resources
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H40/00ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
    • G16H40/40ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the management of medical equipment or devices, e.g. scheduling maintenance or upgrades
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16HHEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
    • G16H40/00ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices
    • G16H40/60ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices
    • G16H40/63ICT specially adapted for the management or administration of healthcare resources or facilities; ICT specially adapted for the management or operation of medical equipment or devices for the operation of medical equipment or devices for local operation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Epidemiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Primary Health Care (AREA)
  • Public Health (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)
  • Computer And Data Communications (AREA)

Description

本発明は、概して、クライアント/サーバ環境におけるコンピュータシステムに関し、より具体的には、クライアントバージョンとの下位互換性を必要としない、新しいバージョンのサーバソフトウェアアプリケーションの展開に関する。
ネットワーク上に実装されるクライアント/サーバコンピューティングモデルが、いたる所に採用されてきた。このモデルでは、クライアントノードのソフトウェアアプリケーションによって発行される問い合わせは、1つ以上の接続されたサーバに送信される。サーバによって処理されると、問い合わせされた情報がクライアントに返される。このモデルは、クライアントがウェブブラウザであり、かつサーバが、メールサーバ等の多数の特化したサーバを含むウェブサーバである、インターネットのうちの1つである。
このモデルは、概して、場合により、インターネットを含むプライベートおよびパブリックネットワークの組み合わせを通じて、サービスプロバイダのコンピューティングリソース上で実行するソフトウェアアプリケーションのエンドユーザである、クライアントのコミュニティの機能を果たす大量のコンピューティングリソースを動作させる、多数のサービスプロバイダのうちの1つでもある。このようなプロバイダの例には、航空会社、通常およびオンラインの旅行代理店(例えば、旅行の計画および予約用)、および空港(例えば、乗客の出国管理およびチェックイン用)を含む、旅行業界全体に旅行サービスを提供する予約/発券システム(Global Distribution System:GDS)が挙げられる。
ソフトウェアシステムは、概して、それらの寿命にわたって頻繁に更新される。開発段階が完了した後であっても、システムが稼働している時に、修正を加える、および新しい特徴の追加によってそれらを改善するように、ソフトウェアアプリケーションは、進化し続ける。また、新しいタイプの機械の性能を完全に活用するために、またはオペレーティングシステムが新しいか、進化したか、または異なるので、変更を行わなければならない場合がある。
クライアント/サーバモデルでは、サーバ側アプリケーションの新しいバージョンをロールアウトするために、標準的な技法は、新しいバージョンが下位互換性でなければならない。したがって、任意のノードにおいてどのようなクライアントアプリケーションのバージョンが使用されている時であっても、新しいサーバは、展開されると、クライアントの問い合わせを即座に処理し、かつ問い合わせされた情報を互換性がある形式で配信することができる。
この理想的な機構を、世界的なパブリックネットワークの無数のクライアントによって使用される全ての既存のウェブブラウザとの互換性をウェブサーバが必要とする、インターネットにある程度まで適用する。しかし、これが完全に当てはまるわけではない。全てのウェブブラウザブランドが、全く同じように作用するとは限らず、また、多くのサーバは、実際に、クライアントアプリケーションの最新バージョンだけしかサポートしていないことは周知である。例えば、世界で最も多く使用されている、Microsoft CorporationによるInternet Explorer(IE)の場合、多くの最近のサーバアプリケーションは、現在、バージョン5(IE5)以上しかサポートしていない。実際に、古いバージョンのブラウザ、またはサポートされていないブラウザブランドが、アップグレードされたサーバから情報を受け取る時に、クライアントのグラフィックユーザインタフェース(GUI)が深刻な障害を受ける場合がある。
実際には部分的にしか達成できないにもかかわらず、下位互換性を保持するには、高い費用がかかる。サーバの新しいアプリケーションは、その領域でサポートされる全てのクライアントバージョンの、全てのオプション、特徴、非互換性、および欠陥に何らかの方法で対処しなければならない。これは、新しいサーバアプリケーションを開発するために長い時間と技能を必要とし、また、場合により、より多くのメモリおよびより速いハードウェアリソースを実装することを必要とする、開発段階中に高い費用がかかる。さらに重要なことに、確認するサーバ/クライアントブラウザ組み合わせの数は、試験段階が、妥当な時間量の範囲内で全ての組み合わせの網羅的な試験を可能にするために、不可能な数のリソース(機械および人的資源)の整備が必要となり得る程度まで、急速に増加している。
上述したことは、ウェブブラウザが、「シンクライアント」と呼ばれるクライアントであっても当てはまる。すなわち、要求されたジョブを実行するに際し、サーバアプリケーションとクライアントアプリケーションとの間において、実際には限られた共有作業しか実行しないクライアントであっても当てはまる。実際に、ウェブブラウザの主要なタスクは、GUIを通じてウェブサーバによって返されるページを表示することである。
公的にアクセスできないクライアント/サーバシステムの場合、概して関連するクライアント(例えば、航空会社、旅行代理店、空港等)だけとしか協働しない、上述のGDSと同様に、クライアントアプリケーションは、むしろ、サーバとクライアントとの間で共有される作業全体のうちのより多くの部分を実行しなければならない、「リッチクライアント」であることが必要となる場合がある。それらの間の利用可能な帯域が制限され過ぎて、タスクごとにサーバを求めるクライアントアプリケーションを行うことができないようにしているので、これが必要になる場合がある。GDSの場合、これは、例えば、航空機の出発および、乗客が搭乗している混雑時に迅速に処理しなければならない作業である、乗客のチェックインを制御するために空港で使用されるクライアントアプリケーションシステムの場合である。実際に、小規模な空港は、依然として限られた外部通信リソースを有する場合がある。また、空港のコンピューティングリソースは、空港当局が所有して、その管理下に置かれ、展開および更新するために承認が必要であり、したがって、チェックインアプリケーションがGDSに関連する航空会社によって使用される場合であっても、時間がかかる。
したがって、クライアントアプリケーションが、作業の大部分をそれ自体で実行するように考案されたリッチクライアントである時、下位互換性があるサーバを有するという問題は、不可能ではないとしても、シンクライアントによるものよりも、達成がさらに困難になる場合がある。実際に、サポートされる全てのバージョンのリッチクライアントアプリケーションのオプションおよび特徴の数は、潜在的に非常に大きくなり、したがって、サーバアプリケーションの開発および試験段階に関して上述した問題を一層悪化させる。
US−A−5.732.275は、ソフトウェアプログラムを管理し、かつ自動的に更新するための方法および装置を開示している。この文献は、サーバソフトウェアアプリケーションの新しい下位互換性の無いバージョンの展開前に、ネットワークの全てのクライアントソフトウェアアプリケーションを適合させるという問題には対処していない。この先行技術によれば、クライアントアプリケーションは、共有メモリからソフトウェアバージョンを自動的に行うことができるものと仮定されている。これが、この技術の応用範囲を制限しているのに対して、本発明は、制限されたソフトウェアリソースを伴う、かなりのダム端末を含むネットワークに適用することができる。
WO01/69382Aは、クライアントデバイスを初期構成するための方法を開示している。この公報によれば、クライアントアプリケーションを初期構成するために、新しいテンプレートがダウンロードされる。このテンプレートは、クライアントアプリケーションを、サーバソフトウェアアプリケーション自体の新しいバージョンではなく、新しい形式のデータ編成に適合させることを意図している。
したがって、以上のことを考慮すると、クライアント/サーバ環境では、下位互換性がある必要の無い、新しいバージョンのサーバアプリケーションの展開を可能にすることが望ましい。
本発明のさらなる目的、特徴、および利点は、添付図面を参照して以下の説明を考察すれば、当業者に明らかになるであろう。あらゆる付加的な利点が本明細書に組み込まれることが意図されている。
下位互換性があるサーバをクライアント/サーバネットワーキング環境内に展開しなければならないといった上述の問題点は、アプリケーションサーバのソフトウェアプログラムの新しい下位互換性の無いバージョンの、クライアント/サーバネットワーキング環境内への導入を管理するための方法およびシステムを説明する、本発明によって対処される。
該方法は、最初に、アプリケーションサーバのソフトウェアプログラムの新しい下位互換性の無いバージョンが提供されるクライアントシステムに、アプリケーションサーバの現在バージョンと互換性があるモード、および新しい下位互換性の無いバージョンと互換性があるモードで動作可能である、クライアントアプリケーションを配布するステップから成る。
クライアントシステムへの組み込みに応じて、クライアントアプリケーションは、アプリケーションサーバの現在バージョンと互換性がある、ダウングレードモードに設定される。
アプリケーションサーバの現在バージョンが依然として稼動中である間、クライアントアプリケーションは、ダウングレードモードで動作し続ける。
アプリケーションサーバの新しい下位互換性の無いバージョンの導入に応じて、クライアントアプリケーションは、アプリケーションサーバの新しいバージョンと互換性がある、有効モードに設定される。
その時点から、クライアントアプリケーションは、有効モードで動作する。モードの設定は、クライアント/サーバネットワーキング環境内で動作するバージョンサーバに問い合わせるクライアントシステムの再起動ごとに、自動的にトリガされる。
問い合わせは、クライアントシステムをダウングレードモードおよび有効モードを含むモードで動作させるように、問い合わせられたバージョンサーバからステータス値を得るために、クライアントシステムの識別と、クライアントアプリケーションのバージョン番号とを含む。
付加的だが純粋に任意選択である本発明の実施形態によれば、該方法は、以下の通りである。
−設定ステップは、クライアントシステムの再起動ごとに自動的にトリガされ、
クライアント/サーバネットワーキング環境で動作するバージョンサーバに問い合わせるステップであって、該問い合わせは、クライアントシステムの識別を含み、クライアントアプリケーションのバージョン番号をさらに含む、ステップと、
クライアントシステムをダウングレードモードおよび有効モードを含むモードで動作させるように、問い合わせられたバージョンサーバからステータス値を得るステップとをさらに含む。
−問い合わせは、統計を確立するように、クライアントシステムに関する地理的位置、ユーザ識別、およびあらゆる種類の情報をさらに含む。
−問い合わせ内容は、バージョンサーバのデータベース内に格納される。
−クライアントシステムの再起動は、アプリケーションサーバのソフトウェアプログラムの新しい下位互換性の無いバージョンが稼働された時に、アプリケーションサーバを動作させるサービスプロバイダによって強制される。
−クライアントシステムの再起動は、アプリケーションサーバのソフトウェアプログラムの新しい下位互換性の無いバージョンがロードされた時に、自動的に強制される。
−クライアントシステムの再起動は、前バージョンに関するフォールバックの場合に、自動的に強制される。
−クライアントアプリケーションは、クライアントシステムを無効モードで動作させるように、バージョンサーバからステータス値を受け取る。
−得るステップは、 バージョンサーバにおいて、
メタ規則に対してクライアントアプリケーションのバージョン番号を確認して、メタ規則が指定するものよりも古いクライアントアプリケーションが無効であると即時に宣言する、先行ステップを含む。
−メタ規則の確認が成功した場合に、
一組の互換性規則に対してクライアントアプリケーションのバージョン番号を確認するステップと、
規則の内容に従って、互換性規則に関係するクライアントアプリケーションが、無効、非推奨、またはダウングレードであると宣言するステップと、
そうでない場合は、いかなる互換性規則にも関係しないクライアントアプリケーションが、有効であると宣言するステップとを含む。
−得るステップは、1つ以上のクライアントアプリケーションの問題を修正するように、パッチをさらに配信する。
−パッチは、クライアントシステムが再起動されるたびに、動的に適用される。
−クライアントアプリケーションは、グラフィックユーザインタフェースを含む。
本発明は、アプリケーションサーバのソフトウェアプログラムの新しい下位互換性の無いバージョンの、該方法の各ステップを実行するために適合される手段を備える、バージョンサーバと、データベースとを含むクライアント/サーバネットワーキング環境内への導入を管理するためのシステムにも関する。
本発明は、アプリケーションサーバのソフトウェアプログラムの新しい下位互換性の無いバージョンの、クライアント/サーバネットワーキング環境内への導入を管理するための方法を、少なくとも1つのコンピュータに動作させるための、コンピュータで読み取り可能なコード手段を備える、コンピュータで読み取り可能な記憶媒体に格納されるコンピュータプログラム製品にも関する。
図1は、バージョンサーバおよびデータベースを含むGDSに基づく、本発明による例示的なシステムを説明する図である。 図2は、クライアントアプリケーションおよびGUIが、稼働中のサーババージョンに依存して、どのように動作しなければならないのかを決定する、クライアントノードでの方法の主要なステップのハイレベル図である。 図3は、ログイン時に問い合わせが発行されたクライアントシステムに起因するステータスを、バージョンサーバがどのように管理するのかを論じる図である。 図4は、バージョンサーバの使用によってもたらされる機能拡張である、クライアントシステムのオンラインパッチングを説明する図である。
以下の本発明の詳細な説明は、添付図面を参照する。説明は、例示的実施形態を含むが、他の実施形態が可能であり、本発明の精神と範囲から逸脱することなく、説明される実施形態に対して変更が行われ得る。
図1は、発明の背景の項で論じられるGDS(100)による、例示的なシステムを説明する。クライアント/サーバ環境内のネットワークを通じてサービスを提供するGDSまたはあらゆる同等のシステムは、多数の遠隔設置されたクライアントアプリケーション(120)(クライアントのレベルで動作するソフトウェアアプリケーション)およびシステム(122)をサポートするように、概して大量のコンピューティングリソース(110)から、サーバを実装する。本発明を示すために用いられるこの特定の実施例では、クライアントシステムは、例えば乗客が航空機に搭乗している時に使用される、空港出発制御システム(DCS)である。接続は、インターネットを含む、プライベートおよびパブリックネットワークの任意の組み合わせを場合により含む、ワイドエリアネットワーク(WAN)を通じて、サーバとクライアントとの間で保持される(130)。コンピューティングリソースは、例えば、プライベートローカルエリアネットワークまたはLAN(105)と全て相互接続される。同様に、ローカルな一組のクライアントアプリケーションは、例えば空港LAN(125)といったLANを通じて総合接続することができ、一方で、独立した複数組のクライアントアプリケーションは、WAN(130)を通じてGDSと通信する。クライアントアプリケーションとのインターフェースは、本実施例では、ゲートウェイ(101)を通じて実行され、クライアントが、本明細書で上述したDCSアプリケーションを含むGDSによって提供される全てのアプリケーション(109)にアクセスできるようにする。このようなシステムは、一般的に、接続しようとするそのクライアントアプリケーションが、正規のものであり、かつサポートされるアプリケーション(109)のうちのいずれかと協働することが許可される、予想される認証を提供できることを確認するように意図された、ログオンおよびセキュリティサーバ、またはLSS(103)を含む。
本説明では、アプリケーションサーバのソフトウェアプログラムは、その機能を実行するようにアプリケーションサーバのレベルで使用される、ソフトウェアリソースを意味する。明示的に示された場合を除き、「アプリケーションサーバのアプリケーションプログラムのソフトウェアプログラム」という用語は、以下、「アプリケーションサーバ」という表現に短縮される場合もある。実際に、サーバがハードウェア構成要素を含む場合であっても、本発明の主題は、ソフトウェア構成要素のバージョンを管理することである。
本発明は、データベース(107)と連動して機能するバージョンサーバ(105)を導入する。以下の説明で詳述するように、バージョンサーバの役割は、領域内に存在する全てのクライアントアプリケーションのバージョン(120)を追跡することである。一般的に、GDSおよび同等のシステム(100)は、世界的なWAN(130)を通じて、数千のリモートクライアントアプリケーション(120)をインターフェースできるようにされる。クライアント特性は、それらが必要に応じてバージョンサーバによって読み出される、データベース内に格納される。
サーバの下位互換が、不可能であるか、または非常に高価になる時、本発明の方法は、最初に、クライアントアプリケーションおよびGUIのアップグレードバージョンを、全てのリモートクライアントに展開するステップから成る。これは、クライアントアプリケーションの新しいバージョンを、サーバの現在バージョン、およびより新しいバージョンの両方、すなわち全てのものと互換させるという意味を含む。このような機構の場合、新しいサーバは、組み込まれる時に、古いクライアントアプリケーションおよびGUIとの互換性を持つ必要が無くなる。
上述の方策の結果として、展開段階中に(完全な展開は、一般的に、数千のクライアントノードを備えるネットワークにおいて完了するまでに数週間を必要とし得る)、新しいクライアントアプリケーションは、組み込まれる時に、サーババージョンNに、すなわち、稼働中の現在バージョンまでダウングレードされる。そのステータスは、それに応じて、バージョンサーバ(105)のデータベース(107)内で、「バージョンNへのダウングレード」に変更される。したがって、クライアントアプリケーションがクライアントノード内に展開される暫定期間中、既にアップグレードされたノードのそれは、系統的に、すなわちクライアントが再起動されるたびに、現在のサーバと互換性があるバージョンNを使用している。
分配が完了するか、またはほぼ完了すると、サーバシステム、例えば図1のGDS(100)は、エンドユーザの全てまたは少なくとも大部分が、アップグレードされたクライアント/サーバの機能および特徴の活用を開始することができるように、新しいサーバを昇格させることを決定することができる。昇格は、システムの管理者によって手動で行うことができるか、またはソフトウェアのロード時に自動的にトリガすることができる。この場合、バージョンサーバは、サーバの次のバージョン(N+1)を稼働させ、クライアントアプリケーションおよびGUIもN+1のレベルで動作させることができるように、データベースにおいてリモートクライアントノードのステータスを「有効」に変更するように指示される。これを達成するために、バージョンサーバは、バージョンN(および、もしあれば、古いバージョン)を使用する全てのセッションの切断を強制する。このために、ユーザセッションを終了させて、クライアントアプリケーションおよびGUIの再起動を問い合わせるように、バージョンサーバによって、サインアウトメッセージが各クライアントリモートノードに送られる。次いで、次の再起動時に、本発明の以下の説明にさらに論じられるように、バージョンN+1が自動的に使用される。ここでは、GDSサービスプロバイダシステムは、必要に応じて少数または多数のクライアントノードを、バージョンサーバを通じて制御する自由度を有することに留意されたい。特定のアップグレードが関係するクライアントノードだけを再起動する必要がある。アップグレード、ダウングレード(例えば、前バージョンに関するフォールバックの場合)、およびバージョンブロッキング(現在バージョンに互換性が無い場合)は、種々の非常に異なるレベルの細かさで実行することができる。これは、全世界、領域、国、都市、空港から、空港内の特定のターミナル、搭乗ゲート、オフィス等のあらゆる識別可能な場所に及び得、したがって、新しいクライアントバージョンにかなりの柔軟性を提供する。
図2は、クライアントアプリケーションおよびGUIが、稼働中のサーババージョンに依存して、どのように動作しなければならないのかを決定する、クライアントノードでの方法の主要なステップを説明する。
プロセスは、クライアントアプリケーション(210)が再起動されるたびに実行される。トランザクション(transactions)は、バージョンサーバおよびデータベース(220)から、使用されるクライアントアプリケーションのバージョンの詳細(214)を読み出すように、ログイン時にクライアントアプリケーションによって開始される(212)。クライアントアプリケーションによってバージョンサーバに自動的に送られる問い合わせは、使用中のアプリケーション識別(ID)を含むクライアントノードのID、およびそのバージョン番号を含んでいる必要がある。
本発明の好適な一実施形態では、クライアントアプリケーションのバージョンの使用および新しいバージョンの展開の進捗に関する統計を確立するように、問い合わせは、以下を含む、クライアントに関するより多くの情報を含んでいなければならない。
−ユーザ識別、
−ユーザのオフィス、例えば:ロンドンにあるルフトハンザ(LH)代理店のLONLH033、
−ユーザの場所、例えば:ロンドンヒースロー空港の第2ターミナルのゲート20に対するLHR/T2/GTE/20、
−ユーザの組織、例えば:航空会社名であるLH、
−その他。
いずれにしても認証の一部として図1に示されるログオンおよびセキュリティサーバ(LSS)(103)に提供される情報は、アプリケーションサーバの正当なユーザとして認識されるように提供される。
したがって、クライアントアプリケーションによる問い合わせ(212)で提供されるものは、その領域での新しいアプリケーションのバージョンの展開、および概して、アプリケーションサーバとインターフェースするクライアントアプリケーションの集団の特性に関する非常に重要な情報を得るために用いることができる。例えば、GDSは、クライアントアプリケーションのあるバージョンを使用している世界中の場所のリストを確立することができるか、または非常に古いバージョンを依然として使用している場所を検出することができる。クライアントアプリケーションによって提供された情報は、データベース内に収集され、リモートクライアントノードの大集団の監視および管理を担当する管理センターから実行される、あらゆる種類のプログラムによって利用することができる。
バージョンサーバ(220)は、全てのクライアントノードで使用中のクライアントアプリケーションおよびGUIのステータスリストを管理し続ける。次いで、現在稼働中のアプリケーションサーバのバージョンを知ること、および、上述のように、問い合わせでクライアントノードによって提供される情報に基づいて、ログイン時に、ステータスが各クライアントシステムに返される(214)。ステータスは、以下の値のうちの1つを取り込むことができる。
有効:クライアントアプリケーションおよびGUIの最後にダウンロードしたバージョン(N+1)のステータスである。これは、新しいクライアントアプリケーションが展開された後の通常のステータスであり、稼働させたサーバの新しいバージョンに対応する。
非推奨:クライアントアプリケーションおよびGUIは、古いバージョンであるが、現在のプロダクションサーバと互換性があることを示す。このステータスは、GUIの新しいバージョンが利用できるが、古い展開されたGUIは、現在サーバとの互換性を保持している時に用いられる。クライアント構成に応じて、任意で、ログイン時に警告メッセージがエンドユーザに表示される。
バージョンNへダウングレード:新しく展開されたクライアントアプリケーションおよびGUIのバージョンN+1が、バージョンNとして動作しなければならない(一方で、対応する新しいサーバを作動させる前に、新しいクライアントアプリケーションおよびGUIが配布されている)ことを示す。上述のように、このステータスは、主に、下位互換性の無いサーバの起動を管理できるようにするために用いられる。以下に説明するように、サーバの(前バージョンへの)フォールバックを管理するためにも用いられる場合もある。
無効:クライアントアプリケーションおよびGUIが、現在のプロダクションサーバとの互換性が無い、古いバージョンであることを示す。クライアントノードのエンドユーザは、ログイン時に警告通知を受け取り、通常は、ブロックされる。
上述のステータス値は、稼働中のアプリケーションサーバのバージョンに従って動作するように、クライアントシステム(216)によって翻訳される。その後、それらの処理を担当するクライアントアプリケーションとアプリケーションサーバ(230)との間で、通常のトランザクション(218)を行うことができる。
何らかの理由で、昇格したアプリケーションサーバに問題が生じて、これを取り除かなければならない場合、前バージョンに関するフォールバックが生じなければならない。よって、既にダウンロードされた新しいクライアントアプリケーションおよびGUIは、展開が進行していた暫定期間中におけるように、以前のサーババージョンと互換性をもって動作を再開するように、「ダウングレード」のステータスに戻して設定しなければならない。一部のクライアントシステムが、依然としてクライアントアプリケーションおよびGUIの前バージョンを使用していた場合、それらのステータスは、「非推奨」から「有効」に逆転される。
図3は、ログイン時に問い合わせが発行されたクライアントシステムに起因するステータスを、バージョンサーバがどのように管理するのかを論じる。
プロセスは、クライアントシステムによってバージョンサーバに発行される問い合わせに提供される、クライアントアプリケーションおよびGUIのバージョン(310)から始まる。クライアントシステムによって問い合わせられた時に返されるステータスを決定するために、バージョンサーバは、提供されたクライアントバージョン(310)に対してそれぞれ確認される(340)互換性規則を使用し、アプリケーションのどのバージョンが稼働中であるのかを知る。しかしながら、互換性規則の拡大を回避するために、メタ規則に対するクライアントバージョンの先行確認(320)が存在する。メタ規則は、所与の値よりも古い全てのバージョン番号を直接的に排除するために用いられる。クライアントアプリケーションあたり1つのメタ規則が存在する。したがって、メタ規則の確認に失敗した場合(331)、「無効ステータス」が直接的に返される(352)。一方で、クライアントバージョンがメタ規則の確認を通過した場合(332)、互換性規則を確認する(340)ことが必要である。互換性規則は、規則に関係する全てのものが、最終的に有効であると宣言される(380)ように、稼働中のサーバと特定のクライアントシステムとの間に互換性が存在しない、全ての状況を追跡する。そうでない場合、規則に関係するクライアントシステムは、それらに適用する規則の内容に従って、「無効」である(350)、「非推奨」である(360)、または「ダウングレード」である(370)と宣言される。
図4は、バージョンサーバの使用によってもたらされる機能拡張である、クライアントシステムのオンラインパッチングを説明する。
バージョンサーバの使用は、場合により数千または数万のクライアントノードが関係する多数のクライアントシステムが関与する、大きいネットワークにおいて特に有用である。よって、新しいクライアントアプリケーションの展開は、一般的に完了までに数週間かかる、厄介で時間のかかるタスクである。リモートサイトは、サービスプロバイダ、例えば本発明を示すために用いられるGDSの直接制御下にない場合があるので、例えば空港当局を担当するものは、実際に、それらのシステムに悪影響を与えるという恐れから、アプリケーションの新しいバージョンの組み込みを嫌う可能性がある。本発明によってサポートされるフォールバック機構は、この懸念に対する1つの回答であり、深刻な問題の場合に、サーバの前バージョンに戻すことができるようにする。本発明によるバージョンサーバは、クライアントアプリケーションの展開が進行中である間に、またはそれが達成された後のいずれかの時点で見出されるであろう問題を回避するために、さらなる機能的拡張を実施できるようにする。
主要なブロッキングの問題が、既に世界的に採用されているクライアントアプリケーションのバージョン(410)に見つかった場合、バージョンサーバ(420)は、クライアントアプリケーション全体を再配布する必要無く、問題を解決するように、コードの一部であるパッチを提供することができる。これを行うために、図2で既に説明されているように、バージョンサーバが、リモートクライアントシステムのログイン時に自動的に送信された問い合わせ(412)に回答する時に、その応答にパッチが追加される。問い合わせで提供されるバージョン番号およびアプリケーション名に基づいて、バージョンサーバは、クライアントアプリケーションのバージョンが、機能的問題を有することを認識する。次いで、バージョンサーバによって送られる応答は、既に論じたステータスと、機能的問題のパッチとを含む(414)。サーバの応答の受信時に、クライアントアプリケーションは、バージョンステータスに従ってその動作を変化させ、かつそれ自体にパッチを適用する(416)。パッチは、クライアントアプリケーション機械に恒久的に格納も組み込みも行われず、クライアントアプリケーションが再開されるたびに適用される。その後、通常のトランザクション(418)を、それらを担当するクライアントアプリケーションと、アプリケーションサーバ(430)との間で再開することができる。この動作モードは、新しいバージョンが再配布されるまで継続する。

Claims (17)

  1. アプリケーションサーバ(109)内で実行されるソフトウェアプログラムの新しい下位互換性の無いバージョンの、クライアント/サーバネットワーキング環境(130)内への導入を管理するための方法であって、
    最初に、アプリケーションサーバの前記ソフトウェアプログラムの前記新しい下位互換性の無いバージョンが提供されるクライアントシステム(122)に、前記アプリケーションサーバの前記ソフトウェアプログラムの現在バージョンと互換性があるダウングレードモード、および前記ソフトウェアプログラムの前記新しい下位互換性の無いバージョンと互換性がある有効モードで動作可能である、クライアントアプリケーション(120)を配布するステップと、
    前記クライアントシステムへの組み込みに応じて、前記クライアントアプリケーションを、前記アプリケーションサーバの前記ソフトウェアプログラムの前記現在バージョンと互換性がある、ダウングレードモード(370)に設定するステップと、
    前記アプリケーションサーバの前記ソフトウェアプログラムの前記新しい下位互換性の無いバージョンの導入まで、前記クライアントアプリケーションを前記ダウングレードモードで動作させ続けるステップと、
    前記アプリケーションサーバの前記ソフトウェアプログラムの前記新しい下位互換性の無いバージョンの導入に応じて、前記クライアントアプリケーションを、前記アプリケーションサーバの前記ソフトウェアプログラムの前記新しい下位互換性のないバージョンと互換性がある、前記有効モード(380)に設定するステップと、
    その時点から、前記クライアントアプリケーション(120)を前記有効モードで動作させるステップと、
    を含む、方法。
  2. 設定するステップは、前記クライアントシステムの再起動ごとに自動的にトリガされ、下記のステップ
    前記クライアント/サーバネットワーキング環境で動作するバージョンサーバ(105)に問い合わせるステップ(212)であって、前記問い合わせは、前記クライアントシステムの識別を含み、クライアントアプリケーションのバージョン番号をさらに含む、ステップと、
    前記クライアントシステム(216)を、前記ダウングレードモードおよび前記有効モードを含む複数のモードから選択された一つのモードで動作させるように、前記問い合わせられたバージョンサーバ(105)からステータス値を得るステップ(214)と、
    をさらに含む、請求項1に記載の方法。
  3. 問い合わせ(212)は、統計を確立するように、前記クライアントシステムに関する地理的位置、ユーザ識別、およびあらゆる種類の情報をさらに含む、請求項2に記載の方法。
  4. 問い合わせの内容は、前記バージョンサーバのデータベース(107)内に格納される、請求項2又は3に記載の方法。
  5. 前記クライアントシステムの再起動は、前記アプリケーションサーバの前記ソフトウェアプログラムの前記新しい下位互換性の無いバージョンが稼働された時に、前記アプリケーションサーバ(100)を動作させるサービスプロバイダによって強制される、請求項2に記載の方法。
  6. 前記クライアントシステムの再起動は、前記アプリケーションサーバの前記ソフトウェアプログラムの前記新しい下位互換性の無いバージョンがロードされた時に、自動的に強制される、請求項5に記載の方法。
  7. 前記バージョンサーバから前記クライアントシステムへ再起動の問い合わせ及びサインアウトメッセージが送られることにより再起動が強制される、請求項から6のいずれか1項に記載の方法。
  8. 前記クライアントシステムの再起動は、前記アプリケーションサーバの前記ソフトウェアプログラムの前バージョンに関するフォールバックの場合に、自動的に強制される、請求項5に記載の方法。
  9. 前記クライアントアプリケーションは、前記クライアントシステムを無効モード(350)で動作させるように、前記バージョンサーバから前記ステータス値を受け取る、請求項に記載の方法。
  10. 前記得るステップは、バージョンサーバにおいて、
    メタ規則に対して前記クライアントアプリケーションのバージョン番号を確認して(320)、メタ規則が指定するものよりも古いクライアントアプリケーションが無効であると即時に宣言する、先行ステップを含む、
    請求項2に記載の方法。
  11. メタ規則の確認に成功した場合に、
    一組の互換性規則(340)に対して前記クライアントアプリケーションのバージョン番号を確認するステップと、
    規則の内容に従って、前記互換性規則(340)に関係する前記クライアントアプリケーションが、無効(350)、非推奨(360)、またはダウングレード(370)であると宣言するステップと、
    そうでない場合は、いかなる互換性規則にも関係しない前記クライアントアプリケーションが、有効(380)であると宣言するステップと、
    をさらに含む、請求項10に記載の方法。
  12. 前記得るステップは、1つ以上のクライアントアプリケーションの問題を修正するように、パッチ(414)を前記クライアントシステムにさらに配信する、請求項2に記載の方法。
  13. 前記パッチは、前記クライアントシステムが再起動される(416)たびに、動的に適用される、請求項12に記載の方法。
  14. 前記クライアントアプリケーションは、グラフィックユーザインタフェース(210)を含む、請求項1から13のいずれか1項に記載の方法。
  15. 前記アプリケーションサーバから遠隔設置された前記クライアントシステムにおいて実行される多数のクライアントアプリケーションのために使用されることを特徴とする請求項1から14のいずれか1項に記載の方法。
  16. アプリケーションサーバのソフトウェアプログラムの新しい下位互換性の無いバージョンの、請求項1〜15のうちのいずれか1項に記載の前記方法の各ステップを実行するために適合される手段を備える、バージョンサーバ(105)と、データベース(107)とを含むクライアント/サーバネットワーキング環境(100)内への導入を管理するためのシステム。
  17. アプリケーションサーバのソフトウェアプログラムの新しい下位互換性の無いバージョンの、請求項1から15のうちのいずれか1項に記載のクライアント/サーバネットワーキング環境内への導入を管理するための前記方法を、少なくとも1つのコンピュータ(110、122)に動作させるためのコンピュータで読み取り可能な記憶媒体に格納されるコンピュータプログラム。
JP2010542632A 2008-01-22 2009-01-16 下位互換性の無いサーババージョンをクライアント/サーバコンピューティング環境に展開するための方法およびシステム Expired - Fee Related JP5437270B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
EP08300042A EP2083354A1 (en) 2008-01-22 2008-01-22 Method and system for deploying non-backward compatible server versions in a client/server computing environment
EP08300042.2 2008-01-22
US2283408P 2008-01-23 2008-01-23
US61/022,834 2008-01-23
PCT/EP2009/050471 WO2009092666A1 (en) 2008-01-22 2009-01-16 Method and system for deploying non-backward compatible server versions in a client/server computing environment

Publications (3)

Publication Number Publication Date
JP2011510388A JP2011510388A (ja) 2011-03-31
JP2011510388A5 JP2011510388A5 (ja) 2012-04-05
JP5437270B2 true JP5437270B2 (ja) 2014-03-12

Family

ID=39238889

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010542632A Expired - Fee Related JP5437270B2 (ja) 2008-01-22 2009-01-16 下位互換性の無いサーババージョンをクライアント/サーバコンピューティング環境に展開するための方法およびシステム

Country Status (11)

Country Link
US (1) US9098371B2 (ja)
EP (2) EP2083354A1 (ja)
JP (1) JP5437270B2 (ja)
KR (1) KR101676042B1 (ja)
CN (1) CN101925878B (ja)
AU (1) AU2009207774B2 (ja)
BR (1) BRPI0906423A2 (ja)
CA (1) CA2711944C (ja)
ES (1) ES2632740T3 (ja)
WO (1) WO2009092666A1 (ja)
ZA (1) ZA201004928B (ja)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8161551B1 (en) * 2009-04-21 2012-04-17 Mcafee, Inc. System, method, and computer program product for enabling communication between security systems
CN102521001B (zh) * 2011-12-19 2014-04-02 青岛海信网络科技股份有限公司 一种c/s结构应用程序版本兼容性控制方法
US9262149B2 (en) * 2012-04-12 2016-02-16 International Business Machines Corporation Managing incrementally applied system updates
US9509566B2 (en) * 2013-06-27 2016-11-29 Yokogawa Electric Corporation System and method for generating output data
US9262237B2 (en) 2013-12-17 2016-02-16 International Business Machines Corporation Automating software availability management based on API versioning
US9262152B1 (en) * 2015-01-22 2016-02-16 Bank Of America Corporation Modular system including management and deployment of software updates and revisions
CN106897053B (zh) * 2016-07-08 2020-06-26 阿里巴巴集团控股有限公司 一种代码发布方法与装置
US10417116B2 (en) * 2016-07-28 2019-09-17 International Business Machines Corporation System, method, and apparatus for crowd-sourced gathering of application execution events for automatic application testing and replay
US10289401B1 (en) * 2016-12-30 2019-05-14 Juniper Networks, Inc Systems and methods for efficiently downgrading operating systems installed on network devices
CA3084719C (en) 2017-10-17 2024-01-23 Telefonaktiebolaget Lm Ericsson (Publ) Service registration in a communications network
US10997192B2 (en) 2019-01-31 2021-05-04 Splunk Inc. Data source correlation user interface
US10754638B1 (en) * 2019-04-29 2020-08-25 Splunk Inc. Enabling agile functionality updates using multi-component application
US11194564B1 (en) 2019-04-29 2021-12-07 Splunk Inc. Maintaining compatibility in a multi-component application
CN112738550B (zh) * 2019-10-14 2022-10-11 腾讯科技(深圳)有限公司 内容数据的处理方法、装置、电子设备及介质
US11151125B1 (en) 2019-10-18 2021-10-19 Splunk Inc. Efficient updating of journey instances detected within unstructured event data
CN111522561B (zh) * 2020-03-06 2023-06-06 杜晓楠 Dbft分布式网络中平滑向后兼容升级的方法、计算机可读存储介质和dbft网络
US11269876B1 (en) 2020-04-30 2022-03-08 Splunk Inc. Supporting graph data structure transformations in graphs generated from a query to event data
US11561821B1 (en) * 2020-05-07 2023-01-24 Amazon Technologies, Inc. Controlling placement of virtualized resources based on desirability index for host pools
US11741131B1 (en) 2020-07-31 2023-08-29 Splunk Inc. Fragmented upload and re-stitching of journey instances detected within event data
CN113885903B (zh) * 2021-08-30 2022-07-29 珠海读书郎软件科技有限公司 一种应用市场多应用升级的方法

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0581010A (ja) * 1991-09-20 1993-04-02 Fujitsu Ltd パツチ実施方法
JPH07129373A (ja) * 1993-10-29 1995-05-19 Matsushita Electric Ind Co Ltd アプリケーションバージョン管理装置
US5754785A (en) * 1995-04-27 1998-05-19 General Datacomm Communications network equipment
US5732275A (en) * 1996-01-11 1998-03-24 Apple Computer, Inc. Method and apparatus for managing and automatically updating software programs
US6343328B1 (en) * 1997-02-10 2002-01-29 International Business Machines Corporation Digital computer system using embedded comments to manipulate virtual controller functions
US6718549B1 (en) * 1999-05-05 2004-04-06 Microsoft Corporation Methods for managing the distribution of client bits to client computers
US6754848B1 (en) * 1999-09-30 2004-06-22 International Business Machines Corporation Method, system and program products for operationally migrating a cluster through emulation
WO2001069382A1 (en) * 2000-03-10 2001-09-20 Aether Systems, Inc. System, method and apparatus for initial configuration of a client device
US20020078262A1 (en) 2000-12-14 2002-06-20 Curl Corporation System and methods for providing compatibility across multiple versions of a software system
US6950847B2 (en) * 2001-07-12 2005-09-27 Sun Microsystems, Inc. Service provider system for delivering services in a distributed computing environment
JP2004334767A (ja) * 2003-05-12 2004-11-25 Nec Corp 情報処理方法、情報処理装置及び情報処理プログラム
JP2005107708A (ja) * 2003-09-29 2005-04-21 Canon Inc アプリケーション配布システム
US20050108706A1 (en) * 2003-11-14 2005-05-19 International Business Machines Corporation Method and system for dynamically loading server code on a client to support multiple veresions of client and servers in a client/server application
CN1287279C (zh) 2003-11-14 2006-11-29 中兴通讯股份有限公司 一种分布式系统中客户端从服务器端下载软件的方法
US20050132032A1 (en) * 2003-12-15 2005-06-16 Bertrand Daniel W. Autonomous agent-based system management
KR100992027B1 (ko) * 2004-09-17 2010-11-05 인터내셔널 비지네스 머신즈 코포레이션 클라이언트 플랫폼에 포틀릿을 표시 및 설치하는 방법
US7792522B1 (en) * 2006-01-13 2010-09-07 Positive Access Corporation Software key control for mobile devices
JP4842690B2 (ja) * 2006-04-14 2011-12-21 富士通株式会社 アプリケーション管理プログラム、アプリケーション管理方法およびアプリケーション管理装置
US7606836B2 (en) * 2006-08-21 2009-10-20 Tibco Software Inc. Methods for efficient data version verification

Also Published As

Publication number Publication date
US9098371B2 (en) 2015-08-04
KR20100113573A (ko) 2010-10-21
CN101925878A (zh) 2010-12-22
KR101676042B1 (ko) 2016-11-14
CN101925878B (zh) 2015-01-14
AU2009207774B2 (en) 2014-10-30
EP2235625B1 (en) 2017-05-03
CA2711944C (en) 2018-08-14
AU2009207774A1 (en) 2009-07-30
JP2011510388A (ja) 2011-03-31
US20110185348A1 (en) 2011-07-28
BRPI0906423A2 (pt) 2015-07-14
CA2711944A1 (en) 2009-07-30
ES2632740T3 (es) 2017-09-15
WO2009092666A1 (en) 2009-07-30
EP2083354A1 (en) 2009-07-29
EP2235625A1 (en) 2010-10-06
ZA201004928B (en) 2012-10-31

Similar Documents

Publication Publication Date Title
JP5437270B2 (ja) 下位互換性の無いサーババージョンをクライアント/サーバコンピューティング環境に展開するための方法およびシステム
US7003767B2 (en) System and method for remotely updating software applications
US20120102480A1 (en) High availability of machines during patching
EP1465064A2 (en) Operating system deployment methods and systems
MXPA05001672A (es) Arquitectura de sistema de distribucion de actualizacion y metodo para distribuir software.
US20070043831A1 (en) Distribution of software based on scheduled time to deploy software dynamic resource state of systems involved in deployment of software and based upon environmental conditions
WO2015043407A1 (en) Method, system, and apparatus for online service inspection
CN101727343A (zh) 分布式服务器的软件安装部署方法
US10042632B2 (en) Collaborative maintenance of software programs
EP3772686A1 (en) Automatic restore for a failed virtual computing session
JP2009521746A (ja) プログラム実行サービスウィンドウ
KR20160025282A (ko) 클라이언트 단말에 대한 사용자 맞춤형 동기화 서비스 제공 방법 및 시스템
CN104572255A (zh) 一种多层应用托管方法、装置及系统
CN114257503A (zh) 加速域名部署方法、服务器、系统和存储介质
CN107870768A (zh) 一种CAE集群模式下Web应用程序的不停机部署方法
EP3659033B1 (en) Connector leasing for long-running software operations
CN105827467A (zh) 一种注册中心升级方法、相关设备及系统
CN116582527B (zh) 分布式服务的动态更新方法、装置、设备、介质及产品
JP4882291B2 (ja) モジュール更新プログラム
US7657615B1 (en) Approach for provisioning network devices
US7346767B2 (en) Method and apparatus for managing resource access in configuring a plurality of computers
JP4710171B2 (ja) プログラム実行方法及びこれを用いたシステム
JP2017058935A (ja) データ配信制御プログラム、データ配信制御方法及びデータ配信装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120106

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120214

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130214

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130226

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130516

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130605

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20130621

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20130702

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130910

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20131101

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20131211

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 5437270

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees