サービスパック

サービスパック（、略してSP）は、大規模なソフトウェアにもともと含まれていた多数の不具合の修正、またソフトウェアのリリース後に開発された追加機能などを、すでにそのソフトウェアを使用しているユーザにまとめて配布するためにパッケージ状にまとめたもの。ソフトウェアを開発した企業によって作成され配布される。ユーザはサービスパックの配布が始まったと公表されたらそれを入手・インストールすることで多数の不具合がまとめて修正され、時には新たな機能が追加されることもある。
サービスパックは、プログラムの不具合群を修正するためのパッチ群、また時には、新機能を追加するプログラムなどを含んだものである。
マイクロソフトがWindows OSなどの不具合の修正のために配布しているサービスパックが有名である。
マイクロソフト社の製品の最初のリリースは不具合が非常に多く、サービスパックの配布が一度では済まず不具合の修正がいつまでもいつまでも延々と続くことは多いので、結果としてマイクロソフトのサービスパックには連番が振られSP1、SP2、SP3 などと命名されている。まるでバージョン表記や分類のように添え字としてアルファベットまで使い始める事例すらある。サービスパックの基本は不具合の修正だが、新機能の追加を含んでいることもある（たとえばWindows XP のMicrosoft Windows XP#Service PackSP2など）
サービスパックには不具合をまとめて修正でき、修正のし忘れを防げるというメリットはある。ソフトウェアというのは一般に、大規模になればなるほど、最初にリリースあるいは発売された時点では多数の不具合を含んだ状態となっている（たとえばバグや、バグとは呼べないがユーザにとっては不具合であるものなど）。発売後に多数のユーザが使いはじめると不具合が次々と発見されることになり、ユーザはその不具合をソフトウェア開発会社に苦情という形や報告という形で伝える。それを受けてソフトウェア開発会社では個々の不具合を修正するパッチと呼ばれる修正用の小さなプログラムを制作しそれを配布する。不具合は多数あるので、そうした修正パッチの作成と配布がバラバラと何度も行われ、ユーザの側もパッチが新たに配布されたと気づいた時にはパッチをあてる（プログラムをパッチで修正することを「パッチをあてる」と言う）。そういうことが不定期に何十回も繰り返されると、やがてユーザ側は自分は網羅的に全部のパッチを正しくあてたのかそれとも一部のパッチはあて忘れてしまっていて不具合が残ったままになってしまっているのか、よく分からなくなってしまうという状態にしばしば陥る。その点、パッチをひとまとめにしたサービスパックを使えば多数の不具合をまとめて修正でき、パッチの当て忘れが起きにくい。またサービスパックを使うとネットワーク上の複数のコンピュータに適用することも比較的容易である。
増分方式と累積方式.
増分方式 (incremental) のサービスパックは、前回のサービスパックには入っていなかった修正のみをまとめたもので、累積方式 (cumulative) のサービスパックは、それまでのサービスパックの内容も全て含んでいるものである。以前のマイクロソフト製品は、増分方式の更新をサービスリリースと呼んでいた。例えば Office 2000 では、サービスリリース1(SR-1)を適用してからでないとSP2をインストールできない。
Windows XP のサービスパック3 以降、Microsoft Windows のサービスパックは累積方式をやめている。Windows XP SP3 は少なくともSP1かSP2を先にインストールしておくことが必須だが、SP1またはSP2のインストールを介せずに直接インストール可能な形式の（これを式という）SP3を組み込んだインストール媒体作成は可能である。Windows Vista のSP2も累積的ではなく、SP1が必須となっている。
追加ソフトウェアコンポーネントのインストールの悪影響.
サービスパックは一般に既存のファイル（群）をバグ修正版やセキュリティ強化版と取り替える。サービスパック適用後に元の製品のインストール媒体からコンポーネントを追加インストールすると、それによって一部ファイルがサービスパック適用前の状態に戻される危険性がある。オペレーティングシステムや配布方式にもよるが、追加インストールのたびにサービスパックを再適用する必要が生じることもある。例えば、Windows NT のサービスパックはそれが必要だったが、Windows 2000 以降ではマイクロソフトが配布方式を改善してサービスパックの再適用が不要になった。つまり、元の製品版のインストール媒体側でサービスパックが置き換えたファイルが既にインストールされている場合はそちらを優先するようになっている。