スタートアップが避けるべきソフトウェア開発の落とし穴

スタートアップは夢のある存在ですが、もともとハイリスクな活動なだけに、その現実はなかなか厳しいものがあります。「3分の2のスタートアップは何のリターンも出さないうちに廃業に追い込まれている」といわれるほどです。

スタートアップが失敗(廃業)に終わったとき、その原因として「市場ニーズにあった商品を投入できなかった」とか「経営リソースが枯渇した」とか「資金調達ができなかった」などが挙げられることが多々あります。ところが、失敗の背景にはもうひとつ、「難易度の高いソフトウェア開発に対する適切なエンジニアリングの実践が欠けていた」という要因もあるのではないか、と気づいた研究者たちがいました。

スタートアップ企業は、市場ニーズの理解も乏しい中で新しいソリューションを探索しています。経営リソースも乏しい中で効率的にソフトウェアを開発していかなければなりません。このような多大な不確実性を含んだ事業環境で成功を収めるには、エンジニアリングの実践が重要になります。スウェーデンのブレーキンゲ工科大学(Blekinge Institute of Technology)のEriks Klotins氏、Michael Unterkalmsteiner氏、Tony Gorschek氏の研究チームは、88社の事例分析を通して、スタートアップの初期段階で致命的となりうる3つの失敗の形態を特定し、それぞれについて具体的な症状とその原因を抽出しました。

多くのスタートアップが、ソフトウェアを事業の中核に置くソフトウェア系スタートアップであるにもかかわらず、スタートアップにおけるソフトウェア開発の実態に関する研究は多くありませんでした。多くのソフトウェア系スタートアップが実際に陥ってしまったソフトウェア開発の落とし穴に関する知見は、研究的に興味深いものであるだけでなく、スタートアップ関係者にとっても価値の高いものであるといえます。

スタートアップ成長段階と失敗形態

Klotins氏らによる分析の対象は、スタートアップ企業がそれぞれの事業の節目において作成した経験報告書で、それぞれが約1000~2000語程度の長さでした(日本語の1000字~2000字とは違いますのでご注意ください)。ソフトウェア系スタートアップ企業によるもの88社を対象としました。報告書はソフトウェア開発の観点から書かれたものではなく、あくまで執筆企業の視点で自社の状況や分析をまとめたものである点は、本研究の留意事項のひとつです。また、報告書からソフトウェア工学的な知見を抽出する際は、抽出者本人の主観も影響を与えてしまいます。本研究では属人的な偏りを極力排除するため、三名の研究者がそれぞれ作業を行いつつ意見交換を繰り返すことで、より客観的な示唆を得るよう留意しています。

Klotins氏らの第一の成果は、スタートアップの初期の事業を3つのフェーズに分け、それぞれの失敗形態を特定したことです。なお、著者らは「アンチパターン(antipattern)」という語を用いていますが、この解説記事では「失敗形態」と言い換えています。アンチパターンというには抽象度が高すぎて、回避する方法が不明確であるため、失敗形態のほうが適切だと考えました。

創業から最初のプロダクト(サービスも含みます)を市場に投入するまでの期間が第一フェーズで、ここでは「最初のプロダクトを完成させられず廃業」という失敗形態が対応します。本研究では20社がこの失敗形態に陥っていました。

スタートアップの初期段階の3つのフェーズと、各フェーズの失敗形態。
画像出所:E. Klotins, M. Unterkalmsteiner and T. Gorschek, “Software Engineering Antipatterns in Start-Ups” in IEEE Software, vol. 36, no. 02, pp. 118-126, 2019. doi: 10.1109/MS.2018.227105530

次に、プロダクトに対して実際にお金を払ってくれるユーザー層を獲得するまでが第二フェーズです。対応する失敗形態は「プロダクトは出したがユーザー獲得に失敗」です。24社がこの失敗に陥ってしまっていました。

最後に、課金ユーザーを確保できたうえで、当初の狭い市場を超えた成長に入るまでが第三フェーズです。対応する失敗形態は「最初に足がかりを得た市場を超えた成長に失敗」で、7社がこれに陥っていました。

スタートアップ界隈ではよく、必要最小限の機能を備えた初期バージョンであるMVP(Minimum Viable Product)で市場ニーズを確認することが推奨されます。しかし本研究の事例分析からは、そもそもMVPを完成させることが難しいこと、MVPへのユーザーの支持を獲得することが難しいこと、そしてMVPを超えてサービスラインナップや事業領域を拡大していくことが難しいことがわかります。

本研究はさらに、それぞれの失敗形態についてより具体的な考察がされています。簡単に紹介します。

最初のプロダクトを完成させられず廃業

読むだけで心が痛くなるような失敗形態です。開発に時間がかかりすぎたため、経営リソースが先に枯渇し廃業に至ります。いつまでもプロダクトが完成せず開発方針がぶれ続けたりすると現場の士気も低下し悪循環に陥ります。

症状としては「プロダクトが実現すべき要求を特定し、ユーザーニーズと開発者の視点を調和させるプロセスがうまく回せていないこと」が挙げられています。スタートアップに限らず多くのソフトウェア開発の場面で見られる光景ですが、不確実性の高い環境で活動するスタートアップにとっては容易に致命傷になりうる現象です。

より具体的な原因としては「ユーザーニーズの分析が甘く要件が曖昧」、 「開発方針がぶれる」、 「プロダクトスコープが膨張していつまでも完成しない」、 「目指す品質レベルが不明確なため設計の品質が悪い」などが挙げられています。

ハイリスクでリソースの制約も多いスタートアップだからこそ、初期の大方針が極めて重要になります。いろんな機能が欲しくなりがちですが、対象ユーザーの課題ひとつをしっかり解決することに注力すべきです。そのためには、「あったらいいな」の機能アイデアを増やしていくよりも、「対象ユーザーはどのようにプロダクトを使用するのか」にフォーカスすべきです(それを確かめた研究論文もすでにあるそうで、紹介論文が引用しています)。

しかし、「MVP開発の難易度を下げるために安易に機能を削る」というのは「逃げ」であり、有効ではありません。大事なのは、 プロダクトが本当に提供すべき価値は何なのかを掘り下げ、その開発を完遂することです。

プロダクトは出したがユーザー獲得に失敗

これは宣伝や営業に原因があったと思われがちですが、エンジニアリングが原因であることもある、というのがKlotins氏らの示唆です。

課金ユーザーが獲得できなかったのは、ユーザーニーズの分析が甘かったといえます。ソフトウェア工学では要求工学が扱う問題です。

そして、特定のユーザー像に特化しすぎた作りこみも、一般ユーザーへの訴求を弱めてしまいます。対象となるユーザー像をできるだけ明確化し、そこに向けて開発を最適化していく必要があります。

また、ユーザーのオンボーディング、つまりプロダクトを使い始めるまでのプロセスが煩雑すぎる場合、ユーザー獲得の大きな障壁になってしまいます。 個々のユーザーのためのカスタマイズ開発が必要なケースもよくありますが、これもユーザー離脱の大きな要因になりえます。こうした問題はうわべのUI改善や営業努力では乗り越えられないことも多々あるのです。

最初に足がかりを得た市場を超えた成長に失敗

MVPやファーストプロダクトの開発に成功し、お金を払ってくれるユーザーも確保できました。それなのに、さらなる成長を目指すところで失敗してしまうスタートアップもあります。ユーザー像やそのニーズに関する想定が妥当だったからこそ初期の成功が得られていたわけですが、そうした初期の想定が現在も果たして妥当なのか、継続的に検証していくことが求められています。

たとえば、せっかく課金ユーザーがいてもその満足度が下がる一方。そんな状況の裏には、新たなユーザー層向けの新機能開発に注力してしまい、既存ユーザーを結果的に置き去りにしてしまった社内体制があったりします。 新たな領域への拡大も必要ですが、既存ユーザーが喜んで利用を継続してもらうことが事業継続の大前提です。

新規市場への展開に失敗というケースもあります。一番わかりやすい例は多国展開です。海外サービスが日本進出に苦戦する様子を見れば、ユーザーニーズはその国のIT環境や生活習慣、ビジネス習慣で大きく違うことがわかります。当初の要件のまま新領域に展開できるとは限らないのです。

サービス運営コストの高止まり、という症状もありえます。ユーザーの増加(利用の増加)に耐えられず破綻、という落とし穴が待っています。いわゆる「スケールできなかった」という状態です。これはアーキテクチャ設計の問題ともいえますし、ビジネスモデル(コスト構造)の問題ともいえます。

よりよいエンジニアリングを目指して

本研究では、スタートアップの初期段階を3つのフェーズに分け、それぞれのフェーズにおける失敗形態とその要因を考察しました。88社の具体事例に基づく知見であること、そしてこれらを論文として形式知化することで多くの人々に共有しやすくなっている点は大きく評価したいと思います。

日本でもスタートアップ起業が活発化しており、国や自治体も政策としてスタートアップ育成に力を入れています。資金面のサポートや創業者へのメンターシップなど様々な支援策が見られますが、スタートアップにおけるソフトウェア開発の難しさにはあまり注意が払われていないように思います。

ソフトウェア系スタートアップの成功の可能性を高めるには、よりよいソフトウェアエンジニアリングの実践も求められます。このサイトでは、その一助となるような研究成果を順次紹介していきたいと考えています。

紹介した文献

参考文献

コメント

タイトルとURLをコピーしました