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 勉強会の件

Gartner Says Cloud, Mobility and Open Source Will Drive Application Development Market to Exceed $9 Billion in 2012について

Gartner社のプレスリリースの紹介です。

  1. Gartner Says Cloud, Mobility and Open Source Will Drive Application Development Market to Exceed $9 Billion in 2012

これついて、誰も異を唱えるとは思えませんが、クラウド+モバイル+オープンを標榜するものはかなりあります。さて、この三つの要素は全部同等の意味・重要性を持つものなのでしょうか? クラウドとモバイルについて違うという人がいると思えませんが、ビジネスの世界だと必ずしもオープンソースである必要はないように思えます。オープンソースと言っても、ある範囲までがオープンソースで付加価値をつけた部分やサポートは有償というケースも結構あります。 そういうケースを考慮すると、前の二つと最後のオープンソースは少し観点が違うような気がしています。 もちろん全部を満たしてくれた方が試し易いのですが、だからといって実際に使うかというとそれは別の話になる場合がありそうです。 オープンソースのメリットとデメリットを理解した上での判断が必要になりそうです。

Gartner Says Cloud, Mobility and Open Source Will Drive Application Development Market to Exceed $9 Billion in 2012について

BPMツールについて

だいぶ昔のことになりますが、オープンソース系のBPMツールに関するポストを書いたことがあります。先日改めて調べてみました。UMLでもそうでしたが、お絵描き系のツールとモデリングツールに分かれ、またシミュレーションなどの実行系機能の有無というポイントもあります。

全部使ったことがある訳ではありませんが:

  1. Bonitasoft
  2. jBPM
  3. Activiti

あたりが実際に使えそうなものかと思います。単なるお絵描きだと Dia などいろいろあり、Visio のBPMN 2.0用ステンシルを使われる方も多いようです。

という本(翻訳はされていないと思います)では、説明のために BPMN ダイアグラムの一部を示すことが多いためだと思いますが本文は Visio 系を使い、Executable BPMN という章では Bonita Open Solution を取り上げています。ただ、JBoss のものは他にも組み合わせることのできるコンポーネントが多数あるため、実行系を重視するとこちらも良い選択肢かと思います。

もちろん完成度が高く多分サポートもしっかりしているだろうコマーシャル製品も多くあります。OMG の BPMN Information Home というページで Implementers というタブをみると50件程度は出てきます。

BPMツールについて

RAD的アプローチについて

RAD = Rapid Application Development のことですが、最近あまり聞かない言葉のような気がします。モデル駆動もその一種かと思いますが、各種 Framework を利用して迅速に開発を行うことが今日的な RAD のような気もします。

ツールベンダが提供しているRADツールは高額なものが多く、普通は気楽に試すことが出来ません。そこで、エンタプライズシステム用に使えそうなオープンソース製品をいくつか眺めてみます(Mavenを利用しているものが結構あります)。

WaveMaker:元々は有償製品だったのですが現在はオープンソースとなっています。データモデルを作成すると簡単にそしてコードを書くことなく GUI を作成することが出来ます。変数の使い方など慣れが必要ですが、全部手作業でコードを書くよりかなり早く作業を進めることが出来ます。日本語ドキュメントもあり、元々販売を担当されていた日本の会社が有償サポートをされているようですので、初期はお願いするようなことをすれば使えると思います。

Naked Objects:これも元々は有償だったと思うのですが、現在はオープンソースとなっています。DDDベースのものですが、Java用と.NET用の二つのものがあります。Java用は現在Apache Isisという名前です。結構コードを書くことになると思いますので、RADといっても?かもしれません。ただ、GUIについて好みが分かれるところで、ちょっと使いにくいかもしれません。

RoR & Grails:Rails系のものはコード中心の作業になりますが、実はモデルをコードで表現しscaffold機能によりホスト言語(RubyやGroovy)のコードを生成します。従って途中からはホスト言語だけでの作業になりますが、早くプロトタイプを見せることが出来るためRAD的なものに分類出来ると思います。どちらも国内で専門的に対応する会社がありますので(RoRの方が多いでしょうが)、過去の資産との連続性などを勘案して検討出来ると思います。

商用製品やよりニッチ度の高いものなど他にも多くあると思いますが、最近の流行は出来上がったアプリケーションをクラウドにdeployできるようにすることやモバイル用GUIサポートのようです。モバイル用JavaScriptの世界は動きが早く、jQuery (Mobile)が強いように思えますが、例えばWaveMakerは(開発時期の関係か)Dojoをつかっています。そのまま使うのでなく、手を入れて使うつもりならこのあたりも評価のポイントかもしれません。

以上眺めてみると、モデリングからスタートするようなRADはプログラミングの世界とのギャップを埋める部分が面倒に見えるためか試す方も少ないようです。プログラミングからスタートし、DSLやある種のパターン的なものを導入し「簡単にコードが書けます」という言い方の方がプログラマには分かり易く、効果も見えやすいのかと思います。個人的にはモデリングからのアプローチが好みですが、すぐ効果の現れる後者のアプローチが受けているようです。これからもこういったDSLsやFrameworksがどんどん出てくると思いますが、いったんどれかで開発してしまった場合、移行・乗り換えはどうするのでしょう?

最後に、モデリングについては商用UMLツールやeclipse modeling project(に含まれる多くのモデリングプロジェクト)が利用でき、時にはそちら側の進化もチェックされてはどうかと思います。例えばXtendはモデリング側からJavaプログラムへのアプローチとも解釈できます。なお、eclipseにはRADにつながる?scoutのようなApplication Frameworkも隠れていますので見逃さないようにしてください。

RAD的アプローチについて

Eclipse Juno Release Train Has Arrived!について

今年もその日が来たようです。とりあえず目についた記事やポストです。

  1. Eclipse Juno Release Train Has Arrived
  2. Eclipse Juno Brings Eclipse 4 as Standard
  3. Top 10 Eclipse Juno Features

多分XtendもJuno対応版になってると思います。いつものようにModeling Packageからみてゆきます。せっかくですから、楽しみましょう。

Eclipse Juno Release Train Has Arrived!について

Eclipse ModelingにおけるOCLについて

OMG-Eclipse modeling workshop のなかで興味深かったお話の紹介です。 もともとある程度OCLは実現されていたのですが、Ed WillinkさんがXtextを利用したOCLエディタを開発され、それは現在のDistributionの中にも含まれています。 次は説明に使われたスライドです。

  1. OCL Advances and the OCL VM

IndigoでHelp->Install New Software …->”Indigo – http://download.eclipse.org/releases/indigo/”  から “Modeling/OCL Examples and Editors” をインストールすると、このエディタを入れることが出来るということです(その前にOCLのSDKも必要でしょうが)。 関連して、前に書きましたUML 2.5の仕様開発でも使っているとのことで、これからはOCL文をこのツールで検証してから仕様書に掲載するとのことでした。 私もまだエディタを実際に動作させていないのですが、XtextのForumでも名前をみかけるEdさんなので、きちんと動作するだろうと思います。 OCLは始めとっつきにくいところもありますが、慣れると結構使いやすく感じます。 また、Junoになれば OCL VM も入ってくるかもしれません。 そうなれば更に使える道具になると思います。 OCLの気になる方は(Junoを待つのではなく)早めからお試しください。

Eclipse ModelingにおけるOCLについて