SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

コドモに伝える組込みソフトウェア開発

MDDロボットチャレンジからマジカルスプーンへ


  • このエントリーをはてなブックマークに追加

 コドモたちに「ソフトウェア開発とは何なのか」を伝えるためにはどうしたらよいか、そうやすやすとこたえられる問いではありません。そのひとつの試みに、本稿で紹介する「マジカル・スプーン」があります。スプーンを打ち鳴らし、飛行船をコントロールという体験のなかで、コドモたちにその気持ちは伝わるのでしょうか

  • このエントリーをはてなブックマークに追加

モデル駆動型開発

 モデル駆動型の開発は、ソフトウェア開発環境の進化とともにいくつかの領域において実用的なレベルで使われるようになってきました。その呼び方は、MDA、MBD、MDD、ソフトウェア ファクトリなどと、さまざまです。筆者は、IEEEという学会の中で共通語として用いられている呼称であるMDD(Model Driven Development)をよく使っています。

 さまざまな呼び方があるのは、推進している人や団体の違いだけから生まれているわけではありません。それぞれに理由があってのことです。例えば、MBDは自動制御の数理的なモデルを開発し、モデルの実行に必要な組込みプログラムを自動生成する仕組み全体を指しています。自動制御という科学技術として定式化が済んでいる分野のソフトウェア開発に対してプログラム製造の自動化を行なっていくのがMBDです。日本においては、90年代に産業機器から家電メーカまで、多くの企業が自社製品向け特定プログラムの自動生成を試みました。しかし、その仕組みの維持や高機能化と利用者教育は思いのほか難しく持続的な利用は困難でした。それに対してMBDは自動制御という領域の業界横断的な試みと言えるでしょう。多くの企業が同一のツールを使うことで保守改良の困難は少なくなります。

 また、皆さん御存知のUMLやCORBAの策定団体であるOMGからはMDAが提案され標準化されています。これは大規模ソフトウェアと通信の開発問題を解決する枠組みとして北米を中心に使われていますが、利用リソースの大きさから小中規模の組込みシステム開発では利用が難しいものです。そのためか、日本の組込みソフトウェア産業での普及は進んでいません。

 しかしながら、UMLそのものの標準化の手法としてUMLを使う、もしくはUMLサブセットを使うという方法は着実に進歩してきました。つまり、モデルそのものの定義のモデル化(メタモデル化)や種類の違うモデルとモデルセットの変換のモデル化(メタメタモデル)などの定式化が進んだのです。メタモデルを媒介としたUMLモデルから実行コードの生成という普遍的な方式は、今後さまざまな産業分野の特定用途プログラムの自動生成に寄与していくだろうと筆者は考えています。

 以上のように、最初から特定分野を狙ってソフトウェア開発の装置を作るものからソフトウェア開発の普遍的な方法を実装しようとするものまでMDDの含意は広範です。

会員登録無料すると、続きをお読みいただけます

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

次のページ
MDDロボットチャレンジ

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
コドモに伝える組込みソフトウェア開発連載記事一覧

もっと読む

この記事の著者

二上 貴夫(フタガミ タカオ)

(株)東陽テクニカ ソフトウェア・システム研究部 技術主幹NPO法人 SESSAME理事東海大学 専門職大学院 組込み技術研究科 教授組込みソフトウェアとシステムの開発技術の教育実践とカリキュラム開発に従事。2005年にマジカルスプーン教材を発想して教育の専門家に提供した。自らは高校生と一緒になって...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/3795 2009/04/03 11:05

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング