- 更新日 2023.12.12
- カテゴリー アプリ開発
アプリ運用とは?保守との違い・重要性・作業内容・想定すべきコストを解説【2024年最新版】
・アプリ運用・保守の具体的な作業内容は?
・アプリ運用・保守は外注できる?
・アプリ運用・保守にはどのくらいのコストがかかる?
アプリ開発は、リリースしたらプロジェクトが終わるわけではありません。むしろ、リリース後の「アプリ運用・保守」が重要です。しかし、頭では理解していても、なぜアプリ運用・保守が重要なのか?具体的にイメージできない企業担当者の方は上記のことで悩んでいるはずです。
そこで本記事では、なぜアプリ運用・保守が重要なのか?運用と保守の違いやそれぞれの作業内容、想定しておくべきコストを含め、知っておきたいアプリ運用・保守の基本を徹底解説!自社対応が難しいという方に向け、アプリ運用・保守外注の候補先も紹介していきます。
※アプリの運用・保守に定評のある優秀なアプリ開発会社・MSP(マネージド・サービス・プロバイダ)を探している方は、システム幹事にご相談ください。専任のアドバイザーが最適な会社をご紹介します。相談料などは一切かかりませんので、お気軽にお問い合わせください。
アプリ開発に役立つ記事もご覧ください アプリ開発かんたんマニュアル!おすすめ言語、開発の流れ、ツールまで解説
アプリ運用とアプリ保守はなにが違う?
アプリ“運用”とは、リリースされたアプリを安定的に稼働させていくため、日々アプリ・システムを監視・オペレーションしていくこと。アプリ本体がサーバで稼働しているのなら、ネットワークやサーバ本体を含むハードウェアの監視・オペレーションもアプリ運用に含まれます。
一方のアプリ“保守”とは、アプリ・システムに生じた障害の原因を究明し、一刻も早く復旧すること。再発防止に向けてアプリ・システムを改善・改変すること。また、アプリのメンテナンスアップデートや機能追加もアプリ保守の範疇です。
つまり、アプリ・ハードウェアを含むシステムに改善・改変を加えないのが「アプリ運用」、改善・改変をするのが「アプリ保守」であり、この点が両者で最も異なる点です。とくに24時間365日稼働が前提のWebアプリで運用・保守を怠れば、障害が復旧するまでに機会損失が発生するのはもちろん、ユーザーの信頼を失ってしまいます。基幹業務を担うアプリであれば、ビジネス全体がストップしてしまうでしょう。
アプリ運用・保守とシステム運用・保守の違い
アプリ運用・保守に近い用語として「システム運用・保守」があります。
アプリケーションの略称であるアプリは、ある特定の処理を実行するためOSの機能を活用するソフトウェアのこと。システムは、ソフトウェア・ハードウェアを含む、ある特定の目的を実行するための仕組みそのもののこと。そもそも両者は運用・保守の対象となるものが異なります。
一般的に、システム運用・保守といった場合は、Webシステム・クライアントサーバ業務システムが対象となります。しかし、WebシステムはWebアプリと意味合いはほぼイコールです。つまり、バックエンド環境(サーバ環境)が必要なWebアプリ、業務アプリ、ネイティブ・ハイブリッドアプリに関しては、アプリ運用・保守とシステム運用・保守は同じことを意味していると考えても間違いではありません。
運用・保守の対象になるアプリの種類
アプリ運用・保守の役割や作業内容は、運用・保守の対象となるアプリの種類に応じて若干異なります。これはアプリの種類に応じてサービスの提供方法や仕組みが異なるためです。以下、運用・保守面で大きく3つに分類できるアプリの種類を紹介しておきましょう。
アプリの種類を含むアプリケーション開発についてより詳しく知りたい方は、以下の記事も参考にしてください。
関連記事:アプリケーション開発の流れ|アプリの種類・仕組み、開発に必要なものも一挙解説
Webアプリ
Webアプリとは、サーバに構築されたアプリケーションにインターネット経由でアクセスし、Webブラウザでサービスを利用するアプリのこと。YouTube・InstagramがWebアプリの代表例です。WebアプリはWebブラウザを利用するため、端末にアプリのインストールが不要であることが特徴です。つまり、サービスを提供するプログラム(バックエンド)、Webブラウザに表示される操作画面(フロントエンド)、どちらもサーバに格納されるWebアプリの場合、運用・保守の対象となるのは「ソフトウェア・ハードウェアを含むサーバ環境」です。
ホスティングサービスやパブリッククラウドが利用されることの多いWebアプリは、リモートでアプリ運用・保守されることが一般的です。ただし、業務アプリのようにオンプレミスで稼働するものでは、スタッフが現場でアプリ運用・保守を担う場合もあります。
ネイティブアプリ・ハイブリッドアプリ(オンライン)
ネイティブアプリとは、iOS / Android端末にインストールして利用するアプリのこと。ハイブリッドアプリとは、iOS / Android端末にインストール・利用する点ではネイティブアプリと同様ながら、Web技術を組み合わせて開発されるアプリのことです。食べログアプリもハイブリッドアプリに含まれます。
ネイティブ・ハイブリッドアプリは、インストールした端末のみでも動作しますが、インターネット接続したサーバから一部機能を提供する場合もあります。こうしたオンラインが前提のネイティブ・ハイブリッドアプリは、バックエンド環境(サーバ環境)の運用・保守に加え、端末にインストールされたアプリの保守も必要です。
ただし、ネイティブアプリを自社で開発すると、AndroidとiOS両方の専門知識があるエンジニアが必要です。両OSごとに使うプログラム言語が異なるので、運用保守のコストも高くなってしまうことに注意しましょう。
デスクトップアプリ・ネイティブアプリ(オフライン)
一方、インストールした端末で動作が完結するネイティブアプリやデスクトップアプリの場合、サーバ環境を必要としません。そのため、原則としてアプリの運用は必要ありません。デスクトップアプリの例としてはDropboxが挙げられますに含まれます。
ただし、アプリのバグ・不具合を解消するメンテナンスアップデート、OSアップデートへの対応などを含むアプリの保守は必須です。ユーザーからの不具合報告・要望を受け付けるサポートデスクを設置する場合もありますが、要望を保守に伝えるという意味では、サポートもアプリ運用の範疇だといってもいいでしょう。
アプリ運用の役割・作業内容
それでは、アプリを安定的に稼働させるという役割を持つアプリ運用は、具体的にどのような作業を実施するのでしょうか?表で示したように、アプリの種類によって作業内容は異なりますが、それぞれを簡単に解説していきます。
アプリ運用の 作業内容 |
Webアプリ |
ネイティブ・ ハイブリッドアプリ (オンライン) |
デスクトップ・ ネイティブアプリ (オフライン) |
システム監視 |
◯ |
◯ |
× |
システムオペレーション (セキュリティパッチ適用) |
◯ |
◯ |
× |
システムオペレーション (サーバ再起動・バックアップ) |
◯ |
◯ |
× |
システム・アプリ保守への エスカレーション |
◯ |
◯ |
◯ |
システム監視
システム監視とは、アプリを含むソフトウェア・ハードウェアに問題が生じてないか、サーバ全体の稼働状態を監視すること。定期的に各種ログを取得してチェックしたり、外部からPINGコマンドを送って応答を確認したりする作業が中心となり、システム・アプリ運用の基本となる業務です。主な作業項目は以下の通りです。
・アプリケーション監視
・死活監視
・ハードウェア監視
・トラフィック監視
・セキュリティ監視
死活監視とは、システムが正常に稼働しているかを外部から継続的に監視することです。ハードウェア監視とは、メモリなどのサーバを構成するハードウェアに温度・電圧などに異常がないかを監視すること。トラフィック監視は、ネット上に流れるデータ量を監視することです。
セキュリティ監視では、サーバーへの侵入を防ぐためにファイアウォールのログなどをリアルタイムで監視します。
AWSの「CloudWatch」SaaS型の「Mackerel」など、安価に利用できる監視ツールが多数存在します。そのため、クラウド / オンプレミスを問わず自動化が進められているのがシステム監視の特徴。また、サーバを対象とするシステム監視は、サーバの存在しないデスクトップ・ネイティブアプリでは実施されません。
システム監視を外注する際、企業によって対応できる監視項目が異なることに注意しましょう。
システムオペレーション
システムオペレーションとは、アプリ・システムを安定稼働させるための日常的なメンテナンス業務のこと。具体的には以下のような作業がシステムオペレーションに含まれます。
・セキュリティパッチの適用
・サーバの再起動
・データバックアップ
セキュリティパッチとは、公開されているソフトで発見されたトラブル内容を解消するためのプログラムです。
基本的には、手順書に従う形で定期的に実施するメンテナンス業務です。しかし、OS / ミドルウェアベンダーからリリースされたセキュリティパッチをいち早く適用できるよう、情報収集を怠らない姿勢も必要。システムオペレーションも、オフラインのデスクトップ・ネイティブアプリでは実施されません。
システム・アプリ保守へのエスカレーション
システム・アプリ運用でもっとも重要となる業務が、保守担当者へのエスカレーション(報告して判断を仰ぐ)です。具体的には、システム・アプリに障害の兆候が見られた時点で、サーバ再起動や各部の点検など「手順書に従ったシステム・アプリ運用の範囲内での障害対応」となる一次対応を実施。解決できなければシステム責任者への報告、保守に解決を要請する二次対応(エスカレーション)を実施します。
サーバの存在しないデスクトップ・ネイティブアプリでは、サポートに寄せられた不具合報告・ユーザーからの要望などを保守担当者に伝えることが、アプリ運用のエスカレーションに該当するといえるでしょう。
外注する際は、とくにエスカレーションの対象範囲や契約期間を明確にしましょう。明確にしないと「言った言わない」のトラブルになる恐れが生じます。
アプリ保守の役割・作業内容
それでは、障害原因を究明して一刻も早く復旧する、再発防止に向けてアプリ・システムを改善・改変する、メンテナンスアップデートや機能追加などの役割を持つアプリ保守は、具体的にどのような作業を実施するのか?表で示したように、アプリの種類によって作業内容は異なりますが、それぞれを簡単に解説していきます。
アプリ保守の 作業内容 |
Webアプリ |
ネイティブ・ ハイブリッドアプリ (オンライン) |
デスクトップ・ ネイティブアプリ (オフライン) |
障害の究明・復旧 |
◯ |
◯ |
× |
システム・アプリの改善提案・改変 |
◯ |
◯ |
× |
OSアップデートへの対応 |
× |
◯ |
◯ |
アプリのメンテナンスアップデート・ 機能追加 |
◯ |
◯ |
◯ |
システム・アプリ障害の究明・復旧
サーバ環境が必須のWebアプリ、ネイティブ・ハイブリッドアプリ保守でもっとも重要な業務となるのが、サーバに万一の障害が発生した際の原因究明・ダウンタイムを最小限に抑えた復旧です。具体的には、各種ログなどの運用記録から障害発生の日時・範囲を特定し、トラブルの原因を究明。最善の方法をシステム責任者と話し合いながら復旧作業を実施していきます。
システム責任者に丸投げするのみならず、アプリ保守の担当者もサーバーやアプリの構成全体に精通しているのが望ましいです。
システム・アプリの改善提案・改変
サーバの障害・トラブル再発を防ぐため、抜本的なシステム改善案を策定し、システム責任者へ提案・実施することもアプリ保守の重要な業務です。サーバの障害・トラブル対応時は、なによりも復旧が最優先されるため、応急的な処置になりがち。同様のトラブル再発を防ぐためにも、抜本的・継続的な改善・改変が欠かせません。
また、OS / ミドルウェアのアップデートなど、システム・アプリの動作に影響を与える改変作業もアプリ保守の業務です。
OSアップデートへの対応
運用・保守の対象がサーバのみとなるWebアプリと異なり、端末へのインストールが必要なネイティブ・デスクトップアプリ / ハイブリッドアプリは、端末で動作するOSアップデートへの対応も必要です。OSの機能を応用して活用するアプリは、マイナー / メジャーアップデートを問わず、OSの改変に大きな影響を受けてしまうから。ある日突然アプリが動作しなくなった、原因はOSのアップデートだった、といったことが起こらないよう、情報収集してアプリの安定稼働を目指していく姿勢や仕組みが必要です。
アプリの機能追加
障害・トラブルへの対応以外に、ユーザーの要望を反映する形で機能追加・強化を図り、利便性を高めていくこともアプリ保守の業務です。
そもそもアプリの真価は、さまざまな立場・環境のユーザーが使い込んでみてからでなければわからないもの。ユーザーの声を丁寧に拾いながら、足りないもの・改善が必要なものを潰していくことでアプリの完成度を高められます。
ただし、アプリ機能追加の際は、バグやトラブルが起こった際に素早く対応できるようにしましょう。さもないとユーザーからのアプリ・アプリ提供会社への信頼が損なわれる恐れがあります。
アプリ運用・保守で想定しておきたいコスト
「アプリ運用・保守の重要性は理解したが、運用・保守のコストはどのくらいかかるのか?」気になっている担当者の方は多いかもしれません。
アプリ運用・保守の対象範囲をどこまで広げるのか?アプリの規模はどのくらいか?対象となるアプリの種類はなにか?など、さまざまな要因でアプリ運用・保守の費用は大きく変動します。一概に相場がどのくらいとはいえませんが、運用・保守費用の基本的な考え方を紹介しておきましょう。
サーバ・ドメインの維持コスト
Webアプリ、ネイティブ・ハイブリッドアプリなど、インターネット接続が前提となるアプリの場合は、サーバ・ドメインの維持コストが必須です。
共用サーバをレンタルするのであれば、維持コストはそれほど大きくありません。しかし、大規模アプリをAWSで構築する場合などは、月額で数十万円程度かかることもあります。ただし、専用サーバやパブリッククラウドであれば、障害時の対応をベンダーに任せられるマネージドサービスが利用できるため、ネットワークを含むハードウェアの心配はしなくて済みます。
一方、インターネット上の住所ともいえるドメインは、年額でも数千円から1万円程度。見逃すわけにはいかないコストではありますが、負担はそれほど大きくありません。
システム・アプリ運用・保守コスト
サーバのシステム監視や障害時対応などを含むアプリ運用・保守コストは、対象範囲や契約内容に応じて大きく変動します。たとえば、運用・保守にかかる人員・工数をもとに月額換算で費用を提示する会社もあれば、トラブル時のインスタンス(現象・事象)に応じた費用を請求する会社もあります。監視・対応の幅が広がればそれだけコストも高くなるのです。
一般的には、サーバを含むアプリ運用・保守コストは、開発コストの10%〜15%程度が目安。そのため、概算の見積もりをシミュレーションしてもらい、適正な金額に収まっているかを確認するといいでしょう。
アプリのアップデート・機能追加コスト
アプリのメンテナンスアップデートや機能追加にかかるコストは、アプリ運用・保守費用とは別になることが一般的です。アップデートの内容や追加する機能に応じて費用は異なりますが、多言語対応で1言語あたり10万円程度から、決済機能の搭載で20万円程度からだといわれています。
追加検討の機能を十分に検討しましょう。自社だけで機能追加の必要・不要の判断が難しい際は、開発会社に相談するのも1つの手です。プロ目線で機能が必要・不要を提案してもらえます。
アプリ運用・保守はどこに依頼できる?
優秀な監視ツールが利用できるようになったとはいえ、24時間365日の対応が求められるWebアプリなどでは、運用・保守を自社で全て賄うのは現実的とはいえません。運用・保守に対応する外部事業者にアプリ運用・保守をアウトソーシングする場合が一般的です。
それではアプリ運用・保守はどこに依頼すればいいか?選択肢としては「アプリを開発したアプリ開発会社」または運用保守を専門にする「MSP(マネージドサービスプロバイダ)」が考えられます。
アプリを開発した開発会社
ほとんどのアプリ開発会社は、開発チーム、運用・保守チームにエンジニアを分散させ、どちらにも対応できる体制が整えられています。そのため、開発から継続してアプリ運用・保守も任せる方法があります。自社アプリの開発に携わったアプリ開発会社なら、安定的に稼働させるための運用設計も最適化可能。メンテナンスアップデートや機能追加にもスムーズな対応が期待できます。
MSP(マネージド・サービス・プロバイダ)
システム・アプリ運用・保守の依頼先として近年注目されている、運用・保守を専門にした「MSP(マネージドサービスプロバイダ)」に依頼する方法です。開発がメインのアプリ開発会社では、運用・保守に関する選択肢がそれほど多くない場合もあり、ニーズに合致した体制が構築できないことも。そんなときに選択肢となり得るのがMSPです。
MSPなら、運用・保守の専門会社として幅広い業種のさまざまなシステム・アプリを監視・運用・保守するノウハウを活用できます。また、豊富に用意されたメニューから、ニーズに応じたサービスを自在にチョイスできるのもメリットだといえるでしょう。
クラウドだけでなくオンプレミスで開発のアプリも運用保守できるか、得意なシステムのジャンルや規模は何かなどの視点で選ぶのがいいでしょう。
アプリ運用まとめ
アプリ運用とはなにか?保守となにが違うのか?知りたい方に向け、本記事では、アプリ運用と保守の違いやそれぞれの作業内容、想定しておくべきコストを含め、知っておきたいアプリ運用・保守の基本を解説するとともに、アプリ運用・保守外注の候補先も紹介してきました。
記事冒頭でも触れたように、アプリ開発はリリースしたら終わりではありません。むしろ、リリース後の運用・保守を通じて、アプリの信頼感・完成度を高め、ビジネスの成長につなげていくことが重要です。
※アプリの運用・保守に定評のある優秀なアプリ開発会社・MSP(マネージド・サービス・プロバイダ)を探している方は、システム幹事にご相談ください。専任のアドバイザーが最適な会社をご紹介します。相談料などは一切かかりませんので、お気軽にお問い合わせください。
コンサルタントのご紹介
岩田
専任のコンサルタントが、
お客様の予算と目的を丁寧にヒアリング。
最適な会社をピックアップ・ご紹介させていただきます!
初心者の方でも安心してご相談いただけます。
Q. アプリ運用とは何ですか?
アプリ運用とは、リリースされたアプリを安定的に稼働させていくために、日々アプリ・システムを監視・オペレーションしていくことです。アプリ本体がサーバで稼働しているのなら、ネットワークやサーバ本体を含むハードウェアの監視・オペレーションもアプリ運用に含まれます。
Q. アプリ運用の役割は?
アプリ運用の役割は「システム監視」「システムオペレーション」などです。詳細は記事内で紹介していますので、ぜひご覧ください。
この記事を書いた人
梓澤 昌敏
専門分野: 音楽・映像制作、オウンドメディア、ビジネス
音楽・映像制作の現場を経て、スタジオ構築側の業界へ。マネージャー・コンサルタントとして制作現場の構築に携わる一方、自社オウンドメディアの立ち上げを含むマーケティングも担当してきました。現在アメリカ在住。作曲を含む音楽制作も提供しています。
このライターの記事一覧