三菱UFJインフォメーションテクノロジーのアーキテクトとアリエルのCTOが本音で語る、Java EE 6への取り組み方と導入効果、そしてJava EE 7の価値 【前編】

Oracle Java & Developers編集部
2013-09-24 15:00:00
  • このエントリーをはてなブックマークに追加

Java EE 6の導入効果、メリットは? Spring Frameworkとの選び分けのポイントは?──三菱UFJインフォメーションテクノロジーのアーキテクトとアリエル・ネットワークのCTOが本音で語り合った。

まずはスモールスタートで取り組みを始めてノウハウを蓄え、徐々に適用範囲を広げるべし

 日本オラクルは2013年8月22日、ユーザー企業の情報システム部門管理職やシステム・アーキテクト、CIOなどのITマネジメント層を対象としたセミナー「最新のJavaを3時間で知る! Java解説セミナー」を都内で開催した。同セミナーでは、次世代の企業システム構築基盤として大きく生まれ変わったJavaおよびJava EEの最新動向や、最新のJava EEへの移行ノウハウなどが紹介された。

 その同セミナーにおいて最後に実施されたのが、パネル・ディスカッション「Java EE 7 First Impression - Java EE 6導入効果とJava EE 7へ至る道」だ。ディスカッションには、Java EE 6の導入に取り組んできた三菱UFJインフォメーションテクノロジーの斉藤賢哉氏(ITプロディース部 部長)と、アリエル・ネットワークの井上誠一郎氏(取締役CTO。ワークスアプリケーションズのゲストフェローを兼務)が登壇し、それぞれの経験から効果的な導入方法や導入効果などを語った。その要旨を2回にわたってお届けする。


三菱UFJインフォメーションテクノロジー ITプロディース部 部長の斉藤賢哉氏

 書籍『マスタリングJava EE 5』の著者としても知られる斉藤氏は、Java EEの黎明期である2000年からJava EEへの取り組みを開始し、これまで三菱東京UFJ銀行のさまざまなシステムをJava EEで構築してきた。現在所属するITプロデュース部は先進的な技術に関して調査や検証を行い、使えると判断したら、いち早く取り入れて社内に浸透させていくことを主なミッションとしている。Java EE 6への取り組みも昨年より開始し、スモールスタートでの導入を試みているところだという。

 「ITプロデュース部は、世の中の先端技術の調査/研究を行い、有望な技術は他社に先駆けて取り入れていくことを役割としています。大規模なプロジェクトでいきなり新規技術を採用/検証するのはリスクが大きいため、Java EE 6については当社(三菱UFJインフォメーションテクノロジー)における小規模な人事システムの開発で採用し、今年4月に無事リリースしたところです。

 このプロジェクト自体はとてもうまく進んだのですが、振り返ってみると、想定どおりに動かなかったり、ネットで技術情報を探しても英語の情報源しかなかったりで、ヒヤリとした場面がありましたね。もっとも、そうしたところを乗り切れば、Java EE 6の学習コストそのものはとても低いと感じましたし、生産性に関しても従来のアーキテクチャに比べて、かなり高まっていると評価しています。

 今後は、こうしたプロジェクトで得た実績とノウハウを基にして、徐々に適用範囲を広げていく予定です」(斉藤氏)

社内標準技術の選定指標は「実績」、「ロックイン回避」、「将来性」


アリエル・ネットワーク 取締役CTO/ワークスアプリケーションズ ゲストフェローの井上誠一郎氏

 一方の井上氏は、アリエル・ネットワークにおいてWebコラボレーション・プラットフォーム(アリエル・エンタープライズ)の設計/開発を主導する傍ら、ワークスアプリケーションズのゲストフェローとして、ERPソフトやSCMソフトの性能向上やセキュリティ強化、開発生産性の向上などを支援している。

 書籍『パーフェクトJava』を上梓するなど、斉藤氏と同様に技術情報の発信にも力を入れる井上氏は、これまでSpring Frameworkに精力的に取り組んできた。

 「私は、Spring Frameworkの生みの親であるロッド・ジョンソン氏が著した書籍『実践J2EEシステムデザイン』を技術書としてよく人に勧めるのですが、Spring Frameworkは同書で説明されているアーキテクチャを基に作られています。Java EEに関心を持ったのは、バージョン5以降、Java EEもSpring Frameworkの良いところを取り入れて発展していると聞いたためで、実際に自分で調べてみて、確かにSpring Frameworkの優れた点が取り込まれているなと感じましたね」(井上氏)

 このように、Spring Frameworkに加えて、現在はJava EEにも取り組む井上氏は、アリエル・ネットワークやワークスアプリケーションズにおける技術選定のアプローチを次のように説明する。

 「アリエル・ネットワークの製品は、これまでSpring Frameworkをベースに開発してきました。私は同社の創業メンバーの1人だったこともあり、自分が良いと判断した技術を標準として採用しやすい立場にあったのです。

 それに対して、親会社であるワークスアプリケーションズのERPやSCMなど巨大なソフトウェア製品のアーキテクチャを見直すといった話になると、当然ながら私の判断だけでことを進めるわけにはいきません。そこでは、選定技術の妥当性に関する説明がとても重要になります。ERPやSCMなど、お客様が長期間お使いになり、10年、20年にわたってバージョンアップし続けるようなシステムのベースになる技術を選ぶわけですから、選定基準は保守的にならざるをえませんが、これは仕方のないことでもあります」(井上氏)

 つまり、"枯れた技術"、あるいは"業界標準"として確立された技術が、より有力な候補になるというわけだ。

 井上氏の場合、技術選定に際しては、次の3つの指標を重視しているという。

 1つは「社内での利用実績」だ。井上氏は、パイロット・プロジェクトでもよいので、必ず社内で何らかの利用実績がある技術を選ぶという。

 「自社で利用するわけですから、インターネットなど世間で流通している評価だけをあてにすることはできません。必ず自分たちが自信を持って使える技術を選びます」(井上氏)

 2つ目は「ロックイン回避」だ。その技術を選んだ後で、「必要なときに"逃げられる"かどうか」(井上氏)を評価するという。この評価は、Java EEなどのようなプラットフォーム全体のマクロな視点で行うほか、その一部を成す技術(例えば、Java Persistent API[JPA]などの個別API)に関しても、いざというときに別の技術で置き換え可能かどうかを検討するという。

 そして3つ目は「将来性」である。

 「オープンソースの場合、よく『ソースコードが公開されているので、いざとなれば自力でメンテナンスできる』と言われますが、現実には開発プロジェクトが解散してしまったら、なくなったに等しいわけです。オープンソースだろうと商用製品だろうと、継続して広く利用され、開発が行われるという『将来性』は極めて重要な指標です」(井上氏)

 これらの3つの指標に照らし合わせても、「現在はJava EEかSpring Frameworkの2択になる」と井上氏は語る。井上氏の周辺ではSpring Frameworkの実績が多いため、当然、同フレームワークを推す声が強くなるが、「どちらかがダメという話ではないが、公平を期すために指摘しておきたい」と前置きして、井上氏は次のように続ける。

 「私は、Spring Frameworkに関して1つ心配なことがあります。それは『将来性』の面です。実は昨年、生みの親であるジョンソン氏がヴイエムウェア/スプリングソースを辞め、JavaScriptベースのWebアプリケーション・フレームワークを開発するメテオに移ってしまったんですね。もちろん、だからといってすぐにSpring Frameworkがどうにかなってしまうわけではないと思いますが、自分の経験からも、創業のキー・メンバーが抜けたプロダクトは怖いなというのが率直なところです」

 井上氏が指摘する懸念点はあるものの、現状、Java EEと並んでSpring Frameworkも国内で多くの実績を誇る。この両者の使い分けについても、井上氏は選択基準を持っている。

 「Java EEとSpring Frameworkからの選定となった場合は、やはり『アプリケーション・サーバ(ミドルウェア)とフレームワークのどちらに機能を寄せるか』という基準での評価になるでしょう。Java EEを推す方はアプリケーション・サーバ側に寄せることを勧めるでしょうが、私はどちらか一方のアプローチが絶対的に優れているとは思いません。個人的な選択基準としては、アプリケーション・サーバに備わる管理性やクラスタリング機能を活用したければJava EEになり、アプリケーション・サーバにそこまで期待しない場合にはSpring Frameworkになるといった感じです」(井上氏)