エンジニアの知識

【作業品質改善】運用設計に必須な作成ドキュメントとは?【属人化排除】

以前、システム運用とは「サーバーやネットワークがトラブルで停止しないようにシステムの管理・運用を行うこと」と述べました。まぁ、あながち間違いではないのですが、業務改善のコンサルを依頼されるたびに思うのは「その定義を少し改める必要があるのではないか?」と感じている事です。

非情にジレンマに苛まれますが「顧客第一主義目線」の改善提案では、9割がた不採用となってしまいます。そこで、企業側の意図を見定めるために目線を変えたアプローチを行ったところ、某上場企業の社長様まで参加した一大プロジェクトになったことがあります。

具体的には「システム運用とは、最小限の労力で最大の成果を得る」と言う「企業第一主義目線」の改善提案でした。

誤解を恐れずに言うならば、現在主流の企業ニーズは「誰が作業を行っても、同じ結果が得られること」であり「現場作業員の意識改革やスキルの向上」など求めていないと言う事です。分かり易く言うと「首を挿げ替えても代わりが利く仕組み」「アルバイトや単価の安い外国人が行っても同じ結果が出る仕組み」を求めているのです。

時代と共に求められるニーズが変化することは世の常ですが、今となっては「お客様のお役に立つ」「社員の生活を守る」と言った「古き良き日本企業の風習」は、IT業界においては「表面だけの薄っぺらい言葉」になりつつあります。

作成ドキュメント

システム運用の品質を決定づける要因に「作業品質改善の方程式」が存在することは経験的に解かっています。顧客のニーズさえ読み取ることが出来れば、後は仕組みを構築するために必要なドキュメントを作るだけです。

下記は「作業品質改善の方程式」を図解したイメージになります。

作業品質改善の方程式を仕組化するために必要となるドキュメントを下記に示します。

No. ドキュメント分類 概要
運用設計書 運用項目ごとの方針、概要が記載されているドキュメント。方針と合わせて、方針決定の理由やあえて採用しなかった方針なども記載する
運用・作業項目一覧 導入するシステムで実施するすべての運用項目、作業項目、役割分担、関連ドキュメントが記載されたドキュメント
運用フロー図 運用・作業項目の中で、複数の役割が情報のやり取りをする場合、情報伝達方法、タイミングなどを図で表したドキュメント
運用手順書 運用項目一覧記載の作業、運用フロー図内の処理プロセスを実施するために必要な手順をまとめたドキュメント
申請書 運用フロー図内で情報連携のために必要項目をまとめたドキュメント
台帳 運用中に定期的に変更するデータを集めたドキュメント
一覧 運用中によく参照するパラメータ値などをカテゴリごとに集めたドキュメント

中でも「1.運用設計書」は当該プロジェクトにおいて「憲法」と言い換えても差し支えありません。すべての基本方針は「運用設計書」に記載されることになります。

運用設計書についての詳しい内容は、下記リンクをご覧ください。

運用・作業項目一覧

運用・作業項目一覧は、すべての運用に関するドキュメントの発端となる最重要ドキュメントになります。

システム運用設計では、「運用・作業項目」と「役割分担(アクタ)」を決める必要があります。複数の関係者が登場する運用項目は、役割分担があやふやになりがちです。まずは運用項目・作業一覧を作成していきます。

運用・項目一覧の作成手順

  1. 運用・作業担当者からヒアリングして、運用項目・作業一覧のドラフトを作成する
  2. 各ディスカッションから運用項目・作業一覧をアップデートする
  3. 役割分担のサマリを作成する
  4. 運用に必要な工数を算出する

例として運用項目・作業一覧より「アカウント追加・変更・削除」にフォーカスしています。運用・作業一覧から、運用・作業項目及び、役割分担が明確に出来れば下記業務フローの様に、現場の実作業を可視化することが可能となります。

ポイント

通常、運用設計の段階で業務フローが想定され設計されるのですが、昨今の開発プロジェクトでは運用設計を行わずにシステム開発を進めてしまうことが少なくありません。当然、運用は混乱してしまいます。

運用項目・作業一覧は、運用に関わる全ての関係者間の視野(ベクトル)を同一方向へ修正できるので、混乱した運用を立て直す際にも効果を発揮します。

本来、全ての運用項目に対して運用項目・作業一覧を作成していくことが望ましいですが、目安としては登場人物の多い運用項目を優先に作成していきます。

また、システム更改と新システム追加では、項目の抽出方法が異なりることに注意してください。システム更改の場合は「実運用作業からのリバースエンジニアリング」、新システム追加の場合は「想定作業項目」と言う違いがあります。

最終的には「業務運用」「基盤運用」「運用管理」毎に、すべての運用・作業項目を抽出し、運用・作業項目一覧を完成させていきます。

注意ポイント

ドキュメントを作成する上で重要なことは、対象の名称に「揺らぎ」を発生させない事です。項目名「サーバ」1つを例にとっても「サーバ」「サーバー」「Server」「server」「ホスト」「マシン」・・etc

呼び名が違うだけで、現場の運用は混乱します。ドキュメントを作成する前に、必ず対象名称の定義付けを行いしましょう。

運用・作業フロー図

運用・作業フローの目的は「処理の流れと役割分担の明確化」です。

ここでは例として「運用・作業フロー図」は、運用設計書の「共通運用」「 アカウント管理」の「アカウント作成・変更・削除フロー」をさらにブレイクダウンしていきます。

また、INPUTとなる情報及び、OUTPUTとなる成果物をそれぞれ左右に記載します。運用・作業フローは「詳細運用設計書」と言い換えても差し支えないでしょう。

運用・作業フロー図を作ることで関係者間の目線が統一され、さらに処理内容が可視化されることによって運用改善がしやすくなるという副次効果があります。

左レーンに「INPUT」となる情報の入手元を、右レーンに「OUTPUT」される成果物を記入し、中央部に実作業フローを記載していきます。

注意ポイント

注意するべきは、フローでは表現できない複雑な判断や作業手順を要する運用・作業項目になります。例えば「⑧ アカウント作成作業」の様に、漠然と作業としては表現できても、実際に行う処理(4)についてはここからは判断出来ません。

4:アカウント作成作業を行うためには、アカウント管理サーバへのアクセス方法や、ログインアカウント、パスワード情報など必要です。

複雑な判断や作業を要する場合、無理やりフロー図への記載を試みると、プログラム設計書のように複雑なフローが出来上がってしまい、お世辞にも理解に役立つ資料にはならないモノが出来上がってしまいます。

そのような場合は「運用・作業フロー」とは別に「運用・作業手順書」を作成します。

運用・作業手順書

運用・作業手順書とは、作業に必要な手順をシステムに合わせてカスタマイズし、必要な情報を付加した手順書のことです。

具体的には、下記の内容を記載していきます。

運用・作業手順書記載項目

  • 運用手順書の目的
  • 作業実施トリガ
  • 関連ドキュメント
  • 前提条件
  • 実施手順
  • 事後作業

運用・作業手順書の内容は、だれが作業を実施しても常に同じ結果が得られる手順で記述されえていることが理想です。多少手間にはなりますが、手順ごとにサンプル画像を張り付け、文字情報以外にも直感的に理解につながる形式で記載していきます。

アカウント作成手順書記載例

1.ユーザーの追加

 ① 管理者権限でログイン。
 ②「サーバマネージャ」画面を開く。
 ③「ザーバマネージャ」画面上で下記項目を選択し、ユーザペインを表示する。
 「構成」>「ローカルユーザーとグループ」>「ユーザー」
 ④ 画面空白部で右クリックし「新しいユーザー」をクリックする。

 ⑤ 下記を参考に各項目を設定し「作成」ボタンをクリックする。 
 ・「ユーザー名」:<ユーザー名>

 ・「パスワード」:<パスワード>
 ・「ユーザーはパスワードを変更できない」:チェック
 ・「パスワードを無期限にする」:チェック

 ⑥ 追加したユーザーでログイン出来ることを確認する。

パスワードなどの可変データは、変更されると都度、手順書の修正が必要となるため手順書には書き込まない。

一定以上のスキルを持った運用担当者しか作業ができないようでは、安定した運用、安定したサービスの提供を行うことは出来ません。特に運用を外部へアウトソーシングする場合、この手順書の精度によってシステム運用の良し悪しが決まります。

外注先の担当者は運用・保守専門の担当ではなく、手順書に書かれた操作を行うオペレータでしかありません。

各種申請書

申請書とは、システムに対する作業依頼や、自己の希望を申し立て、一定の許可等の効果を求めることを指します。通常、運用設計フェーズの作業フロー落とし込み段階で必要申請書が洗い出されます。「アカウント管理」で考えた場合、「アカウント作成・変更・削除申請書」が洗い出されているはずです。

基本運用設計レベルの作業フローから、下記の必要申請書が洗い出すことが出来ます。

主な申請書類

  • 入館申請書
  • アカウント作成・変更・削除申請書
  • パスワード払い出し申請書
  • タイムチャート計画変更申請書
  • 監視設定追加・変更・削除申請書
  • バックアップ・リストア管理申請書
  • ログ管理申請書
  • 保守作業申請書
  • リリース申請書
  • アクセス権限追加・変更・削除申請書
  • 障害連絡票

下記にアカウント管理申請書を例示します。

アカウント管理申請書例

上記はアカウント管理申請書(追加・変更・削除)の例示です。

運用で使用する各種申請書は、利用者が直接記入する資料となります。プロジェクトに指定されたフォーマットが存在する場合はそちらに従ってください。

台帳

台帳とは、定期的に更新されるアカウント情報や日々更新されていく障害管理の記録など、システムの土台となるデータが頻繁に更新される可変データを集めて管理した帳簿を指します

運用手順書や運用・作業フロー図を実施した際に、データが変更になる処理の場合は台帳の作成を検討します。

運用で使用する主な台帳

  • アカウント管理台帳
  • バックアップ・リストア管理台帳
  • ログ管理台帳
  • 障害管理台帳
  • 保守管理台帳
  • リリース管理台帳
  • セキュリティ管理台帳

一覧

一覧とは、運用上参照する必要のあるパラメータ情報や監視対象項目情報など、基本的にデータの更新が発生しない静的なデータの可視性を高めるために集約したリスト形式の資料を指します。

運用で使用する主な一覧

  • ハードウェア一覧
  • ソフトウェア一覧
  • 監視対象一覧
  • バックアップ/リストア一覧
  • ログ一覧
  • ジョブ一覧
  • 運用ドキュメント一覧
  • 運用エスカレーション一覧
  • 保守契約情報一覧

まとめ

まとめ

ドキュメントを書く上で重要なのは、作成するドキュメントは誰が読んでも齟齬が無いように簡潔に記載されている必要があります。

常に高い運用スキルを持った担当者がシステムを運用するとは限りません。とくに昨今では、固定費を抑えるために単金の安いIT未経験者を運用担当者としてアサインする企業も少なくありません。突然運用を任された不慣れな担当者は不安でいっぱいの状態にあります。

作成ドキュメントの目的は、だれが行っても同じ結果になることです。経験の乏しい運用に不慣れな担当者でも熟練者と同じ結果が出せるために、作成するドキュメントには曖昧な表記の揺らぎや成否の判断がつかないような優柔不断な記述は避けるべきです。

可能な限り、1要件に対して1行で言い切り型で記載することを心がけるべきです。

よく読まれている記事

1

Shellとは? Shellとは、人間の理解できる言葉を機会へ伝えるプログラムです。 Linux環境でコマンドプロンプト画面を開いているとき、常にShellは起動している状態です。 「Shell」とは ...

2

Linuxは主にサーバー用として利用されるOSです。大規模な基幹システムの開発者、ロボットや家電開発等の組み込み系エンジニア、ネットワーク機器やデータベースに携わるインフラエンジニアは触れることが多い ...

3

プログラミング言語を習得しようと思った時、必ずと言っていいほど候補として挙げられるのが「Java」というプログラミング言語です。 「Java」は、現在日本で最も使われている言語であり、非常に人気のある ...

4

この記事は、Linuxについて勉強している初心者の方向けに「Shellスクリプト」について解説します。最後まで読んで頂けましたら、Shellスクリプトはどのような役割を担っているのか?を理解出来るよう ...

-エンジニアの知識