調整されたモデリング環境での C++ グローバル変数およびメソッドのモデリング

C++ グローバル変数およびメソッドを UML でモデリングするには、«cpp_globals» ステレオタイプを UML モデル内のクラスに適用します。 また、C++ ヘッダー・ファイルから、グローバル変数およびメソッドの UML 表記を生成することもできます。

始める前に

モデリング・パースペクティブが表示されている必要があります。ワークスペースに以下の項目がなければなりません。
  • C++ 変換プロファイルが適用された、開いている UML モデル
  • 空の C++ プロジェクト

このタスクについて

この手順では、C++ グローバル・メソッドおよび変数を UML でモデリングする方法と、C++ グローバル変数から UML へ変換する方法を説明します。 このトピックにある例は、UML モデルから開始し、UML から C++ への変換を実行し、生成された C++ コードのグローバル変数を作成し、C++ から UML への変換を実行してモデルとコード間の変更を調整する、調整されたモデリング環境を想定しています。

手順

  1. C++ 変換プロファイルが適用された UML モデルにクラスを追加します。
  2. ステップ 1 で作成したクラスに «cpp_globals» ステレオタイプを適用します。
  3. 作成する C++ グローバル変数およびメソッドごとに、対応する UML のタイプをステップ 1 で作成したクラスに追加します。 この例の場合、Operation1 という名前の UML オペレーションと、int 型の MAX_LENGTH という名前の属性を追加します。
  4. UML から C++ への変換の変換構成を作成します。
    1. 「ファイル」 > 「新規」 > 「変換構成」をクリックし、以下のステップにある値を使用してウィザード内のページに入力します。
    2. 「構成名および変換の指定」ページで、「変換」リストから UML から C++ への変換を選択し、「プロトコル」セクションで「調整」を選択し、「次へ」をクリックします。
    3. 「ソースとターゲット」ページでの「選択済みソース」ペインで、ステップ 1 で追加したクラスを含む UML モデルを選択します。 「選択済みターゲット」ペインで、空の C++ プロジェクトを選択し、「次へ」をクリックして再度「次へ」をクリックします。
    4. 「マッピング」ページで、「この変換でマッピング機能を使用可能にする (Enable the mapping functionality for this transformation)」チェック・ボックスを選択します。
    5. 「マッピング・モデルのファイル名」フィールドで、マッピング・モデルの名前を指定します。
    6. 「マッピングの編集」をクリックし、マッピング・モデルのワークスペース内のロケーションと名前を指定して、「OK」をクリックします。
    7. 「マッピングの編集」をクリックします。
    8. 「マップされた名前の編集」ウィンドウで、ステップ 1 で追加したクラスが含まれる UML モデルを選択します。
    9. 「マップされた名前」フィールドで、このマップされた要素を識別する名前を指定します。 例えば mapped_model を指定します。 続いて「適用」をクリックして「OK」をクリックします。
    10. 「次へ」「次へ」、そして「次へ」とクリックして、ウィザードの次の 3 ページのデフォルト値を受け入れます。
    11. 「共通」ページで、「トレース関係を作成」チェック・ボックスを選択して、「完了」をクリックします。
    変換構成エディターが開き、新規構成ファイルが表示されます。
  5. UML から C++ への変換を実行します。 変換構成エディターの「メイン」ページで、「前方変換」セクションの「実行」をクリックします。
  6. 「プロジェクト・エクスプローラー」ビューで、ターゲット C++ プロジェクトまで移動し、1 で作成したクラスと同じ名前を持つヘッダー・ファイルを開きます。 ステップ 3 で作成した各メソッドまたは変数について、変換によって対応する C++ グローバル・メソッドまたは変数がヘッダー・ファイルに生成されることにご注意ください。
  7. 次の例のように、ヘッダー・ファイルにグローバル変数または演算を追加します。int NEW_MAXLENGTH;
  8. モデルとコードの相違を調整します。 変換構成エディターの「メイン」ページで C++ から UML への変換を実行します。 「マージ」ウィンドウで、ステップ 7 で追加したグローバル変数を含む、UML モデルに提案された変更を確認します。
  9. 「OK」をクリックして、UML モデルに提案された変更を受け入れます。 変換の実行後、更新された UML クラスにはステップ 7 で追加したグローバル変数が含まれるようになったことにご注意ください。

フィードバック