システム開発とは?企画から開発までの基本的な流れをわかりやすく解説 ~保守・運用管理・監視
この記事はこんな人向け
- システム開発とは何かを簡単に知りたい
- システム開発のはじめ方について知りたい
- システム開発の流れを知りたい
- システム開発に必要な事を知りたい
- システム開発についての注意点について知りたい
「システム開発とは?企画から開発までの基本的な流れをわかりやすく解説」、第6回目はシステムを正常な状態で稼働させ続ける為に必要不可欠な「保守・運用管理・監視」です。
システム開発プロジェクトで一連の開発が終了し、発注元に納品され、リリースされたシステムは、正常な状態で昼夜問わず稼働させるという命題のもと、適切な”メンテナンス”を行っていく必要があります。それが、「保守」「運用管理」、そして、システムの状態を把握しておく為の「監視」です。
保守(システム保守)
保守(システム保守)とは、システムを正常に稼働させる為に、「システムの改修」「システムの調整」「システムの修理」を行うことです。
システム保守は「システム運用」と混同されることが多いのですが、システム保守はトラブルの解消のために直接システムに手を加え、修正や修理、ソフトウエアのアップデートを行います。
一方でシステム運用は、詳しくは後述しますが、システムが日々安定して稼働できるように管理をすることです。システム保守とシステム運用は何となく似ているよように感じますが、実際は異なる業務を行っています。
システム保守で行う業務
システム保守で行う業務は、トラブルが発生した際の対応やトラブルが発生しないようにする為の改善業務が主な業務となります。
トラブルシューティング
- システム障害の復旧
- システム上発生したバグ(不具合)の改修
- 不正アクセスが発生した際の原因究明と対策
システムの改善
- セキュリティパッチの検証と適用
- システムのアップデート
基本的にシステム保守において、定期的な作業は行わず、セキュリティパッチがリリースされたり、システムに障害が発生したりするなどの外部的な要因が発生してから対応を行うことになります。
運用管理
システムの運用管理とは、システムの正常且つ安定した稼働を維持する為に、行うメンテナンスや管理業務のことです。
システム管理で行う管理業務には、「システム管理」「ネットワーク(インフラ)管理」「セキュリティ管理」「性能管理」の他、オンプレで稼働しているシステムの場合には「設備管理」などハードウエア関連の管理業務が発生します。
システム管理
システム管理は、システム全体が正常且つ安定した稼働を維持する為に、OS・ミドルウエア、ハードウエア、データ、ドキュメントを管理します。
バックアップ
バックアップには、日々追加更新されるデータを定期的にバックアップ(保存されたデータを複製)し、設計された保存場所・保存方法に従い適切に保管します。
バックアップしたデータは、バックアップした最新データから数世代まで遡り保管を行う「世代管理」が行われます。
ドキュメント管理(文書管理)
ドキュメント管理(文書管理)では、保守や運用管理業務で行ったセキュリティパッチの適用やアップデートの内容と日付、担当者などの情報を記録として残し、ドキュメントを常に最新の状態に更新し、適切に管理します。
このドキュメント管理(文書管理)が適切に行われず、日々の俗人的な管理・運用を行っている場合、システムリリース時からの差分が時間の経過と共に大きくなり、システム運用担当の引継ぎができなくなってり、システムの更新やアップデート、最悪のケースでは障害時からの復旧ができなくなってしまうケースなどが発生します。
システム監視
システム監視とは、システム内で動作しているサーバーやアプリケーション、ストレージ、ネットワークなどが正常に稼働しているかを定期的に確認することです。
システム監視では、確認されたそれぞれ状態を確認し、必要に応じてシステム管理者への通知を行います。
システム監視の種類
システム監視は、サーバーやネットワークの監視を行う「インフラ監視」とサーバー上で稼働しているアプリケーションの監視を行う「アプリケーション監視」の2つに分類されます。
インフラ監視
インフラ監視では、サーバーやネットワーク機器などノードに対して、PINGやUDPなどのパケットを送り、応答を確認し、ノードの稼働状態を確認する「死活監視」があります。
また、CPUやメモリ、ストレージの使用状況を確認する「リソース監視」、SNMP(Simple Network Management Protocol)を利用した「ネットワーク監視」があります。
その他にも、ネットワーク機器などで障害が発生した際に送信されるTRAP(SNMPトラップ)を受け取り、ネットワーク障害の監視を行う「TRAP監視」やサーバーやネットワーク機器が出力する”ログ”の監視を行う「ログ監視」、プロセスの状態確認を行う「プロセス監視」など監視する対象によって様々な監視が行われています。
クラウドサービスが提供する監視
AWSやGCPなどのクラウドサービスが、サービスとして提供している”監視サービス”もあります。
クラウドの代表的な監視サービスと言えば、AWSの「Amazon CloudWatch」が広く知られています。
Amazon CloudWatchは、AWS内に構築したサービスのログ、メトリクス、イベントデータなどを自動的に収集し、AWSのダッシュボードに監視した状況をわかりやすく表示してくれるサービスです。
システム保守・運用管理・監視を委託するか、自社で対応するか
システム保守・運用管理をベンダーに委託するか、自社のリソースを使用して保守運用管理を行うのかの判断を迷われるお客様は多くいらっしゃいます。ベンダーに委託した際のメリット・デメリットについて簡単にご紹介します。
メリット | デメリット |
社内リソース不足の解消 | 委託コストが発生する |
スムーズな保守・運用管理ができる | 学習コストが発生する |
俗人化の回避 | 社内に保守・運用管理ノウハウが残らない |
保守・運用管理を委託する際の最大の壁は「委託コスト(システム保守・運用管理・監視費用」になりますが、システムの運用管理を専任としたエンジニアの人件費、採用コスト等をトータルで計算した上で判断されることが多いようです。
社内に情報システム部門があり、システムの運用管理を行っているケースでは、保守は開発ベンダーに委託し、運用管理・監視は社内で行うケースが多くなっています。
この記事を書いた人
株式会社APPSWINGBY マーケティング
APPSWINGBY(アップスイングバイ)は、アプリケーション開発事業を通して、お客様のビジネスの加速に貢献することを目指すITソリューションを提供する会社です。
ご支援業種
情報・通信、医療、製造、金融(銀行・証券・保険・決済)、メディア、流通・EC・運輸 など多数
監修
株式会社APPSWINGBY
CTO 川嶋秀一
動画系スタートアップ、東証プライム R&D部門を経験した後に2019年5月に株式会社APPSWINGBY 取締役兼CTOに就任。
Webシステム開発からアプリ開発、AI、リアーキテクチャ、リファクタリングプロジェクトを担当。C,C++,C#,JavaScript,TypeScript,Go,Python,PHP,Vue.js,React,Angular,Flutter,Ember,Backboneを中心に開発。お気に入りはGo。