Javaアプリケーションの最適化

IDCの調査* によれば、46%以上の企業が、フィールドレベルの欠陥の修正に平均2~5日を費やしていると回答しています。また、67%は、2~10日を費やしていると回答しています。これは、膨大な時間とコストが欠陥の修正に費やされていることを意味するだけでなく、バグの修正に追われることで、ビジネス上重要な新しいソリューションやアプリケーションの実装ができないことによる機会損失のコストについても考慮しなければなりません。

ロイド・G・ウィリアムズ博士とコニー・U・スミス博士は、「ソフトウェアパフォーマンス問題解決の5つのステップ」という文書で、「パフォーマンス劣化によって、ソフトウェア業界では、毎年数百万ドルの売り上げが失われており、生産性の低下と開発コスト/ハードウェアコストの上昇、さらにカスタマーリレーションに打撃を与えています」と記しています。

LKP Groupのレポートより、あるソフトウェア開発組織のCTOによれば、プログラマーのデスクトップで修正するのに1ドルかかるバグは、一旦完全なプログラムに取り込まれてしまうと修正に100ドルがかかり、さらに実際に運用開始してからでは、何千ドルものコストがかかってしまいます。 [1]

また、同じレポートで、ソフトウェア品質に関する専門家であるバリー・ベーム氏は、ソフトウェアの欠陥が発見されずにいることで、開発サイクルのそれぞれの下流フェーズで、どのようにその欠陥を取り除くためのコストが指数関数的に増大していくのかを示す調査を発表しています。 [2]

NIST(Department of Commerce's National Institute of Standards and Technology) によって依頼されたある調査によれば、ソフトウェアのバグやはエラーは、米国経済に対して、年間約595億ドルないしはGDPの0.6%のコストを発生させていると試算されており、有害であるといえます。

経済状況が良い場合でも、この数字は衝撃です。ましてや、今日の経済状況においては、これらのコストを削減する能力は、ビジネスの成否を分けるといっても過言ではありません。

J Optimizer

J Optimizer は、開発者が、開発プロセスの早い段階でコード中に含まれる問題を検出、修正できるJava向けの最適化ツールです。J Optimizerの検査機能を用いれば、コードを静的に分析し、潜在的な競合条件、チェックされない例外などのコード上の問題を特定できます。コード測定機能では、コード構造の品質や完全性を容易にチェックでき、問題となりそうな箇所をすばやく特定することができます。

Java開発者は、J Optimizerを使って、メモリやCPUの使用状況をプロファイリングし、リアルタイムでスレッド情報を表示できます。また、コードのどの部分が実行されているかを特定することも可能です。これらの情報は、いずれも詳細にコードの行レベルまでドリルダウン可能です。コード行が特定できれば、開発者はすぐに問題箇所をJ Optimizer上でで修正し、対応することができます。

J Optimizer製品ビデオを見る

J Optimizerは、BEA WebLogic Application Server、IBM WebSphere、JBoss、Oracle Application Server、Apache Geronimo、Apache Tomcat、Sun GlassFishといった、主要な商用アプリケーションサーバー/オープンソースアプリケーションサーバー上で実行されるJavaアプリケーションのプロファイリングをサポートしています。

ビデオを見る

* Debugging and Business Value Survey IDC April 2008