Focus Products
|
|
|
|
図1 アプリケーションライフサイクルにおけるリソースの割合 |
J2EEシステム開発でまず問題になるのは、Javaに精通した開発要員の確保です。CやVisual Basicなどの開発者に比べて層が薄いのは否めません。
もちろん、システム開発を外部のシステムインテグレーターやソフトハウスに委託することは可能ですが、きめこまかな対応が難しくなります。また、システムインテグレーターやソフトハウスにとっても、Javaに精通した開発要員が不足しており、必死に確保・育成しているのが実情です。
また、システム開発に携わるスタッフ全員が、プロジェクトに関する情報を共有していなければ、ムリやムダも多くなり余計な開発工数がかかります。その結果、開発期間もコストも増えてしまいます。さらに、Java自体の開発効率が高いとはいえませんので、開発期間やコスト増の要因となり、スピード開発という要請に応えることが難しくなります。
2つめの大きな課題は、メンテナンス期間においてビジネスに対応するための時間およびコストです。図1は、急速なビジネスの変化が、エンタープライズアプリケーションのライフサイクルにどのような影響を及ぼしているかを示しています。
企業のビジネスのコアな部分を担うシステムは通常、5〜10年と長期間使用されるのが普通です。調査によると、アプリケーション全体のライフサイクルの中で開発そのものにかける期間とコストは20%に過ぎず、残り80%はメンテナンスに割かれています(図1)。
また、この80%のメンテナンス期間中、企業はさまざまな変化に直面します。会社の合併や買収、国内で定められている各種規制の変更、新しい製品やサービスの導入、新しいセールスチャネルの導入など、その間に発生する変化を挙げたらきりがありません。
こういった変化に対応するためのシステムの拡張、変更、更新にかかる費用と時間を削減すること、つまりメンテナンスコスト全体を削減することが、アプリケーションのトータルなライフサイクルにおいてコスト削減を可能にする鍵となります。
逆にいえば、エンタープライズアプリケーションは、長期間にわたる使用に耐えるシステムではなく、“日々のビジネス変化に迅速に対応”できるシステム設計でなければ、今後のビジネス変化に追随することはできません。
このように、せっかく変化への柔軟な対応やスピード開発を期待してJ2EEを選択しても、前述の開発面、メンテナンス面での課題をクリアしなければ、その強みを発揮できません。それどころかJava開発者が少ないことから容易に手直しがきかず、最悪誰も手をつけることができないアンタッチャブルシステムになりかねない危険性があります。
|
図2 MDAを実装した『OptimalJ』はビジネスモデルからコードを自動生成する |
|
図3 『OptimalJ』では「パターン」を変更することによって、EJB1.1からEJB2.0への変更なども自動的に行える |
ビジネスモデルからコードの自動生成で迅速なアプリケーションを開発
『OptimalJ』を活用すれば、前述の開発面、メンテナンス面での問題を同時に解決することができます。少数のJava開発者を確保できれば、新規のアプリケーション開発からメンテナンスまでを、スピーディにかつ低コストで実現することができるのです。
OMG Model Driven Architecture (MDA)を実装した『OptimalJ』は、ベンダーや言語に依存しない相互運用性によって、多様な組織に高度な柔軟性を提供しています。『OptimalJ』
のモデル間、モデルとコード間でのトランスフォーメーションは、迅速なアプリケーションの変更とメンテナンスを可能にしています。そのポイントは、
- ビジネスモデルからコードを自動生成するのでJava開発者は少数でOK
MDAのテクノロジに基づいた『OptimalJ 』はプログラミングではなく、モデリングによるアプリケーション開発を実現しており、モデルからコードへの変換を自動的に行いますので(図2)、Javaに精通した開発者は少数で済みます。
また、「パターン」によるモデル変換を実現しており、「パターン」をカスタマイズすることで、さまざまな業種・業界のビジネスモデルに対応できます。当然、Webのフロントのデザインのカスタマイズといったように、コードを全く触らずにすべての開発をモデルから行うのは現実的ではありません。しかし、複数のJ2EEアプリケーション開発者により一からコーディングすることに比べれば、開発者のリソースは遙かに少なくて済みます。
- 開発生産性の向上
『OptimalJ』は最初からクラス図を描くだけなので、人手によるコーディングがほとんどありません。また、デバッグ用の実行環境として、Tomcat(Webサーバー)、JBoss(アプリケーションサーバー)、Solid DB(データベースサーバー)といったフリーのサーバーをバンドルしており、アプリケーションサーバーを用意しなくても、デバッグが可能です。さらに『OptimalJ』は、他のモデリングツールで業務分析を完了したUMLをインポートすることができます。また、JCA(J2EE Connector Architecture)を用いて、IBMメインフレームと連携するなど、既存システムとの幅広い統合も実現しています。
- メンテナンスコストの削減
Javaを取り巻くテクノロジは日々バージョンアップしますが、『OptimalJ』はこうしたテクノロジの差異を「パターン」(図2参照)で自動的に吸収しますので(図3)、大幅なメンテナンスコスト削減が可能になります。米国EDS社の評価によれば、EJB1.1からEJB2.0への移行が、従来の開発手法では2ヵ月程度ですが、『OptimalJ』では30分程度で移行を完了できます。
以上のように、『OptimalJ』は小規模からエンタープライズレベルまでのJ2EEアプリケーション開発・メンテナンスのハードルを格段に低くするツールであることがおわかりいただけたと思います。
今までJ2EEアプリケーションの良さはわかっていても開発要員不足などで逡巡していた企業、あるいは市場変化に柔軟に対応できるシステムを構築したい、J2EEアプリケーションをスピーディに開発したいと考えている企業の皆様、是非とも『OptimalJ』を活用することでアジル経営を実現していただければと思います。






