応用情報技術者試験 令和4年度 春期 午前 問48
問題は発生していないが、プログラムの仕様書と現状のソースコードとの不整合を解消するために、リバースエンジニアリングの手法を使って仕様書を作成し直す。これはソフトウェア保守のどの分類に該当するか。
選択肢を押すと答え合わせができます。
正解と解説を見る
【正解】ア
完全化保守は、ソフトウェアの性能、使いやすさ、保守性などを改善するために行う保守です。この事例では、稼働中のプログラムに障害は発生しておらず、ソースコードを解析するリバースエンジニアリングによって、実態に合う仕様書を作り直しています。仕様書とコードの対応を明確にすれば、今後の内容理解や変更、テストが容易になり、保守性が向上します。したがって、完全化保守に該当します。
イの是正保守は誤りです。これは、運用開始後に発見された障害や仕様上の誤りなど、顕在化した不具合を修正する保守です。この事例では、問題が発生しているわけではないため、是正保守には該当しません。
ウの適応保守は誤りです。これは、OSやハードウェアの更新、法令改正、外部システムのインタフェース変更など、利用環境の変化にソフトウェアを適応させる保守です。ここでは、外部環境の変化に対応しているのではありません。
エの予防保守は誤りです。これは、将来障害を引き起こす可能性がある潜在的な不具合を、障害が実際に発生する前に検出して修正する保守です。今回の目的は潜在的な故障原因の除去ではなく、文書を整備して保守性を高めることです。
【ポイント】 リバースエンジニアリングは、既存のプログラムを解析し、設計情報や仕様を明らかにする手法です。 「障害の修正」「環境変化への対応」「品質・保守性の向上」「潜在障害の予防」のどれが目的かで分類します。
出典:令和4年度 春期 応用情報技術者試験 午前 問48
※ 解説は SkillStack 編集部が作成したものです。Web 表示のため、図表の配置や表記を一部改めています。
この回の80問を、アプリで通しで解く
- 本番と同じ問題数・制限時間で通し演習(模試モード)
- 間違えた問題は自動で「復習すべき問題」に回る
- 解説で分からない点はAIに質問できる