23W-013 システム分析のためのダイアグラム記述における オントロジの

23W-013
システム分析のためのダイアグラム記述における
オントロジの利用
加藤隼也
川端亮,伊藤潔
上智大学大学院理工学研究科
上智大学情報理工学科
1.概要
システム開発時に行われる,要求分析,設計において,ダイアグラムは,非常に有用な
ツールであるが,ダイアグラムを記述することは,例え熟練者であっても簡単ではなく,
手間のかかる作業である.そこで,オントロジによるダイアグラム記述法を提案する.オ
ントロジ(Ontology)とは言葉の意味体系のことである.オントロジは,言葉が存在する概念
構造である.すなわち,その言葉はどのような範疇で存在しているか,どのような言葉と
関係して存在しているかを表している.あるシステムについての分析事例から,そこに含
まれる語彙とその意味関係をオントロジとしてあらかじめ定義しておくと,同じドメイン
や近いドメインのシステム分析を行う時に,この語彙や意味関係を利用でき,分析結果の
再利用性を向上させることが可能になる.本稿では,記述するダイアグラムとして,
Multi-Context Map(以下,MCM と呼ぶ)を用いた.MCM はコラボレーションタスク(複数
の作業者と組織による協調的な業務プロセス)の観点で業務全体を捉えるためのダイアグラ
ムである.オントロジを利用し,システムに関する知識を再利用できるので,要素の列挙
や要素間の関係の記述が容易になり,MCM による分析を効率的に行うことができる.また,
ドメインの知識を MCM で記述することでオントロジの検索の有用性を高めることもでき
る.
2.オントロジ(Ontology)
オントロジ[溝口 1997][溝口 2006][斉藤 2004]は,言葉が存在する概念構造である.すな
わち,その言葉はどのような範疇で存在しているか,どのような言葉と関係して存在して
いるかを表している.システム化の対象業務を分析するとき,オントロジを使うことで,
その分野で使われる言葉と言葉の関係を利用できるので,分析作業の効率化が期待される.
本研究のオントロジは,システム分析向きにドメイン,タスク,コンポーネントの観点で
構成する[Kawabata 2008] [Katoh2010].図1にこのオントロジの構成を示す.動詞は,そ
のドメインで,その動詞がとり得る主語や目的語との関係で存在している.同じ動詞でも
1
ドメインが異なると,取り得る主語や目的語が異なる.これをイントラドメインタスクオ
ントロジ(Intra-Domain Task Ontology)と呼ぶ.各ドメインで行われているタスクは,そ
れぞれのドメインの名詞,動詞を使って記述する.
あるドメインで行われているタスクの本質となる部分は,他のドメインでも共通である
ことが多い.このようなタスクをインタードメインタスクオントロジ(Inter-Domain Task
Ontology)と呼ぶ.インタードメインタスクオントロジは,ドメインを横断するタスクで,
ドメインタスクの上位にあるタスクの概念構造を表す.
ドメインには,ドメインを構成する人,物,動作,場所,状態などの概念を表す名詞や
動詞がある.名詞・動詞には同義語が存在し,名詞・動詞には,その上位概念や下位概念
となる名詞・動詞が存在する.この上位・下位は,オブジェクト指向のクラス・スーパー
クラスとは異なる.上位・下位は,インタードメインの用語とドメインの用語との関係,
ドメインの用語の代表的な用語とそのバリエーション用語との関係である.例えば,動詞
で表される動作については,ある一つの動作の下位概念は,その動作を構成する複数の動
作である.また,これらの動作の実行手順も含む.以上を,ドメインコンポーネントオン
トロジ(Domain Component Ontology)と呼ぶ.インタードメインオントロジにそれぞれの
ドメイン固有の概念・用語であるドメインコンポーネントオントロジを適用することで,
各ドメインのイントラドメインタスクオントロジを構成できる.ドメインコンポーネント
オントロジには,例えば,販売ドメインでは,名詞として,店員,客,接客係,清掃係な
どがあり,これは,人コンポーネントに含まれる.店員の下位概念として,接客係,清掃
係がある.鉄道ドメインで動詞によって表される動作コンポーネントを考えると,
”電車で
移動する”という動作があり,その下位概念は,”駅に行く”
,
”切符を買う”
,”改札を通る”
,
”
ホームに行く”,
”電車に乗る”,
”電車を降りる”,”改札を通る”,
”駅を出る”という動作
手順で構成される.
タスクオントロジの簡単な例を示す.
(誰が,何を,どこで,どうする)
→(店員が,商品を,店で,販売する)
上記の(店員が,商品を,店で,販売する)というタスクオントロジは,多くのドメイ
ンに共通で本質的なタスクであるので,インタードメインタスクオントロジである.イン
タードメインタスクオントロジの用語を各ドメインの用語に置き換えることで,イントラ
ドメインタスクオントロジになる.この時,置き換える用語の組み合わせは,ドメインに
よって異なる.これは,ドメインコンポーネントオントロジに記述されている.例えば,”
薬局”というドメインでは”商品”という用語が”薬品”に,
”店”が”薬局”に置換され
る.即ち,(店員が,商品を,店で,販売する)というインタードメインタスクオントロジが,
(店員が,薬品を,薬局で,販売する)というイントラドメインタスクオントロジになる.”
文房具店”ドメインでは”商品”を”薬品”には置換できないので,この用語の組み合わ
せは使用できない.
2
Intra-Domain
Task Ontology
A Domain Task
Ontology
B Domain Task
Ontology
X Domain Task
Ontology
Domain
Component
Ontology
A Domain
Component
Ontology
B Domain
Component
Ontology
X Domain
Component
Ontology
Inter-Domain Task Ontology
図1 本稿で使うオントロジの構成
本稿のタスクオントロジは,格文法[Fillmore, C. J., 1968] [郡司 1998] を用いて記述する.格
文法(Case Grammar)は用言と名詞の意味的関係を記述する方法である.用言と名詞の
意味的関係を深層格と呼ぶ.本研究では,主格,動作格,対象格,場所格,時間格,源泉
格,目標格,道具格,条件主格,条件動作格,条件対象格を用いる.格文法に基づく記述
例を表 1 に示す.
表 1 格文法に基づく記述例
文
主格
1彼
2彼
3私
動作格
対象格
送る
手紙
連れて行く 息子
受け取る 用紙
場所格
時間格
今日
事務室
源泉格
東京
先生
目標格
彼女
パリ
道具格
航空便
飛行機
表 1 の文1は,
”彼は今日手紙を航空便で彼女に送る“,文2は”彼は息子を飛行機で東
京からパリへ連れて行く”
,文 3 は,”私は先生から用紙を受け取る”という文である.そ
れぞれの文の名詞を用語に従って,適切な格に入れたものが表 1 である.
本研究では,オントロジ記述のツールとして Excel を使用した.タスクオントロジの記
述例を図2に示す.1 行が 1 タスクに対応している.1 列目にタスク名を記述し,2 列目以
降にタスクの内容を記述する.タスクごとにタスクを構成するコンポーネントを適切な格
に入れる.また,人を表すコンポーネントは,色づけされており,青色は業務の依頼をす
る依頼者,赤色は業務を提供する提供者を表わす.
3
図2 タスクオントロジの記述例
コンポーネントオントロジの記述例を図3に示す.コンポーネント名とそのコンポーネ
ントが存在するドメイン名,そのコンポーネントが関わるタスク名が記述される.
図3 コンポーネントオントロジの記述例
またコンポーネント同士の上位・下位の概念関係の記述例を図4に示す.コンポーネン
ト名と関係名(上位・下位・同位),関係があるコンポーネント名を記述する.図4の 4 行目
は,コンポーネント”患者”はコンポーネント”依頼者”の下位コンポーネントであるというこ
とを示す.
図4 コンポーネントオントロジの関係概念の記述例
3. Multi-Context Map (MCM)
本稿では,オントロジを利用して,システム分析向きのダイアグラム記述を行う.ダイ
アグラムには,MCM[Hasegawa 1999]を用いた.MCM は,以下で述べるとおり,タスクと
そのタスクの主体となるもの,客体となるものの関係が明記されており,オントロジを利
用しやすいと考えられる.
4
オントロジを利用するとき,オントロジの検索の有用性[川野 2002]が高いことが重要で
ある.すなわち,オントロジの中から必要なものを検索し,それが利用者の求めていたも
のであることが求められる.
MCM は,協調エンジニアリングシステムを分析するために,業務全体の流れとその業務
に関わる資源(作業者,もの,情報)の状態変化を分析し,把握することに適したダイア
グラムである.
「協調エンジニアリング」とは,複数の作業者が与えられた作業手順に従っ
て,各自分散し,ある特定の目標や目的を達成するために作業を行う場合に,複数のエン
ジニアや組織が,各作業者が他作業者の作業進行や作業に必要な道具や材料などの資源の
動きを把握しつつ,作業全体の実行順序に沿って自身が行うべき作業をおこなって,協調
して進めていく作業のことである.MCM は,業務上に存在する様々なものの見方や立場を
表現する.
協調エンジニアリング作業に関与する様々な人,組織,装置,設備を主体と総称する.
主体には,それぞれの異なるものの見方や立場があり,これをパースペクティブと呼ぶ.
言い換えれば,協調エンジニアリング作業には複数のパースペクティブが存在し,主体は
各パースペクティブを代表する人,物,組織,または立場となる.協調エンジニアリング
作業において,2つの主体が連帯して作業するとき,2つのパースペクティブが存在し,
両者の間に接面が1つ存在する.接面を挟んで左右のパースペクティブを左側パースペク
ティブ,右側パースペクティブと呼ぶ.接面と左右のパースペクティブを一組としてコン
テクストと呼ぶ.接面はトークン,マテリアル,インフォメーションを発生する(図5参
照)
.トークンとは,両者間で相互に認証される事実を示し,マテリアルは実際に存在する
もの,インフォメーションは両者間で作業を進めるにあたり必要な情報を示す.
接面
パースペクティブ
"A"
作業者
"X"
パースペクティブ
"B"
作業者
"Y"
トークン,インフォメーション,マテリアル
図5 接面モデル
上記の接面モデルを Context Map(以下,CM)として表現する.MCM では全体業務を
CM の結合によって表現する.これにより,コンテクストが変わると見方や立場が変わるこ
とが表現される.CM の基本概念図を図6に示す.また,CM の構成要素を表 2 に示す.
5
入力インフォメーション
出力インフォメーション
入力マテリアル
出力マテリアル
図6 Context Map
表 2 CM の構成要素
トークン
マテリアル
インフォメーション
資源
パースペクティブ
主体間で相互に認証される事実であり,コンテクストを遂行するための条件
質量や重量を持つ現実世界の物
主体間で受け渡される情報,トークンとは区別される
作業を遂行するために必要なもの,情報・作業者・マテリアルなど
作業に関与する作業者のものの見方や立場
6
(STEP1) マテリアルとインフォメーションの列挙
(STEP2) トークンの列挙
(STEP3) 右側パースペクティブとその資源の定義
Yes
(STEP4) コンテクストマップの結合と左側パースペクティブの資源の定義
マテリアル・トークン・インフォメーション・
コンテクストに不足はあるか?
No
(STEP5) コンテクストマップの結合と左側パースペクティブの資源の定義(条件付)
マテリアル・トークン・インフォメーション・
コンテクストに不足はあるか?
Yes
No
(STEP6) Junction導入とコンテクストマップの再結合
(STEP7) 未結合パースペクティブの結合
Multi-Context Map完成
図7 MCM 構築プロセスの概要図
MCM 構築プロセスの概要を図7に示す.MCM 構築プロセスは(STEP1)~(STEP7)の
7 段階を順次におっていくことにより,最終的に STEP7 が終了した段階で MCM が得ら
れる.
MCM 構築プロセスを医療情報システムの協調エンジニアリングプロセスの例題に沿って
説明する.
(STEP1) マテリアルとインフォメーションの列挙
はじめに業務を構成する作業を列挙する.医療情報システムでは,列挙された作業は[受
け付ける]
,
[診察する],
[検査する]
,[調剤する]
,[会計する]の 5 つとなった.
その中の 1 つのコンテクストに注目し,その遂行結果として出力されるマテリアルとイン
フォメーション,入力となるマテリアルとインフォメーション,コンテクストの資源とな
る資源マテリアルと資源インフォメーションをそれぞれ列挙する.その結果,表 3,表 4,
表 5 が得られた.
7
表 3 マテリアルの列挙
列挙項目
出力マテリアル
コンテクスト1
(受け付ける)
コンテクスト2
(診察する)
コンテクスト3
(検査する)
コンテクスト4
(調剤する)
コンテクスト5
(会計する)
受付後の患者
診察後の患者
検査後の患者
薬を受け取った
後の患者
治療代を払った
後の患者
処方された薬
入力マテリアル
資源マテリアル
薬を受け取る前 治療代を支払う
の患者
前の患者
受付前の患者
診察前の患者
検査前の患者
受付係
医者
検査技師
薬剤師
会計係
カルテの束
看護師
看護師
在庫薬
レジスタ-
検査機
表 4 インフォメーションの列挙
コンテクスト1 コンテクスト2 コンテクスト3 コンテクスト4 コンテクスト5
(受け付ける) (診察する)
(検査する)
(調剤する)
(会計する)
列挙項目
カルテ
診察券
出力インフォ
メーション
カルテ
カルテ
カルテ
処方オーダ
検査報告書
調剤からの
会計オーダ
検査オーダ
検査からの
会計オーダ
明細書
診察からの
会計オーダ
入力インフォ
メーション
診察券
資源インフォ
メーション
受付
マニュアル
カルテ
カルテ
カルテ
カルテ
検査報告書
検査オーダ
処方オーダ
会計オーダ
診察
マニュアル
検査
マニュアル
調剤
マニュアル
会計
マニュアル
表 5 入力資源と出力資源の列挙
列挙項目
コンテクスト1
(受け付ける)
コンテクスト2
(診察する)
コンテクスト3
(検査する)
コンテクスト4
(調剤する)
入力資源
出力資源
コンテクスト5
(会計する)
カルテ
カルテ
(STEP2) トークンの列挙
コンテクストが生成するトークンを列挙する.トークンは,作業の遂行結果として得られ
るマテリアルやインフォメーションの特性の変化で検出できる.
例)
[受け付ける]コンテクストでは,受付前の患者と受付後の患者を比較することによって,”
受付が終了した”という事実を獲得できる.
(STEP3) コンテクストマップ作成(右側パースペクティブとその資源の定義)
コンテクストマップの基本概念図と表 3,表 4 と表 5 を参照し,各作業のコンテクストマ
ップを書く.資源マテリアルを,右側パースペクティブの資源として配置する.医療情報
システムの例を図8に示す.それぞれの右側パースペクティブの資源は表 3,表 4 と表 5
で列挙した資源マテリアルと資源インフォメーションである.
8
右側パースペクティブ
[受け付ける]
:受付係
[診察する]
:医者,看護婦
[検査する]
:検査技師,看護婦
[調剤する]
:薬剤師
[会計する]
:会計係
医者
看護師
検査技師
看護師
診察券
患者
検査が終了した
検査オーダ
カルテ
検査からの会計オーダ
カルテ
患者
検査報告書
カルテ
患者
患者
検査技師
看護師
検査機
検査マニュアル
医者
看護師
診察マニュアル
薬剤師
処方オーダ
カルテ
患者
調剤が終了した
会計係
会計オーダ
調剤からの会計オーダ
カルテ
カルテ
処方された薬
患者
会計が終了した
明細書
患者
患者
カルテ会計係
薬剤師
在庫薬
調剤マニュアル
レジスター
受付マニュアル
図8 右側パースペクティブとその資源の定義
(STEP4) コンテクストマップの結合と左側パースペクティブの定義
結合可能な作業の組み合わせ例をコンテクストマップの結合によって示す.以下の例は
コンテクストマップ”受け付ける”,”診察する”,”会計する”を結合した Multi-Context Map
である.
9
医者
看護師
医者
看護師
医者
看護師
診察マニュアル
図9 CM の結合とパースペクティブの結合
(STEP5) コンテクストマップの結合と左側パースペクティブの定義(条件付)
繰り返しや,分岐を使うことによって表すことが可能で,かつ,
(STEP4)にて示された
条件を満たしているコンテクストマップの組み合わせを結合する.
(STEP6) Junction 導入とコンテクストマップの再結合
出力においてマテリアルフロー,インフォメーションフロー,トークンフローが分岐し
ている際に,それらはどのような条件で分岐しているのか,又,複数のフローの入力が起
こった際にそれらはどのような条件で入力しているのかを明白にするため,Junction を導
入する.Junction とは MCM でコンテクストが切り替わる際にマテリアル・トークン・イ
ン フ ォ メ ー シ ョ ン の 分 岐 や 集 合 を 明 示 す る 記 号 で あ る . Branch , Duplication ,
Decomposition ,Synchronization, Serialization という 5 種類の Junction 記号がある.
(STEP7)
未結合パースペクティブの結合
未結合である左側パースペクティブと右側パースペクティブを結合させる.
以上が MCM 構築のプロセスである.
今回,ダイアグラム記述におけるオントロジの利用を示す上で,MCM を記述するダイア
グラムに選んだ.各コンテクストに関わる要素が右側,左側と立場を分けて列挙されてお
り,また各要素を作業者,資源,マテリアル,インフォメーション,トークンに分けると
いう点にコンポーネントの観点や格文法の概念が活かしやすいと考えたためである.
4.オントロジを利用した MCM の記述
オントロジを利用した MCM の記述について述べる.図7の MCM 構築プロセスの概要
図における STEP1 から STEP4 までの段階でオントロジの利用が出来る.
MCM におけるコンテクストはオントロジにおけるタスク,パースペクティブはオントロ
ジにおけるコンポーネントオントロジの人コンポーネント,マテリアル,インフォメーシ
ョン,リソースはコンポーネントオントロジの人コンポーネントと物コンポーネント,ト
ークンはコンポーネントオントロジの状態コンポーネントに当たる.これらの対応するオ
10
ントロジを使って MCM を記述することが出来る(図10)
.
以下の図11のタスクオントロジ,図12のコンポーネントオントロジを利用した MCM
の生成について説明する.
Conte
Material
xt
図10 MCM の要素の記述におけるコンポーネントオントロジの利用概念図
図11 タスクオントロジの記述
11
人コンポーネント
物コンポーネント
人コンポーネントの関係記述
物コンポーネントの関係記述
図12 コンポーネントオントロジの記述
図11の記述から,各コンテクストに関わるパースペクティブやリソースなどが分かる.
また前後のタスクオントロジの内容から入力マテリアルやインフォメーションなども判断
できる.
図11の 2 行目から 4 行目の内容からタスク”受け付ける”には”診察券”,”カルテ”が関わっ
ていることが分かる.また図12の物コンポーネントの関係記述から”診察券”は”インフォ
メーション”,”カルテ”は”インフォメーション”であることが分かる.したがって, コンテ
クスト”受け付ける”には入力インフォメーション”診察券”と入力インフォメーション”カル
テ”が存在すると判断できる.この CM 記述を図13に示す.
ただし,実際にはカルテは出力資源である.このようにオントロジだけでは,判別でき
ない部分もある.( それは利用するオントロジの内容にもよる.)
図13 記述できる MCM の例 1
図11の 4 行目 4 列,6 行目 4 列からコンテクスト”受け付ける”,”診察する”には両方と
12
も”カルテ”があることが分かる. また,図11の 5 行目で,タスク”受け付ける”において”
受付係が看護師にカルテを渡す”というタスクオントロジが, 図11の 6 行目で,タスク”
診察する”において”医者が看護師からカルテを受け取る”というタスクオントロジがあるこ
とが分かる.これらの記述から,インフォメーション”カルテ”は,コンテクスト”受け付け
る”から出力され, コンテクスト”診察する”に入力したと推測できる.この MCM 記述を図
14に示す.
カルテ
図14 記述できる MCM の例 2
記述したいシステムに関連があるタスクオントロジが無い場合でも,コンポーネントオ
ントロジがあれば,それを参照することで要素を列挙の手間を省くことができる.コンポ
ーネントの中からそのコンテクストの記述に必要な入力マテリアルなどを選んで記述すれ
ばよい.他ドメインや自ドメインのコンポーネントオントロジを利用することで,要素の
列挙の手間を省ける.また,コンポーネントオントロジの上位・下位の概念を用いた検索
も可能である.
オントロジの構築をするさいに,以前に記述されたオントロジを再利用することで,オ
ントロジ構築の手間を軽減することが出来る.
タスクオントロジから MCM を生成すると,
そのタスクオントロジに関連があるダイアグラムが生成されたことになる.それにより,
そのオントロジの要点を抽出して MCM として,可視化される.タスクオントロジの検索
において,MCM によってタスクオントロジの内容を表現してあると,内容が理解されやす
くなり,オントロジ利用者にとって検索の有用性が増す.
Ontology
Multi-Context Map
閲覧が難解
閲覧が容易
図15 Ontology と Multi-Context Map の比較
これまでに述べた MCM 記述におけるオントロジの利用の手法を General Analysis
Diagram Editor(GA-Diagram Editor)として実装した.このエディタは,Java で実装され
たダイアグラムのエディタ[Yagame 2008]で,ペトリネット,E-R ダイアグラムなどシステ
13
ム分析向きのダイアグラム記述の機能を持つ.MCM の記述機能に,本稿で述べたオントロ
ジの利用機能を追加した.図16左は,MCM 記述中の画面である.図16右は,コンテク
スト名の候補をオントロジから検索している画面である.
図16 General Analysis Diagram Editor
5.結論と今後の課題
オントロジを利用することで,システムに関する知識を再利用できるようにし, 要素の
列挙や結合を記述するさいに役立てて,MCM を記述しやすくした.また,ドメインの知識
を MCM によって記述することでオントロジの検索の有用性を高めた.
課題は,オントロジと MCM における要素の対応付けが不十分であり,例えば,MCM に
記述するときリソ-スとして扱うべきものを,インフォメーションとして扱ってしまうこ
となどがある.
今後は,MCM 以外のダイアグラムの記述におけるオントロジの利用について検討したい.
参考文献
[溝口 1997]溝口理一郎,池田満,オントロジー工学序説-内容指向研究の基盤技術と理論
の確立を目指して,人工知能学会誌, Vol.12,No. 4, pp. 559-569, 1997.
[溝口 2006]溝口理一郎,古崎晃司,來村徳信,笹島宗彦,オントロジー構築入門,溝口理
一郎,pp.2-9,(株)オーム社,東京,2006.
[斉藤 2004]斉藤 考,
「記録・情報・知識」の世界,オントロジ・アルゴリズムの研究,中
央大学出版部,東京,pp234-239,2004.
[川野 2002]川野浩之,山田誠二,北村泰彦,高橋克巳,インターネットの知的情報技術 情
報検索とエージェント,東京電機大学出版局,東京,pp27-30,2002.
[Kawabata 2008]Ryo Kawabata , Kiyoshi Itoh: Domain Ontology and Domain
Heuristics for Engineering and Education, IDPT2008, (June 2008).
[郡司 1998]郡司隆夫,阿部泰明,白井賢一郎,坂原茂,松本裕治,岩波講座
意味,大津由紀雄,pp.127-129,岩波書店,東京,1998.
14
言語の科学 4
[Fillmore, C. J., 1968] Fillmore, C. J., "The Case for Case". In Bach and Harms (Ed.): Universals in
Linguistic Theory. New York: Holt, Rinehart, and Winston, 1-88 (1968).
[Hasegawa1999] Hasegawa, A., Kumagai, S., Itoh, K.: Collaboration Task Analysis by
Identifying Multi-Context and Collaborative Linkage, CE99, pp.99-pp.107, (July 1999)
[Katoh2010] Junya Katoh, Ryo Kawabata and Kiyoshi Itoh: Construction and Visualization of
System Ontology for Enhancing Reusability and Understandability, SDPS IDPT2010, (June 2010).
[Yagame2008]谷亀忠,伊藤潔,川端亮:同種ダイアグラムと異種ダイアグラムの検索と相
互変換による再利用法,電子情報通信学会 KBSE 研究会,(July 2008).
15