IT用語帳
PD-S開発・運用の方法論 · 開発プラットフォーム・開発ツール

SonarQube

SonarQube

そなーきゅーぶ

ソースコードを静的に解析して、バグの可能性がある箇所、脆弱性、コードの重複、複雑さなどを検出し、コードの品質を継続的に管理するためのツール。CI/CDのパイプラインに組み込み、品質の基準(品質ゲート)を満たさない変更の取込みを止めるのに使う。オープンソース版と商用版がある。

共有:

Past Exams

過去問での出題

過去問で 1 回出題(情報処理安全確保支援士試験 1)

出典: 独立行政法人情報処理推進機構(IPA)の過去問題。問題文は IPA のサイトの PDF で確認できます。「選択肢」は、問題文ではなく選択肢に出たものです。用語名で照合しているため、関係の薄い問題が含まれることがあります。

Related

関連キーワードの用語

SCSAST(静的アプリケーションセキュリティテスト)

ソースコードやバイナリを実行せずに解析し、セキュリティ上の脆弱性を検出するテスト手法。開発の早い段階で脆弱性を発見でき、CI/CDパイプラインに組み込んで自動実行される。SQLインジェクションやバッファオーバーフローなどのコーディング上の問題を検出する。

PD-SDevSecOps

DevOps(開発と運用の連携)にセキュリティを統合した開発手法。開発ライフサイクルの全段階でセキュリティを自動化・組み込み、CI/CDパイプラインにSAST、DAST、SCAなどのセキュリティテストを統合して、迅速かつ安全なリリースを実現する。

PD-Sコンテナレジストリ

コンテナイメージを保管し、バージョンを示すタグを付けて管理・配布するためのサービス。開発者がビルドしたイメージを登録(プッシュ)し、実行環境が取得(プル)してコンテナを起動する。公開のDocker Hubのほか、組織内専用のプライベートレジストリがあり、登録時の脆弱性スキャンやイメージへの署名で安全性を確保する。

PD-Sメトリクス計測

ソースコードの規模(行数)、複雑さ(サイクロマティック複雑度)、モジュール間の結合度などの指標を測定し、品質の評価や問題のある箇所の特定に使うこと。基準値を超えたモジュールを重点的にレビューやテストの対象にする。静的解析ツールで自動的に測ることが多い。

PD-S動的テスト

プログラムを実際に実行して、出力や振る舞いを期待した結果と比べて確かめるテスト。プログラムを実行せずにソースコードを調べるレビューや静的解析と対比され、実行して初めて分かる処理の誤りや性能の問題を見つけられる。

PD-Sテスト自動化

テストの実行、結果の判定、報告をツールやスクリプトで自動的に行うこと。何度も繰り返す回帰テストを短時間で正確に実施でき、継続的インテグレーションのパイプラインに組み込んで変更のたびにテストを流す。自動化したテストの保守にも手間がかかるので、効果の大きいテストから自動化する。