メトリクス計測
Metrics Measurement
めとりくすけいそく
ソースコードの規模(行数)、複雑さ(サイクロマティック複雑度)、モジュール間の結合度などの指標を測定し、品質の評価や問題のある箇所の特定に使うこと。基準値を超えたモジュールを重点的にレビューやテストの対象にする。静的解析ツールで自動的に測ることが多い。
Related
他の資格での定義
Past Exams
過去問での出題
過去問で 1 回出題(システムアーキテクト試験 1)
出典: 独立行政法人情報処理推進機構(IPA)の過去問題。問題文は IPA のサイトの PDF で確認できます。「選択肢」は、問題文ではなく選択肢に出たものです。用語名で照合しているため、関係の薄い問題が含まれることがあります。
Related
関連キーワードの用語
プログラムを実際に実行して、出力や振る舞いを期待した結果と比べて確かめるテスト。プログラムを実行せずにソースコードを調べるレビューや静的解析と対比され、実行して初めて分かる処理の誤りや性能の問題を見つけられる。
ソースコードを静的に解析して、バグの可能性がある箇所、脆弱性、コードの重複、複雑さなどを検出し、コードの品質を継続的に管理するためのツール。CI/CDのパイプラインに組み込み、品質の基準(品質ゲート)を満たさない変更の取込みを止めるのに使う。オープンソース版と商用版がある。
マルウェアの疑いがある検体を、サンドボックスなどの外部から隔離した環境で実際に動作させ、ファイルやレジストリの変更、通信先などの振る舞いを観察して性質を調べる解析。プログラムを実行せずにコードやハッシュ値、文字列を調べる静的解析と組み合わせて使う。
ソースコードがコーディング標準や記述のルールに従っているかを自動的に検査するツール。規約違反や誤りを招きやすい記述を指摘するため、レビューの負担を減らし、品質のばらつきを抑えられる。
ソースコードやバイナリを実行せずに解析し、セキュリティ上の脆弱性を検出するテスト手法。開発の早い段階で脆弱性を発見でき、CI/CDパイプラインに組み込んで自動実行される。SQLインジェクションやバッファオーバーフローなどのコーディング上の問題を検出する。
プログラムを実行せずに、ソースコードやバイナリを解析して脆弱性を検出する検査手法。SQLインジェクションやバッファオーバーフローにつながる危険な関数の使用や、入力値が無害化されずに出力に渡る経路などを見つける。開発の早い段階から自動で実行できる一方、誤検知が多く、実行時の設定や環境に起因する問題は見つけにくい。
