レゴ・ブロックで学ぶExecutable UMLの有効性

【国内記事】2002.3.26

 OMGジャパンが3月26日〜27日の2日間,都内で開催しているオブジェクト指向開発者向けカンファレンス「UML Forum/Tokyo 2002」の特別講演に,米モデル・インテグレーションのシニアコンサルタント兼共同創立者,レオン・スター氏が登場。「Executable UMLとレゴを使った組み込みシステムの学習法」をテーマに講演した。

米モデル・インテグレーションのレオン・スター氏

 同氏は,レゴ・ブロックとExecutable UMLを利用したアプリケーションモデルと開発プロセスを例に挙げ,実行可能なUMLを使った組み込みシステム開発手法の学習方法について分かりやすく紹介してくれた。Executable UMLの利用は,モデル開発における仕様を実際に動かし,テストし,デバッグやパフォーマンスの計測を行うための有効な手法を提供してくれるという。

 スター氏は,Executable UMLによるモデル開発は,コードを生成する前にあらゆる実行環境を想定したテストを行うことができる」と言う。「モデル開発においては,コード化は一番最後の作業であり,手作業によるアプリケーションのコーディングは時間の浪費以外の何者でもない」と同氏。

 同氏は,かつて2つのチームで同じシステム開発を行った経験を紹介した。その経験とは,片方のチームはいきなりコーディングをはじめたが,同氏のチームはコーディングは一切行わず,ひたすらモデル開発を行ったというものだ。その結果,最終的には同氏のチームが勝利者となったという。

 これは,システムの開発途中でプラットフォームが変更されたために,コーディングをはじめたチームは,プラットフォームにあわせたコーディングを,最初からやり直さなければならなかったからだという。同氏のチームは,プラットフォームに依存しないモデル開発を行っていたので,プラットフォームが変更されてもコードの生成をやり直すだけですんだという。

「競争に打ち勝つには,(どのようなプラットフォームであろうとも)コードを完全に自動的に生成できる状態にモデル化しておくことだ」(スター氏)

 なお,同カンファレンスでは,レゴ・ブロックとExecutable UMLを利用したアプリケーションモデルと開発の実践を目的としたソフトウェアの設計コンペティション「UMLロボットコンテスト」が開催されている。同コンテストは,組込み玩具として話題の「レゴマインドストーム」を利用した車を作成し,それをコントロールするプログラム開発をUMLモデルを利用して行いレースにより競うものだ。

関連リンク

▼オブジェクト・マネージメント・グループ・ジャパン

▼レゴマインドストームの公式サイト

[山下竜大 ,ITmedia]