Obeo UML Designer の紹介

Eclipse ベースの UML ツールは各種あり、オープンなものとしては Papyrus が良く知られています。 オープンという意味では Obeo UML Designer もあり、今回はこちらを紹介します。

昔はそうでなかったと思うのですが、Obeo 社は多くのオープンソースプロジェクトを持っているようです。 彼らの製品ページは次のようになっています。

最初にコマーシャル製品(SmartEA, Designer, Agility)があり、次に Eclipse Open Source Projects として Sirius, Acceleo などが続きます。 そして最後にオープンソース製品として、UML Designer, SysML Designer などがあげてあります。

さて、UML Designer ですが、次の専用ホームページがあります。

説明によると Sirius ベースとあります。多分 Eclipse の UML2 プロジェクトの成果を利用してグラフィカルエディタを作成したのだろうと思われます。 ダウンロードして使ってみるとなかなか使えます。 日本語が通らないと使って貰えないことがありますので、定番の日本語化(Pleiades)を適用してみました。 そうして作成したサンプルのクラス図を次に示します。

ObeoUMLDesigner

いかがでしょうか? Eclipse の他のモデリングツールとの連携は良いはずですので、是非お試しください。

Obeo UML Designer の紹介

Eclipse DemoCamp について

2010年に一度東京で実施することが出来ましたが、それ以降は何も出来ていない Eclipse DemoCamp に関する話題です。

中国で活動されている Paul Verest さん(Node.js をやられているようです)という方から次のようなメールを頂きました。

I am organizing Eclipse Community in China.
Both China & Japan have large number of Eclipse users.
Asia may have even more Eclipse Europe than Europe+US,
however here much less events are organized.

We will have event on November 23rd with some remote sessions.
http://wiki.eclipse.org/Eclipse_DemoCamps_November_2013

I invite to do DemoCamp (as Eclipse.org does)
It would be nice to share presentation in any direction.

Please help just by passing information and tweeting about #eclipse

eclipse Japan working group の方数名にも転送したのですが、それ以外の国内の Eclipse 利用者の方々にもお知らせしたいと考え、この場を利用させてもらいました。 11月の話ですが、情報交換してみたいといったご関心があれば、是非コメントを書いて頂くか http://wiki.eclipse.org/Regional_Communities/Japan にある当方の連絡先までご連絡をお願いします。

 

Eclipse DemoCamp について

Eclipse Keplerについて

年に一度のEclipseリリース(今度はKeplerです)が昨日行われました。

  1. Annual Eclipse Release Train Ready for Download
  2. Top 10 Eclipse Kepler Features
  3. Annual Eclipse ‘release train’ arrives with Java EE 7, BPM backing
  4. Eclipse Kepler released

さあ乗り換えを試してみましょう。 なお、国内メディアによるニュースはまだ見つけられませんでした。

Eclipse Keplerについて

Eclipse Modeling 勉強会の件

今週の金曜日の夜に Eclipse Modeling 勉強会を予定しています。

  1. Eclipse Modeling 勉強会

今度の話題は次の通りです。

  1. Xtext紹介
  2. Bonita Open Solution紹介

Xtextはテキスト型のDSL開発フレームワークで、今回は入り口の部分を実際に動かしてお見せする予定です。Webページなどで英語の情報は沢山公開されていますが、今回は導入部分を日本語で紹介します。

Bonita Open SolutionはGMFベースでBPMNを実装した製品で、手軽にビジネスプロセスの定義やシミュレーションが出来るとのことです。GMFベースで何かを開発されるような方には参考になるかと思います。

他では聞けない話かと思いますので、よろしければ是非ご参加ください。

Eclipse Modeling 勉強会の件

MINERVA (Eclipse SoaML plugin)について

MINERVA: Model drIveN and sErvice oRiented framework for the continuous business process improVement & relAted tools という(多分アカデミックな)プロジェクト(成果)の紹介です。このプロジェクトでは Eclipse 用の UML ツールである Papyrus をターゲットとして SoaML の実装をしています。オープンに使えるようです。実は最新の Papyrus 用に SoaML Profile を自作していたのですが、途中でこれを見つけたという次第です。

  1. MINERVA

ちょっと注意が必要なのは、このプロジェクトの実施された時期が2010年頃であり、Eclipse  や Papyrusといっても現在のものでは動作しません。私は Eclipse Modeling に Helios の SR1 を使い、Papyrus は 0.7.2 を使いました。その上で、

  1. SoaML Eclipse plug-in: Implementation of the services modeling standard SoaML as an Eclipse plug-in

のページから Plugin をダウンロードし、解凍して出来た Jar ファイルをすべて Eclipse の Plugin フォルダに放り込みます。それなりに良く作り込まれています。ドキュメントはスペイン語ですが、Google Translate で何とかなります。動かしてみると、Collaboration の楕円形が Papyrus に実装されていないため長方形でやることになりますが(本質的な話ではありませんので)SOAモデリングが気楽に使えるかどうかの味見には十分だろうと思います。

面白いツール紹介風に書きましたが、個人的にSoaML的モデリングは結構強力で実用的だと思っているための紹介です。少なくとも、ビジネスモデリングのレベルでの使い方や、コンポーネントやWeb Serviceに対応するレベルでの使い方があります。

なお、OMG を調べると「SoaML のツール実装状況」が記載されたページがあります。ここにあるような商用製品を気軽に試せるかどうかは皆さんの置かれた環境次第だろうと思いますが、このPapyrus+SoaML Pluginは味見用として最適ではないでしょうか。もちろん、商用製品の方が使い勝手が良く便利な機能も多く含まれているはずですから、味見後にSOAモデリングが使えそうと思ったらそちらの道も選べます。

MINERVA (Eclipse SoaML plugin)について

Eclipse M2M変換について

2013年2月22日の夜にEclipse Modeling勉強会を実施し、そこでEclipseのモデル変換の幾つかを説明する機会がありました。題材はATLがよく例題としてプレゼンで使うFamilies to Personsです。私は主にQVTを担当しましたが、事前にATLの動作も確認しましたので、ちょっと感想を書かせて貰います。

動作の検証を行ったのは、Juno版ModelingパッケージにATLとQVToを入れたもの、Indigo版Modelingパッケージにmedini QVTを入れたもの、そしてJuno版のXtextディストリビューションです。他に、エディタしか動作しませんが、EclipseのQVTrとQVTcも入れてみました。

ATLで良く知られている例題(何々家の家族というモデルを、男性と女性の二種類からなる個人モデルに変換)ですのでこれを基準にします。

  • ATL自体のケースについては、メインのルール記述は分かり易いのですが、最初の頃はhelper機能の切り出し方が良く分かりませんでした。研究分野ではかなり使われていますし、最近は管理を地元?ベンダに移管した模様です。
  • QVToは確かに手続き言語的ですが、記述内容はATLとほとんど同じレベルで、特にOCL記述はATLのものがほぼそのまま利用できました。安定して動作するようですし、ATLとの間では比較的容易に相互に移行できそうです。
  • medini QVTはQVT Relationsなので、パターンマッチングの記述箇所に特徴的なところがあります。それでもクエリについてはQVTo同様にATLのOCL記述が(多少違いがありますが)結構近いものになりました。実績もありますので、このスタイルの記述がお好きな方は使えると思います。
  • Xtextといっても変換にはXtendを使います(勉強会当日はまだ完成していませんでしたが、三日後に動くようになりました)。Xtendは軽くJavaをラップしたものなので、変換を実現するクラスもどこかJavaコードの雰囲気が漂っています。このコードだけで動作すれば良いのですが、Xtextの仕組みにのせるため結構面倒なことになってしまいました。結果的に、Xtendでモデル変換も記述できますが(利用者にとっては)専用言語を実装したATL/QVTo/QVTrの方が楽だろう、というのが私の感想です。ただ、見栄え的にXtendの実行結果は面白いので、画像を入れておきます(左側のXtextエディタでFamilyモデルを作成しワークフローを実行すると右側のxmi形式のデータが生成されます)。

Xtend M2M

いずれの場合についてもモデル変換ロジック構築の考え方を説明したものがなく、現状はサンプルから学べという状況です。ユーザガイドやチュートリアルに、こういう考え方で書けば良いというガイドがあれば良いかと思った次第です。

最後に勉強会のサイトは こちら にあり、当日の資料類もそこに置いてあります。

Eclipse M2M変換について

Eclipse Modeling Meet-up in Tokyo #2

「ちょっとしたお知らせをさせて貰います。」の2度目です。

昨年12月に実施しました Eclipse Modeling 勉強会を再度開催します。 今度は2月22日(金曜日)の夜です。

  1. Eclipse Modeling 勉強会

勉強会の趣旨は変わりませんが、今回はメインテーマとして model to model 変換技術(QVTとATLになると思います)を取り上げる予定です。 model to model 変換(model to text 変換もそうですが)は今後も折に触れて扱うテーマであり、今回はその入門編ののようなものになると思います。 別のトピックスの話もあるかもしれませんので、ご関心のある方は上の案内ページをご覧ください。

Eclipse Modeling Meet-up in Tokyo #2