旺盛なシステム開発需要がある一方、圧倒的なIT人材不足が起きており、また人材派遣ビジネスでシステム開発企業として独自性を発揮しにくいクラウドファースト時代の中、システム開発企業は具体的にどのようにビジネスを組み立てればいいのだろうか。
クラウドがもたらすシステム構築の効率性と柔軟性
あらためてクラウドのメリットとデメリットを整理する。まず、メリットは大きく三つある。
1番目はインフラ構築・運用の効率向上である。サーバーの調達だけでも数日・数週間もかかっていたのは大昔の話だ。今では、ネットから申し込めば数秒で仮想マシンが立ち上がる。
2番目は柔軟なシステム構成だ。仮想マシンだけでなくデータベースやミドルウェアが用意されており、柔軟にシステム構築が可能だ。仮想化されたコンテナの自動配備・スケーリングなどを行うKubernetesやサーバーレスなど、より動的にシステムリソースを運用する環境も普及しつつある。
3番目は従量課金であること。以前は、ハードウェア調達費やソフトウェアのライセンス料・システム開発費の初期投資が必要だった。現在は、仮想ハードウェアとソフトウェアも、利用量に応じた従量課金になっている。
クラウドの継続的な利用は、変化への対応が不可欠
次に、クラウドのデメリットを整理する。
1番目は、頻繁なアップデートである。各サービスが頻繁にアップデートすることでバグが解消されて品質も向上するのだが、機能追加や仕様変更はクラウドサービスが主導権を握っている。場合によっては短い期間で互換性がなくなるほか、サービス停止されてしまうこともある。
2番目は、クラウドサービス自体が停止すると影響が広範囲に及ぶこと。圧倒的な品質を持っているが、それでもシステムトラブルは発生するし、複数の業務に支障が出る。
3番目は、従量課金によりビジネスモデルを変更する必要があること。システム利用企業は、以前であればシステム開発に大きく初期投資してきた。現在はビジネスの成長に応じて変動費として扱う必要がある。SIビジネスを展開する企業も、それに合わせてビジネスモデルを変更しなければならない。
クラウドのメリットとデメリット
デメリットへの対応策
慢性的なIT人材不足の中で、クラウドのこうしたデメリットにどのように対処すればいいのだろうか。
まず、頻繁なアップデートへの対応策は、変化を吸収するレイヤーを設けることだ。特定のアプリケーションをクラウドサービスとして提供するSaaSや、システムバックエンドを提供するBaaS(Backend as a Service)などを利用するのだ。そうすれば、ミドルウェアなどのアップデートはSaaSやBaaS側が対応する。
サービス停止の影響に対処するには、マルチクラウド・マルチリージョンにより冗長化する。システム冗長化をクラウドサービス間やリージョン間で行い、障害時に迅速に切り替えるのだ。仮想マシンを瞬時に起動できるクラウドならではの手法だ。
もちろん、個別のシステムの冗長化は開発や運用にも大きな手間がかかるが、これは最初の問題と合わせて解決できる。マルチクラウド・マルチリージョンで冗長化しているSaaSやBaaSを選択するのだ。
従量課金によるビジネスモデルの変更として広がり始めているのが、月額モデル型やラボ型と呼ばれる開発サービスだ。一定期間にわたって少しずつ開発を進めていくことで継続的なシステム改善が期待できる。客先常駐ではない準委任契約と考えこともできる。チームビルディングや労働環境の改善を行いやすいメリットもある。このような開発サービスへの切り替えは、現在注目を集めるアジャイル開発とも親和性が高いのだ。
クラウドのデメリットへの対応策
■執筆者プロフィール
可知 豊
Hexabase デベロッパーマーケティング
長年情報システム産業に身をおき、ハードウェアからマーケティング・カスタマーサポートまでの経験と実績を持つ。ライターとしても一般向けのパソコン解説書からオープンソースソフトウェアのデスクトップ領域やライセンスなどを手掛けている。現在は、SIer向けクラウドサービスを提供するスタートアップHexabaseでデベロッパーマーケティングを担当、SIerにおける事業のアップデートをサポートしている。