いろいろな運用・保守がある
「運用・保守」とひと口に言っても、アプリケーション単体の運用・保守を指す場合から、システム全体としての運用・保守を指す場合までさまざまです。さらには、ハードウェア保守やネットワーク保守などを意味する場合もあります。いずれの運用であっても、システムの開発段階が終わりに近づけば、運用フェーズに向けて、システムの安定稼動と改変が可能な体制を作り、お客さま(運用・保守側)に引き継ぎを行います。そしてこの、まさに引き継ぎ段階において、さまざまな問題が発生しています。
本稿では、筆者が上流工程(提案および設計)からサービス提供までの中規模システム構築と、その後4年間にわたる運用保守の経験を通じて感じたこと、すなわち、単にお客さまへの上手な引き継ぎ手法にとどまらず、どうすればお客さま側とシステム開発側とがより良い関係で業務運用・システム運用を行えるのかについて話を進めたいと思います。
「業務運用」と「システム運用」
まず最初に、「業務運用」と「システム運用」の定義注1について説明しましょう。
通常、SIerはお客さまに対して「業務アプリケーション」と「それを実行する環境」を合わせた物を「(コンピュータ)システム」として納品するかサービスとして提供します。本稿で言う業務運用とは、SIerが納品したシステムのオペレーションに加え、そのシステムをより効果的に活用するための作業までを含むものとします。また、業務運用はお客さまの業務部門が実施するのが一般的です。
たとえば、「電話対応結果の入力」「電話対応履歴の検索」の2つの機能がシステムとして提供されている電話対応オペレーションの場合を例にしてみると、以下のようになります。
- システムが提供している機能
- 電話対応結果の入力
- 電話対応履歴の検索
- システムを効果的に活用するための作業
- クレーマー情報の抽出のため、電話対応履歴から同一の電話番号履歴を抽出
- オペレータの勤怠情報の抽出のため、システムへのログオン・ログオフ時刻の抽出集計
一方、「システム運用」とは、システムを正常に動作させ続けるために必要なオペレーションを指すものと定義します。システム運用を誰が行うかについてはさまざまなケースがありますが、お客さまのシステム部門またはシステム構築をしたSIerが行う場合が一般的です。以下に例としていくつか示します。
- 日次・月次バックアップ作業
- システム状態監視(死活監視)
- キャパシティ管理・性能管理
- セキュリティ監視
- 障害対応
本稿における定義なので一般的な定義と食い違う点もあるとは思いますが。
根源的な原因は上流工程にあり
SIerが受注したシステムの構築を進めていく作業のなかで、重要なマイルストーンの一つが、完成したシステムをお客さまへ引き継ぐ作業、すなわち納品作業です。「納品」というイベントそれ自体は儀式的な作業である場合が多く、納品の場でお客さまとSIerとの間で波乱が起きることはまずありません(そうならないように事前に入念な準備を進めているわけです)。ところが、多くの場合、裏ではさまざまな問題が起きています。
特に問題が発覚するのはオペレータへの導入訓練での段階で、多くの場合、お客さまのシステム部門からではなく、お客さまの業務部門からのクレームとして現れます。これらは、たとえば以下のようになります。
- 今までの業務フローと異なるのでシステム側を修正してくれますか?
- 必要なドキュメント(主に手順書)が用意されていないよ!
- マスターテーブル更新などの作業はSIerが実施してくれるんですよね?
これらクレームはプログラムのバグという品質面の問題ではないはずです。問題なのは、「システムは仕様どおり動いているが業務運用がまわらない!」に尽きると考えられます。
この段階でのクレームは、発生時期がサービス開始間際であること、すでにプログラムやシステムが完成している状態での変更要求に直結することなどから、そのダメージは計り知れません。
なぜ、このように業務運用がまわらない事態に陥ってしまったのでしょうか? 筆者の経験からすると、根源的な原因は、引き継ぎの方法(テクニック)にあるのではなく、じつは上流工程でのやり残しにあると考えています。