SaaS問題点に関する記事を整理
SaaSなどの「ネットワーク型システム」の問題点に関する記事を目次風に整理した(SaaSの問題点)。
SaaS(Software as a Service)の問題点を提起
SaaSなどの「ネットワーク型システム」の問題点に関する記事を目次風に整理した(SaaSの問題点)。
これまでの記事でSaaSなどのネットワーク型システムの問題点を指摘した。
ある程度の規模があって十分な資金を持つ企業、特に従来から独自にシステム開発や運用を行ってきた企業であれば、問題回避やリスク軽減を図ることもできるだろうが、一般のサロンでは不可能だ。事業者共通の規格制定やデータ保護の法整備などが必要で、現時点でネットワーク型システムを利用するのは時期尚早だと筆者は考える。
仮に自分がサロンを経営していたとして、必要な機能が選べて安くつくからSaaSを利用するか、と問われれば、答えはNoだ。
サーバからの応答が遅くてイライラさせられたり、突然回線が切れて作業が中断されたり、ログインできなかったり、何時間あるいは何日間もサービスが停止したり、大切な顧客情報が流出したり、おまけに倒産するとその日から使えなくなって蓄積されたデータを受け取れるかどうかさえわからない、こんなサービスなんて問題外だ。
SaaSは決して万能なんかではなく、適した業務と適さない業務、適した企業と適さない企業、がある。マスコミが大きく取り上げ、時流に乗ろうとする事業者やコンサルタント会社が乱立する状況下で、安易に利用して痛い目にあうのは利用者であるサロン自身だ。価格の安さ(‘さまれぼ!’と比較すると安くもないが)や省力化のために利用を考えているという場合は、ここで挙げたような問題点があるということを十分考慮しておくべきだろう。
ネットワーク型システムでは、利用者よりも事業者の方が圧倒的に立場が強い。これは、事業者が提供しているシステムのデータ構造が事業者ごとに異なるため、簡単に事業者を変えることができないことに起因する。
データ構造に互換性があれば、より良いシステムを提供する事業者にデータを移行することもできるが、互換性がない場合は一旦CSVなどのファイルに落としてからデータ変換を行う必要がある。しかし、データ項目に過不足があれば完全なデータ移行は行えないし、そもそもそのような移行サービスを事業者が行っている保証はない。さらには、事業者からデータを返してもらえるとは限らない上、新たに料金を請求される可能性もある。
事業者間でデータを共有するためのAPIを策定する動きがあるが、全ての事業者がサポートするわけではない。仮にサポートしていても、データ取得をAPI経由で行うかファイル経由で行うかの違いだけで、データ移行の手間は大して変わらない。
このような事情のために利用者が事業者を変えることは難しいが、それでも時間や費用をかければ可能ではある。ところが、時間をかけられない状況に追い込まれることがある。その一つが事業者の廃業だ。
現在は先行きの見えない厳しい不況下にあるため、事業者の倒産がないと楽観視することはできない。ネットワーク型システムではサーバやネット接続を維持するための費用がかかる分、スタンドアロン型システムより固定費が余計に必要となる。特に、基本システム無料でオプションが数百円から、と安価な価格設定をしている事業者の場合、かなりの数の利用者を集める必要があるが、安さだけで利用者が増えるというわけでもあるまい。
倒産時に事業を譲渡できてサービスが継続されればまだ幸運だが、それでも契約内容は変更されて値上げなどが待っている。事業譲渡できなかった場合はさらに悲惨で、事業者が業務を停止したその日からサービスが利用できなくなる。その上、データを手に入れられるかどうかもわからないし、倒産のドサクサで個人情報などが流出してしまうかもしれない。悪質な事業者の場合、少しでも日銭を稼ごうと顧客情報を売り払ってしまうことさえ考えられる。
一方、スタンドアロン型システムでは、仮に事業者が廃業したとしてもそのまま使い続けることができる。データも手元にあるため、情報流出の心配もなく安心だ。時間的な余裕があるので、ゆっくりと次の事業者を探すことができる。
廃業という極端な事例以外にも問題がある。それは、事業者側が強い立場を利用して規約変更を行うことだ。ネットワーク型システム事業者に限らず、ネットワーク関連の事業者は規約に「一存で規約変更できる」旨の記載をしていることが多い。このため、一方的に値上げしたり、システム整備費として一時金を徴収したり、といった勝手ができる。
実際、昨年も事業者側の一方的な規約変更でトラブルが発生している。カイクリエイツが事前の連絡を十分にしないままリンククラブ利用者2万人の口座から1万円ずつ引き落としていたり、ソフトバンクモバイルが契約者に直接通知することなく携帯電話修理代無料の保証サービスを2割負担とする内容に変更したりしている。金銭トラブルではないが、mixi規約改定問題もあった。
利用者数が多くニュースになったこともありソフトバンクモバイルなどは変更前の内容に戻したが、利用者数の少ない事業者の場合はニュースにもならず、泣き寝入りするしかない。それが嫌なら契約を解除するしかないが、先に書いたデータ互換性の問題で簡単に止めることはできない。
このようにネットワーク型システムでは事業者側の立場が強いため、利用者側が不利益を被る状況に陥りやすい。
ネットワーク型システムのメリットとして、利用者が何もしなくても常に最新のプログラムを利用できる点が挙げられている。プログラムがサーバにあってクライアントはブラウザだけあれば良いというシステムはもちろんのこと、クライアント側にプログラムが必要なシステムでも自動更新されるようになっていることが多い。
バグ対応などでプログラムに変更が加えられた場合に、利用者が特にバージョンアップ作業を行うことなく使い続けられるということだが、これは本当にメリットなのだろうか?
WindowsUpdateを自動更新で運用している場合を考えてみていただきたい。WindowsUpdateを実行したらWindowsが起動しなくなるなどのトラブルに見舞われた、ということが過去に何度か話題となった。一口にWindowsと言っても、ハードウェアやアプリケーションなどWindowsユーザの環境はさまざまで、その全ての環境でテストすることは不可能だ。そのため、このような事態は避けられないことかもしれないが、そうしたトラブルに見舞われる可能性を減らすことはできる。それは、自動更新しないことだ。ある程度時間が経ってからWindowsUpdateを行えば、仮に致命的なバグがあったとしても解消されている可能性が高い。
これと同じことがネットワーク型システムにも言える。最新のプログラムにバグがあって利用者の環境がそのバグの発生条件を満たしていたら、システムが正常に動作しなくなる点はWindowsUpdateと同じだ。しかし、決定的に違う点がある。それは、利用者に更新するかどうかの選択権がないことだ。常に最新バージョンに保たれるというメリットが、一転、デメリットになってしまう。
もちろん、事業者は十分にテストしてから新しいバージョンに切り替えるはずだ(多分)。しかし、WindowsUpdateと同様、全ての環境でテストすることはできない。これは、スタンドアロン型システムでも同様だが、利用者はバージョンアップするかどうかを選ぶことができる。人柱になるのが嫌なら、しばらくバージョンアップを見合わせれば良いだけだ。
バグによるシステムトラブルと同じことは突然の操作変更にも言える。過去に記事に書いたことだが、日常使っているBecky!メーラで(筆者にとっての)操作改悪があった。その時はそのまま使い続けることを選択したが、旧バージョンに戻すという選択肢もあった。しかし、ネットワーク型システムにそのような選択肢はない。利用者は否応なく新しい操作を強制される。
ただし、データ設計変更や大きな操作変更を行うメジャーバージョンアップの場合は、新バージョンと並行して旧バージョンを提供することがあるかもしれない。しかし、通常は旧バージョンを利用できる期限が決められているため、その期限までに新バージョンに切り替えなければならない。
また、一旦、新バージョンに変えてしまうと、おそらく旧バージョンには戻せないだろう。特にデータ設計変更が行われた場合にはバージョンダウンすることはできない。新バージョンで操作改悪があっても元には戻せないので、我慢して使い続けて新しい操作に慣れるか、事業者に元の操作に戻すよう要望するしかない。
‘さまれぼ!’の場合、レジストリは使っていないのでフォルダを丸ごとバックアップしておけば、いつでもバージョンアップ前の状態に戻すことができる。この違いは大きいだろう。
このようにネットワーク型システムでは利用者にバージョンアップするかどうかの選択権が与えられないため、トラブルに見舞われたり不本意な利用を強いられかねない。
メンテナンス以外の原因によるサービス中断は頻繁に発生するものではないが、インターネットを介してデータのやり取りを行うため、サーバからの応答速度が一定ではないという問題は日常的に発生する。
まず、円滑に作業を行うためには光回線などの高速回線で常時接続を行う必要があるが、まだ環境が整備されていない地域が少なくない。また、仮に高速回線を用意できたとしても、他の要因によりサーバからの応答が非常に遅くなることがある。それは、回線にしろサーバにしろ、複数の利用者で共有しているために起こる。
使用している通信回線にアクセスが集中したり、大量のデータをやり取りしている利用者がいると、データ転送に時間がかかってしまい、サーバからの応答がなかなかないという事態になる。さらにサーバに対してアクセスが集中すると、サーバでの処理に時間がかかってしまい、やはりサーバからの応答に時間がかかってしまう。
それだけではなく、回線品質が良くないと頻繁に回線が切断されることになる。その度に作業を中断してログインをやり直さなければならない(この点は、プログラムの作り方にもよるが)。
日頃インターネットにアクセスしていて感じることだが、急いでいる時に限ってレスポンスが悪かったり、ページ更新途中で止まってしまったりするものだ。また、メール受信のために@niftyにアクセスする際に、サーバからエラーが返って来てログインできないことも時々ある。お客が集中して忙しい最中や、営業が終わってクローズ処理を済ませて帰ろうとする時に、レスポンスが悪かったり回線が切断されたりするなんて、スタッフにしてみればたまったものじゃない。
本契約の前に試用できるサービスもあるが、試用時に問題なかったからといって安心はできない。サーバの利用者がずっと変わらない保証はないし、回線の状態も変わらないわけではない。むしろ、サービスや回線の利用者が増えるために、時間が経つにつれて状態は悪化する傾向にあるだろう。
利用者数が制限された高品質の通信回線を利用したり、サーバを占有する契約を結ぶなどすれば状況はかなり改善されるが、それなりの費用が必要になる。そこまでしても他の利用者の影響をゼロにすることはできないので、スタンドアロン型システムと同等の安定性を確保することは不可能だ。中心業務で使用するなら少しでも安定したものを、というのが考えるのが普通だろう。
このようにネットワーク型システムのレスポンスは安定しておらず、それが原因で時に業務に支障を与えかねない。
前回の記事にある情報流出の危険性については、現実にそのような事態に遭遇しないと事の重大さを実感できないだろう。しかし、今回の記事にあるサービス中断は、直ちにサロンに被害をもたらすものだ。
ネットワーク型システムを利用するためには、大別して次の要素が必要になる。
インターネットとサーバという新たな要素が加わることで、スタンドアロン型システムに比べてサービス中断の可能性が格段に高まる。
まず、サーバがダウンすると、当然サービスを利用できなくなる。ダウンする原因として、次の要因が考えられる。
メンテナンスは通常計画的に行われるもので、深夜や早朝など利用が少ない時間帯に行われることが多い。しかし、そのような時間帯に営業しているサロンは注意が必要だ。
メンテナンス以外の事例は突然発生する上、解決までにどれくらいの時間がかかるか分からない。その間、サロンにあるパソコンには問題がないのに、サービスを利用できなくなってしまう。
ココログのように比較的単純なシステムでさえ、しばしばトラブルに見舞われ、トラブルやメンテナンスでサービスが停止している。ココログ以上に複雑なサロン向けシステムがトラブルを起こす可能性は格段に高まるが、さらに、ネットワークシステム特有の難しさがある。アクセスが集中してシステムに負荷がかかる場合や、複数のアクセスが微妙なタイミングで発生する場合、といったシステム設計上の問題だ。
実際、有名企業による大規模な事例のみに絞っても、次のようなシステム障害が発生している。
このように、周到に開発されたシステムでもシステム障害から逃れることはできず、一旦トラブルが発生すると多くの利用者に影響を与えてしまう。
サーバの問題に加えて、インターネットの問題もある。サロンがインターネットに接続するためにはインターネットプロバイダが必要だが、ここでのトラブルも無視できない。接続機器故障や人為的なミスはサーバのケースと同様に、常に付きまとう。その分、サービス中断の可能性はさらに高まる。
その上問題なのは、サービス停止の原因の特定が難しいことだ。仮にサービスが利用できなくなった場合、原因がサーバにあるのかプロバイダにあるのか、さらにはサロン側にあるのかがわかりにくい。
これは筆者が実際に体験したことだが、ある時期からネット接続時にエラーがたまに発生するようになった。時間を置けば接続できるのだが、接続できない頻度が徐々に高くなっていったのでプロバイダに問い合わせた。プロバイダで調査した結果、機器の故障だということがわかった。全く動かないわけではなく、時々不調になるためにプロバイダ側で気付かなかったようだ。
それから一年後、今度は通信時にデータ再送が多くなり通信速度が低下するようになった。一年前の経験からプロバイダに問い合わせたが、機器に異常はないとのこと。色々試してみて、こちらの通信機器が原因らしいことがわかったので新しい機器に交換すると、正常に動作するようになった。
プロバイダのトラブルにしろ、通信機器の故障にしろ、原因特定までは非常に時間がかかった。特に通信機器の故障では、パソコンやケーブルが原因の可能性もあった。別のパソコンでケーブルを変えても問題が発生したので通信機器の故障と断定できたが、一般のサロンでの原因特定は困難だっただろう。
仮にサービスにログインできない事態に陥った場合、パソコン・プロバイダ・サーバのいずれも原因となり得る。サーバが原因ならまだ幸運と言えるかもしれない。
このようにネットワーク型システムはスタンドアロン型システムよりサービスを利用できなくなる可能性が高い上に、原因特定が難しい。
データがサーバに置かれているということでまず懸念されるのは、データ流出だ。大切な会計情報などを外部に預けることに対する心理的な障壁がASPの普及を妨げたと言われていて、SaaSではそれが解消されたと喧伝されている。
しかし、本当に安全になったと言えるのか?
SaaSでは、厳重なセキュリティを施されたデータセンターでデータが管理されているというが、不安が払拭できたとは考えられない。それは外的要因と内的要因による。
外的要因としては、不正アクセスによる情報流出が考えられる。インターネット経由でデータにアクセスするという性格上、第三者から不正アクセスされないようにすることは不可能だ。当然ファイアウォールなどのセキュリティ対策が施されているだろうが、セキュリティホールは付き物だし人為的な設定ミスもあり得る。そのため、情報流出の可能性をゼロにはできない。
また、サービスを利用するためのIDやパスワードさえわかれば、それらを使ってサロン外からアクセスして情報を盗むこともできる。サーバへの不正アクセスや、サロン側のキーロガーなどでIDやパスワードが流出することは十分に考えられることだ。
内的要因としては、事業者の社員による情報流出が考えられる。情報を不正販売するとか、社員が自身のパソコンに情報をコピーしてWinnyなどのファイル交換ソフトで流出するといった可能性が考えられる。例えば、システム開発中にユーザのデータを利用してテストするという事例を筆者は知っている。何万件ものレコードが必要な場合、いちいち作っていられないということで安易にユーザのデータを利用するわけだ。その結果、ファイル交換ソフトで流出、といった事態に陥る。ちなみに‘さまれぼ!’では、顧客情報などのテストデータは自作のツールで自動生成しているので、全く問題ない。このブログで公開している画面画像にある個人情報も全てツールで適当に作成したものだ。
こういった社員個人の問題だけではなく、事業者による情報の横流しも考えられる。資本関係や協力関係にあるサロンに情報を渡すわけだ。さすがに顧客情報を渡すことは考えたくないが、経営情報や集計情報程度なら渡してしまうかもしれない。もちろん実際にこのようなことがあるというわけではなく、可能性がゼロではないというだけだ。
現実に、過去には大小さまざまな個人情報流出事件があった。ネットで検索すれば嫌というほど出てくるが、有名企業が数万人規模の流出を行った事件を過去3年間に絞ってもこれだけある。
それ以前には、楽天、NTTドコモ、ヤフーBBでも数万人規模の流出があり、大きく世間を騒がせた。
このような大企業でさえ情報流出を防ぐことができないわけで、それより小さい企業が完全に情報流出を防ぐことなどできるはずがない。データが手元にあればサロンの責任で管理できるが、事業者にあるデータに対してサロンにできることは何もない。せいぜい事業者がきちんと管理していることを祈るだけだ。
このようにネットワーク型システムには常に情報流出の危険がつきまとうが、利用者にできることは何もない。
数年前からSaaS(Software as a Service)が雑誌等で取り上げられるようになり、ヘアサロンなどを対象としてインターネット上でサービスを提供するシステムも出てきた。
SaaSの前身とも言えるASP(Application Service Provider)が一時流行して、この時はマスコミがこぞって持ち上げた。これからはASPが主流になると盛んに喧伝されていて、ASPを提供する事業者が雨後の筍のように現れたが、結果は惨憺たるものだった。
現在のSaaSの状況も当時と似ているように思える。何かが流行るとブームに乗り遅れるなとばかりにこぞって褒め称えるのが日本のマスコミの習性だが、果たしてSaaSに問題はないのだろうか?ASPが持つ欠点を解消したのがSaaSだ、とも言われるが、本当なのか?
ブームに乗ってSaaSを利用してみたものの、事業者倒産などでサービスが利用できなくなり、最終的に迷惑を被るのは利用者だ。問題点を十分理解してSaaSを利用するかどうかを判断してもらうため、今回から数回にわたってSaaSの問題点を挙げてみたい。前提とするのはサーバ上に保存されたデータをインターネット経由で操作するサービスで、これをサロンが利用する場合を考える。SaaSと言えばプログラムをサーバに置いているものが主流のようだが、クライアント側にプログラムがある場合も対象に含める。ある程度の規模がある企業を対象として、複数企業でSaaSを運用する形態もあるようだが、一般のサロンが利用するには高額すぎるので考慮しない。
このようなシステムを「ネットワーク型システム」と記事の中で記述する。また、パソコン単独で稼動する‘さまれぼ!’のようなシステムとの比較も行うが、こちらは「スタンドアロン型システム」と記述する。
尚、ここで書くことは、‘さまれぼ!’開発を始める前に検討したことが元となっているが、その後、新聞記事やネットで問題となった事件などで新たに追加したものもある。もちろん、筆者はSaaSに携わっているわけではないので、認識不足などがあれば指摘していただきたい。