富士ゼロックスは複合機などの組み込みソフトウエア開発に「モデル駆動開発(MDD)」と呼ぶ高度なソフトウエア開発手法を10年来適用している。今回,同社はその実践経験を生かし,DSL(ドメイン特化型言語)を使った新しいタイプのMDDを「ETロボコン」の場で試行した。同社のアーキテクトがMDDの神髄とDSL活用の事例を語る。(本誌)

富士ゼロックス コントローラ開発本部
土樋 祐希
上江洲 吉美
北井 翼
田村 純一
樋口 博史
藤本 英基
細田 健人

 我々はモデル・ベースのソフトウエア開発手法である「MDD(model driven development,モデル駆動開発)」の新しい形態として,注目が高まりつつある「DSL(domain specific language,ドメイン特化型言語)」による開発を,組み込み分野において,いち早く実践した。個別のアプリケーションのドメインに適した言語(DSL)を作成し,その言語を使ってソフトウエアのモデルを記述するという手法である。MDDなどを要素として含む新しい方法論「Software Factories」を採用した。

 当社製品である複合機やプリンターのコントローラ部分の組み込みソフトウエア開発に,我々は米Mentor Graphics Corp.のツール「Bridge-Point」を使ったMDDを,ほぼ10年間にわたり適用,実践している。その中でDSLを使ったMDDについても,かねて注目していた。今回我々は,DSLを使ったMDDの有効性を確認するため,ソフトウエアのモデルを競うイベント「ETソフトウェアデザインロボットコンテスト」(ETロボコン)に企業チームとして参戦し,同手法によるソフトウエア開発にトライした。

 今回のモデルは同コンテストでモデル部門の最高評価である「エクセレント・モデル賞」を受賞したほか,開発を通して,DSLによるMDDが組み込みソフトウエア開発に有効に機能することを確認した。

 この論文では,ETロボコンでの事例を基にして,MDDによるソフトウエア開発やモデリングの勘所,DSLによるMDDの仕組みなどについて解説・報告する。

『日経エレクトロニクス』2009年5月18日号より一部掲載

5月18日号を1部買う