【ネットワークスペシャリスト試験 令和6年度 春期 午前Ⅱ 問25】

ネットワークスペシャリスト試験 令和6年度 春期 午前Ⅱ 問25

【出典:ネットワークスペシャリスト試験 令和6年度 春期 午前Ⅱ(一部、加工あり)】

 バグトラッキングシステムの説明として、最も適切なものはどれか。

ア ソースコードを画面に表示しながら、プログラムの実行及び中断、変数の値の表示などの、バグの発見を支援する機能を提供する。
イ テストケース及びテストプログラムの開発を支援して、バグの発見を容易にする。
ウ バグの数とソースプログラムの諸元から、品質管理のためのメトリクスを算定する。
エ 発見されたバグの内容、バグが発生したソフトウェアのバージョンなどを記録し、その修正計画や修正履歴を管理する。

バグトラッキングシステム(BTS)とは

 バグトラッキングシステム(BTS)は、ソフトウェア開発や運用において発見されたバグ(不具合や欠陥)を一元的に記録・管理し、修正の進捗や履歴を可視化・共有するためのシステムです。
 主に複数人のチームで開発や保守を行う際に利用され、バグの発見から修正、クローズまでの一連の流れを効率的に管理できます。


主な機能と特徴

  • バグの登録・記録
    発見したバグの内容、発生状況、再現手順、影響範囲などを詳細に記録します。
    バグごとに「チケット」や「タスク」として管理されます。
  • 担当者の割り当て・通知
    バグごとに担当者を設定し、修正作業の責任を明確にします。
    担当者には通知が送られるため、対応漏れを防げます。
  • ステータス管理
    バグの状態(新規、修正中、テスト中、完了など)をステータスとして管理し、現在の進捗を可視化します。
  • 優先度の設定
    バグの重要度や影響度に応じて優先順位を設定し、修正作業の効率化を図ります。
  • 履歴の管理と再発防止
    修正内容や対応履歴を記録し、過去のバグ情報を参照することで、同様の不具合の再発防止や品質向上に役立ちます。
  • 情報共有とコミュニケーション
    チーム全体でバグ情報を共有し、開発者・テスター・管理者間の連携を強化します。

利用の流れ(例)

  1. テストや運用中にバグを発見し、BTSに登録
  2. 管理者が担当者を割り当て、優先度や期日を設定
  3. 担当者が修正作業を行い、進捗や内容をBTSに記録
  4. テスターが修正内容を確認し、問題なければクローズ
  5. 履歴として記録され、将来の品質管理や再発防止に活用

情報処理安全確保支援士・ネットワークスペシャリスト試験との関連

 ソフトウェア開発や運用における品質管理、進捗管理、情報共有の重要性が問われます。
 バグトラッキングシステムは、セキュリティインシデントやネットワーク障害などの「課題管理」にも応用可能であり、システム全体の信頼性や保守性を高めるための必須ツールです。


まとめ

 バグトラッキングシステムは、バグや課題を「見える化」し、品質向上・効率化・再発防止・チーム連携強化を実現するための基盤となるシステムです。
 情報処理安全確保支援士やネットワークスペシャリストを目指すエンジニアにとって、BTSの仕組みや活用方法の理解は不可欠です。

エ 発見されたバグの内容、バグが発生したソフトウェアのバージョンなどを記録し、その修正計画や修正履歴を管理する。

 バグトラッキングシステムの正しい説明です。
 バグトラッキングシステム(例:JIRA、Redmine、Bugzillaなど)は、次のような情報を一元管理できます。

  • バグの概要・詳細
  • 発生条件、再現手順
  • 発見された日時・担当者
  • 修正の進捗状況(新規/対応中/修正済みなど)
  • バージョンや優先度
  • 修正履歴

 チーム開発や品質管理において非常に重要な役割を担います。

ア ソースコードを画面に表示しながら、プログラムの実行及び中断、変数の値の表示などの、バグの発見を支援する機能を提供する。

 これはデバッガ(デバッグツール)の説明です。
 デバッガは、プログラムの実行をステップ実行したり、ブレークポイントを設定して一時停止し、変数の値を確認するなどしてバグの原因を探すツールです。

イ テストケース及びテストプログラムの開発を支援して、バグの発見を容易にする。

 これはテスト支援ツールや単体テストフレームワーク(例:JUnit、pytest)などに該当します。
 これらのツールは、テストを効率化し、バグの発見に役立ちますが、「バグトラッキングシステム」とは役割が異なります。

ウ バグの数とソースプログラムの諸元から、品質管理のためのメトリクスを算定する。

 これはソフトウェアメトリクスツールの説明に近いです。
 ソースコードの行数、モジュール数、バグ件数などをもとに、信頼性や保守性などの指標を出すのが目的です。