ソースコード生成機能について
Enterprise Architectで提供している、ソースコードに関連する機能は次の通りです。
- クラス図からのソースコード生成
- ソースコードの生成内容のカスタマイズ
- 振る舞い図(ステートマシン図・アクティビティ図・シーケンス図)からのソースコード生成
- ビジネスルールからのソースコード生成
- 関連する情報
なお、機能によっては上位のエディションが必要となります。エディションについてはこちらのページをご覧ください。
ソースコード生成の概要
ソースコード生成の概要を動画で説明しています。(13分26秒・音声あり)
クラス図からのソースコード生成
Enterprise Architectには、ソースコードの生成の機能を備えています。対象となる図はクラス図です。
ラウンドトリップ開発も可能です。つまり、クラス図の内容を変更後、既存のソースコードに変更点を反映させたり、ソースコードの変更内容を既存のクラス図に反映させることも可能です。
(ソースコード生成のカスタマイズを実施している場合には、ラウンドトリップできない場合もあります。)
対応する言語は次の通りです。
- Java
- C++
- C
- C#
- VB.NET
- Delphi
- ActionScript
- Python
- PHP
- VisualBasic
- JavaScript
ただし、Enterprise Architectは設計ツールであり、いわゆる解析ツールではありませんので、メソッドの内部の挙動やクラス間の実際の呼び出し関係の把握のような詳細な解析・内容の理解の目的では役に立ちません。ご注意ください。
ソースコードの生成内容のカスタマイズ
Enterprise Architectの既定の設定で出力されるソースコードは、現場で利用しているコーディング規約に沿わない場合など、希望する結果と異なるかもしれません。このような場合には、ソースコードの出力結果をカスタマイズできます。
ソースコードの出力をカスタマイズするための機能として「コード生成テンプレート」があります。このテンプレートの内容をカスタマイズしてチーム全体に配布することで、設計者全員でカスタマイズ結果を共有できます。カスタマイズについては、このページ下部「関連する情報」のドキュメントをご覧ください。
振る舞い図からのソースコード生成
ユニファイド版あるいはアルティメット版を利用すると、振る舞い図(ステートマシン図・アクティビティ図・シーケンス図)からのソースコード生成が可能です。
対応する言語は次の通りです。
- Java
- C++
- C
- C#
- VB.NET
振る舞い図からのコード生成の詳細は、こちらのページと、このページ下部「関連する情報」のドキュメントをご覧ください。なお、組込み機器の設計開発を想定し、ステートマシン図の内容をC言語あるいはC++言語で生成するカスタマイズサンプルも提供しています。
ビジネスルールからのソースコード生成
ユニファイド版およびアルティメット版では、「ビジネスルール」(要求や制約など)を定義し、そこから段階的に設計を行い、最終的に部分的なソースコードを出力できます。詳細は、このページ下部「関連する情報」のドキュメントをご覧ください。
関連する情報
ドキュメント
内容 | 更新日 | - |
ソースコードの生成と読み込み 機能ガイド クラス図からソースコードを生成したり、ソースコードからクラス図を生成したりする機能の概要です。 | 2022/04/27 | ![]() |
アクティビティ図・シーケンス図からのコード生成 機能ガイド Enterprise Architect Suiteで利用可能なアクティビティ図・シーケンス図からのコード生成機能の概要です。 | 2022/03/10 | ![]() |
ステートマシン図からのコード生成 機能ガイド ステートマシン図からのソースコード生成の概要と利用方法についての説明です。 | 2022/04/27 | ![]() |
シーケンス図の作成 機能ガイド シーケンス図を自動的に作成する機能の説明です。 | 2022/03/10 | ![]() |
ソースコード生成のカスタマイズ コードテンプレートフレームワーク(CTF)を利用すると、ソースコードの生成結果を自由にカスタマイズすることができます。このCTFは非常に多機能で複雑ですので、4分冊で機能の概要を説明します。 |
2022/04/27 | ![]() (基礎編) |
2021/12/27 | ![]() (応用編) | |
2022/04/27 | ![]() (発展編) | |
2019/08/22 | ![]() (振る舞い図からのコード生成編) |
動画デモ
内容 | 時間 | リンク |
ソースコードの生成と読み込み | 13分26秒 | Youtubeで再生![]() (音声あり) |
シーケンス図の自動生成 | 6分32秒 | Youtubeで再生![]() |
(→動画デモのページへ移動)