(58)【調査した分野】(Int.Cl.,DB名)
医用情報を処理するための臨床アプリケーションを提供するサーバ装置と、当該サーバ装置と通信ネットワークを介して通信可能な複数のクライアント装置とを備える医用情報処理システムであって、
前記サーバ装置は、
前記臨床アプリケーションの使用許可が与えられているクライアント装置の数が、前記臨床アプリケーションを同時に使用することが許容されるクライアント端末の上限数を示す同時使用可能数に達しているか否かを判定する判定部と、
前記臨床アプリケーションの使用許可が与えられているクライアント装置の数が前記同時使用可能数に達していない場合に、前記複数のクライアント装置のうち前記臨床アプリケーションの使用を要求する第1クライアント装置に、前記臨床アプリケーションの使用許可を与える付与部と、
前記臨床アプリケーションの使用許可が与えられているクライアント装置の数が前記同時使用可能数に達している場合に、前記複数のクライアント装置の中から、前記臨床アプリケーションを使用可能な1台以上のクライアント装置を第2クライアント装置として選定する選定部と、
前記選定部により前記第2クライアント装置が選定された場合に、前記第1クライアント装置によって指定される作業の代行を前記第2クライアント装置に依頼する代行依頼部と、
を具備することを特徴とする医用情報処理システム。
前記判定部は、前記サーバ装置に同時に接続しているクライアント装置の数が、前記サーバ装置に同時に接続されることが許容されるクライアント装置の上限数を示す同時接続可能数に達しているか否かをさらに判定し、
前記選定部は、前記サーバ装置に同時に接続しているクライアント装置の数が前記同時使用可能数に達している場合、及び前記サーバ装置に同時に接続しているクライアント装置の数が前記同時接続可能数に達している場合の少なくとも一方の場合に、前記複数のクライアント装置の中から、前記臨床アプリケーションを使用可能な1台以上のクライアント装置を第2クライアント装置として選定する、ことを特徴とする請求項1に記載の医用情報処理システム。
前記サーバ装置は、前記第2クライアント装置のうち前記作業の代行を受諾したクライアント装置の作業途中のデータを一時的に退避させるデータ退避部をさらに具備することを特徴とする請求項1又は2に記載の医用情報処理システム。
【発明を実施するための形態】
【0009】
以下、必要に応じて図面を参照しながら、実施形態に係る医用情報処理システムを説明する。なお、以下の実施形態では、同一の番号を付した部分については同様の動作を行うものとして、重ねての説明を省略する。
【0010】
(第1の実施形態)
図1は、第1の実施形態に係る医用情報処理システム100を概略的に示している。この医用情報処理システム100は、シンクライアントシステムと呼ばれるコンピュータネットワークシステムを利用している。医用情報処理システム100は、
図1に示されるように、サーバ装置110並びに複数のクライアント装置150A及び150Bを備える。これらのクライアント装置150A及び150Bは、通信ネットワークを介してサーバ装置110と通信することができる。
図1では、説明を簡単にするために、2台のクライアント装置150A及び150Bが示されているが、3台以上のクライアント装置が設けられてもよい。以下では、サーバ装置を単にサーバと呼び、クライアント装置を単にクライアントと呼ぶ。また、クライアント150A及び150Bを特に区別しない場合には、参照符号に付されている添え字(アルファベット)を省略してクライアント150と記載する。
【0011】
サーバ110は、患者に関する情報(患者情報)等の医用情報を集中管理し、医用情報を処理するための1以上の臨床アプリケーション117をクライアント150に提供する医用情報処理装置である。患者情報は、例えば、医用画像撮影装置で撮影された医用画像のデータ、検査データ、電子カルテ等である。医用画像撮影装置としては、例えば、X線診断装置、X線コンピュータ断層撮影(CT:Computed Tomography)装置、磁気共鳴イメージング(MRI:Magnetic Resonance Imaging)装置等がある。また、サーバ110にインストールされている臨床アプリケーション117としては、例えば、医用画像のデータを処理して3次元画像を表示するための3D画像表示アプリケーション、検査データを解析するための臨床用解析アプリケーション等がある。クライアント150は、サーバ110にアクセスして臨床アプリケーション117を使用することにより、医用情報を参照することができる。
【0012】
本実施形態の医用情報処理システム100では、クライアント150によるサーバ110への接続(ログオン)、及びクライアント150による臨床アプリケーション117の使用がサーバ110によってライセンス管理されている。具体的には、サーバ110に同時に接続することが許容されるクライアント150の上限数と、各臨床アプリケーションを同時に使用することが許容されるクライアント150の上限数とが予め定められている。サーバ110への同時接続が許容されるクライアントの上限数を同時接続可能数と呼び、臨床アプリケーションの同時使用が許容されるクライアント150の上限数を同時使用可能数と呼ぶ。同時接続可能数及び同時使用可能数はともにライセンス数とも称される。
【0013】
クライアント150は、医師及び検査技師等のユーザが操作するユーザ端末装置である。クライアント150は、例えば、汎用コンピュータ装置である。クライアント150は、X線CT装置及びMRI装置等の医用画像撮影装置であってもよい。
図1に示されるように、クライアント150は、通信部151、操作部152、表示部153、接続依頼部154、及び代行依頼メッセージ作成部155を備える。
【0014】
通信部151は、クライアント150内で生成される各種信号(例えば、接続要求信号、操作信号等)をサーバ110に送信し、サーバ110から各種信号(例えば、接続許可信号、接続拒否信号、画像信号等)を受信する。操作部152は、キーボード及びマウス等の入力装置からなる。操作部152は、ユーザからの入力を受け付け、入力に応じた操作信号を生成する。表示部153は、画像信号に応じた画像を表示する。表示部153としては、例えば、CRT(cathode-ray tube)ディスプレイ、液晶ディスプレイ、有機EL(electroluminescence)ディスプレイ等を利用することができる。
【0015】
接続依頼部154は、サーバ110への接続依頼を行う。具体的には、接続依頼部154は、サーバ110との接続を確立し且つ臨床アプリケーション117を使用するための接続要求信号を生成し、通信部151を介してサーバ110に送信する。本実施形態では、クライアント150が接続要求と同時に臨床アプリケーション117の使用要求を行う場合を想定し、接続要求信号には、クライアント150が使用を望む臨床アプリケーション117を識別するためのアプリケーション識別子が含まれる。即ち、接続依頼部154は、所望の臨床アプリケーション117のアプリケーション識別子を含む接続要求信号を生成して送信することにより、サーバ110への接続許可及び臨床アプリケーション117の使用許可をサーバ110に要求する。なお、サーバ110とクライアント150との接続が既に確立されていて、臨床アプリケーション117の使用許可のみを得る場合にも、接続依頼部154は、アプリケーション識別子を含む接続要求信号をサーバ110に送信する。ただし、この場合には、後述する接続許可に関する処理は省略される。
【0016】
代行依頼メッセージ作成部155は、臨床アプリケーション117の使用許可が与えられない場合に、代行依頼メッセージを作成するためのグラフィカルユーザインタフェース(GUI:Graphical User Interface)をユーザに提供する。代行依頼メッセージは、ユーザが自クライアント150を使用して行う予定の作業を代行するように他のクライアント150のユーザに依頼するためのものである。
【0017】
サーバ110は、通信部111、接続管理部112、ライセンス管理部113、アプリケーション制御部114、代行依頼部115、選定部116、臨床アプリケーション117、データ退避部118、及び医用情報データベース(DB)119を備える。なお、
図1では、接続管理部112、代行依頼部115及び選定部116が別個の構成要素として示されるが、接続管理部112が代行依頼部115及び選定部116の少なくとも一方の機能を兼ね備えていてもよい。
【0018】
通信部111は、サーバ110内で生成される各種信号(例えば、接続許可信号、接続拒絶信号、画像信号等)をクライアント150に送信し、クライアント150から各種信号(例えば、接続要求信号、操作信号等)を受信する。接続管理部112は、クライアント150との接続を管理するものであり、クライアント150との接続の確立及び切断といった制御を行う。接続管理部112は、サーバ110との接続が確立している(即ち、ログオンしている)クライアント150それぞれに関する情報が記載されている接続状況データベース(DB)を保持している。接続状況DBには、例えば、ホスト名、IPアドレス、ポート番号等の情報が記載されている。
【0019】
ライセンス管理部113は、サーバ110への接続を許可するか否かを判定し、さらに、接続要求信号に含まれるアプリケーション識別子で特定される臨床アプリケーション117の使用を許可するか否かを判定する。ライセンス管理部113は、サーバ110への接続及び臨床アプリケーション117の使用の両方を許可する場合に、臨床アプリケーション117の使用許可を接続要求元のクライアント150に与え、サーバ110への接続及び臨床アプリケーション117の使用の少なくとも一方を不許可とする場合には、臨床アプリケーション117の使用許可を接続要求元のクライアント150に与えない。本実施形態では、臨床アプリケーション117の接続許可には、サーバ110への接続許可が含まれている。具体的には、ライセンス管理部113は、判定部113A及びライセンス付与部113Bを有する。
【0020】
判定部113Aは、サーバ110に接続中のクライアント150の数が同時使用可能数に達しているか否かを判定する。判定部113Aは、サーバ110に接続中のクライアント150の数が同時使用可能数に達していない場合、サーバ110への接続を許可し、そうでなければ、接続不許可とする。さらに、判定部113Aは、接続要求信号中のアプリケーション識別子で特定される臨床アプリケーション117を使用中のクライアント数が同時使用可能数に達しているか否かを判定し、臨床アプリケーション117を使用中のクライアント150の数が同時使用可能数に達していない場合、臨床アプリケーション117の使用を許可し、そうでなければ、使用不許可とする。ライセンス付与部113Bは、判定部113Aによりサーバ110への接続及び臨床アプリケーション117の使用の両方が許可された場合に、臨床アプリケーション117の使用許可を接続要求元のクライアント150に与える。
【0021】
アプリケーション制御部114は、臨床アプリケーション117の起動及び終了といった制御を行う。
【0022】
代行依頼部115は、接続要求元のクライアント(例えば、クライアント150A)が行う予定の作業を代行するように、他のクライアント(例えば、クライアント150B)に依頼する。具体的には、ライセンス管理部113が接続要求元のクライアント150Aに臨床アプリケーション117の使用許可を与えない場合に、代行依頼部115は、代行依頼メッセージを作成するようクライアント150Aに指示し、クライアント150Aが作成した代行依頼メッセージを他のクライアント150Bに送信する。
【0023】
選定部116は、代行依頼メッセージの送信対象となるクライアント150Bを選定する。データ退避部118は、代行を受諾したクライアント150の作業途中のデータを一時的に保存する。医用情報DB119は、上述したような、患者情報を含む医用情報を格納する。
【0024】
本実施形態では、臨床アプリケーション117は、医用情報DB119に格納されている医用情報を処理するために、サーバ110上で実行される。臨床アプリケーション117は、処理した医用情報、及びクライアント150のユーザが操作するためのGUIを含む表示画像を生成する。この表示画像は、画像信号としてクライアント150へ送られる。クライアント150の表示部153には、医用情報とともにGUIが表示される。クライアント150のユーザは、操作部152でGUIを操作することで所望の医用情報を表示させ、表示された医用情報を確認しながら患者に対して処置(例えば、治療、手術等)を施すことができる。
【0025】
次に、
図2を参照して、医用情報処理システム100の動作について説明する。
図2は、サーバ110の代行依頼処理の一例を示している。ここでは、クライアント150Aがサーバ110との接続を確立して臨床アプリケーション117を使用しようと試み、クライアント150Aが使用を望む臨床アプリケーション117をクライアント150Bが使用している場合を想定している。
【0026】
まず、ステップS201では、クライアント150Aの接続依頼部154は、所望の臨床アプリケーション117の使用許可を要求するために、接続要求信号をサーバ110に送信する。本実施形態の接続要求信号は、クライアント情報、緊急フラグ及びアプリケーション識別子を含む。このクライアント情報は、接続要求元のクライアント150Aに関する情報であり、例えば、ホスト名、IPアドレス及びポート番号等を含む。緊急フラグは、臨床アプリケーション117の使用に関して急を要するか否かを識別するための情報である。緊急フラグは、例えば急病の患者が発生した場合のように、臨床アプリケーション117を緊急に使用する必要がある場合にオンに設定される。アプリケーション識別子は、接続要求元のクライアント150Aが使用許可を要求する臨床アプリケーション117を識別するための情報である。なお、接続要求信号には、患者基本情報(例えば、患者を識別するための患者ID又は氏名等)及び接続要求元のクライアント150Aを操作しているユーザに関する情報(例えば、ユーザID、パスワード等)がさらに含まれてもよい。
【0027】
ステップS202では、サーバ110の接続管理部112が、クライアント150Aから接続要求信号を受信する。接続管理部112は、接続要求信号を受信すると、クライアント150Aとの接続の可否の判定、及び接続要求信号中のアプリケーション識別子で特定される臨床アプリケーション117の使用の可否の判定を行うようにライセンス管理部113に指示する。
【0028】
ステップS203では、判定部113Aは、サーバ110に接続中のクライアント数と同時接続可能数とに基づいて、クライアント150Aの接続を許可するか否かを判定する。具体的には、判定部113Aは、接続中のクライアント数が同時使用可能数に達していない場合に、接続を許可し、接続中のクライアント数が同時使用可能数に達している場合に接続を不許可とする。接続が許可された場合は、ステップS204に進み、接続が不許可となった場合は、ステップS206に進む。なお、判定部113Aは、同時接続可能数からサーバ110に接続中のクライアント数を引いた値を残り接続可能数として予め算出して保持しておき、残り接続可能数が1以上か否かを判定することで接続の可否を判定してもよい。
【0029】
ステップS204では、判定部113Aは、臨床アプリケーション117を使用中のクライアント数と同時使用可能数とに基づいて、臨床アプリケーション117の使用を許可するか否かを判定する。具体的には、ライセンス管理部113は、臨床アプリケーション117を使用中のクライアント数が同時使用可能数に達していない場合に使用を許可し、臨床アプリケーション117を使用中のクライアント数が同時使用可能数に達している場合に使用不許可とする。一例として、ライセンス管理部113は、
図3に示すような、臨床アプリケーションAPP1,APP2,…,APPnそれぞれに対応付けて同時使用可能数及び使用中のクライアント数を記載したデータテーブル300を保持する。この例では、ライセンス管理部113は、アプリケーション識別子で特定される臨床アプリケーション、例えば、臨床アプリケーションAPP2でデータテーブル300を参照し、その臨床アプリケーションAPP2に対応付けられている同時使用可能数及び使用中のクライアント数を比較することにより、この臨床アプリケーションAPP2の使用の可否を判定する。臨床アプリケーション117の使用が許可された場合、ステップS205に進み、臨床アプリケーション117の使用が不許可となった場合、ステップS206に進む。
【0030】
なお、ライセンス管理部113は、同時使用可能数から使用中のクライアント数を引いた値を残余使用可能数として予め算出して保持しておき、接続要求信号が受信されたときの残余使用可能数が1以上か否かを判定することで接続の可否を判定してもよい。また、本実施形態では、いずれの臨床アプリケーション117も全てのクライアント150によって使用されることができるが、臨床アプリケーション117毎に使用可能なクライアントが設定されてもよい。
【0031】
ステップS203でサーバ110への接続が許可され、ステップS204で臨床アプリケーション117の使用が許可されると、ライセンス付与部113Bは、接続要求元のクライアント150Aに臨床アプリケーション117の使用許可を発行して与えることに決定し、使用許可を接続管理部112に通知する。さらに、判定部113Aは、臨床アプリケーション117を使用中のクライアント数をインクリメントするとともに、サーバ110に接続中のクライアント数をインクリメントする。臨床アプリケーション117を使用中のクライアント数は、臨床アプリケーション117の使用許可が与えられているクライアント150の数を示し、第1ライセンス発行数とも称される。サーバ110に接続中のクライアント数は、接続許可が与えられているクライアント150の数を示し、第2ライセンス発行数とも称される。
【0032】
接続管理部112は、ライセンス管理部113から使用許可通知を受け取ると、接続要求元のクライアント150A向けに臨床アプリケーション117を起動するようにアプリケーション制御部114に指示する。アプリケーション制御部114は、接続要求元のクライアント150A向けに臨床アプリケーション117を起動する。その後、アプリケーション制御部114は、臨床アプリケーション117の起動が完了したことを接続管理部112に通知する。接続管理部112は、アプリケーション制御部114から起動完了通知を受け取ると、接続ポート番号を含む接続許可信号をクライアント150Aに送信し、接続状況データベースを更新する。
【0033】
ステップS205では、クライアント150Aが接続要求信号に対する応答として接続許可信号をサーバ110から受信することにより、クライアント150Aとサーバ110との間の接続が確立され、クライアント150Aでの臨床アプリケーション117の使用が可能になる。
【0034】
一方、ステップS203においてサーバ110への接続が不許可となった場合、或いは、ステップS204において臨床アプリケーション117の使用が不許可となった場合、ライセンス管理部113は、臨床アプリケーション117の使用不許可を接続管理部112に通知する。ステップS206では、接続管理部112は、ライセンス管理部113から使用不許可通知を受け取ると、接続要求信号中の緊急フラグがオンかオフかを判定する。緊急フラグがオフである場合、即ち、緊急でない場合、接続管理部112は、臨床アプリケーション117の使用許可が与えられないことを示す接続拒絶信号をクライアント150Aに送信し、一連の処理が終了する。
【0035】
緊急フラグがオンである場合、即ち、緊急の場合、接続管理部112は、代行依頼メッセージを送信する対象のクライアントを選定するように選定部116に指示する。ステップS207では、選定部116は、例えば接続管理部112が保持する接続状況DBを参照して、接続中のクライアント150の中から、アプリケーション識別子で特定される臨床アプリケーション117を使用可能な1台以上のクライアント150(例えば、クライアント150B)を代行依頼メッセージの送信先として選定する。臨床アプリケーション117を使用中のクライアント数が同時使用可能数と等しい場合には、臨床アプリケーション117を使用可能なクライアント150は、臨床アプリケーション117の使用許可が与えられているクライアント150を指す。また、臨床アプリケーション117を使用中のクライアント数が同時使用可能数未満である場合には、臨床アプリケーション117を使用可能なクライアント150は、サーバ110に接続中の全てのクライアント150を指す。これは、臨床アプリケーション117を使用中のクライアント数が同時使用可能数未満である場合、サーバ110に接続中のクライアント150であれば、いずれのクライアント150もその臨床アプリケーション117の使用許可を得ることができるからである。
【0036】
代行依頼メッセージの送信先のクライアントを選定する方法としては、接続中のクライアントそれぞれに対して優先度を設定した優先度テーブルを用意し、臨床アプリケーション117を使用可能なクライアント150のうち優先度が最も低いクライアント、若しくは、優先度が閾値より低い1台以上のクライアントを選定する方法がある。他の選定方法では、ユーザを予めグループ化しておき、接続要求元のクライアント150Aのユーザと同じグループに属するユーザが使用しているクライアント150を選定する。さらに他の選定方法では、クライアント150Aが使用を望む臨床アプリケーション117と同じ臨床アプリケーション117の使用許可を与えられているクライアント150を選定する。また、これらの選定方法を適宜組み合わせて用いて、代行依頼メッセージの送信先を選定してもよい。或いは、臨床アプリケーション117を使用可能な全てのクライアント150に対して代行依頼メッセージを送信するようにしてもよい。
【0037】
選定部116は、接続要求元のクライアント150Aに関する情報、及び選定したクライアント(又はクライアント群)150Bに関する情報(例えば、ホスト名、IPアドレス、ポート番号等)を代行依頼部115に送る。接続要求元のクライアント150Aに関する情報は、接続管理部112によって代行依頼部115へ送信されてもよい。
【0038】
ステップS208では、代行依頼部115は、代行依頼メッセージを作成するように接続要求元のクライアント150Aに指示する。クライアント150Aの代行依頼メッセージ作成部155は、サーバ110から代行依頼メッセージの作成指示を受け取ると、代行依頼メッセージを作成することをユーザに促すメッセージを表示部153に表示させる。表示部153には、例えば、「ライセンス数の制限により所望のアプリケーションを使用できません。作業の代行を他のユーザに依頼しますか?」といったメッセージが表示される。
【0039】
クライアント150Aのユーザが作業の代行を依頼する場合、代行依頼メッセージ作成部155は、代行依頼メッセージを作成するためのGUIをユーザに提供する。ステップS209では、このユーザは、提供されたGUIを使用して代行依頼メッセージを作成する。代行依頼メッセージ作成部155は、ユーザによって作成された代行依頼メッセージを、通信部151を介してサーバ110に送信する。代行依頼メッセージは、依頼者情報、患者基本情報、依頼作業内容情報、及びコメント等を含む。依頼者情報は、接続要求元のクライアント150Aを使用しているユーザに関する情報であり、例えば、所属グループ(部署)、氏名、連絡先等を含む。患者基本情報は、患者を識別するための患者ID及び氏名等を示す情報である。依頼作業内容情報は、使用する臨床アプリケーション117及び処置内容等の依頼する作業に関する情報である。
【0040】
ステップS210では、代行依頼部115は、クライアント150Aから代行依頼メッセージを受け取ると、受け取った代行依頼メッセージを、選定部116により選定されたクライアント150B又はクライアント群に送信する。サーバ110から代行依頼メッセージを受け取ったクライアント150Bの表示部153には、代行依頼メッセージが表示される。表示部153には、代行依頼メッセージとともに、代行依頼メッセージにより指定される作業の代行を受諾するか拒絶するかを選択するための選択ボタンが表示される。クライアント150Bのユーザは、操作部152で受諾か拒絶かを選択することにより、代行依頼メッセージに対して応答する。
【0041】
ステップS211では、サーバ110の代行依頼部115は、依頼先のクライアント150Bから応答(受諾又は拒絶)を受け取り、受諾したクライアントがあるか否かを判定する。どのクライアントも受諾しなかった場合、代行依頼部115は、代行が受諾されなかったことをクライアント150Aに通知する。この場合、クライアント150Aの表示部153には、例えば「作業の代行が受諾されませんでした。」といったメッセージが表示され、一連の処理が終了する。一方、あるクライアント150Bにより代行が受諾された場合、代行依頼部115は、作業の代行が受諾されたことをクライアント150Aに通知し、ステップS212に進む。この場合、クライアント150Aの表示部153には、例えば「作業の代行がXXXさんに受領されました。」といったメッセージが表示される。“XXX”は、代行を受諾したクライアント150Bを使用しているユーザのユーザID(例えばログイン名)を示す。
【0042】
ステップS212では、臨床アプリケーション117は、代行を受諾したクライアント150Bが現在行っている作業を中断し、クライアント150Bの作業途中のデータをデータ退避部118へ一時的に退避させる。さらに、臨床アプリケーション117は、患者基本情報で特定される患者情報を医用情報DB119から読み出す。ステップS213では、クライアント150Bは、クライアント150Aからの代行依頼メッセージで指定される作業、例えば、緊急患者への治療を代行する。代行作業が完了した後に、ステップS214において、クライアント150Bは、中断した作業の再開をサーバ110に指示し、サーバ110では、臨床アプリケーション117は、データ退避部118に保存されているデータを読み出し、作業中断時の状態を復元する。
【0043】
このように、医用情報処理システム100においては、接続要求元のクライアント150Aに臨床アプリケーションの使用許可が与えられない場合には、サーバ110が他のクライアント150Bに作業の代行を依頼することにより、臨床アプリケーション117を使用した緊急患者への対応が可能となる。
【0044】
なお、本実施形態では、同時接続可能数及び同時使用可能数の両方が定められている例を説明したが、同時接続可能数及び同時使用可能数の一方のみが定められていてもよい。同時使用可能数のみが定められる例では、ライセンス付与部113Bは、臨床アプリケーション117の使用許可が与えられているクライアント数が同時使用可能数に達していない場合に、接続要求元のクライアント150に臨床アプリケーション117の使用許可を与える。
【0045】
また、全ての臨床アプリケーション117について同時使用可能数が定められるのではなく、特定の臨床アプリケーションについてのみ同時使用可能数が定められていてもよい。
【0046】
上述したサーバ110及びクライアント150の各部は、ハードウェア、ソフトウェア、又はハードウェア及びソフトウェアの組み合わせにより実現することができる。サーバ110は、クライアント150と比較して大規模なハードウェア資源を有する。具体的なハードウェア構成として、サーバ110は、CPU(Central Processing Unit)、RAM(Random Access Memory)、ハードディスクドライブ(HDD:Hard Disk Drive)、ネットワークデバイス等を有している。HDDは、サーバ110の各部を制御するための制御プログラム、臨床アプリケーション117のプログラム、接続状況DB及び医用情報DB119等を記憶する記憶部として機能する。さらに、HDDは、データ退避部118としても使用される。CPUは、制御プログラムをRAM上に展開し、制御プログラムに従ってサーバ110の動作を制御する。また、CPUは、臨床アプリケーション117をRAM上に展開して実行する。ネットワークデバイスは、CPUの制御のもとに通信ネットワークを介してクライアント150と通信する通信部111である。
【0047】
クライアント150は、CPU、ROM、RAM、ネットワークデバイス、キーボード、マウス、ディスプレイ等を有している。ROMは、クライアント150の各部を制御するための制御プログラム等を格納する。CPUは、制御プログラムをRAM上に展開し、制御プログラムに従ってクライアント150の動作を制御する。ネットワークデバイスは、CPUの制御のもとに通信ネットワークを介してサーバ110と通信する通信部151である。なお、管理コスト及びセキュリティ向上の観点から、クライアント150は、HDDや、光ディスク等の記録媒体を用いる情報記録再生装置等を備えないことが好ましいが、これらのHDDや情報記録再生装置等を備えてもよい。
【0048】
以上のように、本実施形態に係る医用情報処理システム100においては、臨床アプリケーション117の使用許可が与えられているクライアント数が同時使用可能数に達しているために、若しくは、サーバ110への接続許可が与えられているクライアント数が同時接続可能数に達しているために、臨床アプリケーション117の使用要求を行ったクライアント150Aに臨床アプリケーション117の使用許可が与えられない場合であっても、サーバ110が他のクライアント150Bに作業の代行を依頼することにより、臨床アプリケーション117を使用して緊急の患者に対処することができる。
【0049】
(第2の実施形態)
第2の実施形態では、緊急時において、臨床アプリケーション117の使用許可が与えられているクライアント数が同時使用可能数に達しているために接続要求元のクライアント150Aに臨床アプリケーション117の使用許可が与えられない場合、他のクライアント150Bでの臨床アプリケーション117の使用を一時的に停止させることにより、クライアント150Aでの臨床アプリケーション117の使用を一時的に可能にする。
【0050】
図4は、第2の実施形態に係る医用情報処理システム400を概略的に示している。
図4の医用情報処理システム400と
図1の医用情報処理システム100との違いは、医用情報処理システム400のサーバ110が代行依頼部115の代わりに切替部401を備えていることである。この切替部401は、臨床アプリケーション117の接続先を一時的に切り替える。具体的には、切替部401は、臨床アプリケーション117を使用中のクライアント150Bから接続要求元のクライアント150Aに、臨床アプリケーション117の画像信号の送信先を変更し、クライアント150Aでの作業が終了した後に画像信号の送信先をクライアント150Bに戻す。言い換えると、クライアント150Bから接続要求元のクライアント150Aに臨床アプリケーション117の使用許可が一時的に移行され、その後クライアント150Bに使用許可が戻される。
【0051】
次に、
図5を参照して、医用情報処理システム400の動作について説明する。
図5は、サーバ110の切替処理の一例を示している。ここでは、クライアント150Aが特定の臨床アプリケーション117の使用要求を行い、クライアント150Bが当該臨床アプリケーション117を使用していると想定している。さらに、同時使用可能数のみが定められているものとする。
図5のステップS501〜S505はそれぞれ
図2のステップS201、S202、S204〜S206と同様の処理であるので、その部分についての詳細な説明は省略する。
【0052】
ステップS501では、クライアント150Aは、所望の臨床アプリケーション117の使用許可を得るために、アプリケーション識別子を含む接続要求信号をサーバ110に送信する。ステップS502では、サーバ110は、クライアント150Aから接続要求信号を受信する。ステップS503では、ライセンス管理部113内の判定部113Aは、接続要求信号中のアプリケーション識別子で特定される臨床アプリケーション117の使用を許可するか否かを判定する。臨床アプリケーション117の使用が許可された場合、ライセンス付与部113Bは、接続要求元のクライアント150Aに臨床アプリケーション117の使用許可を与える。ステップS504では、アプリケーション制御部114は、クライアント150A向けに臨床アプリケーション117を起動する。このように臨床アプリケーション117を使用中のクライアント数が同時使用可能数未満である場合、クライアント150Aは、所望の臨床アプリケーション117を使用することができる。
【0053】
臨床アプリケーション117を使用中のクライアント数が同時使用可能数に等しい場合、臨床アプリケーション117の使用許可は与えられない。ステップS505では、接続管理部112は、接続要求信号中の緊急フラグがオンかオフかを判定する。緊急フラグがオフである場合、クライアント150Aは、所望の臨床アプリケーション117を使用することができない。
【0054】
一方、緊急フラグがオンである場合、接続管理部112は、切替対象となるクライアント150を選定するように選定部116に指示する。ステップS506では、選定部116は、接続管理部112が保持する接続状況DBを参照して、臨床アプリケーション117を使用しているクライアント150の中から、切替対象となる1台のクライアント(例えば、クライアント150B)を選定する。選定方法としては、例えば、接続中のクライアントそれぞれに対して優先度を設定した優先度テーブルを用意し、臨床アプリケーション117を使用しているクライアントのうち優先度が最も低いクライアントを選定する方法がある。他の選定方法では、ユーザを予めグループ化しておき、接続要求元のクライアント150Aのユーザと同じグループに属するユーザが使用しているクライアントを選定する。選定部116は、接続要求元のクライアント150Aに関する情報、及び切替対象として選定したクライアント150Bに関する情報を切替部401に送る。
【0055】
ステップS507では、切替部401は、選定されたクライアント150Bから接続要求元のクライアント150Aに、臨床アプリケーション117の接続先を切り替える。具体的には、まず、切替部401は、アプリケーション制御部114に切替指令を送る。アプリケーション制御部114は、切替指令を受け取ると、臨床アプリケーション117を次のように制御する。即ち、臨床アプリケーション117は、GUIを操作不可能にした画面(例えば、全てのボタンが押せない状態の画面)及び使用中断メッセージを含む画像信号を生成してクライアント150Bに送信し、クライアント150Bの作業途中のデータをデータ退避部118に一時的に退避させる。クライアント150Bの表示部153には、例えば「緊急使用要求が発生しました。一時使用を中断します。」といった使用中断メッセージが表示され、クライアント150Bでの臨床アプリケーション117の操作が不可能になる。
【0056】
次に、アプリケーション制御部114は、クライアント150A向けに臨床アプリケーション117を準備し、切替部401を介して接続管理部112に準備完了を通知する。接続管理部112は、接続許可信号をクライアント150Aに送信し、接続状況DBを更新する。本実施形態の接続許可信号は、接続ポート番号とともに、一時借用状態であることを示すメッセージを含む。
【0057】
ステップS508では、クライアント150Aは、接続許可信号を受信してこの接続許可信号で指定される接続ポートに接続し、その結果、クライアント150Aでの臨床アプリケーション117の使用が可能になる。なお、ステップS501の接続要求信号に患者基本情報が含まれる場合、患者基本情報で特定される患者情報が医用情報DB119から読み出され、患者情報が既に入力された状態で臨床アプリケーション117が起動されていてもよい。
【0058】
緊急作業が終了すると、クライアント150Aからは、臨床アプリケーション117の使用を終了することを示す通知がサーバ110のアプリケーション制御部114に送られる。アプリケーション制御部114は、クライアント150Aによる臨床アプリケーション117の使用終了を接続管理部112に通知する。接続管理部112は、クライアント150Aとの接続を切断し、切替部401に再切替を指示する。さらに、接続管理部112は、接続状況DBを更新する。
【0059】
ステップS509では、切替部401は、接続管理部112からの再切替の指示を受けて、再切替処理を行う。具体的には、切替部401は、アプリケーション制御部114に再切替指令を送り、再切替指令を受け取ったアプリケーション制御部114は、クライアント150B向けに臨床アプリケーション117を準備する。臨床アプリケーション117は、データ退避部118に一時的に保存されているデータを読み出し、作業中断時の状態を復元する。その後、臨床アプリケーション117は、操作可能なGUI画面及び医用情報を含む画像信号を生成し、生成した画像信号をクライアント150Bに送信する。これにより、クライアント150Bでの臨床アプリケーション117の使用が再び可能になる。
【0060】
以上のように、本実施形態に係る医用情報処理システム400では、臨床アプリケーション117の使用許可が与えられているクライアント数が同時使用可能数に達しているためにクライアント150Aに臨床アプリケーション117の使用許可が与えられない場合、サーバ110が他のクライアント150Bでの臨床アプリケーション117の使用を一時的に停止させ、その停止中に接続要求元のクライアント150Aでの臨床アプリケーション117の使用を可能にする。これにより、クライアント150Aにおいて臨床アプリケーション117を使用して緊急の患者に対処することができる。
【0061】
なお、本実施形態では臨床アプリケーション117の使用許可がクライアント150Aに与えられない場合について説明したが、接続許可がクライアント150Aに与えられない場合にも、切替部401は、上述した切替処理と同様の処理を行うことができる。簡単に説明すると、接続許可がクライアント150Aに与えられない場合、切替部401は、選定部116により選定されたクライアント150Bとの接続を一時的に切断して、クライアント150Aとの接続を一時的に確立するように、接続管理部112に指示する。そして、クライアント150Aによる緊急作業が終了した後、切替部401は、ライアント150Aとの接続を切断して、クライアント150Bとの接続を再び確立するように接続管理部112に指示する。従って、サーバ110に接続中のクライアント数が同時接続可能数に達しているために接続要求元のクライアント150Aに接続許可が与えられない場合、サーバ110が他のクライアント150Bとの接続を切断してクライアント150Aとの接続を一時的に許可することにより、緊急の患者に対処することができる。
【0062】
(第3の実施形態)
第3の実施形態では、緊急時において、臨床アプリケーション117の使用許可が与えられているクライアント数が同時使用可能数に達しているために接続要求元のクライアント150Aに臨床アプリケーション117の使用許可が与えられない場合、他のクライアント150Bが使用している臨床アプリケーション117を一時的に休止させることで、接続要求元のクライアント150Aでの臨床アプリケーション117の使用が一時的に可能になる。接続要求元のクライアント150Aに臨床アプリケーション117の使用許可が与えられない場合であっても、緊急時には、接続要求元のクライアント150Aにおいて臨床アプリケーション117が一時的に使用可能になる点では、第2及び第3の実施形態は同じである。しかし、第2の実施形態では、臨床アプリケーション117の起動数は常に同時使用可能数以下であるのに対し、第3の実施形態では、クライアント150Bが使用している臨床アプリケーション117を休止状態にして、クライアント150A向けに臨床アプリケーション117を新たに起動するので、臨床アプリケーション117の起動数が同時使用可能数を超えることがある。ただし、第3の実施形態においても、臨床アプリケーション117を同時に操作することができるクライアント150の数は、同時使用可能数以下に制限される。
【0063】
図6は、第3の実施形態に係る医用情報処理システム600を概略的に示している。本実施形態のサーバ110は、
図4に示した第2の実施形態のサーバ110から切替部401を削除した構成を有する。以下では、第3の実施形態に係る医用情報処理システム600の動作を第2の実施形態と異なる点を中心に説明する。
【0064】
図7は、医用情報処理システム600の動作の一例を示している。
図7のステップS701からステップS705はそれぞれ
図2のステップS201、S202、S204〜S206と同様の処理であるので、その部分についての説明は省略する。
【0065】
ステップS706では、選定部116が、臨床アプリケーション117を使用しているクライアント150の中から、休止対象となる1台のクライアントを選定する。本実施形態では、臨床アプリケーション117の使用許可が与えられているクライアント150の数が同時使用可能数に等しい状態で緊急使用要求が発生した場合、選定部116は、接続管理部112が保持する接続状況DBを参照して、臨床アプリケーション117を使用しているクライアント150の中から、休止対象となる1台のクライアント(例えば、クライアント150B)を選定する。選定方法は、
図5のステップS506を参照して説明した方法と同じ方法とすることができる。選定部116は、接続要求元のクライアント150Aに関する情報、及び休止対象として選定したクライアント150Bに関する情報をアプリケーション制御部114に送る。
【0066】
ステップS707では、アプリケーション制御部114は、選定部116により選定されたクライアント150B向けに起動している臨床アプリケーション117を一時休止の状態にする。ステップS708では、アプリケーション制御部114は、接続要求元のクライアント150A向けに臨床アプリケーション117を起動する。クライアント150Bでは、第2の実施形態の場合と同様に、臨床アプリケーション117が操作不可能になるとともに、使用中断メッセージが表示される。ただし、本実施形態では、休止状態の臨床アプリケーション117の画像信号の送信先は、クライアント150Bに設定されたままである。臨床アプリケーション117は、クライアント150Bの作業途中のデータをデータ退避部118に一時的に退避させる。
【0067】
その後、アプリケーション制御部114は、接続要求元のクライアント150A向けの臨床アプリケーション117を起動したことを接続管理部112に通知する。接続管理部112は、一時借用状態であることを示すメッセージ及び接続ポート番号を含む接続許可信号をクライアント150Aに送信する。ステップS709では、クライアント150Aは、接続許可信号で指定される接続ポートに接続し、その結果、クライアント150Aは、臨床アプリケーション117を使用することができるようになる。
【0068】
クライアント150Aの緊急作業が終了すると、クライアント150Aとサーバ110との接続が切断される。ステップS710では、アプリケーション制御部114は、クライアント150A向けの臨床アプリケーション117を終了する。ステップS711では、アプリケーション制御部114は、クライアント150B向けの臨床アプリケーション117を再開(レジューム)する。クライアント150B向けの臨床アプリケーション117は、データ退避部118に保存されているデータを読み出し、作業中断時の状態を復元する。さらに、臨床アプリケーション117は、操作可能なGUI及び医用情報を含む画像信号を生成し、クライアント150Bに送信する。これにより、クライアント150Bでの臨床アプリケーション117の使用が再び可能となる。
【0069】
以上のように、本実施形態に係る医用情報処理システム600では、臨床アプリケーション117の使用許可が与えられているクライアント数が同時使用可能数に達しているために接続要求元のクライアント150Aに臨床アプリケーション117の使用許可が与えられない場合、サーバ110が、他のクライアント150B向けに起動している臨床アプリケーション117を休止状態にし、接続要求元のクライアント150A向けに臨床アプリケーション117を起動することにより、クライアント150Aにおいて臨床アプリケーション117を使用して緊急の患者に対処することができる。
【0070】
なお、上述した第1から第3の実施形態を組み合わせて実施されてもよい。例えば、第1の実施形態において代行依頼メッセージを送信した全てのクライアント150Bに代行を拒絶された場合に、第2の実施形態又は第3の実施形態において説明した処理を実行するようにしてもよい。
【0071】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。