ソフトウェア保守(是正保守・予防保守・適応保守・完全化保守)(software maintenance)

分類
テクノロジ系 システム開発技術
出る試験
基本情報応用情報
重要度
★★★☆☆

運用に入ったソフトウェアに手を入れる作業。欠陥を直す是正・予防と、良くする適応・完全化の4つに分かれる。

もう少し詳しい説明

ソフトウェアは、作って引き渡したところで終わりません。使われているあいだ、ずっと手を入れ続けることになります。

この、運用に入ったあとの作業がソフトウェア保守です。開発にかかる費用より、保守にかかる費用のほうが大きくなることも珍しくありません。

保守は、4つの型に分けられます。

欠陥を直す是正:起きた障害を直す予防:起きる前に直す良くする適応:環境の変化に合わせる完全化:性能や保守性を上げる
上の段はどちらも欠陥が相手で、違うのは時機だけです。下の段はどちらも手を入れて良くする側で、違うのはきっかけです。同じ段のものを入れ替える形で出題されます。

見分け方は2つの問いだけです。

  1. 相手は欠陥か、それとも良くすることか
  2. 障害が起きてからか、起きる前か

是正保守

すでに起きた障害に対して、原因を取り除く保守です。英語では corrective maintenance といいます。

いちばん想像しやすい保守がこれです。「保守」と聞いて浮かぶのは、ふつうこちらになります。

急いで業務を戻すだけの作業は、緊急保守と呼び分けられます。 その場をしのぐための手当てで、原因を取り除くのは後回しになります。応急処置をしたあとに、あらためて是正保守を行う形です。

予防保守

まだ障害になっていない欠陥を見つけて、直しておく保守です。

是正保守との違いは、時機だけです。 相手はどちらも欠陥で、片方は起きたあと、もう片方は起きる前です。

試験でいちばん入れ替えられるのが、この2つです。 選択肢には「障害が発生する前に」「潜在的な障害を顕在化する前に」といった言い方が出てくるので、そこを見ます。

適応保守

環境が変わったとき、そのまま使い続けられるようにする保守です。

ソフトウェア自身に欠陥があるわけではありません。 周りが動いたので、合わせて直しています。

完全化保守

性能や、保守のしやすさを上げるための保守です。

利用者から見て、できることが増えるわけではない場合もあります。 中の作りを良くする作業も、こちらに入ります。

4つの見分け方

4つとも「◯◯保守」という同じ形の名前です。名前だけを覚えていると、説明文を入れ替えた選択肢を出されたときに見分けられません。 試験では「是正保守の説明はどれか」と聞いて、適応保守の説明を並べる形がよく出ます。どの問いで分かれるのかを押さえてください。

型相手時機・きっかけ
是正保守欠陥障害が起きてから
予防保守欠陥障害が起きる前
適応保守環境周りが変わったとき
完全化保守性能・保守性良くしたいとき

上の2つは「欠陥が相手」で、下の2つは「欠陥が相手ではない」。 ここを先に分けると、残りは1つの問いで決まります。

保守の型の呼び名は、JIS X 0161(ソフトウェア技術—ソフトウェアライフサイクルプロセス—保守)に定められています。

試験ではこう出る

科目A(旧・午前)では、説明文を読んでどの保守かを選ばせる形が出ます。

出やすい言い回しは、次のとおりです。

選択肢の言い回し答え
発生した障害の原因を取り除く是正保守
潜在する障害を、顕在化する前に修正する予防保守
変更された環境で使用できるように修正する適応保守
性能や保守性を向上させる完全化保守

「顕在化する前に」が出てきたら予防保守と結び付けておくと速く解けます。

応用情報では、保守の型そのものより保守にかかる費用や、保守しやすい作りかどうかを問う形で出ます。「保守性を上げるために設計の段階でできること」という聞き方になります。

関連する用語

変更管理
本番環境への変更を、記録して承認してから入れるしくみ
問題管理
障害の原因を突き止めて、再発を防ぐ側の活動
インシデント管理
まず業務を戻すことを優先する側の活動
ITIL
運用の進め方をまとめた知識体系
リバースエンジニアリング
できあがったものから設計を読み取る。古い資料が無いときの保守で使う

ミニクイズ

ソフトウェア保守において、運用中にはまだ障害として現れていない潜在的な欠陥を見つけ出し、障害になる前に修正する保守はどれか。

正解は 2番:予防保守

予防保守は、まだ障害になっていない欠陥を先に見つけて直す保守です。「起きる前」という点が決め手になります。是正保守は、すでに起きた障害に対して原因を取り除く保守で、向きが逆です。適応保守は、OSの入れ替えや法令の変更など、環境が変わったときにそのまま使い続けられるようにする保守です。完全化保守は、性能や保守のしやすさを上げるための保守で、欠陥が相手ではありません。4つとも運用に入ったあとの作業なので、「何が相手か」と「起きる前か後か」の2つで見分けます。

間違えた用語の復習リストを見る →

この分野をまとめて解く → システム開発とユーザーインタフェースのミニテスト(全40問)

最終更新:2026-10-20