ドメイン固有のコンセプトを定義する

モデリング言語コンセプトを定義する事から言語の開発が始まります。生成するソースコード、製品のコンポーネントの用途、製品のアーキテクチャー、製品ラインの特徴等から各ドメインに依存したコンセプトが提起されます。MetaEdit+は、ドメインコンセプトをそのままモデリング言語として使用できるようにします(ドメインのコンセプトとルールを開発者に提供する環境)。モデル内でドメイン固有のコンセプトを使用することで、生産性が10倍向上し、絶大な費用対効果を挙げた例があります。(サクセスストーリーに、より多くの情報があります)

コンセプトを定義する コンセプトを使って設計する

MetaEdit+メタモデル作成ツールを使用することで、DSM言語が迅速且つ簡単に開発できます。MetaEdit+を用いることで、ユーザー独自のドメインに適応したモデリング言語の構築という困難な作業が簡単に行えます。言語のコンセプトやそのプロパティーとルールは、フォームを埋める形式又はグラフィカルに規定する形で設定できます。MetaEdit+には、6種類のメタモデル作成ツールと関連ツールが用意されています。

  • オブジェクトツール:モデリング言語の基本的なコンセプトを規定するためのツールです。オブジェクトは、例えば、処理、メッセージ、ボタン、状態等を、相互に接続可能で再利用可能なシンボルとして定義した、言語定義の中心的なエレメントです。 
  • プロパティーツール:言語コンセプトを特徴付けるプロパティー(属性、特性値)を定義するツールです。プロパティーは、文字、文字列、数値、ブーリアン等の様々な型のデータとして定義できます。また、他のコンセプト(メタモデル)や外部ファイルなどへのリンクとしても設定可能です。例えば、ステート名、機能のID、表示形式、データ型等が設定されます。
  • リレーションシップツール:継承、メッセージ、呼び出し、推移といったオブジェクト間の接続に対して、シンボルやプロパティーを定義することで、リレーションシップを構築します。
  • ロールツール:"継承リレーションシップのスーパークラス"、"メッセージリレーションシップのクライアント側"の様に、リレーションシップの始点と終点の役割を規定します。
  • ポートツール:他のオブジェクトと接続する際のインターフェースの制限を、"ハードウェアカードに対する入力はデジタル"や"コントロールフローはプロセスのエレメントの下部に接続"の様に定義できます。
  • グラフツール:ステート図やコンポーネント図の様な全てのモデリング手法を実現できます。モデリング手法は、他のツールで定義された、オブジェクト、リレーションシップ、ロールが相互に接続される条件を、バインディングやルールとして規定することで実現されます。エクスプロージョン、デコンポジッション及びモデリングコンセプトの再利用の機能も持っています。