オルタナティブ・ブログ > 一般システムエンジニアの刻苦勉励 >

身の周りのおもしろおかしい事を探す日々。ITを中心に。

企業内で生まれる「勝手クラウド」

»

EUC(エンドユーザコンピューティング)という考え方があります。ぱっと思い浮かぶところでは、企業内の各部署がそれぞれ異なる業務を最適化すべくシステム化を行うというものです。

企業内で情報システム部門が独立しており、そこがユーザ部門から要望を収集して外部に開発を委託する場合、ユーザ部門の生の声が反映されづらいという欠点があります。それに対してEUCではユーザ部門がシステム化に参画しますので、システムにエンドユーザの意見を反映しやすくなります。

一歩進めてエンドユーザ自身が開発までしてしまうことをEUD(エンドユーザディベロッピング)と言います。例えば部内の業務をExcelのマクロやAccessを使ってシステム化するというものです。Lotus Notesなどはビューとフォームさえ設計すれば簡単にデータベースを作って運用でき、EUDを行いやすい製品として知られています。

一方で各部門で作られたExcelやAccessなどは内部統制の観点からすると心もとないところがあります。処理の正確性の検証(テスト)が十分に行われたという傍証が残っていないですとか、責任者が決裁をしたことのエビデンスが保全しづらい(誰でも上書きできてしまう)などの問題があります。RDBMSなどと違いデータの破損に対する耐性も高くありません。

スプレッドシート統制 - Wikipedia
http://ja.wikipedia.org/wiki/%E3%82%B9%E3%83%97%E3%83%AC%E3%83%83%E3%83%89%E3%82%B7%E3%83%BC%E3%83%88%E7%B5%B1%E5%88%B6

他にもいわゆる「Excelが得意な人」に開発が偏ってしまってその人が結局システム選任になってしまうですとか、その人がいなくなると誰も保守できないなどの問題があり、業務のシステム化はシステム部門が主導することが中心であり、部署での開発は些細なものに終わることが多いように思います。

一方で、企業内でセキュリティの要件が高まっているという流れもあります。それにより、パッチ適用やログの点検などの業務負荷が増大し、部門が単独で機器を運用するということへの抵抗は大きくなりました。勝手にサーバを立ててネットワークに接続すれば管理者が飛んできて怒られる、というところもあるのではないでしょうか。このような背景もあり、システム部門は動きが遅いから、という理由でユーザ部門の部署が独自予算を組んでシステム部門を通さずに外部発注したシステムを使う、ということも最近は少なくなってきているように思います。

しかしクラウドコンピューティングが提供するSaaSやPaaSといったサービスはこうした状況を変える力を持っているように思います。例えば全社で導入されているSFAがいまいち使い勝手がよくないとします。流行に乗り、経営者の号令で付き合いの深いSIerに開発を丸投げしたものの、SIerも経験がなかったのでSEがネットと本を調べて見よう見まねでSFAっぽいものを作ってお茶を濁した、というようなことがあるかもしれません。そうすると各部署のほうで使い勝手のよいSFAのWebサービスを利用したほうがよいかもしれません。

また、ネットワークの管理ポリシーにより部署で独自サーバを立てることが難しいとしても、インターネット環境さえあればインターネット上にサーバを構築してしまうという考えもありだと思います。以前は独自サーバを立てていたのに「セキュリティ」のお題目でシステムお取り潰しの憂き目にあったという経験があったとしたら、その構成一式をネット上に移行するのはさほど難しいことではないかもしれません。

そうした事例があったとして、企業にどのような影響があるでしょうか。情報漏えいの面では、インターネット上にまとまった情報が置かれてしまうというリスクはありますが、今のところ大手のクラウドベンダーが提供するサービスが大規模な情報漏えいを起こしたという事例はありません。その一方で国内のSIerについては大きいほうだけを見ても故意にせよ過失にせよ情報漏えいを引き起こしたところがいくつかあります。現時点をもってどちらがリスクが大きいと判断するのは難しい問題であるように思います。

運用の面を考えてみると、クラウドでは障害が大規模化しやすいですとか、サーバの稼働率に加えてネットワークの障害や遅延を考慮にいれなくてはならないと言われます。基幹系なら障害は重要な問題かもしれませんが、情報系のシステムならばそこまでシビアな稼働率を求めないというものが少なくありません。また、オフィスの片隅に置かれて専従の管理者がいないような部門サーバと比較すれば、冗長化と仮想化で実現されたクラウド環境のほうが堅牢であるように思います。

価格の面からするとクラウドコンピューティングのほうに分がありそうです。SaaSの中には広告を利用した無料モデルもあります。企業で利用する以上、組織だって広告をブロックするノウハウが確立されてしまったらどうやって広告収入を得るのか、という疑問を以前から抱いているのですが、そうしたことをしなければ無料で何らかのサービスを利用できるかもしれません。ただし低価格のサービスは継続性が良くないかもしれないという点には注意が必要です。

価格面でもう1点考えられることは、各部署でバラバラにシステムを構築すると非効率であるという点です。これはSaaSが有利な点です。一般的なケースでは100人が使うシステムを10通り作るのと、1000人が使うシステムを1本作るのとでは後者のほうが安くなるでしょう。しかしクラウドサービスではそれほど大きな違いはないはずです。部が違えば業務形態も異なるところがあるかもしれません。ですので部ごとに好きなサービスを外から選んでくるとサービスに対する満足度が高くなるでしょう。しかし情報システムを自社で用意する場合は、大人数で同じものを利用したほうが価格を引き下げることができます。そうすると仕様を全社で1つに擦り合わせることが必要となり、意見を反映してもらえない部署が出てきてしまうということにもなります。

各部署が好きなようにクラウドサービスを利用したほうがいい、という材料が続きましたが、当然デメリットもあります。社内システムへの接続や、部門間でのデータ共有といった問題です。クラウドサービスはインターネットごしに利用するサービスですので、多くのサービスでWebAPIが豊富に揃えられています。しかし企業がメインとなるDBを保有しているとして、CRMだけで10種類の外部サービスを利用しているとしたら、10通りの接続ロジックを考えなくてはなりません。また項目の統合、各CRMが持つ情報を変換して一元管理するテーブルの設計も必要になります。

CRMならCRM,SFAならSFAなどとシステムの種類ごとに標準APIが決まってくればこうした問題も解決されると思われますが、そうした動きは今のところ緩慢です。Lotus Notesを無計画に利用した場合に見られたような「社内に同じようで微妙に違うDBが大量にある」という状態が発生すると思われます。

特定の部署でしか使用しないようなシステムは、システム部門が開発委託を代行するとコミュニケーションの問題が生じます。そうしたシステムはエンドユーザが直接クラウド上を探したほうがうまくいくでしょう。一方で全社的に使うシステムはクラウドであれ自社設置であれ一本化しなくてはデータの共有といった問題が生まれます。今後標準APIの整備が進めば、全社で定めたAPIに準拠していることを前提に各部署で好きなサービスを選んでも良いでしょう。そうした柔軟さを持たずに「システムの仕事はシステム部門がまとめます」という独裁的な仕事をしていると、使われないシステムが積み上がってしまい、文房具やコピー用紙などの予算に紛れ込ませる形で勝手クラウドが生まれてしまうかもしれません。

Comment(0)