支援対象地域:札幌、仙台、関東、愛知、関西、広島、福岡


SE(システムエンジニア)の業務内容や分類について調べていると、運用・保守という言葉をよく見かけます。運用と保守はSEの業務の一部で、一括りに紹介されることが多いですが、実際はそれぞれ担当する業務範囲や求められるスキルが異なります。

今回はシステムエンジニアにおける保守と運用の役割の違いや、それぞれのメリットとデメリットを紹介していきます。

システムエンジニアの業務とは

運用保守を説明する前に、まずはSEの業務内容の概要を説明します。SEは、システム開発・導入で基本とされているウォーターフローモデルにおける上流工程を担当します。上流工程は、顧客の要求から仕様を決定する要件定義や、システムの基本設計、詳細設計の部分に該当します。

顧客と打ち合わせを行った結果必要となった機能をまとめ、どのようなシステムを構築していくかを整理して、書類等に落とし込んでいきます。顧客の要望を聞き込むことがメインではありますが、時にはエンジニアの知見から提案することも必要になるため、ある程度SEの経験を積んだ人が担当することが多くなる業務です。また予算や人員、進捗管理などのマネジメント業務もSEの大切な仕事です。

ウォーターフローモデルに沿ったSEの仕事内容は以上の部分になりますが、企業やプロジェクトによっては各担当範囲が厳格に決められていない場合もあり、時にはプログラミングやシステムテストといった下流工程も臨機応変に対応する必要に迫られる場合もあります。上流の各工程の詳細について以下で紹介します。

  • 要求分析・要件定義
  • 顧客との話し合いを繰り返し、どのようなシステムを望んでいるのかを明らかにします。すべての要望に応えることは難しい場合が多いため、システム開発に必要な開発期間や費用を算出した上で、要求をどのように実現するか決めていきます。組織の予算にも関わってくる部分なので、エンジニアの専門的な知識やスキルだけではなく、管理職のように組織や部門の状況を広く把握している必要があります。

  • 基本設計
  • 顧客のニーズを実現するシステムの設計を行う工程です。要求分析や要件定義のデータをもとに、システムに搭載する機能や、画面表示、操作方法仕様までを決定していきます。

  • 詳細設計
  • 基本設計フェーズで決めた実装予定の機能を元として詳細を詰めていく工程です。利用する技術やソフトウェア等、その他エンジニアやプログラマーが構築していく時に直接の指針とできるような、システムに特化した設計書を作成していきます。

  • テスト
  • プログラミングの完了時の単体テスト、システム全体が出来上がった際に各機能を連携させての結合テストで正常な動作ができるかを確認する工程です。テストは下流工程で行うことが多いですが、まだ経験の浅いSEが担当することもあります。

    SEの保守とは

    「保守」は稼働中のシステムに障害等の問題が発生した際に復旧への対応をする業務のことです。システムに問題が発生してからの業務はもちろんですが、あらかじめ障害や不具合が発生しないように備えていくことも必要となります。そのために必要に応じて稼働中システムの改良や機能の強化、ハードの交換、利用OS・ソフトウェア類のアップデート作業も対応していきます。

    保守として対応していくハード交換、アップデート、セキュリティパッチの適用という処理は、稼働中システムを一時的に停止したり、再起動の必要性が出てくることもあります。そのため深夜等の利用者が少ない時間帯にシステム停止期間を設け、メンテナンスとしてまとめて対応することがあります。

    IT資産は顧客に納品して終了ということはほとんどなく、長期的に運用・保守を継続していくものです。システムが稼働している限り、正常に稼働し続けるための普段からの対策、障害発生時の復旧対応を続けて、顧客のサービスを守っていきます。

    特に障害発生時には、原因の特定と適切な処置をスピード感を持ってやり切ることが必要なので、保守担当のエンジニアはサーバー、ネットワーク、ソフトウェア等の幅広いIT知識や技術、また豊富な実務経験が必要とされます。

    SEはどちらかというと実作業をすることは少なく、復旧作業は担当のプログラマーや、サーバー、ネットワークそれぞれの各担当に任せ、全体の動きを見て各所に指示を出したり、マネジメントする傾向にあります。それでも障害発生時に実対応できる技術者がいない時、不足している時はSE自らが作業する必要も出てきます。予期しない状況にも対応できるように、SEはプログラミングの知識や技術を十分に備えていることも求められます。

    SEはコミュニケーション能力も必要です。顧客側にサーバーが設置されていてリモートで復旧対応する場合等には、顧客側と電話やチャットで連携して障害復旧に導く場面が出てくるためです。またシステム導入時の上流工程においてもコミュニケーションエラーがあると十分な要望が聞き出せず、後から工程の切り戻しが発生して工数が何倍にもかかるという事態に陥る可能性があります。

    SEは基本的にマネジメントに近い業務を担当しますが、要件定義書や設計書、手順書や各種報告書といった書類を作成する機会も多くなるので書類作成能力も必要です。

    運用とは?

    保守は、何か問題が起きた際に対応する業務がメインですが、運用は問題が起きないように日々監視、対策していくことがメインとなるのが運用です。保守にもメンテナンス等の事前対応という業務があるので明確な切り分けが難しい部分ではありますが、運用はシステムが不穏な動きを見せていないか等を監視する業務が多くなってきます。

    問題発生時の復旧対応は保守の業務に分けられますが、復旧後に発生原因等を整理、分析しながら再発防止策を講じて、実際にシステム改善を行っていくのは運用の担当業務となります。

    まとめ

    運用と保守はそれぞれ担当する業務内容が異なりますが、システムを安定稼働させていくには必要不可欠な分野です。どちらか一方ではなく、両方の知識やスキルを身につけることでエンジニアとして幅広く活躍できます。業務していく中で経験は知識習得や経験を積むことは可能ですが、不足している知識は資格取得で補い、移り変わりの早いIT業界の情報収集を忘れずに行い、SEとしてのキャリアパスを歩んでみてはいかがでしょうか。