OSSのUMLモデリングツールpapyrusを使ってみよう ~インストール編~

来年度に向けてモデリングも勉強しようかなと思って、astahを立ち上げたらライセンスの有効期限が切れていて、community版もインストールしてなくて阿鼻叫喚になっている方にOSSのモデリングツール[papyrus](https://www.eclipse.org/papyrus/index.php)を紹介します。

# はじめに

昨年度まではETロボコンの期間が終わったらastahのcommunity版を使いましょうでよかったのですが、残念なことに[community版の提供が終わってしまいました。](http://astah.change-vision.com/ja/faq/faq-license/com-download-at-all.html)
終了に備えて既にダウンロードしている、以前から使っていたという方はそのまま使えるようですが、[インストーラーの譲渡もNG](http://astah.change-vision.com/ja/faq/faq-license/com-keep-use.html)ということなので、今から入手する方法はなさそうです。期限切れになってはじめて気がついて途方にくれている人もいるかと思ったので、ここで紹介することにしました。

# papyrusとは

EclipseベースのUMLエディタです。日本語でググってもほとんど情報は出てこないですね。
一時期開発が停滞気味だった時期もありますが、ここ数年でかなり進化しています。
かつては独自サイトを持っていたこともありましたが、(私の記憶が間違ってなければ)2010年前後にEclipseのサイトに[Papyrusのページ](https://www.eclipse.org/papyrus/index.php)ができました。それなりに歴史のあるツールです。
日本語の情報は https://papyrus-jp.blogspot.com/ ぐらいでしょうか。
詳しい説明は https://www.eclipse.org/papyrus/ をご覧ください。
[公式youtubeチャンネル](https://www.youtube.com/channel/UCxyPoBlZc_rKLS7_K2dtwYA)があったりもしますよ

# papyrusの強み

研究用とかではなく、産業システム用途に作られているツールということで、実用性を意識して作られてるようなので、業務で本格的に使用することも可能でしょう。

## Eclipseのモデリング用エコシステムのツールのひとつ
EclipseってJavaのエディタとか、C/C++の開発環境というイメージが強いかもしれませんが、モデリングツールとしてのエコシステムも充実しています。
papyrusはこの中でGraphical Modeling Toolという位置づけです。

## UMLの仕様を網羅しようとしているっぽい
ほんとにすべて実装されているか調べたわけではないのですが、ツールの制限でかけないということをなくそうとしているのは好感がもてますね。

> Papyrus is graphical editing tool for UML 2 as defined by OMG.
> Papyrus targets to implement 100% of the OMG specification!

https://www.eclipse.org/papyrus/index.php#technologies より

## OSS
コードは公開されているので、もし必要な機能がなかったら、自分で追加することもできますね。
バグも見つけたらぜひ報告しましょう :smile: 

# インストール
Papyrusを使うには以下３つの方法があるようです。

* Papyrusのパッケージ(Papyrus RCP)を使う
* [Eclipseプラグイン]((https://www.eclipse.org/papyrus/download.html))を追加する
* Eclipse MarketPlaceからインストール

ここではPapyrus RCPを使う方法を紹介します。
（後ろ２つはこれだけの情報があれば充分という方向けに紹介だけしておきます）

## パッケージのダウンロード
[Papyrusのダウンロードページ](https://www.eclipse.org/papyrus/download.html)をスクロールしていくと　**Papyrus RCP** が出てきます。

2018/12時点ではこんな感じです。
<img width="1050" alt="PapyrusRCP.png" src="https://qiita-image-store.s3.amazonaws.com/0/34097/4c0ab5a7-9fed-0700-4ece-e515df2649ab.png">

ここのOxygen, Photon, 2018-09 というのはEclipseのバージョンです。
とりあえず私は3ヶ月ぐらい経っているからまあ大丈夫かなと思って2018-09にしました。
お好みで選んでもらえばよいと思いますが、この下にある「Weekly RCP」は積極的にバグ潰しに協力するぜ！という場合以外は使うのはやめておきましょう。

どのバージョンを使うか決めたら、インストールしたいPCに合わせてパッケージを選択してください。

<img width="721" alt="PapyrusDownliad.png" src="https://qiita-image-store.s3.amazonaws.com/0/34097/7d268572-8c83-fbc1-f6e7-41da47857d44.png">

ダウンロードボタンをクリックするとダウンロードが始まります。
この例だと四角で囲んであるDownload fromがJapanになっていますが、はじめて実行した時は海外サイトになっていました。
日本のサイトになっていない場合は丸印のSelect Another Mirrorをクリックしてダウンロード元を変更しましょう。

## ダウンロードがめちゃくちゃ遅いとき

環境にもよりますが、このパッケージは500Mぐらいです。通常そんなにかからない環境なのにあと数時間などと言われたら、上記のダウンロード先を変更してみましょう。[^1]

## パッケージを解凍する
ダウンロードしたpapyrus-2018-09-4.1.0-macosx64.tar.gz(Macの2018-09の場合)をダブルクリックするとPapyrusが出てきます（WindowsだとPapyrus.exeかな？）

## 起動してみる
Papyrus(Papyrus.exe)をダブルクリックして起動してみましょう。
バージョンによって画像は異なりますが、起動画面が表示されます。

<img width="407" alt="Papyrus.png" src="https://qiita-image-store.s3.amazonaws.com/0/34097/5b40cf97-940f-8e12-bd89-ea392406617c.png">

### workspaceの保存場所を指定する
Eclipseを使ったことがある方なら見覚えがある画面ですね。
お好みの場所と名前でworkspaceを作成してください。

<img width="587" alt="SelectWorkspace.png" src="https://qiita-image-store.s3.amazonaws.com/0/34097/d25ce225-f25b-d388-46fe-3a8077321563.png">

起動できました！
Eclipseの画面そのものですね。
<img width="658" alt="PapurysEditor.png" src="https://qiita-image-store.s3.amazonaws.com/0/34097/56a923d8-619e-7760-75ae-05b8019d3d90.png">

とりあえず今日はここまで。

[^1]: 何でわざわざそんなことを書くかというと、これではまったからなのです