goo blog サービス終了のお知らせ 

ウィリアムのいたずらの、まちあるき、たべあるき

ウィリアムのいたずらが、街歩き、食べ物、音楽等の個人的見解を主に書くブログです(たま~にコンピューター関係も)

SaaSのメリットとしての「開発リスクが低減」

2010-10-06 10:26:24 | トピックス

 SaaSのメリットとしては
  ・コストダウン
  ・スケールアウト(ここまではPaaS,IaaSも同じ)
  ・開発期間削減
 は、よく挙げられるけど、「開発リスクが低減することがある」というメリットには、多くのSaaSの紹介で触れられていないような気がする。

 これは、実はIaaSやPaaSでは得られないメリットでかつ、場合によっては、上記3つよりもはるかに強大なメリットなんだけど、
(このメリットがなければ、中小企業のSaaS導入は、中長期的には不利になるケースもある)
 営業とか触れないんですよね・・・まあ、それこそ、リスキーな面もあんだけど・・・(^^;)

 でも、これ知らないSIerは、たぶんクラウド販売で行き詰まる。


 ということで、SIerさんのために、「開発リスク低減」の説明をしてあげよう・・・




■開発リスクを挙げてみる

 開発リスクといっても、いろいろある。

(1)そもそも開発不可能ということが開発中にわかり、そこまでの投資や機会が無駄になるリスク
   →(ありえない極端な例):どんな数(何桁)でも、すぐに素因数分解するシステム
    たしかに、1000以下ならシステム化できるけど、300桁とかあったら・・・

(2)開発可能なんだけど、納期に間に合わないリスク
   →機会損失になる、場合によっては無意味に
    (オリンピックのシステムが閉会式後にできても・・)。

(3)開発して、納期には間に合ったけど、仕様とあっていない

(4)開発して、納期には間に合い、仕様とも一致しているけど、そもそも、仕様が、要求と合わない

(5)開発上は何も問題なかったが、要求どおりやっても、ビジネス的には成功しなかった。
    →開発者には何も問題ないけど、お客さん的には・・・・

 スクラッチから開発した場合、このリスクのすべてが起こりえる。




■SaaSの場合、開発リスクが低減するケース

 SaaSで、(1)~(5)のケースを考えると・・・

(1)は、目の前にモノがあるので、それをカスタマイズしないのであれば、ありえないリスク
(2)も、カスタマイズしないなら、もうできているので、ありえないリスク
(3)は、機能要件に関しては確認できる。非機能要件に関しては、とくに性能のレスポンスタイム
   に関しては、(仮に試用できても、たまたまその速さということがありえるので)
   はっきりしない・・・リスクとして残る
(4)は、ありえる。ただし、試用することで、要求をイメージしやすく、リスクが低減することもある
(5)は、ありえる。ただし、試用することで、要求をイメージしやすく、リスクが低減することもある

 つまり、カスタマイズをしない場合は、(1)、(2)のリスクは回避でき、
(3)~(5)に関しても、試用ができれば、かなり低減する。
スクラッチから開発した場合、プロトタイプで確認しても、(3)~(5)は、はっきりしない。

 なので、「カスタマイズをしないで済む場合は」開発リスクが低減する。




■注意点:開発リスクが低減しない、ないしは増加する場合

 しかし、これは、あくまでも、「カスタマイズをしないで済む場合は」である。
 カスタマイズが必要ならば、スクラッチのほうがよいこともある。

 なぜなら、スクラッチなら、開発言語で表現できることは、なんでもできるが、

カスタマイズの場合、

・APIがないと実現できない(APIがないリスク)

・APIがあっても、開発するのだから、上記(1)~(5)のリスクを被る
  →スクラッチと同じリスクを被る

・開発しようとしたとき、APIの振る舞い等の情報が公開されないリスク

・APIも変更されるリスクがある。

・フリーソフトのSaaSで、カスタマイズの際に解析が必要な場合、解析できないリスク
  →プログラムがあまりにも汚い

 というリスクが生じる(リスクが増加する)。
 これが大きいと、スクラッチのほうが、開発リスクが少ない時もある。




■「カスタマイズをしないで済む」に潜むリスク

 なお、「カスタマイズをしないで済む」と判断することにもリスクがある。
 結局カスタマイズしないといけない場合だ。

 このリスクは、カスタマイズの決定過程を分析し、その否定形をとることによってわかる。

 カスタマイズの決定過程は、こんなかんじ。
   ・要求をまとめる
   ・要求と機能があっているかどうか、判断する(フィットギャップ分析)
   ・機能から導き出される操作を(思考)実行してみて、
    実現可能であり、要求を満たしていることを確認する

 ということは、リスクは、こんなかんじ

 ・要求がまとまってない、よくわかんないリスク
   →ここでSaaSを決めてしまうと、SaaSの機能が制約に回ってしまうことも・・・
    リスク増大

 ・要求と機能があっているかどうか、判断できない、判断が間違うリスク
   →機能をよくわかっていない、甘い考えの場合起こる。
    たとえば、売上日報がでること
      要望は、カテゴリーごとにも出ることだが、全体しか出ないとか
      これは、入出力を確認するとわかるんだけど、機能ベースで確認したとき、やばい
      だけど、入出力まで、要求がまとまってないことも多い

・機能から導き出される操作が実現不可能
   →たしかに、機能はある。でも、その機能を実現すると、夜間バッチが突き抜けるとか、
    -20度の冷凍室で、2時間以上操作とか・・・




■まとめ

・SaaSの場合、「カスタマイズをしないで済む」のであれば、
 開発リスクを低減できる場合がある。
   →安定的なビジネスの上でメリット

・ただし、「カスタマイズする」のであれば、開発リスクはスクラッチより上回ることもある。

・そもそも、「カスタマイズをしないで済む」かどうか、ちゃんと考えないと、
 「カスタマイズをしないで済む」と思い込むリスクもある。

が、定型的なもの(総務関係に多い。財務とか、会議室予約、備品管理など)は
「カスタマイズをしないで済む」場合が多く、そーいうのだと、SaaSは開発リスクが低減できる。

※なお、ここでいうカスタマイズとはプログラムを組むものを指し、
 ・設定ファイルで変えられるもの
 ・Force.com Builder,(SugarCRMの)Module Builderで作れるようなもの
は、すぐにできるので、ここでは、カスタマイズに入れないものとする。

※それと、開発リスク低減と、開発コストや期間の削減とは意味が違う。

 たとえば、大阪から、東京に行くとき

  ・大阪から、東京までの新幹線の費用を払うのと、
  ・大阪で、パチンコ屋さんに1000円の費用をはらい、
     儲かったお金で、東京まで行く

 のとでは、後者のほうが、コストはかからない場合もあるが、リスクは、後者のほうが大きい。
 この場合、多くの人は前者をとる(後者の人もいるけど)


この記事についてブログを書く
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする
« 電子政府を体験してみる-そ... | トップ | VMForceはSpring+JPAでForce.... »
最新の画像もっと見る

トピックス」カテゴリの最新記事