Translate

2020/05/28

Papyrus のロードマップ

今後の Papyrus について

最近はツールとしての開発もある程度は落ち着き、またUML自体の大きなバージョン変化が無い中で、今後 Papyrus がどの方向に向かっているのかが気になります。

開発側のweb情報を探しても纏まったものが見当たらない感じですが、先だっての2019年10月に開催された EclipseCon Europe 2019 において 「The evolution of Papyrus, an open SysML and UML tool」 という発表が、 Camille Letavernier (EclipseSource) さんと Philip Langer (EclipseSource) さんからなされています。

なお上記の各リンクをクリックすると同発表や発表者のページに飛びます。また直リンクもはりましたが、 発表資料(pdf) もそこに置かれています。

今回はその内容について見ていきたいと思います。

なお同発表内容は YouTube でも公開されていますので、発表資料と共に視聴されると、より詳しく確認出来るかと思います。

The evolution of Papyrus, an open SysML and UML tool

発表資料は全部で21ページです。なお原著は上のリンクの通りです。

ページ 1/21

表紙です。UMLツールとしてだけではなく SysMLツールとしてもアピールしていますね。

ページ 2/21

UMLベースのモデリング環境としてのアピールが通常の通りなされていますが、一番最後に、本発表全体での大きなテーマである「Domain-Specific (Modeling) Tool の構築が可能」であることがアピールされています。

ページ 3/21

ドメイン特化のモデルベースエンジニアリングがとても有効であることは I agree です。

コード生成やシミュレーションの機能が有効に働くかどうかは、どういうドメインか、やどういうエンジニアリングかに大きく依存しそうには思います。

ページ 4/21

様々な見え方は(もちろん相応する適切な内容と共に)必要だと思います。また良くも悪くも表形式というものは重要との認識です。

また確かにアイコンも重要ですね。一瞬にして、齟齬が少なく理解出来るので。大物の開発では、理解するための時間の短縮もとても重要ですし、受け取る人の適性もありつつ直感的に受け止められることが重要だと思います。

象形文字に起源を持つ表語文字である漢字を多用する我々は、特にそうなのかもしれません。

ページ 5/21

汎用モデリング言語である UML や SysML (1.X系かな?)と Domain-Specific Modeling は両立しないか?の問には確かに「NO!」(両立可能) だと思います。

後でも出てきますが Papyrus は UML Profile をサポートしています。UML Profile を使って DSML を実現する場合、Papyrus はプラットフォームとして使用可能だと思いますし、自分もそういう使い方をすることが多いです。

ページ 6/21

Eclipse のモデリングフレームワーク (EMF) を用いプラグインとして開発されている UMLベースの Papyrus であれば、EclipseおよびEMFをベースとした良いモデリングプラットフォームとなると思います。

ページ 7/21

Papyrus as a Platform の核は UML Profile となるみたいですね。合意します。

僕も UML Profile は多用してますが、あんまりこのブログでの記事としては記載していないですね。標準やAdd-onのProfileや自身で定義したProfileを含め、ほとんどの開発では、何かしらの UML Profile は作成して差し込んで使っています。

ページ 8/21

ここまでの話しと同じ内容ですが、ここでいう codegen や validation に対する「Powerful API」とは、どの機能が提供している API を指しているのですかね・・・

ページ 9/21

ここでの「Example and Demo」では UML Profile を定義・適用してモデル要素にドメイン特化の意味付け(ステレオタイプにて)を与えることが出来ることと、CSSライクなスタイルファイルにより表示内容が変わることが説明されたみたいですね。

先の YouTube ビデオの 11:06 ぐらいの所から説明されています。

UML Profile の適用や、標準スタイルの変更で CSS を使ったことはありますが、ステレオタイプで見え方が変わるというのは試したことがないですね。また、試してみたいと思います。

ページ 10/21

Papyrusに対してDSL向けの(フルな)カスタマイズさえもしたことがないですね。基本的に Profile 作成・適用で、見た目等は全て通常のUML UIで行っています。 まだまだ試してない機能も多いですね。

ページ 11/21

Papyrus UMLLight ですが、前に学習用として調べたことはあります。サイトは ここ になると思います。

OMG CERTIFIED UML PROFESSIONAL 2 (OCUP 2)の FOUNDATION LEVEL として示されている UMLのサブセット:

  • UML Use Case
  • Activity Diagram
  • Class Diagram
  • State Machine
  • Package Diagram
  • Sequence Diagram
に特化して、設定出来るプロパティ等も基本的なものになっていた気がします。

ただ、今見てもバージョンが UMLLight 0.0.1 RC2 のままで、またファイル置き場も Google Drive のままな気がします。 UMLLightに関する今後の開発スケジュールも知りたい所です。

なおアイコンが少し変わっていて以下のようになっています。日本で言えば「若葉マーク」なのかな、と思えますが各国共通なのでしょうかね??

SysML 1.6 は既に公開されていて Market Place から導入可能ですね。僕も使っています。

ページ 12/21

Papyrusで作成したモデルの diff および Merge ですね。僕自身はまだ使ってないですが、欲しいものであることは確かです。

今後は積極的に使ってみようと思います。

ページ 13/21

残りとしては、ベースとなる Eclipse のUI基盤に基づき今後 UI technology と Rendering Technology が変わるとのこと。

ページ 14/21

PapyrusのUIは GEF (Graphical Editing Framework) で作られています。 GEFのバージョン毎の進化は Wikipedia にまとめられています。

ページ 15/21

なるほど、GEF 3ベースから GEF 5ベースにマイグレーションするわけですね。より modern になるわけですか。 永続的な進化のためには必要になるとは思います。大変だとは思いますが。。。

ちなみに「Papyrus GEFx」という名称を固有名詞として使っているように思えますね。

ページ 16/21

ここは飛ばします。

ページ 17/21

ここも飛ばします。

ページ 18/21

頑張って欲しいです、Papyrus GEFx。

ページ 19/21

Web-based Papyrusも悪くないですね。僕自身への直近のメリットとしては、Eclipseベースといえ、時たまPC環境の違いで問題となることもあるので、 それが解消するといいですね。結構、そういう時は原因がよくわからないので。Eclipseのエラーログも難解ですし。。。

ただ使用する browser によって問題が発生するかもしれませんね。常に使用するbrowserを固定化出来ればいいですが、逆にそちらの方が難しいこともあるかな。

ページ 20/21

見た目の差異はこんな感じみたいです。

ページ 21/21

まだまだ進化し続けるみたいですね。これからも頑張って頂きたいです。