こんにちは。ある日突然上司に、「アプリ作るから。やっといて」と言われてアプリ開発を発注する担当者に任命されてしまったら、どうしますか?もしあなたがアプリ開発の発注経験がなかったら、途方に暮れてしまうことでしょう。アプリ開発・Web開発は、製作側も難しいのですが、発注側も非常に難しいです。ここでは、少しでも発注者の悩みが減らせるように、これまでの経験からアプリ開発の発注のポイントについて書いていければと思います。発注のポイントは以下まず、発注する際に注意するポイントを並べてみます。開発手法は?コスト面は?保守費用は?デザイン面は?納期は?提案力、コミュニケーション力に長けているか?提案者とプロジェクトマネージャーは同一の人物か?結構大事そうなポイントがありますよね?それぞれ見ていきましょう。開発手法は? スクラッチ?ノーコード?まずは大きな分水嶺です。スクラッチ開発か、ノーコード開発か、です。スクラッチ開発とは?スクラッチ開発とは、通常の開発手法で、ゼロからプログラミングして開発する手法です。プログラミングして開発するので、時間とお金さえかければなんでも作ることができます。しかし、熟練のエンジニアが何人・何十人もあつまって開発するため、当然初期開発だけでも1000万円〜数千万円の金額感となり、保守費用も膨大になります。ノーコード開発とは?スクラッチ開発とは逆に、ノーコード開発とはプログラミングをしないで開発する手法です。「ノーコード」とはプログラミングなしに開発できるツール群の総称で、ノーコードツールを用いて開発を行います。これにより、スピーディにかつコストを大幅削減して開発することが可能です。内容によっては、開発コストを9割減、スピードも10倍速にすることも可能です。ただし、素早く作れる分、なんでも作れるわけではありません。機能によってはできるものもできないものもあります。そこを見極めるのが重要です。スクラッチ開発とノーコード開発、どちらが良いの?どちらがいいとは一概には言えません。お金と時間が十分にあるならスクラッチでがっつり良いものを作り、逆にそれらがなければ要件ををシンプルにしノーコードでサクっと開発する方がコストもかからず良いでしょう。特に、スタートアップ・新規事業などの最初のアプリは、コストをかけず素早く作ることが良いやり方です。まずは一旦作ったあとに実際のマーケットで使われることで本当に必要とされる機能が見えてきます。その時に改めて機能追加をしていく方が効果的です。であれば、まずはノーコードでコストを大幅に抑えてリリースし、「売れる」めどが経ってからゼロからスクラッチでコストをかけて作り直す、という方が良いのでは無いでしょうか?コスト面は?アプリ開発において、開発コスト・金額の妥当性をチェックすることは非常に難しいです。なぜなら、大体は依頼をかける時点で詳細な要件が詰められていないため、人によって解釈が異なります。なぜ見積もりが大きくブレるのか。例えばA社は、「お客さんはシンプルに素早く作りたいと言ってるから、このくらいの金額感でいいだろう」とお客さんに対し良かれと思って安く提案してくれるかもしれません。もしくはB者は、「シンプルにと言ってるが、このお客さんの規模感だとしっかりしたものを求められているはず。であれば安易に簡単なものはできない」と解釈し、高く提案してくるかもしれません。この金額差が10%、20%だとまだいいのですが、300万円と6000万円くらいの差だったらどうでしょうか?.... もう何がなんだかわからないですよね、、、これはひとえにまだ「要件定義」が為されていない段階だからです。要件定義とは?何を作るか?を具体的に決めることを「要件定義」と言います。要件定義を行うことで初めて正確な見積もりを作成することができます。しかし、要件定義自体にも時間がかかります。スクラッチ開発における要件定義では、例えば全体の開発費が3000万円だとした場合、要件定義だけでも200〜500万円、あるいはそれ以上かかることもあります。ではどうしたら良いでしょうか?要件定義フェーズだけで発注する方法ですので、要件定義フェーズだけで発注し、要件定義をしてもらい、その上で開発フェーズの見積もりを行う、というのは一つの方法です。一旦、ベンダー(アプリ開発会社)を1社に決め、その会社に要件定義をしてもらう。その前提をもとに見積もりをしてもらいます。またその際に別の開発会社に相見積もりを取るのもいいでしょう。この要件定義フェーズの際に最初の会社のコミュニケーションやパフォーマンスが悪いと感じたら最悪他の会社に乗り換えるのも手です。(もちろんスイッチする場合はスイッチするためのコミュニケーションコストがかかるので、できれば同じ会社に依頼できたらその方が効率がいいですね)この要件定義フェーズを発注することは、開発の見積もりを精緻に出すための必要な手法です。これにより開発の「えいやー」で出されたざっくり見積もりが正確な見積もりになるため、双方にとってリスクがなくなります。(言った言わないのトラブルや、この機能がなかった、などの認識齟齬が減ることになります)そもそもノーコードで開発することでリスク回避も可能ただ、そもそもノーコードを用いることで開発全体を小さくしてしまえばあらゆるリスクが軽減できます。要件定義フェーズに時間をかけてスクラッチで開発するよりも、そもそもの要件定義も含めた開発期間を圧倒的に短縮できるのがノーコード開発です。ノーコードで開発することで納期やコストが1/10にまで圧縮できる可能性もあるので、とにかくノーコードで素早く開発し、その動いているアプリを見た上で次の1手を考えることがより良いかもしれません。保守費用は?次に保守費用です。アプリやWebなどのシステムは、それを維持するために保守費用が必要です。エンジニアが質問に回答したり、問題に対する調査したり、データのメンテや簡単な修正などを行います。人が貼り付くことになるため、当然ある程度のコストが必要になります。この金額がどのくらいになるのか、きちんと確認しておきましょう。デザイン面は?その会社がデザインも得意としているのかも確認しておきましょう。技術力が高く、システムの仕組みを構築するのは非常に得意でも、デザインは自分たちで行わず別会社で行う、ということもよくあります。デザイン会社と開発会社は思想が違うため、お互いにうまく融合できないケースもよく見かけます。例えばデザイン会社はユーザー視点でキレイで見栄えがするデザインを作ったとしても、開発会社視点では作りにくくロジックにも矛盾がありコストがかかってしまうものかも知れません。そういうところを総合的に提案してくれる会社かどうかも判断しましょう。また、「デザイン」と一言で言ってもピンキリです。ある程度任せてしまい少ないフィードバックで完了できるなら安くできますが、細かい点に逐一レビューしたかったり、複数案を提案してもらう必要があるとなれば当然その分時間がかかるのでコストがかかります。デザインに対しどこまで求めているか、をよく考えて発注先を選定しましょう。納期は?納期に対する優先度は非常に重要ですよね。通常の開発だと数ヶ月〜半年以上かかってしまいます。スピーディに開発することができれば、その分ビジネスチャンスが増えますし、逆に遅れれば遅れるほど機会損失のリスクが増します。スピードは開発手法や体制、技術要素に依存します。スクラッチ開発での無理な短納期は危険。とにかくスクラッチ開発(ゼロからプログラミングして開発)するにも関わらずベンダーに対し短納期を求めるのは危険です。普通に開発すると半年からそれ以上かかってしまいます。それを「2ヶ月でやって欲しい」など無謀な要望を伝えるといいことはありません。ベンダー側(受注側・開発会社側)も売上が欲しいので、営業担当は無理したスケジュールで受注してしまうかもしれません。そうなったらあとの祭りです。悪いのは無理して受けたその会社であったとしても、被害を喰うのは発注側です。アプリやWebの開発は簡単ではありません。「お前らができるって言ったんだろ!残業してでもやれ!」と仮に言ったところで、できないものはできないのです。そして、そういった炎上プロジェクトになると、発注側は当然起こりますが、現場のエンジニアもただの被害者です。営業担当や開発マネージャーがあまり横暴な残業やスケジュールをエンジニアに強いると、みんな転職したり鬱病になっていなくなったりします。そうなるとその会社も責任の取りようがなく、、、惨劇が待っています。。スクラッチ開発の場合は十分な余裕を持った予算とスケジュールで挑みましょう。短納期をもとめるならノーコード開発ノーコードの最大のメリットはコストが安いだけではなく、早いということです。スクラッチ開発と比較すると圧倒的なスピードで開発できます。通常半年以上かかって開発するものを1〜2ヶ月でできてしまいます。急ぐのであれば、まずはノーコード開発を検討しましょう。最速でWebアプリを作れるノーコードbubble.ioとは?10倍速でネイティブアプリを作れるノーコードFlutterFlowとは?提案力、コミュニケーション力に長けているか?これも非常に重要です。見積もりの提案は安いけれども、コミュニケーションが取れないタイプや相性が悪い相手では大きな問題です。アプリやWeb開発のプロジェクトは開発会社に丸投げではできません。発注側と受注側が一緒になってやっていく必要があります。そうなると重要なのは、コミュニケーション力や提案力です。ですが、それはどのように判断したら良いのでしょうか?今話している相手は営業担当か、エンジニアか、プロジェクトマネージャーか?まず、話している相手がどの役割の人なのかは重要です。営業担当者はコミュニケーションはとても上手でうまくやっていけそうな印象を与えるかもしれませんが、技術面をわからずに提案している可能性もあります。逆に、エンジニアはぶっきらぼうなタイプも多いですが、当然ながら技術に特化しており知識は豊富です。そして通常プロジェクトが始まるとお客さんとの窓口としてやりとりし、エンジニアを取りまとめ指示を出すのは、プロジェクトマネージャー(PM)です。PM(プロジェクトマネージャー)がどんな人かよく見よう。プロジェクトの成否のキーとなる要素の一つがPM(プロジェクトマネージャー)です。PMがどんな人かをよくみてみる必要があります。コミュニケーションは取りやすいか?説明はわかりやすいか。自分たちのビジネスを理解し積極的に提案しようとしてくれるタイプか?技術面も信頼できそうか。など。判断は正直難しいと思いますが、結構大事なので意識して話してみましょう。提案PMと実際の案件のPMが異なる場合がある。そしてさらに言うと、そのPMが実際のプロジェクトが始まった時に対応してくれるのかもみてください。大きい案件の営業の場合、提案PMはエースクラスが入ってくれて安心感を与えますが、実際に案件が始まるとその多忙なエースはいなくなり、別のジュニアクラスのPMがくる、、、なんてこともよくあります。この辺も少し気にしてみた方がいいかもしれません。アプリ開発会社を選定する方法:まとめ今回はアプリ開発会社の選定基準について思うがままに書いてきました。長文すみません。。いかがでしたでしょうか?正直、難しいと思います。しかも一度ベンダーに発注してしまうと、スクラッチ開発では初期開発だけで半年などかかり、その後も保守も考えると何年もの付き合いになります。それを、システム開発会社に発注する経験がゼロだったり1回しかない担当者が、1〜2回のミーティングだけで判断するのは、、、非常に難しいですよね。私はスクラッチ開発をする開発会社でエンジニアやプロジェクトマネージャーをしながら、ずっとそう思っていました。「開発側も大変だけど、発注側ももっと大変だな、、、」と。そこで得た結論は一つです。とにかく小さく早く開発するこれしかありません。半年かけて数千万円の規模で発注すると、失敗したリスクが計り知れません。しかし、小規模で短期間で発注するならば、リスクを小さくすることができます。5000万円で半年かけて開発するのではなく、200〜400万円でまず作り、うまくいけばそのまま運用を進め、うまくいかなければ作り直す。うまくいかない理由は様々あります。そのサービスが今の市場に合わなかった。開発ベンダーのスキルがよくなかった。発注側の経験不足で要件定義がよくなかった。コロナや災害などでタイミングが合わなかった。いくらでもあります。でもそれが普通です。そのためにできることはリスクを軽減することです。5000万円で大きく1回のチャレンジするよりは、300万円で小さく15回以上チャレンジする方が間違いなく成功率が上がるのではないでしょうか?小さく早くリリースするためにはノーコード開発その前提で、弊社の結論は、まずは「ノーコード開発」で始めること。ノーコード開発とは、アプリやWebサービスを簡単にすばやく作れるツールの総称です。ノーコードは、複雑な機能の開発には向いていない点もありますが、機能要件をシンプルにすることで、場合によっては通常の1/5の速度、1/10の費用で開発することもできます。もちろん、早く安くできる分、なんでもできるわけではありません。制約もあります。ですが、制約がうまく回避できれば、単純にアプリやWebサービスを格安・爆速で作れます。まずはノーコード開発を検討してみませんか?ノーコード開発のお問い合わせはこちらアプリ・Webサービスの開発の無料相談はこちらFlutterFlow、Adalo、bubble、STUDIOなどのノーコードツールを使うことで、リスクを抑えて低コストでスピーディにビジネスアイデアを形にすることができます。弊社はスタートアップ・新規事業向けにコストを抑えた最速のアプリ・Webサービスの開発、さらにはサービス立ち上げのコンサルティングから提案を行なっております。また、法人向けにノーコードのスクール事業を通して内製化のサポートも行っています。アプリ、Webサービス、LPなどの構築に興味のある方は、こちらからご気軽にご相談ください。