システム・インテグレータのエスエムジーは2008年6月27日,Javaで開発したアプリケーションのパフォーマンスや品質の問題点を指摘する,システム診断/改善ソフト「ENdoSnipe 3.4」(エンドスナイプ)を出荷開始した。

 ENdoSnipeは,同社がJavaトラブルシューティング・サービス(JaTS)で培った多用なノウハウを盛り込んで開発した製品。これまでJaTSの顧客向けに利用してきたが,一般に販売するのは今回が初めて。そのため新製品ながら,バージョンは3.4となっている。

 同社の山崎政憲氏(JaTSチームリーダー)は「Java開発の現場では現在,短納期/コスト削減のプレッシャでシステムの品質が犠牲になる一方で,データベース・チューニングなどの高いスキルを持つ開発者が不足している。そのため的確なトラブル・シューティングができないといった問題がある」と言う。

 そこで同社は,システムの構造や動作を把握し,効率よく問題を解析・解決するためのツールとして,ENdoSnipeを開発し,JaTSの現場で活用してきた。その実績と有用性を踏まえて,今回の一般販売に踏み切ったという。「システムを発注/運用するユーザーや管理者だけでなく,SIerなどの開発会社でも,ENdoSnipeを活用して,Java開発のレベルアップに役立てて欲しい」(山崎氏)と語る。

 ENdoSnipeは,すでに稼働しているJavaアプリケーションに組み込んで利用する。BCI(Byte Code Instrumentation)技術を採用しており,Javaプログラムのロード時に,実行情報(ログ)取得の処理を追加する仕組み。したがって,既存のソースコードを修正したり,プログラムを再コンパイルしたりする必要はない。

 大きく三つの機能がある。性能の問題点や危険性を一覧表示する「PerformanceDoctor」,稼働中のシステムのクラス図を動的に生成し,ボトルネック個所を知らせる「BottleneckEye」,メソッドの実行時間や実行スレッドを識別できるシーケンス図を生成する「ArrowVision」。これらによって,実稼働のアプリケーションに潜む問題点を“見える化”し,開発者の問題解決を支援する。デバッガやプロファイルでは難しい「運用段階の問題発見」ができるのが特徴。

 今回の一般販売にあたり,ENdoSnipeをバージョンアップし,機能を強化した。トラブル解決の現場で要望の多かった(1)メモリーリーク検出機能,(2)ロック検出機能を追加したほか,MySQL,SQL Serverといったデータベースに新たに対応した。

 価格は,69万円(サーバー1台のライセンス,年間保守料15%込み)。1ライセンスにつき2名まで,ENdoSnipeの初級トレーニングを無償で受けられる。