システムの「見える化」とはこういう事か

[ENdoSnipe]S2JSFのパッケージ図を自動生成

こちらで紹介しているように、
ENdoSnipe Ver. 4.0ではクラス図に自動パッケージ化処理を追加しています。


で、これを使うと結構楽しめます。
例えば、S2JSF Exampleだとこんな感じです。


org.seasar.frameworkパッケージを中心にして
s2jsfteedas2daoやextensionパッケージが並んでいます。
せっかくなので、extensionパッケージを分離したパターンも作ってみました。


処理時間が長いクラスから順に、赤、黄と表示されるので、
パッケージの中で(性能的に)重要なクラスが目立ちます。

こんな並べ方もありですね。


綺麗な五角形になりました。


ちなみに、S2Containerの中はこう見えます。

まあ、既知のフレームワークだから、という面もあるとは思いますが、
イメージだと、システムの構成を捉えやすい気がしますね。
今後、いろいろと知らないフレームワークも試してみたいところです。

[ENdoSnipe]見えてきたENdoSnipeの使いどころ。

お久しぶりの更新です。
(毎回これですね。すみません。)


前回はVer. 3.4の製品発表についてでした。
現在、5月末に控えたVer. 4.0のリリースを控えて機能Fixを急いでいます。


あれから1年ほど経ちました。
様々な方に使って頂きましたが、
その中で、「ENdoSnipeとは何ぞや?」という所が、
自分の中でも明確になってきた感じがします。


その一つが結合試験工程での性能障害検出ツールというもの。


プロファイラはオーバヘッドが高すぎるため、
結合試験工程では有効な性能測定方法が無く、困っている方も多いでしょう。
プロファイリングを行うにはマシンの占有が必要なため、
スケジュールが押してくると深夜や週末に行う方も多いはず。


オーバヘッドが低いENdoSnipeは、他の開発者の機能試験を妨げませんし、
まさにその機能試験から、性能問題を検出する事ができます。

実際、性能障害の解析にENdoSnipeを適用したら、
同じマシンで開発が行われていた別機能の問題を見つけた、という事がありました。
障害解析に必要な情報も含まれているので、非常に効率的です。


手前味噌ですが、ずいぶんと使えるツールになってきています。
試してみたい方は、ぜひこちらからお問い合わせを。

[ENdoSnipe]製品発表しました。

お久しぶりの更新です。


いろんなところで報じられてますが、先週金曜日、ENdoSnipe Ver. 3.4をリリースしました。


エスエムジー、Javaシステムの診断ツール「ENdoSnipe」の新版をリリース
トラブル解決のノウハウを盛り込んだJavaシステム診断/改善ソフトを発売
Javaシステムのパフォーマンス診断ツールを提供開始
3つの機能でJavaトラブルを“見える化”するツール


この製品の目玉はもちろん、「3つの見える化」にあるんですが、中でも特筆なのがPerformanceDoctorです。
その名の通り、システムの性能問題を見つけ、診断して原因を教えてくれます。
すでに実際のトラブルシュートで活用してるんですよ。


SMGのサイトでも当日の模様を公開しています。
「ENdoSnipe」一般販売開始
ENdoSnipe製品発表会


当日の資料はこちらからダウンロードできます。
ぜひ、御覧ください。
ENdoSnipe Ver3.4の紹介


それにしても、これまで長かった。

合宿中ですよ

というわけで、せろ部屋にも書いている通り、笹川の土善旅館で合宿中です。
これで土善旅館も3回目ですが、快適ですねぇ。

こっちは、予定通り、StatsVisionにクラスの位置記憶機能を追加しました。
出来て見ると、想像以上に快適です。
(今までが如何に使い勝手が悪かったかという証明でもあり。)



Oracle用のサイトとPostgreSQL用のサイトが一緒に表示できるのも面白いところ。
簡単なパフォーマンス比較もできてしまいますね。


明日は最後の1日。もう1品ぐらいは何か出来ないか思案中です。

合宿するぞー!

というわけで、S2Javelinをもっと便利に使ってもらうべく、開発合宿をする事にしました。
参加は同僚数名です(^^;


自分はStatsVisionのクラス位置の記録等をやってみるつもり。
・・・ですが、当日の気分次第で変わってしまうのも合宿の醍醐味であります。
(JDBCJavelinも昨年の合宿最終日の自分の思いつきがスタートだったし。)


というわけで、どんな結果がでるか。
乞うご期待!

JDBCJavelinをお披露目しました

気がつくと日記の書き方を忘れてしまいそうな感じなのが情けないところですが、しっかり生きてます。


というわけで、昨日のSeasar Conference 2007 Autumunで、S2JavelinArrowVisionの新バージョンとJDBCJavelinについて、発表させて頂きました。


今回の目玉は何といっても、JDBCJavelinです。
S2に刺さるからS2JavelinJDBCに刺さるからJDBCJavelinというわけで、こんな感じで、StatsVisionの画面で、LogicやDaoなどのコンポーネントに並んで、データベースを表示します。
もちろん、メソッドの部分に表示するのは、データベースに対して発行したSQLです。

トラブルシューティングのリクエストが多いのがパフォーマンスチューニングなんですが、その原因、DB周りが非常に多いですね。
だから、少しでも、DBが苦手なエンジニアにも、解析してもらえるように作りました。


最近はO/Rマッパーが大活躍して、DBに裏でアクセスしたり、SQLを自動生成したりしますが、そこまで見えるのも面白いところです。
上の図でも、S2Daoメタデータにアクセスしているクエリも出てますね。


だから、S2JDBCとも相性ばっちりなはずです。
もちろん、ArrowVisionでシーケンス図にもなります。

詳細ビューにはSQLや実行計画まででます。



JDBCJavelinの入手方法など、詳しくは、Seasar Conference 2007 Autumunの資料を参照ください。
多くの方に使って頂きたいので、よろしくお願いします。

ArrowVisionの使い方

同僚のid:KenichiroMurataArrowVisionの紹介をしてくれました。
今回の目玉の更新ポイントがわかります。

ArrowVisionがVersion3.1にバージョンアップ!


参考にして下さい。
(ありがとう、むらけん。)

で、大きな改善は紹介されちゃったので、小さな変化を書いておきます(^^;

    1. メッセージが重なった時の表示が自然になった。
    2. シーケンス図でノードを移動した時にキャンバスが自動で拡大する。
    3. シーケンス図でメッセージを選択すると、ツールチップテキストにDurationが出る。


と、細かい改善もいくつかやっておりますので、いろいろと探してみて下さい。