JavaによるWEBシステム開発                           ヒアリングから契約および運用までの流れ

Javaを使った開発はさまざまな言語の長所を取り入れ、欠点を補い、 あらゆるプラットフォーム・分野で稼働することを目指して誕生した言語であり、 当初のコンセプト通り、あらゆる分野にわたって浸透した裾野の広い技術であります。
  ここでは書ききれませんが、 今やモバイルコンテンツとの連携するWEB配信サーバーやJavaアプリ、ECサイト、ポイント制システム、 在庫管理システム、受注予約システムなどの業務アプリケーションや、大企業の情報システムなど あるゆる分野にわたって実現されています。
  そのため、必然的に開発手法も多岐にわたります。目的に応じてオープンソースのものも含めて さまざまなフレームワークがあり、開発に向けては 実現したい機能や予算、納期、今後の各調整の予定によって最適な選択をする必要があります。

最新のJava EEによる開発
当社では企業システムを実現するためのJavaのエンタープライズ仕様Java EEに準じた開発を行います。
Javaに限らず、プログラム言語ごとにフレームワークがオープンソースのものも含めて さまざまなプログラムの枠組みが開発されており、 開発費のコストダウンや納期の短縮など費用対効果として開発当初から採用されるケースが多いのが現状です。
  ただ、フレームワークは柔軟性に欠ける側面や、そのフレームワークを習得している開発者が限られていて、 複雑で高機能なフレームワークほど1人月あたりのコストが高くなる傾向があり、また柔軟性が低いために、 フレームワークにない、独自の機能を新たに組み込みたい場合に開発費と納期が余計に多くかかる場合が多々あります。
  さらに、フレームワークはさまざまなオープンソースのモジュールを利用して構成されているのが現状で、 セキュリティホールの発見や各モジュールのバージョンアップの時の手間とコストが想定以上にかかってしまう場合があります。
  そこで実現したい仕様あるいは近い将来組み込みたい機能があらかじめ明確に分かっている場合、 既存のフレームワークを使わず、当社のフレームワークをベースとして新規開発して プロジェクトを進めるほうが最終的に費用対効果を見込め、仕様の柔軟性の高さからお客様が 進めていきたいビジネスに即応するシステムを実現しやすいと当社では考えます。 お客様のIT投資のコストパフォーマンスも考慮に入れた開発を実現します。
アスペクト指向による開発
Seasar2やSpring2などのAOP(アスペクト指向プログラミング)によるWEBシステム設計・開発も行います。 各クラスに横断したログ出力やトランザクション管理の機能を主に用いるだけでなく、 WEBシステムのさまざまなフレームワークが構築されており、開発の軽量化をある程度期待されています。
  ただ、AOP自体が比較的新しい開発の試みであるため、当社では 開発プロジェクトの目的や規模などによりAOPを使った開発に適しているかどうか、また通常のOOP (オブジェクト指向プログラミング)と比べてどのようなメリットがあり、どの程度メリットが あるかを検証した上でお客様にご説明し、AOPによる開発をお勧めします。
Struts+DB接続モジュールによる開発
StrutsはMVCモデルを実現している代表的なJ2EEフレームワークで、2011年現在も根強い人気で広く支持されています。 当社では主にプレゼンテーション層としてStrutsを使い、データアクセス層ではHibernateなどのORM (Object Relational Mapper)の組み合わせ、またはJDBCを直接使った当社独自のモジュールにより お客様のWEBシステムを設計・開発します。