Kengo's blog

Technical articles about original projects, JVM, Static Analysis and TypeScript.

SaaSまとめ

日経新聞NTTがNGNの事業認可を取得したとの記事が載っていました。来月末からサービスが開始されるとのことです。
記事によるとSaaS(Software as a Service)に期待が集まっているそうですが、SaaSが何なのかイマイチわかっていないので関連サイトを巡ってみました。

中でも@IT情報マネジメント用語辞典が最もわかりやすいように感じます。細かく知りたいならば5分で絶対に分かるSaaS − @IT情報マネジメントが最適でしょうか。

ソフトウェアの機能のうち、ユーザが必要とするものだけをサービスとして配布し利用できるようにしたソフトウェアの配布形態。サービス型ソフトウェアとも呼ばれる。
SaaS (software as a service) − @IT情報マネジメント用語事典より)


調べるまではGmailGoogleドキュメントのようなものだろうと思っていたのですが、動作原理としては正しい感じ。ハードウェアは勿論ソフトウェアもサービス提供者が管理し、利用者はブラウザなどを通じて利用するだけです。
これに「顧客が利用する機能の費用のみを徴収する」という課金システムを取り入れたようなイメージでしょうか。無料サービスも含めてSaaSと呼ぶかどうかはちょっとよくわかりません。はてなキーワードでは無料も含めるとされていますが……。

予想されるSaaSの利点

簡単に予想がつく利点はアップデートが容易であるということです。
例えば近年では解凍ソフト+Lhacaに脆弱性がありましたが、こうしたインストールするタイプのソフトウェアの場合、ソフト作者から利用者にアップデートを促すことは難しいです。
ウェブサイトでの公報には限界があります*1し、更新確認機能などを組み込むのは開発側にとって負担になります。さらにアップデートはすべてのユーザが各自で行う必要があります。
しかしSaaSの場合、更新するのはサーバ側のプログラムひとつで済みます。必要な配慮は保存データの互換性維持及びUIの統一*2くらいではないでしょうか。
さらに古いバージョンを保守する必要がないのも、サービス提供者にとっては大きなメリットでしょう。ソースを忘れてしまいましたが、インストールするタイプのパッケージソフトウェアの場合、3〜5年前のバージョンを保守することもあると聞いたことがあります。

予想されるSaaSの欠点

逆にSaaSの欠点は、セキュリティおよび動作速度であると予想されます。
SaaSの場合データはサーバに保存されるようですので、個人情報や機密情報が通信中に漏えいする可能性があります。また必ず通信を必要とするため、インストールするタイプのソフトウェアよりもレスポンスの速度が遅くなるケースも多い*3でしょう。


そして、どうやらこの欠点をカバーするものとして期待されているのがNGNのようです。
他にもSaaSはシン・クライアントとも相性が良いとのこと。確かにクライアント側にデータを保存する必要はほとんどないので、記憶装置は無くても問題ないのでしょう。

*1:ユーザ全員に伝わる保証がないという意味

*2:いくら簡単に更新できるからと言ってUIがコロコロ変わるのは考えもの

*3:PCとサーバではサーバのほうが処理能力が高い場合が多いので、一概には言えないはず