今回はEnterprise Architectの体験版でSysMLのパッケージ図を書いてみます。
題材は下記SysMLの教科書からです。

SysML Distilled: A Brief Guide to the Systems Modeling Language
- 作者: Lenny Delligatti
- 出版社/メーカー: Addison-Wesley Professional
- 発売日: 2013/11/18
- メディア: ペーパーバック
- この商品を含むブログを見る
全部で17のパッケージが存在しています。パッケージはフォルダの形で表現されているのはそれっぽいですね。図を見てわかるようにパッケージはパッケージを含むことができます。まさにフォルダの階層構造ですね。○の中に+が描かれた線はパッケージとパッケージの包含関係を示します。この場合、StructureパッケージはDomainパッケージに含まれています。またDomain::Actorsも、ActorsがDomainに含まれることを表しています。これもフォルダのディレクトリの表現方法に似ていますね。
他、矢印のついた点線は依存関係を示します。例えばTest CaseとRequirementsの関係ですが、Requirementsが変化した場合Test Caseも変化する可能性があることを示しています。その逆はありません。
この図をEnterprise Architectで書いてみます。どうもSysMLとかシステムズエンジニアリング関係の題材は航空宇宙系が多いですねぇ……
とりあえずEAを起動します。
こんな感じのウィンドウです。日本語版をインストールしたつもりが英語verでした。設定で変更できそうですが面倒なのでこのまま作成していきます。
操作方法など日本語のドキュメントは下記サイトにあります。
Enterprise Architect ドキュメント ライブラリ
途中スクリーンショットを忘れてしまったので中途半端なところからスタートです。もう半分ぐらいできていますね。
この状態から新たにパッケージValue Typesを追加してみます。
New Packageからダイアログを起動してパッケージ名を入力します。
パッケージが追加され、さらに詳細入力画面が自動で立ち上がるのでキーワード model Libraryを入力します。
次にDomainとActorの包含関係を表します。例題ではActorはドメインに含まれています。Domainパッケージを右クリックして、Domainに新たにパッケージ図を追加します。
新たにDomainタブが立ち上がりました。まだ何も中に入れていないので白紙の状態です。
ここにActorsパッケージを作成してみます。
もともとのタブに戻ります。ActorsがDomainパッケージの中に作成されているのが確認できました。ただ、「Domain::Actors」という表現にはなっていません。どこか設定変更で変えられる可能性はありますが、今回は見つけられませんでした。
Domainの時と同様にStructureパッケージの中に6つのパッケージを作成します。
最後にコネクタをつけて仕上げになります。図のタイトルフレームを付けたかったのですがドキュメントをざっと見た限り項目が見当たらず、今回は諦めました。しかし機能としては存在していることは確かなので、おいおい探していきたいと思います。
総評として、やはりやや重いかなと感じる場面がありました。具体的にはパッケージを作ってから詳細入力ウィンドウが立ち上がるまでに1秒程度ラグを感じますので、そこが若干の不満点です。詳細ウィンドウが自動で立ち上がらないように設定すれば問題ないと思います。また今回はultimate版を使ったのですが大変機能が多くリボンの項目が多くて何をどうしたら良いのか迷ってしまう部分が多くありました。
ただDraw.ioと比べるとやはり専用ソフトだけあってかなり作成時間が短くなったように思います。またDraw.ioで書いた場合はただの絵ですがEnterprise Architectで書いたものはちゃんと動作するモデルになるので、その点も大きな違いですね。またエクスポートもPDFで問題なくできたのは嬉しいです。
今日はここまでにしておきます。これからもちょくちょくモデリングを進めていきたいですね!