著者
加藤 弘之 胡 振江 日高 宗一郎 松田 一孝
出版者
日本ソフトウェア科学会
雑誌
コンピュータ ソフトウェア (ISSN:02896540)
巻号頁・発行日
vol.31, no.2, pp.2_44-2_56, 2014-04-24 (Released:2014-06-24)

双方向変換とは,ソースデータをターゲットデータに変換した後,ターゲットデータ上の更新をソースデータに反映させることが可能な計算の枠組みのことである.双方向変換の考え方は,古くはデータベース分野におけるビュー更新問題として扱われてきたが,近年は新しいプログラミングモデルと進化的ソフトウエア開発の手法として注目を浴び,プログラミング言語の観点から様々な双方向変換言語が提案されてきた.この解説論文は,会話の形で,プログラミング言語,ソフトウェア工学,データベースの視点から,双方向変換の歴史,基本原理,実践,応用,そして今後の課題について概説する.
著者
松田 一孝 胡 振江 中野 圭介 浜名 誠 武市 正人
出版者
日本ソフトウェア科学会
雑誌
コンピュータ ソフトウェア (ISSN:02896540)
巻号頁・発行日
vol.26, no.2, pp.2_56-2_75, 2009-04-24 (Released:2009-06-24)

双方向変換は,元のデータの一部を抽出し加工する順方向変換と,順方向変換で得られたデータに対する変更を元データに書き戻す逆方向変換の二つの変換から構成される.双方向変換を用いることで,XML文書の同期や相互変換を行える.さらには,双方向変換はプレゼンテーション指向の文書作成やソフトウェアエンジニアリングにも利用できる.著者らは2007年に,順方向変換を記述するプログラムが与えられたときに自動的に逆方向変換を得る系統的な手法を提案した.しかし,そこで扱われている順方向のプログラムは制限が強く,制限の一つとして変数を二度以上使用することが禁止されていたため,複製を含む変換は記述できなかった.そこで本論文では,前手法を拡張し,複製を含むプログラムにおいても自動的に逆方向変換を得る手法を提案する.
著者
日高 宗一郎 Jean BÉZIVIN 胡 振江 Frédéric JOUAULT
出版者
日本ソフトウェア科学会
雑誌
コンピュータ ソフトウェア (ISSN:02896540)
巻号頁・発行日
vol.32, no.2, pp.2_63-2_78, 2015-04-24 (Released:2015-06-30)

モデル駆動工学では,メタモデルはモデルに対する型システムのようなものを提供し,モデルによるシステムの表現を正確に,定型的かつ強力に支援する.メタモデルは更にメタメタモデルで型付けられ,メタモデルで型付けられるモデルとあわせた三階層構造をなすことは前稿で概説した.本稿では,この構造の形式的な定義を与えるだけでなく,これらがすべて抽象モデルとして統一的に扱えることを示す.メタモデルは上記の重要な役割を果たすものの,モデルについて推論したり,より汎用的に処理を適用するには十分ではない.そこでもう1つ必要な概念がモデル変換である.モデル駆動工学では,モデル自体を直接更新するよりは,変換によって次々と新しいモデルを生成していく方法が推奨される.この構成的アプローチは,異なるツールの間の相互運用性を高める等の利点をもたらす.更に,モデル駆動工学では変換自体もモデルで表現され,上記の統一的扱いに組み込まれる.本稿では,モデル駆動工学の真骨頂とも言えるこのような統一的扱いと,このような構成的アプローチによるいくつかのモデル管理手法についても解説する.