ノーツコンソーシアムが提供する CodeChecker と何が違うのですか?

CodeChecker はノーツコンソーシアムの会員に提供されるノーツのバージョン間の非互換を検出するツールです。

CodeChecker も Teamstudio Upgrade Filters も Teamstudio Analyzer という分析ツールが必要なことはまったく同じです。

Upgrade Filters は Analyzer の監査機能を使用して非互換を検出します。この監査機能はフィルターデータベース内に記述した設計検知のための条件を定義しておき、監査機能によってこのフィルタと設計分析を付き合わせして、条件が合致したものを監査レポートデータベースに出力します。フィルタに定義するのは、たとえば「フォーム」設計の「Querysave」イベントに「doc.Save」の記述があるものといった感じで対象の設計要素、プロパティを選択して条件を定義することが可能です。

一方、CodeChecker は Analyzer で出力された分析結果データベースに「全文索引」を作成し、「doc.Save」を探すといった言葉での検索になるため、不必要な対象の設計にまで検索がされるというデメリットがあります。

CodeChecker の良い点は、IBM がプロジェクトで開発したデータベースを実際に動作させてみて、前バージョンと動作や表示が異なるものをひとつひとつ検証しながら非互換を拾い出しています。従って、とても信頼できる情報と受け取ることが出来ます。

表の表示位置が数ミリ崩れても非互換と認識したり、どこにもで出てくる一般的な関数が非互換の引き金になるとしている定義もあり、結果レポートの量は膨大にな利ます。実際には自分のプロジェクトではまったく関係なかったというフィードバックも往々にしてあることから、昨今多くのプロジェクトでは CodeChecker の利用を敬遠される企業様もいらっしゃいます。これはデータベースの数が多ければ多いほど顕著な傾向が出ています。

Upgrade Filters の非互換は、そういったノイズをすべて切り捨てた内容を採用しています。Domino Designer での新機能によるレグレションやテックノートからの情報をベースにしていますので、CodeChecker と比べると検知する条件の量は少なくなっており、必要かつ正確な適量の非互換レポートを入手できることが特長です。