ソースコードレビュー支援ツール「Validate」ご紹介セミナー録画およびQ&A
スライド9での説明に対する補足
「現状、メーカーの正式動作確認は同じバージョンのみ」について
「メーカーの計画では、今後は過去のバージョンの QAC についても動作確認の範囲を広げる予定」と申しましたが、既にリリース済みのバージョンの Validate に対して、追加で動作確認を行うという意味ではありません。従って Validate 25.3 に対して QAC 2025.2 や 2024.4 などとの動作確認を行うことはありません。
将来的には Validate をリリースする際に、動作確認を行う対象を同じバージョンの QAC だけでなく、過去バージョンの QAC との組み合わせでも行う予定であるという意味です。その場合でも動作確認を行う範囲は、最大で前年にリリースされたQACまで(ただし、2025.2以前は対象外)となる見込みです。
現在、メーカーは1年に4回リリースを行っており、QAC 2025.1~2025.4、Validate 25.1~25.4 のようにバージョン番号を付けています。今後も同様にリリースすると仮定しますと、例えば 2030年に Validate 30.1 をリリースする際に動作確認を行う QAC は、最大でもその前年2029年にリリースしたバージョン以降、つまり QAC 2029.1~2030.1 になります。
「簡易的な動作確認 QAC 2024.1 以降」について
「弊社 東陽テクニカで QAC 2024.1 以降のバージョンで Validate 25.3 との組み合わせで簡単な動作確認を行っており、これまでのところ問題は報告されていない」と申しましたが、その後 QAC 2024.4 の解析結果を Validate 25.3 にアップロードすると、ソースコード内の日本語のコメントが Validate では文字化けして表示されるという報告がありました。
同じ条件で QAC 2025.3 の解析結果を Validate 25.3 にアップロードしても文字化けは発生しないことが確認されました。メーカーが正式に動作確認しているバージョンでお使いになることを強くお勧めします。
↓↓↓ 以下は、セミナー後の質疑応答をまとめたものです ↓↓↓
2026年1月20日開催回
QACライセンスとValidateライセンスはセットで同一ユーザのみ登録可能ですか?
デスクトップライセンスの場合、QACを使用するユーザとValidateを使用するユーザは、同一である必要があります。
一方、Validate Onlyライセンスを組み合わせて使用する場合は、QACを使用するユーザとは別のユーザを割り当てることが可能です。
Validateにおいて解析結果を他のユーザと共有する方法はありますか。手動、自動の方法あれば教えてください。
デモでご説明したとおり、WebブラウザからValidateサーバーにアクセスすることで解析結果を確認できます。
他のユーザも同様にアクセスすることで、同一の解析結果を閲覧することが可能です。
バージョン25.3の次は、26.3ですか? リリース後3年経過した後も使用可能ですか?
QACおよびValidateともに年4回のリリースを基本としています。
そのため、バージョン25.3の次は25.4となり、さらにその次は26.1になる見込みです。
Validate 25.3 のサポートは2027年1-3月に終了しますが、サポート終了後も継続して使用することは可能です。
Validateにおいて解析結果を他のユーザと共有したくない場合はどのように設定しますか。
(自分のみ閲覧可能にしたい場合や、特定のユーザのみに開示共有したい場合)
[役割] タブにて、ユーザごとに各プロジェクトに対する参照可/不可を設定することができます。
2025年12月24日開催回
Validateサーバーにアップロードした解析結果に対してレビュー結果を入力するときに必要なライセンスは、どのライセンスになりますでしょうか。
デスクトップライセンス、またはValidate onlyライセンスが必要です。
ソースコード情報について、ソースコードと解析結果が紐づいて管理されるとのことですが、解析対象のコードがすべてValidateサーバに保存されるのでしょうか。
ビルド①、ビルド②、とバージョンが上がった場合は差分のみ保存されるのでしょうか(Validateサーバに必要な容量について気にしています)
解析対象のコードはすべてValidateサーバに保存されます。
ただし、コードはそのままの形式で保存されるわけではなく、バイナリ形式に変換された上で保存されます。
ビルド間の差分の扱いについては、メーカーから詳細は公開されておりません。
Validateサーバに必要な容量は、コードのサイズや検出された警告メッセージの数によって変わります。
そのため、お客様の設定内容によって必要な容量が異なり、あらかじめ必要容量を明確にお伝えすることは難しい状況です。
ソースコード管理に付随して
Validateではストリームという名称でブランチ管理ができるとのことですが、P4との連携で管理することは可能でしょうか。
ビルド①、ビルド② もP4でサブミットした単位で連動すると扱いやすいのですが、そのような機能はあるでしょうか(今後対応されるのでしょうか)
ブランチを P4 と連携して管理することはできません。
ただし、ビルドライセンスをご利用の場合は、P4 のトリガ機能や Jenkins などの CI ツールを用いてサブミットと合わせてQAC の解析を実行し、その結果を Validate にアップロードする仕組みを構築することは可能です。
警告一覧を印刷(PDF)やCSVで出力したものを見る担当者、もしくは管理者は、ライセンスが必要でしょうか。
ライセンス使用許諾上、PDFやCSVで出力したものであっても、結果を見るにはライセンスが必要です。
コンプライアンスレポートはファイル出力できるのでしょうか。
PDF形式で出力可能です。
前のビルドに存在した指摘はExistingとなるということは、QAC側でベースライセンスを設定せずとも、Newの部分だけに着目すれば前のバージョンとのベースライン解析になるということですか。
そのとおりです。
Validate は、過去から現在までのプロジェクトの解析結果を保持しているため、特別な設定を行わなくても、新たに検出された警告メッセージに着目することができます。
2025年12月16日開催回
従来の東陽ユーティリティで解析結果をcsvに出力する機能を使って、修正が必要な指摘事項をピックアップして、元コードの発生個所(行数)を確認していました。Validateではなぜ行数情報を出力できなくなったのでしょうか?
不要と判断された理由、ツールのコンセプト、考え方を伺いたいです。
メーカーとしては、警告メッセージについては QAC の GUI や Validate 機能で確認していただく想定としております。
これまで、海外では不正利用が多く発生したことを受け、警告メッセージを CSV で出力する diaglist 機能は約10年前に廃止されました。
一方、日本においては、エビデンス取得を目的とした限定的な利用に限り、例外的に継続が認められてきました。
しかしながら、この運用が約10年にわたって続いてきたことから、今回メーカーの判断により、日本においても diaglist 機能を終了することとなりました。
Print/CSVの出力機能について
コマンドラインで操作することは可能でしょうか?
不可の場合、Jenkins等で自動化を検討している場合に自動で出力する術はあるでしょうか。
コマンドからの出力には対応しておりません。
そのため、Jenkinsなどを用いて自動的に出力することもできません。
検出されたメッセージに対するステータスの伝搬について、
Aというメインのプロジェクトに対して並行開発で、A1というプロジェクトを作成していて、それぞれメッセージに対してステータスを残しています。後にA1のプロジェクトのコードをAにマージしたとき、A1のプロジェクトで記録していたメッセージのステータスは、Aのプロジェクトの解析結果に反映されますか?
AとA1の両方において、同じ場所に検出された同じ警告メッセージが存在する場合、片方のステータスを変更すると、他方にも伝播されます。
後にA1のプロジェクトのコードをAにマージする/しないに関わらず、ステータスは伝播されます。
レビュー情報の伝搬は、新バージョンで入力した内容が、旧バージョンの情報に展開される伝搬も行われる認識であっていますでしょうか?
はい、旧バージョンにも伝播されます。
ビルドライセンスとは何でしょうか?
営業の方からは、既存のフローティングライセンスがユーザーロック(デスクトップ、集中解析、フローティング、ノードロック)という名称になると聞いていました。
新しいライセンスでは、大きく分けてデスクトップライセンス、ビルドライセンス、Validate only ライセンスの3つに分けられます。主に次の機能を使用することができます。
- デスクトップライセンス
- 解析機能、警告メッセージをQACのGUIに表示する(メッセージブラウザ)機能、Validateの機能
- ビルドライセンス
- 解析機能、Validateへのアップロード機能
- Validate only ライセンス
- Validateの機能
ビルドライセンスとValidate onlyライセンスは、単独では使用することができず、ビルドライセンス+Validate onlyライセンスの形か、デスクトップライセンスと組み合わせて使用する必要があります。
旧フローティングライセンスをお使いの場合、デスクトップライセンスに移行する、あるいはビルドライセンス+Validate onlyライセンスに移行するプランがメーカーから示されており、近日中にご案内をさせていただく予定です。
現在 QAVerifyを使用しております。今後はQAVerifyの使用をやめ、Validateへ移行しなければならないと聞いています。
■質問6-1:データの引継ぎはできるものなのでしょうか。
それとも、引継ぎは現実的でなく、QAVerifyのデータとValidateのデータは別個のものとして扱う計画をしていた方がよいでしょうか。
■質問6-2:データの引継ぎができない場合、QAVerifyの記録の確認だけはできるようにしておきたいのですが、そういったビューアのようなもののご提供予定はございますでしょうか。
■質問6-1に対する回答
現状は引継ぎはできませんが、メーカーによると2026年中にデータの引継ぎができるようにする計画です。
データの引継ぎができるようになった後に QAVerify のメンテナンスを終了する予定です。
データの引継ぎができるようにならない限り QAVerify のメンテナンスを終了しないことをメーカーから確約を得ております。
なお、QAVerify では警告メッセージが出力されていない箇所にもレビュー情報を付与することができます。
Validateは警告メッセージが出力された箇所にのみレビュー情報を付与することができますので、データの引継ぎができるようになったとしても、警告メッセージが出力されていない箇所のレビュー情報はValidateでは失われてしまいますのでご注意ください。
■質問6-2に対する回答
現状、QAVerify のライセンスをお持ちの方は、QAVerify と Validate の両方のライセンスを使用する権利があります。
QAVerify サーバーと Validate サーバーの両方を同時に起動することはできませんが、切り替えて使用することは可能ですので、QAVerify サーバーを起動することで QAVerify の記録の確認は可能です。
QAVerify のメンテナンスが終了した場合、少なくとも数年間は QAVerify と Validate の両方のライセンスを発行するようメーカーに要求いたします。
PDF、CSVに出力されるファイルの形式はフルパス等に変更することはできますでしょうか?
可能です。現状はコマンドを使用する必要があります。
コマンドを使用する場合の手順として、資料のスライド17に 1-5 のコマンドを記載しております。
GUI を使用する場合もスライド17の 1-4 のコマンドは実行可能です。
ファイルパスの形式を変更するには、3 の qacli validate connect コマンドの後に次のコマンドを実行します。
qacli validate config -P <QACプロジェクト> --path-format ABSOLUTE
指定できるフォーマットは以下です。
ABSOLUTE : 絶対パス
RELATIVE : プロジェクトルートからの相対パス
ROOT : SOURCE_ROOT からのパス
コマンドを使用する場合は、その後 4と5のコマンドを実行します。
GUI の場合は、4のコマンドを実行した後、GUI で解析およびValidateへのアップロードを実行します。
なお、Validateプロジェクトに既に解析結果がアップロードされた状態で、ファイルパスの形式を変更しないようにご注意ください。
変更すると、警告メッセージの新規、既存の判断ができなくなる恐れがあります。
Validateサーバで管理している情報をバックアップおよび復帰するための方法はありますでしょうか?
出力されるCSV、PDFのファイルは、ソースファイルごとに分けて出力することはできますでしょうか?
ソースファイルごとに分けて出力することはできません。
デスクトップライセンスを利用しています。先ほどのデモでは解析結果を手動でValidateにアップロードしましたが、これをQACでの解析が完了したら結果を自動でValidateにアップロードすることは可能でしょうか。
自動でValidateにアップロードすることはできません。
デスクトップライセンスは、手動で解析結果をValidateにアップロードする必要があります。
スライド23「ブランチ(ストリーム)」について、GitやSVNの操作と自動的に連動するわけではなく、単なるフォルダのようなものという理解で間違いないでしょうか。
つまり、GitやSVN上のブランチの具合にあわせて、Validate上のブランチ(ストリーム)の操作を都度しなければならないと想像していますが、間違いないでしょうか。
GitやSVNの操作と自動的には連動しません。
編集者が2人以上いた場合は「新たに更新されています」というようなメッセージが出力されるのでしょうか?
レビュー情報は、編集した後、保存ボタンを押した際に更新されます。
複数の方が、同じ警告メッセージに対するレビュー情報を更新した場合のことと思われますが、後に更新した方の情報で上書きされます。
Validateサーバ上で新規プロジェクトの作成をしないようにというご説明を伺いましたが、CIビルドライセンスを使用している場合に、QAC GUI上からValidateサーバに新規プロジェクトを作成可能でしょうか?
作成は可能ですが、ビルドライセンスをお使いの場合にはコマンドでValidateプロジェクトを作成することをお勧めします。
既存のプロジェクト(Validate)と別に(ほぼ)同じソースコードの新規プロジェクト(Validate)を起こした場合、情報の伝搬をさせることはできますか?(ブランチを使用せずに伝搬できるか)
validate xsync というコマンドを使用することで可能です。
詳しくは以下のページをご覧ください。
https://help.klocwork.com/current/ja-jp/reference/validatexsync.htm
■ お問い合わせ先 ■
追加でのご質問やご不明な点がございましたら、以下までお問合せください。
株式会社東陽テクニカ ソフトウェア・ソリューション部
phone 03-3245-1248(直通) mail ss_support@toyo.co.jp