MetaEdit+ DSM 専用モデル環境構築ツール

DSM Domain-Specific Modeling メタモデリングツール、コードジェネレーション

| HOME | products | MetaEdit+ |

更新日 2010-02-16 | 作成日 2007-12-01

Webセミナー: Domain-Specific Modeling with MetaEdit+

 MetaEdit+ ではインクリメンタルにDSL/DSM(ドメインスペシフィック・言語/モデル)を構築できること、そして直ぐに使用して柔軟に進化させられることなどを、30分のWebセミナーでご紹介。 おおよその内容は、以下の通り。    スケジュール、申し込みはこちらから

 ・どのようにして、DSL/DSM(ドメインスペシフィック・言語/モデル)を構築できるか。 /・動的で直感的なメタモデルの表記設定の仕組み /・メタモデル(モデル言語)の進化に合わせて、アプリケーションモデルがアップデートされる仕組み /・メタモデル(モデル言語)のテスト、デバッグについて


Cincom 社 Smalltalk VisualWorks の成功事例として

MetaEdit+ メタモデリングツール

専用モデル開発環境 ”Domain-Specific Modeling” を構築する為のツール

専用のモデル開発環境 "Domain-Specific Modeling" により、高い抽象度のモデルから、完全なアプリケーションを自動生成することができるようになります。

MetaEdit10times.bmp
MetaEdit+ を用いた専用モデリング環境の構築、追加・修正・改善は、”GUIを用いて簡単に設定できる”、”RDB リポジトリに反映され直ちに開発チーム全体に適応される”、など柔軟性を持って、モデリング環境を容易に進化させられること。 モデルからコードをジェネレートする機能を持つこと。 モデリング環境は、マルチユーザ、マルチ言語対応であることが、従来のCASEツールやモデル駆動開発ツールには無かった優位性です。

ソフトウエアファクトリ、プロダクトライン開発に代表されるソフトウエアの体系的な再利用を促進する手法。 

Nokia社では、6ヶ月必要であった新メンバーに対する学習期間が2週間に短縮されました。 C に対する知識が少なくても効率良く開発が出来ると、EADS社でも認められています。
フレームワーク使用上のルールが徹底されない、アプリケーション開発者の経験差によるばらつき、などの問題から開放されるようになります。フレームワークの仕様書を作成する代わりに、ドメイン・スペシフィックモデリング環境を構築します。追加・修正が即座に反映できるため、モデル環境のメンテナンスや、アプリケーション開発者へのサポートが大幅に軽減されます。MetaEdit+ でDSM環境を構築するために必要な熟練者は300人の開発チームでも1~2名までです。

仮にUMLなどを用いて同じ事(DSM環境の構築)を行った場合、進化し続ける製品に合わせて環境を修正・改善するには相当な工数と労力が費やされ、結局実用に耐えることができなくなるでしょう。あるいは、ツールメーカ、コンサルタントに多大な費用を費やすことになるかもしれません。

アーキテクチャ記述言語

AUTOSAR、EAST-ADL、AADL に

専用のメタモデルが容易に構築できること、その修正や変更は即座に反映されて簡単にメタモデルを進化させられることから、AUTOSAR、EAST-ADL、AADL などアーキテクチャ記述言語にも用いられています。
ルールや制約がモデリング時にチェックされる、再利用とその管理が容易、複数のメタモデル間の参照(EAST-ADLからAUTOSARなど)、生成されるコードでモデルを実行テスト、マルチユーザ・マルチ言語対応、振舞いを容易に記述できることなどのMetaEdit+ の優位性を最大限に活用することが出来ます。

アーキテクチャ記述言語への応用例を、AUTOSAR、EAST-ADL、AADL などのサンプルを用いて評価版にて行うための資料を公開しています。

皆様から要望頂いていた説明を加え資料を更新しました。追加された部分は青字で見分けられるようにしています。

 ”プロパティの設定”、”バインディングエラーを出させる仕組み”、”間違ったモデリングへの警告設定”、”メタモデル変更後に使用できなくなったオブジェクトの抽出”、そしてAUTOSARメタモデル構築にUMLでは200以上のクラス図が必要になるのが MetaEdit+ なら5つのダイアグラムで済むことなどを追加しました。

LinkIconMetaEdit+ ADL応用事例
LinkIconADLに関する国内ユーザーの声

UML、MDD、MDA などとは全く異なるテクノロジー

産業界において実践的に採用される手法、ツール

UMLでは抽象度がコードレベルである為、生産性はコード実装作業と変わりません。また、それらから生成される汎用のコードではスケルトン、あるいは冗長なものにとどまります。MDDなどで汎用DSL、あるいはDSMを用いるコード生成ツールでも、効率改善はせいぜい30%程度に過ぎません。

それに対して、専用のモデル開発環境があれば、高い抽象度でモデル化することや、妥協の無い完全なコードがモデルから生成(コンパイル)できるようになります。 ドメイン・スペシフィック・モデリング(DSM)のコツは、製品や開発チームごとに専用のモデル開発環境を構築することです。そうすることで製品コンセプトを意識した高い抽象度でモデル開発が可能になり、生産性が飛躍的に向上します。また、既存のフレームワークを用いるアプリケーションロジックを生成するスクリプトをモデル部品に設定することで、完全なコードの自動生成が行えるようになります。これはフレームワークを用いてアプリケーションを実装する作法をモデル部品に組み込む仕組みです(結果、モデルをコンパイルしてコードを生成させるようなイメージ)。 これにはランタイムライブラリなどツール独自のプログラムを常駐させる必要は無く、現状の開発環境に即座に導入することが出来ます。また、如何なるターゲット、RTOS、ソース言語にも対応しています。 また、製品独自のコンセプトを意識した高い抽象度のモデルになるため、発注者や営業、企画部などの関係者間とのコミュニケーションもスムーズになります。 このようなDSM環境を手軽に構築する為に必要な機能を備えたツールがMetaEdit+です。  

MetaEdit+ Workbench を用いて DSM モデリング環境の構築

DSM with MetaEdit+.tiffMetaEdit+ Workbench を用いて、DSM 開発チーム専用のモデリング環境を簡単に構築することができます。 シンプルでありながら強力な、メタモデリング言語と独自のGUIによる設定環境を提供します。これらにより、言語のコンセプト、プロパティー、ルール、シンボル、言語のチェックレポート、コードやドキュメントの自動生成の定義が簡単に行えます。再利用可能な多くのライブラリもあり、導入後直ちに作業を始められます。

まず、開発熟練者がモデルの属性、ドメインコンセプト、ルール、モデルからコードへのマップなどを定義し、製品ごとに固有のモデル開発環境を構築します。(DSM環境構築には、通常2,3週間、大規模システムでも2~3人月です。従来のモデル駆動開発では準備に少なくとも1~2年はかかると言われています) 

開発チームはその環境を用いてシステムをモデリングし、そのモデルをコンパイルして完全なコードを自動生成します。抽象度を高くする事で、モデリング作業は製品イメージをスケッチする感覚です。
仕様書からコードへのマッピング、フレームワークやライブラリに対する習熟・解析作業などから開放され、製品デザインに集中することができるようになります。 これは全ての開発者が熟練者なみのコード開発能力を身に付けたことと同じになり、飛躍的に生産性、品質を向上することが出来る仕組みです(熟練者のノウハウを共有する)。 専用のDSMを用いる事で、次の様な結果が得られています。-生産性が10倍上がった-100%のコードが自動生成できる-デザインドキュメントも生成してレビューに活用-新メンバーの研修期間が6ヶ月から2週間になった-製品機能を意識した高い抽象度で開発が出来た(コード実装では無く)

MetaEdit+ Workbench の更なる情報 MetaCase社日本語ページへLinkIcon

MetaEdit+ でモデリングし、コードを自動生成

MetaEdit+は、複数のユーザーと複数のプロジェクトに対して、主要なプラットフォームで動作する、完全なモデリング機能・ツールを提供します。 MetaEdit+ Workbenchで定義されたモデリング言語をレポジトリーから呼び出してモデリング作業が行えます。

MetaEdit+は専用のモデリング言語をサポートする完全なGUIツールを提供します。モデリング言語に対する追加・改善は、グラフィカルなモデル、マトリクス又は表を用いるモデリング環境へ即座に反映されます。

また、フィルターを使ったデザインの表示、部品の追加・修正、他のモデルとのリンク、モデルのチェックが行えます。デザインされたモデルを、HTMLやワード形式に出力したり、完全なソースコードを生成することが出来ます。

MetaEdit+ の更なる情報 MetaCase社日本語ページへLinkIcon

デモライセンスのご案内

1ヶ月版、150ユーロ版などの試用版を用意しています(共に機能上の制約なし) 1ヶ月版は、インストール内のサンプルなどを用いて短時間でMetaEdit+のできることを体験いただけるようになっています。150ユーロ版(2万円程度) はMetaCase社サイトからダウンロードで購入していただけるライセンスで、開発したものを商用利用しない事だけが制約です。使えることを得心いただいた上で正式なライセンスをお求め頂ければという趣旨です。 複雑な表記法を学んだり、特別な講習が必要でない簡単で柔軟なツールであることに対するMetaCase社の自身の表れです。また、以下から概説書をダウンロードすることができます。インストール内のサンプルモデルを用いてMetaEdit+ の全体像を解説していますので、ご参考頂けると幸いです。

ダウンロード 日本語ページへLinkIcon

よく質問のある、ライセンスの有効化、無効化に関する情報をまとめました。

LinkIconMetaEdit+ライセンスアクチベーション資料

各種資料

”フレームワークの活用について”
ライブラリやフレームワークをルールや用法ごと隠蔽することができる専用のモデル開発環境があれば、開発効率を10倍まで高め、熟練者品質のコードを自動生成させることは容易です。この分野の研究に10年以上貢献しているDr.Juha-Pekka氏による事例付きの資料を訳したものです。

LinkIconPDF形式 500kB

”専用モデリング言語の始め方”
独自のDSLを構築することで、どの様にして品質と生産性を大幅に向上できるかをご紹介します。 DevX で公開されたMetaCase社Juha-Pekka氏の論文です。

LinkIconPDF形式 500kB

”ドメインフレームワークについて”
モデルから生成させるコード(部品を呼び出す為の処理や、条件判断文)と、ドメインフレームワークの役割について簡単に説明します。

LinkIconPDF形式 80kB

”ジェネレータの動作について”
MetaEdit+のコードジェネレータは、独自のスクリプトを使ってモデル内を巡回し、見つかったメタモデルのデータ(プロパティー)に応じて、プログラム言語を構成するための文字列を出力する事で実現しています。これが、出力するプログラム言語を選ばず、要求仕様やデザイン仕様すら出力できる理由です。

LinkIconPDF形式 80kB

”MetaEdit+ 専用モデル環境の作り方”
MetaEdit+ Workbench を用いて専用のモデリング環境を構築する手順を解説しています。デモ版などに入っているデジタル時計のサンプルをベースにしています。

LinkIconPDF形式 1MB

”MetaEdit+ 概説書”
MetaEdit+ のDSM環境構築機能(MetaEdit+ Workbench)、モデリング機能(MetaEdit+)の各種機能を説明しています。MetaCase社日本語ページのProducts部分をまとめた資料です。

LinkIconPDF形式 1.5MB

よく質問のある、ライセンスの有効化、無効化に関する情報をまとめました。

LinkIconMetaEdit+ライセンスアクチベーション資料

< MetaEdit+チュートリアル 3部作 >

誰もが知っている“家族”をドメインに取り上げ、従来の“家系図(Family Tree)”に近い独自の言語(メタモデル)を作りましょう。その名のとおり、メタモデルとは、正当な言語要素とルールを定める“モデルのモデル”です。MetaEdit+において、メタモデルは、GOPPRRというメタモデリング言語を使って定義しています。名前の由来は、Graph、Object、Property、Port、RelationshipとRoleを表す頭文字です。これらは、モデリング言語を記述する時に使用するメタタイプです。図1-2は、メタタイプを例で説明しています.....

LinkIconFamily Tree Modeling Language チュートリアル

このチュートリアルは、MetaEdit+を使って作成されたモデリング言語の内容を理解する事で、モデリング言語の構築に関する考え方と、その手法を学習することを目的に書かれています。 評価版などインストール内にあるサンプルを用いて演習が行えます。

LinkIconWatch Example チュートリアル

グラフィカルメタモデリング機能の概説書。 サンプルを用いて、MetaEdit+でグラフィカルにメタモデリングできることを紹介します。MetaEdit+のグラフィカル・メタモデリングによりメタモデルの主となる、言語コンセプトと関連するルールといった基本部分をデザインすることで、言語(モデリング環境)作成の始めの段階を支援します。作成された言語のデザインは、MetaEdit+ Workbenchにインポートされ、そのメタモデリングツール(機能)を用いて、拡張(進化)させることができます。

LinkIconMetaEdit+グラフィカルGOPRR資料

Code Generation 2009 ハンズオントレーニング

モデルから完全なコード生成と、その生産性向上に興味を持っても、どのようにしてコーディング中心の開発からモデリングベースへ移行できるかは、良く知られていません。特に白紙状態から、抽象度を上げて高い生産性を得る(UMLではかなわない)独自のモデリング言語を作ることは、難しいと思われています。そこで、このセッションでは、MetaEdit+ の例題演習を介して、イテレーティブに、実用的な独自のモデリング言語が、コード資産を基にして、容易に実装できることを紹介します。(所要時間:180分)

資料・サンプル

動画デモ Flash形式

”MetaEdit+ による専用モデリング環境(DSM)について、MDDイニシアティブ(2007年7月)で行ったデモを5分に凝縮しました。デジタル時計のサンプルを用いて、高い抽象度でモデル化や変更が出来ること、ルール・作法がメタモデル部品に柔軟に組み込める事などを紹介しています。

動画デモ 5分LinkIcon

MetaEdit+ Workbench を用いて、専用のモデル環境を構築する手順。

動画デモ 10分LinkIcon

コード生成設定付き。MetaEdit+ Workbench を用いて、専用のモデル環境を構築する手順。

動画デモ 18分LinkIcon

価格情報

 製品定価は、メタモデル開発機能付きライセンス MetaEdit+ Workbench(133万円)、メタモデルを用いるためのユーザライセンスは MetaEdit+(77万円)です。本数割引など詳細は、お問合せを頂けると幸いです。

Introductory License 150ユーロ(2万円程度) はMetaCase社サイトからダウンロードで購入していただけるライセンスで、開発したものを商用利用しない事だけが制約です。先立つ予算が無い場合に評価を進めていただく事ができます。

また、弊社とMetaCase社にて、お客様のDSM環境の開発をお受けしています。費用は規模にもよりますが、始めはプルーフオブコンセプトとして小さな部分を3日程度で開発し、そのメタモデルを用いて講習会を行います。これをベースにして、メタモデルをお客様側で進化させる、あるいは残りの部分も全てお請けすることが出来ます。携帯電話のような大規模システムでも、DSM環境の開発は3ヶ月程度です。MetaEdit+は専用のデータベースで管理される為、小さな部分を作ってから少しずつ柔軟に進化させられます。

国内でDSM開発を依頼いただいたお客様からは、完成度が高く、メタモデル開発における多くの知見が得られたと、好評頂いています。

詳細については、お問合せ頂けると幸いです。

LinkIconドメインスペシフィックモデリングのワーストプラクティス(良くない事例集) IEEE Software 特集記事

IEEESoftwareJulAug2009.jpg画像クリックでダウンロードページに ドメインスペシフィックモデリング言語(DSM)を構築することへの関心は高まっているが、正しく行なうための指南書は殆ど無い。ベストプラクティスを留意することに加えて、共通の落とし穴や避けるべきことを知ることは有用である。著者は、広範な76 例のDSM を分析しワーストプラクティスを分類した。15 年間で、4 カ国、様々なツール、100 人にも及ぶ言語開発者、プロジェクト内のモデル担当者が3人から300 人の規模まで。 これらワーストプラクティスを、プロジェクトの進捗にあわせて直面すると考えられる順で紹介する。 

LinkIconMetaEdit+ メタモデリングのハンズオン資料公開

DSL、DSM の構築にどれだけの工数が必要か?

MetaEditDSLeffort.bmp 一般にはモデリング言語とコード生成機能を、ツールを用いて定義するのには、数年もの工数が掛かるプロジェクトになると予想されます。しかしながら我々の経験では数日でDSLとコード生成機能を実装しています。LinkIcon詳しくは、こちらから

OOPSLA のDSLパネルの動画リンク

MetaEditOOPSLA.bmpOOPSLA 2008 で行われたDSL(ドメインスペシフィック言語)の成果と課題についてのパネルディスカッションが動画で公開されています。発表者の多くが良いツールが無いことで、DSL構築に工数と費用が掛かることを課題にしているなか、MetaCase社Juha-Pekka氏は、間違った適用(DSLを広範に定義、コードの抽象度のDSL、生成されるコードに手を加える)、未熟なツール(イテレーティブな定義や使用ができない、モデルと言語を一緒に進化させられない、複数のDSLを統合できない)、非効率的なツールを採用してしまうと、数日で構築できる DSL に数年を浪費してしまうことを警告しています。そして、まずは小さな事例で実績を得ること、その成果を持ってマネジメントの理解を得ることが肝要であると説いています。 LinkIcon動画はこちらから

AUTOSAR, EAST-ADL, SysML などアーキテクチャ記述言語を自在に構築・進化させられる

MetaCase ニュースレター

DSM の Webセミナー・シリーズが開始されます。詳しくは、LinkIconこちらから ”ニュースレター 2009年3月号”

パナソニック電工 ユーザインタフェース・デザインツールの開発

The 7th OOPSLA Workshop on Domain-Specific Modeling で発表され、第9 回ソフトウェアファクトリ研究会でも講演のあった、パナソニック電工における ”ドメイン・スペシフィック・モデリング手法を用いたユーザインタフェース・デザインツールの開発”の論文を和文にしたものを、以下からダウンロードしていただけます。

パナソニック電工㈱成功事例pdfLinkIcon

英文オリジナルは、Workshop home-pageからダウンロードいただけます。

DSM Workshop home-pageLinkIcon

お勧め!ジェネレーティブプログラミング 訳本

GP.jpgドメイン工学、プロダクトライン、DSL、アスペクト、パターン、メタプログラミング、インテンショナル・プログラミングなどをキーワードに、ソフトウェア部品の再利用・自動生成のための体系的な入門書となっています。弊社で扱っている、MetaCase社、pure-systems社 も巻頭で紹介されています。

Domain-Specific Modeling の本が出版されました

MataCase社の、Juha-Pekka氏、Steven Kelly氏による、ドメイン・スペシフィック・モデリングの長年の経験がまとめられています(ツールの詳細ではなく) 最初の40ページは、DSMの概要と優位性、次の50ページで、DSMのアーキテクチャと各要素、次の100ページでは5つの実践的なサンプルを用いて、モデリング言語、ドメインフレームワーク、コードジェネレーションの紹介、そして残りの200ページで、独自のモデル環境を如何にして構築できるかを、事例を交えた実践的な方法を紹介しています。本に入りきらないサンプルは、以下のサイトからダウンロードして、製品版や評価版で、動作させることもできるようになっています。

DSM 本のサイトLinkIcon

EADS 社 機能をモデルでデザインし、コードを自動生成

MetaEdit+ の導入により、EADS 社 TETRA 端末製品ファミリーのUI の開発を、抽象度を上げて行えるようになりました。MetaEdit+ により得られた効果は、<開発期間の短縮>、<製品コードの品質を向上>、<複雑さを隠蔽し、開発作業を簡素化>、<ドキュメントの生成・更新作業を効率化>、<熟練者のサポート作業が軽減> など。

EADS 社成功事例pdfLinkIcon

Nokia 社 生産性を10倍向上

Nokia社では製品品質と生産性を上げるために効率の良い開発ツールが必須と考え、製品ドメインの知識が包含できて、柔軟に構築や改善が出来るコード生成ツールを求めて多数の市販ツールを評価した結果、専用のツール(DSM)を MetaEdit+ (メタケースツール)を用いて開発することにしました。

Nokia社成功事例pdfLinkIcon

MetaCase 社SD Times 100 を2008年も受賞 

盛況でした!セミナー ドメインスペシフィックモデリング(DSM)導入のコツと事例紹介

2007年9月14日、MetaCase設立者、Dr.Juha-Pekka氏がソフトウェアプロダクトライン国際会議 (SPLC 2007)での講演に来日する機会にドメインスペシフィックモデリング (DSM)のセミナーを行いました。お陰さまで50名弱の参加申込みを頂き、予想以上に多くの質問を頂戴しソフトウエアの再利用やモデル駆動に関する皆様の興味の深さを改めて認識する良い機会になりました。また、そのため時間がおしてしまい運営上のまずさがあったことを反省しています。以下のリンクから当日の資料をダウンロードしていただけるようにしていますので、ご参考頂けると幸いです。

セミナー資料 日本語版 2種(8.5MB)LinkIcon
MetaEdit_Nokia.JPGNokia社Symbian携帯電話事例MetaEdit_AADL.JPGアーキテクチャ記述言語への応用(AADL例)

 Email ニュースのご案内

 技術資料の公開情報、セミナーなどのイベント情報を、ご案内しています。ご興味いただける方は、メールにてご連絡先をお知らせ下さると幸いです。

お問合せメールはこちら