「電子カルテ」汎用化へのアプローチ

大橋克洋(大橋産科婦人科)

高橋究(佐藤病院)

Approach of a general purpose tool for the computerized medical record

Katsuhiro Ohashi*, Kiwamu Takahashi**

Ohashi Gyne/Obst clinic*

Satou Hospital**

Abstract

Naturally every data in our world has no order. And we keep it in order for our purpose. So, if we have a layout tool to arrange every data for our purpose, it will realize various data sheets.

Now I made an object. This object can pickup data from various data source (data base, file, directory, another object, etc). And process the data in various method. Finally the object output it to varoius target (text field, file, popup-menu, etc). We can construct the computerized medical record, order sheet, and another data sheet with this object.

Keywords: Computerized medical record, Electronic patient record

Contents

1 はじめに

2 ソフトウエア実現上の考え方え

3 これによって何ができるか

4 利用例

5 システム構成と開発環境

6 おわりに

1 はじめに

多くの診療データは定型フォーマットにあてはめることができる。 不定型情報が存在しても、従来型データベースに蓄積するため、無理やり定型フォーマットに押し込めたり切り捨てられることが多い。しかし本来、情報というものは不定型が自然である。処理の容易性から基本的には診療情報を定型フォーマットで扱うとしても、不定型の自由な情報リンクも許すべきであろう。 この考えを発展させれば、一つの情報からネットワークを利用して広大な情報への自由なリンクを実現することができる。 昨年の本学会で以上のような発表を行ったが、このようなアイデアをオブジェクト指向プログラミングで実現し「電子カルテ」構築の汎用ツールとして使えるものを開発したので発表する。

2 ソフトウエア実現上の考え方

2.1. Cell への情報の細分化

まず情報の内容をできるだけ細分化し、実用上最小限と思われるデータの単位を一つの Cell と呼ぶこととする。診療録の例として挙げれば、「氏名」や検査データの「赤血球数」などがそれに当たるが、主訴欄の「患者の訴えを平文で記述したもの」ひとまとまりを一つの Cell として扱っても構わない場合もあろう。

Cell の外見は、( Fig.1 )のように一つのボタンと一つのテキスト・フィールドを持ったものとして画面上に表現される。必要に応じてボタンだけ、あるいはテキスト・フィールドだけの外観をとることもできる。

2.2. Cell は知識を持つ

この Cell を一つのオブジェクトと考える。オブジェクト指向では、オブジェクトはそれぞれに固有の情報と情報処理能力、すなわち「知識」を保持する。 具体的に説明すれば、ある Cell にデータを渡すと、その Cell はデータをどう処理するかを知っており、必要なら自分が既に記憶していたデータとつき合わせるなどしてデータを処理し、処理した結果を指定先へ出力あるいは Cell 内に記憶する。

2.3. Cell を Sheet に配置

このようにそれぞれに「知識」を持った Cell を、一枚の紙の上に配置する。Cell のテキスト・フィールドではデータの入出力を行うことができる。

例えば検査伝票を表現したければ、( Fig.2 )のように一枚の紙の上に従来使っていた検査伝票のイメージを表示しておき、その記入欄の上に Cell を配置してゆく。この紙を Sheet と呼ぶこととする。Sheet の外見は従来から使って来た検査伝票と変わらないものに仕上げることができ、操作も従来の手作業と変わらない。 テキスト・フィールドには、画像や図形などのイメージを表示することもできる。

3 これによって何ができるか

あらかじめ Cell に「知識」として、データの入力元・処理手順・出力先を教えておく。これは Sheet デザインの段階で行う。多くの場合エンド・ユーザはあらかじめ誰かがデザインした便利な Sheet をもらって使うことになろう。必要なら自分の好みに合うよう Cell の設定を変更することができる。

データの「入力先」として、データベース、ファイル、他の Cell など色々選択できる。いずれは World Wide Web のデータも取り込めるよう拡張したい。 次に、入力されたデータをどのように処理し出力するか、「処理手順」を設定する。ここでは UNIX の shell, awk, perl や別のアプリケーションなども使えるので、柔軟性、拡張性が非常に高い。 「出力先」も、データベース、ファイル、他の Cell、ポップアップメニュー、その他色々選択できる。

このようにすると、Cell A のボタンを押すと Cell B, Cell C のデータを使ってある処理を行い、その結果をファイル D の中にはめ込んで、Cell E のテキスト・フィールドに表示する、などということができる。 Cell F のボタンを押すと別のアプリケーションが立ち上がる、などの設定もできる。 すなわち、Cell という汎用オブジェクトをたったひとつ作るだけで、それらを組み合わせて、あらゆることが可能になってしまう。このような Cell を配置した一枚の Sheet は情報の覗窓のようなもので、各自必要な Sheet を持つ事によりあらゆる情報を手元で自分の好きなフォーマットで読み書きすることができる。

ある Cell は自分のマシーン上のファイルを表示しており、隣の Cell は地球の裏側のデータを表示しているかもしれない。更に別の Cell は色々なデータをつき合わせた結果を時間とともにダイナミックに表示することもあろう。

4 利用例

Sheet はカルテのフォーマットを表現するかも知れないし、検査台帳、いろいろなオーダー伝票、レントゲン写真を貼りつけたシャーカステン、眼底写真のアルバム、住所録、手術予定表、メモ用紙など、いかなる形態に設定することもできる。 つまり冒頭で述べたように、自然に存在する無秩序なデータをそれぞれのユーザの必要とする秩序にレイアウトにし読み書きすることができるようになる。

検査伝票上の必要な検査項目をチェックし、伝票上の「オーダーボタン」を押せば、そのボタン・セルはデータベース・サーバに新規検査オーダーが出たことを知らせ、カルテ番号・日付などを転送する。 サーバは、それを受けてその患者の空レコードを作成する。このレコードにはいずれ検査結果が出た段階でデータが入力される。 後日その検査伝票シートを開くと Cell はサーバに問い合わせ、レコードが更新されていればサーバからデータをもらって自分のテキスト・フィールドに表示する。

5 システム構成と開発環境

このアプリケーションは NEXTSTEP 3.2J の上で動いている。NEXTSTEP は Apple 社の Macintosh を開発したチームが Apple 社をやめた後作った NeXT 社で開発されたシステムである。Intel machine (いわゆる DOS/V), Sun, HP, DEC などの上で動き、近いうちに Windows NT 上でも OpenStep という名前で同様の環境が動く予定である。NEXTSTEP は Mach と呼ばれる UNIX 互換の OS をベースにしているので、ネットワークに関しても大変強力であり、マルチメデイアにも強い。

開発は NEXTSTEP の Objective-C と InterfaceBuilder を用いた。NEXTSTEP の開発環境は完全なオブジェクト指向となっているので、このようなものを作るには最適である。

6 おわりに

今回作成したツールは、Macintosh の HyperCard, FileMaker Pro や、Web のブラウザーなどとも共通した思想の元に作られたが、そのコンセプトは「よりシンプルに」「より汎用に」「でき得ればよりパワフルに」であった。

情報というものを、それぞれのユーザが使いたいように扱うツールとはどんなものであるべきか、誰でも簡単に使えるツールはどんなものであるべきかを長年考え、出て来たアイデアを可能な限りシンプルなものへとシェイプアップして行った結果、「たったひとつの Cell を組み合わせるだけで、ほとんどあらゆることができる」「Simple is Best」という結論に達した。

そもそもは、どんなユーザの要望にも答えられる「電子カルテ」をどのように実現すればよいかが出発点であったが、でき上がったものの用途はアイデア次第で実に多彩である。今後これを元に更に柔軟性を高め、医療におけるあらゆる用途で実用的に使えるツールへと仕上げて行きたい。

Last update: 1995.9.30