保守契約のSLA、数値の裏側を読む
保守契約書に書かれた「稼働率99.9%」「復旧目標◯時間以内」といった数値は、そのまま鵜呑みにすると実態とのズレに気づけません。SLA(サービスレベルアグリーメント)を正しく読み解くための視点を整理します。
SLAとは何か
SLAとは、提供されるサービスの品質水準をあらかじめ数値で取り決めた合意のことです。稼働率・障害復旧までの目標時間・問い合わせへの応答時間などが代表的な項目で、これに満たなかった場合の対応(保守費用の減額など)とセットで定められます。
数値が明記されていること自体は良いことですが、数値の意味を正しく理解していないと、契約時のイメージと実際の運用でズレが生じます。
稼働率の数値だけでは判断できない理由
「稼働率99.9%」と聞くと高い水準に感じますが、これは年間で約8.76時間の停止を許容する数字です。ただしこれは、24時間365日稼働を前提にした計算です。
業務システムの中には、朝8時から夜22時までのように、稼働時間帯そのものが限定されているシステムもあります。この場合、稼働率の計算の母数となる時間が変わるため、許容される停止時間も変わってきます。たとえば1日14時間(年間で約5,110時間)の稼働を対象に稼働率99.9%を計算すると、許容される停止時間は年間で約5.1時間となり、24時間稼働を前提にした場合より短くなります。稼働時間外の時間帯を稼働率の計算対象に含めるかどうかは契約の定め方次第なので、SLAを確認する際は「稼働率が何時間を母数に計算されているか」もあわせて確認しておきたいポイントです。
さらに重要なのは、何を「稼働」とみなすかの定義です。サーバーが動いていれば稼働とみなすのか、特定の機能が使えない状態も停止に含めるのかによって、実際の体感とは大きく変わります。
計測対象からメンテナンス時間や特定の障害要因(外部サービス起因の障害など)があらかじめ除外されているケースも珍しくありません。数値だけでなく、その数値がどの範囲を対象にしているかを確認する必要があります。
復旧目標時間の落とし穴
「障害発生から◯時間以内に復旧」という項目も、起点がいつなのかで意味が変わります。障害が発生した瞬間からなのか、それとも発注側からの連絡を受け付けてからなのかで、実際に業務が止まっている時間は大きく異なります。
夜間・休日の障害が対応時間帯に含まれるかどうかも確認したいポイントです。平日日中のみのSLAであれば、休日に起きた障害は翌営業日まで復旧が始まらない可能性があります。
免責事項に何が書かれているか
SLAには、達成できなかった場合の対応とあわせて、適用されない条件(免責事項)が定められています。自然災害やインフラ事業者側の障害、発注側の操作ミスに起因する障害などは対象外とされるのが一般的です。
免責の範囲が広すぎると、SLAが実質的に機能しない契約になってしまいます。何が対象外なのかを確認せずに数値だけで安心してしまうと、実際に障害が起きたときに「これは対象外です」と言われて初めて気づくことになります。
SLA未達時の補償内容を確認する
数値を下回った場合の対応が、保守費用の一部減額なのか、無償対応の追加なのかも重要な確認ポイントです。多くの場合、補償額は事業への実損害と比べると小さく、SLAは「損害を補填する保険」ではなく「品質水準を守るインセンティブ」として機能しているという理解が現実的です。
数値より「運用イメージ」をすり合わせる
SLAの数値そのものを厳密に交渉することも大切ですが、それ以上に重要なのは、契約時点で発注側と開発側の間で「実際に障害が起きたとき、どう連絡が来て、どう対応が進むか」の運用イメージを具体的にすり合わせておくことです。数値の裏にある前提条件まで理解して初めて、SLAは意味のある約束になります。