システム保守はなぜ必要?何とか工夫してゼロにできないのか?
システム保守と運用が最も違う点は、保守は、必要ならシステムの改修まで含んだ業務だということ。今回は保守業務について、もう少し詳しく見てみましょう。
コレって我が社だけ!?システム「運用」と「保守」ってどう違う?
https://un4navi.com/prologue/19001/
システム保守の主な業務
システム保守業務は、ソフトウェアやネットワーク、通信機器、クラウドなど、幅広い現場のノウハウとスキルが必要です。トラブルが起きたときの非日常業務なので、前例がないために、具体的な対応方法がマニュアル化されているとは限りません。作業時間も、数日~数週間程度で対応できる内容から、数か月~年単位で計画が必要になる大掛かりな作業もあり、開発との連携も重要です。これらの点を考えると、システム保守業務の一部は運用とも重複しながら、開発にも近いマインドも必要な業務だといえます。
- システムの監視
- システムのアップデートや改修
- トラブル発生時の緊急対応、復旧作業、原因究明、切り分け、対策
- 新しいプログラムやシステムのテスト、導入
- システムのバックアップ
- データの保存や管理、バックアップ
- データベースやサーバ機器などインフラのメンテナンス
- ユーザからの問い合わせ対応や操作指導
トラブルへの対応
ハードウェアは、経年劣化や温度変化、埃などで破損する可能性があります。また、ビジネススタイルの変化に応じて、古いソフトウェアやストレージ、ネットワークを変更する必要も出てきます。また、後述する製品としての「ライフサイクル」もありますが、故障した後の対応は不可欠です。原因の調査や究明、復旧対応に必要な作業をします。
システムの動作に必要なOSやミドルウェア、アプリケーションは、開発時点では判明していなかった不具合の補修などのために、後日アップデートされることがあります。しかし、それぞれのバージョンの組み合わせが変わったことで、未知の障害が発生する可能性もあります。クラウドも加わりシステムがより複雑になる中で、これらの対応や調査が必要になります。
この他、ソフトウェアの脆弱性やサイバー攻撃、セキュリティアップデートに準じて、必要な保守業務を実施します。
システムの改善
発見された不具合への対応や、ユーザから得られたフィードバックによる微調整なども必要です。近年では、コンテナ技術による仮想化なども普及している環境もあるため、リリース間隔が短くなっていることにも要注意。プログラムの改修自体は開発の業務ですが、システム構成や設定の変更に合わせて、開発とは密接に連携しておくことが不可欠です。
また、システムに使われるソフトウェア・ハードウェアには、「ライフサイクル」と呼ばれる一定のサポート期間が設定されています。サポートが終了して以降に発見された不具合や脆弱性に対しては、アップデートはリリースされないため、前もって別の環境へと移行しておくリソースを確保しておかなければなりません。
<PR>システム監視はシステム運用・保守での重要な業務です。SaaS型の統合運用管理サービス「UOM」は、効率的な監視業務を行うことができる、運用のプロの多様なノウハウを反映したサービスです。詳しくはこちらへ
保守の条件は事前に明確に
・対象や範囲、具体的な対応など
ITシステムは、ソフトウェアやハードウェア、ネットワーク、データベース、プラグインなど、さまざまな要素が複雑に関係しています。また、システム同士が連携している例や、仮想化マシンやクラウドが複数組み合わせられている場合も少なくありません。そのため、ユーザとベンダ側双方で、保守の対象となる内容や範囲を確認し、保守契約書として明記しておくことが重要です。
・料金体系
保守の内容と具体的な対応に必要な料金を試算し、料金体系として整理しておきます。例えば、アラート対応やネットワーク監視、ハードウェアの故障対応などは基本料金として月額または年間契約で計上し、突発的な障害が起きた場合の緊急対応はスポット料金とするような体系を決めておきます。
・契約形態
システム関連の契約では、「請負契約」「準委任契約」などが一般的です。成果物が発生しないシステム保守業務の場合は、システムの不具合の修正や改修が入っていれば、業務完了までの請負契約、操作のサポートやヘルプ対応などなら、準委任契約となることが一般的です。システム全体として、ユーザに対するベンダの責任をしっかり確認しておきましょう。
システムを保守性で評価
「保守性(メンテナビリティ)」とは、システムが持つ維持管理のしやすさのことです。システムが一定の水準で安定稼働するには、日頃どの程度の作業が必要で、障害が発生した場合にはどれぐらい簡単に復旧できるのかを判断する基準です。エラーの確認のしやすさや、バグの修正、機能変更・追加のしやすさなどで判断されます。開発段階から高い保守性を意識しておけば、システム全体の費用対効果も高くなり、エンジニアの負担も減らせます。
システム保守と運用とは兼任?分業?
これは、一概にどちらがいいとは言い切れません。人材が限られている小規模な組織であれば、システム保守と運用とが兼任されていることは、ごく当たり前です。逆に、大きな組織の場合には、効率アップのために分業した体制にしておく必要があります。昨今では、システム保守専任の担当者を置くというより、システムエンジニアやシステム担当者として、システム保守と運用の両方を担当する体制が増えています。DevOps的な組織づくりを意識した、開発との意思疎通を考慮したスタイルとも考えられます。
ただ、エンジニア一人当たりの作業時間は有限です。例えば、「一人情シス」状態なら、保守が必要になった場合は、運用に回せる時間を減らざるを得ません。逆に、人の頭数が増えるに連れて、人件費だけでなく、コミュニケーションコストも無視できません。組織が目指す方向に合った体制として、業務を最適化する必要があります。
保険としてのシステム保守の必要性とは?
以前、とある経営者からの素朴な質問が、ソーシャルメディアで話題になったことがありました。ITに詳しくない人が抱きがちな疑問ですが、なかなか奥が深い「お題」でした。
『十分に注意して正確にプログラムを開発しておけば、保守は必要ないのでは?』
ユーザがシステム保守を考える上で必要なポイントは、ビジネスが中断することで失う売上や時間、機会、信頼などのリスクとのバランスです。システム保守と運用とまとめて、外部のプロにアウトソースする企業が増えている理由は、ゼロにできない保守に対して、幅広い専門知識と高い技術力、鋭い洞察力によって得られる安心感が、一定の評価を得ているからでしょう。そして、プロにはプロの専用サービスが用意されているわけです。
さて、エンジニアの皆さんなら、先の質問に何と答えますか?
<PR> システム監視はシステム運用・保守における重要な業務です。プロが持つ多様なノウハウを基に開発された、SaaS型の統合運用管理サービス「UOM」なら、監視業務と一体化した効率的な運用が可能です。詳しくはこちらへ